222 lines
6.2 KiB
Java
222 lines
6.2 KiB
Java
<template>
|
|
<div>
|
|
<headerProcess
|
|
:title="'工程接口人确认符合性要求'"
|
|
is-termination-process
|
|
is-submit
|
|
@terminationProcess="terminationProcess"
|
|
@submit="submit"
|
|
/>
|
|
<a-spin tip="加载中..." :spinning="loading">
|
|
<div class="detail-box" v-if="!loading">
|
|
<div class="detail-content" style="height: 100%">
|
|
<projectInformation
|
|
:projectInformationList="projectInformationList"
|
|
:url="url"
|
|
:projectInformationId="this.queryBy.projectLibraryId"
|
|
/>
|
|
<standardContent
|
|
:standardContentList="standardContentList"
|
|
:url="url"
|
|
:standardContentQuery="queryProject"
|
|
/>
|
|
<standardContentListTable
|
|
:standardContentListQuery="queryProject"
|
|
:url="url
|
|
"/>
|
|
<examineInformation
|
|
isFlag
|
|
isViewUploadedFiles
|
|
isApprovalOpinion
|
|
ref="examineInformationRef"
|
|
:url="url"/>
|
|
<circulationHistory :url="url"/>
|
|
</div>
|
|
</div>
|
|
</a-spin>
|
|
<div>
|
|
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import headerProcess from '../../components/headerProcess'
|
|
import projectInformation from '../../components/projectInformation'
|
|
import standardContent from '../../components/standardContent'
|
|
import standardContentListTable from '../../components/standardContentList'
|
|
import examineInformation from '../../components/examineInformation'
|
|
import circulationHistory from '../../components/circulationHistory'
|
|
import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage'
|
|
import { mapGetters } from 'vuex'
|
|
|
|
export default {
|
|
name: 'handshakeProcess',
|
|
components: {
|
|
headerProcess,
|
|
projectInformation,
|
|
standardContent,
|
|
standardContentListTable,
|
|
examineInformation,
|
|
circulationHistory
|
|
},
|
|
data() {
|
|
return {
|
|
projectInformationList: [
|
|
{
|
|
title: this.$t('entryName'),
|
|
value: 'projectName'
|
|
},
|
|
{
|
|
title: this.$t('targetMarket'),
|
|
value: 'targetMarket_dictText'
|
|
},
|
|
{
|
|
title: this.$t('projectStatus'),
|
|
value: 'projectStatus_dictText'
|
|
},
|
|
{
|
|
title: this.$t('StudioEngineer'),
|
|
value: 'studioEngineerName'
|
|
},
|
|
{
|
|
title: this.$t('certifiedEngineer'),
|
|
value: 'certificationEngineerName'
|
|
},
|
|
{},
|
|
{
|
|
title: this.$t('DigitalPlatform'),
|
|
value: 'digitalPlatform_dictText'
|
|
},
|
|
{
|
|
title: this.$t('ModelPlatform'),
|
|
value: 'vehiclePlatform_dictText'
|
|
},
|
|
{},
|
|
{
|
|
title: this.$t('IPDInformation'),
|
|
value: 'ipdInfo'
|
|
},
|
|
{
|
|
title: this.$t('certificationProgram'),
|
|
value: 'attestationPlan'
|
|
},
|
|
{
|
|
title: this.$t('dehicleDevelopmentPlan'),
|
|
value: 'vehicleDevelopmentPlan'
|
|
}
|
|
],
|
|
standardContentList: [
|
|
{
|
|
title: this.$t('standard'),
|
|
value: 'serialNumber'
|
|
},
|
|
{
|
|
title: this.$t('title'),
|
|
value: 'title'
|
|
},
|
|
{
|
|
title: this.$t('subtitle'),
|
|
value: 'subtitle'
|
|
},
|
|
{
|
|
title: this.$t('areaOfResponsibility'),
|
|
value: 'dutyTerritory_dictText'
|
|
},
|
|
{
|
|
title: this.$t('implementationCategory'),
|
|
value: 'implementType_dictText'
|
|
},
|
|
{
|
|
title: this.$t('correspondingStandard'),
|
|
value: 'correspondingStandard'
|
|
},
|
|
{
|
|
title: this.$t('engineeringInterfacePerson'),
|
|
value: 'engineeringInterfacePersonName'
|
|
},
|
|
{
|
|
title: this.$t('regulatoryEngineer'),
|
|
value: 'regulationOwnerName'
|
|
},
|
|
{
|
|
title: this.$t('certifiedEngineer'),
|
|
value: 'homologationEngineerName'
|
|
},
|
|
{
|
|
title: this.$t('remarks'),
|
|
value: 'remark'
|
|
}
|
|
],
|
|
url: {
|
|
urlFrom: 'project/projectLibraryBase/queryById',
|
|
queryProjectLawsInventoryInfoById: 'project/projectLawsInventoryEO/queryProjectLawsInventoryInfoById'
|
|
},
|
|
queryBy: {},
|
|
queryProject: {},
|
|
loading: false
|
|
}
|
|
},
|
|
mounted() {
|
|
if (this.$route.query.mes) {
|
|
this.queryBy = eval('(' + JSON.parse(this.$route.query.mes) + ')')
|
|
}
|
|
this.queryProjectLawsInventoryInfo()
|
|
},
|
|
methods: {
|
|
...mapGetters(['userInfo']),
|
|
terminationProcess() {
|
|
|
|
},
|
|
submit() {
|
|
this.$refs.examineInformationRef.submit(function(res) {
|
|
this.completeTask(res)
|
|
})
|
|
},
|
|
completeTask(value) {
|
|
let json = Object.assign({}, value, this.queryBy)
|
|
let data = JSON.stringify(json).replace(/\"/g, '\'')
|
|
let query = {
|
|
userid: this.userInfo().id,
|
|
taskId: this.$route.query.taskId || this.$route.query.taskIds,
|
|
json: data
|
|
}
|
|
postAction('/workFlow/completeTask', query).then((res) => {
|
|
if (res.success) {
|
|
this.$message.success(this.$t('OperationSuccessful'))
|
|
this.$router.push({
|
|
path: '/ProcessCenter'
|
|
})
|
|
} else {
|
|
this.$message.warning(this.$t('operationFailed'))
|
|
}
|
|
})
|
|
},
|
|
queryProjectLawsInventoryInfo() {
|
|
this.loading = true
|
|
let query = {
|
|
id: this.queryBy.id,
|
|
operatorType: 'taskAffirmQuery'
|
|
}
|
|
getAction(this.url.queryProjectLawsInventoryInfoById, query).then((res) => {
|
|
if (res.success) {
|
|
this.queryProject = res.result.projectLawsInventory || {}
|
|
this.loading = false
|
|
} else {
|
|
this.queryProject = {}
|
|
this.loading = false
|
|
}
|
|
})
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style scoped>
|
|
.detail-box {
|
|
padding: 67px 0 0 0;
|
|
background: #ffffff;
|
|
height: 100%;
|
|
overflow: auto;
|
|
}
|
|
</style> |