feat(wms): 新增部门管理模块并重构审批流程
- 新增部门管理模块,包括部门树形结构的增删改查功能 - 重构审批流程,使用任务审批模式替代原有简单审批 - 调整请假和外出申请页面,适配新的审批流程 - 移除不必要的审批部门显示和申请类型筛选 - 更新状态显示逻辑,支持多级审批状态展示
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
<!-- <h4>筛选条件</h4> -->
|
||||
|
||||
<!-- 申请类型:自定义选项卡替代el-tabs -->
|
||||
<div class="custom-tabs">
|
||||
<!-- <div class="custom-tabs">
|
||||
<div class="custom-tabs-header">申请类型</div>
|
||||
<div class="custom-tabs-nav">
|
||||
<div
|
||||
@@ -32,7 +32,7 @@
|
||||
外出
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
|
||||
<!-- 审批状态:自定义选项卡替代el-tabs -->
|
||||
<div class="custom-tabs">
|
||||
@@ -99,7 +99,7 @@
|
||||
{{ getApplyTypeText(scope.row.applyType) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="applicantDeptName" label="审批部门" align="center" show-overflow-tooltip/>
|
||||
<!-- <el-table-column prop="applicantDeptName" label="审批部门" align="center" show-overflow-tooltip/> -->
|
||||
<el-table-column prop="startTime" label="开始时间" align="center">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.startTime ? formatTime(scope.row.startTime) : '-' }}
|
||||
@@ -110,10 +110,10 @@
|
||||
{{ scope.row.endTime ? formatTime(scope.row.endTime) : '-' }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="approvalStatus" label="审批状态" align="center">
|
||||
<el-table-column prop="taskStatus" label="审批状态" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-tag :type="getStatusTagType(scope.row.approvalStatus)">
|
||||
{{ getStatusText(scope.row.approvalStatus) }}
|
||||
<el-tag :type="getStatusTagType(scope.row.taskStatus)">
|
||||
{{ getStatusText(scope.row.taskStatus) }}
|
||||
</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -207,7 +207,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { listApproval, updateApproval } from '@/api/wms/approval'
|
||||
import { listApprovalTask, rejectApprovalTask, resolveApprovalTask } from '@/api/wms/approvalTask'
|
||||
|
||||
export default {
|
||||
name: 'TodoList',
|
||||
@@ -234,6 +234,9 @@ export default {
|
||||
computed: {
|
||||
nickName() {
|
||||
return this.$store.getters.nickName
|
||||
},
|
||||
userId() {
|
||||
return this.$store.getters.id
|
||||
}
|
||||
},
|
||||
created() {
|
||||
@@ -247,17 +250,19 @@ export default {
|
||||
// 拼接请求参数,新增approveName
|
||||
const requestParams = {
|
||||
...this.queryParams,
|
||||
approveName: this.nickName
|
||||
approverId: this.userId,
|
||||
}
|
||||
listApproval(requestParams)
|
||||
listApprovalTask(requestParams)
|
||||
.then((res) => {
|
||||
this.todoList = res.rows.map((item) => {
|
||||
return {
|
||||
approvalStatus: item.approval.approvalStatus,
|
||||
taskStatus: item.task.taskStatus,
|
||||
applyId: item.approval.applyId,
|
||||
approvalId: item.approval.approvalId,
|
||||
applyType: item.approval.applyType,
|
||||
approverName: item.approval.approverName,
|
||||
taskId: item.task.taskId,
|
||||
...item.detail, // 合并请假/外出的详情字段
|
||||
}
|
||||
})
|
||||
@@ -322,11 +327,8 @@ export default {
|
||||
try {
|
||||
const approvalTime = this.parseTime(new Date(), '{y}-{m}-{d} {h}:{i}:{s}')
|
||||
// 这里替换为你的审批接口调用
|
||||
await updateApproval({
|
||||
approvalId: row.approvalId,
|
||||
approvalStatus: '已同意',
|
||||
approvalTime: approvalTime,
|
||||
})
|
||||
console.log(row)
|
||||
await resolveApprovalTask(row.taskId)
|
||||
this.$message.success('审批通过成功!')
|
||||
this.getTodoList() // 重新查询列表
|
||||
} catch (err) {
|
||||
@@ -346,13 +348,11 @@ export default {
|
||||
}).then(async ({ value }) => {
|
||||
this.buttonLoading = true
|
||||
try {
|
||||
console.log(row)
|
||||
const approvalTime = this.parseTime(new Date(), '{y}-{m}-{d} {h}:{i}:{s}')
|
||||
// 这里替换为你的驳回接口调用
|
||||
await updateApproval({
|
||||
approvalId: row.approvalId,
|
||||
approvalStatus: '已驳回',
|
||||
approvalTime: approvalTime,
|
||||
})
|
||||
await rejectApprovalTask(row.taskId)
|
||||
console.log(row.taskId)
|
||||
this.$message.success('驳回成功!')
|
||||
this.getTodoList() // 重新查询列表
|
||||
} catch (err) {
|
||||
@@ -372,10 +372,10 @@ export default {
|
||||
// 获取审批状态对应的标签类型
|
||||
getStatusTagType(status) {
|
||||
const typeMap = {
|
||||
'待审批': 'warning',
|
||||
'已同意': 'success',
|
||||
'已驳回': 'danger',
|
||||
'已撤销': 'info',
|
||||
'pending': 'warning',
|
||||
'approved': 'success',
|
||||
'rejected': 'danger',
|
||||
'withdrawn': 'info',
|
||||
}
|
||||
return typeMap[status] || 'default'
|
||||
},
|
||||
@@ -383,10 +383,10 @@ export default {
|
||||
// 获取审批状态的中文文本
|
||||
getStatusText(status) {
|
||||
const textMap = {
|
||||
'待审批': '待审批',
|
||||
'已同意': '已同意',
|
||||
'已驳回': '已驳回',
|
||||
'已撤销': '已撤销',
|
||||
'pending': '待审批',
|
||||
'approved': '已同意',
|
||||
'rejected': '已驳回',
|
||||
'withdrawn': '已撤销',
|
||||
}
|
||||
return textMap[status] || '未知状态'
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user