|
|
@@ -47,10 +47,10 @@
|
|
|
<template slot-scope="scope">
|
|
|
<span
|
|
|
:style="{
|
|
|
- color: scope.row.isUploaded ? '#67C23A' : '#F56C6C',
|
|
|
+ color: scope.row.isUpload === '1' ? '#67C23A' : '#F56C6C',
|
|
|
}"
|
|
|
>
|
|
|
- {{ scope.row.isUploaded ? '已上传' : '未上传' }}
|
|
|
+ {{ scope.row.isUpload === '1' ? '已上传' : '未上传' }}
|
|
|
</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
@@ -65,26 +65,27 @@
|
|
|
<template slot-scope="scope">
|
|
|
<span
|
|
|
:class="{
|
|
|
- 'result-pass': scope.row.auditedStatus === '通过',
|
|
|
- 'result-fail': scope.row.auditedStatus === '不通过',
|
|
|
+ 'result-pending':
|
|
|
+ !scope.row.auditedStatus || scope.row.auditedStatus === '0',
|
|
|
+ 'result-pass': scope.row.auditedStatus === '1',
|
|
|
+ 'result-fail': scope.row.auditedStatus === '2',
|
|
|
}"
|
|
|
>
|
|
|
- {{ scope.row.auditedStatus || '-' }}
|
|
|
+ {{
|
|
|
+ !scope.row.auditedStatus || scope.row.auditedStatus === '0'
|
|
|
+ ? '未审核'
|
|
|
+ : scope.row.auditedStatus === '1'
|
|
|
+ ? '通过'
|
|
|
+ : '不通过'
|
|
|
+ }}
|
|
|
</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="操作" width="200" align="center">
|
|
|
<template slot-scope="scope">
|
|
|
- <template
|
|
|
- v-if="
|
|
|
- scope.row.filePath ||
|
|
|
- scope.row.fileId ||
|
|
|
- scope.row.fileName ||
|
|
|
- scope.row.uploaded === '已上传'
|
|
|
- "
|
|
|
- >
|
|
|
+ <template v-if="scope.row.isUpload === '1'">
|
|
|
<el-button
|
|
|
- v-if="!scope.row.auditedStatus || scope.row.auditedStatus === 0"
|
|
|
+ v-if="scope.row.auditedStatus === '0'"
|
|
|
type="text"
|
|
|
size="small"
|
|
|
@click="handleAuditMaterial(scope.row)"
|
|
|
@@ -104,70 +105,14 @@
|
|
|
</el-table>
|
|
|
</div>
|
|
|
|
|
|
- <!-- 初审退回弹窗 -->
|
|
|
- <el-dialog
|
|
|
- title="初审退回"
|
|
|
- :visible.sync="showRejectDialog"
|
|
|
- width="400px"
|
|
|
- center
|
|
|
- >
|
|
|
- <el-form ref="rejectForm" :model="rejectForm" label-width="80px">
|
|
|
- <el-form-item label="退回意见">
|
|
|
- <el-input
|
|
|
- v-model="rejectForm.opinion"
|
|
|
- type="textarea"
|
|
|
- :rows="4"
|
|
|
- placeholder="请输入退回意见"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="发送方式">
|
|
|
- <el-checkbox-group v-model="rejectForm.sendMethods">
|
|
|
- <el-checkbox label="站内消息"></el-checkbox>
|
|
|
- <el-checkbox label="短信通知"></el-checkbox>
|
|
|
- </el-checkbox-group>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
- <div slot="footer" class="dialog-footer">
|
|
|
- <el-button @click="showRejectDialog = false">取消</el-button>
|
|
|
- <el-button type="primary" @click="handleRejectSubmit">发送</el-button>
|
|
|
- </div>
|
|
|
- </el-dialog>
|
|
|
-
|
|
|
- <!-- 中止监审弹窗 -->
|
|
|
- <el-dialog
|
|
|
- title="中止监审"
|
|
|
- :visible.sync="showAbortDialog"
|
|
|
- width="400px"
|
|
|
- center
|
|
|
- >
|
|
|
- <el-form ref="abortForm" :model="abortForm" label-width="80px">
|
|
|
- <el-form-item label="中止意见">
|
|
|
- <el-input
|
|
|
- v-model="abortForm.opinion"
|
|
|
- type="textarea"
|
|
|
- :rows="4"
|
|
|
- placeholder="请输入中止意见"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="发送方式">
|
|
|
- <el-checkbox-group v-model="abortForm.sendMethods">
|
|
|
- <el-checkbox label="站内消息"></el-checkbox>
|
|
|
- <el-checkbox label="短信通知"></el-checkbox>
|
|
|
- </el-checkbox-group>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
- <div slot="footer" class="dialog-footer">
|
|
|
- <el-button @click="showAbortDialog = false">取消</el-button>
|
|
|
- <el-button type="primary" @click="handleAbortSubmit">发送</el-button>
|
|
|
- </div>
|
|
|
- </el-dialog>
|
|
|
-
|
|
|
<!-- 资料审核弹窗 -->
|
|
|
<el-dialog
|
|
|
title="资料审核"
|
|
|
:visible.sync="showAuditDialog"
|
|
|
width="400px"
|
|
|
center
|
|
|
+ :modal="false"
|
|
|
+ append-to-body
|
|
|
>
|
|
|
<div class="audit-material-info">
|
|
|
<p>
|
|
|
@@ -180,8 +125,8 @@
|
|
|
<el-form ref="auditForm" :model="auditForm" label-width="80px">
|
|
|
<el-form-item label="审核结果" prop="auditedStatus">
|
|
|
<el-radio-group v-model="auditForm.auditedStatus">
|
|
|
- <el-radio label="通过">审核通过</el-radio>
|
|
|
- <el-radio label="不通过">审核拒绝</el-radio>
|
|
|
+ <el-radio label="1">审核通过</el-radio>
|
|
|
+ <el-radio label="2">不通过</el-radio>
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
@@ -193,6 +138,20 @@
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
+<style scoped>
|
|
|
+ .result-pending {
|
|
|
+ color: #909399;
|
|
|
+ }
|
|
|
+
|
|
|
+ .result-pass {
|
|
|
+ color: #67c23a;
|
|
|
+ }
|
|
|
+
|
|
|
+ .result-fail {
|
|
|
+ color: #f56c6c;
|
|
|
+ }
|
|
|
+</style>
|
|
|
+
|
|
|
<script>
|
|
|
import {
|
|
|
getTaskRequirementList,
|
|
|
@@ -222,13 +181,11 @@
|
|
|
showRejectDialog: false, // 初审退回弹窗显示状态
|
|
|
showAbortDialog: false, // 中止监审弹窗显示状态
|
|
|
loading: false, // 加载状态
|
|
|
-
|
|
|
// 初审退回表单数据
|
|
|
rejectForm: {
|
|
|
opinion: '在初审阶段,需补充完善相关材料。',
|
|
|
sendMethods: ['站内消息', '短信通知'],
|
|
|
},
|
|
|
-
|
|
|
// 中止监审表单数据
|
|
|
abortForm: {
|
|
|
opinion:
|
|
|
@@ -244,75 +201,10 @@
|
|
|
auditForm: {
|
|
|
auditedStatus: '通过', // 默认审核通过
|
|
|
},
|
|
|
-
|
|
|
// 报送资料表格数据
|
|
|
materialData: [],
|
|
|
// 按类型分组的材料数据
|
|
|
materialCategories: [],
|
|
|
-
|
|
|
- // 成本调查表表格数据
|
|
|
- costSurveyData: [
|
|
|
- {
|
|
|
- id: 1,
|
|
|
- name: '封面',
|
|
|
- type: '模板定制',
|
|
|
- formType: '单记录',
|
|
|
- required: '是',
|
|
|
- uploaded: '已上传',
|
|
|
- uploadTime: '2025-4-28 11:20',
|
|
|
- auditResult: '通过',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 2,
|
|
|
- name: '企业基本情况调查表',
|
|
|
- type: '模板定制',
|
|
|
- formType: '固定表',
|
|
|
- required: '是',
|
|
|
- uploaded: '已上传',
|
|
|
- uploadTime: '2025-4-28 11:20',
|
|
|
- auditResult: '通过',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 3,
|
|
|
- name: '企业成本费用调查表',
|
|
|
- type: '模板定制',
|
|
|
- formType: '固定表',
|
|
|
- required: '是',
|
|
|
- uploaded: '已上传',
|
|
|
- uploadTime: '2025-4-28 11:20',
|
|
|
- auditResult: '通过',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 4,
|
|
|
- name: '企业期间费用调查表',
|
|
|
- type: '模板定制',
|
|
|
- formType: '动态表',
|
|
|
- required: '是',
|
|
|
- uploaded: '已上传',
|
|
|
- uploadTime: '2025-4-28 11:20',
|
|
|
- auditResult: '通过',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 5,
|
|
|
- name: '企业职工薪酬调查表',
|
|
|
- type: '模板定制',
|
|
|
- formType: '动态表',
|
|
|
- required: '是',
|
|
|
- uploaded: '已上传',
|
|
|
- uploadTime: '2025-4-28 11:20',
|
|
|
- auditResult: '不通过',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 6,
|
|
|
- name: '企业资产负债调查表',
|
|
|
- type: '模板定制',
|
|
|
- formType: '动态表',
|
|
|
- required: '是',
|
|
|
- uploaded: '已上传',
|
|
|
- uploadTime: '2025-4-28 11:20',
|
|
|
- auditResult: '不通过',
|
|
|
- },
|
|
|
- ],
|
|
|
}
|
|
|
},
|
|
|
watch: {
|
|
|
@@ -324,26 +216,11 @@
|
|
|
}
|
|
|
},
|
|
|
},
|
|
|
- mounted() {
|
|
|
- if (this.id) {
|
|
|
- this.getPreliminaryReviewButton()
|
|
|
- this.loadMaterialData()
|
|
|
- }
|
|
|
+ created() {
|
|
|
+ this.loadMaterialData()
|
|
|
},
|
|
|
+ mounted() {},
|
|
|
methods: {
|
|
|
- // 获取资料初审按钮
|
|
|
- async getPreliminaryReviewButton() {
|
|
|
- const params = {
|
|
|
- taskId: this.id,
|
|
|
- // taskId: '1977383902654959616',
|
|
|
- // processNodeKey: this.currentNode,
|
|
|
- processNodeKey:
|
|
|
- this.currentNode === 'ccls' ? 'clcs' : this.currentNode,
|
|
|
- }
|
|
|
- const response = await getDataPreliminaryReviewButton(params)
|
|
|
- console.log('接口返回数据:', response)
|
|
|
- this.buttonData = response.value
|
|
|
- },
|
|
|
// 加载报送资料数据
|
|
|
async loadMaterialData() {
|
|
|
try {
|
|
|
@@ -364,22 +241,6 @@
|
|
|
this.loading = false
|
|
|
}
|
|
|
},
|
|
|
- // 加载成本调查表数据(模拟异步加载)
|
|
|
- async loadCostSurveyData() {
|
|
|
- try {
|
|
|
- this.loading = true
|
|
|
- // 模拟网络请求延迟
|
|
|
- await new Promise((resolve) => setTimeout(resolve, 500))
|
|
|
- // 这里可以添加实际的API调用逻辑
|
|
|
- // 目前使用已有的静态数据
|
|
|
- } catch (error) {
|
|
|
- console.error('获取成本调查表数据失败:', error)
|
|
|
- this.$message.error('获取成本调查表数据失败')
|
|
|
- } finally {
|
|
|
- this.loading = false
|
|
|
- }
|
|
|
- },
|
|
|
-
|
|
|
// 处理材料数据按类型分组
|
|
|
processMaterialData() {
|
|
|
// 确保 materialData 存在且为数组
|
|
|
@@ -387,15 +248,12 @@
|
|
|
this.materialCategories = []
|
|
|
return
|
|
|
}
|
|
|
-
|
|
|
const typeMap = {
|
|
|
1: '综合性资料',
|
|
|
2: '财务会计资料',
|
|
|
3: '其他资料',
|
|
|
}
|
|
|
-
|
|
|
const groupedData = {}
|
|
|
-
|
|
|
this.materialData.forEach((item) => {
|
|
|
const type = item.informationType
|
|
|
if (!groupedData[type]) {
|
|
|
@@ -407,7 +265,6 @@
|
|
|
}
|
|
|
groupedData[type].items.push(item)
|
|
|
})
|
|
|
-
|
|
|
// 按指定顺序排列并为每个分类下的材料重新分配序号
|
|
|
this.materialCategories = []
|
|
|
;['1', '2', '3'].forEach((type) => {
|
|
|
@@ -420,7 +277,6 @@
|
|
|
}
|
|
|
})
|
|
|
},
|
|
|
-
|
|
|
// 获取格式类型
|
|
|
getFormatType(formatRequired) {
|
|
|
const formatMap = {
|
|
|
@@ -459,81 +315,22 @@
|
|
|
this.$message({ type: 'info', message: '已取消操作' })
|
|
|
})
|
|
|
},
|
|
|
-
|
|
|
- // 初审退回提交
|
|
|
- handleRejectSubmit() {
|
|
|
- if (!this.rejectForm.opinion.trim()) {
|
|
|
- this.$message.error('请输入退回意见')
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- if (!this.rejectForm.sendMethods.length) {
|
|
|
- this.$message.error('请选择发送方式')
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- this.$confirm('确定要退回吗?', '提示', {
|
|
|
- confirmButtonText: '确定',
|
|
|
- cancelButtonText: '取消',
|
|
|
- type: 'warning',
|
|
|
- })
|
|
|
- .then(() => {
|
|
|
- // 这里可以添加初审退回的API调用逻辑
|
|
|
- this.$message({ type: 'success', message: '初审退回操作已提交' })
|
|
|
- this.showRejectDialog = false
|
|
|
- })
|
|
|
- .catch(() => {
|
|
|
- this.$message({ type: 'info', message: '已取消操作' })
|
|
|
- })
|
|
|
- },
|
|
|
-
|
|
|
- // 中止监审提交
|
|
|
- handleAbortSubmit() {
|
|
|
- if (!this.abortForm.opinion.trim()) {
|
|
|
- this.$message.error('请输入中止意见')
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- if (!this.abortForm.sendMethods.length) {
|
|
|
- this.$message.error('请选择发送方式')
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- this.$confirm('确定要中止监审吗?此操作不可撤销。', '警告', {
|
|
|
- confirmButtonText: '确定',
|
|
|
- cancelButtonText: '取消',
|
|
|
- type: 'error',
|
|
|
- })
|
|
|
- .then(() => {
|
|
|
- // 这里可以添加中止监审的API调用逻辑
|
|
|
- this.$message({ type: 'success', message: '中止监审操作已提交' })
|
|
|
- this.showAbortDialog = false
|
|
|
- })
|
|
|
- .catch(() => {
|
|
|
- this.$message({ type: 'info', message: '已取消操作' })
|
|
|
- })
|
|
|
- },
|
|
|
-
|
|
|
// 查看下载文件
|
|
|
handleViewDownload(row) {
|
|
|
this.$message.info(`查看下载文件:${row.name}`)
|
|
|
// 这里可以添加查看下载文件的逻辑
|
|
|
},
|
|
|
-
|
|
|
// 查看报表
|
|
|
handleViewReport(row) {
|
|
|
this.$message.info(`查看报表:${row.name}`)
|
|
|
// 这里可以添加查看报表的逻辑
|
|
|
},
|
|
|
-
|
|
|
// 处理资料审核点击事件
|
|
|
handleAuditMaterial(row) {
|
|
|
this.currentAuditMaterial = { ...row } // 复制当前行数据
|
|
|
this.auditForm = {
|
|
|
auditedStatus:
|
|
|
- this.currentAuditMaterial.auditResult === '通过'
|
|
|
- ? '通过'
|
|
|
- : '不通过',
|
|
|
+ this.currentAuditMaterial.auditStatus === '1' ? '通过' : '不通过',
|
|
|
auditOpinion: '',
|
|
|
}
|
|
|
this.showAuditDialog = true
|
|
|
@@ -563,16 +360,9 @@
|
|
|
this.loading = false
|
|
|
}
|
|
|
},
|
|
|
-
|
|
|
- // 返回上一页
|
|
|
- handleBack() {
|
|
|
- // this.$router.back();
|
|
|
- this.$emit('handleBack')
|
|
|
- },
|
|
|
},
|
|
|
}
|
|
|
</script>
|
|
|
-
|
|
|
<style scoped>
|
|
|
.audit-review {
|
|
|
padding: 5px;
|