Merge remote-tracking branch 'origin/dev_2nd_LCYH' into dev_2nd_LCYH
This commit is contained in:
@@ -434,3 +434,6 @@ ALTER TABLE `project_related_personnel`
|
||||
ALTER TABLE `project_task_planning`
|
||||
ADD COLUMN `certification_submission` datetime(0) NULL COMMENT '认证提交' AFTER `attestation_start_time`;
|
||||
|
||||
-- 项目库-认证清单-认证目录 说明字段长度修改 2023-3-30 未同步生产环境
|
||||
ALTER TABLE `project_certification_directory`
|
||||
MODIFY COLUMN `explain_info` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '说明' AFTER `detection_report_location`;
|
||||
+3
-2
@@ -187,11 +187,12 @@ public class OtaBaSjListServiceImpl extends ServiceImpl<OtaBaSjListMapper, OtaBa
|
||||
File template = new File(templatePath + "在线升级活动备案.zip");
|
||||
File exportFile = ImportFileUtil.copyZip(ImportFileUtil.createMfileByFile(template), cut, uploadPath);
|
||||
|
||||
File sjmbcxFile = ImportFileUtil.findFile(exportFile, "升级目标车型.xlsx");
|
||||
otaBaSjSjmbcxService.exportData(sjmbcxFile, otaId, cut);
|
||||
|
||||
File jbxxFile = ImportFileUtil.findFile(exportFile, "本次升级涉及的目标车辆.xlsx");
|
||||
otaBaSjSjmbclService.exportData(jbxxFile, otaId, cut);
|
||||
|
||||
File sjmbcxFile = ImportFileUtil.findFile(exportFile, "升级目标车型.xlsx");
|
||||
otaBaSjSjmbcxService.exportData(sjmbcxFile, otaId, cut);
|
||||
|
||||
File pgFile = ImportFileUtil.findFile(exportFile, "升级影响评估.docx");
|
||||
otaBaSjSjyxpgService.exportData(pgFile, otaId, cut);
|
||||
|
||||
+14
-1
@@ -23,6 +23,7 @@ import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileOutputStream;
|
||||
import java.util.List;
|
||||
import java.util.Date;
|
||||
import java.util.UUID;
|
||||
@@ -240,6 +241,18 @@ public class OtaBaSjSjmbcxServiceImpl extends ServiceImpl<OtaBaSjSjmbcxMapper, O
|
||||
|
||||
@Override
|
||||
public void exportData(File file, String otaId, String cut) throws Exception {
|
||||
|
||||
OtaBaSjSjmbcx cx = this.getByOtaId(otaId);
|
||||
if (ObjectUtils.isNotEmpty(cx)) {
|
||||
Workbook wb = ImportFileUtil.readExcel(file);
|
||||
Sheet s = wb.getSheetAt(0);
|
||||
Row row = s.getRow(1);
|
||||
Cell cell = row.getCell(2);
|
||||
cell.setCellValue(cx.getBabh());
|
||||
row = s.getRow(2);
|
||||
cell = row.getCell(2);
|
||||
cell.setCellValue(cx.getBapc());
|
||||
wb.write(new FileOutputStream(file));
|
||||
wb.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -9741,7 +9741,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
params.put("Initiator",projectLibraryBase.getStudioEngineerName());
|
||||
|
||||
|
||||
this.sendMessageByTemplateId(TemplateInfoEnum2.REGULATION_LIST_RELEASE2.getValue(),params);
|
||||
this.sendMessageByTemplateId(TemplateInfoEnum2.REGULATION_TASK_CONFIRMATION1.getValue(),params);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9844,7 +9844,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
params.put("hrefFeishu_EN",(String)hrefFeishuMap.get("hrefFeishu_EN"));
|
||||
params.put("Initiator",projectLibraryBase.getStudioEngineerName());
|
||||
|
||||
this.sendMessageByTemplateId(TemplateInfoEnum2.REGULATION_LIST_RELEASE2.getValue(),params);
|
||||
this.sendMessageByTemplateId(TemplateInfoEnum2.REGULATION_TASK_CONFIRMATION1.getValue(),params);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1739,5 +1739,7 @@ module.exports = {
|
||||
verifyConformanceConfirmation:'Verify conformance confirmation',
|
||||
designConformanceVerification:'Design conformance verification',
|
||||
nomorethan:'No more than 10',
|
||||
uploadedfilelarger:'The uploaded file is larger than 50 MB',
|
||||
marketCertificationList:'Market Certification List',
|
||||
uploadedfilelarger:'The uploaded file is larger than',
|
||||
}
|
||||
@@ -604,7 +604,7 @@ module.exports = {
|
||||
StandardBreakdown: '标准分解单',
|
||||
searchInResults: '结果中检索',
|
||||
searchContent: '搜索内容',
|
||||
viewFile: '查看文件',
|
||||
viewFile: '查看已上传文件',
|
||||
fileFormatIncorrect: '文件格式不正确',
|
||||
pleaseUploadFile: '请上传文件',
|
||||
documentSplitList: '文档拆分列表展示',
|
||||
@@ -1842,4 +1842,6 @@ module.exports = {
|
||||
designConformanceVerification:'设计符合性确认',
|
||||
nomorethan:'不能超过10个',
|
||||
uploadedfilelarger:'文件大于',
|
||||
uploadedfilelarger:'文件大于50M',
|
||||
marketCertificationList:'市场认证清单',
|
||||
}
|
||||
+7
@@ -170,6 +170,7 @@
|
||||
import { getAction, postAction, deleteAction,downloadFile } from '@/api/manage'
|
||||
import ImportFile from '@/components/ImportFileData/index'
|
||||
import uploadFile from '@/components/uploadFile/file'
|
||||
import { result } from 'lodash'
|
||||
|
||||
export default {
|
||||
name: 'beupgradedonline',
|
||||
@@ -375,6 +376,9 @@ this.$forceUpdate()
|
||||
}
|
||||
getAction('/ota/otaBaSjSjyxpg/queryByOtaId',{otaIdT:otaIdT,otaId:otaId}).then(res=>{
|
||||
if(res.code==200){
|
||||
if(res.result.zxsj==0){
|
||||
res.result.zxsj=null
|
||||
}
|
||||
this.form=res.result==null ? {
|
||||
sjmd:'',
|
||||
// fhgd:1,
|
||||
@@ -395,6 +399,9 @@ this.$forceUpdate()
|
||||
otaId=''
|
||||
}
|
||||
this.form.otaId=otaId
|
||||
if(this.form.zxsj==undefined){
|
||||
this.form.zxsj=0
|
||||
}
|
||||
postAction('/ota/otaBaSjSjyxpg/add',this.form).then(res=>{
|
||||
if(res.code==200){
|
||||
this.$message.success(this.$t('SavedSuccessfully'))
|
||||
|
||||
+2
-2
@@ -316,8 +316,8 @@ import ImportFile from '@/components/ImportFileData/index'
|
||||
this.form.cpmc = item.cpmc
|
||||
this.form.cpxh = item.cpxh
|
||||
getAction('/ota/otaBaCxJbxx/queryByOtaId',{otaIdT:'',otaId:item.id}).then(res=>{
|
||||
this.form.dllx1=res.result.dllx1
|
||||
this.form.dllx2=res.result.dllx2
|
||||
this.form.dllx1=res.result.dllx1 == null?undefined:res.result.dllx1
|
||||
this.form.dllx2=res.result.dllx2== null?undefined:res.result.dllx2
|
||||
this.$forceUpdate()
|
||||
})
|
||||
}
|
||||
|
||||
+28
-2
@@ -156,7 +156,7 @@
|
||||
<span class="title-text-text plus3" :title="$t('Vehicledynamictype')">{{$t('Vehicledynamictype')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" style="width: 38%">
|
||||
<a-select class="box-input" v-model="form.dllx1" :disabled="disabled" :placeholder="$t('PleaseSelect')" @change="changeSelect($event,target)">
|
||||
<a-select class="box-input" v-model="form.dllx1" allowClear :disabled="disabled" :placeholder="$t('PleaseSelect')" @change="changeSelect($event,target)">
|
||||
<a-select-option v-for="(item, key) in projectNameList1"
|
||||
:key="key"
|
||||
:value="item">
|
||||
@@ -165,7 +165,7 @@
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
<a-form-model-item class="itemModel" style="width: 40%;margin-left:20px">
|
||||
<a-select v-model="form.dllx2" class="box-input" :disabled="disabled" :placeholder="$t('PleaseSelect')" @change="update">
|
||||
<a-select v-model="form.dllx2" class="box-input" allowClear :disabled="disabled" :placeholder="$t('PleaseSelect')" @change="update">
|
||||
<a-select-option v-for="(item, key) in projectNameList2"
|
||||
:key="key"
|
||||
:value="item">
|
||||
@@ -326,6 +326,7 @@ import { message } from 'ant-design-vue'
|
||||
this.form.cpxh=res.result.cpxh
|
||||
this.form.txzd=res.result.txzd
|
||||
this.form.txzd=res.result.txzd
|
||||
this.form.cdotasj=res.result.cdotasj
|
||||
this.form.id=res.result.id
|
||||
if(this.$route.query.type == 1 && res.result.cxmb == null){
|
||||
this.form.cxmb = this.form.ggpc+'-'+ this.form.cpmc+'-'+this.form.cpxh
|
||||
@@ -338,8 +339,14 @@ import { message } from 'ant-design-vue'
|
||||
if(res.result.dllx2 == null){
|
||||
res.result.dllx2 = undefined
|
||||
}
|
||||
|
||||
if(res.result.cplb == null){
|
||||
res.result.cplb = undefined
|
||||
}
|
||||
this.form.dllx1=res.result.dllx1
|
||||
this.form.dllx2=res.result.dllx2
|
||||
this.form.cplb=res.result.cplb
|
||||
this.getDllx2()
|
||||
// this.changeSelect()
|
||||
this.$forceUpdate()
|
||||
}
|
||||
@@ -366,6 +373,7 @@ import { message } from 'ant-design-vue'
|
||||
if(otaId==null || otaId == undefined){
|
||||
otaId=''
|
||||
}
|
||||
|
||||
postAction('/ota/otaBaCxJbxx/add',{ otaId:otaId,...this.form}).then( res => {
|
||||
if(res.code == 200){
|
||||
localStorage.setItem('otaId', res.result.otaId)
|
||||
@@ -387,6 +395,24 @@ import { message } from 'ant-design-vue'
|
||||
}else{
|
||||
this. projectNameList2=['其他']
|
||||
}
|
||||
},
|
||||
getDllx2(){
|
||||
if(this.form.dllx1==undefined){
|
||||
this.projectNameList=[]
|
||||
}
|
||||
if(this.form.dllx1=='传统动力汽车'){
|
||||
this. projectNameList2=['汽油','柴油']
|
||||
}
|
||||
if(this.form.dllx1=='节能汽车'){
|
||||
this. projectNameList2=['混合动力','天然气','甲醇','其他']
|
||||
}
|
||||
if(this.form.dllx1=='新能源汽车'){
|
||||
this. projectNameList2=['纯电动','插电式混合动力','燃料电池']
|
||||
}
|
||||
if(this.form.dllx1=='其他'){
|
||||
this. projectNameList2=['其他']
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
update(){
|
||||
|
||||
@@ -866,9 +866,9 @@ export default {
|
||||
downloadFile('ota/otaBaCxList/exportTemplate', '驾驶辅助系统基础备案参数' + '.zip', {})
|
||||
},
|
||||
getData(){
|
||||
if(this.$route.query.type == 1){
|
||||
return
|
||||
}
|
||||
// if(this.$route.query.type == 1){
|
||||
// return
|
||||
// }
|
||||
let otaIdT=localStorage.getItem('otaIdT')
|
||||
if(otaIdT==null){
|
||||
otaIdT=''
|
||||
|
||||
+2
-2
@@ -253,7 +253,7 @@ import ImportFile from '@/components/ImportFileData/index'
|
||||
this.$message.success(this.$t('SavedSuccessfully'))
|
||||
this.getData()
|
||||
}
|
||||
|
||||
|
||||
})
|
||||
},
|
||||
last(){
|
||||
@@ -284,7 +284,7 @@ import ImportFile from '@/components/ImportFileData/index'
|
||||
}
|
||||
|
||||
button{
|
||||
width: 89px;
|
||||
//width: 89px;
|
||||
border-radius: 4px;
|
||||
cursor: pointer;
|
||||
background: #00B3BE;
|
||||
|
||||
+2
-2
@@ -299,7 +299,7 @@ export default {
|
||||
this.$message.success(this.$t('SavedSuccessfully'))
|
||||
this.getData()
|
||||
}
|
||||
|
||||
|
||||
})
|
||||
},
|
||||
last() {
|
||||
@@ -323,7 +323,7 @@ export default {
|
||||
}
|
||||
|
||||
button {
|
||||
width: 89px;
|
||||
/*width: 89px;*/
|
||||
border-radius: 4px;
|
||||
cursor: pointer;
|
||||
background: #00B3BE;
|
||||
|
||||
@@ -344,7 +344,8 @@
|
||||
let configDataList = []
|
||||
for (let i = 0; i < selectedRowKeysValue.length; i++) {
|
||||
configDataList.push({
|
||||
id: selectedRowKeysValue[i].id
|
||||
id: selectedRowKeysValue[i].id,
|
||||
remarks:selectedRowKeysValue[i].remarks
|
||||
})
|
||||
if (selectedRowKeysValue[i].configIds && selectedRowKeysValue[i].configIds.length > 0) {
|
||||
for (let j = 0; j < selectedRowKeysValue[i].configIds.length; j++) {
|
||||
|
||||
+4
-4
@@ -15,10 +15,10 @@
|
||||
<a-row :gutter="24">
|
||||
<a-col :md="12" :sm="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('CertificationListName')">
|
||||
<span>{{$t('CertificationListName')}}</span>
|
||||
<div class="title-text" :title="$t('marketCertificationList')">
|
||||
<span>{{$t('marketCertificationList')}}</span>
|
||||
</div>
|
||||
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('CertificationListName')"
|
||||
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('marketCertificationList')"
|
||||
v-model="queryParam.name"></j-input>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -87,7 +87,7 @@
|
||||
selectedRowKeys: [],
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('CertificationListName'),
|
||||
title: this.$t('marketCertificationList'),
|
||||
dataIndex: 'name',
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
|
||||
@@ -162,7 +162,7 @@
|
||||
<div @click="processResetClick"
|
||||
v-if="roleSwitchingCode == 0 || roleSwitchingCode == 2"
|
||||
class="operator-text-title">
|
||||
<a-icon type="stop"/>
|
||||
<a-icon type="file-search"/>
|
||||
{{ $t('processReset') }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -242,7 +242,22 @@ export default {
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
this.confirmLoading = false
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
if (res.result && res.result.length > 0) {
|
||||
let detailedWarningList = []
|
||||
res.result.forEach(val => {
|
||||
detailedWarningList.push(
|
||||
< div > { val } < /div>)
|
||||
})
|
||||
this.$warning({
|
||||
content: (
|
||||
< div >
|
||||
{ detailedWarningList }
|
||||
< /div>
|
||||
)
|
||||
})
|
||||
} else {
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
}
|
||||
this.visible = false
|
||||
this.selectedRowKeys = []
|
||||
this.$emit('transferListFormHomo')
|
||||
|
||||
Reference in New Issue
Block a user