1
1
<template >
2
2
<ContentWrap >
3
- <XTable @register =" registerTable" >
4
- <template #suspensionState_default =" { row } " >
5
- <el-tag type =" success" v-if =" row.suspensionState === 1" >激活</el-tag >
6
- <el-tag type =" warning" v-if =" row.suspensionState === 2" >挂起</el-tag >
7
- </template >
8
- <template #actionbtns_default =" { row } " >
9
- <!-- 操作: 审批进度 -->
10
- <XTextButton preIcon =" ep:edit-pen" title =" 审批进度" @click =" handleAudit(row)" />
11
- </template >
12
- </XTable >
3
+ <!-- 搜索工作栏 -->
4
+ <el-form
5
+ class =" -mb-15px"
6
+ :model =" queryParams"
7
+ ref =" queryFormRef"
8
+ :inline =" true"
9
+ label-width =" 68px"
10
+ >
11
+ <el-form-item label =" 任务名称" prop =" name" >
12
+ <el-input
13
+ v-model =" queryParams.name"
14
+ placeholder =" 请输入任务名称"
15
+ clearable
16
+ @keyup.enter =" handleQuery"
17
+ class =" !w-240px"
18
+ />
19
+ </el-form-item >
20
+ <el-form-item label =" 创建时间" prop =" createTime" >
21
+ <el-date-picker
22
+ v-model =" queryParams.createTime"
23
+ value-format =" YYYY-MM-DD HH:mm:ss"
24
+ type =" daterange"
25
+ start-placeholder =" 开始日期"
26
+ end-placeholder =" 结束日期"
27
+ :default-time =" [new Date('1 00:00:00'), new Date('1 23:59:59')]"
28
+ class =" !w-240px"
29
+ />
30
+ </el-form-item >
31
+ <el-form-item >
32
+ <el-button @click =" handleQuery" ><Icon icon =" ep:search" class =" mr-5px" /> 搜索</el-button >
33
+ <el-button @click =" resetQuery" ><Icon icon =" ep:refresh" class =" mr-5px" /> 重置</el-button >
34
+ </el-form-item >
35
+ </el-form >
36
+ </ContentWrap >
37
+
38
+ <!-- 列表 -->
39
+ <ContentWrap >
40
+ <el-table v-loading =" loading" :data =" list" >
41
+ <el-table-column label =" 任务编号" align =" center" prop =" id" width =" 300px" />
42
+ <el-table-column label =" 任务名称" align =" center" prop =" name" />
43
+ <el-table-column label =" 所属流程" align =" center" prop =" processInstance.name" />
44
+ <el-table-column label =" 流程发起人" align =" center" prop =" processInstance.startUserNickname" />
45
+ <el-table-column
46
+ label =" 创建时间"
47
+ align =" center"
48
+ prop =" createTime"
49
+ width =" 180"
50
+ :formatter =" dateFormatter"
51
+ />
52
+ <el-table-column label =" 任务状态" prop =" suspensionState" >
53
+ <template #default =" scope " >
54
+ <el-tag type =" success" v-if =" scope.row.suspensionState === 1" >激活</el-tag >
55
+ <el-tag type =" warning" v-if =" scope.row.suspensionState === 2" >挂起</el-tag >
56
+ </template >
57
+ </el-table-column >
58
+ <el-table-column label =" 操作" align =" center" >
59
+ <template #default =" scope " >
60
+ <el-button link type =" primary" @click =" handleAudit(scope.row)" >审批进度</el-button >
61
+ </template >
62
+ </el-table-column >
63
+ </el-table >
64
+ <!-- 分页 -->
65
+ <Pagination
66
+ :total =" total"
67
+ v-model:page =" queryParams.pageNo"
68
+ v-model:limit =" queryParams.pageSize"
69
+ @pagination =" getList"
70
+ />
13
71
</ContentWrap >
14
72
</template >
15
73
16
- <script setup lang="ts ">
74
+ <script setup lang="tsx ">
17
75
// 业务相关的 import
18
- import { allSchemas } from ' ./todo.data'
19
76
import * as TaskApi from ' @/api/bpm/task'
20
-
77
+ import { dateFormatter } from ' @/utils/formatTime '
21
78
const { push } = useRouter () // 路由
22
-
23
- const [registerTable] = useXTable ({
24
- allSchemas: allSchemas ,
25
- topActionSlots: false ,
26
- getListApi: TaskApi .getTodoTaskPage
79
+ const loading = ref (true ) // 列表的加载中
80
+ const total = ref (0 ) // 列表的总页数
81
+ const list = ref ([]) // 列表的数据
82
+ const queryParams = reactive ({
83
+ pageNo: 1 ,
84
+ pageSize: 10 ,
85
+ name: ' ' ,
86
+ createTime: []
27
87
})
88
+ const queryFormRef = ref () // 搜索的表单
28
89
90
+ /** 查询任务列表 */
91
+ const getList = async () => {
92
+ loading .value = true
93
+ try {
94
+ const data = await TaskApi .getTodoTaskPage (queryParams )
95
+ list .value = data .list
96
+ total .value = data .total
97
+ } finally {
98
+ loading .value = false
99
+ }
100
+ }
101
+ /** 搜索按钮操作 */
102
+ const handleQuery = () => {
103
+ queryParams .pageNo = 1
104
+ getList ()
105
+ }
106
+ /** 重置按钮操作 */
107
+ const resetQuery = () => {
108
+ queryFormRef .value .resetFields ()
109
+ handleQuery ()
110
+ }
29
111
// 处理审批按钮
30
112
const handleAudit = (row ) => {
31
113
push ({
@@ -35,4 +117,8 @@ const handleAudit = (row) => {
35
117
}
36
118
})
37
119
}
120
+ /** 初始化 **/
121
+ onMounted (() => {
122
+ getList ()
123
+ })
38
124
</script >
0 commit comments