UserCompany.php 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. <?php
  2. namespace app\admin\controller;
  3. use app\admin\common\User as UserCommon;
  4. use think\facade\Db;
  5. use think\facade\Validate;
  6. //【公司账号查询】
  7. class UserCompany extends Base
  8. {
  9. //列表
  10. public function getList()
  11. {
  12. $param = $this->request->only(['nickname' => '', 'username' => '', 'status' => '', 'page' => 1, 'size' => 10], 'post', 'trim');
  13. $userCommon = new UserCommon();
  14. $rs = json_decode($userCommon->handle('userCompanyList', $param), true);
  15. if (isset($rs['code']) && $rs['code'] == 0) {
  16. //补充角色信息
  17. foreach ($rs['data']['list'] as &$item) {
  18. $tmp = Db::name('user_role')
  19. ->alias('a')
  20. ->field('b.role_name,b.level')
  21. ->leftJoin('role b', 'b.id=a.roleid')
  22. ->where(['a.uid' => $item['account_id'], 'is_del' => 0, 'a.supplierNo' => $item['companyCode']])
  23. ->findOrEmpty();
  24. $item['role_name'] = $tmp['role_name'] ?? '';
  25. $item['level'] = $tmp['level'] ?? '';
  26. }
  27. }
  28. return json_show($rs['code'], $rs['message'], $rs['data']);
  29. }
  30. //编辑
  31. public function update()
  32. {
  33. $param = $this->request->only(['account_id', 'role_supplierNo', 'roleid'], 'post');
  34. $val = Validate::rule([
  35. 'account_id|账户id' => 'require|number|gt:0',
  36. 'role_supplierNo|公司编码' => 'require|length:18',
  37. 'roleid|角色' => 'require|number|gt:0',
  38. ]);
  39. if (!$val->check($param)) return json_show(1004, $val->getError());
  40. $role = Db::name('role')
  41. ->field('id')
  42. ->where('id', $param['roleid'])
  43. ->where('level', '<>', 1)
  44. ->findOrEmpty();
  45. if (empty($role)) return json_show(1004, '角色不存在或等级不符合要求');
  46. $tmp = Db::name('user_role')
  47. ->field('id')
  48. ->where(['uid' => $param['account_id'], 'supplierNo' => $param['role_supplierNo'], 'is_del' => 0])
  49. ->findOrEmpty();
  50. $date = date('Y-m-d H:i:s');
  51. if (empty($tmp)) {
  52. $rs = Db::name('user_role')
  53. ->insert([
  54. 'uid' => $param['account_id'],
  55. 'supplierNo' => $param['role_supplierNo'],
  56. 'roleid' => $param['roleid'],
  57. 'status' => 1,
  58. 'is_del' => 0,
  59. 'addtime' => $date,
  60. 'updatetime' => $date
  61. ]);
  62. } else {
  63. $rs = Db::name('user_role')
  64. ->where(['id' => $tmp['id']])
  65. ->update(['roleid' => $param['roleid'], 'updatetime' => $date]);
  66. }
  67. // $userCommon = new UserCommon();
  68. // $rs = json_decode($userCommon->handle('userCompanyUpdate', $param), true);
  69. return $rs ? json_show(0, '修改成功') : json_show(1004, '修改失败');
  70. }
  71. //启禁用
  72. public function status()
  73. {
  74. $param = $this->request->only(['id', 'status'], 'post', 'trim');
  75. $userCommon = new UserCommon();
  76. $rs = json_decode($userCommon->handle('userCompanyStatus', $param), true);
  77. return json_show($rs['code'], $rs['message'], $rs['data']);
  78. }
  79. //详情
  80. public function info()
  81. {
  82. $param = $this->request->post(['id'], 'post', 'trim');
  83. $userCommon = new UserCommon();
  84. $rs = json_decode($userCommon->handle('userCompanyInfo', $param), true);
  85. if (isset($rs['code']) && $rs['code'] == 0) {
  86. $tmp = Db::name('user_role')
  87. ->alias('a')
  88. ->field('b.role_name,b.level')
  89. ->leftJoin('role b', 'b.id=a.roleid')
  90. ->where(['a.uid' => $rs['data']['account_id'], 'is_del' => 0, 'a.supplierNo' => $rs['data']['companyCode']])
  91. ->findOrEmpty();
  92. $rs['data']['role_name'] = $tmp['role_name'] ?? '';
  93. $rs['data']['level'] = $tmp['level'] ?? '';
  94. }
  95. return json_show($rs['code'], $rs['message'], $rs['data']);
  96. }
  97. }