TaskOwnerLogic.php
1.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
namespace App\Http\Logic\Aside\Task;
use App\Http\Logic\Aside\BaseLogic;
use App\Models\Task\TaskOwner;
/**
* Class TaskOwnerLogic
* @package App\Http\Logic\Aside\Task
* @author zbj
* @date 2023/4/27
*/
class TaskOwnerLogic extends BaseLogic
{
public function __construct()
{
parent::__construct();
$this->model = new TaskOwner();
}
public function save($param){
//获取已分配了的
$manage_ids = $this->model->where('task_id', $param['task_id'])->pluck('manage_id', 'id')->toArray();
//待删除的
$del_manage_ids = array_diff($manage_ids, $param['manage_ids']);
$this->delete(array_keys($del_manage_ids));
//新增的
$add_manage_ids = array_diff($param['manage_ids'], $manage_ids);
foreach ($add_manage_ids as $add_manage_id){
$data = [
'task_id' => $param['task_id'],
'manage_id' => $add_manage_id
];
parent::save($data);
}
return $this->success();
}
public function status($id, $status){
$this->model = $this->getCacheInfo($id);
if(!$this->model){
$this->fail('数据不存在或者已经删除');
}
$data = [
'id' => $id,
'status' => $status
];
if($status == TaskOwner::STATUS_DONGING){
$data['doing_at'] = date('Y-m-d H:i:s');
}
if($status == TaskOwner::STATUS_DOWN){
$data['done_at'] = date('Y-m-d H:i:s');
}
parent::save($data);
return $this->success();
}
}