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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
| /* eslint-disable class-methods-use-this */
| import _axios, { get, put, _delete } from '@/lin/plugin/axios'
|
| // 我们通过 class 这样的语法糖使模型这个概念更加具象化,其优点:耦合性低、可维护性。
| class ProjectTaskInfo {
| // constructor() {}
|
| // 类中的方法可以代表一个用户行为
| async create(data) {
| return _axios({
| method: 'post',
| url: 'v1/project-task',
| data,
| })
| }
|
| async createBatch(data) {
| return _axios({
| method: 'post',
| url: 'v1/project-task/batch',
| data,
| })
| }
|
| // 在这里通过 async await 语法糖让代码同步执行
| // 1. await 一定要搭配 async 来使用
| // 2. await 后面跟的是一个 Promise 对象
| async get(id) {
| const res = await get(`v1/project-task/${id}`)
| return res
| }
|
| async edit(id, info) {
| const res = await put(`v1/project-task/${id}`, info)
| return res
| }
|
| async delete(id) {
| const res = await _delete(`v1/project-task/${id}`)
| return res
| }
|
| async getList(params) {
| return _axios({
| method: 'get',
| url: 'v1/project-task/list',
| // params:{keyword:keyword},
| params,
| handleError: true,
| })
| }
|
| async getPage(data) {
| return _axios({
| method: 'post',
| url: 'v1/project-task/page',
| // params:{keyword:queryForm.keyword.value,status:queryForm.status.value,stage:queryForm.stage.value,type:queryForm.type.value},
| data,
| handleError: true,
| })
| }
|
| async getMyTodoPage(data) {
| return _axios({
| method: 'post',
| url: 'v1/project-task/page/mine/todo',
| // params:{keyword:queryForm.keyword.value,status:queryForm.status.value,stage:queryForm.stage.value,type:queryForm.type.value},
| data,
| handleError: true,
| })
| }
|
| async start(id) {
| const res = await get(`v1/project-task/start/${id}`)
| return res
| }
|
| async finish(id) {
| const res = await get(`v1/project-task/finish/${id}`)
| return res
| }
|
| async testPass(id) {
| const res = await get(`v1/project-task/test/pass/${id}`)
| return res
| }
|
| async testUnpass(id) {
| const res = await get(`v1/project-task/test/unpass/${id}`)
| return res
| }
|
| async confirm(id) {
| const res = await get(`v1/project-task/confirm/${id}`)
| return res
| }
|
| async editProcess(data) {
| return _axios({
| method: 'post',
| url: 'v1/project-task/edit/process',
| // params:{keyword:queryForm.keyword.value,status:queryForm.status.value,stage:queryForm.stage.value,type:queryForm.type.value},
| data,
| handleError: true,
| })
| }
|
| async deleteTaskDaily(id) {
| const res = await _delete(`v1/project-task/delete/daily/${id}`)
| return res
| }
|
| async updateTaskDaily(id, data) {
| return _axios({
| method: 'post',
| url: `v1/project-task/update/daily/${id}`,
| // params:{keyword:queryForm.keyword.value,status:queryForm.status.value,stage:queryForm.stage.value,type:queryForm.type.value},
| data,
| })
| }
|
| async updateTaskPlanInfo(data) {
| return _axios({
| method: 'post',
| url: 'v1/project-task/update/plan',
| // params:{keyword:queryForm.keyword.value,status:queryForm.status.value,stage:queryForm.stage.value,type:queryForm.type.value},
| data,
| })
| }
| }
| export default new ProjectTaskInfo()
|
|