diff --git a/app/adminapi/controller/approve/ApproveController.php b/app/adminapi/controller/approve/ApproveController.php index e19838a3a..f870f9bc0 100644 --- a/app/adminapi/controller/approve/ApproveController.php +++ b/app/adminapi/controller/approve/ApproveController.php @@ -67,7 +67,7 @@ class ApproveController extends BaseAdminController $this->pass($approve, $params); } } else { - $this->pass($approve); + $this->pass($approve, $params); } } @@ -135,13 +135,21 @@ class ApproveController extends BaseAdminController // 需要手动输入申请的政策补贴金额 $approve->amount = $params['amount']; $approve->save(); + $taskSchedulePlan = TaskSchedulingPlan::where('la_task_scheduling_plan.id', $task['scheduling_plan_id']) + ->where('is_pay',0) + ->with(['template_info']) + ->withJoin(['scheduling'], 'left') + ->where('scheduling.company_type', 41) + ->find() + ->toArray(); + TaskLogic::masterTask7Settlement($taskSchedulePlan); } if ($approve->type == Approve::APPROVE_TYPE_9) { $taskSchedulePlan = TaskSchedulingPlan::where('la_task_scheduling_plan.id', $task['scheduling_plan_id']) ->where('is_pay',0) ->with(['template_info']) ->withJoin(['scheduling'], 'left') - ->where('scheduling.company_type', 17) + ->where('scheduling.company_type', 41) ->find() ->toArray(); TaskLogic::masterTask8Settlement($taskSchedulePlan); diff --git a/app/api/controller/TaskController.php b/app/api/controller/TaskController.php index fc1242a23..63aeece46 100644 --- a/app/api/controller/TaskController.php +++ b/app/api/controller/TaskController.php @@ -712,7 +712,62 @@ class TaskController extends BaseApiController // 没有则创建审批任务 $approveModel = Approve::where(['task_id' => $task['id']])->findOrEmpty(); if ($approveModel->isEmpty()) { - $approveModel->type = Approve::APPROVE_TYPE_6; + $approveModel->type = Approve::APPROVE_TYPE_8; + $approveModel->flow_id = 1; + $approveModel->name = $task['title']; + $approveModel->admin_id = 0; // 后台发起人id 暂时为0 + $approveModel->user_id = $this->userId; // 前台发起人用户id + $approveModel->task_id = $task['id']; // 任务id + $approveModel->department_id = '0'; + $approveModel->check_admin_ids = $areaManagerId; // 当前审批人ID 片区经理的admin_id + $approveModel->check_status = 1; // 状态 0待审核,1审核中,2审核通过,3审核不通过,4撤销审核 + $approveModel->other_type = 6; + $approveModel->extend = json_encode($extend); + $approveModel->create_time = time(); + $approveModel->update_time = time(); + $re = $approveModel->save(); + } else { + // 有则更新状态 + $approveModel->check_status = 1; // 状态 0待审核,1审核中,2审核通过,3审核不通过,4撤销审核 + $approveModel->save(); + } + return $this->success('ok', []); + } catch (Exception $e) { + return $this->fail($e->getMessage()); + } + } + + + public function commit_town_master_task_type_8() + { + try { + $parmas = $this->request->param(); // id annex video_annex + $task = TaskLogic::detail($parmas); + if (empty($task)) { + $this->fail('任务不存在'); + } + if (empty($parmas['annex']) && empty($parmas['video_annex'])) { + $this->fail('没有上传凭证,无法提交审核'); + } + + $extend = [ + 'other'=> [ + 'is_commit' => 1, + 'note' => $parmas['note'], + 'annex' => $parmas['annex'], + 'video_annex' => $parmas['video_annex'], + ] + ]; + 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'); + + + // 没有则创建审批任务 + $approveModel = Approve::where(['task_id' => $task['id']])->findOrEmpty(); + if ($approveModel->isEmpty()) { + $approveModel->type = Approve::APPROVE_TYPE_9; $approveModel->flow_id = 1; $approveModel->name = $task['title']; $approveModel->admin_id = 0; // 后台发起人id 暂时为0 diff --git a/app/common/logic/task/TaskLogic.php b/app/common/logic/task/TaskLogic.php index a178a28b5..53acbd1c9 100644 --- a/app/common/logic/task/TaskLogic.php +++ b/app/common/logic/task/TaskLogic.php @@ -741,7 +741,16 @@ class TaskLogic extends BaseLogic break; // 政策补贴申请 case 'town_task_type_master_7': - self::masterTask7Settlement($taskSchedulePlan); + Log::info(['镇农科公司定时任务结算执行-'.$taskSchedulePlan['template_info']['title']]); + $taskTemplateInfo = $taskSchedulePlan['template_info']; + $dayCount = $taskTemplateInfo['day_count']; + $taskInfo = Task::where(['id' => $taskSchedulePlan['task_id']])->find(); + $townCompany = Company::where(['id' => $taskTemplateInfo['company_id']])->find(); + if($dayCount < $taskTemplateInfo['stage_day_one']) { + self::flushTaskTime($taskSchedulePlan); + return true; + } +// self::masterTask7Settlement($taskSchedulePlan); break; // 日常管理及其他临时任务 case 'town_task_type_master_8': @@ -1048,18 +1057,15 @@ class TaskLogic extends BaseLogic * @param $taskSchedulePlan * 政策补贴申请 单次 */ - private static function masterTask7Settlement($taskSchedulePlan) + public static function masterTask7Settlement($taskSchedulePlan) { Log::info(['镇农科公司定时任务结算执行-'.$taskSchedulePlan['template_info']['title']]); $taskTemplateInfo = $taskSchedulePlan['template_info']; $dayCount = $taskTemplateInfo['day_count']; $taskInfo = Task::where(['id' => $taskSchedulePlan['task_id']])->find(); $townCompany = Company::where(['id' => $taskTemplateInfo['company_id']])->find(); - if($dayCount < $taskTemplateInfo['stage_day_one']) { - self::flushTaskTime($taskSchedulePlan); - } - if ($dayCount == $taskTemplateInfo['stage_day_one']) { + if ($dayCount <= $taskTemplateInfo['stage_day_one']) { // 审批通过后,任务状态会变更为已完成状态,审批是会根据凭证填入实际申请的政策补贴金额,根据该金额计算任务结算金额 if ($taskInfo['status'] == 3) { $approve = Approve::where(['task_id' => $taskSchedulePlan['task_id']])->find();