[update] 企标稽查的稽查报告和整改计划联调

This commit is contained in:
lideqin
2023-09-13 17:43:48 +08:00
parent 1c46cfbae4
commit f42ecf2832
4 changed files with 78 additions and 49 deletions
+2 -2
View File
@@ -33,9 +33,9 @@ const getScoreDetail = (params) => getAction('/enterprise/reviewMeeting/evaluate
// 企标稽查-获取延期稽查数据
const getDeferredCheck = (params) => getAction('/enterprise/inspect/delayInspect', params)
// 企标稽查-根据id获取稽查报告详情
const getCheckReportById = (params) => getAction('', params)
const getCheckReportById = (params) => getAction('/enterprise/inspect/inspectReport', params)
// 企标稽查-根据id获取整改计划
const getRectificationPlanById = (params) => getAction('', params)
const getRectificationPlanById = (params) => getAction('/enterprise/inspect/rectifyPlan', params)
// 企标复审计划-发起复审
const initReview = (params) => getAction('', params)
@@ -127,22 +127,26 @@
<div slot="action" slot-scope="{text, record}" class="action-span-cell">
<template v-if="record.delayFlag && isHasPermission(operationList[0].has)">
<a @click="operationClick(operationList[0],record)">{{ operationList[0].text }}</a>
<a-divider type="vertical" />
<a-dropdown placement="bottomCenter">
<a-icon type="more" class="operate-icon-btn operate-icon-more" />
<a-menu slot="overlay">
<a-menu-item v-for="(operation, index) in operationList.slice(operateMaxNum)" :key="index">
<a @click="operationClick(operation,record)">
<div class="operate-btn">
{{ operation.text }}
</div>
</a>
</a-menu-item>
</a-menu>
</a-dropdown>
<template v-if="operationList.length > operateMaxNum">
<a-divider type="vertical" />
<a-dropdown placement="bottomCenter">
<a-icon type="more" class="operate-icon-btn operate-icon-more" />
<a-menu slot="overlay">
<a-menu-item v-for="(operation, index) in operationList.slice(operateMaxNum)" :key="index">
<a @click="operationClick(operation,record)">
<div class="operate-btn">
{{ operation.text }}
</div>
</a>
</a-menu-item>
</a-menu>
</a-dropdown>
</template>
</template>
<template v-else>
<a v-for="(operation, index) in operationList.splice(1)" :key="index" @click="operationClick(operation,record)">{{ operation.text }}</a>
<template v-else-if="operationList.length > 0">
<template v-for="(operation, index) in operationList.slice(1)">
<a :key="index" @click="operationClick(operation,record)">{{ operation.text }}</a>
</template>
</template>
</div>
@@ -183,6 +187,7 @@ export default {
wrapperCol: {
span: 14
},
needFilterTableBtn: true,
columns: [
{
title: this.$t('serialNumber'),
@@ -294,17 +299,17 @@ export default {
{
text: this.$t('enterpriseStandardLibrary.check.deferredCheck'),
clickEvent: 'handleDeferredCheck',
has: 'enterpriseStandardLibrary.check.deferredCheck'
has: 'enterpriseStandardLibrary:check:deferredCheck'
},
{
text: this.$t('enterpriseStandardLibrary.check.checkReport'),
clickEvent: 'handleCheckReport',
has: 'enterpriseStandardLibrary.check.checkReport'
has: 'enterpriseStandardLibrary:check:checkReport'
},
{
text: this.$t('enterpriseStandardLibrary.check.rectificationPlan'),
clickEvent: 'handleRectificationPlan',
has: 'enterpriseStandardLibrary.check.rectificationPlan'
has: 'enterpriseStandardLibrary:check:rectificationPlan'
}
]
}
@@ -9,8 +9,13 @@
:visible="visible">
<a-spin :spinning="confirmLoading">
<p>{{ $t('enterpriseStandardLibrary.check.checkBasedEnterpriseStandard') }}{{model.standardName}}</p>
<p>
{{ $t('enterpriseStandardLibrary.check.checkBasedEnterpriseStandard') }}
{{model.inspectNo}}
{{model.inspectName}}
</p>
<a-table
:scroll="{x: 500}"
:columns="columns"
:dataSource="dataSource"
:pagination="ipagination"
@@ -70,36 +75,36 @@ export default {
{
title: this.$t('enterpriseStandardLibrary.check.basedClause'),
align: 'center',
width: 180,
dataIndex: 'basedClause',
width: 140,
dataIndex: 'baseClause',
scopedSlots: { customRender: 'text' }
},
{
title: this.$t('enterpriseStandardLibrary.check.standardContent'),
align: 'center',
width: 180,
dataIndex: 'standardContent',
width: 150,
dataIndex: 'standardRequire',
scopedSlots: { customRender: 'text' }
},
{
title: this.$t('enterpriseStandardLibrary.check.executiveCondition'),
align: 'center',
width: 180,
dataIndex: 'executiveCondition',
width: 150,
dataIndex: 'executionStatus',
scopedSlots: { customRender: 'text' }
},
{
title: this.$t('enterpriseStandardLibrary.check.file'),
align: 'center',
width: 180,
dataIndex: 'file',
width: 150,
dataIndex: 'attachment',
scopedSlots: { customRender: 'file' }
},
{
title: this.$t('enterpriseStandardLibrary.check.score'),
align: 'center',
width: 180,
dataIndex: 'score',
width: 100,
dataIndex: 'evaluateScore',
scopedSlots: { customRender: 'text' }
}
],
@@ -124,14 +129,21 @@ export default {
this.initData()
},
initData () {
getCheckReportById({ id: this.model.id }).then(res => {
const params = {}
params.pageNo = this.ipagination.current
params.pageSize = this.ipagination.pageSize
params.id = this.model.id
getCheckReportById(params).then(res => {
if (res.success) {
this.dataSource = res.result
this.dataSource = res.result.records
} else {
this.$message.warning(res.message)
}
})
},
handleTableChange (pagination) {
this.ipagination = pagination
},
// 点击附件
handleRelatedMaterialClick (record) {
// 截取文件后缀名
@@ -2,15 +2,20 @@
<a-modal
:title="title"
:maskClosable="true"
:width="800"
:width="1000"
:closable="true"
@cancel="handleCancel"
:footer="false"
:visible="visible">
<a-spin :spinning="confirmLoading">
<p>{{ $t('enterpriseStandardLibrary.check.checkBasedEnterpriseStandard') }}{{model.standardName}}</p>
<p>
{{ $t('enterpriseStandardLibrary.check.checkBasedEnterpriseStandard') }}
{{ model.inspectNo }}
{{ model.inspectName }}
</p>
<a-table
:scroll="{x:800}"
:columns="columns"
:dataSource="dataSource"
:pagination="ipagination"
@@ -55,43 +60,43 @@ export default {
{
title: this.$t('enterpriseStandardLibrary.check.existProblem'),
align: 'center',
width: 180,
dataIndex: 'existProblem',
width: 120,
dataIndex: 'issue',
scopedSlots: { customRender: 'text' }
},
{
title: this.$t('enterpriseStandardLibrary.check.rectificationMeasure'),
align: 'center',
width: 180,
dataIndex: 'rectificationMeasure',
width: 120,
dataIndex: 'rectifyMeasure',
scopedSlots: { customRender: 'text' }
},
{
title: this.$t('enterpriseStandardLibrary.check.headOfRectification'),
align: 'center',
width: 180,
dataIndex: 'headOfRectification',
width: 120,
dataIndex: 'responseUser',
scopedSlots: { customRender: 'text' }
},
{
title: this.$t('enterpriseStandardLibrary.check.rectificationPlanFinishTime'),
align: 'center',
width: 180,
dataIndex: 'rectificationPlanFinishTime',
width: 150,
dataIndex: 'planCompleteDate',
scopedSlots: { customRender: 'text' }
},
{
title: this.$t('enterpriseStandardLibrary.check.rectificationActualFinishTime'),
align: 'center',
width: 180,
dataIndex: 'rectificationActualFinishTime',
width: 150,
dataIndex: 'actualCompleteDate',
scopedSlots: { customRender: 'text' }
},
{
title: this.$t('enterpriseStandardLibrary.check.rectificationStatus'),
align: 'center',
width: 180,
dataIndex: 'rectificationStatus',
width: 120,
dataIndex: 'rectifyStatus',
scopedSlots: { customRender: 'text' }
}
],
@@ -116,14 +121,21 @@ export default {
this.initData()
},
initData () {
getRectificationPlanById({ id: this.model.id }).then(res => {
const params = {}
params.pageNo = this.ipagination.current
params.pageSize = this.ipagination.pageSize
params.id = this.model.id
getRectificationPlanById(params).then(res => {
if (res.success) {
this.dataSource = res.result
this.dataSource = res.result.records
} else {
this.$message.warning(res.message)
}
})
},
handleTableChange (pagination) {
this.ipagination = pagination
},
handleCancel () {
this.close()
},