Merge remote-tracking branch 'origin/dev_third_stage' into dev_third_stage

This commit is contained in:
wangzhijiang
2022-10-11 09:55:59 +08:00
45 changed files with 1191 additions and 511 deletions
@@ -41,10 +41,10 @@
<template v-if="toggleSearchStatus">
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('collectResults')">
<span>{{$t('collectResults')}}</span>
<div class="title-text" :title="$t('ProcessStatus')">
<span>{{$t('ProcessStatus')}}</span>
</div>
<a-select :placeholder="$t('PleaseSelect')+$t('collectResults')"
<a-select :placeholder="$t('PleaseSelect')+$t('ProcessStatus')"
class="box-input"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
allowClear
@@ -187,7 +187,7 @@
dataIndex: 'technologyTerritoryName'
},
{
title: this.$t('collectResults'),
title: this.$t('ProcessStatus'),
align: 'center',
width: 140,
ellipsis: true,
@@ -127,6 +127,7 @@
applyMarkets: '',
header_text: '',
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/download',
downLoadImgUrl: window._CONFIG['domianWebImgURL'] + '/sys/common/download',
url: {
list: '/problemKnowledgeBase/countryCardTempEO/list',
deleteOne: ''
@@ -153,10 +154,12 @@
} else if (fileSuffix == '.docx' || fileSuffix == '.doc') {
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
window.open(url, '_blank')
} else if (fileSuffix == '.xlsx' || fileSuffix == '.xls'
|| fileSuffix == '.png' || fileSuffix == '.jpeg' || fileSuffix == '.gif' || fileSuffix == '.jpg') {
} else if (fileSuffix == '.xlsx' || fileSuffix == '.xls') {
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
window.open(url, '_blank')
}else if(fileSuffix == '.png' || fileSuffix == '.jpeg' || fileSuffix == '.gif' || fileSuffix == '.jpg'){
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadImgUrl + '/' + fileQuery.id + fileSuffix)
window.open(url, '_blank')
} else {
downloadFile('/sys/common/downLoadFile', fileQuery.contentFileName, { id: fileQuery.id })
}
@@ -662,12 +662,12 @@
margin-top: 10px;
.content-box-content-botton-text {
width: 118px;
max-width: 198px;
height: 32px;
display: inline-block;
text-align: center;
line-height: 32px;
padding: 0 6px;
padding: 0 10px;
background: #EFF1F3;
border-radius: 4px;
text-overflow: ellipsis;
@@ -200,6 +200,7 @@
queryForm: {},
isPraise: false,
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/download',
downLoadImgUrl: window._CONFIG['domianWebImgURL'] + '/sys/common/download',
isCollect: false
}
},
@@ -218,10 +219,12 @@
} else if (fileSuffix == '.docx' || fileSuffix == '.doc') {
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
window.open(url, '_blank')
} else if (fileSuffix == '.xlsx' || fileSuffix == '.xls'
|| fileSuffix == '.png' || fileSuffix == '.jpeg' || fileSuffix == '.gif' || fileSuffix == '.jpg') {
} else if (fileSuffix == '.xlsx' || fileSuffix == '.xls') {
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
window.open(url, '_blank')
} else if (fileSuffix == '.png' || fileSuffix == '.jpeg' || fileSuffix == '.gif' || fileSuffix == '.jpg') {
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadImgUrl + '/' + fileQuery.id + fileSuffix)
window.open(url, '_blank')
} else {
downloadFile('/sys/common/downLoadFile', fileQuery.fileName, { id: fileQuery.id })
}
@@ -491,12 +494,13 @@
margin-top: 10px;
.content-box-content-botton-text {
width: 140px;
max-width: 200px;
/*min-width: 120px;*/
height: 32px;
display: inline-block;
text-align: center;
line-height: 32px;
padding: 0 6px;
padding: 0 10px;
background: #EFF1F3;
border-radius: 4px;
text-overflow: ellipsis;
@@ -509,7 +513,7 @@
cursor: pointer;
.file-text {
width: 90px;
width: calc(100% - 30px);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
@@ -519,6 +523,7 @@
}
.icon-text {
width: 24px;
font-size: 16px;
overflow: hidden;
margin-bottom: 9px;
@@ -144,7 +144,7 @@
width: 170
},
{
title: this.$t('chapterContents'),
title: this.$t('secondaryDirectory'),
align: 'center',
dataIndex: 'memoriesChapterName',
ellipsis: true,
@@ -108,6 +108,7 @@
pageNo: 1,
queryParam: {},
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/download',
downLoadImgUrl: window._CONFIG['domianWebImgURL'] + '/sys/common/download',
userData: {},
columns: [
{
@@ -216,10 +217,12 @@
} else if (fileSuffix === '.docx' || fileSuffix === '.doc') {
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + item.fileId + fileSuffix)
window.open(url, '_blank')
} else if (fileSuffix === '.xlsx' || fileSuffix === '.xls'
|| fileSuffix == '.png' || fileSuffix == '.jpeg' || fileSuffix == '.gif' || fileSuffix == '.jpg') {
} else if (fileSuffix === '.xlsx' || fileSuffix === '.xls') {
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + item.fileId + fileSuffix)
window.open(url, '_blank')
}else if(fileSuffix == '.png' || fileSuffix == '.jpeg' || fileSuffix == '.gif' || fileSuffix == '.jpg'){
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadImgUrl + '/' + item.fileId + fileSuffix)
window.open(url, '_blank')
} else {
if (item.createBy == this.userInfo().username) {
downloadFile('/sys/common/downLoadFile', item.name, { id: item.fileId, userName: this.userInfo().username })
@@ -4,8 +4,9 @@
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('title')">{{$t('title')}}</span>
<span class="Required" v-if="!disabled">*</span>
<span class="title-text-text"
:title="$t('title')">{{$t('title')}}</span>
</div>
<a-form-model-item class="itemModel" prop="titleCn">
<a-input class="box-input"
@@ -18,8 +19,9 @@
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('englishTitle')">{{$t('englishTitle')}}</span>
<span class="Required" v-if="!disabled">*</span>
<span class="title-text-text"
:title="$t('englishTitle')">{{$t('englishTitle')}}</span>
</div>
<a-form-model-item class="itemModel" prop="titleEn">
<a-input class="box-input"
@@ -34,10 +36,11 @@
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('technicalField')">{{$t('technicalField')}}</span>
<span class="Required" v-if="!disabled">*</span>
<span class="title-text-text"
:title="$t('technicalField')">{{$t('technicalField')}}</span>
</div>
<a-form-model-item class="itemModel-multi" prop="technologyTerritory">
<a-form-model-item class="itemModel" prop="technologyTerritory">
<a-tree-select
tree-node-filter-prop="title"
v-model="formInline.technologyTerritory"
@@ -53,20 +56,20 @@
</a-form-model-item>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('implementationModel')">{{$t('implementationModel')}}</span>
</div>
<a-form-model-item class="itemModel" prop="implementCar">
<a-input class="box-input"
:disabled="disabled"
v-model.trim="formInline.implementCar"
:placeholder="$t('PleaseEnter')+$t('implementationModel')"/>
</a-form-model-item>
</div>
</a-col>
<!-- <a-col :span="12">-->
<!-- <div class="box-title-text">-->
<!-- <div class="title-text">-->
<!-- <span class="title-text-text"-->
<!-- :title="$t('implementationModel')">{{$t('implementationModel')}}</span>-->
<!-- </div>-->
<!-- <a-form-model-item class="itemModel" prop="implementCar">-->
<!-- <a-input class="box-input"-->
<!-- :disabled="disabled"-->
<!-- v-model.trim="formInline.implementCar"-->
<!-- :placeholder="$t('PleaseEnter')+$t('implementationModel')"/>-->
<!-- </a-form-model-item>-->
<!-- </div>-->
<!-- </a-col>-->
<!-- <a-col :span="12">-->
<!-- <div class="box-title-text">-->
<!-- <div class="title-text">-->
@@ -108,10 +111,10 @@
:title="$t('status')">{{$t('status')}}</span>
</div>
<a-form-model-item class="itemModel-multi itemModel-multi-one">
<j-multi-select-tag class="box-input" v-model="formInline.state"
<j-dict-select-tag class="box-input" v-model="formInline.state"
:disabled="disabled"
:placeholder="$t('PleaseSelect')+$t('status')"
:type="'checkbox'"
:type="'radio'"
:triggerChange="false" :dictCode="'state'"/>
</a-form-model-item>
</div>
@@ -125,9 +128,9 @@
:title="$t('usage')">{{$t('usage')}}</span>
</div>
<a-form-model-item class="itemModel-multi itemModel-multi-one">
<j-multi-select-tag class="box-input" v-model="formInline.useMethod"
<j-dict-select-tag class="box-input" v-model="formInline.useMethod"
:placeholder="$t('PleaseSelect')+$t('usage')"
:type="'checkbox'"
:type="'radio'"
:disabled="disabled"
:triggerChange="false" :dictCode="'yong4_fa3'"/>
</a-form-model-item>
@@ -156,10 +159,11 @@
:title="$t('ImplementationDate')">{{$t('ImplementationDate')}}</span>
</div>
<a-form-model-item class="itemModel" prop="newCarImplementTime">
<!-- :placeholder="$t('PleaseEnter')+$t('ImplementationDate')"-->
<a-input class="box-input"
:disabled="disabled"
v-model.trim="formInline.newCarImplementTime"
:placeholder="$t('PleaseEnter')+$t('ImplementationDate')"/>
:placeholder="'202X.X.X'"/>
</a-form-model-item>
</div>
</a-col>
@@ -170,10 +174,11 @@
:title="$t('vehicleInProductionDate')">{{$t('vehicleInProductionDate')}}</span>
</div>
<a-form-model-item class="itemModel" prop="productionCarImplementTime">
<!-- $t('PleaseEnter')+$t('vehicleInProductionDate')-->
<a-input class="box-input"
:disabled="disabled"
v-model.trim="formInline.productionCarImplementTime"
:placeholder="$t('PleaseEnter')+$t('vehicleInProductionDate')"/>
:placeholder="'202X.X.X'"/>
</a-form-model-item>
</div>
</a-col>
@@ -185,6 +190,7 @@
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="Required" v-if="!disabled">*</span>
<span class="title-text-text" :title="$t('primaryCoverageCn')">{{$t('primaryCoverageCn')}}</span>
</div>
<a-form-model-item class="itemModel" prop="contentCn">
@@ -200,6 +206,7 @@
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="Required" v-if="!disabled">*</span>
<span class="title-text-text" :title="$t('primaryCoverageEn')">{{$t('primaryCoverageEn')}}</span>
</div>
<a-form-model-item class="itemModel" prop="contentEn">
@@ -245,9 +252,10 @@
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="Required" v-if="!disabled">*</span>
<span class="title-text-text" :title="$t('regulatoryContact')">{{$t('regulatoryContact')}}</span>
</div>
<a-form-model-item class="itemModel">
<a-form-model-item class="itemModel" prop="lawsContactName">
<PersonnelSelection
:query="{db_field_name:'lawsContact',db_field_txt:$t('regulatoryContact')}"
:personneQuery="formInline"
@@ -290,7 +298,19 @@
data() {
return {
rules: {
lawsContactName:[
{
required: true,
message: this.$t('regulatoryContact') + this.$t('cannotEmpty'),
trigger: 'change'
}
],
titleCn: [
{
required: true,
message: this.$t('title') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 500,
message: this.$t('title') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
@@ -298,6 +318,11 @@
}
],
titleEn: [
{
required: true,
message: this.$t('englishTitle') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 500,
message: this.$t('englishTitle') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
@@ -354,6 +379,11 @@
}
],
contentEn: [
{
required: true,
message: this.$t('primaryCoverageEn') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 300,
message: this.$t('primaryCoverageEn') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
@@ -361,11 +391,23 @@
}
],
contentCn: [
{
required: true,
message: this.$t('primaryCoverageCn') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 300,
message: this.$t('primaryCoverageCn') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
trigger: 'blur'
}
],
technologyTerritory: [
{
required: true,
message: this.$t('technicalField') + this.$t('cannotEmpty'),
trigger: 'change'
}
]
},
formInline: {},
@@ -4,6 +4,7 @@
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="Required" v-if="!disabled">*</span>
<span class="title-text-text"
:title="$t('title')">{{$t('title')}}</span>
</div>
@@ -18,6 +19,7 @@
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="Required" v-if="!disabled">*</span>
<span class="title-text-text"
:title="$t('englishTitle')">{{$t('englishTitle')}}</span>
</div>
@@ -110,6 +112,7 @@
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="Required" v-if="!disabled">*</span>
<span class="title-text-text" :title="$t('primaryCoverageCn')">{{$t('primaryCoverageCn')}}</span>
</div>
<a-form-model-item class="itemModel" prop="contentCn">
@@ -125,6 +128,7 @@
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="Required" v-if="!disabled">*</span>
<span class="title-text-text" :title="$t('primaryCoverageEn')">{{$t('primaryCoverageEn')}}</span>
</div>
<a-form-model-item class="itemModel" prop="contentEn">
@@ -165,6 +169,11 @@
return {
rules: {
titleCn: [
{
required: true,
message: this.$t('title') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 500,
message: this.$t('title') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
@@ -172,6 +181,11 @@
}
],
titleEn: [
{
required: true,
message: this.$t('englishTitle') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 500,
message: this.$t('englishTitle') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
@@ -221,6 +235,11 @@
}
],
contentEn: [
{
required: true,
message: this.$t('primaryCoverageEn') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 300,
message: this.$t('primaryCoverageEn') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
@@ -228,6 +247,11 @@
}
],
contentCn: [
{
required: true,
message: this.$t('primaryCoverageCn') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 300,
message: this.$t('primaryCoverageCn') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
@@ -6,13 +6,14 @@
:visible="visible"
:confirm-loading="confirmLoading"
:maskClosable="false"
:footer="null"
@cancel="visible = false"
>
<template slot="footer">
<a-button key="back" @click="visible = false">
{{$t('cancel')}}
</a-button>
</template>
<!-- <template slot="footer">-->
<!-- <a-button key="back" @click="visible = false">-->
<!-- {{$t('cancel')}}-->
<!-- </a-button>-->
<!-- </template>-->
<div style="margin-bottom: 10px;text-align: center">
<div @click="handleModule" class="operator-text">
<a-icon type="download"/>
@@ -39,22 +39,22 @@
<!-- </div>-->
<a-card :bordered="false" class="box-clause" style="margin-top: 20px"
v-for="(item,index) in dataSource">
<div class="table-operator-admin">
<div class="operator-text" v-if="item.id" :class="{'operator-text-feed':index == 0 ? true:false}"
style="font-size: 16px">
{{$t('engineer')+item.createBy+$t('feedbackResults')}}
</div>
<div class="text-results" v-if="item.id">
{{$t('complianceResults')}}:{{item.complianceResultName}}
</div>
</div>
<!-- <div class="table-operator-admin">-->
<!-- <div class="operator-text" v-if="item.id" :class="{'operator-text-feed':index == 0 ? true:false}"-->
<!-- style="font-size: 16px">-->
<!-- {{$t('engineer')+item.createBy+$t('feedbackResults')}}-->
<!-- </div>-->
<!-- <div class="text-results" v-if="item.id">-->
<!-- {{$t('complianceResults')}}:{{item.complianceResultName}}-->
<!-- </div>-->
<!-- </div>-->
<div class="table-operator-admin-right">
<div @click="fileExportClick" v-if="index == 0" class="operator-text-index">
<a-icon type="export" :rotate="-90"/>
{{$t('fileExport')}}
</div>
<!-- style="margin-left: 18px"-->
<a-table
style="margin-left: 18px"
ref="table"
size="middle"
:loading="loading"
@@ -96,8 +96,8 @@
return {
queryParam: {},
dataSource: [],
userInfoQuery:{},
administrators:false,
userInfoQuery: {},
administrators: false,
url: {
list: '/lawsTechnologyEvaluation/lawsTechnologyEvaluationComplianceResultEO/list',
exportData: 'lawsTechnologyEvaluation/lawsTechnologyEvaluationComplianceResultEO/exportZip'
@@ -106,6 +106,44 @@
loading: false,
columns: [
{
title: this.$t('engineer'),
dataIndex: 'createBy',
align: 'center',
width: 160,
ellipsis: true,
customRender: (value, row, index) => {
const obj = {
children: value,
attrs: {}
}
if (index === 0) {
obj.attrs.rowSpan = row.indexData
} else {
obj.attrs.rowSpan = 0
}
return obj
}
},
{
title: this.$t('complianceResults'),
dataIndex: 'complianceResultName',
align: 'center',
width: 160,
ellipsis: true,
customRender: (value, row, index) => {
const obj = {
children: value,
attrs: {}
}
if (index === 0) {
obj.attrs.rowSpan = row.indexData
} else {
obj.attrs.rowSpan = 0
}
return obj
}
},
{
title: this.$t('relevantSections'),
dataIndex: 'relatedSection',
@@ -190,6 +228,18 @@
getAction(this.url.list, query).then((res) => {
if (res.success) {
this.dataSource = res.result || []
if (this.dataSource && this.dataSource.length > 0) {
this.dataSource.forEach(val => {
if (val.lawsTechnologyEvaluationResultEOList && val.lawsTechnologyEvaluationResultEOList.length > 0) {
val.lawsTechnologyEvaluationResultEOList.forEach(ol => {
ol.indexData = val.lawsTechnologyEvaluationResultEOList.length
ol.complianceResultName = val.complianceResultName
ol.createBy = val.createBy
})
}
})
}
console.log(this.dataSource)
if (this.dataSource.length == 0) {
this.dataSource.push({
name: ''
@@ -353,9 +403,10 @@
.table-operator-admin-right {
float: left;
width: calc(100% - 240px);
width: 100%;
text-align: right;
border-left: 1px solid #e8e8e8;
margin-bottom: 20px;
/*border-left: 1px solid #e8e8e8;*/
}
.operator-text-index {
@@ -262,6 +262,13 @@
ellipsis: true,
dataIndex: 'flowStatusName'
},
{
title: this.$t('Sponsor'),
align: 'center',
width: 140,
ellipsis: true,
dataIndex: 'createBy'
},
{
title: this.$t('dateOfInitiation'),
align: 'center',
@@ -464,8 +471,8 @@
lawsTechnologyEvaluationId: row.id,
standId: row.standId,
remark: row.remark,
createBy:row.createBy,
flowStatus:row.flowStatus
createBy: row.createBy,
flowStatus: row.flowStatus
}
})
window.open(newUrl.href, '_blank')
@@ -479,8 +486,8 @@
lawsTechnologyEvaluationId: row.id,
standId: row.standId,
remark: row.remark,
createBy:row.createBy,
flowStatus:row.flowStatus
createBy: row.createBy,
flowStatus: row.flowStatus
}
})
window.open(newUrl.href, '_blank')