|
@@ -13,7 +13,7 @@ class UserCompany extends Base
|
|
|
public function getList()
|
|
|
{
|
|
|
|
|
|
- $param = $this->request->only(['nickname' => '', 'username' => '', 'status' => '', 'page' => 1, 'size' => 10], 'post', 'trim');
|
|
|
+ $param = $this->request->only(['account_id' => '', 'status' => '', 'page' => 1, 'size' => 10], 'post', 'trim');
|
|
|
|
|
|
$userCommon = new UserCommon();
|
|
|
|
|
@@ -25,13 +25,15 @@ class UserCompany extends Base
|
|
|
|
|
|
$tmp = Db::name('user_role')
|
|
|
->alias('a')
|
|
|
- ->field('b.role_name,b.level')
|
|
|
+ ->field('b.role_name,b.level,c.name item_name')
|
|
|
->leftJoin('role b', 'b.id=a.roleid')
|
|
|
- ->where(['a.uid' => $item['account_id'], 'is_del' => 0, 'a.supplierNo' => $item['companyCode']])
|
|
|
+ ->leftJoin('company_item c', 'c.id=a.itemid and c.companyNo=a.companyNo')
|
|
|
+ ->where(['a.uid' => $item['account_id'], 'is_del' => 0, 'a.companyNo' => $item['companyCode']])
|
|
|
->findOrEmpty();
|
|
|
|
|
|
$item['role_name'] = $tmp['role_name'] ?? '';
|
|
|
$item['level'] = $tmp['level'] ?? '';
|
|
|
+ $item['item_name'] = $tmp['item_name'] ?? '';
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -41,12 +43,13 @@ class UserCompany extends Base
|
|
|
//编辑
|
|
|
public function update()
|
|
|
{
|
|
|
- $param = $this->request->only(['account_id', 'role_supplierNo', 'roleid'], 'post');
|
|
|
+ $param = $this->request->only(['account_id', 'companyNo', 'roleid', 'itemid'], 'post');
|
|
|
|
|
|
$val = Validate::rule([
|
|
|
'account_id|账户id' => 'require|number|gt:0',
|
|
|
- 'role_supplierNo|公司编码' => 'require|length:18',
|
|
|
+ 'companyNo|公司编码' => 'require|length:18',
|
|
|
'roleid|角色' => 'require|number|gt:0',
|
|
|
+ 'itemid|部门id' => 'require|number|gt:0',
|
|
|
]);
|
|
|
|
|
|
if (!$val->check($param)) return json_show(1004, $val->getError());
|
|
@@ -59,28 +62,23 @@ class UserCompany extends Base
|
|
|
|
|
|
if (empty($role)) return json_show(1004, '角色不存在或等级不符合要求');
|
|
|
|
|
|
- $tmp = Db::name('user_role')
|
|
|
+ $item = Db::name('company_item')
|
|
|
->field('id')
|
|
|
- ->where(['uid' => $param['account_id'], 'supplierNo' => $param['role_supplierNo'], 'is_del' => 0])
|
|
|
+ ->where(['id' => $param['itemid'], 'companyNo' => $param['companyNo']])
|
|
|
->findOrEmpty();
|
|
|
+ if (empty($item)) return json_show(1004, '该公司部门不存在');
|
|
|
+
|
|
|
+// $tmp = Db::name('user_role')
|
|
|
+// ->field('id')
|
|
|
+// ->where(['uid' => $param['account_id'], 'companyNo' => $param['companyNo'], '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]);
|
|
|
- }
|
|
|
+
|
|
|
+ $rs = Db::name('user_role')
|
|
|
+ ->where(['uid' => $param['account_id'], 'companyNo' => $param['companyNo'], 'is_del' => 0])
|
|
|
+ ->update(['roleid' => $param['roleid'], 'itemid' => $param['itemid'], 'updatetime' => $date]);
|
|
|
+
|
|
|
|
|
|
// $userCommon = new UserCommon();
|
|
|
// $rs = json_decode($userCommon->handle('userCompanyUpdate', $param), true);
|
|
@@ -93,10 +91,27 @@ class UserCompany extends Base
|
|
|
{
|
|
|
$param = $this->request->only(['id', 'status'], 'post', 'trim');
|
|
|
|
|
|
+ $val = Validate::rule([
|
|
|
+ 'id' => 'require|number|gt:0',
|
|
|
+ 'status' => 'require|number|in:0,1',
|
|
|
+ ]);
|
|
|
+
|
|
|
+ if ($val->check($param) == false) return json_show(1004, $val->getError());
|
|
|
+
|
|
|
$userCommon = new UserCommon();
|
|
|
$rs = json_decode($userCommon->handle('userCompanyStatus', $param), true);
|
|
|
|
|
|
- return json_show($rs['code'], $rs['message'], $rs['data']);
|
|
|
+ if (!isset($rs['code']) || $rs['code'] != 0) return json_show($rs['code'], $rs['message'], $rs['data']);
|
|
|
+ else {
|
|
|
+
|
|
|
+ $res = Db::name('user_role')
|
|
|
+ ->where('status', '<>', $param['status'])
|
|
|
+ ->where(['uid' => $rs['data']['account_id'], 'companyNo' => $rs['data']['companyNo'], 'is_del' => 0])
|
|
|
+ ->update(['status' => $param['status'], 'updatetime' => date('Y-m-d H:i:s')]);
|
|
|
+
|
|
|
+ return $res ? json_show(0, '操作成功') : json_show(1004, '操作失败');
|
|
|
+
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
//详情
|
|
@@ -110,15 +125,18 @@ class UserCompany extends Base
|
|
|
$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')
|
|
|
+ ->field('b.role_name,b.level,c.name item_name')
|
|
|
->leftJoin('role b', 'b.id=a.roleid')
|
|
|
- ->where(['a.uid' => $rs['data']['account_id'], 'is_del' => 0, 'a.supplierNo' => $rs['data']['companyCode']])
|
|
|
+ ->leftJoin('company_item c', 'c.id=a.itemid and c.companyNo=a.companyNo')
|
|
|
+ ->where(['a.uid' => $rs['data']['account_id'], 'is_del' => 0, 'a.companyNo' => $rs['data']['companyCode']])
|
|
|
->findOrEmpty();
|
|
|
|
|
|
$rs['data']['role_name'] = $tmp['role_name'] ?? '';
|
|
|
$rs['data']['level'] = $tmp['level'] ?? '';
|
|
|
+ $rs['data']['item_name'] = $tmp['item_name'] ?? '';
|
|
|
}
|
|
|
return json_show($rs['code'], $rs['message'], $rs['data']);
|
|
|
}
|