Преглед на файлове

【Merge】多层级代码合并

liuxiangxin преди 4 месеца
родител
ревизия
a503151d51
променени са 28 файла, в които са добавени 623 реда и са изтрити 80 реда
  1. 54 4
      app/Http/Controllers/Admin/AdminUser.php
  2. 22 14
      app/Http/Controllers/Admin/AuthManager.php
  3. 147 6
      app/Http/Controllers/Admin/Business.php
  4. 4 1
      app/Http/Controllers/Admin/Login.php
  5. 34 6
      app/Http/Controllers/Admin/Orders.php
  6. 25 5
      app/Http/Controllers/Admin/Product.php
  7. 18 2
      app/Http/Controllers/Admin/Regiment.php
  8. 26 4
      app/Http/Controllers/Admin/RegimentActive.php
  9. 17 2
      app/Http/Controllers/Admin/RegimentRecord.php
  10. 2 2
      app/Http/Controllers/Api/Orders.php
  11. 1 1
      app/Http/Controllers/Api/Product.php
  12. 2 4
      app/Http/Requests/Admin/AuthManager.php
  13. 2 2
      app/Mail/VerifyCode.php
  14. 107 0
      app/Models/AdminRule.php
  15. 16 3
      app/Models/Business.php
  16. 13 0
      resources/views/admin/admin_user/add.blade.php
  17. 13 0
      resources/views/admin/admin_user/edit.blade.php
  18. 0 8
      resources/views/admin/auth_manager/add.blade.php
  19. 0 8
      resources/views/admin/auth_manager/edit.blade.php
  20. 36 3
      resources/views/admin/business/add.blade.php
  21. 40 3
      resources/views/admin/business/edit.blade.php
  22. 10 0
      resources/views/admin/orders/index.blade.php
  23. 12 2
      resources/views/admin/product/index.blade.php
  24. 2 0
      resources/views/admin/regiment/index.blade.php
  25. 8 0
      resources/views/admin/regiment_active/add.blade.php
  26. 8 0
      resources/views/admin/regiment_active/edit.blade.php
  27. 2 0
      resources/views/admin/regiment_active/index.blade.php
  28. 2 0
      resources/views/admin/regiment_record/index.blade.php

+ 54 - 4
app/Http/Controllers/Admin/AdminUser.php

@@ -2,6 +2,7 @@
 
 use App\Http\Requests\Admin\AdminUser as Request;
 use App\Models\AdminUser as Model;
+use App\Models\AdminRule;
 use Illuminate\Support\Facades\DB;
 /**
  * 系统用户
@@ -21,9 +22,23 @@ class AdminUser extends Auth{
 	 * 列表页
 	 * 
 	 * */
-    public function index(Model $Model){
+    public function index(Model $Model,AdminRule $AdminRule){
+        $mp                     =   [];
+        $session                = session('userRule');
+        if ($session){
+            $mp[]               =   ['admin_rule.company_id','=',$session['company_id']];
+            if ($session['business_id']){
+                $mp[]               =   ['admin_rule.business_id','=',$session['business_id']];
+            }
+        }
+        if(!in_array(admin('uid'), explode(',', config('administrator')))){
+            $mp['admin_rule.type']       = 1;
+        }
  		// 查询系统用户
-		$list					= $Model->orderByDesc('uid')->paginate(config('page_num',10));
+		$list					= $Model::query()->join('admin_rule','admin_rule.admin_uid','=','admin.uid')
+                                ->where($mp)
+                                ->orderByDesc('admin.uid')
+                                ->paginate(config('page_num',10));
 		// 循环处理
 		foreach ($list as $key => $value) {
 			// 获取分组名
@@ -48,7 +63,7 @@ class AdminUser extends Auth{
 	 * 添加
 	 * 
 	 * */
-	public function add(Request $request,Model $Model){
+	public function add(Request $request,Model $Model,AdminRule $AdminRule){
 		if( request()->isMethod('post') ){
 			// 验证参数
 			$request->scene('add')->validate();
@@ -57,6 +72,18 @@ class AdminUser extends Auth{
 			$data['phone']			= request('phone','');
 			$data['password']		= request('password','');
 			$data['password']		= md5($data['password']);
+            $data_type		        = request('data_type','');
+            $ruleData               = [];
+            if ($data_type){
+                $ruleData['data_type']    = $data_type;
+            }
+            $session                = session('userRule');
+            if ($session){
+                $ruleData['company_id']     = $session['company_id'];
+                if ($session['business_id']){
+                    $ruleData['business_id']    = $session['business_id'];
+                }
+            }
 			// 所属权限组
 			$groups					= (array) request('groups',[]);
 			// 开启事务
@@ -86,6 +113,17 @@ class AdminUser extends Auth{
 				// 告知错误
 				return				json_send(['code'=>'error','msg'=>'权限分配失败']);
 			}
+            //写入用户角色表
+            $ruleData['admin_uid']      =   $uid;
+            $ruleData['type']           =   1;
+            $ruleData['menu_type']      =   $session['menu_type'];
+            $ruleUid					=   $AdminRule->add($ruleData);
+            // 如果操作失败
+            if( !$ruleUid ){
+                // 回滚事务
+                DB::rollBack();
+                return json_send(['code'=>'error','msg'=>'新增管理员角色失败']);
+            }
 			// 提交事务
     		DB::commit();
 			// 记录行为
@@ -123,7 +161,7 @@ class AdminUser extends Auth{
 	 * 修改
 	 * 
 	 * */
-	public function edit(Request $request,Model $Model){
+	public function edit(Request $request,Model $Model,AdminRule $AdminRule){
 		// 接收参数
 		$uid						= request('uid',0);
 		// 查询用户
@@ -134,6 +172,7 @@ class AdminUser extends Auth{
 			// 接收数据
 			$data['username']		= request('username','');
 			$data['phone']			= request('phone','');
+			$data_type			    = request('data_type','');
 			// 密码
 			$password				= request('password','');
 			// 所属权限组
@@ -173,6 +212,17 @@ class AdminUser extends Auth{
 				// 告知错误
 				return				json_send(['code'=>'error','msg'=>'权限分配失败']);
 			}
+            if ($data_type){
+                // 写入数据表
+                $result					= $AdminRule::query()->where('admin_uid','=',$uid)->update(['data_type'=>$data_type]);
+                // 如果操作失败
+                if( !$result ) {
+                    // 回滚事务
+                    DB::rollBack();
+                    // 告知错误
+                    return				json_send(['code'=>'error','msg'=>'新增失败']);
+                }
+            }
 			// 提交事务
     		DB::commit();
 			// 记录行为

+ 22 - 14
app/Http/Controllers/Admin/AuthManager.php

@@ -26,8 +26,20 @@ class AuthManager extends Auth{
 	 * 
 	 * */
     public function index(){
+        $mp                     =   [];
+        $session                = session('userRule');
+        if ($session){
+            $mp['company_id']	= $session['company_id'];
+            $mp['menu_type']    = $session['menu_type'];
+            if ($session['business_id']){
+                $mp['business_id']       = $session['business_id'];
+            }
+        }
+        if(!in_array(admin('uid'), explode(',', config('administrator')))){
+            $mp['type']       = 1;
+        }
   		// 查询列表数据
-     	$list = DB::table('auth_group')->select()->paginate(config('page_num',10))->appends(request()->all());
+     	$list = DB::table('auth_group')->where($mp)->select()->paginate(config('page_num',10))->appends(request()->all());
 		// 分配数据
 		$this->assign('list',$list);
 		// 加载模板
@@ -45,7 +57,15 @@ class AuthManager extends Auth{
 			// 接收参数
 			$data['title']			= request('title','');
 			$data['description']	= request('description','');
-			$data['group_pid']		= request('group_pid',0);
+            $session                = session('userRule');
+            if ($session){
+                $data['company_id']	= $session['company_id'];
+                $data['menu_type']  = $session['menu_type'];
+                if ($session['business_id']){
+                    $data['business_id']       = $session['business_id'];
+                }
+            }
+            $data['type']           = 1;
 			// 返回结果
 			$result					= DB::table('auth_group')->insert($data);
 			// 如果状态停用
@@ -53,12 +73,7 @@ class AuthManager extends Auth{
 			// 结果
 			return json_send(['code'=>'success','msg'=>'添加成功','action'=>'add']);
 		}
-		// 查询用户组
-		$group						= DB::table('auth_group')->whereNotIn('id',explode(',',config('CUSTOM_GROUP')))->select(['id','title'])->get()->toArray();
-		// 错误告知
-		if( !$group )				$this->error('请先添加用户组');
 		$this->assign('crumbs','新增');
-		$this->assign('group',$group);
 		return $this->fetch();
 	}
 	
@@ -74,7 +89,6 @@ class AuthManager extends Auth{
 			$id						= request('id',0);
 			$data['title']			= request('title','');
 			$data['description']	= request('description','');
-			$data['group_pid']		= request('group_pid',0);
 			// 返回结果
 			$result					= DB::table('auth_group')->where(['id'=>$id])->update($data);
 			// 如果状态停用
@@ -86,14 +100,8 @@ class AuthManager extends Auth{
 
 		$merge_group = explode(',',config('CUSTOM_GROUP'));
 		array_push($merge_group,$group['id']);
-		//dd($merge_group);
-		// 查询用户组
-		$groups						= DB::table('auth_group')->where(['group_pid'=>0])->whereNotIn('id',$merge_group)->select(['id','title'])->get()->toArray();
-		// 错误告知
-		if( !$groups )				$this->error('请先添加用户组');
 		$this->assign('group',$group);
 		$this->assign('crumbs','编辑');
-		$this->assign('groups',$groups	);
 		return $this->fetch();		
 	}
 	

+ 147 - 6
app/Http/Controllers/Admin/Business.php

@@ -2,8 +2,12 @@
 
 use App\Http\Requests\Admin\Business as Request;
 use App\Models\Business as Model;
+use App\Models\AdminUser;
 use App\Models\City;
+use App\Models\AuthRule;
+use App\Models\AdminRule;
 use Illuminate\Support\Carbon;
+use Illuminate\Support\Facades\DB;
 
 /**
  * 商业公司管理
@@ -39,6 +43,16 @@ class Business extends Auth{
 		if( $startTime )		$map[] = ['insert_time','>=',Carbon::createFromFormat('Y-m-d',$startTime)->startOfDay()->getTimestamp()];
 		if( $startTime )		$map[] = ['insert_time','<=',Carbon::createFromFormat('Y-m-d',$startTime)->endOfDay()->getTimestamp()];
 		if( !is_null($status) )	$map[] = ['status','=',$status];
+        $session                = session('userRule');
+        if ($session){
+            $map[] = ['company_id','=',$session['company_id']];
+            if ($session['business_id']){
+                $map[] = ['id','=',$session['business_id']];
+            }
+            if ($session['menu_type'] == 1 && $session['data_type'] == 2){
+                $map[] = ['leader_uid','=',$session['admin_uid']];
+            }
+        }
 		// 查询数据
 		$list					= $Model->query()->where($map)->orderByDesc('id')->paginate(config('page_num',10));
 		// 循环处理数据
@@ -72,7 +86,7 @@ class Business extends Auth{
 	 * 添加
 	 * 
 	 * */
-	public function add(Request $request,Model $Model,City $City){
+	public function add(Request $request,Model $Model,City $City,AdminUser $AdminUser,AdminRule $AdminRule){
 		if( request()->isMethod('post') ){
 			// 验证参数
 			$request->scene('add')->validate();
@@ -81,10 +95,75 @@ class Business extends Auth{
 			$data['phone']			= request('phone','');
 			$data['logopic']		= request('logopic','');
 			$data['desc']			= request('desc','');
-			// 写入数据表
-			$id						= $Model->add($data);
-			// 如果操作失败
-			if( !$id ) 				return json_send(['code'=>'error','msg'=>'新增失败']);
+			$data['leader_uid']		= request('leader_uid','');
+            $data['address']		= request('address','');
+            $data['city_ids']		= request('city_ids','');
+            if ($data['city_ids']){
+                $data['city_ids']		= implode(',',$data['city_ids']);
+            }
+			$custom_name		    = request('custom_name','');
+			$phone		            = request('phone','');
+			$custom_password		= request('custom_password','');
+            $session                = session('userRule');
+            if ($session['company_id']){
+                $data['company_id']	        = $session['company_id'];
+                $ruleData['company_id']     = $session['company_id'];
+            }
+            $userData['username']		= $custom_name;
+            $userData['phone']			= $phone;
+            $userData['password']		= md5($custom_password);
+            // 开启事务
+            DB::beginTransaction();
+            try {
+                // 写入数据表
+                $id						= $Model->add($data);
+                // 如果操作失败
+                if( !$id ){
+                    return json_send(['code'=>'error','msg'=>'新增店铺失败']);
+                }
+                // 写入数据表
+                $uid					= $AdminUser->add($userData);
+                // 如果操作失败
+                if( !$uid ){
+                    // 回滚事务
+                    DB::rollBack();
+                    return json_send(['code'=>'error','msg'=>'新增管理员失败']);
+                }
+                $ruleData['admin_uid']      =   $uid;
+                $ruleData['business_id']        =   $id;
+                $ruleData['menu_type']      =   2;
+                // 写入数据表
+                $ruleUid					=   $AdminRule->add($ruleData);
+                // 如果操作失败
+                if( !$ruleUid ){
+                    // 回滚事务
+                    DB::rollBack();
+                    return json_send(['code'=>'error','msg'=>'新增管理员角色失败']);
+                }
+                // 写入数据表
+                $re					= $Model->edit($id,['admin_uid'=>$uid]);
+                // 如果操作失败
+                if( !$re ){
+                    // 回滚事务
+                    DB::rollBack();
+                    return json_send(['code'=>'error','msg'=>'新增失败','data'=>'新增店铺管理员']);
+                }
+                // 写入数据表
+                $re					= DB::table('auth_group_access')->insert(['group_id'=>5,'user_uid'=>$uid]);
+                // 如果操作失败
+                if( !$re ){
+                    // 回滚事务
+                    DB::rollBack();
+                    return json_send(['code'=>'error','msg'=>'新增失败','data'=>'新增店铺管理员']);
+                }
+            }catch (\Exception $e){
+                // 回滚事务
+                DB::rollBack();
+                // 告知错误
+                return				json_send(['code'=>'error','msg'=>'新增失败','data'=>json_encode($e->getMessage())]);
+            }
+            // 提交事务
+            DB::commit();
 			// 记录行为
 			$this->addAdminHistory(admin('uid'),$Model->getTable(),$id,1,[],$data);
 			// 告知结果
@@ -92,9 +171,25 @@ class Business extends Auth{
 		}
         // 获取列表
         $cityList					= $City->getCityList();
+        $session                    = session('userRule');
+        $mp                         =   [];
+        if ($session){
+            $mp[]                   =   ['admin_rule.company_id','=',$session['company_id']];
+            if ($session['menu_type'] == 1 && $session['data_type'] == 2){
+                $mp[]                   =   ['admin_rule.admin_uid','=',$session['admin_uid']];
+            }else{
+                $mp[]                   =   ['admin_rule.menu_type','=',1];
+                $mp[]                   =   ['admin_rule.data_type','=',2];
+            }
+        }
+        $leaderList					= $AdminRule::query()
+                                    ->join('admin','admin.uid','=','admin_rule.admin_uid')
+                                    ->where($mp)
+                                    ->get(['admin.uid','admin.username']);
 		// 分配数据
 		$this->assign('crumbs','新增');
         $this->assign('cityList',$cityList);
+        $this->assign('leaderList',$leaderList);
 		// 加载模板
 		return						$this->fetch(); 
 	}
@@ -103,7 +198,7 @@ class Business extends Auth{
 	 * 修改
 	 * 
 	 * */
-	public function edit(Request $request,Model $Model){
+	public function edit(Request $request,Model $Model,AdminUser $AdminUser,City $City,AdminRule $AdminRule){
 		// 接收参数
 		$id							= request('id',0);
 		// 查询用户
@@ -117,10 +212,31 @@ class Business extends Auth{
 			$data['phone']			= request('phone','');
 			$data['logopic']		= request('logopic','');
 			$data['desc']			= request('desc','');
+            $data['leader_uid']		= request('leader_uid','');
+            $data['address']		= request('address','');
+            $data['city_ids']		= request('city_ids','');
+            $custom_name		    = request('custom_name','');
+            $phone		            = request('phone','');
+            $custom_password		= request('custom_password','');
+            if ($data['city_ids']){
+                $data['city_ids']		= implode(',',$data['city_ids']);
+            }
 			// 写入数据表
 			$result					= $Model->edit($id,$data);
 			// 如果操作失败
 			if( !$result ) 			return json_send(['code'=>'error','msg'=>'新增失败']);
+            $userData['username']	= $custom_name;
+            $userData['phone']		= $phone;
+            if ($custom_password){
+                $userData['password']	= md5($custom_password);
+            }
+            //获取店铺信息
+            $info                   = $Model->getOne($id);
+            // 写入数据表
+            $result					= $AdminUser->edit($info['admin_uid'],$userData);
+            // 如果操作失败
+            if( !$result ) 			return json_send(['code'=>'error','msg'=>'新增失败']);
+            //var_dump($data);exit();
 			// 记录行为
 			$this->addAdminHistory(admin('uid'),$Model->getTable(),$id,2,$oldData,$data);
 			// 告知结果
@@ -128,8 +244,33 @@ class Business extends Auth{
 		}
 		// 错误告知
 		if( !$oldData )				return $this->error('查无数据');
+        //查询管理账户信息
+        $adminInfo                  = $AdminUser->getOne($oldData['admin_uid']);
+        // 错误告知
+        if( !$adminInfo )			return $this->error('查无管理员账户数据');
+        $oldData['city_ids']			= explode(',',$oldData['city_ids']);
+        // 获取列表
+        $cityList					= $City->getCityList();
+        $session                    = session('userRule');
+        $mp                         =   [];
+        if ($session){
+            $mp[]                   =   ['admin_rule.company_id','=',$session['company_id']];
+            if ($session['menu_type'] == 1 && $session['data_type'] == 2){
+                $mp[]                   =   ['admin_rule.admin_uid','=',$session['admin_uid']];
+            }else{
+                $mp[]                   =   ['admin_rule.menu_type','=',1];
+                $mp[]                   =   ['admin_rule.data_type','=',2];
+            }
+        }
+        $leaderList					= $AdminRule::query()
+            ->join('admin','admin.uid','=','admin_rule.admin_uid')
+            ->where($mp)
+            ->get(['admin.uid','admin.username']);
 		// 分配数据
 		$this->assign('oldData',$oldData);
+		$this->assign('adminInfo',$adminInfo);
+		$this->assign('cityList',$cityList);
+		$this->assign('leaderList',$leaderList);
 		$this->assign('crumbs','修改');
 		// 加载模板
 		return						$this->fetch();

+ 4 - 1
app/Http/Controllers/Admin/Login.php

@@ -1,6 +1,7 @@
 <?php namespace App\Http\Controllers\Admin;
 
 use App\Models\AdminUser;
+use App\Models\AdminRule;
 use App\Servers\Tencent\Sms;
 use Illuminate\Support\Facades\DB;
 
@@ -16,7 +17,7 @@ class Login extends Admin {
 	 * 登录方法
 	 * 
 	 * */
-	public function index(AdminUser $AdminUser){
+	public function index(AdminUser $AdminUser,AdminRule $AdminRule){
 		if( request()->isMethod('post') ){
 			// 接收数据
 			$username						= request('username','');
@@ -28,6 +29,7 @@ class Login extends Admin {
 			$uid							= $AdminUser->orWhere('username',$username)->orWhere('phone',$username)->value('uid');
 			// 获取数据
 			$admin							= $AdminUser->getOne($uid);
+			$adminRule						= $AdminRule::query()->where('admin_uid',$uid)->first();
 			// 用户不存在
 			if( !$admin || $admin['status'] ) return json_send(['code'=>'error','msg'=>'用户名不存在或已被停用']);
 			// 比对密码
@@ -40,6 +42,7 @@ class Login extends Admin {
 			unset($admin['password']);
 			// 存储登录状态
 			session(['userAuth'=>$admin]);
+			session(['userRule'=>$adminRule]);
 			// 表单令牌
 			return							json_send(['code'=>'success','msg'=>'登录成功','path'=>url('admin')]);
 		}

+ 34 - 6
app/Http/Controllers/Admin/Orders.php

@@ -11,6 +11,7 @@ use App\Models\Orders as Model;
 use App\Models\Orders\Receipt;
 use App\Models\OrdersAddr;
 use App\Models\OrdersProduct;
+use App\Models\Business;
 use Illuminate\Support\Facades\DB;
 use PhpOffice\PhpSpreadsheet\Cell\DataType;
 use PhpOffice\PhpSpreadsheet\IOFactory;
@@ -39,7 +40,7 @@ class Orders extends Auth{
 	 * 首页列表
 	 * 
 	 * */
-    public function index(Model $Model,OrdersProduct $OrdersProduct,Product $Product,Custom $Custom,Shoptype $Shoptype){
+    public function index(Model $Model,OrdersProduct $OrdersProduct,Product $Product,Custom $Custom,Shoptype $Shoptype,Business $Business){
 		// 接受参数
 		$code					= request('order_code','');
 		$orders_other			= request('orders_other',0);
@@ -54,6 +55,7 @@ class Orders extends Auth{
 		$startTime				= request('start_time','');
 		$endTime				= request('end_time','');
 		$is_regiment			= request('is_regiment','');
+        $businessId				= request('business_id','');
 		// 编码转ID
 		$id						= $code ? $Model->codeToId($code) : 0;
 		$productId				= $productCode ? $Product->codeToId($productCode) : 0;
@@ -74,16 +76,28 @@ class Orders extends Auth{
 		if( $startTime )		$map[] = ['orders_product.insert_time','>=',strtotime($startTime)];
 		if( $endTime )			$map[] = ['orders_product.insert_time','<=',strtotime($endTime)];
 		if( $status )			$map[] = ['orders_product.status','=',$status];
+        if( $businessId )		$map[] = ['orders_product.business_id','=',$id];
         if($is_regiment){
             if( $is_regiment == 1)		$map[] = ['orders.regiment_id','>',0];
             if( $is_regiment == 2)		$map[] = ['orders.regiment_id','=',0];
+        }
+        $session                = session('userRule');
+        if ($session){
+            $map[] = ['orders_product.company_id','=',$session['company_id']];
+            if ($session['business_id']){
+                $map[] = ['orders_product.business_id','=',$session['business_id']];
+            }
+            if ($session['menu_type'] == 1 && $session['data_type'] == 2){
+                $shopIds       = $Business::query()->where('leader_uid',$session['admin_uid'])->pluck('id')->toArray();
+            }
         }
 		// 查询数据
 		$list					= $OrdersProduct->query()
 									->join('custom','orders_product.custom_uid','=','custom.uid')
 									->join('orders_addr','orders_addr.order_id','=','orders_product.order_id')
-									->leftJoin('orders','orders.id','=','orders_product.order_id')
-									->where($map)
+									->leftJoin('orders','orders.id','=','orders_product.order_id');
+        if (isset($shopIds))    $list   =   $list->whereIn('orders_product.business_id',$shopIds);
+        $list                   = $list->where($map)
 									->orderByDesc('id')
 									->select([
 										'orders_product.*','custom.username as custom_name','orders.regiment_id as regiment_id',
@@ -97,13 +111,16 @@ class Orders extends Auth{
 			$value['custom_code']	= $Custom->idToCode($value['custom_uid']);
 			$value['state']			= $Model->getState($value['status'],'state');
 			$value['shop_type']		= $Shoptype->getOne($value['shop_type'],'name');
+            $value['business_name']= Business::query()->where('id',$value['business_id'])->value('name');
 			$value['product_code']	= $value['product_id'] ? $Product->idToCode($value['product_id']) : '— —';
 			// 重组
 			$list[$key]				= $value;
 		}
+        $businessList 			    = $Business->getList();
 		// 分配数据
 		$this->assign('empty', '<tr><td colspan="20">~~暂无数据</td></tr>');
 		$this->assign('list', $list);
+        $this->assign('businessList',$businessList);
 		// 加载模板
 		return						$this->fetch();
     }
@@ -364,7 +381,7 @@ class Orders extends Auth{
 	 * 导出表格导入
 	 * 
 	 * */
-	public function down_excel(Model $Model,OrdersProduct $OrdersProduct,Product $Product,Custom $Custom,Shoptype $Shoptype){
+	public function down_excel(Model $Model,OrdersProduct $OrdersProduct,Product $Product,Custom $Custom,Shoptype $Shoptype,Business $Business){
 		// 接受参数
 		$code					= request('order_code','');
 		$productCode			= request('product_code','');
@@ -398,11 +415,22 @@ class Orders extends Auth{
 		if( $startTime )		$map[] = ['orders_product.insert_time','>=',strtotime($startTime)];
 		if( $endTime )			$map[] = ['orders_product.insert_time','<=',strtotime($endTime)];
 		if( $status )			$map[] = ['orders_product.status','=',$status];
+        $session                = session('userRule');
+        if ($session){
+            $map[] = ['orders_product.company_id','=',$session['company_id']];
+            if ($session['business_id']){
+                $map[] = ['orders_product.business_id','=',$session['business_id']];
+            }
+            if ($session['menu_type'] == 1 && $session['data_type'] == 2){
+                $shopIds       = $Business::query()->where('leader_uid',$session['admin_uid'])->pluck('id')->toArray();
+            }
+        }
 		// 查询数据
 		$list					= $OrdersProduct->query()
 									->join('custom','orders_product.custom_uid','=','custom.uid')
-									->join('orders_addr','orders_addr.order_id','=','orders_product.order_id')
-									->where($map)
+									->join('orders_addr','orders_addr.order_id','=','orders_product.order_id');
+        if (isset($shopIds))    $list->whereIn('orders_product.business_id',$shopIds);
+        $list                   = $list->where($map)
 									->orderByDesc('orders_product.id')
 									->select([
 										'orders_product.id as id',

+ 25 - 5
app/Http/Controllers/Admin/Product.php

@@ -38,12 +38,13 @@ class Product extends Auth{
 	 * 首页列表
 	 * 
 	 * */
-    public function index(Model $Model,City $City,ProductCity $ProductCity,OrdersProduct $OrdersProduct,AdminHistory $AdminHistory){
+    public function index(Model $Model,City $City,ProductCity $ProductCity,OrdersProduct $OrdersProduct,AdminHistory $AdminHistory,Business $Business){
 		// 接受参数
 		$code					= request('product_code','');
 		$name					= request('name','');
 		$status					= request('status');
 		$startTime				= request('start_time','');
+		$businessId				= request('business_id','');
 		$cityIds				= request('city_ids',[]);
 		// 编码转ID
 		$id						= $code ? $Model->codeToId($code) : 0;
@@ -53,14 +54,26 @@ class Product extends Auth{
 		$whereIn				= $cityIds ? $cityIds : [];
 		// 编码ID
 		if( $id )				$map[] = ['product.id','=',$id];
+		if( $businessId )		$map[] = ['product.business_id','=',$businessId];
 		if( $name )				$map[] = ['product.name','like','%'.$name.'%'];
 		if( $startTime )		$map[] = ['product.insert_time','>=',Carbon::createFromFormat('Y-m-d',$startTime)->startOfDay()->getTimestamp()];
 		if( $startTime )		$map[] = ['product.insert_time','<=',Carbon::createFromFormat('Y-m-d',$startTime)->endOfDay()->getTimestamp()];
 		if( !is_null($status) )	$map[] = ['product.status','=',$status];
+        $session                = session('userRule');
+        if ($session){
+            $map[] = ['product.company_id','=',$session['company_id']];
+            if ($session['business_id']){
+                $map[] = ['product.business_id','=',$session['business_id']];
+            }
+            if ($session['menu_type'] == 1 && $session['data_type'] == 2){
+                $shopIds       =  Business::query()->where('leader_uid',$session['admin_uid'])->pluck('id')->toArray();
+            }
+        }
 		// 查询数据
 		$list					= $Model->query();
 		if( $whereIn )			$list = $list->join('product_city','product_city.product_id','=','product.id')->whereIn('product_city.city_id',$whereIn);
-		$list 					= $list->groupBy('product.id')
+        if(isset($shopIds))		$list = $list->whereIn('product.business_id',$shopIds);
+        $list 					= $list->groupBy('product.id')
 								->where($map)
 								->orderBy('product.sort')
 								->orderByDesc('product.id')
@@ -79,6 +92,7 @@ class Product extends Auth{
 			}
 			// id转编号
 			$value['product_code']	= $Model->idToCode($value['id']);
+            $value['business_name']= Business::query()->where('id',$value['business_id'])->value('name');
 			// id转编号
 			$cityName				= [];
 			// 获取城市列表
@@ -102,9 +116,11 @@ class Product extends Auth{
 		}
 		// 获取列表
 		$cityList					= $City->getCityList();
+        $businessList 			    = $Business->getList();
 		// 分配数据
 		$this->assign('empty', '<tr><td colspan="20">~~暂无数据</td></tr>');
 		$this->assign('cityList',$cityList);
+		$this->assign('businessList',$businessList);
 		$this->assign('list', $list);
 		// 加载模板
 		return $this->fetch();
@@ -208,7 +224,7 @@ class Product extends Auth{
 	 * 添加
 	 * 
 	 * */
-	public function add( Request $request, Model $Model,WeiBanTags $WeiBanTags,ProductPhoto $ProductPhoto,Producer $Producer,Business $Business,ProductType $ProductType,ProductSpec $ProductSpec,ProductAttr $ProductAttr,ProductSkus $ProductSkus,City $City,ProductCity $ProductCity){
+	public function add(Request $request, Model $Model, WeiBanTags $WeiBanTags, ProductPhoto $ProductPhoto, Producer $Producer, Business $Business, ProductType $ProductType, ProductSpec $ProductSpec, ProductAttr $ProductAttr, ProductSkus $ProductSkus, City $City, ProductCity $ProductCity){
 		if( request()->isMethod('post') ){
 			// 验证参数
 			$request->scene('add')->validate();
@@ -239,6 +255,10 @@ class Product extends Auth{
 			$data['tag_scope']		= implode(',',$tagScope);
 			$tagExclude				= request('tag_exclude',[]);
 			$data['tag_exclude']	= implode(',',$tagExclude);
+            $session                = session('userRule');
+            if ($session){
+                $data['company_id']	        = $session['company_id'];
+            }
 			// 循环
 			foreach ($photoList as $key => $value) {
 				if( !$value )		unset($photoList[$key]);
@@ -429,7 +449,7 @@ class Product extends Auth{
 	 * 编辑
 	 * 
 	 * */
-	public function edit( Request $request, Model $Model,WeiBanTags $WeiBanTags,ProductPhoto $ProductPhoto,Producer $Producer,Business $Business,ProductType $ProductType,ProductSpec $ProductSpec,ProductAttr $ProductAttr,ProductSkus $ProductSkus,City $City,ProductCity $ProductCity){
+	public function edit(Request $request, Model $Model, WeiBanTags $WeiBanTags, ProductPhoto $ProductPhoto, Producer $Producer, Business $Business, ProductType $ProductType, ProductSpec $ProductSpec, ProductAttr $ProductAttr, ProductSkus $ProductSkus, City $City, ProductCity $ProductCity){
 		if(request()->isMethod('post')){
 			// 验证参数
 			$request->scene('edit')->validate();
@@ -683,7 +703,7 @@ class Product extends Auth{
 	 * 编辑
 	 * 
 	 * */
-	public function copy( Request $request, Model $Model,WeiBanTags $WeiBanTags,ProductPhoto $ProductPhoto,Producer $Producer,Business $Business,ProductType $ProductType,ProductSpec $ProductSpec,ProductAttr $ProductAttr,ProductSkus $ProductSkus,City $City,ProductCity $ProductCity){
+	public function copy(Request $request, Model $Model, WeiBanTags $WeiBanTags, ProductPhoto $ProductPhoto, Producer $Producer, Business $Business, ProductType $ProductType, ProductSpec $ProductSpec, ProductAttr $ProductAttr, ProductSkus $ProductSkus, City $City, ProductCity $ProductCity){
 		if( request()->isMethod('post') ){
 			// 验证参数
 			$request->scene('add')->validate();

+ 18 - 2
app/Http/Controllers/Admin/Regiment.php

@@ -1,5 +1,6 @@
 <?php namespace App\Http\Controllers\Admin;
 
+use App\Models\Business;
 use App\Models\Regiment as Model;
 use App\Models\Product as Product;
 use App\Models\RegimentActive as RegimentActive;
@@ -51,9 +52,20 @@ class Regiment extends Auth{
             $end_time         =   strtotime($end_time);
             $map[] = ['regiment.end_time','<=',$end_time];
         }
+        $session                = session('userRule');
+        if ($session){
+            $map[] = ['regiment_active.company_id','=',$session['company_id']];
+            if ($session['business_id']){
+                $map[] = ['regiment_active.business_id','=',$session['business_id']];
+            }
+            if ($session['menu_type'] == 1 && $session['data_type'] == 2){
+                $shopIds       =  Business::query()->where('leader_uid',$session['admin_uid'])->pluck('id')->toArray();
+            }
+        }
         $select = [
             'regiment.*',
             'regiment_active.name as active_name',
+            'regiment_active.business_id as business_id',
             'product.name as product_name',
             'custom.username as username',
         ];
@@ -61,8 +73,11 @@ class Regiment extends Auth{
         $list					= $Model->query()
             ->join('regiment_active','regiment_active.id','=','regiment.active_id')
             ->join('product','product.id','=','regiment.product_id')
-            ->leftJoin('custom','custom.uid','=','regiment.custom_uid')
-            ->where($map)
+            ->leftJoin('custom','custom.uid','=','regiment.custom_uid');
+        if (isset($shopIds)){
+            $list               = $list->whereIn('regiment_active.business_id',$shopIds);
+        }
+        $list                   =  $list->where($map)
             ->select($select)
             ->orderByDesc('id')
             ->paginate(config('page_num',10));
@@ -70,6 +85,7 @@ class Regiment extends Auth{
         foreach($list as &$v){
             $v['product_code']  = $Product->idToCode($v['product_id']);
             $v['active_code']   = $RegimentActive->idToCode($v['active_id']);
+            $v['business_name']	= Business::query()->where([['id','=',$v['business_id']]])->value('name');
             if ($v['custom_uid']){
                 $v['custom_code']   = $Custom->idToCode($v['custom_uid']);
             }

+ 26 - 4
app/Http/Controllers/Admin/RegimentActive.php

@@ -1,6 +1,7 @@
 <?php namespace App\Http\Controllers\Admin;
 
 use App\Http\Requests\Admin\RegimentActive as Request;
+use App\Models\Business;
 use App\Models\RegimentActive as Model;
 use App\Models\Regiment;
 use App\Models\Product as Product;
@@ -51,16 +52,28 @@ class RegimentActive extends Auth{
             $end_time         =   strtotime($end_time);
             $map[] = ['regiment_active.end_time','<=',$end_time];
         }
+        $session                = session('userRule');
+        if ($session){
+            $map[] = ['regiment_active.company_id','=',$session['company_id']];
+            if ($session['business_id']){
+                $map[] = ['regiment_active.business_id','=',$session['business_id']];
+            }
+            if ($session['menu_type'] == 1 && $session['data_type'] == 2){
+                $shopIds       =  Business::query()->where('leader_uid',$session['admin_uid'])->pluck('id')->toArray();
+            }
+        }
         // 查询数据
         $list					= $Model->query()
-                                ->join('product','product.id','=','regiment_active.product_id')
-                                ->where($map)
+                                ->join('product','product.id','=','regiment_active.product_id');
+        if (isset($shopIds))    $list->whereIn('regiment_active.business_id',$shopIds);
+        $list					= $list->where($map)
                                 ->select(['regiment_active.*','product.name as product_name'])
                                 ->orderByDesc('regiment_active.id')
                                 ->paginate(config('page_num',10));
         // 循环处理数据
         foreach ($list as &$value) {
             $value['code']	= $Model->idToCode($value['id']);
+            $value['business_name']	= Business::query()->where([['id','=',$value['business_id']]])->value('name');
         }
         // 分配数据
         $this->assign('empty', '<tr><td colspan="20">~~暂无数据</td></tr>');
@@ -73,7 +86,7 @@ class RegimentActive extends Auth{
      * 添加
      *
      * */
-    public function add(Request $request, Model $Model, Product $Product){
+    public function add(Request $request, Model $Model, Product $Product,Business $Business){
         if( request()->isMethod('post') ){
             // 验证参数
             $request->scene('add')->validate();
@@ -99,11 +112,15 @@ class RegimentActive extends Auth{
             $data['exceed_people']			= request('exceed_people',0);
             $data['automatic']				= request('automatic',0);
             $data['virtually']				= request('virtually',0);
+            $data['business_id']	        = request('business_id',0);
             $data['status']			        = 1;
             // 核对产品
             $product_res                    = $Model::query()->where([['status','=', 1],['product_id','=', $data['product_id']],['end_time','>=', time()]])->first();
             // 提示
             if ($product_res)               return json_send(['code'=>'error','msg'=>'该产品正在参加拼团活动']);
+            // 核对产品
+            $product_res                    = $Model::query()->where([['business_id','=', $data['business_id']],['product_id','=', $data['product_id']]])->first();
+            if (!$product_res)               return json_send(['code'=>'error','msg'=>'该店铺产品不存在']);
             //核对产品价格
             $productInfo                    =   $Product->getOne($data['product_id']);
             if ($productInfo['price'] < $data['regiment_price'])    return json_send(['code'=>'error','msg'=>'拼团价格不能大于产品价格']);
@@ -137,9 +154,11 @@ class RegimentActive extends Auth{
         // 标签列表
         $tagList					        = [];
         $cityList					        = [];
+        $businessList 			    = $Business->getList();
         // 分配数据
         $this->assign('cityList',$cityList);
         $this->assign('tagList',$tagList);
+        $this->assign('businessList',$businessList);
         $this->assign('crumbs','新增');
         // 加载模板
         return						        $this->fetch();
@@ -149,7 +168,7 @@ class RegimentActive extends Auth{
      * 修改
      *
      * */
-    public function edit(Request $request,Model $Model,Product $Product,Regiment $Regiment){
+    public function edit(Request $request,Model $Model,Product $Product,Business $Business){
         // 接收参数
         $id							        = request('id',0);
         // 查询用户
@@ -180,6 +199,7 @@ class RegimentActive extends Auth{
             $data['automatic']				= request('automatic',0);
             $data['virtually']				= request('virtually',0);
             $data['status']			        = 1;
+            $data['business_id']	        = request('business_id',0);
             // 核对产品
             $product_res                    = $Model::query()->where([['id','><', $id],['status','=', 1],['product_id','=', $data['product_id']],['end_time','>=', time()]])->first();
             // 提示
@@ -220,9 +240,11 @@ class RegimentActive extends Auth{
         }
         // 错误告知
         if( !$oldData )				        return $this->error('查无数据');
+        $businessList 			    = $Business->getList();
         // 返回结果
         $oldData['product_code']	        = $Product->idToCode($oldData['product_id']);
         $this->assign('oldData',$oldData);
+        $this->assign('businessList',$businessList);
         $this->assign('crumbs','修改');
         // 加载模板
         return						        $this->fetch();

+ 17 - 2
app/Http/Controllers/Admin/RegimentRecord.php

@@ -1,5 +1,6 @@
 <?php namespace App\Http\Controllers\Admin;
 
+use App\Models\Business;
 use App\Models\City;
 use App\Models\Custom as Custom;
 use App\Models\Product as Product;
@@ -57,6 +58,16 @@ class RegimentRecord extends Auth{
             $end_time         =   strtotime($end_time);
             $map[] = ['regiment_record.insert_time','<=',$end_time];
         }
+        $session                = session('userRule');
+        if ($session){
+            $map[] = ['regiment_active.company_id','=',$session['company_id']];
+            if ($session['business_id']){
+                $map[] = ['regiment_active.business_id','=',$session['business_id']];
+            }
+            if ($session['menu_type'] == 1 && $session['data_type'] == 2){
+                $shopIds       =  Business::query()->where('leader_uid',$session['admin_uid'])->pluck('id')->toArray();
+            }
+        }
         $select = [
             'regiment_record.*',
             'regiment.status as regiment_status',
@@ -70,8 +81,11 @@ class RegimentRecord extends Auth{
             ->join('regiment','regiment.id','=','regiment_record.regiment_id')
             ->join('regiment_active','regiment_active.id','=','regiment_record.active_id')
             ->join('product','product.id','=','regiment_record.product_id')
-            ->join('custom','custom.uid','=','regiment_record.custom_uid')
-            ->where($map)
+            ->join('custom','custom.uid','=','regiment_record.custom_uid');
+        if (isset($shopIds)){
+            $list               = $list->whereIn('regiment_active.business_id',$shopIds);
+        }
+        $list					= $list->where($map)
             ->select($select)
             ->orderByDesc('id')
             ->paginate(config('page_num',10));
@@ -84,6 +98,7 @@ class RegimentRecord extends Auth{
             $v['regiment_uid_code']     = $Custom->idToCode($v['regiment_uid']);
             $userInfo                   = $Custom->getOne($v['regiment_uid']);
             $v['regiment_username']     = $userInfo['username'];
+            $v['business_name']	        = Business::query()->where([['id','=',$v['business_id']]])->value('name');
         }
         // 分配数据
         $this->assign('empty', '<tr><td colspan="20">~~暂无数据</td></tr>');

+ 2 - 2
app/Http/Controllers/Api/Orders.php

@@ -375,7 +375,7 @@ class Orders extends Api{
 	 * @param	int		$limit			每页条数,默认10条
 	 * 
 	 * */
-	public function get_list(Request $request,Model $Model,OrdersProduct $OrdersProduct,Business $Business){
+	public function get_list(Request $request, Model $Model, OrdersProduct $OrdersProduct, Business $Business){
 		// 接口验签
 		// $this->verify_sign();
         // 验证参数
@@ -562,7 +562,7 @@ class Orders extends Api{
 	 * @param	int		$limit			每页条数,默认10条
 	 * 
 	 * */
-	public function get_item(Request $request,Model $Model,OrdersProduct $OrdersProduct,Business $Business){
+	public function get_item(Request $request, Model $Model, OrdersProduct $OrdersProduct, Business $Business){
 		// 接口验签
 		// $this->verify_sign();
         // 验证参数

+ 1 - 1
app/Http/Controllers/Api/Product.php

@@ -176,7 +176,7 @@ class Product extends Api{
 	 * @param	int     $id		        产品id
 	 * 
 	 * */
-	public function get_detail(Request $request,Model $Model,ProductPhoto $ProductPhoto,Business $Business,ProductAttr $ProductAttr,ProductSpec $ProductSpec,ProductSkus $ProductSkus,RegimentActive $RegimentActive,Regiment $Regiment,Custom $Custom,WeiBanTags $WeiBanTags,PromoProduct $PromoProduct){
+	public function get_detail(Request $request, Model $Model, ProductPhoto $ProductPhoto, Business $Business, ProductAttr $ProductAttr, ProductSpec $ProductSpec, ProductSkus $ProductSkus, RegimentActive $RegimentActive, Regiment $Regiment, Custom $Custom, WeiBanTags $WeiBanTags, PromoProduct $PromoProduct){
 		// 接口验签
 		// $this->verify_sign();
         // 验证参数

+ 2 - 4
app/Http/Requests/Admin/AuthManager.php

@@ -23,14 +23,13 @@ class AuthManager extends BaseRequest
             // 验证字段,验证规则,提示信息
 	        'title' 			=> 'required|unique:auth_group,title,'.$id,
 	        'id'                => 'required|integer|gt:0',
-            'group_pid'         => 'required',
         ];
     }
 
     // 场景列表
     protected $scenes = [
-		'add'  		            => ['title','group_pid'],
-        'edit'  		        => ['id','title','group_pid'],
+		'add'  		            => ['title'],
+        'edit'  		        => ['id','title'],
         'del'  		            => ['id'],
         'access'  		        => ['id'],
         'set_status'  		    => ['id'],
@@ -49,7 +48,6 @@ class AuthManager extends BaseRequest
             'id.required'   		    => 'ID未知',
             'id.integer'   		        => 'ID格式错误',
             'id.gt'   		            => 'ID格式错误',
-            'group_pid.required'        => '上级必选'
         ];
     }
     

+ 2 - 2
app/Mail/VerifyCode.php

@@ -22,7 +22,7 @@ class VerifyCode extends Mailable
      * 
      * @return void
      */
-    public function __construct($data=[],$options=['view'=>''])
+    public function __construct($data=[],$options=['views'=>''])
     {
         //进行赋值
         $this->data      = $data;
@@ -38,7 +38,7 @@ class VerifyCode extends Mailable
     public function build()
     {
         // 如果有视图,获取视图
-        if( !empty($this->options['view']) ) $this->view($this->options['view']);
+        if( !empty($this->options['views']) ) $this->view($this->options['views']);
         // 如果有数据,分配数据
         if( !empty($this->data) ) $this->with($this->data);
         // 返回自己

+ 107 - 0
app/Models/AdminRule.php

@@ -0,0 +1,107 @@
+<?php namespace App\Models;
+
+use Illuminate\Database\Eloquent\Factories\HasFactory;
+use Illuminate\Database\Eloquent\Model;
+use Illuminate\Support\Facades\DB;
+
+/**
+ *用户模型
+ * 
+ */
+class AdminRule extends Model
+{
+    use HasFactory;
+
+    // 与模型关联的表名
+    protected $table = 'admin_rule';
+    // 是否主动维护时间戳
+    public $timestamps = false;
+    // 定义时间戳字段名
+    // const CREATED_AT = 'insert_time';
+    // const UPDATED_AT = 'update_time';
+
+    /**
+     * 添加数据
+     * 
+     */
+    public function add($data)
+    {
+        // 时间
+        $data['insert_time']				= time();
+        $data['update_time']				= time();
+        // 写入数据表
+        $id						            = $this->query()->insertGetId($data);
+        // 如果操作失败
+        if( !$id )                          return $id;
+        // 更新缓存
+        //$this->getList(true);
+        // 返回结果
+        return                              $id;
+    }
+
+    /**
+     * 添加数据
+     * 
+     */
+    public function edit($id,$data)
+    {
+        // 更新时间
+        $data['update_time']                = time();
+        // 写入数据表
+        $result						        = $this->query()->where(['id'=>$id])->update($data);
+        // 如果操作失败
+        if( !$result )                      return $result;
+        // 更新缓存
+        //$this->getList(true);
+        // 返回结果
+        return                              $result;
+    }
+
+    /**
+     * 获取列表
+     * @param   Bool    $force  是否强制更新
+     * 
+     */
+    public function getList($force = false)
+    {
+        // 结果数据
+        $list                  = $force ? [] : cache('admin:rule:list');
+        // 不存在数据
+        if ( !$list ) {
+            // 从数据库获取数据
+            $data              = $this->query()->where(['status'=>0])->get();
+            // 是否有数据
+            $data              = $data ? $data->toArray() : [];
+            // 循环处理数据
+            $list              = [];
+            // 进行更新
+            foreach ($data as $value) {
+                // 重组数据
+                $list[$value['uid']] = $value;
+            }
+            // 存起来
+            cache(['admin:rule:list'=>$list]);
+        }
+        // 返回结果
+        return                  $list;
+    }
+
+    /**
+     * 获取配置平台对应的应用数据
+     * 
+     * @param   int      用户ID
+     * @param   string     指定字段
+     * 
+     */
+    public function getOne($id,$field='')
+    {
+        // 获取列表数据
+        $list                   = $this->getList();
+        // 获取数据
+        $one                    = isset($list[$id]) ? $list[$id] : [];
+        // 返回值
+        return                  empty($field) ? $one : ( isset($one[$field]) ? $one[$field] : null);
+    }
+
+
+}

+ 16 - 3
app/Models/Business.php

@@ -64,11 +64,24 @@ class Business extends Model
     public function getList($force = false)
     {
         // 结果数据
-        $list                  = $force ? [] : cache('admin:business:list');
+        //$list                  = $force ? [] : cache('admin:business:list');
+        $list                   =   [];
         // 不存在数据
         if ( !$list ) {
+            $session           = session('userRule');
+            $map                =   [];
+            $map[] = ['status','=',0];
+            if ($session){
+                $map[] = ['company_id','=',$session['company_id']];
+                if ($session['business_id']){
+                    $map[] = ['id','=',$session['business_id']];
+                }
+                if ($session['menu_type'] == 1 && $session['data_type'] == 2){
+                    $map[] = ['leader_uid','=',$session['admin_uid']];
+                }
+            }
             // 从数据库获取数据
-            $data              = $this->query()->where(['status'=>0])->get(['id','name','logopic','phone','desc']);
+            $data              = $this->query()->where($map)->get();
             // 是否有数据
             $data              = $data ? $data->toArray() : [];
             // 循环处理数据
@@ -143,7 +156,7 @@ class Business extends Model
      * 
      */
     public function idToCode($id){
-         return 'klsj'. str_pad($id, 9, '0', STR_PAD_LEFT);;
+         return 'klsj'. str_pad($id, 9, '0', STR_PAD_LEFT);
     }
 
 }

+ 13 - 0
resources/views/admin/admin_user/add.blade.php

@@ -16,6 +16,19 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 		<label class="control-label">密码</label>
 		<input class="form-control" required="required" type="text" placeholder="密码" name="password" value="" />
 	</div>
+	<div class="form-group col-sm-12">
+		<label class="control-label">账户角色</label>
+		<div class="clearfix">
+			<label class="checkbox-inline">
+				<input type="radio" value="1" name="data_type" checked>
+				普通员工
+			</label>
+			<label class="checkbox-inline">
+				<input type="radio" value="2" name="data_type">
+				代表
+			</label>
+		</div>
+	</div>
 	<div class="form-group col-sm-6">
 		<label class="control-label">用户组</label>
 		<div class="clearfix">

+ 13 - 0
resources/views/admin/admin_user/edit.blade.php

@@ -16,6 +16,19 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 		<label class="control-label">密码</label>
 		<input class="form-control" type="text" placeholder="密码,为空表示不修改" name="password" value="" />
 	</div>
+	<div class="form-group col-sm-12">
+		<label class="control-label">账户角色</label>
+		<div class="clearfix">
+			<label class="checkbox-inline">
+				<input type="checkbox" value="1" name="data_type">
+				普通员工
+			</label>
+			<label class="checkbox-inline">
+				<input type="checkbox" value="2" name="data_type">
+				代表
+			</label>
+		</div>
+	</div>
 	<div class="form-group col-sm-6">
 		<label class="control-label">用户组</label>
 		<div class="clearfix">

+ 0 - 8
resources/views/admin/auth_manager/add.blade.php

@@ -13,14 +13,6 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 		<input  class="form-control" type="text" required="required" placeholder="描述" name="description"  value="" />
 	</div>
 	<div class="form-group required" >
-	<label class="">分组上级</label>
-		<select name="group_pid" class="form-control" required="required">
-			<option value="0" >选择上级</option>
-			@foreach ($group as $value)
-				<option value="{{$value['id']}}"  > {{$value['title']}} </option>
-			@endforeach
-		</select>
-	</div> 
 	<div class="form-group">
 		@csrf
 		<input type="submit" class="btn btn-primary btn-block"  value="提交"/>

+ 0 - 8
resources/views/admin/auth_manager/edit.blade.php

@@ -12,14 +12,6 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 		<label class="">描述</label>
 		<input  class="form-control" type="text" required="required" placeholder="描述" name="description"  value="{{$group['description']}}" />
 	</div>
-	<label class="">分组上级</label>
-		<select name="group_pid" class="form-control" required="required">
-			<option value="0" >选择上级</option>
-			@foreach ($groups as $value)
-				<option value="{{$value['id']}}"  @if ($group['group_pid'] == $value['id']) selected="selected" @endif > {{$value['title']}} </option>
-			@endforeach
-		</select>
-	</div> 
 	<div class="form-group">
 		@csrf
 		<input name="id" type="hidden" value="{{request('id',0)}}" />

+ 36 - 3
resources/views/admin/business/add.blade.php

@@ -6,7 +6,7 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 <form class="post-form" action="" method="post">
 	<div class="form-group col-sm-12">
 		<label class="control-label">商店名称</label>
-		<input class="form-control" required="required" type="text" placeholder="商业公司名称" name="name" maxlength="20" value="" />
+		<input class="form-control" required="required" type="text" placeholder="店铺名称" name="name" maxlength="20" value="" />
 	</div>
 	<div class="form-group col-sm-2">
 		<label class="control-label">Logo图</label>
@@ -17,13 +17,46 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 			<input type="hidden" name="logopic" value="" id="input-logopic" />
 		</div>
 	</div>
+	<div class="form-group col-sm-5">
+		<label class="control-label">城市</label>
+		<select name="city_ids[]" class="form-control selectpicker" data-max-options="20" data-live-search="true" data-live-search-placeholder="搜索城市" data-none-results-text="未搜索到 {0}" title="选择城市" multiple>
+			@foreach ($cityList as $group)
+				<optgroup label="{{$group['name']}}">
+					@foreach ($group['city'] as $city)
+						<option value="{{$city['id']}}" >{{$city['name']}}</option>
+					@endforeach
+				</optgroup>
+			@endforeach
+		</select>
+	</div>
+	<div class="form-group col-sm-5">
+		<label class="control-label">详细地址</label>
+		<input class="form-control" required="required" type="text" placeholder="简介说明" maxlength="255" name="address" value="" />
+	</div>
+	<div class="form-group col-sm-12">
+		<label class="control-label">店铺介绍</label>
+		<input class="form-control" required="required" type="text" placeholder="简介说明" maxlength="255" name="desc" value="" />
+	</div>
+	<div class="form-group col-sm-2">
+		<label class="control-label">上级代表</label>
+		<select name="leader_uid" class="form-control" id="leader_uid">
+			@foreach ($leaderList as $value)
+				<option value="{{$value['uid']}}"  >{{$value['username']}}</option>
+			@endforeach
+		</select>
+	</div>
+	<div class="form-group col-sm-12" style="font-size: 25px">管理员账号</div>
+	<div class="form-group col-sm-12">
+		<label class="control-label">登录账户</label>
+		<input class="form-control" required="required" type="text" placeholder="登录账户" name="custom_name" maxlength="20" value="" />
+	</div>
 	<div class="form-group col-sm-12">
 		<label class="control-label">联系方式</label>
 		<input class="form-control" type="text" placeholder="联系方式,请填写手机号" maxlength="11" name="phone" value="" />
 	</div>
 	<div class="form-group col-sm-12">
-		<label class="control-label">简介说明</label>
-		<input class="form-control" required="required" type="text" placeholder="简介说明" maxlength="255" name="desc" value="" />
+		<label class="control-label">登录密码</label>
+		<input class="form-control" required="required" type="text" placeholder="登录密码" name="custom_password" maxlength="20" value="" />
 	</div>
 	<div class="form-group col-sm-12">
 		@csrf

+ 40 - 3
resources/views/admin/business/edit.blade.php

@@ -18,13 +18,50 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 		</div>
 	</div>
 	<div class="form-group col-sm-12">
-		<label class="control-label">联系方式</label>
-		<input class="form-control" type="text" placeholder="联系方式,请填写手机号" maxlength="11" name="phone" value="{{$oldData['phone']}}" />
+		<label class="control-label">简介说明</label>
+		<input class="form-control" required="required" type="text" placeholder="简介说明" maxlength="255" name="desc" value="{{$oldData['desc']}}" />
+	</div>
+	<div class="form-group col-sm-5">
+		<label class="control-label">城市</label>
+		<select name="city_ids[]" class="form-control selectpicker" data-max-options="20" data-live-search="true" data-live-search-placeholder="搜索城市" data-none-results-text="未搜索到 {0}" title="选择城市" multiple>
+			@foreach ($cityList as $group)
+				<optgroup label="{{$group['name']}}">
+					@foreach ($group['city'] as $city)
+						<option value="{{$city['id']}}" @if(in_array($city['id'],$oldData['city_ids'])) selected @endif >{{$city['name']}}</option>
+					@endforeach
+				</optgroup>
+			@endforeach
+		</select>
+	</div>
+	<div class="form-group col-sm-5">
+		<label class="control-label">详细地址</label>
+		<input class="form-control" required="required" type="text" placeholder="简介说明" maxlength="255" name="address" value="{{$oldData['address']}}" />
 	</div>
 	<div class="form-group col-sm-12">
-		<label class="control-label">简介说明</label>
+		<label class="control-label">店铺介绍</label>
 		<input class="form-control" required="required" type="text" placeholder="简介说明" maxlength="255" name="desc" value="{{$oldData['desc']}}" />
 	</div>
+	<div class="form-group col-sm-2">
+		<label class="control-label">上级代表</label>
+		<select name="leader_uid" class="form-control" id="leader_uid">
+			@foreach ($leaderList as $value)
+				<option value="{{$value['uid']}}" @if($value['uid'] = $oldData['admin_uid']) selected @endif >{{$value['username']}}</option>
+			@endforeach
+		</select>
+	</div>
+	<div class="form-group col-sm-12" style="font-size: 25px">管理员账号</div>
+	<div class="form-group col-sm-12">
+		<label class="control-label">登录账户</label>
+		<input class="form-control" required="required" type="text" placeholder="登录账户" name="custom_name" maxlength="20" value="{{$adminInfo['username']}}" />
+	</div>
+	<div class="form-group col-sm-12">
+		<label class="control-label">联系方式</label>
+		<input class="form-control" type="text" placeholder="联系方式,请填写手机号" maxlength="11" name="phone" value="{{$adminInfo['phone']}}" />
+	</div>
+	<div class="form-group col-sm-12">
+		<label class="control-label">登录密码</label>
+		<input class="form-control" type="text" placeholder="登录密码,空为不修改" name="custom_password" maxlength="20" value="" />
+	</div>
 	<div class="form-group col-sm-12">
 		@csrf
 		<input type="hidden" name="id" id="id" value="{{$oldData['id']}}" />

+ 10 - 0
resources/views/admin/orders/index.blade.php

@@ -40,6 +40,14 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 	<div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-12" style="margin-right: 2px;">
 		<input type="text" class="form-control" name="contact_area" value="{{request('contact_area','')}}" placeholder="请输入区县查询" />
 	</div>
+	<div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-12" style="margin-right: 2px;">
+		<select name="business_id" class="form-control">
+			<option value="" >店铺</option>
+			@foreach ($businessList as $business)
+				<option value="{{$business['id']}}" @if (request('business_id') === $business['id'] ) selected="selected" @endif >{{$business['name']}}</option>
+			@endforeach
+		</select>
+	</div>
 	<div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-12" style="margin-right: 2px;">
 		<select name="status" class="form-control">
 			<option value="" >订单状态</option>
@@ -87,6 +95,7 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 						<th>订单编号</th>
 						<th>产品编码</th>
 						<th>下单用户</th>
+						<th>店铺</th>
 						<th>产品名称</th>
 						<th>产品规格</th>
 						<th>产品数量</th>
@@ -107,6 +116,7 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 					    <td>{{$a['is_rebate']?'【赠品】':''}}{{$a['order_code']}}</td>
 						<td>{{$a['product_code']}}</td>
 						<td><a href="{{url('admin/custom/index?'.http_build_query(['custom_code'=>$a['custom_code']]))}}">{{$a['custom_name']}}</a></td>
+						<td>{{$a['business_name']}}</td>
 						<td>{{$a['product_name']}}</td>
 						<td>{{$a['sku_attr_names']}}</td>
 						<td>{{$a['buy_num']}}</td>

+ 12 - 2
resources/views/admin/product/index.blade.php

@@ -33,7 +33,15 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 			@endforeach
 		</select>
 	</div>
-	<div class="form-group col col-lg-2 col-md-4 col-sm-6 col-xs-12" style="margin-right: 2px;">
+	<div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-12" style="margin-right: 2px;">
+		<select name="business_id" class="form-control">
+			<option value="" >店铺</option>
+			@foreach ($businessList as $business)
+			<option value="{{$business['id']}}" @if (request('business_id') === $business['id'] ) selected="selected" @endif >{{$business['name']}}</option>
+			@endforeach
+		</select>
+	</div>
+	<div class="form-group col col-lg-2 col-md-2 col-sm-2 col-xs-2" style="margin-right: 2px;">
 		<input type="date" class="form-control" name="start_time" value="{{request('start_time','')}}" placeholder="请输入创建时间查询" />
 	</div>
 	<input type="submit" class="btn btn-sm btn-primary" value="查询"/>
@@ -54,6 +62,7 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 						<th>产品库存</th>
 						<th>产品状态</th>
 						<th>服务城市</th>
+						<th>店铺</th>
 						<th>排序</th>
 						<th>限购数量</th>
 						<th>修改时间</th>
@@ -72,7 +81,8 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 						<td>{{$a['stock_total']}}</td>
 						<td> {{$a['status']?'已下架':'已上架'}} </td>
 						<td> {{$a['city_name']}}</td>
-						<td> 
+						<td> {{$a['business_name']}}</td>
+						<td>
 							@if(check_auth('admin/product/set_sort'))
 							<input type="text" class="set_sort" id="{{$a['id']}}" value="{{$a['sort']}}">
 							@else

+ 2 - 0
resources/views/admin/regiment/index.blade.php

@@ -43,6 +43,7 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 						<th>参与活动/活动编码</th>
 						<th>产品名称/产品编码</th>
 						<th>发起客户昵称/发起客户编码</th>
+						<th>店铺</th>
 						<th>拼团状态</th>
 						<th>开始时间</th>
 						<th>结束时间</th>
@@ -63,6 +64,7 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 									商家发起
 								@endif
 							</td>
+							<td>{{$a['business_name']}}</td>
 							<td>
 								@if( $a['status'] == 1 )
 									拼团中

+ 8 - 0
resources/views/admin/regiment_active/add.blade.php

@@ -79,6 +79,14 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 			<label class="radio-inline"><input type="radio" value="1" name="virtually" >关闭</label>
 		</div>
 	</div>
+	<div class="form-group col-sm-6">
+		<label class="control-label">店铺</label>
+		<select name="business_id" class="form-control selectpicker" data-live-search="true" data-live-search-placeholder="搜索商业公司" data-none-results-text="未搜索到 {0}" title="选择商业公司">
+			@foreach ($businessList as $value)
+				<option value="{{$value['id']}}" selected >{{$value['name']}}</option>
+			@endforeach
+		</select>
+	</div>
 	<div class="form-group col-sm-12">
 		@csrf
 		<input id="send" type="submit" value="提交" class="btn btn-primary btn-block" />

+ 8 - 0
resources/views/admin/regiment_active/edit.blade.php

@@ -79,6 +79,14 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 				<label class="radio-inline"><input type="radio" value="1" name="virtually" @if($oldData['virtually'] == 1) checked @endif>关闭</label>
 			</div>
 		</div>
+		<div class="form-group col-sm-6">
+			<label class="control-label">店铺</label>
+			<select name="business_id" required class="form-control selectpicker" data-live-search="true" data-live-search-placeholder="搜索商业公司" data-none-results-text="未搜索到 {0}" title="选择商业公司">
+				@foreach ($businessList as $value)
+					<option value="{{$value['id']}}" @if( $value['id'] == $oldData['business_id']) selected @endif >{{$value['name']}}</option>
+				@endforeach
+			</select>
+		</div>
 		<div class="form-group col-sm-12">
 			@csrf
 			<input type="hidden" name="id" id="id" value="{{$oldData['id']}}" />

+ 2 - 0
resources/views/admin/regiment_active/index.blade.php

@@ -50,6 +50,7 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 						<th>拼团人数(人)</th>
 						<th>活动价格(元)</th>
 						<th>拼团有效期</th>
+						<th>店铺</th>
 						<th>状态</th>
 						<th>活动时间</th>
 						<th>创建时间</th>
@@ -67,6 +68,7 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 							<td>{{$a['number']}}</td>
 							<td>{{$a['regiment_price']}}</td>
 							<td>{{$a['expiration']}}</td>
+							<td>{{$a['business_name']}}</td>
 							<td>
 								@if( $a['status'] === 2)
 								停用

+ 2 - 0
resources/views/admin/regiment_record/index.blade.php

@@ -40,6 +40,7 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 						<th>参与活动/活动编码</th>
 						<th>产品名称/产品编码</th>
 						<th>发起客户昵称/发起客户编码</th>
+						<th>店铺</th>
 						<th>拼团状态</th>
 						<th>订单生成时间</th>
 					</tr>
@@ -55,6 +56,7 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 							<td>{{$a['active_name']}}<br/>{{$a['active_code']}}</td>
 							<td style="white-space:pre">{{$a['product_name']}}<br/>{{$a['product_code']}}</td>
 							<td>{{$a['regiment_username']}}<br/>{{$a['regiment_uid_code']}}</td>
+							<td>{{$a['business_name']}}</td>
 							<td>
 								@if( $a['status'] == 0 )
 									拼团中