|
@@ -2,7 +2,7 @@
|
|
|
|
|
|
declare (strict_types = 1);
|
|
|
namespace app\admin\controller;
|
|
|
-use app\admin\BaseController;use think\App;use think\facade\Db;use think\facade\Validate;
|
|
|
+use app\admin\BaseController;use think\App;use think\Exception;use think\facade\Db;use think\facade\Validate;
|
|
|
|
|
|
class User extends BaseController{
|
|
|
public function __construct(App $app) {parent::__construct($app);}
|
|
@@ -25,32 +25,46 @@ class User extends BaseController{
|
|
|
->where(["a.uid"=>$post['id'],"a.is_del"=>0,"b.level"=>1])
|
|
|
->findOrEmpty();
|
|
|
if(!empty($isSuper) && !empty($post['companyArr']))return error_show(1002,"超管账户不允许设置关联业务公司");
|
|
|
- $saveinfo =[
|
|
|
+ Db::startTrans();
|
|
|
+ try{
|
|
|
+ $saveinfo =[
|
|
|
"id"=>$post['id'],
|
|
|
"nickname"=>$post['nickname'],
|
|
|
"mobile"=>$post['mobile'],
|
|
|
"token"=>$post['token']
|
|
|
];
|
|
|
$saev= resetinfo($saveinfo);
|
|
|
-
|
|
|
if(!isset($saev['code'])||$saev['code']!=0){
|
|
|
- return error_show(1004,$saev['message']);
|
|
|
+ throw new Exception($saev['message']);
|
|
|
}
|
|
|
if(!empty($post['companyArr'])){
|
|
|
- if(!empty($post['companyArr'])){
|
|
|
- foreach ($post['companyArr'] as &$item){
|
|
|
- $company =Db::name("supplier_info")->where(["code"=>$item['companyCode']])->find();
|
|
|
- $item['company_type'] = $company["type"]==3?2:1;
|
|
|
- }
|
|
|
- }
|
|
|
+ $is_delArr= array_column($post['companyArr'],"is_del");
|
|
|
+ foreach ($post['companyArr'] as &$item){
|
|
|
+ $company =Db::name("supplier_info")->where(["code"=>$item['companyCode']])->find();
|
|
|
+ $item['company_type'] = $company["type"]==3?2:1;
|
|
|
+ if($item['is_del']==1){
|
|
|
+ if($item['is_main']==1 && in_array(0,$is_delArr)) throw new Exception("默认企业不可删除");
|
|
|
+ $re = Db::name("user_role")->where(["uid"=>$post['id'],"is_del"=>0,"companyNo"=>$item['companyCode']])
|
|
|
+ ->update(["is_del"=>1,"is_mian"=>0,"updatetime"=>date("Y-m-d H:i:s")]);
|
|
|
+ }else{
|
|
|
+ $re = Db::name("user_role")->where(["uid"=>$post['id'],"is_del"=>0,"companyNo"=>$item['companyCode']])
|
|
|
+ ->update(["nickname"=>$post['nickname'],"updatetime"=>date("Y-m-d H:i:s")]);
|
|
|
+ }
|
|
|
+ if($re==false)throw new Exception("关联企业保存失败");
|
|
|
+ }
|
|
|
$companyinfo = ["id"=>$post['id'],"company"=>$post['companyArr'],"token"=>$post['token']];
|
|
|
$companyset =setUserCompany($companyinfo);
|
|
|
if(!isset($companyset['code'])||$companyset['code']!=0){
|
|
|
- return error_show(1004,$companyset['message']);
|
|
|
+ throw new Exception($companyset['message']);
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+ Db::commit();
|
|
|
return app_show(0,"设置成功");
|
|
|
+ }catch (Exception $e){
|
|
|
+ Db::rollback();
|
|
|
+ return error_show(1005,$e->getMessage());
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
/**
|
|
|
* 用户列表
|
|
@@ -150,7 +164,7 @@ class User extends BaseController{
|
|
|
->leftJoin("role b","a.roleid=b.id")
|
|
|
->where(["uid"=>$value['id'],"a.companyNo"=>$item['companyCode'],"is_del"=>0])
|
|
|
->field("role_name,roleid,a.status,b.level")->findOrEmpty();
|
|
|
- $item['roleid']=$roleArr['roleid']??"";
|
|
|
+ $item['roleid']=$roleArr['roleid']??"";
|
|
|
$item['status']=$roleArr['status']??0;
|
|
|
$item["role_name"] =$roleArr['role_name']??"";
|
|
|
$item["role_level"] =$roleArr['level']??"";
|