Bläddra i källkod

公司账号管理和公司账号查询

wufeng 2 år sedan
förälder
incheckning
204060dfb9

+ 12 - 5
app/admin/common/User.php

@@ -27,11 +27,18 @@ class User
         "useradd" => 'useradd',
         "userDelete" => 'userDelete',//删除
 
-
-        'userCompanyBasicList' => 'userCompanyBasicList',//【公司账号管理-列表】
-        'userCompanyBasicAdd' => 'userCompanyBasicAdd',//【公司账号管理-添加】
-        'userCompanyBasicDelete' => 'userCompanyBasicDelete',//【公司账号管理-删除】
-        'userCompanyBasicUpdate' => 'userCompanyBasicUpdate',//【公司账号管理-修改】
+        //【公司账号管理】
+        'userCompanyBasicList' => 'userCompanyBasicList',//【列表】
+        'userCompanyBasicAdd' => 'userCompanyBasicAdd',//【添加】
+        'userCompanyBasicDelete' => 'userCompanyBasicDelete',//【删除】
+        'userCompanyBasicUpdate' => 'userCompanyBasicUpdate',//【修改】
+        'userCompanyBasicStatus' => 'userCompanyBasicStatus',//【启禁用】
+        'userCompanyBasicInfo' => 'userCompanyBasicInfo',//【详情】
+
+        //【公司账号查询】
+        'userCompanyList' => 'userCompanyList',//【列表】
+        'userCompanyStatus' => 'userCompanyStatus',//【启禁用】
+        'userCompanyInfo' => 'userCompanyInfo',//【详情】
     ];
 
     public function __construct()

+ 195 - 185
app/admin/controller/Base.php

@@ -13,133 +13,142 @@ use think\facade\Validate;
 
 class Base extends \app\BaseController
 {
-    public  $post=[];
-    public  $uid=0;//账户id
-    public  $uname='';//账户名称
-    public  $roleid=0;//角色id
-    public  $level=0;//角色等级,1.系统超级管理员,2.企业管理员,3.企业人员
-    private $white=['login'];
+    public $post = [];
+    public $uid = 0;//账户id
+    public $uname = '';//账户名称
+    public $roleid = 0;//角色id
+    public $level = 0;//角色等级,1.系统超级管理员,2.企业管理员,3.企业人员
+    private $white = ['login'];
 
     public function __construct(App $app)
     {
         parent::__construct($app);
-        $this->post =$this->request->post();
+        $this->post = $this->request->post('',null,'trim');
 
-        if(!in_array($this->request->pathinfo(),$this->white)) $this->validateToken();
+        if (!in_array($this->request->pathinfo(), $this->white)) $this->validateToken();
     }
 
     public function validateToken()
     {
+
         //这个地方不能用return json_show()方法,无法阻止代码继续执行
         $val = Validate::rule([
-            'token'=>'require',
+            'token' => 'require',
 //            'supplierNo'=>'length:18',
         ]);
 
-        if(!$val->check($this->post)) return error_show(1004,$val->getError());
+        if (!$val->check($this->post)) return error_show(1004, $val->getError());
 
 //        $token = isset($this->post['token']) ? trim($this->post['token']) : "";
 //        if($token==""){
 //            return error_show(101,'token不能为空');
 //        }
         $effetc = VerifyTokens($this->post['token']);
-        if(!empty($effetc) && $effetc['code']!=0) return error_show($effetc['code'], $effetc['message']);
-        if(($this->post['supplierNo'] !='') && !in_array($this->post['supplierNo'],array_column($effetc['data']['company_relaton'],'companyCode'))) return error_show(1004,'尚未关联企业');
+        if (!empty($effetc) && $effetc['code'] != 0) return error_show($effetc['code'], $effetc['message']);
+        if (($this->post['supplierNo'] != '') && !in_array($this->post['supplierNo'], array_column($effetc['data']['company_relaton'], 'companyCode'))) return error_show(1004, '尚未关联企业');
+
+        $this->uid = isset($effetc['data']['id']) ? $effetc['data']['id'] : "";
+        $this->uname = isset($effetc['data']['nickname']) ? $effetc['data']['nickname'] : "";
 
-        $this->uid=isset($effetc['data']['id']) ?$effetc['data']['id']:"";
-        $this->uname=isset($effetc['data']['nickname']) ?$effetc['data']['nickname']:"";
+        $where_role = [['a.uid', '=', $this->uid], ['a.is_del', '=', 0], ['a.status', '=', 1]];
+        if (isset($this->post['supplierNo']) && $this->post['supplierNo'] != '') {
+            $where_role[] = ['a.supplierNo', '=', $this->post['supplierNo']];
+            $where_role[] = ['b.level', '<>', 1];
+        } else $where_role[] = ['b.level', '=', 1];
 
         $role = Db::name('user_role')
             ->alias('a')
             ->field('a.id,a.status,a.roleid,b.role_name,b.level')
-            ->leftJoin('role b','b.id=a.roleid')
-            ->where(['a.uid'=>$this->uid,'a.is_del'=>0,'a.status'=>1,'b.supplierNo'=>$this->post['supplierNo']])
+            ->leftJoin('role b', 'b.id=a.roleid')
+            ->where($where_role)
             ->findOrEmpty();
 
-        if(empty($role) || $role['status']==0) return error_show(102,'该企业尚未开通对应角色');
+        if (empty($role) || $role['status'] == 0) return error_show(102, '该企业尚未开通对应角色');
 
         $this->roleid = $role['roleid'];//权限id
         $this->level = $role['level'];//权限等级
     }
 
 
-    public function  checkRole(){
+    public function checkRole()
+    {
 
-        $uid = Db::name("user_role")->where(['uid'=>$this->uid,"is_del"=>0,"status"=>1])->find();
-        if($uid==false){
+        $uid = Db::name("user_role")->where(['uid' => $this->uid, "is_del" => 0, "status" => 1])->find();
+        if ($uid == false) {
             return [];
         }
-        $action=[];
-        $this->roleid=$uid['roleid'];
-        $role =Db::name("role_action")->where(["role_id"=>$uid['roleid'],"status"=>1])->find();
-        $action['action_conllect']=isset($role['action_conllect'])? $role['action_conllect']:'';
-        $action['write'][]=$this->uid;
-        $group=[];
-       $group = Db::name("role_group")->where("FIND_IN_SET($this->uid,group_user) > 0")->column("id");
-        $where="to_user=$this->uid";
-        if(!empty($group)){
-            $where.="  or to_group in (".implode(",",$group).")";
+        $action = [];
+        $this->roleid = $uid['roleid'];
+        $role = Db::name("role_action")->where(["role_id" => $uid['roleid'], "status" => 1])->find();
+        $action['action_conllect'] = isset($role['action_conllect']) ? $role['action_conllect'] : '';
+        $action['write'][] = $this->uid;
+        $group = [];
+        $group = Db::name("role_group")->where("FIND_IN_SET($this->uid,group_user) > 0")->column("id");
+        $where = "to_user=$this->uid";
+        if (!empty($group)) {
+            $where .= "  or to_group in (" . implode(",", $group) . ")";
         }
 
-        $paltform = Db::name("user_platform")->where(["uid"=>$this->uid,"is_del"=>0])->find();
-        $action['platform']= $paltform!=false ? explode(",",$paltform['platform']) :[];
-        $share =Db::name("role_share")->where(["is_del"=>0,"status"=>1])->where($where) ->select();
-        if(!empty($share)){
-            foreach ($share as $value){
-                if($value['action']==1){
-                    if($value['share_user']!=""){
-                        $action['write'][]=$value['share_user'];
-                        $user=Db::name("user_role")->where(['uid'=>$value['share_user'],"is_del"=>0,"status"=>1])->find();
-                        if($user!=false){
-                            $role =Db::name("role_action")->where(["role_id"=>$user['roleid'],"status"=>1])->find();
-                            if($role!=false){
-                                $conlect =Db::name("action")->where(['menuid'=>explode(",",$value['action_collect'])])->column("id");
-                                $shar=explode(",",$value['action_collect']);
-                                $wish =array_intersect($conlect,$shar);
-                                $action['action_conllect'].=empty($wish)?"":",".implode(",",$wish);
+        $paltform = Db::name("user_platform")->where(["uid" => $this->uid, "is_del" => 0])->find();
+        $action['platform'] = $paltform != false ? explode(",", $paltform['platform']) : [];
+        $share = Db::name("role_share")->where(["is_del" => 0, "status" => 1])->where($where)->select();
+        if (!empty($share)) {
+            foreach ($share as $value) {
+                if ($value['action'] == 1) {
+                    if ($value['share_user'] != "") {
+                        $action['write'][] = $value['share_user'];
+                        $user = Db::name("user_role")->where(['uid' => $value['share_user'], "is_del" => 0, "status" => 1])->find();
+                        if ($user != false) {
+                            $role = Db::name("role_action")->where(["role_id" => $user['roleid'], "status" => 1])->find();
+                            if ($role != false) {
+                                $conlect = Db::name("action")->where(['menuid' => explode(",", $value['action_collect'])])->column("id");
+                                $shar = explode(",", $value['action_collect']);
+                                $wish = array_intersect($conlect, $shar);
+                                $action['action_conllect'] .= empty($wish) ? "" : "," . implode(",", $wish);
                             }
                         }
 
                     }
                 }
-                if($value['action']===0){
-                    if($value['share_user']!="")  $action['write'][]=$value['share_user'];
-                    if($value['action_collect']!=''){
-                        $act =Db::name("action")->where(['menuid'=>explode(",",$value['action_collect']),"action_code"=>'001'])->column("id");
-                        $action['action_conllect'].=empty($act)?"":",".implode(",",$act);
+                if ($value['action'] === 0) {
+                    if ($value['share_user'] != "") $action['write'][] = $value['share_user'];
+                    if ($value['action_collect'] != '') {
+                        $act = Db::name("action")->where(['menuid' => explode(",", $value['action_collect']), "action_code" => '001'])->column("id");
+                        $action['action_conllect'] .= empty($act) ? "" : "," . implode(",", $act);
                     }
                 }
-                if($value['action']===''){
-                    if($value['share_user']!="")  $action['write'][]=$value['share_user'];
-                    if($value['action_collect']!=''){
-                        $act =Db::name("action")->where(['menuid'=>explode(",",$value['action_collect']),"action_code"=>'001'])->column("id");
-                        $action['action_conllect'].=empty($act)?"":",".implode(",",$act);
+                if ($value['action'] === '') {
+                    if ($value['share_user'] != "") $action['write'][] = $value['share_user'];
+                    if ($value['action_collect'] != '') {
+                        $act = Db::name("action")->where(['menuid' => explode(",", $value['action_collect']), "action_code" => '001'])->column("id");
+                        $action['action_conllect'] .= empty($act) ? "" : "," . implode(",", $act);
                     }
                 }
             }
         }
         //离职交接权限
-        $resgin= Db::name("resign_info")->where([["hand_uid","=",$this->uid],["is_del","=",0],['status',"=",4]])
+        $resgin = Db::name("resign_info")->where([["hand_uid", "=", $this->uid], ["is_del", "=", 0], ['status', "=", 4]])
             ->column(['resign_uid']);
-        if(!empty($resgin)){
-            $action['write']= array_unique(array_merge($action['write'],$resgin));
+        if (!empty($resgin)) {
+            $action['write'] = array_unique(array_merge($action['write'], $resgin));
         }
 
         // 超级管理员看到所有人的数据
-        if($uid['roleid']==1 || $uid['roleid']==33){
-            $action['write']=[];
+        if ($uid['roleid'] == 1 || $uid['roleid'] == 33) {
+            $action['write'] = [];
         }
-        $action['roleid']=$uid['roleid'];
-        $action['action_conllect']=implode(",",array_unique(explode(",",$action['action_conllect'])));
+        $action['roleid'] = $uid['roleid'];
+        $action['action_conllect'] = implode(",", array_unique(explode(",", $action['action_conllect'])));
         return $action;
 
     }
 
 
     //用户数据权限检查
-    protected function checkDataShare(){
+    protected function checkDataShare()
+    {
 
-        if($this->roleid==1 || $this->roleid==33) return [];// 超级管理员(roleid==1)和最高领导(roleid==33)能看到所有人的数据
+        if ($this->roleid == 1 || $this->roleid == 33) return [];// 超级管理员(roleid==1)和最高领导(roleid==33)能看到所有人的数据
 
         $data = get_group_share_uid($this->uid);
         /**
@@ -152,126 +161,127 @@ class Base extends \app\BaseController
     }
 
     /**
-	* @param $good
-	* @param $isZx
-	* @param string $thNo
-	 * @return mixed|string
-	* @throws \think\Exception
-	 */
-    public function CheckGoodZx($good,$isZx,$thNo=''){
-  	    $spuCode= makeNo("SKU");
-  	    //查询是否存在转库存品记录 存在则返回库存编号
-  	    $newCode= Db::name("good_change_log")->where(["oldCode"=>$good['spuCode']])->value("newCode",'');
-  	    if($newCode==''){
-  	    	 $log=["oldCode"=>$good['spuCode'],
-		        "order_source"=>$isZx,
-		        "newCode"=>$spuCode,
-		        "thCode"=>$thNo,
-		        "createrid"=>$this->uid,
-		        "creater"=>$this->uname,
-		        "addtime"=>date("Y-m-d H:i:s")
-  	        ];
-  	    }else{
-  	    	return $newCode;
-  	    }
-
-  	    if($isZx==1){
-  	    	  $supplier =Db::name("supplier")->where(["code"=>$good['supplierNo']])->findOrEmpty();
-        if(empty($supplier)) throw new \Exception('非库存商品转库存失败');
-  	    	$good = [
-                    'spuCode' => $spuCode,
-                    'good_code' => $good['good_code'],
-                    'good_name' => $good['good_name'],
-                    'cat_id' => $good['cat_id'],
-                    'brand_id' => $good['brand_id'],
-                    'companyNo' => $good['companyNo'],
-                    'good_unit' => $good['good_unit'],
-                    'good_type' => $good['good_type'],
-                    'moq' => $good['moq'],
-                    'customized' => $good['customized'],
-                    'tax' => $good['tax'],
-                    'supplierNo' => $good['supplierNo'],
-                    'is_auth' => $good['is_auth'],
-                    'auth_img' => $good['auth_img'],
-                    'after_sales' => '',
-                    'craft_desc' => $good['craft_desc'],
-                    'good_remark' => $good['good_remark'],
-                    'weight' => $good['weight'],
-                    'packing_way' => '',
-                    'packing_size' => '',
-                    'packing_spec' => '',
-                    'packing_list' => '',
-                    'packing_weight' => '',
-                    'good_bar' => '',
-                    'supply_area' => $good['supply_area'],
-                    'delivery_place' => '',
-                    'origin_place' => '',
-                    'delivery_day' => '',
-                    'lead_time' => '',
-                    'sample_day' => '',
-                    'sample_fee' => '',
-                    'good_img' => '',//$good['good_img'],
-                    'good_thumb_img' => $good['good_thumb_img'],
-                    'good_info_img' => $good['good_img'],//商品主图对应到商品详情
-                    'cert_fee' => '',
-                    'packing_fee' => '',
-                    'cost_fee' => '',
-                    'mark_fee' => '',
-                    'demo_fee' => '',
-                    'open_fee' => '',
-                    'noble_metal' => $good['noble_metal'],
-                    'noble_weight' => $good['good_weight'],
-                    'is_gold_price' => $good['is_gold_price'],
-                    'cgd_gold_price' => '',
-                    'market_price' => '',
-                    'nake_price' => '',
-                    'is_step' => '',
-                    'is_online' => '0',
-                    'is_stock' => '1',
-                    'status' =>7,//咨询商品待编辑
-                    'createrid' =>$good['createrid'],
-                    'creater' => $good['creater'],
-                    'field_change' => '',
-                    'is_del' => 0,
-                    'is_support_stock' => 0,
-                    'addtime' => date('Y-m-d H:i:s'),
-                    'updatetime' => date('Y-m-d H:i:s'),
-                    'is_diff' => $good['is_diff'],
-                    'config' => $good['config'],
-                    'other_config' => $good['other_config'],
-                     'chargerid'=>$supplier['personid']??$good['createrid'],
-                      'charger'=>$supplier['person']??$good['creater'],//负责人跟创建人一致
-                ];
-  	    }else{
-			$good['id']=null;
-			$good['spuCode']=$spuCode;
-			$good['is_stock']=1;
-			$good['is_support_stock']=0;
-			$good['status']=7;
-			$good['addtime']=date("Y-m-d H:i:s");
-			$good['updatetime']=date("Y-m-d H:i:s");
-  	    }
-  	    $insert =Db::name("good_basic")->insert($good,true);
-  	    if($insert==false) throw new \Exception("非库存商品转库存失败",1005);
-  	     //修改状态,添加待办
-                ActionLog::logAdd($this->post['token'], [
-                    "order_code" =>$newCode,//咨询单详情编号
-                    "status" => 0,//这里的status是之前的值
-                    "action_remark" => '非库存品退货转库存',//备注
-                    "action_type" => "create"//新建create,编辑edit,更改状态status
-                ], "SPCB", 7,$good);
-
-                ProcessOrder::AddProcess($this->post['token'], [
-                    "order_type" => 'SPCB',
-                    "order_code" =>$newCode,//咨询单详情编号
-                    "order_id" => $insert,
-                    "order_status" =>7,
-                    "before_status"=>0,
-                    'holder_id'=>$good['createrid'],
-                ]);
-  	    $newAdd=Db::name("good_change_log")->insert($log);
-  	    if($newAdd==false) throw new \Exception("非库存商品转库存失败",1005);
-  	    return $spuCode;
+     * @param $good
+     * @param $isZx
+     * @param string $thNo
+     * @return mixed|string
+     * @throws \think\Exception
+     */
+    public function CheckGoodZx($good, $isZx, $thNo = '')
+    {
+        $spuCode = makeNo("SKU");
+        //查询是否存在转库存品记录 存在则返回库存编号
+        $newCode = Db::name("good_change_log")->where(["oldCode" => $good['spuCode']])->value("newCode", '');
+        if ($newCode == '') {
+            $log = ["oldCode" => $good['spuCode'],
+                "order_source" => $isZx,
+                "newCode" => $spuCode,
+                "thCode" => $thNo,
+                "createrid" => $this->uid,
+                "creater" => $this->uname,
+                "addtime" => date("Y-m-d H:i:s")
+            ];
+        } else {
+            return $newCode;
+        }
+
+        if ($isZx == 1) {
+            $supplier = Db::name("supplier")->where(["code" => $good['supplierNo']])->findOrEmpty();
+            if (empty($supplier)) throw new \Exception('非库存商品转库存失败');
+            $good = [
+                'spuCode' => $spuCode,
+                'good_code' => $good['good_code'],
+                'good_name' => $good['good_name'],
+                'cat_id' => $good['cat_id'],
+                'brand_id' => $good['brand_id'],
+                'companyNo' => $good['companyNo'],
+                'good_unit' => $good['good_unit'],
+                'good_type' => $good['good_type'],
+                'moq' => $good['moq'],
+                'customized' => $good['customized'],
+                'tax' => $good['tax'],
+                'supplierNo' => $good['supplierNo'],
+                'is_auth' => $good['is_auth'],
+                'auth_img' => $good['auth_img'],
+                'after_sales' => '',
+                'craft_desc' => $good['craft_desc'],
+                'good_remark' => $good['good_remark'],
+                'weight' => $good['weight'],
+                'packing_way' => '',
+                'packing_size' => '',
+                'packing_spec' => '',
+                'packing_list' => '',
+                'packing_weight' => '',
+                'good_bar' => '',
+                'supply_area' => $good['supply_area'],
+                'delivery_place' => '',
+                'origin_place' => '',
+                'delivery_day' => '',
+                'lead_time' => '',
+                'sample_day' => '',
+                'sample_fee' => '',
+                'good_img' => '',//$good['good_img'],
+                'good_thumb_img' => $good['good_thumb_img'],
+                'good_info_img' => $good['good_img'],//商品主图对应到商品详情
+                'cert_fee' => '',
+                'packing_fee' => '',
+                'cost_fee' => '',
+                'mark_fee' => '',
+                'demo_fee' => '',
+                'open_fee' => '',
+                'noble_metal' => $good['noble_metal'],
+                'noble_weight' => $good['good_weight'],
+                'is_gold_price' => $good['is_gold_price'],
+                'cgd_gold_price' => '',
+                'market_price' => '',
+                'nake_price' => '',
+                'is_step' => '',
+                'is_online' => '0',
+                'is_stock' => '1',
+                'status' => 7,//咨询商品待编辑
+                'createrid' => $good['createrid'],
+                'creater' => $good['creater'],
+                'field_change' => '',
+                'is_del' => 0,
+                'is_support_stock' => 0,
+                'addtime' => date('Y-m-d H:i:s'),
+                'updatetime' => date('Y-m-d H:i:s'),
+                'is_diff' => $good['is_diff'],
+                'config' => $good['config'],
+                'other_config' => $good['other_config'],
+                'chargerid' => $supplier['personid'] ?? $good['createrid'],
+                'charger' => $supplier['person'] ?? $good['creater'],//负责人跟创建人一致
+            ];
+        } else {
+            $good['id'] = null;
+            $good['spuCode'] = $spuCode;
+            $good['is_stock'] = 1;
+            $good['is_support_stock'] = 0;
+            $good['status'] = 7;
+            $good['addtime'] = date("Y-m-d H:i:s");
+            $good['updatetime'] = date("Y-m-d H:i:s");
+        }
+        $insert = Db::name("good_basic")->insert($good, true);
+        if ($insert == false) throw new \Exception("非库存商品转库存失败", 1005);
+        //修改状态,添加待办
+        ActionLog::logAdd($this->post['token'], [
+            "order_code" => $newCode,//咨询单详情编号
+            "status" => 0,//这里的status是之前的值
+            "action_remark" => '非库存品退货转库存',//备注
+            "action_type" => "create"//新建create,编辑edit,更改状态status
+        ], "SPCB", 7, $good);
+
+        ProcessOrder::AddProcess($this->post['token'], [
+            "order_type" => 'SPCB',
+            "order_code" => $newCode,//咨询单详情编号
+            "order_id" => $insert,
+            "order_status" => 7,
+            "before_status" => 0,
+            'holder_id' => $good['createrid'],
+        ]);
+        $newAdd = Db::name("good_change_log")->insert($log);
+        if ($newAdd == false) throw new \Exception("非库存商品转库存失败", 1005);
+        return $spuCode;
 
     }
 

+ 127 - 0
app/admin/controller/UserCompany.php

@@ -0,0 +1,127 @@
+<?php
+
+namespace app\admin\controller;
+
+use app\admin\common\User as UserCommon;
+use think\facade\Db;
+use think\facade\Validate;
+
+//【公司账号查询】
+class UserCompany extends Base
+{
+    //列表
+    public function getList()
+    {
+
+        $param = $this->request->only(['nickname' => '', 'username' => '', 'status' => '', 'page' => 1, 'size' => 10], 'post', 'trim');
+
+        $userCommon = new UserCommon();
+
+        $rs = json_decode($userCommon->handle('userCompanyList', $param), true);
+
+        if (isset($rs['code']) && $rs['code'] == 0) {
+            //补充角色信息
+            foreach ($rs['data']['list'] as &$item) {
+
+                $tmp = Db::name('user_role')
+                    ->alias('a')
+                    ->field('b.role_name,b.level')
+                    ->leftJoin('role b', 'b.id=a.roleid')
+                    ->where(['a.uid' => $item['account_id'], 'is_del' => 0, 'a.supplierNo' => $item['companyCode']])
+                    ->findOrEmpty();
+
+                $item['role_name'] = $tmp['role_name'] ?? '';
+                $item['level'] = $tmp['level'] ?? '';
+            }
+        }
+
+        return json_show($rs['code'], $rs['message'], $rs['data']);
+    }
+
+    //编辑
+    public function update()
+    {
+        $param = $this->request->only(['account_id', 'role_supplierNo', 'roleid'], 'post');
+
+        $val = Validate::rule([
+            'account_id|账户id' => 'require|number|gt:0',
+            'role_supplierNo|公司编码' => 'require|length:18',
+            'roleid|角色' => 'require|number|gt:0',
+        ]);
+
+        if (!$val->check($param)) return json_show(1004, $val->getError());
+
+        $role = Db::name('role')
+            ->field('id')
+            ->where('id', $param['roleid'])
+            ->where('level', '<>', 1)
+            ->findOrEmpty();
+
+        if (empty($role)) return json_show(1004, '角色不存在或等级不符合要求');
+
+        $tmp = Db::name('user_role')
+            ->field('id')
+            ->where(['uid' => $param['account_id'], 'supplierNo' => $param['role_supplierNo'], 'is_del' => 0])
+            ->findOrEmpty();
+
+        $date = date('Y-m-d H:i:s');
+        if (empty($tmp)) {
+            $rs = Db::name('user_role')
+                ->insert([
+                    'uid' => $param['account_id'],
+                    'supplierNo' => $param['role_supplierNo'],
+                    'roleid' => $param['roleid'],
+                    'status' => 1,
+                    'is_del' => 0,
+                    'addtime' => $date,
+                    'updatetime' => $date
+                ]);
+        } else {
+            $rs = Db::name('user_role')
+                ->where(['id' => $tmp['id']])
+                ->update(['roleid' => $param['roleid'], 'updatetime' => $date]);
+        }
+
+//        $userCommon = new UserCommon();
+//        $rs = json_decode($userCommon->handle('userCompanyUpdate', $param), true);
+
+        return $rs ? json_show(0, '修改成功') : json_show(1004, '修改失败');
+    }
+
+    //启禁用
+    public function status()
+    {
+        $param = $this->request->only(['id', 'status'], 'post', 'trim');
+
+        $userCommon = new UserCommon();
+        $rs = json_decode($userCommon->handle('userCompanyStatus', $param), true);
+
+        return json_show($rs['code'], $rs['message'], $rs['data']);
+    }
+
+    //详情
+    public function info()
+    {
+
+        $param = $this->request->post(['id'], 'post', 'trim');
+
+        $userCommon = new UserCommon();
+
+        $rs = json_decode($userCommon->handle('userCompanyInfo', $param), true);
+
+        if (isset($rs['code']) && $rs['code'] == 0) {
+            $tmp = Db::name('user_role')
+                ->alias('a')
+                ->field('b.role_name,b.level')
+                ->leftJoin('role b', 'b.id=a.roleid')
+                ->where(['a.uid' => $rs['data']['account_id'], 'is_del' => 0, 'a.supplierNo' => $rs['data']['companyCode']])
+                ->findOrEmpty();
+
+            $rs['data']['role_name'] = $tmp['role_name'] ?? '';
+            $rs['data']['level'] = $tmp['level'] ?? '';
+        }
+        return json_show($rs['code'], $rs['message'], $rs['data']);
+    }
+
+
+}

+ 40 - 30
app/admin/controller/UserCompanyBasic.php

@@ -11,16 +11,17 @@ class UserCompanyBasic extends Base
     //列表
     public function getList()
     {
-        $param = $this->request->only(['nickname' => '', 'username' => '', 'status' => '','page' => 1, 'size' => 10], 'post', 'trim');
+
+        $param = $this->request->only(['nickname' => '', 'username' => '', 'status' => '', 'page' => 1, 'size' => 10], 'post', 'trim');
 
         $userCommon = new UserCommon();
 
-        $rs = json_decode($userCommon->handle('userCompanyBasicList',$param), true);
+        $rs = json_decode($userCommon->handle('userCompanyBasicList', $param), true);
 
         return json_show($rs['code'], $rs['message'], $rs['data']);
     }
 
-    //注册
+    //添加
     public function add()
     {
         $param = $this->request->only(['nickname', 'mobile', 'email' => '', 'companyArr' => []], 'post', 'trim');
@@ -49,7 +50,7 @@ class UserCompanyBasic extends Base
         }
 
         $userCommon = new UserCommon();
-        $rs = json_decode($userCommon->handle('userCompanyBasicAdd',$param), true);
+        $rs = json_decode($userCommon->handle('userCompanyBasicAdd', $param), true);
 
         return json_show($rs['code'], $rs['message'], $rs['data']);
     }
@@ -59,11 +60,11 @@ class UserCompanyBasic extends Base
     {
         $param = $this->request->only(['ids'], 'post', 'trim');
 
-        $val=Validate::rule(['ids|账号ID'=>'require|array|max:100']);
-        if(!$val->check($param)) return json_show(1004,$val->getError());
+        $val = Validate::rule(['ids|账号ID' => 'require|array|max:100']);
+        if (!$val->check($param)) return json_show(1004, $val->getError());
 
         $userCommon = new UserCommon();
-        $rs = json_decode($userCommon->handle('userCompanyBasicDelete',$param), true);
+        $rs = json_decode($userCommon->handle('userCompanyBasicDelete', $param), true);
 
         return json_show($rs['code'], $rs['message'], $rs['data']);
     }
@@ -71,35 +72,44 @@ class UserCompanyBasic extends Base
     //编辑
     public function update()
     {
-        $param = $this->request->only(['id','nickname', 'mobile','sex'=>'','portrait'=>'', 'email' => '', 'companyArr' => []], 'post', 'trim');
-        $param = $this->request->only(['id','nickname', 'mobile', 'email' => '', 'companyArr' => []], 'post', 'trim');
+        $param = $this->request->only(['id', 'nickname', 'mobile', 'email' => '', 'portrait' => '', 'sex' => '',], 'post');
 
-        $val = Validate::rule([
-            'id' => 'require|number|gt:0',
-            'nickname|真实姓名' => 'require|min:2|max:200',
-            'mobile|手机号' => 'require|number|length:11|mobile',
-            'email|邮箱' => 'email',
-            'companyArr|关联业务公司' => 'array|max:100',
-        ]);
+        $userCommon = new UserCommon();
+        $rs = json_decode($userCommon->handle('userCompanyBasicUpdate', $param), true);
 
-        if (!$val->check($param)) return json_show(1004, $val->getError());
+        return json_show($rs['code'], $rs['message'], $rs['data']);
+    }
 
-        $val_company = Validate::rule([
-            'companyCode|公司编码' => 'require|length:18',
-            'companyName|公司名称' => 'require',
-            'company_type|公司类型' => 'require|number',
-            'is_main|是否默认公司' => 'require|in:0,1',
-        ]);
+    //启禁用
+    public function status()
+    {
+        $param = $this->request->only(['id', 'status'], 'post', 'trim');
 
-        foreach ($param['companyArr'] as $company) {
-            if (!$val_company->check($company)) {
-                return json_show(1004, $val_company->getError());
-                break;
-            }
-        }
+        $userCommon = new UserCommon();
+        $rs = json_decode($userCommon->handle('userCompanyBasicStatus', $param), true);
+
+        return json_show($rs['code'], $rs['message'], $rs['data']);
+    }
+
+    //修改密码
+    public function password()
+    {
+        $param = $this->request->only(['id', 'password'], 'post', 'trim');
 
         $userCommon = new UserCommon();
-        $rs = json_decode($userCommon->handle('userCompanyBasicUpdate',$param), true);
+        $rs = json_decode($userCommon->handle('setpasswd', $param), true);
+
+        return json_show($rs['code'], $rs['message'], $rs['data']);
+    }
+
+    //详情
+    public function info(){
+
+        $param = $this->request->post(['id'], 'post', 'trim');
+
+        $userCommon = new UserCommon();
+
+        $rs = json_decode($userCommon->handle('userCompanyBasicInfo', $param), true);
 
         return json_show($rs['code'], $rs['message'], $rs['data']);
     }

+ 9 - 0
app/admin/route/app.php

@@ -148,6 +148,15 @@ Route::rule("usergetinfo", "admin/User/getinfo");
 Route::rule('userCompanyBasicAdd', 'admin/UserCompanyBasic/add');
 Route::rule('userCompanyBasicList', 'admin/UserCompanyBasic/getList');
 Route::rule('userCompanyBasicDelete', 'admin/UserCompanyBasic/delete');
+Route::rule('userCompanyBasicUpdate', 'admin/UserCompanyBasic/update');
+Route::rule('userCompanyBasicStatus', 'admin/UserCompanyBasic/status');
+Route::rule('userCompanyBasicPassword', 'admin/UserCompanyBasic/password');
+Route::rule('userCompanyBasicInfo', 'admin/UserCompanyBasic/info');
+//【公司账号查询】
+Route::rule('userCompanyList', 'admin/UserCompany/getList');
+Route::rule('userCompanyInfo', 'admin/UserCompany/info');
+Route::rule('userCompanyUpdate', 'admin/UserCompany/update');
+Route::rule('userCompanyStatus', 'admin/UserCompany/status');
 
 
 Route::rule("sharelist", "admin/Share/index");