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

This commit is contained in:
wangzhijiang
2023-04-16 22:21:44 +08:00
31 changed files with 436 additions and 310 deletions
@@ -17,10 +17,7 @@ import com.jero.modules.ota.utils.ImportFileUtil;
import com.jero.modules.system.service.ISysDictService;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
@@ -871,25 +868,38 @@ public class OtaBaCxJsfzbacsServiceImpl extends ServiceImpl<OtaBaCxJsfzbacsMappe
cell.setCellValue(bass.getEdrScqy());
CellStyle style = wb.createCellStyle();
style.setBorderTop(BorderStyle.THIN);
style.setBorderBottom(BorderStyle.THIN);
style.setBorderLeft(BorderStyle.THIN);
style.setBorderRight(BorderStyle.THIN);
List<OtaBaCxSjmk> sjmkList = OtaBaCxSjmkService.queryByOtaId(otaId);
int startRow = 63;
for (OtaBaCxSjmk sjmk : sjmkList) {
row = s.createRow(startRow);
cell = row.createCell(0);
cell.setCellStyle(style);
cell.setCellValue(sjmk.getBjmc());
cell = row.createCell(1);
cell.setCellStyle(style);
cell.setCellValue(ImportFileUtil.getCellValueHaveOrNot(sjmk.getPzqk()));
cell = row.createCell(2);
cell.setCellStyle(style);
cell.setCellValue(sjmk.getKzqmc());
cell = row.createCell(3);
cell.setCellStyle(style);
cell.setCellValue(sjmk.getYjggxh());
cell = row.createCell(4);
cell.setCellStyle(style);
cell.setCellValue(sjmk.getYjscqy());
cell = row.createCell(5);
cell.setCellStyle(style);
cell.setCellValue(sjmk.getRjbb());
cell = row.createCell(6);
cell.setCellStyle(style);
cell.setCellValue(sjmk.getRjkfqy());
cell = row.createCell(7);
cell.setCellStyle(style);
cell.setCellValue(sjmk.getBzwz());
startRow++;
}
@@ -20,10 +20,7 @@ import com.jero.modules.ota.utils.ImportFileUtil;
import com.jero.modules.system.service.ISysDictService;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
@@ -340,44 +337,65 @@ public class OtaBaCxKsjjsmccsServiceImpl extends ServiceImpl<OtaBaCxKsjjsmccsMap
List<OtaBaCxKsjjsmccs> mccsList = this.getByOtaId(otaId);
Workbook wb = ImportFileUtil.readExcel(file);
Sheet s = wb.getSheetAt(0);
CellStyle style = wb.createCellStyle();
style.setBorderTop(BorderStyle.THIN);
style.setBorderBottom(BorderStyle.THIN);
style.setBorderLeft(BorderStyle.THIN);
style.setBorderRight(BorderStyle.THIN);
int startRow = 3;
for (int i = 0; i < mccsList.size(); i++) {
OtaBaCxKsjjsmccs mccs = mccsList.get(i);
Row row = s.getRow(startRow);
Cell cell = row.createCell(0);
cell.setCellStyle(style);
cell.setCellValue(mccs.getGnmc());
cell = row.createCell(1);
cell.setCellStyle(style);
cell.setCellValue(ImportFileUtil.getCellValueHaveOrNot(mccs.getPzqk()));
cell = row.createCell(2);
cell.setCellStyle(style);
cell.setCellValue(ImportFileUtil.getCellValueYesOrNo(mccs.getSfksj()));
cell = row.createCell(3);
cell.setCellStyle(style);
cell.setCellValue(ComparisonUtil.queryDictTextByKey("driving_automation_level", mccs.getJszdhjb(), sysDictService));
cell = row.createCell(4);
cell.setCellStyle(style);
cell.setCellValue(mccs.getSjggcs());
cell = row.createCell(5);
cell.setCellStyle(style);
cell.setCellValue(mccs.getGnms());
cell = row.createCell(6);
cell.setCellStyle(style);
cell.setCellValue(mccs.getSytj());
cell = row.createCell(7);
cell.setCellStyle(style);
cell.setCellValue(mccs.getKzqmc());
cell = row.createCell(8);
cell.setCellStyle(style);
cell.setCellValue(mccs.getKzqscqy());
cell = row.createCell(9);
cell.setCellStyle(style);
cell.setCellValue(mccs.getKzqxh());
cell = row.createCell(10);
cell.setCellStyle(style);
cell.setCellValue(mccs.getYjbbxx());
cell = row.createCell(11);
cell.setCellStyle(style);
cell.setCellValue(mccs.getRjkfqy());
cell = row.createCell(12);
cell.setCellStyle(style);
cell.setCellValue(mccs.getCzxtbbh());
cell = row.createCell(13);
cell.setCellStyle(style);
cell.setCellValue(mccs.getCsyzsj());
startRow++;
}
Row row = s.createRow(startRow);
Cell cell = row.createCell(0);
cell.setCellStyle(style);
cell.setCellValue("证明材料");
cell = row.createCell(1);
cell.setCellStyle(style);
OtaBaCxList otaBaCxList = otaBaCxListService.queryById(otaId);
if (ObjectUtils.isNotEmpty(otaBaCxList)) {
StringBuilder sb = new StringBuilder();
@@ -20,10 +20,7 @@ import com.jero.modules.ota.utils.ImportFileUtil;
import com.jero.modules.system.service.ISysDictService;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
@@ -414,19 +411,28 @@ public class OtaBaCxKsjxtmccsServiceImpl extends ServiceImpl<OtaBaCxKsjxtmccsMap
List<OtaBaCxKsjxtmccs> mccsList = this.getByOtaId(otaId);
Workbook wb = ImportFileUtil.readExcel(file);
Sheet s = wb.getSheetAt(0);
CellStyle style = wb.createCellStyle();
style.setBorderTop(BorderStyle.THIN);
style.setBorderBottom(BorderStyle.THIN);
style.setBorderLeft(BorderStyle.THIN);
style.setBorderRight(BorderStyle.THIN);
int startRow = 3;
for (OtaBaCxKsjxtmccs mccs : mccsList) {
Row row = s.getRow(startRow);
Cell cell = row.createCell(0);
cell.setCellStyle(style);
cell.setCellValue(mccs.getXtlb());
cell = row.createCell(1);
cell.setCellStyle(style);
cell.setCellValue(ImportFileUtil.getCellValueYesOrNo(mccs.getSfksj()));
cell = row.createCell(2);
cell.setCellStyle(style);
cell.setCellValue(mccs.getSjbgcs());
cell = row.createCell(3);
cell.setCellStyle(style);
StringBuilder sb = new StringBuilder();
String tptStr = mccs.getTpt();
if (StringUtils.isNotEmpty(tptStr)) {
@@ -446,26 +452,37 @@ public class OtaBaCxKsjxtmccsServiceImpl extends ServiceImpl<OtaBaCxKsjxtmccsMap
cell.setCellValue(sb.toString());
}
cell = row.createCell(4);
cell.setCellStyle(style);
cell.setCellValue(mccs.getKzqmc());
cell = row.createCell(5);
cell.setCellStyle(style);
cell.setCellValue(mccs.getAqwzxdj());
cell = row.createCell(6);
cell.setCellStyle(style);
cell.setCellValue(mccs.getKzqscqy());
cell = row.createCell(7);
cell.setCellStyle(style);
cell.setCellValue(mccs.getKzqxh());
cell = row.createCell(8);
cell.setCellStyle(style);
cell.setCellValue(mccs.getYjbbxx());
cell = row.createCell(9);
cell.setCellStyle(style);
cell.setCellValue(mccs.getCsrjbbh());
cell = row.createCell(10);
cell.setCellStyle(style);
cell.setCellValue(mccs.getCsrjbwzsj());
cell = row.createCell(11);
cell.setCellStyle(style);
cell.setCellValue(mccs.getSjsfyx());
cell = row.createCell(12);
cell.setCellStyle(style);
cell.setCellValue(mccs.getCzxtlx());
cell = row.createCell(13);
cell.setCellStyle(style);
cell.setCellValue(mccs.getCzxtscqy());
cell = row.createCell(14);
cell.setCellStyle(style);
cell.setCellValue(mccs.getCzxtbbh());
startRow++;
}
@@ -474,8 +491,10 @@ public class OtaBaCxKsjxtmccsServiceImpl extends ServiceImpl<OtaBaCxKsjxtmccsMap
row = s.createRow(startRow);
}
Cell cell = row.createCell(0);
cell.setCellStyle(style);
cell.setCellValue("证明材料");
cell = row.createCell(1);
cell.setCellStyle(style);
OtaBaCxList otaBaCxList = otaBaCxListService.queryById(otaId);
if (ObjectUtils.isNotEmpty(otaBaCxList)) {
StringBuilder sb = new StringBuilder();
@@ -200,8 +200,8 @@ public class OtaBaSjListServiceImpl extends ServiceImpl<OtaBaSjListMapper, OtaBa
File sjmbcxFile = ImportFileUtil.findFile(exportFile, "升级目标车型.xlsx");
otaBaSjSjmbcxService.exportData(sjmbcxFile, otaId, cut);
File mbclFile = ImportFileUtil.findFile(exportFile, "本次升级涉及的目标车辆.xlsx");
File mbclAttFile = ImportFileUtil.findFoder(exportFile, "本次升级涉及的目标车辆");
File mbclFile = ImportFileUtil.findFile(exportFile, "本次升级的目标车辆.xlsx");
File mbclAttFile = ImportFileUtil.findFoder(exportFile, "本次升级的目标车辆");
otaBaSjSjmbclService.exportData(mbclFile, mbclAttFile, otaId, cut);
@@ -211,10 +211,10 @@ public class OtaBaSjListServiceImpl extends ServiceImpl<OtaBaSjListMapper, OtaBa
File pgAtt2File = ImportFileUtil.findFoder(pgAttFile, "硬件版本号附件");
otaBaSjSjyxpgService.exportData(pgFile, pgAtt1File, pgAtt2File, otaId, cut);
File sjSjxtbhFile = ImportFileUtil.findFile(exportFile, "本次升级的系统名称与变更参数.xlsx");
File sjSjxtbhFile = ImportFileUtil.findFile(exportFile, "本次升级的系统名称与参数变化.xlsx");
otaBaSjSjxtbhService.exportData(sjSjxtbhFile, otaId, cut);
File sjfzbhFile = ImportFileUtil.findFile(exportFile, "本次升级的驾驶辅助功能与参数变化.xlsx");
File sjfzbhFile = ImportFileUtil.findFile(exportFile, "本次升级的驾驶辅助功能名称与参数变化.xlsx");
otaBaSjSjfzbhService.exportData(sjfzbhFile, otaId, cut);
File fsFile = ImportFileUtil.findFile(exportFile, "用户告知内容及方式.xlsx");
@@ -18,10 +18,7 @@ import com.jero.modules.ota.utils.ImportFileUtil;
import com.jero.modules.system.service.ISysDictService;
import com.jero.modules.system.util.StringUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
@@ -219,7 +216,7 @@ public class OtaBaSjSjfzbhServiceImpl extends ServiceImpl<OtaBaSjSjfzbhMapper, O
@Override
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) throws Exception {
ImportFileUtil.exportTemplate(response, templatePath + "本次升级的驾驶辅助功能与参数变化.zip");
ImportFileUtil.exportTemplate(response, templatePath + "本次升级的驾驶辅助功能名称与参数变化.zip");
}
@Override
@@ -232,7 +229,7 @@ public class OtaBaSjSjfzbhServiceImpl extends ServiceImpl<OtaBaSjSjfzbhMapper, O
public void parseFileList(List<File> upLoadFiles, String otaId, String cut, StringBuilder errMsg) throws Exception {
File upFile = null;
for (File f : upLoadFiles) {
if (f.getName().equals("本次升级的驾驶辅助功能与参数变化.xlsx")) {
if (f.getName().equals("本次升级的驾驶辅助功能名称与参数变化.xlsx")) {
upFile = f;
}
}
@@ -297,24 +294,36 @@ public class OtaBaSjSjfzbhServiceImpl extends ServiceImpl<OtaBaSjSjfzbhMapper, O
if (ObjectUtils.isNotEmpty(fzbhList)) {
Workbook wb = ImportFileUtil.readExcel(file);
Sheet s = wb.getSheetAt(0);
CellStyle style = wb.createCellStyle();
style.setBorderTop(BorderStyle.THIN);
style.setBorderBottom(BorderStyle.THIN);
style.setBorderLeft(BorderStyle.THIN);
style.setBorderRight(BorderStyle.THIN);
Row row;
Cell cell;
int start = 4;
for (OtaBaSjSjfzbh bh : fzbhList) {
row = s.createRow(start);
cell = row.createCell(0);
cell.setCellStyle(style);
cell.setCellValue(bh.getGnmc());
cell = row.createCell(1);
cell.setCellStyle(style);
cell.setCellValue(bh.getSjmdlx());
cell = row.createCell(2);
cell.setCellStyle(style);
cell.setCellValue(bh.getSjqbgcs());
cell = row.createCell(3);
cell.setCellStyle(style);
cell.setCellValue(bh.getSjhbgcs());
cell = row.createCell(4);
cell.setCellStyle(style);
cell.setCellValue(bh.getGnbgms());
cell = row.createCell(5);
cell.setCellStyle(style);
cell.setCellValue(bh.getSytjbg());
cell = row.createCell(6);
cell.setCellStyle(style);
cell.setCellValue(bh.getSjsjkzq());
start++;
}
@@ -177,14 +177,14 @@ public class OtaBaSjSjmbclServiceImpl extends ServiceImpl<OtaBaSjSjmbclMapper, O
@Override
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) throws Exception {
ImportFileUtil.exportTemplate(response, templatePath + "本次升级涉及的目标车辆.zip");
ImportFileUtil.exportTemplate(response, templatePath + "本次升级的目标车辆.zip");
}
@Override
public OtaBaSjSjmbcl parseFileList(List<File> upLoadFiles, String otaId, String cut, StringBuilder errMsg) throws Exception {
File upFile = null;
for (File f : upLoadFiles) {
if (f.getName().equals("本次升级涉及的目标车辆.xlsx")) {
if (f.getName().equals("本次升级的目标车辆.xlsx")) {
upFile = f;
}
}
@@ -18,10 +18,8 @@ import com.jero.modules.ota.utils.ImportFileUtil;
import com.jero.modules.system.service.ISysDictService;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.ss.usermodel.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
@@ -199,7 +197,7 @@ public class OtaBaSjSjxtbhServiceImpl extends ServiceImpl<OtaBaSjSjxtbhMapper, O
@Override
public void exportTemplate(HttpServletResponse response, HttpServletRequest request) throws Exception {
ImportFileUtil.exportTemplate(response, templatePath + "本次升级的系统名称与变更参数.zip");
ImportFileUtil.exportTemplate(response, templatePath + "本次升级的系统名称与参数变化.zip");
}
@Override
@@ -212,7 +210,7 @@ public class OtaBaSjSjxtbhServiceImpl extends ServiceImpl<OtaBaSjSjxtbhMapper, O
public void parseFileList(List<File> upLoadFiles, String otaId, String cut, StringBuilder errMsg) throws Exception {
File upFile = null;
for (File f : upLoadFiles) {
if (f.getName().equals("本次升级的系统名称与变更参数.xlsx")) {
if (f.getName().equals("本次升级的系统名称与参数变化.xlsx")) {
upFile = f;
}
}
@@ -290,34 +288,51 @@ public class OtaBaSjSjxtbhServiceImpl extends ServiceImpl<OtaBaSjSjxtbhMapper, O
if (ObjectUtils.isNotEmpty(bhList)) {
Workbook wb = ImportFileUtil.readExcel(file);
Sheet s = wb.getSheetAt(0);
CellStyle style = wb.createCellStyle();
style.setBorderTop(BorderStyle.THIN);
style.setBorderBottom(BorderStyle.THIN);
style.setBorderLeft(BorderStyle.THIN);
style.setBorderRight(BorderStyle.THIN);
Row row;
Cell cell;
int start = 4;
for (OtaBaSjSjxtbh bh : bhList) {
row = s.createRow(start);
cell = row.createCell(0);
cell.setCellStyle(style);
cell.setCellValue(bh.getXtmc());
cell = row.createCell(1);
cell.setCellStyle(style);
cell.setCellValue(bh.getSjqbgcs());
cell = row.createCell(2);
cell.setCellStyle(style);
cell.setCellValue(bh.getSjhbgcs());
cell = row.createCell(3);
cell.setCellStyle(style);
cell.setCellValue(bh.getSjkzqmc());
cell = row.createCell(4);
cell.setCellStyle(style);
cell.setCellValue(bh.getYjbb());
cell = row.createCell(5);
cell.setCellStyle(style);
cell.setCellValue(bh.getSjqrjbb());
cell = row.createCell(6);
cell.setCellStyle(style);
cell.setCellValue(bh.getSjhrjbb());
cell = row.createCell(7);
cell.setCellStyle(style);
cell.setCellValue(bh.getSjqczxt());
cell = row.createCell(8);
cell.setCellStyle(style);
cell.setCellValue(bh.getSjhczxt());
cell = row.createCell(9);
cell.setCellStyle(style);
cell.setCellValue(bh.getSjbyzsj());
cell = row.createCell(10);
cell.setCellStyle(style);
cell.setCellValue(bh.getSjbdx());
cell = row.createCell(11);
cell.setCellStyle(style);
cell.setCellValue(ImportFileUtil.getCellValueYesOrNo(bh.getSfcfsj()));
start++;
}
@@ -515,7 +515,11 @@ public class ImportFileUtil {
// 需要保留原来的文件结构时,需要对空文件夹进行处理
if (KeepDirStructure) {
// 空文件夹的处理
zos.putNextEntry(new ZipEntry(name + "/"));
ZipEntry folderEntry = new ZipEntry(name + "/");
folderEntry.setMethod(ZipEntry.STORED);
folderEntry.setSize(0);
folderEntry.setCrc(0);
zos.putNextEntry(folderEntry);
// 没有文件,不需要文件的copy
zos.closeEntry();
}
@@ -11343,14 +11343,19 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
for (ProjectLawsInventoryEO projectLawsInventoryEO : projectLawsInventoryEOS) {
//未发起或拒绝 可以发起清单确认
boolean checkStatus = (StringUtils.equals(projectLawsInventoryEO.getDesignFlowStatus(),ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue())
||StringUtils.equals(projectLawsInventoryEO.getVerifyFlowStatus(),ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue()));
||StringUtils.equals(projectLawsInventoryEO.getVerifyFlowStatus(),ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue())
||StringUtils.equals(projectLawsInventoryEO.getDesignFlowStatus(),ComplianceFlowStatusEnum.REGULATORY_ENGINEER_RETURNS.getValue())
||StringUtils.equals(projectLawsInventoryEO.getVerifyFlowStatus(),ComplianceFlowStatusEnum.REGULATORY_ENGINEER_RETURNS.getValue())
);
//如果该数据的法规工程师不为空
boolean checkUser = (StringUtils.isNotEmpty(projectLawsInventoryEO.getRegulationOwnerId()));
if(checkStatus && checkUser){
if(StringUtils.equals(projectLawsInventoryEO.getDesignFlowStatus(), ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue())){
if(StringUtils.equals(projectLawsInventoryEO.getDesignFlowStatus(), ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue())
||StringUtils.equals(projectLawsInventoryEO.getDesignFlowStatus(),ComplianceFlowStatusEnum.REGULATORY_ENGINEER_RETURNS.getValue())){
projectLawsInventoryEO.setDesignFlowStatus(ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue());
}
if(StringUtils.equals(projectLawsInventoryEO.getVerifyFlowStatus(), ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue())){
if(StringUtils.equals(projectLawsInventoryEO.getVerifyFlowStatus(), ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue())
||StringUtils.equals(projectLawsInventoryEO.getVerifyFlowStatus(),ComplianceFlowStatusEnum.REGULATORY_ENGINEER_RETURNS.getValue())){
projectLawsInventoryEO.setVerifyFlowStatus(ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue());
}
+5 -2
View File
@@ -1115,7 +1115,7 @@ module.exports = {
requiredParametersEmpty: 'Required parameters cannot be empty',
PleaseTaskConfirmationRejected: 'Please select the data whose list confirmation status is accepted and task confirmation status is not initiated or rejected',
theProjectContactEmpty: 'The project contact person of cannot be empty',
pleaseSelectinitiatedOrRejected: 'Please select the data whose design compliance confirmation process status is List to be Published or whose verification compliance confirmation process status is List to be Published',
pleaseSelectinitiatedOrRejected: 'Please select the data whose design compliance confirmation process status is List Pending Release, Regulatory Engineer Returned or Verification Compliance Confirmation Process status is List Pending Release, Regulatory Engineer Returned',
TheEngineerAndCertification: 'The regulatory engineer of cannot be empty',
pleaseSelectTheDataverificationVerified:'Please select the data whose design compliance confirmation process status is List Pending Verification, Responsible Person Rejected, or Verification Compliance Confirmation process status is List Pending Verification, Responsible Person Rejected',
theResponsiblePersonAndDeadlineClank: 'The responsible person and deadline of cannot be blank',
@@ -1748,7 +1748,7 @@ module.exports = {
databasereportingtime:'Synchronize the database reporting time',
synchronizationtime:'Synchronization time',
listToBeReleased:'List to be released',
listToBeChecked:'List to be checked',
listToBeChecked:'Task to be initiated',
taskToBeConfirmed:'Task to be confirmed',
resultsToBeSubmitted:'Results to be submitted',
resultsToBeReviewed:'Results to be reviewed',
@@ -1787,4 +1787,7 @@ module.exports = {
pleaseSelectRegulatoryCurrentLogin:'Please select Regulatory Engineer as the data for the current login',
cannotSetResponsibilityAreas:'Cannot set an interface person due to different responsibility areas',
lidar:'lidar',
history:'History',
deliveryDate:'Delivery Date',
regulatoryEngineerReturns:'Regulatory engineer returns',
}
+5 -2
View File
@@ -710,7 +710,7 @@ module.exports = {
listConfirmation: '清单确认',
ListConfirmationDeadline: '清单确认截止时间',
dataConfirmation: '请选择清单确认状态为未发起或拒绝的数据,以及法规工程师认证工程师不为空',
pleaseSelectinitiatedOrRejected: '请选择设计符合性确认流程状态为清单待发布或验证符合性确认流程状态为清单待发布的数据',
pleaseSelectinitiatedOrRejected: '请选择设计符合性确认流程状态为清单待发布法规工程师退回或验证符合性确认流程状态为清单待发布法规工程师退回的数据',
pleaseSelectTheDataverificationVerified: '请选择设计符合性确认流程状态为清单待校核责任人拒绝或验证符合性确认流程状态为清单待校核责任人拒绝的数据',
TheEngineerAndCertification: '的法规工程师不能为空',
taskDataConfirmation: '请选择清单确认状态为接受及任务确认状态为未发起或拒绝的数据,以及工程接口人不为空',
@@ -1850,7 +1850,7 @@ module.exports = {
databasereportingtime: '同步上报库时间',
synchronizationtime: '同步时间',
listToBeReleased: '清单待发布',
listToBeChecked: '清单待校核',
listToBeChecked: '任务待发起',
taskToBeConfirmed: '任务待确认',
resultsToBeSubmitted: '结果待提交',
resultsToBeReviewed: '结果待审查',
@@ -1889,4 +1889,7 @@ module.exports = {
pleaseSelectRegulatoryCurrentLogin:'请选择法规工程师为当前登录人的数据',
cannotSetResponsibilityAreas:'所属不同责任领域不能设置接口人',
lidar:'激光雷达',
history:'历史',
deliveryDate:'交付日期',
regulatoryEngineerReturns:'法规工程师退回',
}
@@ -2,7 +2,7 @@
<a-drawer
:title="$t('Transfer')"
:maskClosable="false"
:width="1000"
:width="1100"
placement="right"
:closable="true"
@close="handleCancel"
@@ -45,7 +45,7 @@
<a-table
:columns="columns"
rowKey="id"
:scroll="{x: 800,y:600}"
:scroll="{x: 800,y:'calc(100vh - 330px)'}"
:data-source="dataList"
:pagination="false"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
@@ -95,7 +95,7 @@ export default {
title: this.$t('standard'),
align: 'left',
dataIndex: 'serialNumber',
width: 100,
width: 180,
ellipsis: true,
scopedSlots: { customRender: 'standard' }
},
@@ -103,7 +103,7 @@ export default {
title: this.$t('title'),
align: 'left',
dataIndex: 'title',
width: 100,
width: 180,
ellipsis: true,
scopedSlots: { customRender: 'titleName' }
},
@@ -534,30 +534,30 @@
dataIndex: 'dutyTerritory_dictText',
width: 180
},
{
title: this.$t('regulatoryEngineer'),
align: 'left',
ellipsis: true,
sorter: true,
dataIndex: 'regulationOwnerName',
width: 180
},
{
title: this.$t('certifiedEngineer'),
align: 'left',
ellipsis: true,
sorter: true,
dataIndex: 'homologationEngineerName',
width: 180
},
{
title: this.$t('engineeringInterfacePerson'),
align: 'left',
ellipsis: true,
sorter: true,
dataIndex: 'engineeringInterfacePersonName',
width: 180
},
// {
// title: this.$t('regulatoryEngineer'),
// align: 'left',
// ellipsis: true,
// sorter: true,
// dataIndex: 'regulationOwnerName',
// width: 180
// },
// {
// title: this.$t('certifiedEngineer'),
// align: 'left',
// ellipsis: true,
// sorter: true,
// dataIndex: 'homologationEngineerName',
// width: 180
// },
// {
// title: this.$t('engineeringInterfacePerson'),
// align: 'left',
// ellipsis: true,
// sorter: true,
// dataIndex: 'engineeringInterfacePersonName',
// width: 180
// },
{
title: this.$t('remarks'),
align: 'left',
@@ -801,33 +801,33 @@
key: 15,
moduleFlag: this.$route.query.title == '市场清单详情' ? '虚拟清单详情' : '维护清单'
},
{
sort: '',
name: this.$t('regulatoryEngineer'),
headFieldCn: '法规工程师',
headFieldEn: 'Regulation Engineer',
field: 'regulationOwnerName',
key: 16,
moduleFlag: this.$route.query.title == '市场清单详情' ? '虚拟清单详情' : '维护清单'
},
{
sort: '',
name: this.$t('certifiedEngineer'),
headFieldCn: '认证工程师',
headFieldEn: 'Homo Engineer',
field: 'homologationEngineerName',
key: 17,
moduleFlag: this.$route.query.title == '市场清单详情' ? '虚拟清单详情' : '维护清单'
},
{
sort: '',
name: this.$t('engineeringInterfacePerson'),
headFieldCn: '工程接口人',
headFieldEn: 'Eng. Interface',
field: 'engineeringInterfacePersonName',
key: 18,
moduleFlag: this.$route.query.title == '市场清单详情' ? '虚拟清单详情' : '维护清单'
},
// {
// sort: '',
// name: this.$t('regulatoryEngineer'),
// headFieldCn: '法规工程师',
// headFieldEn: 'Regulation Engineer',
// field: 'regulationOwnerName',
// key: 16,
// moduleFlag: this.$route.query.title == '市场清单详情' ? '虚拟清单详情' : '维护清单'
// },
// {
// sort: '',
// name: this.$t('certifiedEngineer'),
// headFieldCn: '认证工程师',
// headFieldEn: 'Homo Engineer',
// field: 'homologationEngineerName',
// key: 17,
// moduleFlag: this.$route.query.title == '市场清单详情' ? '虚拟清单详情' : '维护清单'
// },
// {
// sort: '',
// name: this.$t('engineeringInterfacePerson'),
// headFieldCn: '工程接口人',
// headFieldEn: 'Eng. Interface',
// field: 'engineeringInterfacePersonName',
// key: 18,
// moduleFlag: this.$route.query.title == '市场清单详情' ? '虚拟清单详情' : '维护清单'
// },
{
sort: '',
name: this.$t('remarks'),
@@ -5,10 +5,10 @@
<a-row :gutter="24">
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('VirtualListName')">
<span>{{$t('VirtualListName')}}</span>
<div class="title-text" :title="$t('marketRegulationList')">
<span>{{$t('marketRegulationList')}}</span>
</div>
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('VirtualListName')"
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('marketRegulationList')"
v-model="queryParam.name"></j-input>
</div>
</a-col>
@@ -54,7 +54,7 @@
size="middle"
:loading="loading"
:pagination="false"
:scroll="{x: '100%'}"
:scroll="{x: '100%',y:'calc(100vh - 300px)'}"
:rowKey="(record)=>JSON.stringify(record)"
:data-source="dataSource"
@change="tableOnChange"
@@ -119,12 +119,12 @@
<div class="box-title-text-add">
<div class="title-text-add">
<span class="Required">*</span>
<span class="title-text-text" :title="$t('VirtualListName')">{{$t('VirtualListName')}}</span>
<span class="title-text-text" :title="$t('marketRegulationList')">{{$t('marketRegulationList')}}</span>
</div>
<a-form-model-item class="itemModel" prop="name">
<a-input class="box-input-add"
v-model.trim="formInline.name"
:placeholder="$t('PleaseEnter')+$t('VirtualListName')"/>
:placeholder="$t('PleaseEnter')+$t('marketRegulationList')"/>
</a-form-model-item>
</div>
</a-col>
@@ -180,12 +180,12 @@
name: [
{
required: true,
message: this.$t('VirtualListName') + this.$t('cannotEmpty'),
message: this.$t('marketRegulationList') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 100,
message: this.$t('VirtualListName') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
message: this.$t('marketRegulationList') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
}
],
@@ -218,7 +218,7 @@
title: this.$t('newlyAdded'),
columns: [
{
title: this.$t('VirtualListName'),
title: this.$t('marketRegulationList'),
align: 'left',
dataIndex: 'name',
width: '40',
@@ -68,139 +68,140 @@
</template>
<script>
import { getAction, postAction, deleteAction } from '@/api/manage'
import moment from 'moment'
import { getAction, postAction, deleteAction } from '@/api/manage'
import moment from 'moment'
export default {
name: 'basicInformation',
components:{
},
data() {
return {
confirmLoading: false,
disabled: false,
queryParam:{
sjjzsj:''
export default {
name: 'basicInformation',
components: {},
data() {
return {
confirmLoading: false,
disabled: false,
queryParam: {
sjjzsj: ''
}
}
}
},
mounted() {
this.getData()
},
methods: {
getData(){
let otaIdT=localStorage.getItem('otaIdT')
if(otaIdT==null){
otaIdT=''
},
mounted() {
this.getData()
},
methods: {
getData() {
let otaIdT = localStorage.getItem('otaIdT')
if (otaIdT == null) {
otaIdT = ''
}
let otaId=localStorage.getItem('otaId')
if(otaId==null){
otaId=''
let otaId = localStorage.getItem('otaId')
if (otaId == null) {
otaId = ''
}
getAction('/ota/otaBaSjQtsjxx/queryByOtaId',{otaIdT:otaIdT,otaId:otaId}).then(res=>{
if(res.code == 200){
this.queryParam= res.result ==null ? {} :res.result
getAction('/ota/otaBaSjQtsjxx/queryByOtaId', { otaIdT: otaIdT, otaId: otaId }).then(res => {
if (res.code == 200) {
this.queryParam = res.result == null ? {} : res.result
}
})
},
save(){
let otaId = localStorage.getItem('otaId')
if(otaId == null || otaId == undefined){
otaId=''
}
this.queryParam.otaId = otaId
postAction('/ota/otaBaSjQtsjxx/add' ,this.queryParam).then(res=>{
if(res.code==200){
this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
},
save() {
let otaId = localStorage.getItem('otaId')
if (otaId == null || otaId == undefined) {
otaId = ''
}
})
},
last(){
this.save()
this.$emit('otherup')
},
dateChange(item) {
this.formInline[item.db_field_name] = this.formInline[item.db_field_name] ? moment(this.formInline[item.db_field_name]).format('YYYY-MM-DD') : ''
},
submit(){
this.$router.push('upgradeactivity')
},
this.queryParam.otaId = otaId
postAction('/ota/otaBaSjQtsjxx/add', this.queryParam).then(res => {
if (res.code == 200) {
this.$message.success(this.$t('SavedSuccessfully'))
this.getData()
}
})
},
last() {
this.save()
this.$emit('otherup')
},
dateChange(item) {
this.formInline[item.db_field_name] = this.formInline[item.db_field_name] ? moment(this.formInline[item.db_field_name]).format('YYYY-MM-DD') : ''
},
submit() {
this.save()
this.$router.push('upgradeactivity')
}
}
}
}
</script>
<style lang="less" scoped>
@import'~@assets/less/common.less';
.box {
height: 500px;
padding: 0 24px 24px 24px;
box-sizing: border-box;
}
@import '~@assets/less/common.less';
.box-title-text-add {
line-height: 1.4;
display: flex;
.box {
height: 500px;
padding: 0 24px 24px 24px;
box-sizing: border-box;
}
}
.box-title-text-add {
line-height: 1.4;
display: flex;
.title-text-add {
width: 114px;
text-align: right;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 42px;
line-height: 42px;
margin-top: 3px;
}
}
.title-text-add-input {
width: 80%;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 42px;
line-height: 42px;
margin-top: 3px;
margin-bottom: 20px;
}
.title-text-add {
width: 114px;
text-align: right;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 42px;
line-height: 42px;
margin-top: 3px;
}
.title-text-text {
margin-top: 9px;
}
.title-text-add-input {
width: 80%;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 42px;
line-height: 42px;
margin-top: 3px;
margin-bottom: 20px;
}
.itemModel {
width: calc(100% - 130px);
display: inline-block;
margin-top: 2px;
}
.title-text-text {
margin-top: 9px;
}
.box-input {
display: inline-block;
width: 100%;
height: 38px;
margin-top: 2px;
}
.itemModel {
width: calc(100% - 130px);
display: inline-block;
margin-top: 2px;
}
.formAdd {
margin: 0 auto;
width: 670px;
}
.box-input {
display: inline-block;
width: 100%;
height: 38px;
margin-top: 2px;
}
.bootom-button{
position: absolute;
bottom: 0px;
left: 40%;
text-align: center!important;
}
.formAdd {
margin: 0 auto;
width: 670px;
}
.bootom-button {
position: absolute;
bottom: 0px;
left: 40%;
text-align: center !important;
}
</style>
@@ -66,7 +66,7 @@
:scroll="{x: '100%',y:'calc(100vh - 300px)'}"
:data-source="dataList"
:pagination="false"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange ,columnTitle:' ' , type:'radio'}"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange ,columnTitle:' '}"
:loading="loading">
</a-table>
</div>
@@ -204,7 +204,13 @@
},
onSelectChange(value, row) {
this.selectedRowKeys = value
if (this.selectedRowKeys.length > 1) {
this.selectedRowKeys.shift()
}
this.selectedRowList = row
if (this.selectedRowList.length > 1) {
this.selectedRowList.shift()
}
},
handleSubmit() {
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
@@ -33,10 +33,10 @@
<a-table
:columns="columns"
rowKey="id"
:scroll="{x: '100%',y:600}"
:scroll="{x: '100%',y:'calc(100vh - 330px)'}"
:data-source="dataList"
:pagination="false"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange,columnTitle:' ' , type:'radio'}"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange,columnTitle:' '}"
:loading="loading">
</a-table>
@@ -87,6 +87,13 @@
dataIndex: 'studioEngineerName',
align: 'left',
ellipsis: true,
width: 140
},
{
title: this.$t('explain'),
dataIndex: 'explanation',
align: 'left',
ellipsis: true,
width: 223
}
],
@@ -45,7 +45,7 @@
<a-table
:columns="columns"
rowKey="id"
:scroll="{x: 800,y:600}"
:scroll="{x: 800,y:'calc(100vh - 330px)'}"
:data-source="dataList"
:pagination="false"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange,columnTitle:'' }"
@@ -292,7 +292,7 @@
</a>
<a class="text-operation"
@click="modifyHistoryClick(record)">
{{ $t('modifyHistory') }}
{{ $t('history') }}
</a>
<a class="text-operation"
v-if="roleSwitchingCode == 0 || roleSwitchingCode == 2"
@@ -662,7 +662,7 @@
title: this.$t('configurationItem'),
align: 'left',
dataIndex: 'configItem',
width: 180,
width: 100,
ellipsis: true
},
{
@@ -778,7 +778,7 @@
title: this.$t('operation'),
align: 'left',
fixed: 'right',
width: 230,
width: localStorage.getItem('language') == 'zh-cn' ? 160 : 180,
scopedSlots: { customRender: 'operation' }
}
],
@@ -211,14 +211,14 @@
<span class="Required"
v-if="!formInline.designDeliverableType.join(',').includes('1645667531513237506')">*</span>
<span class="title-text-text"
:title="$t('cutoffTime')">{{$t('cutoffTime')}}</span>
:title="$t('deliveryDate')">{{$t('deliveryDate')}}</span>
</div>
<a-form-model-item class="itemModel"
:prop="formInline.designDeliverableType.join(',').includes('1645667531513237506')?'':'designDueDate'"
:rules="[{ required: formInline.designDeliverableType.join(',').includes('1645667531513237506')?false:true,
message: $t('cutoffTime') + $t('cannotEmpty'), trigger: 'change'}]">
message: $t('deliveryDate') + $t('cannotEmpty'), trigger: 'change'}]">
<a-date-picker class="box-input"
:placeholder="$t('PleaseSelect')+$t('cutoffTime')"
:placeholder="$t('PleaseSelect')+$t('deliveryDate')"
@change="dateChange({db_field_name:'designDueDate'})"
format="YYYY-MM-DD"
:disabled="isEdit(this.formInline)"
@@ -342,14 +342,14 @@
<span class="Required"
v-if="!formInline.verifyDeliverableType.join(',').includes('1645667531513237506')">*</span>
<span class="title-text-text"
:title="$t('cutoffTime')">{{$t('cutoffTime')}}</span>
:title="$t('deliveryDate')">{{$t('deliveryDate')}}</span>
</div>
<a-form-model-item class="itemModel"
:prop="formInline.verifyDeliverableType.join(',').includes('1645667531513237506')?'':'verifyDueDate'"
:rules="[{ required: formInline.verifyDeliverableType.join(',').includes('1645667531513237506')?false:true,
message: $t('cutoffTime') + $t('cannotEmpty'), trigger: 'change'}]">
message: $t('deliveryDate') + $t('cannotEmpty'), trigger: 'change'}]">
<a-date-picker class="box-input"
:placeholder="$t('PleaseSelect')+$t('cutoffTime')"
:placeholder="$t('PleaseSelect')+$t('deliveryDate')"
@change="dateChange({db_field_name:'verifyDueDate'})"
format="YYYY-MM-DD"
:disabled="isEditVerifi(this.formInline)"
@@ -97,10 +97,10 @@
style="overflow:hidden;margin-bottom: 20px">
<div style="float: left;margin-bottom: 0px;margin-left: 20px">
<!-- 调取-->
<div @click="profileClick" class="operator-text">
<a-icon type="profile"/>
重置流程数据迁移
</div>
<!-- <div @click="profileClick" class="operator-text">-->
<!-- <a-icon type="profile"/>-->
<!-- 重置流程数据迁移-->
<!-- </div>-->
<!-- 调取-->
<div @click="transferClick" class="operator-text" v-if="this.roleSwitchingCode == '0'">
<a-icon type="profile"/>
@@ -291,11 +291,13 @@
<a class="text-operation"
v-if="(
record.verifyFlowStatus == 'List to be released' ||
record.verifyFlowStatus == 'Regulatory engineer returns' ||
record.verifyFlowStatus == 'Compliance' ||
record.verifyFlowStatus == 'Non-Compliance' ||
record.verifyFlowStatus == 'To be tracked' ||
record.verifyFlowStatus == 'NA')
&& (record.designFlowStatus == 'List to be released' ||
record.designFlowStatus == 'Regulatory engineer returns' ||
record.designFlowStatus == 'Compliance' ||
record.designFlowStatus == 'Non-Compliance' ||
record.designFlowStatus == 'To be tracked' ||
@@ -346,6 +348,7 @@
</span>
<span slot="designFlowStatusName" slot-scope="text,result">
<span v-if="result.designFlowStatus == 'List to be released' ||
result.designFlowStatus == 'Regulatory engineer returns' ||
result.designFlowStatus == 'List to be checked'"
:title="text">
{{text}}
@@ -355,7 +358,8 @@
</span>
<span slot="verifyFlowStatusName" slot-scope="text,result">
<span v-if="result.verifyFlowStatus == 'List to be released' ||
result.verifyFlowStatus == 'List to be checked'"
result.verifyFlowStatus == 'Regulatory engineer returns' ||
result.verifyFlowStatus == 'List to be checked'"
:title="text">
{{text}}
</span>
@@ -776,7 +780,7 @@
ellipsis: true
},
{
title: this.$t('TaskCutOffTime'),
title: this.$t('deliveryDate'),
dataIndex: 'designDueDate',
align: 'left',
ellipsis: true,
@@ -822,7 +826,7 @@
sorter: true
},
{
title: this.$t('TaskCutOffTime'),
title: this.$t('deliveryDate'),
dataIndex: 'verifyDueDate',
align: 'left',
ellipsis: true,
@@ -1048,9 +1052,9 @@
},
{
sort: '',
name: this.$t('confirmationOfDesignConformity') + '/' + this.$t('TaskCutOffTime'),
name: this.$t('confirmationOfDesignConformity') + '/' + this.$t('deliveryDate'),
headFieldCn: '截止时间',
headFieldEn: 'Due Date',
headFieldEn: 'Delivery Date',
field: 'designDueDate',
affirmFlag: '1',
key: 23,
@@ -1098,9 +1102,9 @@
},
{
sort: '',
name: this.$t('verificationAndConformityconfirmation') + '/' + this.$t('TaskCutOffTime'),
headFieldCn: '截止时间',
headFieldEn: 'Due Date',
name: this.$t('verificationAndConformityconfirmation') + '/' + this.$t('deliveryDate'),
headFieldCn: '交付日期',
headFieldEn: 'Delivery Date',
field: 'verifyDueDate',
affirmFlag: '3',
key: 33,
@@ -1118,7 +1122,7 @@
},
{
sort: '',
name: this.$t('confirmationOfDesignConformity') + '/' + this.$t('typeOfDeliverables'),
name: this.$t('verificationAndConformityconfirmation') + '/' + this.$t('typeOfDeliverables'),
headFieldCn: '交付物类型',
headFieldEn: 'Deliverable Type',
field: 'verifyDeliverableTypeName',
@@ -1240,6 +1244,11 @@
key: 'List to be released',
label: this.$t('listToBeReleased')
},
{
value: 'Regulatory engineer returns',
key: 'Regulatory engineer returns',
label: this.$t('regulatoryEngineerReturns')
},
{
value: 'Duty Person Rejected',
key: 'Duty Person Rejected',
@@ -1296,6 +1305,11 @@
key: 'List to be released',
label: this.$t('listToBeReleased')
},
{
value: 'Regulatory engineer returns',
key: 'Regulatory engineer returns',
label: this.$t('regulatoryEngineerReturns')
},
{
value: 'Duty Person Rejected',
key: 'Duty Person Rejected',
@@ -1543,7 +1557,7 @@
designFlowStatusClick(row, name) {
let query = {}
let TaskKey = ''
if (name == this.$t('designComplianceReview')) {
if (name == this.$t('designComplianceProcess')) {
if (row.designFlowStatus == 'Task to be confirmed' || row.designFlowStatus == 'Duty Person Rejected') {
TaskKey = 'zrrqr'
} else if (row.designFlowStatus == 'Results to be submitted') {
@@ -1749,9 +1763,9 @@
}
}
}
if (!isTrue){
this.$refs.batSettingRef.edit(JSON.parse(JSON.stringify(this.selectedRowKeys)), code,content[0])
}else{
if (!isTrue) {
this.$refs.batSettingRef.edit(JSON.parse(JSON.stringify(this.selectedRowKeys)), code, content[0])
} else {
this.$refs.batSettingRef.edit(JSON.parse(JSON.stringify(this.selectedRowKeys)), code)
}
} else {
@@ -2369,7 +2383,7 @@
if (this.columnsAll[j].children && this.columnsAll[j].children.length > 0) {
for (let k = 0; k < this.columnsAll[j].children.length; k++) {
for (let l = 0; l < this.column[i].children.length; l++) {
if (this.columnsAll[j].children[k].title == this.column[i].children[l].title) {
if (this.columnsAll[j].children[k].dataIndex == this.column[i].children[l].dataIndex) {
this.columnsAll[j].children[k] = this.column[i].children[l]
}
}
@@ -2381,7 +2395,7 @@
if (this.columnsAll[j].children && this.columnsAll[j].children.length > 0) {
for (let k = 0; k < this.columnsAll[j].children.length; k++) {
for (let l = 0; l < this.column[i].children.length; l++) {
if (this.columnsAll[j].children[k].title == this.column[i].children[l].title) {
if (this.columnsAll[j].children[k].dataIndex == this.column[i].children[l].dataIndex) {
this.columnsAll[j].children[k] = this.column[i].children[l]
}
}
@@ -2475,7 +2489,10 @@
}
}
for (let i = 0; i < dataSource.length; i++) {
if (dataSource[i].verifyFlowStatus == 'List to be released' || dataSource[i].designFlowStatus == 'List to be released') {
if (dataSource[i].verifyFlowStatus == 'List to be released' ||
dataSource[i].verifyFlowStatus == 'Regulatory engineer returns' ||
dataSource[i].designFlowStatus == 'List to be released' ||
dataSource[i].designFlowStatus == 'Regulatory engineer returns') {
if (dataSource[i].regulationOwnerId) {
this.detailedSuccessList.push(dataSource[i])
} else {
@@ -2965,28 +2982,28 @@
download(item) {
downloadFile('/sys/common/downLoadFile', item.fileName, { id: item.id, userName: this.userInfo().username })
},
profileClick() {
let _this = this
this.$confirm({
width: 760,
content: _this.$t('NoteConfirmTheChange'),
onOk() {
let idList = JSON.parse(JSON.stringify(_this.selectedRowKeys))
postAction('/project/projectLawsInventoryEO/resetFlowTemp', {
ids: idList.join(','),
projectLibraryId: _this.$route.query.id
}).then((res) => {
if (res.success) {
_this.$message.success(_this.$t('OperationSuccessful'))
_this.selectedRowKeys = []
_this.getList()
} else {
_this.$message.warning(_this.$t('operationFailed'))
}
})
}
})
}
// profileClick() {
// let _this = this
// this.$confirm({
// width: 760,
// content: _this.$t('NoteConfirmTheChange'),
// onOk() {
// let idList = JSON.parse(JSON.stringify(_this.selectedRowKeys))
// postAction('/project/projectLawsInventoryEO/resetFlowTemp', {
// ids: idList.join(','),
// projectLibraryId: _this.$route.query.id
// }).then((res) => {
// if (res.success) {
// _this.$message.success(_this.$t('OperationSuccessful'))
// _this.selectedRowKeys = []
// _this.getList()
// } else {
// _this.$message.warning(_this.$t('operationFailed'))
// }
// })
// }
// })
// }
}
}
</script>
@@ -2,7 +2,7 @@
<a-drawer
:title="$t('Transfer')"
:maskClosable="false"
:width="1000"
:width="1100"
placement="right"
:closable="true"
@close="handleCancel"
@@ -45,7 +45,7 @@
<a-table
:columns="columns"
rowKey="id"
:scroll="{x: 800,y:600}"
:scroll="{x: 800,y:'calc(100vh - 330px)'}"
:data-source="dataList"
:pagination="false"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
@@ -94,7 +94,7 @@ export default {
title: this.$t('standard'),
align: 'left',
dataIndex: 'serialNumber',
width: 100,
width: 180,
fixed: 'left',
ellipsis: true,
scopedSlots: { customRender: 'standard' }
@@ -103,7 +103,7 @@ export default {
title: this.$t('title'),
align: 'left',
dataIndex: 'title',
width: 100,
width: 180,
fixed: 'left',
ellipsis: true,
scopedSlots: { customRender: 'titleName' }
@@ -69,7 +69,7 @@
dataIndex: 'projectName',
scopedSlots: { customRender: 'RelatedItems' },
ellipsis: true,
width: 300
width: 200
},
{
title: this.$t('standardInformation'),
@@ -77,7 +77,7 @@
dataIndex: 'standardInfo',
scopedSlots: { customRender: 'standardInformation' },
ellipsis: true,
width: 300
width: 200
},
{
title: this.$t('ProcessType'),
@@ -122,7 +122,7 @@
dataIndex: 'endTime',
ellipsis: true,
sorter: true,
width: 108
width: 100
},
// {
// title: this.$t('taskStatus'),
@@ -180,7 +180,7 @@
width: 120
},
{
title: this.$t('closingDate'),
title: this.$t('deliveryDate'),
align: 'left',
dataIndex: 'endTime',
ellipsis: true,
@@ -81,7 +81,7 @@
dataIndex: 'projectName',
ellipsis: true,
scopedSlots: { customRender: 'RelatedItems' },
width: 300
width: 200
},
{
title: this.$t('standardInformation'),
@@ -89,7 +89,7 @@
dataIndex: 'standardInfo',
ellipsis: true,
scopedSlots: { customRender: 'standardInformation' },
width: 300
width: 200
},
{
title: this.$t('ProcessType'),
@@ -126,7 +126,7 @@
align: 'left',
dataIndex: 'endTime',
ellipsis: true,
width: 172,
width: 100,
sorter: true,
scopedSlots: { customRender: 'endTime' }
},
@@ -11,10 +11,6 @@
style="height: 100%;overflow: auto;margin-bottom: 436px;">
<JLoading :loading="loading">{{textLoading}}</JLoading>
<a-button style="float: right;" @click="referenceDeliverablesClick"
v-if="this.queryData.isDisplay && (queryData.TaskKey == 'zrrtjjfw' || queryData.TaskKey == 'dezrrtjjfw')"
type="primary">{{$t('referenceDeliverables')}}
</a-button>
<a-icon v-if="this.queryData.isDisplay"
class="questionClass"
:title="queryData.flowType == '2' ? this.$t('checkRegulatoryCompletedBefore') : this.$t('checkVerificationResultsBeforeMP')"
@@ -46,6 +42,10 @@
<!--:class="{'drawer-review':isDrawerClass,
'drawer-review-One':!isDrawerClass}"-->
<div v-if="this.queryData.isDisplay" class="drawer-review">
<a-button style="float: right;" @click="referenceDeliverablesClick"
v-if="this.queryData.isDisplay && (queryData.TaskKey == 'zrrtjjfw' || queryData.TaskKey == 'dezrrtjjfw')"
type="primary">{{$t('referenceDeliverables')}}
</a-button>
<reviewedByThePersonInCharge
v-if="isDisplay"
ref="reviewedByThePersonInChargeRef"
@@ -221,7 +221,7 @@
value: this.queryData.personLiable
},
{
title: this.$t('cutoffTime'),
title: this.$t('deliveryDate'),
value: this.queryData.DueDate
},
{
@@ -74,7 +74,7 @@
dataIndex: 'projectName',
ellipsis: true,
scopedSlots: { customRender: 'RelatedItems' },
width: 300
width: 200
},
{
title: this.$t('standardInformation'),
@@ -82,7 +82,7 @@
dataIndex: 'standardInfo',
ellipsis: true,
scopedSlots: { customRender: 'standardInformation' },
width: 300
width: 200
},
{
title: this.$t('ProcessType'),
@@ -120,7 +120,7 @@
dataIndex: 'endTime',
ellipsis: true,
sorter: true,
width: 108
width: 100
},
// {
// title: this.$t('taskStatus'),
@@ -33,10 +33,10 @@
<a-table
:columns="columns"
rowKey="id"
:scroll="{x: '100%',y:600}"
:scroll="{x: '100%',y:'calc(100vh - 330px)'}"
:data-source="dataList"
:pagination="false"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange,columnTitle:' ' , type:'radio'}"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange,columnTitle:' '}"
:loading="loading">
</a-table>
@@ -87,6 +87,13 @@
dataIndex: 'studioEngineerName',
align: 'left',
ellipsis: true,
width: 140
},
{
title: this.$t('explain'),
dataIndex: 'explanation',
align: 'left',
ellipsis: true,
width: 223
}
],
@@ -151,6 +158,9 @@
},
onSelectChange(value) {
this.selectedRowKeys = value
if (this.selectedRowKeys.length > 1) {
this.selectedRowKeys.shift()
}
},
handleCancel() {
this.visible = false
@@ -2,8 +2,7 @@
<div class="box">
<div class="box-text">
<div class="header-text">
{{query.TaskKey == 'zrrqr' || query.TaskKey == 'dezrrqr' || query.TaskKey == 'zrrtjjfw' || $route.query.TaskKey
== 'dezrrtjjfw'
{{query.TaskKey == 'zrrqr' || query.TaskKey == 'dezrrqr' || query.TaskKey == 'zrrtjjfw' || query.TaskKey == 'dezrrtjjfw'
? $t('personLiableConfirm'):$t('sponsorReview')}}
</div>
</div>
@@ -23,10 +23,10 @@
</a-col>
<a-col :md="6" :sm="8">
<div class="box-title-text tree-select">
<div class="title-text" :title="$t('taskType')">
<span>{{$t('taskType')}}</span>
<div class="title-text" :title="$t('ProcessType')">
<span>{{$t('ProcessType')}}</span>
</div>
<a-select :placeholder="$t('PleaseSelect')+$t('taskType')"
<a-select :placeholder="$t('PleaseSelect')+$t('ProcessType')"
class="box-input"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
allowClear
@@ -44,10 +44,10 @@
<template v-if="toggleSearchStatus">
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('taskStatus')">
<span>{{$t('taskStatus')}}</span>
<div class="title-text" :title="$t('ProcessStatus')">
<span>{{$t('ProcessStatus')}}</span>
</div>
<a-select :placeholder="$t('PleaseSelect')+$t('taskStatus')"
<a-select :placeholder="$t('PleaseSelect')+$t('ProcessStatus')"
class="box-input"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
allowClear
@@ -5,10 +5,10 @@
<a-row :gutter="24">
<a-col :md="6" :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>
@@ -114,12 +114,12 @@
<div class="title-text-add">
<span class="Required">*</span>
<span class="title-text-text"
:title="$t('CertificationListName')">{{$t('CertificationListName')}}</span>
:title="$t('marketCertificationList')">{{$t('marketCertificationList')}}</span>
</div>
<a-form-model-item class="itemModel" prop="name">
<a-input class="box-input-add"
v-model.trim="formInline.name"
:placeholder="$t('PleaseEnter')+$t('CertificationListName')"/>
:placeholder="$t('PleaseEnter')+$t('marketCertificationList')"/>
</a-form-model-item>
</div>
</a-col>
@@ -167,12 +167,12 @@
name: [
{
required: true,
message: this.$t('CertificationListName') + this.$t('cannotEmpty'),
message: this.$t('marketCertificationList') + this.$t('cannotEmpty'),
trigger: 'blur'
},
{
max: 100,
message: this.$t('CertificationListName') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
message: this.$t('marketCertificationList') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
trigger: 'blur'
}
],
@@ -212,10 +212,10 @@
dataSource: [],
columns: [
{
title: this.$t('CertificationListName'),
title: this.$t('marketCertificationList'),
align: 'left',
dataIndex: 'name',
width: '40%',
width: '40',
ellipsis: true,
scopedSlots: { customRender: 'CertificationListName' }
},