From 9fee5c61a64272d26476bcc205748638c12e1b78 Mon Sep 17 00:00:00 2001 From: weifashi <605403358@qq.com> Date: Fri, 15 Sep 2023 18:57:00 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E4=BF=AE=E5=A4=8Dbug=20-=20?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E7=94=A8=E6=88=B7=E5=AE=A1=E6=89=B9=E7=8A=B6?= =?UTF-8?q?=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/Api/ApproveController.php | 24 +++++++++++++++ app/Http/Controllers/Api/UsersController.php | 5 ---- app/Module/Base.php | 17 ----------- .../pages/manage/components/DialogWrapper.vue | 30 ++++++++++++++----- 4 files changed, 47 insertions(+), 29 deletions(-) diff --git a/app/Http/Controllers/Api/ApproveController.php b/app/Http/Controllers/Api/ApproveController.php index 7c67c3da2..da3d8c8c5 100755 --- a/app/Http/Controllers/Api/ApproveController.php +++ b/app/Http/Controllers/Api/ApproveController.php @@ -1099,4 +1099,28 @@ class ApproveController extends AbstractController return $process; } + + /** + * @api {get} api/approve/user/status 19. 获取用户审批状态 + * + * @apiVersion 1.0.0 + * @apiGroup system + * @apiName user__status + * + * @apiParam {String} userid + * + * @apiSuccess {String} + */ + public function user__status() + { + $data['userid'] = intval(Request::input('userid')); + $ret = Ihttp::ihttp_get($this->flow_url.'/api/v1/workflow/process/getUserApprovalStatus?'.http_build_query($data)); + $procdef = json_decode($ret['ret'] == 1 ? $ret['data'] : '{}', true); + if (isset($procdef['status']) && $procdef['status'] == 200) { + return Base::retSuccess('success', isset($procdef['data']["proc_def_name"]) ? $procdef['data']["proc_def_name"] : ''); + } + return Base::retSuccess('success', ''); + } + + } diff --git a/app/Http/Controllers/Api/UsersController.php b/app/Http/Controllers/Api/UsersController.php index 134eea2f7..9e11e4f69 100755 --- a/app/Http/Controllers/Api/UsersController.php +++ b/app/Http/Controllers/Api/UsersController.php @@ -633,11 +633,6 @@ class UsersController extends AbstractController $basic = UserDelete::userid2basic($id); } if ($basic) { - // 用户审批状态 - $approval_status = Base::getUserApprovalStatus($basic->userid); - if ($approval_status != ''){ - $basic->approval_status = $approval_status; - } // $retArray[] = $basic; } diff --git a/app/Module/Base.php b/app/Module/Base.php index 051e2edb0..ad6452558 100755 --- a/app/Module/Base.php +++ b/app/Module/Base.php @@ -2937,21 +2937,4 @@ class Base return $newArray; } - /** - * 获取用户审批状态 - * - * @param [type] $userid - * @return string - */ - public static function getUserApprovalStatus($userid) { - $data['userid'] = $userid; - $url = env('FLOW_URL') ?: 'http://approve'; - $ret = Ihttp::ihttp_get($url.'/api/v1/workflow/process/getUserApprovalStatus?'.http_build_query($data)); - $procdef = json_decode($ret['ret'] == 1 ? $ret['data'] : '{}', true); - if (isset($procdef['status']) && $procdef['status'] == 200) { - return isset($procdef['data']["proc_def_name"]) ? $procdef['data']["proc_def_name"] : ''; - } else { - return ''; - } - } } diff --git a/resources/assets/js/pages/manage/components/DialogWrapper.vue b/resources/assets/js/pages/manage/components/DialogWrapper.vue index 707ae9cd7..35fd6742a 100644 --- a/resources/assets/js/pages/manage/components/DialogWrapper.vue +++ b/resources/assets/js/pages/manage/components/DialogWrapper.vue @@ -44,7 +44,7 @@

{{dialogData.name}}

({{peopleNum}}) {{$L('机器人')}} - {{$L(approvalStatus)}} + {{$L(approvaUserStatus)}} {{$L('全员')}} {{$L('部门')}}
@@ -656,7 +656,8 @@ export default { positionLoad: 0, approveDetails:{id: 0}, - approveDetailsShow: false + approveDetailsShow: false, + approvaUserStatus: '' } }, @@ -979,10 +980,6 @@ export default { } }) return list - }, - - approvalStatus(){ - return this.cacheUserBasic.find(item => item.userid === this.dialogData.dialog_user.userid)?.approval_status } }, @@ -1017,6 +1014,7 @@ export default { } } this.$store.dispatch('closeDialog', old_id) + this.getUserApproveStatus(); }, immediate: true }, @@ -3010,7 +3008,25 @@ export default { if (src) { this.$store.dispatch("previewImage", src) } - } + }, + + getUserApproveStatus() { + this.approvaUserStatus = '' + if (this.dialogData.type !== 'user') { + return + } + this.$store.dispatch("call", { + url: 'approve/user/status', + data: { + userid: this.dialogData.dialog_user.userid, + } + }).then(({data}) => { + this.approvaUserStatus = data; + }).catch(({msg}) => { + $A.messageError(msg); + }); + }, + } }