From 929aaa086fb17b5beedbf2af090427c370dc8b30 Mon Sep 17 00:00:00 2001 From: chenbo <709206448@qq.com> Date: Sat, 16 Sep 2023 14:43:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=B6=E4=BB=96=E4=BB=BB=E5=8A=A1=E5=AE=A1?= =?UTF-8?q?=E6=89=B9=EF=BC=8C=E6=8B=92=E7=BB=9D=E5=90=8E=E5=BD=93=E5=A4=A9?= =?UTF-8?q?=E4=BB=8D=E5=8F=AF=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/approve/ApproveController.php | 50 ++++++++++++++----- app/api/controller/TaskController.php | 4 +- app/common/logic/task/TaskLogic.php | 3 +- 3 files changed, 42 insertions(+), 15 deletions(-) diff --git a/app/adminapi/controller/approve/ApproveController.php b/app/adminapi/controller/approve/ApproveController.php index 0e304503e..51dc4b541 100644 --- a/app/adminapi/controller/approve/ApproveController.php +++ b/app/adminapi/controller/approve/ApproveController.php @@ -6,6 +6,7 @@ use app\adminapi\controller\BaseAdminController; use app\adminapi\lists\approve\ApproveLists; use app\common\model\Approve; use app\common\model\task\Task; +use app\common\model\task_scheduling_plan\TaskSchedulingPlan; use think\facade\Db; class ApproveController extends BaseAdminController @@ -24,20 +25,13 @@ class ApproveController extends BaseAdminController $this->fail('数据不存在'); } Db::startTrans(); - $approve->check_status = $params['check_status']; + // 拒绝通过 要让用户今天可以继续做任务 if ($params['check_status'] == 3) { - $approve->remark = $params['remark']; + $this->refuse($params, $approve); } - $approve->update_time = time(); - $approve->save(); - // 修改任务完成状态 if ($params['check_status'] == 2) { - $task = Task::find($approve['task_id']); - if ($task['status'] == 2) { - $task->status = 3; - $task->save(); - } + $this->pass($approve); } Db::commit(); return $this->success('审核成功'); @@ -45,7 +39,39 @@ class ApproveController extends BaseAdminController Db::rollback(); return $this->fail($e->getMessage()); } - - } + // 通过 + private function pass($approve) + { + $task = Task::find($approve['task_id']); + if ($task['status'] == 2) { + $task->status = 3; + $task->save(); + } + } + + // 拒绝 + private function refuse($params, $approve) + { + $approve->check_status = $params['check_status']; + $approve->remark = $params['remark']; + $approve->update_time = time(); + $approve->save(); + + // 更新schedule_plan时间和task的时间为今天依旧可提交 + $schedulePlan = TaskSchedulingPlan::find(['tast_id' => $approve['task_id']]); + if (empty($schedule_plan)) { + return $this->fail('数据异常,任务计划不存在'); + } + $time = strtotime(date('Y-m-d')); + TaskSchedulingPlan::where(['id' => $schedulePlan['id']])->update([ + 'start_time'=>$time, + 'end_time'=>$time + 86399 + ]); + Task::where('id', $approve['task_id'])->update([ + 'start_time'=>$time, + 'end_time'=>$time + 86399 + ]); + } + } \ No newline at end of file diff --git a/app/api/controller/TaskController.php b/app/api/controller/TaskController.php index 08f33df20..aab62c594 100644 --- a/app/api/controller/TaskController.php +++ b/app/api/controller/TaskController.php @@ -235,11 +235,11 @@ class TaskController extends BaseApiController } $extend = ['other' => ['is_commit' => 1, 'note' => $parmas['note'], 'annex'=>$parmas['annex'], 'video_annex' => $parmas['video_annex']]]; Db::startTrans(); - Task::where(['id' => $parmas['id']])->update(['extend' => json_encode($extend), 'update_time'=>time()]); + Task::where(['id' => $parmas['id']])->update(['extend' => json_encode($extend), 'update_time'=>time(), 'director_uid'=>$this->userId]); // director_uid 指派人 // 片区经理 $areaManagerId = User::where(['id' => $this->userId])->with('company')->value('area_manager'); - dd($areaManagerId); + // 创建审批任务 $approveModel = new Approve(); diff --git a/app/common/logic/task/TaskLogic.php b/app/common/logic/task/TaskLogic.php index bacb2895c..3a4f38b24 100644 --- a/app/common/logic/task/TaskLogic.php +++ b/app/common/logic/task/TaskLogic.php @@ -181,7 +181,8 @@ class TaskLogic extends BaseLogic 'other'=> [ 'is_commit' => 0, 'note' => '', - 'annex' => '' + 'annex' => [], + 'video_annex' => [], ] ]; $data['extend'] = json_encode($extend);