diff --git a/app/api/controller/TaskController.php b/app/api/controller/TaskController.php index d11aca276..287aa5eaa 100644 --- a/app/api/controller/TaskController.php +++ b/app/api/controller/TaskController.php @@ -64,6 +64,8 @@ class TaskController extends BaseApiController $where[] = ['status', '=', $param['status']]; } $townTaskTypeList = DictData::where(['type_value' => 'town_task_type', 'status' => 1])->column('value', 'id'); + $townMarketingManagerTaskTypeList = DictData::where(['type_value' => 'town_task_type_marketing_director', 'status' => 1])->column('value', 'id'); + $res = Task::where($where) ->field(['id', 'title', 'money', 'template_id', 'director_uid', 'company_id', 'start_time', 'end_time', 'director_uid', 'type', 'status', 'content', 'extend']) ->page($page, 25) @@ -124,31 +126,34 @@ class TaskController extends BaseApiController } } - // break; - // case 'town_task_type_2': - // // 拓展小组服务团队工作任务 - // - // break; - // case 'town_task_type_3': - // // 督促小组服务团队完成任务,协助开展工作,解决问题任务 - // - // break; - // case 'town_task_type_4': - // // 督促小组服务团队学习任务 - // - // break; - // case 'town_task_type_5': - // // 督促小组服务团队完成需求手机和交易任务 - // - // break; - // case 'town_task_type_6': - // // 督促小组服务团队入股村联络员所成立的公司任务 - // - // break; - // case 'town_task_type_7': - // // 安全工作任务 - // - // break; + if (isset($townMarketingManagerTaskTypeList[$item['type']])) { + // 数字农贸宣传、加工业务建设和招商任务 返回给前端当前任务模板进行到哪个阶段 + // 每个阶段不同,前台展示不同的资料上传页面,上传走审批接口 + if ($townMarketingManagerTaskTypeList[$item['type']] == 'town_task_type_marketing_director_10') { + $templateInfo = TaskTemplate::where(['id' => $item['template_id']])->find(); + $dayCount = $templateInfo['day_count']; + $stageDayOne = $templateInfo['stage_day_one']; + $stageDayTwoCount = bcadd($templateInfo['stage_day_one'], $templateInfo['stage_day_two']); + $stageDayThreeCount = bcadd($templateInfo['stage_day_three'], $stageDayTwoCount); + // 第一阶段 + if ($dayCount < $stageDayOne) { + $res[$k]['stage'] = 1; + } + // 第二阶段 + if ($dayCount > $stageDayOne && $dayCount <= $stageDayTwoCount) { + $res[$k]['stage'] = 2; + } + // 第三阶段 + if ($dayCount > $stageDayTwoCount && $dayCount <= $stageDayThreeCount) { + $res[$k]['stage'] = 3; + } + // 第四阶段 + if ($dayCount > $stageDayThreeCount) { + $res[$k]['stage'] = 4; + } + } + } + } return $this->success('ok', $res); @@ -323,10 +328,9 @@ class TaskController extends BaseApiController // 没有则创建审批任务 $approveModel = Approve::where(['task_id' => $task['id']])->find(); if ($approveModel->isEmpty()) { - $approveModel->type = 1; + $approveModel->type = Approve::APPROVE_TYPE_1; $approveModel->flow_id = 1; $approveModel->name = $task['title']; - $approveModel->type = 1; $approveModel->admin_id = 0; // 后台发起人id 暂时为0 $approveModel->user_id = $this->userId; // 前台发起人用户id $approveModel->task_id = $task['id']; // 前台发起人用户id @@ -379,6 +383,73 @@ class TaskController extends BaseApiController } catch (Exception $e) { return $this->fail($e->getMessage()); } + } + /** + * 镇农科公司任务-数字农贸宣传、加工业务建设和招商任务 + * 第一阶段 上传 宣传和加工两个业务 的手续办理完成证明 + * 第二阶段 上传 竣工验收单 + * 第三阶段 上传 两个业务体系招商入驻证明 + * 第四阶段 上传完成净利润的证明 + * + * 将上传文件保存,走任务审批流程 + */ + public function commit_town_task_type_marketing_director_10() + { + try { + $parmas = $this->request->param(); //id stage stage1第一阶段完成证明 stage2 stage3 stage4 + $task = TaskLogic::detail($parmas); + if (empty($task)) { + $this->fail('任务不存在'); + } + Db::startTrans(); + $extend = []; + $stage = $parmas['stage']; // 当前做的是任务第几阶段 + if ($stage == 1) { + $extend['stage1'] = $parmas['stage1']; + } + if ($stage == 2) { + $extend['stage2'] = $parmas['stage2']; + } + if ($stage == 3) { + $extend['stage3'] = $parmas['stage3']; + } + if ($stage == 4) { + $extend['stage4'] = $parmas['stage4']; + } +// 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_4; + $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 = $extend; + $approveModel->create_time = time(); + $approveModel->update_time = time(); + $approveModel->save(); + } else { + // 有则更新状态 + $approveModel->check_status = 1; // 状态 0待审核,1审核中,2审核通过,3审核不通过,4撤销审核 + $approveModel->save(); + } + + Db::commit(); + return $this->success('ok', []); + } catch (Exception $e) { + Db::rollback(); + return $this->fail($e->getMessage()); + } } }