diff --git a/jero-boot/db/蔚来标准sql/dev_third_record.sql b/jero-boot/db/蔚来标准sql/dev_third_record.sql index fa55336d4..95420e13b 100644 --- a/jero-boot/db/蔚来标准sql/dev_third_record.sql +++ b/jero-boot/db/蔚来标准sql/dev_third_record.sql @@ -548,4 +548,9 @@ CREATE TABLE `ext_repo_data` ( `file_description` varchar(255) DEFAULT NULL COMMENT '文件说明', `sup_folder` varchar(36) DEFAULT NULL COMMENT '所属文件夹', PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ No newline at end of file +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +-- 参数项收集清单 认证类别取消列表显示 2022-08-02 +UPDATE `laws_weilai`.`onl_cgform_field` +SET `is_show_list` = 0, `update_by` = 'admin', `update_time` = '2022-08-02 09:36:09' +WHERE `id` = '7b8ef9f8da124ed93e5c10a14b903390'; diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java index 85a5f5ed7..18b513804 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsManifestEOServiceImpl.java @@ -652,8 +652,7 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl> listAll = paramsCollectManifestEOMapper.listInfoForExport(paramsCollectManifestEO); - double total = listAll.size(); - + // 循环责任领域,计算每个责任领域中的四种状态数据 dutyTerritoryDictList.forEach(item->{ if (CutEnum.EN.getValue().equals(cut)) { @@ -683,6 +682,7 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl - AND cert_category LIKE CONCAT(CONCAT('%',#{paramsReportDetailEO.certCategory}),'%') + AND + + cert_category LIKE CONCAT(CONCAT('%',#{item}),'%') + AND sdt in @@ -102,7 +105,7 @@ select * from params_report_detail - order by nio_number asc, sync_time desc + order by sync_time desc, nio_number asc \ No newline at end of file diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/report/service/impl/ParamsExportTemplateEOServiceImpl.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/report/service/impl/ParamsExportTemplateEOServiceImpl.java index b53290e5c..c4bdbb34a 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/report/service/impl/ParamsExportTemplateEOServiceImpl.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/report/service/impl/ParamsExportTemplateEOServiceImpl.java @@ -42,10 +42,10 @@ public class ParamsExportTemplateEOServiceImpl extends ServiceImpl allRelevFileList = (List) allParamsInfoList.get(2).get("fileListAll"); if (allRelevFileList != null && !allRelevFileList.isEmpty()) { allRelevFileList = allRelevFileList.stream().distinct().collect(Collectors.toList()); - downLoadFileList(allRelevFileList,fileNowPath + File.separator + "导出文件"); + String exportFile = "导出文件"; + if (CutEnum.EN.getValue().equals(paramsReportDetailVO.getCut())) { + exportFile = "Export file"; + } + downLoadFileList(allRelevFileList,fileNowPath + File.separator + exportFile); } // 拿取模板 @@ -764,7 +785,11 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl allRelevFileList = (List) allParamsInfoList.get(2).get("fileListAll"); if (allRelevFileList != null && !allRelevFileList.isEmpty()) { allRelevFileList = allRelevFileList.stream().distinct().collect(Collectors.toList()); - downLoadFileList(allRelevFileList,fileNowPath + File.separator + "导出文件"); + String exportFile = "导出文件"; + if (CutEnum.EN.getValue().equals(paramsReportDetailVO.getCut())) { + exportFile = "Export file"; + } + downLoadFileList(allRelevFileList,fileNowPath + File.separator + exportFile); } // 拿取模板 @@ -881,7 +910,11 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl import(/* webpackChunkName: "user" */ '@/views/businessSupport/technologyAssessment/components/evaluationResultsClause') }, + { + path: '/problemKnowledgeBaseAdd', + name: 'problemKnowledgeBaseAdd', + component: () => import(/* webpackChunkName: "user" */ '@/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseAdd') + }, + { + path: '/problemKnowledgeBaseRelease', + name: 'problemKnowledgeBaseRelease', + component: () => import(/* webpackChunkName: "user" */ '@/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseRelease') + }, + { + path: '/problemKnowledgeBaseView', + name: 'problemKnowledgeBaseView', + component: () => import(/* webpackChunkName: "user" */ '@/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseView') + }, // { // path: '/ParameterItemCollection', // name: 'ParameterItemCollection', diff --git a/jero-web/src/views/businessSupport/problemKnowledgeBase/components/countryCardList.vue b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/countryCardList.vue new file mode 100644 index 000000000..af3faab72 --- /dev/null +++ b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/countryCardList.vue @@ -0,0 +1,13 @@ + + + + + \ No newline at end of file diff --git a/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseAdd.vue b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseAdd.vue new file mode 100644 index 000000000..2b654d9c4 --- /dev/null +++ b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseAdd.vue @@ -0,0 +1,408 @@ + + + + + \ No newline at end of file diff --git a/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseList.vue b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseList.vue new file mode 100644 index 000000000..a3631bcf8 --- /dev/null +++ b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseList.vue @@ -0,0 +1,335 @@ + + + + + \ No newline at end of file diff --git a/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseRelease.vue b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseRelease.vue new file mode 100644 index 000000000..1cb6d2823 --- /dev/null +++ b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseRelease.vue @@ -0,0 +1,270 @@ + + + + + \ No newline at end of file diff --git a/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseView.vue b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseView.vue new file mode 100644 index 000000000..958c3f3a5 --- /dev/null +++ b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseView.vue @@ -0,0 +1,13 @@ + + + + + \ No newline at end of file diff --git a/jero-web/src/views/businessSupport/problemKnowledgeBase/index.vue b/jero-web/src/views/businessSupport/problemKnowledgeBase/index.vue new file mode 100644 index 000000000..7a4a2757f --- /dev/null +++ b/jero-web/src/views/businessSupport/problemKnowledgeBase/index.vue @@ -0,0 +1,40 @@ + + + + \ No newline at end of file diff --git a/jero-web/src/views/businessSupport/regulationReport/components/modules/defaultTemplate.vue b/jero-web/src/views/businessSupport/regulationReport/components/modules/defaultTemplate.vue index 61e2611e2..f8b17a2ce 100644 --- a/jero-web/src/views/businessSupport/regulationReport/components/modules/defaultTemplate.vue +++ b/jero-web/src/views/businessSupport/regulationReport/components/modules/defaultTemplate.vue @@ -379,6 +379,8 @@ this.formInline = JSON.parse(JSON.stringify(this.formInlineQuery)) if (this.formInline.technologyTerritory) { this.formInline.technologyTerritory = this.formInline.technologyTerritory.split(',') + } else { + this.formInline.technologyTerritory = [] } this.formInline = { ...this.formInline } } else { @@ -396,6 +398,11 @@ this.formInline.titleCn = value.serial_number + ' ' + value.title this.formInline.titleEn = value.serial_number + ' ' + value.title_en this.formInline.technologyTerritory = value.technology_territory_dict + if (this.formInline.technologyTerritory) { + this.formInline.technologyTerritory = this.formInline.technologyTerritory.split(',') + } else { + this.formInline.technologyTerritory = [] + } this.formInline.applyCar = value.shi4_yong4_che1_xing2_dict this.formInline.applyScope = value.shi4_yong4_fan4_wei2_dict this.formInline.state = value.state_dict @@ -406,7 +413,7 @@ var pos = curPath.indexOf(pathname) var localhostPath = curPath.substring(0, pos) this.formInline.link = localhostPath + '/docManage/library/detail?id=' + value.id - this.formInline = {...this.formInline} + this.formInline = { ...this.formInline } }, getSysCategoryTree() { getAction('/sys/category/getSysCategoryTree', {}).then((res) => { diff --git a/jero-web/src/views/businessSupport/regulationReport/components/modules/fillTable.vue b/jero-web/src/views/businessSupport/regulationReport/components/modules/fillTable.vue index 7d2abf4fb..a93e3f426 100644 --- a/jero-web/src/views/businessSupport/regulationReport/components/modules/fillTable.vue +++ b/jero-web/src/views/businessSupport/regulationReport/components/modules/fillTable.vue @@ -192,6 +192,10 @@ }) }, deleteLib(val) { + if (val.children && val.children.length > 0) { + this.$message.warning(this.$t('thereWhichCannotDeleted')) + return + } let _this = this this.$confirm({ content: _this.$t('ConfirmDelete'), diff --git a/jero-web/src/views/businessSupport/regulationReport/components/modules/fillTableAdd.vue b/jero-web/src/views/businessSupport/regulationReport/components/modules/fillTableAdd.vue index d33391169..15940fc5e 100644 --- a/jero-web/src/views/businessSupport/regulationReport/components/modules/fillTableAdd.vue +++ b/jero-web/src/views/businessSupport/regulationReport/components/modules/fillTableAdd.vue @@ -14,12 +14,13 @@
- {{$t('chineseTitle')}} + * + {{$t('chineseTitle')}}
- +
@@ -27,11 +28,12 @@
+ * {{$t('englishTitle')}}
- +
@@ -77,7 +79,32 @@ visible: false, confirmLoading: false, formInline: {}, - rules: {}, + rules: { + titleCn: [ + { + required: true, + message: this.$t('chineseTitle') + this.$t('cannotEmpty'), + trigger: 'blur' + }, + { + max: 100, + message: this.$t('chineseTitle') + this.$t('cannotExceed') + 100 + this.$t('Characters'), + trigger: 'blur' + } + ], + titleEn: [ + { + required: true, + message: this.$t('englishTitle') + this.$t('cannotEmpty'), + trigger: 'blur' + }, + { + max: 100, + message: this.$t('englishTitle') + this.$t('cannotExceed') + 100 + this.$t('Characters'), + trigger: 'blur' + } + ] + }, ParentList: [], title: '', url: { @@ -240,4 +267,9 @@ .formAdd { margin-bottom: 40px; } + + .Required { + color: red; + margin-right: 4px; + } \ No newline at end of file diff --git a/jero-web/src/views/parameter/managementdetails/commponts/conventionalmodle.vue b/jero-web/src/views/parameter/managementdetails/commponts/conventionalmodle.vue index 56a23cacc..ed60ad494 100644 --- a/jero-web/src/views/parameter/managementdetails/commponts/conventionalmodle.vue +++ b/jero-web/src/views/parameter/managementdetails/commponts/conventionalmodle.vue @@ -242,13 +242,20 @@ export default { getAction('sys/dict/getDictItems/cert_category', { }).then((res) => { if (res.success) { let tt = '' + let tten = '' res.result.forEach((item) => { if(item.value == value){ tt=item.title + tten=item.textEn } }) - this.contentListStart = tt - console.log(this.contentListStart) + let long = localStorage.getItem('language') + this.cut = '' + if (long && long === 'zh-cn') { + this.contentListStart = tt + } else if (long && long === 'en-us') { + this.contentListStart = tten + } } }) console.log(value) @@ -268,8 +275,14 @@ export default { query.certCategoryName = this.contentListStart } query.paramsManifestId = this.$route.query.id + let long = localStorage.getItem('language') + if (long && long === 'zh-cn') { + query.exportName = '常规导出' + } else if (long && long === 'en-us') { + query.exportName = 'normal' + } this.confirmLoading = true - downloadFile('report/detail/exportNormal', this.$t('GeneralExportInformation')+'.zip', query) + downloadFile('report/detail/exportNormal', query.exportName+'.zip', query) this.confirmLoading = false } }) diff --git a/jero-web/src/views/parameter/managementdetails/commponts/customexportmodle.vue b/jero-web/src/views/parameter/managementdetails/commponts/customexportmodle.vue index c413fbf9e..466d06588 100644 --- a/jero-web/src/views/parameter/managementdetails/commponts/customexportmodle.vue +++ b/jero-web/src/views/parameter/managementdetails/commponts/customexportmodle.vue @@ -243,8 +243,14 @@ export default { // query.certCategoryName = this.contentListStart // } query.paramsManifestId = this.$route.query.id + let long = localStorage.getItem('language') + if (long && long === 'zh-cn') { + query.exportName = '自定义导出' + } else if (long && long === 'en-us') { + query.exportName = 'custom' + } this.confirmLoading = true - downloadFile('report/detail/exportCustom', this.$t('CustomizeExportInformation')+'.zip', query) + downloadFile('report/detail/exportCustom', query.exportName+'.zip', query) this.confirmLoading = false } }) diff --git a/jero-web/src/views/parameter/managementdetails/index.vue b/jero-web/src/views/parameter/managementdetails/index.vue index ac2fd70f2..47bc18363 100644 --- a/jero-web/src/views/parameter/managementdetails/index.vue +++ b/jero-web/src/views/parameter/managementdetails/index.vue @@ -15,11 +15,11 @@
-
- {{$t('certificationCategory')}} +
+ {{$t('NcertificationCategory')}}
@@ -35,20 +35,20 @@
-
- {{$t('ParameterName')}} +
+ {{$t('NParameterName')}}
-
-
- {{$t('completedBy')}} +
+ {{$t('dre')}}
-
- {{$t('engineeringInterfacePerson')}} +
+ {{$t('sdt')}}
{ if (res.success) { this.confirmLoading = false - this.$message.success(this.$t('OperationSuccessful')) + this.$message.success(res.message) this.visible = false this.$emit('addModelList') } else { - this.$message.warning(this.$t('operationFailed')) + this.$message.warning(res.message) this.confirmLoading = false } }) diff --git a/jero-web/src/views/projectManagement/components/ParameterCollectionEchart.vue b/jero-web/src/views/projectManagement/components/ParameterCollectionEchart.vue index 97d2c7c23..57d5c035c 100644 --- a/jero-web/src/views/projectManagement/components/ParameterCollectionEchart.vue +++ b/jero-web/src/views/projectManagement/components/ParameterCollectionEchart.vue @@ -3,16 +3,16 @@
- + {{ d.label }} - + - + {{$t('Thepercentage')}} @@ -50,7 +50,8 @@ data() { return { queryParam:{ - value:1 + value:1, + ctype:'' }, options:[], collecting:[], @@ -89,36 +90,7 @@ this.submit = res.result.submit ? res.result.submit : [] this.syncReport = res.result.syncReport ? res.result.syncReport : [] this.dutyTerritory = res.result.dutyTerritory ? res.result.dutyTerritory : [] - this.collecting.forEach((item,index) => { - this.collectingpercentage.push(item.percentage) - this.collectingquantity.push(item.quantity) - }) - this.notStart.forEach((item,index) => { - this.notStartpercentage.push(item.percentage) - this.notStartquantity.push(item.quantity) - }) - this.submit.forEach((item,index) => { - this.submitpercentage.push(item.percentage) - this.submitquantity.push(item.quantity) - }) - this.syncReport.forEach((item,index) => { - this.syncReportpercentage.push(item.percentage) - this.syncReportquantity.push(item.quantity) - }) - if(this.queryParam.value = 1){ - this.collectingdata = this.collectingpercentage - this.notStartdata = this.notStartpercentage - this.submitdata = this.submitpercentage - this.syncReportdata = this.syncReportpercentage - }else{ - this.collectingdata = this.collectingquantity - this.notStartdata = this.notStartquantity - this.submitdata = this.submitquantity - this.syncReportdata = this.syncReportquantity - } - setTimeout(() => { this.getEcharts() - },1000) } @@ -136,30 +108,93 @@ }) }, getonChange(value){ + this.collectingpercentage = [] + this.collectingquantity = [] + this.notStartpercentage = [] + this.notStartquantity = [] + this.submitpercentage = [] + this.submitquantity = [] + this.syncReportpercentage = [] + this.syncReportquantity = [] this.getData(value) }, - onChange(){ + onChange(value){ + this.collectingpercentage = [] + this.collectingquantity = [] + this.notStartpercentage = [] + this.notStartquantity = [] + this.submitpercentage = [] + this.submitquantity = [] + this.syncReportpercentage = [] + this.syncReportquantity = [] + this.getEcharts() }, getEcharts(chart, title, color, data, num) { + this.collecting.forEach((item,index) => { + this.collectingpercentage.push(item.percentage) + this.collectingquantity.push(item.quantity) + }) + this.notStart.forEach((item,index) => { + this.notStartpercentage.push(item.percentage) + this.notStartquantity.push(item.quantity) + }) + this.submit.forEach((item,index) => { + this.submitpercentage.push(item.percentage) + this.submitquantity.push(item.quantity) + }) + this.syncReport.forEach((item,index) => { + this.syncReportpercentage.push(item.percentage) + this.syncReportquantity.push(item.quantity) + }) + if(this.queryParam.value == 1){ + this.collectingdata = this.collectingpercentage + this.notStartdata = this.notStartpercentage + this.submitdata = this.submitpercentage + this.syncReportdata = this.syncReportpercentage + }else if(this.queryParam.value == 2){ + this.collectingdata = this.collectingquantity + this.notStartdata = this.notStartquantity + this.submitdata = this.submitquantity + this.syncReportdata = this.syncReportquantity + } var chartDom = document.getElementById('main-left'); var myChart = echarts.init(chartDom); var option; + var option1; let xAxisData = []; // let data1 = []; // let data2 = []; // let data3 = []; // let data4 = []; - this.dutyTerritory.forEach((item,index) => { - xAxisData.push(item); - }) + xAxisData = this.dutyTerritory // data1.push(+(Math.random() * 2).toFixed(2)); // data2.push(+(Math.random() * 100).toFixed(2)); // data3.push(+(Math.random() + 0.3).toFixed(2)); // data4.push(+Math.random().toFixed(2)); - + let yAxis=[]; + let tooltip= {}; + let _this = this + if(this.queryParam.value === 1){ + yAxis = [ + { + type: 'value', + axisLabel: { + show: true, + interval: 'auto', + formatter: '{value} %' + }, + }, + ] + }else{ + yAxis=[ + { + type: 'value', + }, + ]; + } option = { legend: { data: [this.$t('Notatthe'), this.$t('Inthecollection'), this.$t('Submitted'), this.$t('SynchronizedLibrary')], @@ -173,46 +208,70 @@ // dataView: {} // } }, - tooltip: {}, + tooltip: { + trigger:'axis', + // axisPointer: { // 坐标轴指示器,坐标轴触发有效 + // type: 'line'// 默认为直线,可选为:'line' | 'shadow' + // }, + formatter: function (params) { + var html = params[0].name + "
"; + for (var i = 0; i < params.length; i++) { + html += params[i].marker + params[i].seriesName + ":" + params[i].value; + if (_this.queryParam.value == 1) { + html += "%" + "
"; + } + } + return html; + + } + }, xAxis: { data: xAxisData, // name: 'X Axis', - axisLine: { onZero: true }, - splitLine: { show: false }, - splitArea: { show: false } + axisLabel: { + interval: 0, + rotate:25, + // formatter: function(value) { + // return value.split("").join("\n"); + // } + }, + // axisLine: { onZero: true }, + // splitLine: { show: false }, + // splitArea: { show: false } }, - yAxis: {}, + yAxis: yAxis, grid: { - bottom: 100 + left: '10%', + bottom: '15%' }, series: [ { name: this.$t('Notatthe'), type: 'bar', stack: 'one', - barWidth: 30, + barWidth: 40, barGap: '-100%', itemStyle: { color: "#707486", }, - data: this.collectingdata + data: this.notStartdata }, { name: this.$t('Inthecollection'), type: 'bar', stack: 'one', - barWidth: 30, + barWidth: 40, barGap: '-100%', itemStyle: { color: "#00B3BE", }, - data: this.notStartdata + data: this.collectingdata }, { name: this.$t('Submitted'), type: 'bar', stack: 'one', - barWidth: 30, + barWidth: 40, barGap: '-100%', itemStyle: { color: "#26BD4B", @@ -223,7 +282,7 @@ name: this.$t('SynchronizedLibrary'), type: 'bar', stack: 'one', - barWidth: 30, + barWidth: 40, barGap: '-100%', itemStyle: { color: "#E83030", @@ -234,60 +293,20 @@ dataZoom:[ { - - type: 'slider', - - show: false, - - start:0,//默认为0 - - end: 100,//默认为100 - + type: 'slider',//给x轴设置滚动条 + show: true, //flase直接隐藏图形 xAxisIndex: [0], - - handleSize: 0,//滑动条的 左右2个滑动条的大小 - - height: 5,//组件高度 - - bottom: 0,//右边的距离 - - borderColor: "#e3e3e3", - - fillerColor: '#51B7F9', - - borderRadius:10, - - backgroundColor: '#e3e3e3',//两边未选中的滑动条区域的颜色 - - showDataShadow: false,//是否显示数据阴影 默认auto - - showDetail: false,//即拖拽时候是否显示详细数值信息 默认true - - realtime:true, //是否实时更新 - - filterMode: 'filter', - - zlevel:-10, - - }, - //以下重点: 让鼠标滚动从缩放变成移动 - { - - type: 'inside', - - xAxisIndex: [0], - - zoomOnMouseWheel:false, //滚轮不触发缩放 - - moveOnMouseMove:true, //鼠标移动触发平移 - - moveOnMouseWheel:true, //鼠标滚轮触发平移 - - }, + bottom: 0, + height: 20, + showDetail: false, + startValue: 0,//滚动条的起始位置 + endValue: 9 //滚动条的截止位置(按比例分割你的柱状图x轴长度) + } ], }; - option && myChart.setOption(option); + option && myChart.setOption(option, true); + }, mainLeftEcharts(data, color) { this.getEcharts('main-left', this.$t('Parametercollection'), color, data, 1)