Merge remote-tracking branch 'origin/dev_2nd_LCYH' into dev_2nd_LCYH
This commit is contained in:
@@ -1719,4 +1719,6 @@ module.exports = {
|
|||||||
note:'Note: The attachment includes the list of test items and test report. Test standard or technical specification',
|
note:'Note: The attachment includes the list of test items and test report. Test standard or technical specification',
|
||||||
format:'It supports doc/docx/pdf format and is less than 50M in size',
|
format:'It supports doc/docx/pdf format and is less than 50M in size',
|
||||||
cantTransferToYourself:"Can't transfer to yourself",
|
cantTransferToYourself:"Can't transfer to yourself",
|
||||||
|
theDataYouInitiate:'The data you selected does not meet the process initiation criteria. Please recheck and initiate',
|
||||||
|
dataWithProcessReleasedCannotBeReset:'Data with a process status of list to be released cannot be reset',
|
||||||
}
|
}
|
||||||
@@ -76,6 +76,8 @@ module.exports = {
|
|||||||
numericalValue: '数值',
|
numericalValue: '数值',
|
||||||
yes: '是',
|
yes: '是',
|
||||||
not: '否',
|
not: '否',
|
||||||
|
have:'有',
|
||||||
|
|
||||||
notOnlyRz: '否',
|
notOnlyRz: '否',
|
||||||
EnterValue: '请输入值',
|
EnterValue: '请输入值',
|
||||||
SavedQuery: '保存的查询',
|
SavedQuery: '保存的查询',
|
||||||
@@ -1595,11 +1597,11 @@ module.exports = {
|
|||||||
electroniccontrollertype:'电子控制器型号',
|
electroniccontrollertype:'电子控制器型号',
|
||||||
hardwareversioninformation:'硬件版本信息',
|
hardwareversioninformation:'硬件版本信息',
|
||||||
initialsoftwareversionnumber:'初始软件版本号',
|
initialsoftwareversionnumber:'初始软件版本号',
|
||||||
inflammatorydata:'初始软件包的完整性验证数据',
|
inflammatorydata:'初始软件包的完整性验证数据(需统一哈希算法并说明,例如SM3:d192e819d6990624f40e3585106ee134)',
|
||||||
environmentalprotection:'升级是否影响整车安全啊、节能、环保、防盗等性能',
|
environmentalprotection:'升级是否影响整车安全、节能、环保、防盗等性能',
|
||||||
operatingsystemtype:'操作系统类型',
|
operatingsystemtype:'操作系统类型',
|
||||||
operatingsystemmanufacturer:'操作系统生产企业',
|
operatingsystemmanufacturer:'操作系统生产企业',
|
||||||
operatingsystemversion:'操作系统版本号',
|
operatingsystemversion:'软件版本号',
|
||||||
addcontroller:'添加控制器',
|
addcontroller:'添加控制器',
|
||||||
addsystem:'添加系统',
|
addsystem:'添加系统',
|
||||||
functionname:'功能名称',
|
functionname:'功能名称',
|
||||||
@@ -1616,7 +1618,7 @@ module.exports = {
|
|||||||
thetargetvehicleofthisupgrade:'本次升级的目标车辆',
|
thetargetvehicleofthisupgrade:'本次升级的目标车辆',
|
||||||
upgradeimpactassessment:'升级影响评估',
|
upgradeimpactassessment:'升级影响评估',
|
||||||
upgradehavechanged:'本次升级的系统名称与参数变化',
|
upgradehavechanged:'本次升级的系统名称与参数变化',
|
||||||
auxiliaryupgradehavechanged:'本次升级的架势辅助功能名称与参数变化',
|
auxiliaryupgradehavechanged:'本次升级的驾驶辅助功能名称与参数变化',
|
||||||
usernotification:'用户告知内容及方式',
|
usernotification:'用户告知内容及方式',
|
||||||
informationaboutotherupgradetasks:'其他升级任务信息',
|
informationaboutotherupgradetasks:'其他升级任务信息',
|
||||||
totalquantity:'总数量(辆)',
|
totalquantity:'总数量(辆)',
|
||||||
@@ -1635,7 +1637,7 @@ module.exports = {
|
|||||||
Taskconfirmationresult:'任务确认结果',
|
Taskconfirmationresult:'任务确认结果',
|
||||||
Compliancetaskhandling:'符合性任务办理',
|
Compliancetaskhandling:'符合性任务办理',
|
||||||
resultofhandling:'处理结果',
|
resultofhandling:'处理结果',
|
||||||
networksecurityrequirements:'网络安全要求',
|
networksecurityrequirements:'激光雷达',
|
||||||
upgradefunctionrequirements:'升级功能要求',
|
upgradefunctionrequirements:'升级功能要求',
|
||||||
usernotificationrequirement:'用户告知要求',
|
usernotificationrequirement:'用户告知要求',
|
||||||
ineffectiveupgrades:'应保护升级包的真实性和完整性,以合理地防止其受到损害,并合理地防止无效升级',
|
ineffectiveupgrades:'应保护升级包的真实性和完整性,以合理地防止其受到损害,并合理地防止无效升级',
|
||||||
@@ -1666,7 +1668,7 @@ module.exports = {
|
|||||||
'(a)告知车辆用户车辆升级的结果(成功或失败);\n' +
|
'(a)告知车辆用户车辆升级的结果(成功或失败);\n' +
|
||||||
'\n' +
|
'\n' +
|
||||||
'(b)若升级成功,告知车辆用户已实施的变更,用户手册(如果适用)的任何相关更新。',
|
'(b)若升级成功,告知车辆用户已实施的变更,用户手册(如果适用)的任何相关更新。',
|
||||||
upgradepacketprotectionmeasures:'升级包保护措施',
|
upgradepacketprotectionmeasures:'软件版本(集)识别与存储',
|
||||||
otaupgradedsecuritymeasuresforvehicles:'车辆OTA升级安全措施',
|
otaupgradedsecuritymeasuresforvehicles:'车辆OTA升级安全措施',
|
||||||
authenticityandintegrityprotectionmechanism:'真实性、完整性保护机制(可多选)',
|
authenticityandintegrityprotectionmechanism:'真实性、完整性保护机制(可多选)',
|
||||||
failsafmechanism:'防失效保护机制(可多选)',
|
failsafmechanism:'防失效保护机制(可多选)',
|
||||||
@@ -1696,7 +1698,7 @@ module.exports = {
|
|||||||
vehiclecommunicationsystem:'车载通信系统',
|
vehiclecommunicationsystem:'车载通信系统',
|
||||||
driversurveillancecamera:'驾驶员监控摄像头',
|
driversurveillancecamera:'驾驶员监控摄像头',
|
||||||
drivermonitoringinfraredsensor:'驾驶员监控红外传感器',
|
drivermonitoringinfraredsensor:'驾驶员监控红外传感器',
|
||||||
vehiclesatellitepositioningequipment:'车载卫星定位设备',
|
vehiclesatellitepositioningequipment:'车载卫星定位设备(接收卫星信号及辅助定位信号的装置,PPP/GNSS/RTK)',
|
||||||
inertialnavigationsystem:'惯性导航系统',
|
inertialnavigationsystem:'惯性导航系统',
|
||||||
wheelspeedmeter:'轮速计',
|
wheelspeedmeter:'轮速计',
|
||||||
highprecisionmap:'高精度地图',
|
highprecisionmap:'高精度地图',
|
||||||
@@ -1733,7 +1735,7 @@ module.exports = {
|
|||||||
upgradeactivitiesaffectvehiclesafety:'升级活动是否影响车辆安全',
|
upgradeactivitiesaffectvehiclesafety:'升级活动是否影响车辆安全',
|
||||||
upgradeactivityprovidesuserconfirmationoptions:'升级活动是否提供用户确认选项',
|
upgradeactivityprovidesuserconfirmationoptions:'升级活动是否提供用户确认选项',
|
||||||
upgradepackagetest:'升级包测试(可多选)',
|
upgradepackagetest:'升级包测试(可多选)',
|
||||||
reliabilityofonlineupgradeactivities:'是杏已验证确认在线升级活动的安全性和可靠性',
|
reliabilityofonlineupgradeactivities:'是否已验证确认在线升级活动的安全性和可靠性',
|
||||||
adjustmentofchangedBulletinparameters:'已变更《公告》参数的对应调整(如有)',
|
adjustmentofchangedBulletinparameters:'已变更《公告》参数的对应调整(如有)',
|
||||||
preupgrade:'升级前',
|
preupgrade:'升级前',
|
||||||
afterupgrade:'升级后',
|
afterupgrade:'升级后',
|
||||||
@@ -1743,9 +1745,9 @@ module.exports = {
|
|||||||
afterthesoftwareversionupgraded:'软件版本号升级后',
|
afterthesoftwareversionupgraded:'软件版本号升级后',
|
||||||
beforetheOSversionupgraded:'操作系统版本号升级前',
|
beforetheOSversionupgraded:'操作系统版本号升级前',
|
||||||
aftertheoperatingsystemversionupgraded:'操作系统版本号升级后',
|
aftertheoperatingsystemversionupgraded:'操作系统版本号升级后',
|
||||||
initialpackageforintegrityinflammatorydata:'初始软件包的完整性验证数据',
|
initialpackageforintegrityinflammatorydata:'初始软件包的完整性验证数据(需统一哈希算法并说明,例如SM3:d192e819d6990624f40e3585106ee134)',
|
||||||
upgradepackageintegrityverificationdata:'升级包完整性验证数据',
|
upgradepackageintegrityverificationdata:'升级包完整性验证数据(需统一哈希算法并说明,例如SM3:d192e819d6990624f40e3585106ee134)',
|
||||||
upgradepackagesize:'升级包大小',
|
upgradepackagesize:'升级包大小(MB)',
|
||||||
differentialupgradeornot:'是否差分升级',
|
differentialupgradeornot:'是否差分升级',
|
||||||
upgradedestinationype:'升级目的类型',
|
upgradedestinationype:'升级目的类型',
|
||||||
functionalchangedescription:'功能变更描述',
|
functionalchangedescription:'功能变更描述',
|
||||||
@@ -1819,4 +1821,6 @@ module.exports = {
|
|||||||
note:'注:附件包括测试项目清单、测试报告.测试标准或技术规范',
|
note:'注:附件包括测试项目清单、测试报告.测试标准或技术规范',
|
||||||
format:'支持doc/docx/pdf格式,大小50M以内',
|
format:'支持doc/docx/pdf格式,大小50M以内',
|
||||||
cantTransferToYourself:"不能转办给自己",
|
cantTransferToYourself:"不能转办给自己",
|
||||||
|
theDataYouInitiate:'您所选的数据,均不符合流程发起条件,请重新检查后发起',
|
||||||
|
dataWithProcessReleasedCannotBeReset:'流程状态为清单待发布的数据不能被重置',
|
||||||
}
|
}
|
||||||
@@ -34,7 +34,7 @@
|
|||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'file',
|
name: 'file',
|
||||||
props: ['disableds', 'disabled', 'thisFileUploadUrl','accept', 'readonly', 'thisFileType', 'isUploadFile', 'isMultiple', 'restrictUploads', 'Uploadable'],
|
props: ['disableds', 'disabled', 'thisFileUploadUrl','acceptcode', 'readonly', 'thisFileType', 'isUploadFile', 'isMultiple', 'restrictUploads', 'Uploadable'],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
visible: false,
|
visible: false,
|
||||||
@@ -89,13 +89,13 @@
|
|||||||
console.log(file)
|
console.log(file)
|
||||||
this.fileTypeSatus = true
|
this.fileTypeSatus = true
|
||||||
//根据格式拦截
|
//根据格式拦截
|
||||||
if(this.accept){
|
if(this.acceptcode){
|
||||||
let fileNames = file.name.split('.')
|
let fileNames = file.name.split('.')
|
||||||
let fileType = fileNames[fileNames.length - 1].toLocaleLowerCase()
|
let fileType = fileNames[fileNames.length - 1].toLocaleLowerCase()
|
||||||
let extList = this.accept.split(',')
|
let extList = this.acceptcode.split(',')
|
||||||
if (!extList.find((item) => item == fileType)) {
|
if (!extList.find((item) => item == fileType)) {
|
||||||
this.$message.error(this.$t('uploadOnly') + this.accept + this.$t('type'))
|
this.$message.error(this.$t('uploadOnly') + this.acceptcode + this.$t('type'))
|
||||||
reject(false)
|
return false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (this.isMultiple) {
|
if (this.isMultiple) {
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
name="file"
|
name="file"
|
||||||
:file-list="myfileList"
|
:file-list="myfileList"
|
||||||
:multiple="true"
|
:multiple="true"
|
||||||
:action="uploadAction+'?state='+2+'&cut='+cut"
|
:action="actionUrl"
|
||||||
:headers="headers"
|
:headers="headers"
|
||||||
@preview="preview"
|
@preview="preview"
|
||||||
:before-upload="beforeUpload"
|
:before-upload="beforeUpload"
|
||||||
@@ -34,7 +34,7 @@ import { mapGetters } from 'vuex'
|
|||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'file',
|
name: 'file',
|
||||||
props: ['disableds', 'disabled', 'thisFileUploadUrl', 'readonly', 'thisFileType', 'isUploadFile','detailDate','accept'],
|
props: ['disableds', 'disabled', 'thisFileUploadUrl', 'readonly', 'thisFileType', 'isUploadFile', 'detailDate', 'accept', 'isParameter'],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
visible: false,
|
visible: false,
|
||||||
@@ -50,6 +50,15 @@ export default {
|
|||||||
cut: ''
|
cut: ''
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
computed: {
|
||||||
|
actionUrl() {
|
||||||
|
if (this.isParameter) {
|
||||||
|
return this.uploadAction + '?state=' + 3 + '&cut=' + this.cut
|
||||||
|
} else {
|
||||||
|
return this.uploadAction + '?state=' + 2 + '&cut=' + this.cut
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
created() {
|
created() {
|
||||||
const token = Vue.ls.get(ACCESS_TOKEN)
|
const token = Vue.ls.get(ACCESS_TOKEN)
|
||||||
this.headers = { 'X-Access-Token': token }
|
this.headers = { 'X-Access-Token': token }
|
||||||
|
|||||||
@@ -34,7 +34,7 @@
|
|||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'file',
|
name: 'file',
|
||||||
props: ['disableds', 'disabled', 'thisFileUploadUrl', 'readonly', 'thisFileType', 'isUploadFile', 'isMultiple', 'restrictUploads', 'Uploadable'],
|
props: ['disableds', 'disabled','acceptcode', 'thisFileUploadUrl', 'readonly', 'thisFileType', 'isUploadFile', 'isMultiple', 'restrictUploads', 'Uploadable'],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
visible: false,
|
visible: false,
|
||||||
@@ -88,6 +88,16 @@
|
|||||||
// let thisFileType = this.thisFileType.replace(/\s+/g, "");
|
// let thisFileType = this.thisFileType.replace(/\s+/g, "");
|
||||||
console.log(file)
|
console.log(file)
|
||||||
this.fileTypeSatus = true
|
this.fileTypeSatus = true
|
||||||
|
//根据格式拦截
|
||||||
|
if(this.acceptcode){
|
||||||
|
let fileNames = file.name.split('.')
|
||||||
|
let fileType = fileNames[fileNames.length - 1].toLocaleLowerCase()
|
||||||
|
let extList = this.acceptcode.split(',')
|
||||||
|
if (!extList.find((item) => item == fileType)) {
|
||||||
|
this.$message.error(this.$t('uploadOnly') + this.acceptcode + this.$t('type'))
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
if (this.isMultiple) {
|
if (this.isMultiple) {
|
||||||
if ((this.myfileList && this.myfileList.length == 1) || this.myfileList && this.myfileList.length > 1) {
|
if ((this.myfileList && this.myfileList.length == 1) || this.myfileList && this.myfileList.length > 1) {
|
||||||
this.$message.warning(this.$t('onlyOnefileUploaded'))
|
this.$message.warning(this.$t('onlyOnefileUploaded'))
|
||||||
|
|||||||
@@ -41,7 +41,7 @@
|
|||||||
:getCalendarContainer="(trigger) => trigger.parentNode"
|
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||||
v-model="formInline.batjsj"
|
v-model="formInline.batjsj"
|
||||||
:disabled="false"
|
:disabled="false"
|
||||||
style="width: 100%"/>
|
style="width: 90%"/>
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
@@ -52,9 +52,10 @@
|
|||||||
<span class="title-text-text" :title="$t('remarks')">
|
<span class="title-text-text" :title="$t('remarks')">
|
||||||
{{$t('remarks')}}</span>
|
{{$t('remarks')}}</span>
|
||||||
</div>
|
</div>
|
||||||
<a-form-model-item class="itemModel" prop="remarks">
|
<a-form-model-item class="itemModel" prop="bz">
|
||||||
<a-textarea :placeholder="$t('pleaseEnter')+$t('remarks')"
|
<a-textarea :placeholder="$t('pleaseEnter')+$t('remarks')"
|
||||||
v-model="formInline.bz"
|
v-model="formInline.bz"
|
||||||
|
style="width: 90%"
|
||||||
:rows="4"/>
|
:rows="4"/>
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
@@ -95,6 +96,9 @@ export default {
|
|||||||
trigger: 'change'
|
trigger: 'change'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
bz: [
|
||||||
|
{ min: 1, max: 500, message: this.$t('cantExeed') + '500' + this.$t('characters'), trigger: 'blur' }
|
||||||
|
]
|
||||||
// listConfirmation: [
|
// listConfirmation: [
|
||||||
// {
|
// {
|
||||||
// required: true,
|
// required: true,
|
||||||
@@ -154,6 +158,11 @@ export default {
|
|||||||
edit(row) {
|
edit(row) {
|
||||||
if(row instanceof Array){
|
if(row instanceof Array){
|
||||||
this.ids = row.join(',')
|
this.ids = row.join(',')
|
||||||
|
this.formInline = {
|
||||||
|
bazt:undefined,
|
||||||
|
batjsj:'',
|
||||||
|
bz:'',
|
||||||
|
}
|
||||||
}else{
|
}else{
|
||||||
this.formInline.bazt = row.bazt ? row.bazt : undefined
|
this.formInline.bazt = row.bazt ? row.bazt : undefined
|
||||||
this.formInline.batjsj = row.batjsj
|
this.formInline.batjsj = row.batjsj
|
||||||
@@ -189,7 +198,7 @@ export default {
|
|||||||
},
|
},
|
||||||
handleCancel() {
|
handleCancel() {
|
||||||
this.formInline = {
|
this.formInline = {
|
||||||
bazt:'',
|
bazt:undefined,
|
||||||
batjsj:'',
|
batjsj:'',
|
||||||
bz:'',}
|
bz:'',}
|
||||||
this.ids = ''
|
this.ids = ''
|
||||||
@@ -274,7 +283,7 @@ export default {
|
|||||||
.box-input {
|
.box-input {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
height: 38px;
|
height: 38px;
|
||||||
width: 100%;
|
width: 90%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.itemModel {
|
.itemModel {
|
||||||
|
|||||||
@@ -111,7 +111,7 @@
|
|||||||
<div v-has="'regulatoryAndTechnicalAssessment:batchDelete'"
|
<div v-has="'regulatoryAndTechnicalAssessment:batchDelete'"
|
||||||
class="operator-text">
|
class="operator-text">
|
||||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true"
|
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true"
|
||||||
:accept="'.zip'"/>
|
:accept="'.zip'" @getList="getList"/>
|
||||||
</div>
|
</div>
|
||||||
<div @click="handleModule"
|
<div @click="handleModule"
|
||||||
v-has="'regulatoryAndTechnicalAssessment:batchDelete'"
|
v-has="'regulatoryAndTechnicalAssessment:batchDelete'"
|
||||||
@@ -235,7 +235,7 @@ export default {
|
|||||||
],
|
],
|
||||||
columns: [
|
columns: [
|
||||||
{
|
{
|
||||||
title: this.$t('registrationnumber'),
|
title: this.$t('upgraderegistrationnumber'),
|
||||||
align: 'left',
|
align: 'left',
|
||||||
dataIndex: 'cpdjbh',
|
dataIndex: 'cpdjbh',
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
|
|||||||
+3
-25
@@ -3,7 +3,7 @@
|
|||||||
<div class="box">
|
<div class="box">
|
||||||
<div class="table-operator">
|
<div class="table-operator">
|
||||||
<div class="operator-text">
|
<div class="operator-text">
|
||||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" @getList="getData"/>
|
||||||
</div>
|
</div>
|
||||||
<div @click='handleModule' class="operator-text">
|
<div @click='handleModule' class="operator-text">
|
||||||
<a-icon type="download"/>
|
<a-icon type="download"/>
|
||||||
@@ -43,18 +43,13 @@
|
|||||||
<span slot="upgradetheelectroniccontrollerinvolved" slot-scope="text,record">
|
<span slot="upgradetheelectroniccontrollerinvolved" slot-scope="text,record">
|
||||||
<a-input :placeholder="$t('pleaseEnter')" :title="$t('ifNot')" v-model="record.sjsjkzq"></a-input>
|
<a-input :placeholder="$t('pleaseEnter')" :title="$t('ifNot')" v-model="record.sjsjkzq"></a-input>
|
||||||
</span>
|
</span>
|
||||||
<span slot="functiondescription" slot-scope="text,record">
|
|
||||||
<a-input :placeholder="$t('pleaseEnter')" :title="$t('ifNot')" v-model="record.gnbgms"></a-input>
|
|
||||||
</span>
|
|
||||||
<span slot="applicationconditions" slot-scope="text,record">
|
|
||||||
<a-input :placeholder="$t('pleaseEnter')" :title="$t('ifNot')" v-model="record.sytjbg"></a-input>
|
|
||||||
</span>
|
|
||||||
|
|
||||||
|
|
||||||
<!-- 操作列-->
|
<!-- 操作列-->
|
||||||
<span slot="operation" slot-scope="text,record">
|
<span slot="operation" slot-scope="text,record">
|
||||||
<a class="text-operation" @click="addlineAtBot">{{$t('add')}}</a>
|
<a class="text-operation" @click="addlineAtBot">{{$t('add')}}</a>
|
||||||
<a class="text-operation" @click="deleteData(record)">{{$t('delete')}}</a>
|
<a class="text-operation" @click="deleteData(record)" v-if="dataSource.length > 1">{{$t('delete')}}</a>
|
||||||
</span>
|
</span>
|
||||||
</a-table>
|
</a-table>
|
||||||
<div>
|
<div>
|
||||||
@@ -155,23 +150,6 @@ export default {
|
|||||||
width: 170,
|
width: 170,
|
||||||
scopedSlots: { customRender: 'upgradetheelectroniccontrollerinvolved' },
|
scopedSlots: { customRender: 'upgradetheelectroniccontrollerinvolved' },
|
||||||
},
|
},
|
||||||
{
|
|
||||||
title: this.$t('functiondescription'),
|
|
||||||
align: 'left',
|
|
||||||
dataIndex: 'functiondescription',
|
|
||||||
ellipsis: true,
|
|
||||||
width: 170,
|
|
||||||
scopedSlots: { customRender: 'functiondescription' },
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: this.$t('applicationconditions'),
|
|
||||||
align: 'left',
|
|
||||||
dataIndex: 'applicationconditions',
|
|
||||||
ellipsis: true,
|
|
||||||
width: 170,
|
|
||||||
scopedSlots: { customRender: 'applicationconditions' },
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
{
|
||||||
title: this.$t('operation'),
|
title: this.$t('operation'),
|
||||||
align: 'left',
|
align: 'left',
|
||||||
|
|||||||
+2
-1
@@ -3,7 +3,7 @@
|
|||||||
<div class="box">
|
<div class="box">
|
||||||
<div class="table-operator">
|
<div class="table-operator">
|
||||||
<div class="operator-text">
|
<div class="operator-text">
|
||||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" @getList="getData"/>
|
||||||
</div>
|
</div>
|
||||||
<div @click='handleModule' class="operator-text">
|
<div @click='handleModule' class="operator-text">
|
||||||
<a-icon type="download"/>
|
<a-icon type="download"/>
|
||||||
@@ -79,6 +79,7 @@
|
|||||||
formInline.VINcodelist == null) ? $t('clickUpload') : $t('viewUploadedFiles')
|
formInline.VINcodelist == null) ? $t('clickUpload') : $t('viewUploadedFiles')
|
||||||
}}
|
}}
|
||||||
</a-button>
|
</a-button>
|
||||||
|
<p>支持cxv格式,大下20M以内,数量1-10个</p>
|
||||||
<uploadFile ref="uploadFile" @uploadSuccess="uploadSuccess"></uploadFile>
|
<uploadFile ref="uploadFile" @uploadSuccess="uploadSuccess"></uploadFile>
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
+2
-2
@@ -3,7 +3,7 @@
|
|||||||
<div class="box">
|
<div class="box">
|
||||||
<div class="table-operator">
|
<div class="table-operator">
|
||||||
<div class="operator-text">
|
<div class="operator-text">
|
||||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" @getList="getData"/>
|
||||||
</div>
|
</div>
|
||||||
<div @click='handleModule' class="operator-text">
|
<div @click='handleModule' class="operator-text">
|
||||||
<a-icon type="download"/>
|
<a-icon type="download"/>
|
||||||
@@ -63,7 +63,7 @@
|
|||||||
<!-- 操作列-->
|
<!-- 操作列-->
|
||||||
<span slot="operation" slot-scope="text,record">
|
<span slot="operation" slot-scope="text,record">
|
||||||
<a class="text-operation" @click="addlineAtBot">{{$t('addcontroller')}}</a>
|
<a class="text-operation" @click="addlineAtBot">{{$t('addcontroller')}}</a>
|
||||||
<a class="text-operation" @click="deleteData(record)">{{$t('delete')}}</a>
|
<a class="text-operation" @click="deleteData(record)" v-if="dataSource.length > 1">{{$t('delete')}}</a>
|
||||||
</span>
|
</span>
|
||||||
</a-table>
|
</a-table>
|
||||||
<div>
|
<div>
|
||||||
|
|||||||
+13
-6
@@ -3,7 +3,7 @@
|
|||||||
<div class="box">
|
<div class="box">
|
||||||
<div class="table-operator">
|
<div class="table-operator">
|
||||||
<div class="operator-text">
|
<div class="operator-text">
|
||||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" @getList="getData"/>
|
||||||
</div>
|
</div>
|
||||||
<div @click='handleModule' class="operator-text">
|
<div @click='handleModule' class="operator-text">
|
||||||
<a-icon type="download"/>
|
<a-icon type="download"/>
|
||||||
@@ -478,8 +478,12 @@ this.$forceUpdate()
|
|||||||
border-bottom: none;
|
border-bottom: none;
|
||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
overflow: hidden; /*超出部分隐藏*/
|
overflow: hidden; /*超出部分隐藏*/
|
||||||
text-overflow: ellipsis; /*超出部分省略号表示*/
|
// text-overflow: ellipsis; /*超出部分省略号表示*/
|
||||||
white-space: nowrap;
|
white-space: wrap;
|
||||||
|
display: flex;
|
||||||
|
// justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
line-height: 1.3;
|
||||||
}
|
}
|
||||||
//::v-deep .sider .ant-layout-sider .ant-layout-sider-dark{
|
//::v-deep .sider .ant-layout-sider .ant-layout-sider-dark{
|
||||||
// min-width: 723px !important;
|
// min-width: 723px !important;
|
||||||
@@ -511,14 +515,17 @@ this.$forceUpdate()
|
|||||||
display: inline-block;
|
display: inline-block;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 50px;
|
height: 50px;
|
||||||
line-height: 50px;
|
line-height: 1.3;
|
||||||
border: black solid 1px;
|
border: black solid 1px;
|
||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
border-right: none;
|
border-right: none;
|
||||||
border-bottom: none;
|
border-bottom: none;
|
||||||
overflow: hidden; /*超出部分隐藏*/
|
overflow: hidden; /*超出部分隐藏*/
|
||||||
text-overflow: ellipsis; /*超出部分省略号表示*/
|
// text-overflow: ellipsis; /*超出部分省略号表示*/
|
||||||
white-space: nowrap;
|
white-space: wrap;
|
||||||
|
display: flex;
|
||||||
|
// justify-content: center;
|
||||||
|
align-items: center;
|
||||||
}
|
}
|
||||||
.sider-span{
|
.sider-span{
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
|
|||||||
+10
-5
@@ -3,13 +3,14 @@
|
|||||||
<div class="box">
|
<div class="box">
|
||||||
<div class="table-operator">
|
<div class="table-operator">
|
||||||
<div class="operator-text">
|
<div class="operator-text">
|
||||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" @getList="getData"/>
|
||||||
</div>
|
</div>
|
||||||
<div @click='handleModule' class="operator-text">
|
<div @click='handleModule' class="operator-text">
|
||||||
<a-icon type="download"/>
|
<a-icon type="download"/>
|
||||||
{{$t('templateDownload')}}
|
{{$t('templateDownload')}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<a-spin :spinning="confirmLoading">
|
<a-spin :spinning="confirmLoading">
|
||||||
<a-form-model class="formAdd" ref="ruleForm">
|
<a-form-model class="formAdd" ref="ruleForm">
|
||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
@@ -58,7 +59,7 @@
|
|||||||
|
|
||||||
<a-col :span="24">
|
<a-col :span="24">
|
||||||
<div class="box-title-text-add">
|
<div class="box-title-text-add">
|
||||||
<div class="title-text-add">
|
<div class="title-text-add plus">
|
||||||
<span class="title-text-text" :title="$t('Modelandfunctionrecord')">{{$t('Modelandfunctionrecord')}}</span>
|
<span class="title-text-text" :title="$t('Modelandfunctionrecord')">{{$t('Modelandfunctionrecord')}}</span>
|
||||||
</div>
|
</div>
|
||||||
<a-form-model-item class="itemModel" prop="dutyTerritory">
|
<a-form-model-item class="itemModel" prop="dutyTerritory">
|
||||||
@@ -288,9 +289,9 @@ import ImportFile from '@/components/ImportFileData/index'
|
|||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
margin-right: 16px;
|
margin-right: 16px;
|
||||||
overflow: hidden;
|
// overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
// text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
// white-space: nowrap;
|
||||||
height: 42px;
|
height: 42px;
|
||||||
line-height: 42px;
|
line-height: 42px;
|
||||||
margin-top: 3px;
|
margin-top: 3px;
|
||||||
@@ -336,4 +337,8 @@ import ImportFile from '@/components/ImportFileData/index'
|
|||||||
.bootom-button{
|
.bootom-button{
|
||||||
text-align: center!important;
|
text-align: center!important;
|
||||||
}
|
}
|
||||||
|
.plus{
|
||||||
|
margin-top: 5px;
|
||||||
|
line-height: 1.4 !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
+11
-2
@@ -3,7 +3,7 @@
|
|||||||
<div class="box">
|
<div class="box">
|
||||||
<div class="table-operator">
|
<div class="table-operator">
|
||||||
<div class="operator-text">
|
<div class="operator-text">
|
||||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" @getList="getData"/>
|
||||||
</div>
|
</div>
|
||||||
<div @click='handleModule' class="operator-text">
|
<div @click='handleModule' class="operator-text">
|
||||||
<a-icon type="download"/>
|
<a-icon type="download"/>
|
||||||
@@ -228,10 +228,16 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
save(){
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
next(){
|
next(){
|
||||||
|
this.save()
|
||||||
this.$emit('recordparametersdown')
|
this.$emit('recordparametersdown')
|
||||||
},
|
},
|
||||||
last(){
|
last(){
|
||||||
|
this.save()
|
||||||
this.$emit('recordparametersup')
|
this.$emit('recordparametersup')
|
||||||
},
|
},
|
||||||
dateChange(item) {
|
dateChange(item) {
|
||||||
@@ -254,7 +260,10 @@ export default {
|
|||||||
display: flex;
|
display: flex;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
h1{
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: 20px;
|
||||||
|
}
|
||||||
.title-text-add {
|
.title-text-add {
|
||||||
width: 440px;
|
width: 440px;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
|
|||||||
@@ -50,13 +50,13 @@
|
|||||||
</span>
|
</span>
|
||||||
<!-- 技术参数-->
|
<!-- 技术参数-->
|
||||||
<span slot="technicalparameters" slot-scope="text,record">
|
<span slot="technicalparameters" slot-scope="text,record">
|
||||||
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.sjggcs" :max-length="500"></a-input>
|
<a-input :placeholder="$t('ifNot')" :title="record.sjggcs ? record.sjggcs : $t('ifNot')" v-model="record.sjggcs" :max-length="500"></a-input>
|
||||||
</span>
|
</span>
|
||||||
<span slot="functiondescription" slot-scope="text,record">
|
<span slot="functiondescription" slot-scope="text,record">
|
||||||
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.gnms" :max-length="500"></a-input>
|
<a-input :placeholder="$t('ifNot')" :title="record.gnms ? record.gnms:$t('ifNot')" v-model="record.gnms" :max-length="500"></a-input>
|
||||||
</span>
|
</span>
|
||||||
<span slot="applicationconditions" slot-scope="text,record">
|
<span slot="applicationconditions" slot-scope="text,record">
|
||||||
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.sytj" :max-length="500"></a-input>
|
<a-input :placeholder="$t('ifNot')" :title="record.sytj ? record.sytj:$t('ifNot')" v-model="record.sytj" :max-length="500"></a-input>
|
||||||
</span>
|
</span>
|
||||||
<span slot="functiondeelectronicscription" slot-scope="text,record">
|
<span slot="functiondeelectronicscription" slot-scope="text,record">
|
||||||
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqmc" :max-length="500"></a-input>
|
<a-input :placeholder="$t('pleaseEnter')" v-model="record.kzqmc" :max-length="500"></a-input>
|
||||||
@@ -93,8 +93,8 @@
|
|||||||
}}</a-button>
|
}}</a-button>
|
||||||
|
|
||||||
<div style='margin-top: 20px'>
|
<div style='margin-top: 20px'>
|
||||||
<p>注:附件包括测试项目清单、测试报告.测试标准或技术规范</p>
|
<p>{{ $t('note') }}</p>
|
||||||
<p> 支持doc/docx/pdf格式,大小50M以内</p>
|
<p> {{ $t('format') }}</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -113,15 +113,15 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.title-text-add {
|
.title-text-add {
|
||||||
width: 114px;
|
width: 200px;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
margin-right: 16px;
|
margin-right: 16px;
|
||||||
overflow: hidden;
|
// overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
// text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
// white-space: nowrap;
|
||||||
height: 42px;
|
height: 42px;
|
||||||
line-height: 42px;
|
line-height: 42px;
|
||||||
margin-top: 3px;
|
margin-top: 3px;
|
||||||
@@ -133,9 +133,9 @@ export default {
|
|||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
margin-right: 16px;
|
margin-right: 16px;
|
||||||
overflow: hidden;
|
// overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
// text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
// white-space: nowrap;
|
||||||
height: 42px;
|
height: 42px;
|
||||||
line-height: 42px;
|
line-height: 42px;
|
||||||
margin-top: 3px;
|
margin-top: 3px;
|
||||||
|
|||||||
+21
-14
@@ -95,7 +95,7 @@
|
|||||||
<div style='width: 300px'>
|
<div style='width: 300px'>
|
||||||
<span class='content-text' style='background: #f3f6f6;line-height: 50px;text-align: center;color: #191E29;font-weight: bold'>{{$t('fillincontent')}}</span>
|
<span class='content-text' style='background: #f3f6f6;line-height: 50px;text-align: center;color: #191E29;font-weight: bold'>{{$t('fillincontent')}}</span>
|
||||||
<span class='radio-text'>
|
<span class='radio-text'>
|
||||||
<a-radio-group style='margin-left: 40px;' v-model="query.jgld">
|
<a-radio-group style='margin-left: 40px;' v-model="query.jgldPz">
|
||||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
||||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
||||||
</a-radio-group>
|
</a-radio-group>
|
||||||
@@ -239,8 +239,8 @@
|
|||||||
<!-- 可升级-->
|
<!-- 可升级-->
|
||||||
<span slot="systemclass" slot-scope="text,record" >
|
<span slot="systemclass" slot-scope="text,record" >
|
||||||
<a-radio-group v-model="record.pzqk">
|
<a-radio-group v-model="record.pzqk">
|
||||||
<a-radio :value="1"> {{ $t('yes') }} </a-radio>
|
<a-radio :value="1"> {{ $t('have') }} </a-radio>
|
||||||
<a-radio :value="2"> {{ $t('not') }} </a-radio>
|
<a-radio :value="2"> {{ $t('nothing') }} </a-radio>
|
||||||
</a-radio-group>
|
</a-radio-group>
|
||||||
</span>
|
</span>
|
||||||
<span slot="controllername" slot-scope="text,record">
|
<span slot="controllername" slot-scope="text,record">
|
||||||
@@ -263,7 +263,7 @@
|
|||||||
</span>
|
</span>
|
||||||
<!-- 操作列-->
|
<!-- 操作列-->
|
||||||
<span slot="operation" slot-scope="text,record">
|
<span slot="operation" slot-scope="text,record">
|
||||||
<a class="text-operation" @click="addlineAtBot" style='width: 73px;margin-right: 50px'>{{$t('addcontroller')}}</a>
|
<a class="text-operation" style='width: 73px;margin-right: 50px' @click="addlineAtBot">{{$t('addcontroller')}}</a>
|
||||||
<a class="text-operation" v-if="dataSourceList.length >1" @click="deleteData(record)" >{{$t('delete')}}</a>
|
<a class="text-operation" v-if="dataSourceList.length >1" @click="deleteData(record)" >{{$t('delete')}}</a>
|
||||||
</span>
|
</span>
|
||||||
</a-table>
|
</a-table>
|
||||||
@@ -977,11 +977,14 @@ export default {
|
|||||||
return obj;
|
return obj;
|
||||||
},
|
},
|
||||||
addlineAtBot(){
|
addlineAtBot(){
|
||||||
let obj={bjmc:'车端OTA升级功能模块'}
|
let obj={}
|
||||||
|
obj.bjmc='车端OTA升级功能模块'
|
||||||
this.dataSourceList.push(obj)
|
this.dataSourceList.push(obj)
|
||||||
|
this.$forceUpdate()
|
||||||
},
|
},
|
||||||
deleteData(record){
|
deleteData(record){
|
||||||
this.dataSourceList.splice(this.dataSourceList.indexOf(record),1)
|
this.dataSourceList.splice(this.dataSourceList.indexOf(record),1)
|
||||||
|
this.$forceUpdate()
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1142,7 +1145,7 @@ button{
|
|||||||
line-height: 50px;
|
line-height: 50px;
|
||||||
}
|
}
|
||||||
.text-box-three{
|
.text-box-three{
|
||||||
isplay: inline-block;
|
display: inline-block;
|
||||||
float: left;
|
float: left;
|
||||||
border: #e8e8e8 solid 1px;
|
border: #e8e8e8 solid 1px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@@ -1150,7 +1153,7 @@ button{
|
|||||||
line-height: 250px;
|
line-height: 250px;
|
||||||
}
|
}
|
||||||
.text-box-four{
|
.text-box-four{
|
||||||
isplay: inline-block;
|
display: inline-block;
|
||||||
float: left;
|
float: left;
|
||||||
border: #e8e8e8 solid 1px;
|
border: #e8e8e8 solid 1px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@@ -1158,15 +1161,18 @@ button{
|
|||||||
line-height: 600px;
|
line-height: 600px;
|
||||||
}
|
}
|
||||||
.four-text-text{
|
.four-text-text{
|
||||||
isplay: inline-block;
|
display: inline-block;
|
||||||
float: left;
|
float: left;
|
||||||
border: #e8e8e8 solid 1px;
|
border: #e8e8e8 solid 1px;
|
||||||
width: 50%;
|
width: 50%;
|
||||||
height: 600px;
|
height: 600px;
|
||||||
line-height: 600px;
|
line-height: 20px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
}
|
}
|
||||||
.four-text{
|
.four-text{
|
||||||
isplay: inline-block;
|
display: inline-block;
|
||||||
float: left;
|
float: left;
|
||||||
border: #e8e8e8 solid 1px;
|
border: #e8e8e8 solid 1px;
|
||||||
width: 50%;
|
width: 50%;
|
||||||
@@ -1174,7 +1180,7 @@ button{
|
|||||||
line-height: 150px;
|
line-height: 150px;
|
||||||
}
|
}
|
||||||
.text-box-five{
|
.text-box-five{
|
||||||
isplay: inline-block;
|
display: inline-block;
|
||||||
float: left;
|
float: left;
|
||||||
border: #e8e8e8 solid 1px;
|
border: #e8e8e8 solid 1px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@@ -1182,9 +1188,10 @@ button{
|
|||||||
line-height: 100px;
|
line-height: 100px;
|
||||||
}
|
}
|
||||||
span{
|
span{
|
||||||
overflow: hidden; /*超出部分隐藏*/
|
/* overflow: hidden; /*超出部分隐藏*/
|
||||||
text-overflow: ellipsis; /*超出部分省略号表示*/
|
/* text-overflow: ellipsis; 超出部分省略号表示 */
|
||||||
white-space: nowrap;
|
white-space: wrap;
|
||||||
|
/* word-wrap: normal; */
|
||||||
}
|
}
|
||||||
.item-input{
|
.item-input{
|
||||||
margin-top: 9px;
|
margin-top: 9px;
|
||||||
|
|||||||
+5
-1
@@ -38,12 +38,16 @@
|
|||||||
</a-button>
|
</a-button>
|
||||||
</span>
|
</span>
|
||||||
</a-table>
|
</a-table>
|
||||||
|
<div style='margin-top: 20px'>
|
||||||
|
<p>{{ $t('note') }}</p>
|
||||||
|
<p> {{ $t('format') }}</p>
|
||||||
|
</div>
|
||||||
<div class="bootom-button">
|
<div class="bootom-button">
|
||||||
<a-button class='btn' @click="save">{{$t('preservation')}}</a-button>
|
<a-button class='btn' @click="save">{{$t('preservation')}}</a-button>
|
||||||
<a-button type="primary" style='width: 73px;margin-right: 50px' @click='last'>{{$t('last')}}</a-button>
|
<a-button type="primary" style='width: 73px;margin-right: 50px' @click='last'>{{$t('last')}}</a-button>
|
||||||
<a-button type="primary" style='width: 73px' @click='next'>{{$t('next')}}</a-button>
|
<a-button type="primary" style='width: 73px' @click='next'>{{$t('next')}}</a-button>
|
||||||
</div>
|
</div>
|
||||||
<uploadFile ref="uploadFile" @uploadSuccess="uploadSuccess"></uploadFile>
|
<uploadFile ref="uploadFile" :acceptcode="'doc,docx,pdf'" @uploadSuccess="uploadSuccess"></uploadFile>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -34,7 +34,7 @@
|
|||||||
<a-button type="primary" style='width: 73px;margin-right: 50px' @click="last">{{ $t('last') }}</a-button>
|
<a-button type="primary" style='width: 73px;margin-right: 50px' @click="last">{{ $t('last') }}</a-button>
|
||||||
<a-button type="primary" style='width: 73px' @click='next'>{{ $t('next') }}</a-button>
|
<a-button type="primary" style='width: 73px' @click='next'>{{ $t('next') }}</a-button>
|
||||||
</div>
|
</div>
|
||||||
<uploadFile ref="uploadFile" :accept="'.doc,.docx,.pdf'" @uploadSuccess="uploadSuccess"></uploadFile>
|
<uploadFile ref="uploadFile" :acceptcode="'doc,docx,pdf'" @uploadSuccess="uploadSuccess"></uploadFile>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
</span>
|
</span>
|
||||||
<!-- 技术参数-->
|
<!-- 技术参数-->
|
||||||
<span slot="technicalparameters" slot-scope="text,record">
|
<span slot="technicalparameters" slot-scope="text,record">
|
||||||
<a-input :placeholder="$t('ifNot')" :title="$t('ifNot')" v-model="record.sjbgcs" :max-length="500"></a-input>
|
<a-input :placeholder="$t('ifNot')" :title="record.sjbgcs ? record.sjbgcs : $t('ifNot')" v-model="record.sjbgcs" :max-length="500"></a-input>
|
||||||
</span>
|
</span>
|
||||||
<!-- 上传附件-->
|
<!-- 上传附件-->
|
||||||
<span slot="architecturetopologydiagram" slot-scope="text,record">
|
<span slot="architecturetopologydiagram" slot-scope="text,record">
|
||||||
@@ -99,7 +99,7 @@
|
|||||||
<a-button type="primary" style='width: 73px' @click='next'>{{$t('next')}}</a-button>
|
<a-button type="primary" style='width: 73px' @click='next'>{{$t('next')}}</a-button>
|
||||||
</div>
|
</div>
|
||||||
<uploadFile ref="uploadFile" @uploadSuccess="uploadSuccess"></uploadFile>
|
<uploadFile ref="uploadFile" @uploadSuccess="uploadSuccess"></uploadFile>
|
||||||
<uploadFileOta ref="uploadFileOta" @uploadSuccess="uploadSuccessOta"></uploadFileOta>
|
<uploadFileOta ref="uploadFileOta" :acceptcode="'doc,docx,pdf'" @uploadSuccess="uploadSuccessOta"></uploadFileOta>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@@ -20,6 +20,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<a-form-model-item class="itemModel" prop="bazt">
|
<a-form-model-item class="itemModel" prop="bazt">
|
||||||
<j-dict-select-tag class="box-input" v-model="formInline.bazt"
|
<j-dict-select-tag class="box-input" v-model="formInline.bazt"
|
||||||
|
@input="selectchange"
|
||||||
:placeholder="$t('PleaseSelect')+$t('recordstatus')"
|
:placeholder="$t('PleaseSelect')+$t('recordstatus')"
|
||||||
:type="'select'"
|
:type="'select'"
|
||||||
:triggerChange="false" :dictCode="'recordstatus'"/>
|
:triggerChange="false" :dictCode="'recordstatus'"/>
|
||||||
@@ -40,7 +41,7 @@
|
|||||||
format="YYYY-MM-DD"
|
format="YYYY-MM-DD"
|
||||||
:getCalendarContainer="(trigger) => trigger.parentNode"
|
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||||
v-model="formInline.batjsj"
|
v-model="formInline.batjsj"
|
||||||
style="width: 100%"/>
|
style="width: 90%"/>
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
@@ -51,9 +52,10 @@
|
|||||||
<span class="title-text-text" :title="$t('remarks')">
|
<span class="title-text-text" :title="$t('remarks')">
|
||||||
{{$t('remarks')}}</span>
|
{{$t('remarks')}}</span>
|
||||||
</div>
|
</div>
|
||||||
<a-form-model-item class="itemModel" prop="remarks">
|
<a-form-model-item class="itemModel" prop="bz">
|
||||||
<a-textarea :placeholder="$t('pleaseEnter')+$t('remarks')"
|
<a-textarea :placeholder="$t('pleaseEnter')+$t('remarks')"
|
||||||
v-model="formInline.bz"
|
v-model="formInline.bz"
|
||||||
|
style="width: 90%"
|
||||||
:rows="4"/>
|
:rows="4"/>
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
@@ -75,7 +77,7 @@ export default {
|
|||||||
visible: false,
|
visible: false,
|
||||||
confirmLoading: false,
|
confirmLoading: false,
|
||||||
formInline: {
|
formInline: {
|
||||||
bazt:'',
|
bazt:undefined,
|
||||||
batjsj:'',
|
batjsj:'',
|
||||||
bz:'',
|
bz:'',
|
||||||
},
|
},
|
||||||
@@ -94,6 +96,9 @@ export default {
|
|||||||
trigger: 'change'
|
trigger: 'change'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
bz: [
|
||||||
|
{ min: 1, max: 500, message: this.$t('cantExeed') + '500' + this.$t('characters'), trigger: 'blur' }
|
||||||
|
]
|
||||||
// designDeadline: [
|
// designDeadline: [
|
||||||
// {
|
// {
|
||||||
// required: true,
|
// required: true,
|
||||||
@@ -139,6 +144,11 @@ export default {
|
|||||||
edit(row) {
|
edit(row) {
|
||||||
if(row instanceof Array){
|
if(row instanceof Array){
|
||||||
this.ids = row.join(',')
|
this.ids = row.join(',')
|
||||||
|
this.formInline = {
|
||||||
|
bazt:undefined,
|
||||||
|
batjsj:'',
|
||||||
|
bz:'',
|
||||||
|
}
|
||||||
}else{
|
}else{
|
||||||
this.formInline.bazt = row.bazt ? row.bazt : undefined
|
this.formInline.bazt = row.bazt ? row.bazt : undefined
|
||||||
this.formInline.batjsj = row.batjsj
|
this.formInline.batjsj = row.batjsj
|
||||||
@@ -172,9 +182,15 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
selectchange(value){
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.formInline = { ...this.formInline }
|
||||||
|
this.$refs.ruleForm.validateField('bazt')
|
||||||
|
})
|
||||||
|
},
|
||||||
handleCancel() {
|
handleCancel() {
|
||||||
this.formInline = {
|
this.formInline = {
|
||||||
bazt:'',
|
bazt:undefined,
|
||||||
batjsj:'',
|
batjsj:'',
|
||||||
bz:'',}
|
bz:'',}
|
||||||
this.ids = ''
|
this.ids = ''
|
||||||
@@ -259,7 +275,7 @@ export default {
|
|||||||
.box-input {
|
.box-input {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
height: 38px;
|
height: 38px;
|
||||||
width: 100%;
|
width: 90%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.itemModel {
|
.itemModel {
|
||||||
|
|||||||
@@ -6,10 +6,10 @@
|
|||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
<a-col :md="6" :sm="8">
|
<a-col :md="6" :sm="8">
|
||||||
<div class="box-title-text">
|
<div class="box-title-text">
|
||||||
<div class="title-text" :title="$t('upgraderegistrationnumber')">
|
<div class="title-text" :title="$t('registrationnumber')">
|
||||||
<span>{{ $t('upgraderegistrationnumber') }}</span>
|
<span>{{ $t('registrationnumber') }}</span>
|
||||||
</div>
|
</div>
|
||||||
<a-input class="box-input" :placeholder="$t('PleaseEnter') + $t('upgraderegistrationnumber')"
|
<a-input class="box-input" :placeholder="$t('PleaseEnter') + $t('registrationnumber')"
|
||||||
v-model="queryParam.cpdjbh"></a-input>
|
v-model="queryParam.cpdjbh"></a-input>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
@@ -104,7 +104,7 @@
|
|||||||
{{ $t('datamaintenance') }}
|
{{ $t('datamaintenance') }}
|
||||||
</div>
|
</div>
|
||||||
<div v-has="'regulatoryAndTechnicalAssessment:batchDelete'" class="operator-text">
|
<div v-has="'regulatoryAndTechnicalAssessment:batchDelete'" class="operator-text">
|
||||||
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" />
|
<ImportFile :url="url" :dummyInventoryBaseId="$route.query.id" :isTrue="true" :accept="'.zip'" @getList="getList"/>
|
||||||
</div>
|
</div>
|
||||||
<div @click="handleModule" v-has="'regulatoryAndTechnicalAssessment:batchDelete'" class="operator-text">
|
<div @click="handleModule" v-has="'regulatoryAndTechnicalAssessment:batchDelete'" class="operator-text">
|
||||||
<a-icon type="download" />
|
<a-icon type="download" />
|
||||||
|
|||||||
@@ -317,7 +317,7 @@
|
|||||||
<a-button @click="handleSubmit" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>
|
<a-button @click="handleSubmit" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>
|
||||||
</div>
|
</div>
|
||||||
</a-drawer>
|
</a-drawer>
|
||||||
<uploadFileChange ref="uploadFile" @uploadSuccess="uploadSuccess"></uploadFileChange>
|
<uploadFileChange :isParameter="true" ref="uploadFile" @uploadSuccess="uploadSuccess"></uploadFileChange>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@@ -402,6 +402,7 @@
|
|||||||
<SelectedBy ref="SelectedByRef" :isSingleChoice="true"
|
<SelectedBy ref="SelectedByRef" :isSingleChoice="true"
|
||||||
:title="$t('turnToDo')" @SelectedByForm="SelectedByForm"></SelectedBy>
|
:title="$t('turnToDo')" @SelectedByForm="SelectedByForm"></SelectedBy>
|
||||||
<viewFileModel ref="viewFileModelRef"/>
|
<viewFileModel ref="viewFileModelRef"/>
|
||||||
|
<JLoading :loading="JTextLoading">{{ $t('Submitting') }}</JLoading>
|
||||||
<!-- <a-modal-->
|
<!-- <a-modal-->
|
||||||
<!-- :title="listTitle"-->
|
<!-- :title="listTitle"-->
|
||||||
<!-- :width="500"-->
|
<!-- :width="500"-->
|
||||||
@@ -514,6 +515,7 @@
|
|||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 50,
|
pageSize: 50,
|
||||||
total: 0,
|
total: 0,
|
||||||
|
JTextLoading: false,
|
||||||
CertificationColor: {
|
CertificationColor: {
|
||||||
'Test passed': 'accordColor',
|
'Test passed': 'accordColor',
|
||||||
'Test failed': 'nonConformityColor',
|
'Test failed': 'nonConformityColor',
|
||||||
@@ -973,9 +975,24 @@
|
|||||||
processResetClick() {
|
processResetClick() {
|
||||||
let _this = this
|
let _this = this
|
||||||
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||||
|
let ids = []
|
||||||
|
let notConditions = []
|
||||||
|
for (let i = 0; i < this.selectedRowKeysList.length; i++) {
|
||||||
|
if (this.selectedRowKeysList[i].flowStatus == 'List to be released') {
|
||||||
|
notConditions.push(this.selectedRowKeysList[i].inspectionItem)
|
||||||
|
} else {
|
||||||
|
ids.push(this.selectedRowKeysList[i].id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
let data = ''
|
||||||
|
if (notConditions && notConditions.length > 0) {
|
||||||
|
data = this.$t('inspectionItems') + '"' + notConditions.join('、') + '"' + this.$t('conditionsNotMet') + ',' + this.$t('dataWithProcessReleasedCannotBeReset')
|
||||||
|
}
|
||||||
|
if (ids && ids.length > 0) {
|
||||||
this.$confirm({
|
this.$confirm({
|
||||||
content: _this.$t('confirmResetProcess'),
|
content: _this.$t('confirmResetProcess'),
|
||||||
onOk() {
|
onOk() {
|
||||||
|
_this.JTextLoading = true
|
||||||
let idList = JSON.parse(JSON.stringify(_this.selectedRowKeys))
|
let idList = JSON.parse(JSON.stringify(_this.selectedRowKeys))
|
||||||
postAction('/project/projectCertificationInventoryEO/resetFlow', {
|
postAction('/project/projectCertificationInventoryEO/resetFlow', {
|
||||||
ids: idList.join(','),
|
ids: idList.join(','),
|
||||||
@@ -986,12 +1003,21 @@
|
|||||||
_this.$message.success(_this.$t('OperationSuccessful'))
|
_this.$message.success(_this.$t('OperationSuccessful'))
|
||||||
_this.selectedRowKeys = []
|
_this.selectedRowKeys = []
|
||||||
_this.getList()
|
_this.getList()
|
||||||
|
if (notConditions && notConditions.length > 0) {
|
||||||
|
_this.failedMessage(data)
|
||||||
|
}
|
||||||
|
_this.JTextLoading = false
|
||||||
} else {
|
} else {
|
||||||
_this.$message.warning(res.message)
|
_this.$message.warning(res.message)
|
||||||
|
_this.JTextLoading = false
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
} else {
|
||||||
|
this.failedMessage(data)
|
||||||
|
this.JTextLoading = false
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
this.$message.warning(this.$t('selectLeastOne'))
|
this.$message.warning(this.$t('selectLeastOne'))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -761,14 +761,14 @@
|
|||||||
scopedSlots: { customRender: 'verifyDeliverableTemplateName' }
|
scopedSlots: { customRender: 'verifyDeliverableTemplateName' }
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
|
||||||
{
|
|
||||||
title: this.$t('operation'),
|
|
||||||
align: 'left',
|
|
||||||
fixed: 'right',
|
|
||||||
width: 260,
|
|
||||||
scopedSlots: { customRender: 'operation' }
|
|
||||||
}
|
}
|
||||||
|
// {
|
||||||
|
// title: this.$t('operation'),
|
||||||
|
// align: 'left',
|
||||||
|
// fixed: 'right',
|
||||||
|
// width: 260,
|
||||||
|
// scopedSlots: { customRender: 'operation' }
|
||||||
|
// }
|
||||||
],
|
],
|
||||||
columnsAll: [],
|
columnsAll: [],
|
||||||
columnsFileAll: [
|
columnsFileAll: [
|
||||||
@@ -1528,7 +1528,7 @@
|
|||||||
_this.selectedRowKeys = []
|
_this.selectedRowKeys = []
|
||||||
_this.getList()
|
_this.getList()
|
||||||
if (detailedWarningList && detailedWarningList.length > 0) {
|
if (detailedWarningList && detailedWarningList.length > 0) {
|
||||||
this.promptInformation(detailedWarningList)
|
_this.promptInformation(detailedWarningList)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
_this.$message.warning(_this.$t('operationFailed'))
|
_this.$message.warning(_this.$t('operationFailed'))
|
||||||
@@ -1689,19 +1689,20 @@
|
|||||||
for (let i = 0; i < this.dataSource.length; i++) {
|
for (let i = 0; i < this.dataSource.length; i++) {
|
||||||
for (let j = 0; j < selectedRowKeys.length; j++) {
|
for (let j = 0; j < selectedRowKeys.length; j++) {
|
||||||
if (this.dataSource[i].id == selectedRowKeys[j]) {
|
if (this.dataSource[i].id == selectedRowKeys[j]) {
|
||||||
content.push(this.dataSource[i])
|
// content.push(this.dataSource[i])
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
for (let i = 0; i < content.length; i++) {
|
|
||||||
if (content[i].designFlowStatus == 'List to be released' &&
|
|
||||||
content[i].verifyFlowStatus == 'List to be released') {
|
|
||||||
isTrue = false
|
|
||||||
|
|
||||||
} else {
|
|
||||||
isTrue = true
|
isTrue = true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
// for (let i = 0; i < content.length; i++) {
|
||||||
|
// if (content[i].designFlowStatus == 'List to be released' &&
|
||||||
|
// content[i].verifyFlowStatus == 'List to be released') {
|
||||||
|
// isTrue = false
|
||||||
|
//
|
||||||
|
// } else {
|
||||||
|
// isTrue = true
|
||||||
|
// }
|
||||||
|
// }
|
||||||
if (isTrue) {
|
if (isTrue) {
|
||||||
this.changeInterface(selectedRowKeys)
|
this.changeInterface(selectedRowKeys)
|
||||||
}
|
}
|
||||||
@@ -1998,6 +1999,7 @@
|
|||||||
moduleFlag: '法规清单'
|
moduleFlag: '法规清单'
|
||||||
}).then((res) => {
|
}).then((res) => {
|
||||||
if (res.success) {
|
if (res.success) {
|
||||||
|
if (res.result && res.result.length > 0) {
|
||||||
this.columnsAll = res.result
|
this.columnsAll = res.result
|
||||||
for (let j = 0; j < this.columnsAll.length; j++) {
|
for (let j = 0; j < this.columnsAll.length; j++) {
|
||||||
for (let i = 0; i < this.column.length; i++) {
|
for (let i = 0; i < this.column.length; i++) {
|
||||||
@@ -2032,6 +2034,9 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
this.columnsAll = this.column
|
||||||
|
}
|
||||||
this.columnsAll.push({
|
this.columnsAll.push({
|
||||||
title: this.$t('operation'),
|
title: this.$t('operation'),
|
||||||
align: 'left',
|
align: 'left',
|
||||||
@@ -2385,9 +2390,11 @@
|
|||||||
_this.detailedWarningList.push(
|
_this.detailedWarningList.push(
|
||||||
< div > { dataList[i].serialNumber + _this.$t('pleaseSelectTheDataverificationVerified') } < /div>)
|
< div > { dataList[i].serialNumber + _this.$t('pleaseSelectTheDataverificationVerified') } < /div>)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
if (this.requestsNum == 0) {
|
if (this.requestsNum == 0) {
|
||||||
_this.promptInformation(_this.detailedWarningList)
|
this.$message.warning(_this.$t('theDataYouInitiate'))
|
||||||
|
// _this.promptInformation(_this.detailedWarningList)
|
||||||
this.JTextLoading = false
|
this.JTextLoading = false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user