From 859b6676aea85f36aef152ee042d20f567fe9028 Mon Sep 17 00:00:00 2001 From: qq787203167 <787203167@qq.com> Date: Thu, 12 May 2022 11:09:03 +0800 Subject: [PATCH 01/22] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=A6=85=E9=81=93?= =?UTF-8?q?=E5=B7=B2=E7=9F=A5bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/nonConformance.vue | 20 +++++++++++++++++-- .../projectNonConformance/index.vue | 12 +++++------ 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/jero-web/src/views/projectManagement/components/nonConformance.vue b/jero-web/src/views/projectManagement/components/nonConformance.vue index 9e2435171..fb2985fb8 100644 --- a/jero-web/src/views/projectManagement/components/nonConformance.vue +++ b/jero-web/src/views/projectManagement/components/nonConformance.vue @@ -39,6 +39,12 @@ +
+
+ + {{ $t('export') }} +
+
Date: Thu, 12 May 2022 11:13:15 +0800 Subject: [PATCH 02/22] =?UTF-8?q?bug51803+51806=E7=9B=B8=E5=85=B3=E4=BA=BA?= =?UTF-8?q?=E5=91=98=E5=AF=BC=E5=87=BA=E7=9B=B8=E5=85=B3=E9=97=AE=E9=A2=98?= =?UTF-8?q?+51798=E4=BB=BB=E5=8A=A1=E8=AE=A1=E5=88=92=E5=90=8D=E7=A7=B0?= =?UTF-8?q?=E5=90=8C=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProjectRelatedPersonnelController.java | 30 +- .../entity/ProjectRelatedPersonnel.java | 61 +++- .../enums/ProjectTaskPlanningNameEnum.java | 14 +- .../IProjectRelatedPersonnelService.java | 7 +- .../ProjectRelatedPersonnelServiceImpl.java | 291 ++++++++++++++---- 5 files changed, 297 insertions(+), 106 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectRelatedPersonnelController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectRelatedPersonnelController.java index 0aea7c9e9..2d4e90fec 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectRelatedPersonnelController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectRelatedPersonnelController.java @@ -2,11 +2,9 @@ package com.jero.modules.project.controller; import com.jero.common.api.vo.Result; import com.jero.common.aspect.annotation.AutoLog; -import com.jero.common.constant.enums.CutEnum; import com.jero.common.system.base.controller.JeroController; import com.jero.modules.project.entity.ProjectRelatedPersonnel; import com.jero.modules.project.service.IProjectRelatedPersonnelService; -import com.jero.modules.project.util.ExcelLangUtils; import com.jero.modules.system.entity.SysUser; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -15,7 +13,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.MediaType; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -140,18 +137,13 @@ public class ProjectRelatedPersonnelController extends JeroController records = projectRelatedPersonnelService.disposeExportXls(id, projectId); - if (cut.equals(CutEnum.CN.getValue())) { - return projectRelatedPersonnelService.exportDataToXls(request, records, ProjectRelatedPersonnel.class, "相关人员名单", cut); - }else{ - return projectRelatedPersonnelService.exportDataToXls(request, records, ProjectRelatedPersonnel.class, "List of relevant personnel", cut); - } - + List records = projectRelatedPersonnelService.disposeExportXls(id, projectId,cut); + projectRelatedPersonnelService.exportDataToXls(cut,response,request,records); } /** @@ -160,14 +152,8 @@ public class ProjectRelatedPersonnelController extends JeroController queryPersonByProjectId(String projectId, String dutyTerritory); /**处理导出数据*/ - List disposeExportXls(String id,String projectId); + List disposeExportXls(String id,String projectId,String cut); /**导出excel*/ - ModelAndView exportDataToXls(HttpServletRequest request, List dataList, Class clazz, String title,String cut); + void exportDataToXls(String cut, HttpServletResponse response, HttpServletRequest request, List dataList); /**设置导出模板*/ - ModelAndView setExporTemplate(HttpServletRequest request, Class clazz, String title,String cut); + void exportTemplate(ProjectRelatedPersonnel projectRelatedPersonnel, HttpServletResponse response, HttpServletRequest request); Result importExcel(HttpServletRequest request, HttpServletResponse response, Class clazz, String projectId,String cut); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectRelatedPersonnelServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectRelatedPersonnelServiceImpl.java index 99c553c6e..82d0bfe0e 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectRelatedPersonnelServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectRelatedPersonnelServiceImpl.java @@ -1,5 +1,7 @@ package com.jero.modules.project.service.impl; +import cn.afterturn.easypoi.excel.ExcelImportUtil; +import cn.afterturn.easypoi.excel.entity.ImportParams; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -11,7 +13,7 @@ import com.jero.modules.enums.DictCodeEnum; import com.jero.modules.project.entity.ProjectRelatedPersonnel; import com.jero.modules.project.mapper.ProjectRelatedPersonnelMapper; import com.jero.modules.project.service.IProjectRelatedPersonnelService; -import com.jero.modules.project.util.ExcelLangUtils; +import com.jero.modules.system.entity.SysDictItem; import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.mapper.SysDictItemMapper; import com.jero.modules.system.mapper.SysDictMapper; @@ -20,21 +22,28 @@ import com.jero.modules.system.service.ISysDictService; import com.jero.modules.system.service.ISysUserService; import com.jero.modules.system.util.StringUtils; import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.io.IOUtils; +import org.apache.poi.hssf.usermodel.HSSFCellStyle; +import org.apache.poi.hssf.usermodel.HSSFRichTextString; +import org.apache.poi.hssf.usermodel.HSSFSheet; +import org.apache.poi.hssf.usermodel.HSSFWorkbook; +import org.apache.poi.ss.usermodel.Cell; +import org.apache.poi.ss.usermodel.HorizontalAlignment; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.ss.usermodel.VerticalAlignment; +import org.apache.poi.ss.util.CellRangeAddress; import org.apache.shiro.SecurityUtils; -import org.jeecgframework.poi.excel.ExcelImportUtil; -import org.jeecgframework.poi.excel.def.NormalExcelConstants; -import org.jeecgframework.poi.excel.entity.ExportParams; -import org.jeecgframework.poi.excel.entity.ImportParams; -import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; -import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.io.File; import java.io.IOException; +import java.io.OutputStream; import java.util.*; import java.util.stream.Collectors; @@ -62,6 +71,10 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl queryPageList(String projectId) { //查询数据 List result = projectRelatedPersonnelMapper.queryPageList(projectId); + //查标签内容里的责任领域数据 + List sysDictItemValueList = sysDictItemMapper.selectItemValueByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue()); //没有数据->新增所有责任领域,查询 - if(CollectionUtils.isEmpty(result)){ - //查标签内容里的责任领域数据 - List sysDictItemValueList = sysDictItemMapper.selectItemValueByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue()); + if(result.size() disposeExportXls(String id,String projectId){ + public List disposeExportXls(String id,String projectId,String cut){ List records=null; if(StringUtils.isNotBlank(id)) {//多个id @@ -392,9 +406,10 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl idList = Arrays.asList(id.split(",")); - for (String midId : idList) { - records = queryById(midId); - } + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.in("id",idList); + records = list(queryWrapper); + } else {//1个id records = queryById(id); } @@ -402,85 +417,224 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl records,String cut) { + //查标签内容里的责任领域数据 + List sysDictItemValueList = sysDictItemMapper.selectItemsByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue()); + if (CollectionUtils.isNotEmpty(records)) { + List dutyTerritory = new ArrayList<>(); + for (ProjectRelatedPersonnel projectRelatedPersonnel : records) { + if (CutEnum.CN.getValue().equals(cut)) { + dutyTerritory = sysDictItemValueList.stream().filter(f -> f.getItemValue().equals(projectRelatedPersonnel.getDutyTerritory())).map(e -> e.getItemText()).collect(Collectors.toList()); + } else { + dutyTerritory = sysDictItemValueList.stream().filter(f -> f.getItemValue().equals(projectRelatedPersonnel.getDutyTerritory())).map(e -> e.getEnName()).collect(Collectors.toList()); + } + projectRelatedPersonnel.setDutyTerritory(dutyTerritory.get(0)); + } + } + } /** * 根据查到的数据,导出excel * * @param request - */@Override - public ModelAndView exportDataToXls(HttpServletRequest request, List dataList, - Class clazz, String title,String cut) { - // Step.1 组装查询条件 - LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - // Step.2 AutoPoi 导出Excel - ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); - ExportParams exportParams=null; + */ + @Override + public void exportDataToXls(String cut, HttpServletResponse response, HttpServletRequest request, List dataList) { + OutputStream os = null; + HSSFWorkbook workbook = new HSSFWorkbook(); + String fileOriName = "法规清单导入模板.xls"; + String filePath = uploadpath + File.separator + fileOriName; try { - //中英切换 - if(CutEnum.CN.getValue().equals(cut)) { - exportParams=new ExportParams(title , null, title); - mv.addObject(NormalExcelConstants.CLASS, ExcelLangUtils.chooseLang(clazz, CutEnum.CN.getValue())); - } - else { - exportParams=new ExportParams(title , null, title); - mv.addObject(NormalExcelConstants.CLASS, ExcelLangUtils.chooseLang(clazz, CutEnum.EN.getValue())); + String titleOne = ""; + if(CutEnum.CN.getValue().equals(cut)){ + titleOne = "*责任领域,*法规工程师,*工程接口人,*认证工程师,备注"; + }else{ + titleOne = "*Responsible Field,*Regulation Engineer,*Engineering Interface,*Homologation Engineer,Comments"; } - mv.addObject(NormalExcelConstants.FILE_NAME, title); //此处设置的filename无效 ,前端会重更新设置一下 + //创建临时文件夹 + File nowFile = new File(filePath); + if (nowFile.exists()) { + nowFile.delete(); + } + nowFile.mkdirs(); + HSSFSheet sheet = workbook.createSheet("虚拟清单导入模板"); + sheet.setDefaultColumnWidth(16);//列宽 + HSSFCellStyle cellStyle = workbook.createCellStyle(); + cellStyle.setWrapText(true);//自动换行 + cellStyle.setAlignment(HorizontalAlignment.CENTER);//垂直居中 + cellStyle.setVerticalAlignment(VerticalAlignment.CENTER);//水平居中 + HSSFCellStyle cellStyleTemp = workbook.createCellStyle(); + cellStyleTemp.setWrapText(true);//自动换行 - mv.addObject(NormalExcelConstants.PARAMS,exportParams); - mv.addObject(NormalExcelConstants.DATA_LIST, dataList); - return mv; - }catch(Exception e){ - throw new JeroBootException("出现异常,请重新登录"); + int startLine = 0; + int endLine = 4; + //合并单元格 + CellRangeAddress region1 = + new CellRangeAddress(1, 1, startLine, endLine); //参数1:起始行 参数2:终止行 参数3:起始列 参数4:终止列 + sheet.addMergedRegion(region1); + + String explainInfo= null; + + if(CutEnum.CN.getValue().equals(cut)){ + explainInfo = "填写说明\n" + + "1.导入数据从第四行开始\n" + + "2.所有带*号的字段必须填写\n"+ + "3.认证类型,认证级别,实施类别,交付物类型,发起人,责任人,字段是单选属性,必须和系统中的对应字段选项相匹配\n" + + "4.责任领域,字段是多选属性,必须和系统中的对应字段选项相匹配,填写多个时采用英文或中文逗号分割\n" + + "5.编号,子标题,WVTA ID,备注,填写文本内容\n" + + "6.交付物模板字段为文件属性,填写时需要在本文件同级目录下以标准号为名称建立文件夹,并在文件夹下放置文件,假设在AAA标准号下放置了B.docx,则应填写AAA/B.docx"; + }else{ + explainInfo = "filling explanation\n" + + "1.import data starts at the fourth line\n" + + "2.all fields marked with * must be filled in\n"+ + "3.certification type,certification level,implementation category,type of deliverables,initiator,person liable,Fields are radio attributes that must match the corresponding field option in the system\n" + + "4.area of responsibility, field is a multi-select attribute and must match the corresponding field in the system. If multiple fields are filled in, separate them by commas (,)\n" + + "5.serial number,subtitle,WVTA ID,remarks,Fill in the text\n" + + "6.deliverable template,When filling in the field, you need to create a folder in the directory of the same level as the file with the name of the standard number and place the file in the folder. If b. diocx is stored under the AAA standard number, enter AAA/B. diocx"; + } + HSSFRichTextString explain=new HSSFRichTextString(explainInfo); + + //表头 + Row row = sheet.createRow(0);//开始创建标题行 + String[] headerArr = titleOne.split(","); + for (int m = 0; m < headerArr.length; m++) { + row.createCell(m).setCellValue(headerArr[m]); + } + + Row rowExplain = sheet.createRow(1); + short height = (short) (7 * 252); + rowExplain.setHeight((short) height); + Cell cell = rowExplain.createCell(0); + cell.setCellValue(explain); + cell.setCellStyle(cellStyleTemp); + + //设置导出数据 + if(CollectionUtils.isNotEmpty(dataList)) { + for (int j = 2; j < dataList.size()+2; j++) { + Row dataRow = sheet.createRow(j); + dataRow.createCell(0).setCellValue(dataList.get(j - 2).getDutyTerritory()); + dataRow.createCell(1).setCellValue(dataList.get(j - 2).getLawEngineerName()); + dataRow.createCell(2).setCellValue(dataList.get(j - 2).getEngineeringInterfacePersonName()); + dataRow.createCell(3).setCellValue(dataList.get(j - 2).getCertificationEngineerName()); + dataRow.createCell(4).setCellValue(dataList.get(j - 2).getRemark()); + + } + } + response.setHeader("Content-Disposition", + "attachment; filename=\"" + fileOriName + ".xls"); + response.setContentType("application/force-download"); + response.flushBuffer(); + os = response.getOutputStream(); + workbook.write(os); + } catch (Exception e) { + e.printStackTrace(); + throw new JeroBootException("下载文件失败,请重试"); + } finally { + IOUtils.closeQuietly(os); } } + /** * 导出excel模板 * */ @Override - public ModelAndView setExporTemplate(HttpServletRequest request, Class clazz, String title,String cut){ - List records=new ArrayList<>(); -// ProjectRelatedPersonnel projectRelatedPersonnel=new ProjectRelatedPersonnel(); - // Step.1 组装查询条件 - LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - ExportParams exportParams=null; - // Step.2 AutoPoi 导出Excel - ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); + public void exportTemplate(ProjectRelatedPersonnel projectRelatedPersonnel, HttpServletResponse response, HttpServletRequest request) { + OutputStream os = null; + HSSFWorkbook workbook = new HSSFWorkbook(); + String fileOriName = "法规清单导入模板.xls"; + String filePath = uploadpath + File.separator + fileOriName; try { - //中英切换模板 - if(CutEnum.CN.getValue().equals(cut)) { - //projectRelatedPersonnel.setDutyTerritory(ExportTemplateEnum.DUTY_TERRITORY_FIELD_of_PRODUCTION.getName()); - exportParams=new ExportParams(title , null, title); + String titleOne = ""; + if(CutEnum.CN.getValue().equals(projectRelatedPersonnel.getCut())){ + titleOne = "*责任领域,*法规工程师,*工程接口人,*认证工程师,备注"; }else{ - //projectRelatedPersonnel.setDutyTerritory(ExportTemplateEnum.DUTY_TERRITORY_FIELD_of_PRODUCTION.getValue()); - exportParams=new ExportParams(title , null, title); + titleOne = "*Responsible Field,*Regulation Engineer,*Engineering Interface,*Homologation Engineer,Comments"; } - //查标签内容里的责任领域数据 - List dictItemNameList = sysDictMapper.queryDictNameByCode(DictCodeEnum.DUTY_TERRITORY.getValue()); - //新建相关人员表里的责任领域数据 - if (CollectionUtils.isNotEmpty(dictItemNameList)) { - for (String dictItemName : dictItemNameList) { - ProjectRelatedPersonnel projectRelatedPersonnel=new ProjectRelatedPersonnel(); - projectRelatedPersonnel.setDutyTerritory(dictItemName); - records.add(projectRelatedPersonnel); - } + + //创建临时文件夹 + File nowFile = new File(filePath); + if (nowFile.exists()) { + nowFile.delete(); } - mv.addObject(NormalExcelConstants.FILE_NAME, title); //此处设置的filename无效 ,前端会重更新设置一下 - mv.addObject(NormalExcelConstants.CLASS, clazz);//!!!!这里设置中英切换 - mv.addObject(NormalExcelConstants.PARAMS,exportParams); - mv.addObject(NormalExcelConstants.DATA_LIST,records); - return mv; - }catch(Exception e){ - throw new JeroBootException("出现异常,请重新登录"); + nowFile.mkdirs(); + HSSFSheet sheet = workbook.createSheet("虚拟清单导入模板"); + sheet.setDefaultColumnWidth(16);//列宽 + HSSFCellStyle cellStyle = workbook.createCellStyle(); + cellStyle.setWrapText(true);//自动换行 + cellStyle.setAlignment(HorizontalAlignment.CENTER);//垂直居中 + cellStyle.setVerticalAlignment(VerticalAlignment.CENTER);//水平居中 + + HSSFCellStyle cellStyleTemp = workbook.createCellStyle(); + cellStyleTemp.setWrapText(true);//自动换行 + + int startLine = 0; + int endLine = 4; + //合并单元格 + CellRangeAddress region1 = + new CellRangeAddress(1, 1, startLine, endLine); //参数1:起始行 参数2:终止行 参数3:起始列 参数4:终止列 + sheet.addMergedRegion(region1); + + String explainInfo= null; + + if(CutEnum.CN.getValue().equals(projectRelatedPersonnel.getCut())){ + explainInfo = "填写说明\n" + + "1.导入数据从第四行开始\n" + + "2.所有带*号的字段必须填写\n"+ + "3.认证类型,认证级别,实施类别,交付物类型,发起人,责任人,字段是单选属性,必须和系统中的对应字段选项相匹配\n" + + "4.责任领域,字段是多选属性,必须和系统中的对应字段选项相匹配,填写多个时采用英文或中文逗号分割\n" + + "5.编号,子标题,WVTA ID,备注,填写文本内容\n" + + "6.交付物模板字段为文件属性,填写时需要在本文件同级目录下以标准号为名称建立文件夹,并在文件夹下放置文件,假设在AAA标准号下放置了B.docx,则应填写AAA/B.docx"; + }else{ + explainInfo = "filling explanation\n" + + "1.import data starts at the fourth line\n" + + "2.all fields marked with * must be filled in\n"+ + "3.certification type,certification level,implementation category,type of deliverables,initiator,person liable,Fields are radio attributes that must match the corresponding field option in the system\n" + + "4.area of responsibility, field is a multi-select attribute and must match the corresponding field in the system. If multiple fields are filled in, separate them by commas (,)\n" + + "5.serial number,subtitle,WVTA ID,remarks,Fill in the text\n" + + "6.deliverable template,When filling in the field, you need to create a folder in the directory of the same level as the file with the name of the standard number and place the file in the folder. If b. diocx is stored under the AAA standard number, enter AAA/B. diocx"; + } + HSSFRichTextString explain=new HSSFRichTextString(explainInfo); + + //表头 + Row row = sheet.createRow(0);//开始创建标题行 + String[] headerArr = titleOne.split(","); + for (int m = 0; m < headerArr.length; m++) { + row.createCell(m).setCellValue(headerArr[m]); + } + + Row rowExplain = sheet.createRow(1); + short height = (short) (7 * 252); + rowExplain.setHeight((short) height); + Cell cell = rowExplain.createCell(0); + cell.setCellValue(explain); + cell.setCellStyle(cellStyleTemp); + + response.setHeader("Content-Disposition", + "attachment; filename=\"" + fileOriName + ".xls"); + response.setContentType("application/force-download"); + response.flushBuffer(); + os = response.getOutputStream(); + workbook.write(os); + } catch (Exception e) { + e.printStackTrace(); + throw new JeroBootException("下载文件失败,请重试"); + } finally { + IOUtils.closeQuietly(os); } + } + + + + /** * 导入excel数据 * @@ -543,7 +697,6 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl dictItemNameList = sysDictMapper.queryDictNameByCode(DictCodeEnum.DUTY_TERRITORY.getValue()); List sysDictItemValueList = sysDictItemMapper.selectItemValueByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue()); if(!sysDictItemValueList.contains(projectRelatedPersonnel.getDutyTerritory())){ if (CutEnum.CN.getValue().equals(cut)) { @@ -628,7 +781,7 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl engineeringInterfacePersonUsers = new ArrayList<>(); + List engineeringInterfacePersonUsers = new ArrayList<>(); if (StringUtils.isNotBlank(projectRelatedPersonnel.getEngineeringInterfacePersonName())){ List engineeringInterfacePersonNameList = Arrays.asList(projectRelatedPersonnel.getEngineeringInterfacePersonName().split(",")); if (CollectionUtils.isNotEmpty(engineeringInterfacePersonNameList) && StringUtils.isNotBlank(engineeringInterfacePersonNameList.get(0))) { @@ -788,4 +941,6 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl Date: Thu, 12 May 2022 11:16:22 +0800 Subject: [PATCH 03/22] =?UTF-8?q?[add]=20=E6=8E=A5=E5=8F=A3=E5=AF=B9?= =?UTF-8?q?=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/CollectionType/index.vue | 43 +++++++++++++------ 1 file changed, 31 insertions(+), 12 deletions(-) diff --git a/jero-web/src/components/CollectionType/index.vue b/jero-web/src/components/CollectionType/index.vue index d4547b1e1..483e5cd56 100644 --- a/jero-web/src/components/CollectionType/index.vue +++ b/jero-web/src/components/CollectionType/index.vue @@ -46,8 +46,8 @@
- {{ (formInline.fileTemplateConnectId === 'null' || formInline.fileTemplateConnectId === '' || - formInline.fileTemplateConnectId == null) ? $t('clickUpload') : $t('viewUploadedFiles')}} + {{ (item.controlValue === 'null' || item.controlValue === '' || + item.controlValue == null) ? $t('clickUpload') : $t('viewUploadedFiles')}}
@@ -104,8 +104,8 @@
- {{ (formInline.fileTemplateConnectId === 'null' || formInline.fileTemplateConnectId === '' || - formInline.fileTemplateConnectId == null) ? $t('clickUpload') : $t('viewUploadedFiles')}} + {{ (item.controlValue === 'null' || item.controlValue === '' || + item.controlValue == null) ? $t('clickUpload') : $t('viewUploadedFiles')}}
@@ -125,8 +125,8 @@
- {{ (formInline.fileTemplateConnectId === 'null' || formInline.fileTemplateConnectId === '' || - formInline.fileTemplateConnectId == null) ? $t('clickUpload') : $t('viewUploadedFiles')}} + {{ (item.controlValue === 'null' || item.controlValue === '' || + item.controlValue == null) ? $t('clickUpload') : $t('viewUploadedFiles')}}
@@ -146,8 +146,8 @@
- {{ (formInline.fileTemplateConnectId === 'null' || formInline.fileTemplateConnectId === '' || - formInline.fileTemplateConnectId == null) ? $t('clickUpload') : $t('viewUploadedFiles')}} + {{ (item.controlValue === 'null' || item.controlValue === '' || + item.controlValue == null) ? $t('clickUpload') : $t('viewUploadedFiles')}}
@@ -173,8 +173,8 @@
- {{ (formInline.fileTemplateConnectId === 'null' || formInline.fileTemplateConnectId === '' || - formInline.fileTemplateConnectId == null) ? $t('clickUpload') : $t('viewUploadedFiles')}} + {{ (item.controlValue === 'null' || item.controlValue === '' || + item.controlValue == null) ? $t('clickUpload') : $t('viewUploadedFiles')}}
@@ -209,8 +209,27 @@ export default { mounted() { }, methods: { - uploadSuccess() { - console.log('pppp') + uploadSuccess(data) { + let attIdList = [] + if(data && data.length>0){ + data.map(item => { + attIdList.push(item.id || data.name) + }) + this.detailDate.list.forEach((item, index) => { + if(item.type === 'file') { + item.controlValue = attIdList.join(',') + } + }) + /** 赋值给当前对应的表单文件 */ + // this.formInline[this.uploadName] = attIdList.join(',') + // this.formInline = { ...this.formInline } + // console.log('form',this.formInline) + }else{ + // this.formInline[this.uploadName]='' + // this.formInline = { ...this.formInline } + // console.log('form',this.formInline) + + } }, clickButtonToUpload() { this.$refs.uploadFile.visible = true From 8a73500a501fcd376a32b445889c832b240db7e1 Mon Sep 17 00:00:00 2001 From: xiejunyu Date: Thu, 12 May 2022 11:37:34 +0800 Subject: [PATCH 04/22] =?UTF-8?q?bug51773=E7=9B=B8=E5=85=B3=E4=BA=BA?= =?UTF-8?q?=E5=91=98=E8=B4=A3=E4=BB=BB=E9=A2=86=E5=9F=9F=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ProjectRelatedPersonnelServiceImpl.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectRelatedPersonnelServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectRelatedPersonnelServiceImpl.java index 82d0bfe0e..655369505 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectRelatedPersonnelServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectRelatedPersonnelServiceImpl.java @@ -171,15 +171,19 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl queryPageList(String projectId) { //查询数据 List result = projectRelatedPersonnelMapper.queryPageList(projectId); + //查询数据里的责任领域 + List dutyTerritory = result.stream().map(e -> e.getDutyTerritory()).collect(Collectors.toList()); //查标签内容里的责任领域数据 List sysDictItemValueList = sysDictItemMapper.selectItemValueByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue()); //没有数据->新增所有责任领域,查询 - if(result.size() Date: Thu, 12 May 2022 11:41:34 +0800 Subject: [PATCH 05/22] =?UTF-8?q?[add]=20=E6=8E=A5=E5=8F=A3=E5=AF=B9?= =?UTF-8?q?=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/ParameterLibrary/index.vue | 45 +++++++++---------- .../ParameterItemCollectionList.vue | 2 +- 2 files changed, 22 insertions(+), 25 deletions(-) diff --git a/jero-web/src/components/ParameterLibrary/index.vue b/jero-web/src/components/ParameterLibrary/index.vue index 7301d2ed0..25286b1fc 100644 --- a/jero-web/src/components/ParameterLibrary/index.vue +++ b/jero-web/src/components/ParameterLibrary/index.vue @@ -13,13 +13,13 @@ + v-model='form.nioNumber' :placeholder="$t('pleaseEnter')+$t('NiONumber')" /> + v-model='form.paramsName' :placeholder="$t('pleaseEnter')+$t('ParameterName')" /> @@ -31,7 +31,7 @@ - @@ -83,26 +83,24 @@ export default { loading: false, editId: '', columns: [ - // { - // title: this.$t('NiONumber'), - // dataIndex: 'region_dictText', - // key: 'showArea', - // align: 'center', - // ellipsis: true - // }, - // { - // title: this.$t('ParameterName'), - // align: 'center', - // dataIndex: 'paramsTemplateName', - // ellipsis: true - // }, - // { - // title: this.$t('areaOfResponsibility'), - // dataIndex: 'region_dictText', - // key: 'showArea', - // align: 'center', - // ellipsis: true - // } + { + title: this.$t('NiONumber'), + dataIndex: 'nioNumber', + align: 'center', + ellipsis: true + }, + { + title: this.$t('ParameterName'), + align: 'center', + dataIndex: 'paramsName', + ellipsis: true + }, + { + title: this.$t('areaOfResponsibility'), + dataIndex: 'dutyTerritory', + align: 'center', + ellipsis: true + } ], newVisible: false, labelCol: { @@ -152,7 +150,6 @@ export default { getAction(`params/collectManifest/paramsInfoList`, params).then(res => { if (res.success) { this.areaTable = [...res.result] - this.total = res.result.total } }).finally(() => { this.loading = false diff --git a/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue b/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue index fa0dd5be9..e2f7659c2 100644 --- a/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue +++ b/jero-web/src/views/projectManagement/components/ParameterItemCollectionList.vue @@ -294,7 +294,7 @@ export default { content: _this.$t('ConfirmBatchDeletion'), onOk() { axios({ - url: '/jero-boot/params/paramsInfo/deleteBatch', + url: '/jero-boot/params/collectManifest/deleteBatch', method: 'post', data: param, transformRequest: [function (data) { From 1ef960dd7d11aec4fa2cff67f4586326f3e22983 Mon Sep 17 00:00:00 2001 From: xiejunyu Date: Thu, 12 May 2022 11:49:00 +0800 Subject: [PATCH 06/22] =?UTF-8?q?bug51965=20=E5=8F=91=E5=B8=83=E6=9C=AA?= =?UTF-8?q?=E8=A2=AB=E8=AE=A2=E9=98=85=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/DummyInventoryBaseEOServiceImpl.java | 9 --------- 1 file changed, 9 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/impl/DummyInventoryBaseEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/impl/DummyInventoryBaseEOServiceImpl.java index 472632e2e..ba81c316d 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/impl/DummyInventoryBaseEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/impl/DummyInventoryBaseEOServiceImpl.java @@ -628,15 +628,6 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl Date: Thu, 12 May 2022 11:55:44 +0800 Subject: [PATCH 07/22] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=B3=95=E8=A7=84?= =?UTF-8?q?=E6=B8=85=E5=8D=95=E5=9C=A8=E9=A9=B3=E5=9B=9E=E7=9A=84=E6=97=B6?= =?UTF-8?q?=E5=80=99=E5=8A=A0=E4=B8=8A=E9=A9=B3=E5=9B=9E=E8=AF=84=E8=AE=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jero-web/src/common/lang/en-us.js | 1 + jero-web/src/common/lang/zh-cn.js | 1 + .../components/listOfRegulations.vue | 103 +++++++++++++++++- .../components/nonConformance.vue | 2 - 4 files changed, 100 insertions(+), 7 deletions(-) diff --git a/jero-web/src/common/lang/en-us.js b/jero-web/src/common/lang/en-us.js index 1f2e1fe4c..c0af73ec7 100644 --- a/jero-web/src/common/lang/en-us.js +++ b/jero-web/src/common/lang/en-us.js @@ -808,4 +808,5 @@ module.exports = { pleaseConformityVerification:'Please complete the data of Conformity verification', virtualListDetails:'Virtual list details', maintainVirtualList:'Maintain virtual list', + reasonsForRejection:'Reasons for rejection', } \ No newline at end of file diff --git a/jero-web/src/common/lang/zh-cn.js b/jero-web/src/common/lang/zh-cn.js index 121b22236..10d3a802f 100644 --- a/jero-web/src/common/lang/zh-cn.js +++ b/jero-web/src/common/lang/zh-cn.js @@ -813,4 +813,5 @@ module.exports = { pleaseConformityVerification: '请补全验证符合性确认的数据', virtualListDetails:'虚拟清单详情', maintainVirtualList:'维护虚拟清单', + reasonsForRejection:'驳回原因', } \ No newline at end of file diff --git a/jero-web/src/views/projectManagement/components/listOfRegulations.vue b/jero-web/src/views/projectManagement/components/listOfRegulations.vue index 763af7cf3..69c087292 100644 --- a/jero-web/src/views/projectManagement/components/listOfRegulations.vue +++ b/jero-web/src/views/projectManagement/components/listOfRegulations.vue @@ -266,6 +266,35 @@ + + + + +
+
+ * + {{$t('reasonsForRejection')}} +
+ + + +
+
+
+
+
@@ -555,9 +584,21 @@ } ], visibleFile: false, + formInlineComment: {}, + rulesComment: { + commentContent: [ + { + required: true, + message: this.$t('reasonsForRejection') + this.$t('cannotEmpty'), + trigger: 'blur' + } + ] + }, timeName: '', + visibleComment: false, dataSourceFile: [], confirmLoading: false, + confirmLoadingComment: false, queryParamQuery: {}, isDisplay: true, selectedRowKeys: [], @@ -1063,17 +1104,48 @@ this.$confirm({ content: num == 0 ? _this.$t('confirmSubmit') : _this.$t('confirmOverrule'), onOk() { - let selectedRowKeys = JSON.parse(JSON.stringify(_this.selectedRowKeys)) - _this.getRowKeys(selectedRowKeys, function() { - _this.updateStatusBatch(num, selectedRowKeys) - }) + if (num == 0) { + let selectedRowKeys = JSON.parse(JSON.stringify(_this.selectedRowKeys)) + _this.getRowKeys(selectedRowKeys, function() { + _this.updateStatusBatch(num, selectedRowKeys) + }) + } else { + let selectedRowKeys = JSON.parse(JSON.stringify(_this.selectedRowKeys)) + _this.getRowKeys(selectedRowKeys, function() { + _this.visibleComment = true + }) + } } }) } else { this.$message.warning(this.$t('selectLeastOne')) } }, - + handleOkComment() { + this.$refs.ruleFormComment.validate(valid => { + if (valid) { + let url = '/project/projectCommentEO/add' + let query = { + commentContent: this.formInlineComment.commentContent, + projectLibraryId: this.$route.query.id + } + this.confirmLoadingComment = true + let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys)) + this.updateStatusBatch(1, selectedRowKeys) + postAction(url, query).then((res) => { + if (res.success) { + this.visibleComment = false + this.confirmLoadingComment = false + } else { + this.confirmLoadingComment = false + } + }) + } + }) + }, + handleCancelComment() { + this.visibleComment = false + }, handleCancel() { this.formInline = {} this.visible = false @@ -1385,6 +1457,24 @@ color: #040B29; margin-bottom: 22px; } + .itemModelComment{ + width: calc(100% - 64px); + display: inline-block; + margin-top: 2px; + } + .title-text-Comment{ + width: 74px; + 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: 48px; + } \ No newline at end of file diff --git a/jero-web/src/views/projectManagement/components/nonConformance.vue b/jero-web/src/views/projectManagement/components/nonConformance.vue index fb2985fb8..3e6aef24a 100644 --- a/jero-web/src/views/projectManagement/components/nonConformance.vue +++ b/jero-web/src/views/projectManagement/components/nonConformance.vue @@ -150,10 +150,8 @@ this.getList() }, handleExport() { - let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys)) let query = { ...this.queryParam, - ids: selectedRowKeys.join(','), projectLibraryId: this.$route.query.id } downloadFile(this.url.exportData, this.$t('NonConformance') + '.xls', query, this.Deselect) From 702a8a6a0d830dc3701f1440c7f50aeff4deb456 Mon Sep 17 00:00:00 2001 From: qq787203167 <787203167@qq.com> Date: Thu, 12 May 2022 13:41:27 +0800 Subject: [PATCH 08/22] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=9C=AA=E7=AC=A6?= =?UTF-8?q?=E5=90=88=E9=A1=B9=E7=9A=84=E4=BC=A0=E5=8F=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jero-web/src/common/lang/en-us.js | 2 ++ jero-web/src/common/lang/zh-cn.js | 2 ++ .../views/projectManagement/projectNonConformance/index.vue | 4 ++-- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/jero-web/src/common/lang/en-us.js b/jero-web/src/common/lang/en-us.js index c0af73ec7..257d7f8e5 100644 --- a/jero-web/src/common/lang/en-us.js +++ b/jero-web/src/common/lang/en-us.js @@ -809,4 +809,6 @@ module.exports = { virtualListDetails:'Virtual list details', maintainVirtualList:'Maintain virtual list', reasonsForRejection:'Reasons for rejection', + inconformity:'inconformity', + toTrack:'to track', } \ No newline at end of file diff --git a/jero-web/src/common/lang/zh-cn.js b/jero-web/src/common/lang/zh-cn.js index 10d3a802f..1c3fb1d94 100644 --- a/jero-web/src/common/lang/zh-cn.js +++ b/jero-web/src/common/lang/zh-cn.js @@ -814,4 +814,6 @@ module.exports = { virtualListDetails:'虚拟清单详情', maintainVirtualList:'维护虚拟清单', reasonsForRejection:'驳回原因', + inconformity:'不符合', + toTrack:'待追踪' } \ No newline at end of file diff --git a/jero-web/src/views/projectManagement/projectNonConformance/index.vue b/jero-web/src/views/projectManagement/projectNonConformance/index.vue index 040d5edac..245e8a837 100644 --- a/jero-web/src/views/projectManagement/projectNonConformance/index.vue +++ b/jero-web/src/views/projectManagement/projectNonConformance/index.vue @@ -87,12 +87,12 @@ class="box-input" v-model="queryParam.problemType" :placeholder="$t('PleaseSelect')+$t('problemType')"> - + {{ $t('nonConformity') }} - + {{ $t('Tracked') }} From 772aaa5ce56f6d8f7af506eded90b780ccc4ad36 Mon Sep 17 00:00:00 2001 From: wangzhijiang <12345678> Date: Thu, 12 May 2022 14:13:12 +0800 Subject: [PATCH 09/22] =?UTF-8?q?=E6=9E=9A=E4=B8=BE=E7=B1=BB=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E3=80=82=E8=8B=B1=E6=96=87=E5=B1=95=E7=A4=BA=E5=80=BC?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../project/entity/ProjectTaskInventoryEO.java | 4 ++++ .../project/enums/DesignComplianceStatusEnum.java | 6 +++--- .../project/enums/InventoryAffirmStatusEnum.java | 4 ++-- .../modules/project/enums/ReviewResultEnum.java | 14 +++++++------- .../project/enums/TaskAffirmStatusEnum.java | 4 ++-- 5 files changed, 18 insertions(+), 14 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectTaskInventoryEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectTaskInventoryEO.java index 200190b24..345aadffa 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectTaskInventoryEO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/entity/ProjectTaskInventoryEO.java @@ -251,4 +251,8 @@ public class ProjectTaskInventoryEO implements Serializable { private String verifySendMsgFlag; /**验证符合性流程-结束当天发送消息标识0未发 1已发**/ private String verifySendMsgCurrentFlag; + + /**项目状态评估备注**/ + @TableField(exist = false) + private String projectStatusAssessRemark; } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/DesignComplianceStatusEnum.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/DesignComplianceStatusEnum.java index 57d8f8b8b..d3b281492 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/DesignComplianceStatusEnum.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/DesignComplianceStatusEnum.java @@ -7,9 +7,9 @@ import org.apache.commons.lang.StringUtils; * 设计符合性确认流程状态枚举类 */ public enum DesignComplianceStatusEnum { - TO_SUBMIT("待提交","to submit"), - TO_REVIEW("待审查","to review"), - REVIEW_COMPLETED("审查完成","review completed"), + TO_SUBMIT("待提交","To submit"), + TO_REVIEW("待审查","To approve"), + REVIEW_COMPLETED("审查完成","Complete"), ; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/InventoryAffirmStatusEnum.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/InventoryAffirmStatusEnum.java index 7efdb9d2f..b44f8662c 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/InventoryAffirmStatusEnum.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/InventoryAffirmStatusEnum.java @@ -14,8 +14,8 @@ public enum InventoryAffirmStatusEnum { NOT_STARTED("未发起","Not started"), LIST_TO_CONFIRM("待确认","List to confirm"), - ACCEPTED("接受","accepted"), - REJECTED("拒绝","rejected"), + ACCEPTED("接受","Accepted"), + REJECTED("拒绝","Rejected"), ; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/ReviewResultEnum.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/ReviewResultEnum.java index 97b303aad..60d8a7486 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/ReviewResultEnum.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/ReviewResultEnum.java @@ -7,13 +7,13 @@ import com.jero.common.constant.enums.CutEnum; * 审查结果枚举类 */ public enum ReviewResultEnum { - LAUNCH("发起","launch"), - TO_BE_CONFIRMED("待确认","to be confirmed"), - CONFORMITY("符合","conformity"), - INCONFORMITY("不符合","inconformity"), - TO_TRACK("待追踪","to track"), - UNINVOLVED("不涉及","uninvolved"), - TERMINATION_OF_TASK("任务终止","termination of task") + LAUNCH("发起","Launch"), + TO_BE_CONFIRMED("待确认","No rating"), + CONFORMITY("符合","Compliance"), + INCONFORMITY("不符合","Non-Compliance"), + TO_TRACK("待追踪","To be tracked"), + UNINVOLVED("不涉及","NA"), + TERMINATION_OF_TASK("任务终止","Termination of task") ; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/TaskAffirmStatusEnum.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/TaskAffirmStatusEnum.java index 4d1309d57..937ecc88e 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/TaskAffirmStatusEnum.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/enums/TaskAffirmStatusEnum.java @@ -15,8 +15,8 @@ public enum TaskAffirmStatusEnum { */ NOT_STARTED("未发起","Not started"), LIST_TO_CONFIRM("待确认","List to confirm"), - ACCEPTED("接受","accepted"), - REJECTED("拒绝","rejected"), + ACCEPTED("接受","Accepted"), + REJECTED("拒绝","Rejected"), ; From 9b3f5dcd72f75b32896a460c6ead9d4e8f230e75 Mon Sep 17 00:00:00 2001 From: qq787203167 <787203167@qq.com> Date: Thu, 12 May 2022 14:26:38 +0800 Subject: [PATCH 10/22] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=9C=AA=E7=AC=A6?= =?UTF-8?q?=E5=90=88=E9=A1=B9=E7=9A=84=E4=BC=A0=E5=8F=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jero-web/src/common/lang/en-us.js | 20 ++++++------- .../reviewedByThePersonInCharge.vue | 8 ++--- .../processForm/taskListProcess/index.vue | 8 ++--- .../projectManagement/components/TaskList.vue | 29 +++++++++++-------- .../components/listOfRegulations.vue | 12 ++++---- .../projectNonConformance/index.vue | 18 ++++++++++-- 6 files changed, 57 insertions(+), 38 deletions(-) diff --git a/jero-web/src/common/lang/en-us.js b/jero-web/src/common/lang/en-us.js index 257d7f8e5..a09d02df0 100644 --- a/jero-web/src/common/lang/en-us.js +++ b/jero-web/src/common/lang/en-us.js @@ -480,10 +480,10 @@ module.exports = { feedback: 'feedback', approvalHistory: 'cpproval history', cannotExceed500characters: 'cannot exceed 500 characters', - accord: 'conformity', - nonConformity: 'non conformity', - Tracked: 'to be tracked', - notInvolved: 'Not involved', + accord: 'Compliance', + nonConformity: 'Non-Compliance', + Tracked: 'To be tracked', + notInvolved: 'NA', Operator: 'operator', role: 'role', operationContent: 'operation content', @@ -786,10 +786,10 @@ module.exports = { adopt: 'adopt', reviewedByThePersonInCharge: 'Reviewed by the person in charge', onlyDeleted: 'Only data whose list confirmation status is not initiated or rejected can be deleted', - experimentPassed: 'Experiment passed', - experimentFailed: 'Experiment failed', - toBeStarted: 'To be started', - inProgress: 'In Progress', + experimentPassed: 'Test passed', + experimentFailed: 'Test failed', + toBeStarted: 'Not start', + inProgress: 'In progress', green: 'green', red: 'red', blue: 'blue', @@ -809,6 +809,6 @@ module.exports = { virtualListDetails:'Virtual list details', maintainVirtualList:'Maintain virtual list', reasonsForRejection:'Reasons for rejection', - inconformity:'inconformity', - toTrack:'to track', + inconformity:'Non-Compliance', + toTrack:'To be tracked', } \ No newline at end of file diff --git a/jero-web/src/views/processCenter/components/reviewedByThePersonInCharge.vue b/jero-web/src/views/processCenter/components/reviewedByThePersonInCharge.vue index 25117719c..697ecc0f3 100644 --- a/jero-web/src/views/processCenter/components/reviewedByThePersonInCharge.vue +++ b/jero-web/src/views/processCenter/components/reviewedByThePersonInCharge.vue @@ -18,16 +18,16 @@ :disabled="$route.query.TaskKey == 'fqrsh'?true:false" class="box-input" v-model="formInline.reviewResult"> - + {{$t('accord')}} - + {{$t('nonConformity')}} - + {{$t('Tracked')}} - + {{$t('notInvolved')}} diff --git a/jero-web/src/views/processCenter/processForm/taskListProcess/index.vue b/jero-web/src/views/processCenter/processForm/taskListProcess/index.vue index 440391051..6508b8c0f 100644 --- a/jero-web/src/views/processCenter/processForm/taskListProcess/index.vue +++ b/jero-web/src/views/processCenter/processForm/taskListProcess/index.vue @@ -192,7 +192,7 @@ }, isAdopt() { if (this.$route.query.TaskKey == 'fqrsh') { - if (this.queryBy.reviewResult == 'conformity' || this.queryBy.reviewResult == 'uninvolved') { + if (this.queryBy.reviewResult == 'Compliance' || this.queryBy.reviewResult == 'NA') { return true } } @@ -225,7 +225,7 @@ terminationProcess(operatorTime) { this.textLoading = this.$t('terminationProcessing') this.loading = true - this.queryBy.reviewResult = 'termination of task' + this.queryBy.reviewResult = 'Termination of task' this.completeTask({ flag: 2, operatorTime: operatorTime }) }, adopt(operatorTime) { @@ -240,10 +240,10 @@ sendBack(operatorTime) { this.textLoading = this.$t('Returning') this.loading = true - if (this.queryBy.reviewResult == 'inconformity' || this.queryBy.reviewResult == 'to track') { + if (this.queryBy.reviewResult == 'Non-Compliance' || this.queryBy.reviewResult == 'To be tracked') { } else { - this.queryBy.reviewResult = 'to be confirmed' + this.queryBy.reviewResult = 'No rating' } this.completeTask({ flag: 1, operatorTime: operatorTime }) }, diff --git a/jero-web/src/views/projectManagement/components/TaskList.vue b/jero-web/src/views/projectManagement/components/TaskList.vue index efb69b919..a969ff589 100644 --- a/jero-web/src/views/projectManagement/components/TaskList.vue +++ b/jero-web/src/views/projectManagement/components/TaskList.vue @@ -143,30 +143,34 @@ title: this.$t('standardInformation'), align: 'center', dataIndex: 'standard', - width: 200, + width: 202, scopedSlots: { customRender: 'standardInformation' } }, { title: this.$t('areaOfResponsibility'), align: 'center', + width: 180, dataIndex: 'areaOfResponsibility', scopedSlots: { customRender: 'areaOfResponsibility' } }, { title: this.$t('confirmationOfDesignConformity'), align: 'center', + width: 240, dataIndex: 'confirmationOfDesignConformity', scopedSlots: { customRender: 'confirmationOfDesignConformity' } }, { title: this.$t('PrehomoConfirmation'), align: 'center', + width: 240, dataIndex: 'PrehomoConfirmation', scopedSlots: { customRender: 'PrehomoConfirmation' } }, { title: this.$t('verificationAndConformityconfirmation'), align: 'center', + width: 240, dataIndex: 'verificationAndConformityconfirmation', scopedSlots: { customRender: 'verificationAndConformityconfirmation' } }, @@ -192,18 +196,18 @@ 'showData': '展示数据' }, color: { - 'conformity': 'accordColor', - 'inconformity': 'nonConformityColor', - 'to track': 'TrackedColor', - 'uninvolved': 'notInvolvedColor', - 'to be confirmed': 'submittedColor' + 'Compliance': 'accordColor', + 'Non-Compliance': 'nonConformityColor', + 'To be tracked': 'TrackedColor', + 'NA': 'notInvolvedColor', + 'No rating': 'submittedColor' }, statusText: { - 'conformity': this.$t('accord'), - 'inconformity': this.$t('nonConformity'), - 'to track': this.$t('Tracked'), - 'uninvolved': this.$t('notInvolved'), - 'to be confirmed': this.$t('toBeConfirmed') + 'Compliance': this.$t('accord'), + 'Non-Compliance': this.$t('nonConformity'), + 'To be tracked': this.$t('Tracked'), + 'NA': this.$t('notInvolved'), + 'No rating': this.$t('toBeConfirmed') }, queryParam: {}, @@ -391,6 +395,7 @@ position: relative; display: block; height: 100%; + text-align: left; } .content { @@ -445,7 +450,7 @@ } .box-content-color { - width: 78px; + width: 138px; height: 32px; display: inline-block; border-radius: 4px; diff --git a/jero-web/src/views/projectManagement/components/listOfRegulations.vue b/jero-web/src/views/projectManagement/components/listOfRegulations.vue index 69c087292..ef69b9cca 100644 --- a/jero-web/src/views/projectManagement/components/listOfRegulations.vue +++ b/jero-web/src/views/projectManagement/components/listOfRegulations.vue @@ -141,7 +141,7 @@ {{ $t('edit') }} {{ $t('deleteLib') }} @@ -752,7 +752,7 @@ if (this.dataSource && this.dataSource.length > 0) { let isTrue for (let i = 0; i < this.dataSource.length; i++) { - if (this.dataSource[i].taskAffirmStatus == 'accepted' && this.dataSource[i].inventoryAffirmStatus == 'accepted') { + if (this.dataSource[i].taskAffirmStatus == 'Accepted' && this.dataSource[i].inventoryAffirmStatus == 'Accepted') { isTrue = true } else { isTrue = false @@ -776,7 +776,7 @@ for (let i = 0; i < this.dataSource.length; i++) { for (let j = 0; j < selectedRowKeys.length; j++) { if (this.dataSource[i].id == selectedRowKeys[j]) { - if (this.dataSource[i].inventoryAffirmStatus == 'Not started' || this.dataSource[i].inventoryAffirmStatus == 'rejected') { + if (this.dataSource[i].inventoryAffirmStatus == 'Not started' || this.dataSource[i].inventoryAffirmStatus == 'Rejected') { isTrue = true } else { isTrue = false @@ -884,7 +884,7 @@ for (let i = 0; i < this.dataSource.length; i++) { for (let j = 0; j < selectedRowKeys.length; j++) { if (this.dataSource[i].id == selectedRowKeys[j]) { - if ((this.dataSource[i].inventoryAffirmStatus == 'Not started' || this.dataSource[i].inventoryAffirmStatus == 'rejected') && + if ((this.dataSource[i].inventoryAffirmStatus == 'Not started' || this.dataSource[i].inventoryAffirmStatus == 'Rejected') && this.dataSource[i].homologationEngineerId && this.dataSource[i].regulationOwnerId) { isTrue = true } else { @@ -912,8 +912,8 @@ for (let i = 0; i < this.dataSource.length; i++) { for (let j = 0; j < selectedRowKeys.length; j++) { if (this.dataSource[i].id == selectedRowKeys[j]) { - if ((this.dataSource[i].taskAffirmStatus == 'Not started' || this.dataSource[i].taskAffirmStatus == 'rejected') && - this.dataSource[i].engineeringInterfacePerson && this.dataSource[i].inventoryAffirmStatus == 'accepted') { + if ((this.dataSource[i].taskAffirmStatus == 'Not started' || this.dataSource[i].taskAffirmStatus == 'Rejected') && + this.dataSource[i].engineeringInterfacePerson && this.dataSource[i].inventoryAffirmStatus == 'Accepted') { if ((this.dataSource[i].verifyDueDate && this.dataSource[i].verifyDutyId && this.dataSource[i].verifyInitiatorId && this.dataSource[i].verifyDeliverableType) || (!this.dataSource[i].verifyDueDate && !this.dataSource[i].verifyDutyId diff --git a/jero-web/src/views/projectManagement/projectNonConformance/index.vue b/jero-web/src/views/projectManagement/projectNonConformance/index.vue index 245e8a837..7bab2e5fd 100644 --- a/jero-web/src/views/projectManagement/projectNonConformance/index.vue +++ b/jero-web/src/views/projectManagement/projectNonConformance/index.vue @@ -244,7 +244,8 @@ url: { page: '/project/ncrTrackController/queryPage', exportData: '/project/ncrTrackController/exportData' - } + }, + content: [] } }, mounted() { @@ -269,7 +270,20 @@ this.getList() }, onSelectChange(value) { + this.content = [] this.selectedRowKeys = value + if (this.selectedRowKeys && this.selectedRowKeys.length > 0) { + this.dataSource.forEach(res => { + this.selectedRowKeys.forEach(val => { + if (res.id == val) { + this.content.push({ + id: res.id, + flowType: res.flowType + }) + } + }) + }) + } }, searchReset() { this.pageNo = 1 @@ -307,7 +321,7 @@ let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys)) let query = { ...this.queryParam, - ids: selectedRowKeys.join(',') + ncrTrackVOList: this.content } downloadFile(this.url.exportData, this.$t('NonConformance') + '.xls', query, this.Deselect) }, From d2148b9b31d6a578187034ab9b2156ff3a883fc2 Mon Sep 17 00:00:00 2001 From: zhaomeijing Date: Thu, 12 May 2022 14:29:41 +0800 Subject: [PATCH 11/22] =?UTF-8?q?[add]=20=E6=8E=A5=E5=8F=A3=E5=AF=B9?= =?UTF-8?q?=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/ParameterLibrary/index.vue | 67 +++++-------------- .../ProjectDetails/index.vue | 2 + .../ParameterItemCollectionList.vue | 15 +++-- 3 files changed, 27 insertions(+), 57 deletions(-) diff --git a/jero-web/src/components/ParameterLibrary/index.vue b/jero-web/src/components/ParameterLibrary/index.vue index 25286b1fc..749dde3a7 100644 --- a/jero-web/src/components/ParameterLibrary/index.vue +++ b/jero-web/src/components/ParameterLibrary/index.vue @@ -97,7 +97,7 @@ export default { }, { title: this.$t('areaOfResponsibility'), - dataIndex: 'dutyTerritory', + dataIndex: 'dutyTerritory_dictText', align: 'center', ellipsis: true } @@ -181,63 +181,30 @@ export default { handleSubmit() { if (this.selectedRowKeys.length == 0) { this.$message.warning(this.$t('pleaseSelectData')) - } else if (this.selectedRowKeys.length > 1) { - this.$message.warning(this.$t('OnlyOneSelected')) } else { this.$refs.ruleForm.validate(valid => { if (valid) { this.flag = true this.spinLoading = true - // 新增編輯之前 判断 标题唯一 - getAction(`params/manifest/verifyTitle?projectId=${this.$route.query.id} - &title=${this.templatetitle}`, {}) - .then(res => { - if (res.success) { - let postDate = { - title: this.templatetitle, - paramsTemplateId: this.rowId || this.selectedRowKeysDate[0].id, - paramsTemplatePublishVersion: this.version || this.selectedRowKeysDate[0].version, - projectId: this.projectId - } - if (this.rowId) { - //编辑 - postAction(`params/manifest/edit`, postDate).then(res => { - if (res.success) { - this.newVisible = false - this.$emit('areaVisible', false) - this.$message.success(this.$t('OperationSuccessful')) - } else { - this.$message.warning(res.message) - } - } - ).finally(() => { - this.flag = false - this.spinLoading = false - this.newVisible = false - }) + //新增 + let postDate = { + paramsInfoPublishEOList: this.selectedRowKeysDate, + paramsManifestId: this.paramsManifest.id, + projectId: this.$route.query.id + } + postAction(`params/collectManifest/add`, postDate).then(res => { + if (res.success) { + this.newVisible = false + this.$message.success(this.$t('OperationSuccessful')) } else { - //新增 - postAction(`params/manifest/add`, postDate).then(res => { - if (res.success) { - this.newVisible = false - this.$emit('areaVisible', false) - this.$message.success(this.$t('OperationSuccessful')) - } else { - this.$message.warning(res.message) - } - } - ).finally(() => { - this.flag = false - this.spinLoading = false - this.newVisible = false - }) + this.$message.warning(res.message) } - } else { - this.$message.warning(res.message) } - }).finally(() => { - this.loading = false - }) + ).finally(() => { + this.flag = false + this.spinLoading = false + this.newVisible = false + }) } else { return false } diff --git a/jero-web/src/views/projectManagement/ParameterItemCollection/ProjectDetails/index.vue b/jero-web/src/views/projectManagement/ParameterItemCollection/ProjectDetails/index.vue index d4590295c..7d8efe6c1 100644 --- a/jero-web/src/views/projectManagement/ParameterItemCollection/ProjectDetails/index.vue +++ b/jero-web/src/views/projectManagement/ParameterItemCollection/ProjectDetails/index.vue @@ -1,5 +1,6 @@