|
...
|
...
|
@@ -42,6 +42,7 @@ class TaskLogic extends BaseLogic |
|
|
|
$this->fail('error');
|
|
|
|
}
|
|
|
|
$info = $this->getFileUrl($info);
|
|
|
|
$info['follow'] = $this->getFileUrl($info['follow']);
|
|
|
|
return $this->success($info);
|
|
|
|
}
|
|
|
|
|
|
...
|
...
|
@@ -67,6 +68,15 @@ class TaskLogic extends BaseLogic |
|
|
|
}
|
|
|
|
return $v;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :保存
|
|
|
|
* @name :save
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2023/8/23 17:19
|
|
|
|
*/
|
|
|
|
public function save($param){
|
|
|
|
|
|
|
|
DB::beginTransaction();
|
|
...
|
...
|
@@ -97,36 +107,19 @@ class TaskLogic extends BaseLogic |
|
|
|
* @author zbj
|
|
|
|
* @date 2023/4/27
|
|
|
|
*/
|
|
|
|
public function status($id, $status){
|
|
|
|
$task = $this->model->read(['id'=>$id]);
|
|
|
|
if(!$task){
|
|
|
|
$this->fail('任务不存在');
|
|
|
|
}
|
|
|
|
$manage_ids = Arr::pluck($task['owner'], 'manage_id', 'id');
|
|
|
|
if(!in_array(LoginLogic::manage('id'), $manage_ids)){
|
|
|
|
$this->fail('非本人任务,不能更新进程');
|
|
|
|
public function status(){
|
|
|
|
$taskOwnerModel = new TaskOwner();
|
|
|
|
$ownerInfo = $taskOwnerModel->read(['task_id'=>$this->param['id'],'manager_id'=>$this->manager['id']]);
|
|
|
|
if($ownerInfo === false){
|
|
|
|
$this->fail('当前工单不属于您');
|
|
|
|
}
|
|
|
|
$task_data = [
|
|
|
|
'id' => $id,
|
|
|
|
'status' => $status,
|
|
|
|
];
|
|
|
|
|
|
|
|
//个人任务
|
|
|
|
$task_owner_id = array_search(LoginLogic::manage('id'), $manage_ids);
|
|
|
|
(new TaskOwnerLogic())->status($task_owner_id, $status);
|
|
|
|
|
|
|
|
//一个人开始,任务开始,所有人完成,任务才完成
|
|
|
|
$owner_status = TaskOwner::where('task_id', $id)->pluck('status')->toArray();
|
|
|
|
//所有都完成
|
|
|
|
if(array_sum($owner_status) == count($owner_status) * TaskOwner::STATUS_DOWN){
|
|
|
|
$task_data['status'] = Task::STATUS_DOWN;
|
|
|
|
$task_data['done_at'] = date('Y-m-d H:i:s');
|
|
|
|
}else{
|
|
|
|
$task_data['status'] = Task::STATUS_DONGING;
|
|
|
|
$task_data['doing_at'] = date('Y-m-d H:i:s');
|
|
|
|
DB::beginTransaction();
|
|
|
|
try {
|
|
|
|
$this->model->edit(['status'=>$this->param['status']],['id'=>$this->param['id']]);
|
|
|
|
$taskOwnerModel->edit(['status'=>$this->param['status']],['task_id'=>$this->param['id']]);
|
|
|
|
}catch (\Exception $e){
|
|
|
|
$this->fail('error');
|
|
|
|
}
|
|
|
|
|
|
|
|
parent::save($task_data);
|
|
|
|
return $this->success();
|
|
|
|
}
|
|
|
|
|
...
|
...
|
|