Merge remote-tracking branch 'origin/master'

This commit is contained in:
wangzhijiang
2022-05-09 09:09:19 +08:00
42 changed files with 2024 additions and 585 deletions
@@ -1,27 +1,28 @@
package com.jero.modules.dummy.controller;
import java.util.Arrays;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
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.common.system.query.QueryGenerator;
import com.jero.modules.dummy.entity.DummyInventoryBaseEO;
import com.jero.modules.dummy.enums.InventoryStateEnum;
import com.jero.modules.dummy.service.IDummyInventoryBaseEOService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import com.jero.common.system.base.controller.JeroController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.jero.common.aspect.annotation.AutoLog;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
import java.util.List;
/**
@@ -212,16 +213,24 @@ public class DummyInventoryBaseEOController extends JeroController<DummyInventor
dummyInventoryBaseEOService.issue(dummyInventoryBaseEO);
} catch (Exception e) {
if(CutEnum.CN.getValue().equals(dummyInventoryBaseEO.getCut())){
return Result.OK().success("发布失败!");
return Result.OK().error500(e.getMessage());
}else{
return Result.error("Post failure!");
}
}
if(CutEnum.CN.getValue().equals(dummyInventoryBaseEO.getCut())){
return Result.OK().success("发布成功");
}else{
return Result.error("Release success!");
}
if(InventoryStateEnum.ISSUE.getValue().equals(dummyInventoryBaseEO.getState())) {
if (CutEnum.CN.getValue().equals(dummyInventoryBaseEO.getCut())) {
return Result.OK().success("发布成功");
} else {
return Result.error("Release success!");
}
}else {
if (CutEnum.CN.getValue().equals(dummyInventoryBaseEO.getCut())) {
return Result.OK().success("撤回成功");
} else {
return Result.error("Withdrawal succeeded!");
}
}
}
}
@@ -9,11 +9,12 @@ public enum DummyInventoryBaseDictCodeEnum {
DELIVERABLE_TEMPLATE("交付物类型","deliverable_template"),
FA1_QI3_REN2("发起人","fa1_qi3_ren2"),
ZE2_REN2_REN2("责任人","ze2_ren4_ren2"),
SHI4_YONG4_FAN4_WEI2("适用范围","apply_scope"),
REGION("适用地区","region"),
;
String name;
String value;
@@ -3,10 +3,12 @@ package com.jero.modules.dummy.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.enums.MessageTypeEnum;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.document.service.impl.BussDocumentLibraryEOServiceImpl;
import com.jero.modules.domain.service.DomainUserRelService;
@@ -17,6 +19,7 @@ import com.jero.modules.dummy.entity.DummyReadEO;
import com.jero.modules.dummy.enums.DummyInventoryBaseDictCodeEnum;
import com.jero.modules.dummy.enums.InventoryStateEnum;
import com.jero.modules.dummy.enums.ReadFlagEnum;
import com.jero.modules.dummy.mapper.DummyContentChangeEOMapper;
import com.jero.modules.dummy.mapper.DummyInventoryBaseEOMapper;
import com.jero.modules.dummy.service.IDummyContentChangeEOService;
import com.jero.modules.dummy.service.IDummyInventoryBaseEOService;
@@ -78,6 +81,8 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
private SysCategoryServiceImpl sysCategoryService;
@Autowired
private SysDictItemMapper sysDictItemMapper;
@Autowired
private DummyContentChangeEOMapper dummyContentChangeEOMapper;
/**
* 保存
*
@@ -227,7 +232,6 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
//先判断是发布还是撤回 1-->发布 2-->撤回
//撤回需要发消息
if(InventoryStateEnum.ISSUE.getValue().equals(dummyInventoryBaseEO.getState())){
//先判断第一次发布的时候是否保存过数据
LambdaQueryWrapper<DummyContentChangeEO> wrapper =new LambdaQueryWrapper<>();
@@ -310,11 +314,8 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
//获取数据库和传入同时存在的编号
//获取两个的编号
List<String> infoCJBaseSerialNumberList = infoCJList.stream().map(e -> e.getSerialNumber()).collect(Collectors.toList());
List<String> dummyInventoryInfoEOSerialNumberList = dummyInventoryInfoEOList.stream().map(e -> e.getSerialNumber()).collect(Collectors.toList());
List<DummyInventoryInfoEO> sameDummyInventoryInfoEOList = new ArrayList<>();
List<DummyInventoryInfoEO> sameinfoCJList = new ArrayList<>();
if (CollectionUtils.isNotEmpty(dummyInventoryInfoEOSerialNumberList)) {
@@ -346,9 +347,15 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
List<Map<String, String>> infoDiffList=new ArrayList<>();
for (int i = 0; i < sameinfoCJList.size(); i++) {
infoDiff = ListDiff.compareObject(sameinfoCJList.get(i), sameDummyInventoryInfoEOList.get(i));
try {//!!!
infoDiff = ListDiff.compareObject(sameinfoCJList.get(i), sameDummyInventoryInfoEOList.get(i));
}catch (Exception e){
e.printStackTrace();
}
if (MapUtils.isNotEmpty(infoDiff)) {
infoDiffList.add(infoDiff);
if(infoDiff.size() > 1) {
infoDiffList.add(infoDiff);
}
}
}
@@ -375,35 +382,50 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
}
deleteSerialNumber=StringUtils.join(infoCJSerialNumberList,",");
//向订阅该领域管理的人发消息和飞书
sendMsg(baseDiff,dummyContentChangeEOBaseList.get(0).getConnectId(),infoDiffList,addSerialNumber,deleteSerialNumber);
//5.数据对比完成后.删除之前保存的dummy_inventory_info中的数据,重新保存最新的数据
//列表和维护清单不同的字段都为空->不发送消息,数据不处理
if(MapUtils.isNotEmpty(baseDiff) || CollectionUtils.isNotEmpty(infoDiffList)) {
//向订阅该领域管理的人发消息和飞书
sendMsg(baseDiff, dummyContentChangeEOBaseList.get(0).getConnectId(), infoDiffList, addSerialNumber, deleteSerialNumber,dummyInventoryBaseEO.getState());
Date now=new Date();
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
//5.数据对比完成后.更新之前保存的dummy_inventory_info中的content_json数据,重新保存最新的数据
if(MapUtils.isNotEmpty(baseDiff)){//列表有不同字段
String base = JSONArray.toJSONString(dummyInventoryBaseEOList);
UpdateWrapper<DummyContentChangeEO> baseUpdateWrapper=new UpdateWrapper<>();
baseUpdateWrapper.set("content_json",base)
.set("update_by",sysUser.getUsername())
.set("update_time",now)
.eq("connect_id",dummyInventoryBaseEOList.get(0).getId());
dummyContentChangeEOMapper.update(null,baseUpdateWrapper);
}
if(CollectionUtils.isNotEmpty(infoDiffList)){//维护清单有不同字段
String info = JSONArray.toJSONString(dummyInventoryInfoEOList);
UpdateWrapper<DummyContentChangeEO> infoUpdateWrapper=new UpdateWrapper<>();
infoUpdateWrapper.set("content_json",info)
.set("update_by",sysUser.getUsername())
.set("update_time",now)
.eq("parent_id",dummyInventoryBaseEOList.get(0).getId());
dummyContentChangeEOMapper.update(null,infoUpdateWrapper);
}
}
}
}else{
//撤回
//撤回,需要发消息
sendMsg(null, dummyInventoryBaseEO.getId(),null, null , null,dummyInventoryBaseEO.getState());
}
}
public void disposeData(List<DummyInventoryInfoEO> records) {
Set<String> technologyTerritorySet = new HashSet<>();
for (DummyInventoryInfoEO dummyInventoryInfoEO : records) {
//技术领域
if(StringUtils.isNotBlank(dummyInventoryInfoEO.getTechnologyTerritory())){
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getTechnologyTerritory())) {
List<String> list = Arrays.asList(dummyInventoryInfoEO.getTechnologyTerritory().split(","));
technologyTerritorySet.addAll(list);
}
//树形结构数据字典(技术领域)
List<SysCategory> categoryList = new ArrayList<>();
if(technologyTerritorySet.size() != 0){
if (technologyTerritorySet.size() != 0) {
LambdaQueryWrapper<SysCategory> wrapper = new LambdaQueryWrapper<>();
wrapper.in(SysCategory::getId, technologyTerritorySet);
categoryList = sysCategoryService.list(wrapper);
@@ -414,9 +436,9 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
StringBuilder sb = new StringBuilder();
for (String technologyTerritory : technologyTerritoryList) {
List<SysCategory> collect = categoryList.stream().filter(e -> technologyTerritory.equals(e.getId())).collect(Collectors.toList());
if(collect.size() != 0){
if (collect.size() != 0) {
// if (CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())) {
sb.append(collect.get(0).getName()+ ",");
sb.append(collect.get(0).getName() + ",");
// } else {
// sb.append(collect.get(0).getEnName()+ ",");
// }
@@ -428,115 +450,169 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
}
dummyInventoryInfoEO.setTechnologyTerritoryName(technologyTerritoryName);
}
//责任领域
List<SysDictItem> dutyTerritory = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.DUTY_TERRITORY.getValue());
List<String> dutyTerritoryList = Arrays.asList(dummyInventoryInfoEO.getDutyTerritory().split(","));
StringBuilder dutyTerritoryBuilder =new StringBuilder();
for(String midDutyTerritory : dutyTerritoryList){
String dutyTerritoryName = dutyTerritory.stream().filter(e -> e.getItemValue().equals(midDutyTerritory)).map(f -> f.getItemText()).collect(Collectors.joining(","));
dutyTerritoryBuilder.append(dutyTerritoryName).append(",");
//适用范围 SHI4_YONG4_FAN4_WEI2("","apply_scope"),
// REGION("适用地区","region"),
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getShi4Yong4Fan4Wei2())) {
List<SysDictItem> shi4Yong4Fan4Wei2 = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.SHI4_YONG4_FAN4_WEI2.getValue());
List<String> shi4Yong4Fan4Wei2List = Arrays.asList(dummyInventoryInfoEO.getShi4Yong4Fan4Wei2().split(","));
StringBuilder shi4Yong4Fan4Wei2Builder = new StringBuilder();
for (String midshi4Yong4Fan4Wei2 : shi4Yong4Fan4Wei2List) {
String shi4Yong4Fan4Wei2Name = shi4Yong4Fan4Wei2.stream().filter(e -> e.getItemValue().equals(midshi4Yong4Fan4Wei2)).map(f -> f.getItemText()).collect(Collectors.joining(","));
shi4Yong4Fan4Wei2Builder.append(shi4Yong4Fan4Wei2Name).append(",");
}
dummyInventoryInfoEO.setShi4Yong4Fan4Wei2(shi4Yong4Fan4Wei2Builder.substring(0, shi4Yong4Fan4Wei2Builder.toString().length() - 1));
}
//适用地区
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getRegion())) {
List<SysDictItem> region = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.REGION.getValue());
List<String> regionList = Arrays.asList(dummyInventoryInfoEO.getRegion().split(","));
StringBuilder regionBuilder = new StringBuilder();
for (String midRegion : regionList) {
String regionName = region.stream().filter(e -> e.getItemValue().equals(midRegion)).map(f -> f.getItemText()).collect(Collectors.joining(","));
regionBuilder.append(regionName).append(",");
}
dummyInventoryInfoEO.setRegion(regionBuilder.substring(0, regionBuilder.toString().length() - 1));
}
//责任领域
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getDutyTerritory())) {
List<SysDictItem> dutyTerritory = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.DUTY_TERRITORY.getValue());
List<String> dutyTerritoryList = Arrays.asList(dummyInventoryInfoEO.getDutyTerritory().split(","));
StringBuilder dutyTerritoryBuilder = new StringBuilder();
for (String midDutyTerritory : dutyTerritoryList) {
String dutyTerritoryName = dutyTerritory.stream().filter(e -> e.getItemValue().equals(midDutyTerritory)).map(f -> f.getItemText()).collect(Collectors.joining(","));
dutyTerritoryBuilder.append(dutyTerritoryName).append(",");
}
dummyInventoryInfoEO.setDutyTerritory(dutyTerritoryBuilder.substring(0, dutyTerritoryBuilder.toString().length() - 1));
}
dummyInventoryInfoEO.setDutyTerritory(dutyTerritoryBuilder.substring(0,dutyTerritoryBuilder.toString().length()-1));
//实施类别
List<SysDictItem> implementType = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.IMPLEMENT_TYPE.getValue());
String implementTypeName = implementType.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getImplementType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setImplementType(implementTypeName);
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getImplementType())) {
List<SysDictItem> implementType = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.IMPLEMENT_TYPE.getValue());
String implementTypeName = implementType.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getImplementType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setImplementType(implementTypeName);
}
//认证级别
List<SysDictItem> attestationType = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.ATTESTATION_TYPE.getValue());
String attestationTypeName = attestationType.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getAttestationType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setAttestationType(attestationTypeName);
if(StringUtils.isNotBlank(dummyInventoryInfoEO.getAttestationType())) {
List<SysDictItem> attestationType = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.ATTESTATION_TYPE.getValue());
String attestationTypeName = attestationType.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getAttestationType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setAttestationType(attestationTypeName);
}
//认证级别
List<SysDictItem> attestationRank = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.ATTESTATION_RANK.getValue());
String attestationRankName = attestationRank.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getAttestationRank())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setAttestationRank(attestationRankName);
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getAttestationRank())) {
List<SysDictItem> attestationRank = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.ATTESTATION_RANK.getValue());
String attestationRankName = attestationRank.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getAttestationRank())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setAttestationRank(attestationRankName);
}
//交付物类型
List<SysDictItem> deliverableTemplate = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.DELIVERABLE_TEMPLATE.getValue());
//设计符合性确认-交付物类型
// designDeliverableType;
String designDeliverableTypeName = deliverableTemplate.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getDesignDeliverableType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setDesignDeliverableType(designDeliverableTypeName);
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getDesignDeliverableType())) {
String designDeliverableTypeName = deliverableTemplate.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getDesignDeliverableType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setDesignDeliverableType(designDeliverableTypeName);
}
//prehomo确认-交付物类型
// prehomoDeliverableType;
String prehomoDeliverableTypeName = deliverableTemplate.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getPrehomoDeliverableType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setPrehomoDeliverableType(prehomoDeliverableTypeName);
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getPrehomoDeliverableType())) {
String prehomoDeliverableTypeName = deliverableTemplate.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getPrehomoDeliverableType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setPrehomoDeliverableType(prehomoDeliverableTypeName);
}
//验证符合性确认-交付物类型
// verifyDeliverableType;
String verifyDeliverableTypeName = deliverableTemplate.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getVerifyDeliverableType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setVerifyDeliverableType(verifyDeliverableTypeName);
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getVerifyDeliverableType())) {
String verifyDeliverableTypeName = deliverableTemplate.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getVerifyDeliverableType())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setVerifyDeliverableType(verifyDeliverableTypeName);
}
//发起人
List<SysDictItem> fa1_qi3_ren2 = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.FA1_QI3_REN2.getValue());
//设计符合性确认-发起人
// designInitiator;
String designInitiatorName = fa1_qi3_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getDesignInitiator())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setDesignInitiator(designInitiatorName);
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getDesignInitiator())) {
String designInitiatorName = fa1_qi3_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getDesignInitiator())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setDesignInitiator(designInitiatorName);
}
//prehomo确认-发起人
// prehomoInitiator;
String prehomoInitiatorName = fa1_qi3_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getPrehomoInitiator())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setPrehomoInitiator(prehomoInitiatorName);
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getPrehomoInitiator())) {
String prehomoInitiatorName = fa1_qi3_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getPrehomoInitiator())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setPrehomoInitiator(prehomoInitiatorName);
}
//验证符合性确认-发起人
// verifyInitiator;
String verifyInitiatorName = fa1_qi3_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getVerifyInitiator())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setVerifyInitiator(verifyInitiatorName);
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getVerifyInitiator())) {
String verifyInitiatorName = fa1_qi3_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getVerifyInitiator())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setVerifyInitiator(verifyInitiatorName);
}
//责任人
List<SysDictItem> ze2_ren4_ren2 = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.ZE2_REN2_REN2.getValue());
//设计符合性确认-责任人
// designDuty;
String designDutyName = ze2_ren4_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getDesignDuty())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setDesignDuty(designDutyName);
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getDesignDuty())) {
String designDutyName = ze2_ren4_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getDesignDuty())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setDesignDuty(designDutyName);
}
//prehomo确认-责任人
// prehomoDuty;
String prehomoDutyName = ze2_ren4_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getPrehomoDuty())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setPrehomoDuty(prehomoDutyName);
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getPrehomoDuty())) {
String prehomoDutyName = ze2_ren4_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getPrehomoDuty())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setPrehomoDuty(prehomoDutyName);
}
//验证符合性确认-责任人
// verifyDuty;
String verifyDutyName = ze2_ren4_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getVerifyDuty())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setVerifyDuty(verifyDutyName);
if (StringUtils.isNotBlank(dummyInventoryInfoEO.getVerifyDuty())) {
String verifyDutyName = ze2_ren4_ren2.stream().filter(e -> e.getItemValue().equals(dummyInventoryInfoEO.getVerifyDuty())).map(f -> f.getItemText()).collect(Collectors.joining(","));
dummyInventoryInfoEO.setVerifyDuty(verifyDutyName);
}
}
}
//发送消息
private void sendMsg(Map<String, String> baseDiff, String idTemp,List<Map<String, String>> infoDiffList,String addSerialNumber,String deleteSerialNumber) {
private void sendMsg(Map<String, String> baseDiff, String idTemp,List<Map<String, String>> infoDiffList,
String addSerialNumber,String deleteSerialNumber,String state) {
String baseName=queryById(idTemp).getName();//基础表id
String baseName = queryById(idTemp).getName();//基础表id
//查询订阅用户
List<String> userNameList = dummyReadEOService.queryReadUserInfo(idTemp);
List<String> userIdList=sysUserService.queryUserIdListByNameList(userNameList).stream().map(e->e.getId()).collect(Collectors.toList());
//给发送消息的用户
if(userIdList.size() == 0){
return;
}
List<SysUser> sysUsers = sysUserService.listByIds(userIdList);
List<String> thirdIdList = sysUsers.stream().map(SysUser::getThirdId).collect(Collectors.toList());
if (userIdList.size() != 0) {
String href = backUrl + "/dummy/dummyInventoryBaseEO/issue?id=" + idTemp;
//The xx virtual list you subscribed to has been updated as follows:1 . xxxxx 2.xxxx
String content = "The " + baseName + " virtual list you subscribed to has been updated.";
String contentInfo = "The " + baseName + " virtual list you subscribed to has been updated as follows : " + "\r\n";
//拼接维护清单的消息
contentInfo =setContentInfo(contentInfo,baseDiff,infoDiffList,addSerialNumber,deleteSerialNumber);
System.out.println(contentInfo);
//封装消息的实体类
SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(userIdList, content, contentInfo);
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
bussDocumentLibraryEOService.sendWebsocket(idTemp, idTemp);
//飞书
try {
iFeishuService.batchSendMessage(thirdIdList.toArray(new String[]{}), content, MessageTypeEnum.PUSH.getName(), href);
} catch (IOException e) {
log.error("飞书消息推送失败");
if (CollectionUtils.isNotEmpty(userNameList)) {
List<String> userIdList = sysUserService.queryUserIdListByNameList(userNameList).stream().map(e -> e.getId()).collect(Collectors.toList());
//给发送消息的用户
if (userIdList.size() == 0) {
return;
}
List<SysUser> sysUsers = sysUserService.listByIds(userIdList);
List<String> thirdIdList = sysUsers.stream().map(SysUser::getThirdId).collect(Collectors.toList());
if (userIdList.size() != 0) {
String href = backUrl + "/dummy/dummyInventoryBaseEO/issue?id=" + idTemp;
String content = null;
String contentInfo = null;
if(InventoryStateEnum.ISSUE.getValue().equals(state)) {
//The xx virtual list you subscribed to has been updated as follows:1 . xxxxx 2.xxxx
content = "The " + baseName + " virtual list you subscribed to has been updated.";
contentInfo = "The " + baseName + " virtual list you subscribed to has been updated as follows : " + "\r\n";
//拼接维护清单的消息
contentInfo = setContentInfo(contentInfo, baseDiff, infoDiffList, addSerialNumber, deleteSerialNumber);
}else{//撤回的消息
content = "The " + baseName + " virtual list you subscribed to has been withdrawn,please note.";
contentInfo = "The " + baseName + " virtual list you subscribed to has been withdrawn,please note.";
}
//封装消息的实体类
SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(userIdList, content, contentInfo);
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
bussDocumentLibraryEOService.sendWebsocket(idTemp, idTemp);
//飞书
try {
iFeishuService.batchSendMessage(thirdIdList.toArray(new String[]{}), content, MessageTypeEnum.PUSH.getName(), href);
} catch (IOException e) {
log.error("飞书消息推送失败");
}
}
} else {
throw new JeroBootException("该虚拟清单未被订阅,消息发送失败");
}
}
////拼接维护清单的消息
public String setContentInfo(String contentInfo, Map<String, String> baseDiff, List<Map<String, String>> infoDiffList
, String addSerialNumber, String deleteSerialNumber) {
@@ -575,187 +651,189 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
//设置维护清单的修改消息
if(CollectionUtils.isNotEmpty(infoDiffList)) {
for(Map<String, String> infoDiff: infoDiffList) {
int infoDiffRow=1;
contentInfo += row + ". The serial Number " + infoDiff.get("serialNumber") + " has been updated as follows : " + "\r\n";
//技术领域
if (StringUtils.isNotBlank(infoDiff.get("technologyTerritoryName"))) {
for (Map<String, String> infoDiff : infoDiffList) {
if (infoDiff.size() > 1) {
int infoDiffRow = 1;
contentInfo += row + ". The serial Number " + infoDiff.get("serialNumber") + " has been updated as follows : " + "\r\n";
//技术领域
if (StringUtils.isNotBlank(infoDiff.get("technologyTerritoryName"))) {
List<String> list = Arrays.asList(infoDiff.get("technologyTerritoryName").split("\\|"));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Technology territory has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
List<String> list = Arrays.asList(infoDiff.get("technologyTerritoryName").split("\\|"));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Technology territory has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//新车型实施日期
if (StringUtils.isNotBlank(infoDiff.get("xin1Che1Xing2Shi2Shi1Ri4Qi1"))) {
List<String> list = Arrays.asList(infoDiff.get("xin1Che1Xing2Shi2Shi1Ri4Qi1").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). The implementation date of new model has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//在产车实施日期
if (StringUtils.isNotBlank(infoDiff.get("implementTime"))) {
List<String> list = Arrays.asList(infoDiff.get("implementTime").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Implement time has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//WVTA ID
if (StringUtils.isNotBlank(infoDiff.get("wvtaId"))) {
List<String> list = Arrays.asList(infoDiff.get("wvtaId").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). WVTA ID has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//子标题
if (StringUtils.isNotBlank(infoDiff.get("subtitle"))) {
List<String> list = Arrays.asList(infoDiff.get("subtitle").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Subtitle has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//实施类别
if (StringUtils.isNotBlank(infoDiff.get("implementType"))) {
List<String> list = Arrays.asList(infoDiff.get("implementType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Implement type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//认证类型
if (StringUtils.isNotBlank(infoDiff.get("attestationType"))) {
List<String> list = Arrays.asList(infoDiff.get("attestationType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Attestation type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//认证级别
if (StringUtils.isNotBlank(infoDiff.get("attestationRank"))) {
List<String> list = Arrays.asList(infoDiff.get("attestationRank").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Attestation rank has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//责任领域
if (StringUtils.isNotBlank(infoDiff.get("dutyTerritory"))) {
List<String> list = Arrays.asList(infoDiff.get("dutyTerritory").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Duty territory has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//备注
if (StringUtils.isNotBlank(infoDiff.get("remark"))) {
List<String> list = Arrays.asList(infoDiff.get("remark").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);
contentInfo += "(" + infoDiffRow + "). Remark has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-交付物类型
if (StringUtils.isNotBlank(infoDiff.get("designDeliverableType"))) {
List<String> list = Arrays.asList(infoDiff.get("designDeliverableType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design deliverable type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-交付物模板
if (StringUtils.isNotBlank(infoDiff.get("designDeliverableTemplate"))) {
List<String> list = Arrays.asList(infoDiff.get("designDeliverableTemplate").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design deliverable template has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-发起人
if (StringUtils.isNotBlank(infoDiff.get("designInitiator"))) {
List<String> list = Arrays.asList(infoDiff.get("designInitiator").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design initiator has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-责任人
if (StringUtils.isNotBlank(infoDiff.get("designDuty"))) {
List<String> list = Arrays.asList(infoDiff.get("designDuty").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design duty has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-交付物类型
if (StringUtils.isNotBlank(infoDiff.get("prehomoDeliverableType"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoDeliverableType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo deliverable type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-交付物模板
if (StringUtils.isNotBlank(infoDiff.get("prehomoDeliverableTemplate"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoDeliverableTemplate").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo deliverable template has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-发起人
if (StringUtils.isNotBlank(infoDiff.get("prehomoInitiator"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoInitiator").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo initiator has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-责任人
if (StringUtils.isNotBlank(infoDiff.get("prehomoDuty"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoDuty").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo duty has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-交付物类型
if (StringUtils.isNotBlank(infoDiff.get("verifyDeliverableType"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyDeliverableType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify deliverable type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-交付物模板
if (StringUtils.isNotBlank(infoDiff.get("verifyDeliverableTemplate"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyDeliverableTemplate").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify deliverable template has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-发起人
if (StringUtils.isNotBlank(infoDiff.get("verifyInitiator"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyInitiator").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify initiator has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-责任人
if (StringUtils.isNotBlank(infoDiff.get("verifyDuty"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyDuty").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify duty has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
row++;
}
//新车型实施日期
if (StringUtils.isNotBlank(infoDiff.get("xin1Che1Xing2Shi2Shi1Ri4Qi1"))) {
List<String> list = Arrays.asList(infoDiff.get("xin1Che1Xing2Shi2Shi1Ri4Qi1").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). The implementation date of new model has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//在产车实施日期
if (StringUtils.isNotBlank(infoDiff.get("implementTime"))) {
List<String> list = Arrays.asList(infoDiff.get("implementTime").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Implement time has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//WVTA ID
if (StringUtils.isNotBlank(infoDiff.get("wvtaId"))) {
List<String> list = Arrays.asList(infoDiff.get("wvtaId").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). WVTA ID has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//子标题
if (StringUtils.isNotBlank(infoDiff.get("subtitle"))) {
List<String> list = Arrays.asList(infoDiff.get("subtitle").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Subtitle has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//实施类别
if (StringUtils.isNotBlank(infoDiff.get("implementType"))) {
List<String> list = Arrays.asList(infoDiff.get("implementType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Implement type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//认证类型
if (StringUtils.isNotBlank(infoDiff.get("attestationType"))) {
List<String> list = Arrays.asList(infoDiff.get("attestationType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Attestation type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//认证级别
if (StringUtils.isNotBlank(infoDiff.get("attestationRank"))) {
List<String> list = Arrays.asList(infoDiff.get("attestationRank").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Attestation rank has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//责任领域
if (StringUtils.isNotBlank(infoDiff.get("dutyTerritory"))) {
List<String> list = Arrays.asList(infoDiff.get("dutyTerritory").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Duty territory has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//备注
if (StringUtils.isNotBlank(infoDiff.get("remark"))) {
List<String> list = Arrays.asList(infoDiff.get("remark").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);
contentInfo += "(" + infoDiffRow + "). Remark has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-交付物类型
if (StringUtils.isNotBlank(infoDiff.get("designDeliverableType"))) {
List<String> list = Arrays.asList(infoDiff.get("designDeliverableType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design deliverable type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-交付物模板
if (StringUtils.isNotBlank(infoDiff.get("designDeliverableTemplate"))) {
List<String> list = Arrays.asList(infoDiff.get("designDeliverableTemplate").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design deliverable template has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-发起人
if (StringUtils.isNotBlank(infoDiff.get("designInitiator"))) {
List<String> list = Arrays.asList(infoDiff.get("designInitiator").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design initiator has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//设计符合性确认-责任人
if (StringUtils.isNotBlank(infoDiff.get("designDuty"))) {
List<String> list = Arrays.asList(infoDiff.get("designDuty").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Design duty has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-交付物类型
if (StringUtils.isNotBlank(infoDiff.get("prehomoDeliverableType"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoDeliverableType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo deliverable type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-交付物模板
if (StringUtils.isNotBlank(infoDiff.get("prehomoDeliverableTemplate"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoDeliverableTemplate").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo deliverable template has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-发起人
if (StringUtils.isNotBlank(infoDiff.get("prehomoInitiator"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoInitiator").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo initiator has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//prehomo确认-责任人
if (StringUtils.isNotBlank(infoDiff.get("prehomoDuty"))) {
List<String> list = Arrays.asList(infoDiff.get("prehomoDuty").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Prehomo duty has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-交付物类型
if (StringUtils.isNotBlank(infoDiff.get("verifyDeliverableType"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyDeliverableType").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify deliverable type has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-交付物模板
if (StringUtils.isNotBlank(infoDiff.get("verifyDeliverableTemplate"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyDeliverableTemplate").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify deliverable template has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-发起人
if (StringUtils.isNotBlank(infoDiff.get("verifyInitiator"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyInitiator").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify initiator has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
//验证符合性确认-责任人
if (StringUtils.isNotBlank(infoDiff.get("verifyDuty"))) {
List<String> list = Arrays.asList(infoDiff.get("verifyDuty").split(","));
String infoDiffOld = list.get(0);
String infoDiffNew = list.get(1);//需要翻译
contentInfo += "(" + infoDiffRow + "). Verify duty has been changed from " + infoDiffOld + " to " + infoDiffNew + ".\r\n";
infoDiffRow++;
}
row++;
}
}
return contentInfo;
@@ -290,6 +290,20 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
if(StringUtils.isNotBlank(dummyInventoryInfoEO.getDutyTerritory())){
dummyInventoryInfoEOTemp.setDutyTerritory(dummyInventoryInfoEO.getDutyTerritory());
}
//适用范围 shi4Yong4Fan4Wei2
if(StringUtils.isNotBlank(dummyInventoryInfoEO.getShi4Yong4Fan4Wei2())){
dummyInventoryInfoEOTemp.setShi4Yong4Fan4Wei2(dummyInventoryInfoEO.getShi4Yong4Fan4Wei2());
}
//技术领域 technologyTerritory
if(StringUtils.isNotBlank(dummyInventoryInfoEO.getTechnologyTerritory())){
dummyInventoryInfoEOTemp.setTechnologyTerritory(dummyInventoryInfoEO.getTechnologyTerritory());
}
//适用地区 region
if(StringUtils.isNotBlank(dummyInventoryInfoEO.getRegion())){
dummyInventoryInfoEOTemp.setRegion(dummyInventoryInfoEO.getRegion());
}
dummyInventoryInfoEOList.add(dummyInventoryInfoEOTemp);
}
this.updateBatchById(dummyInventoryInfoEOList);
@@ -825,7 +839,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
String value = "";
boolean flag = true;
//编号验证
List<BussDocumentLibraryEO> bussDocumentLibraryEOList = verifySerialNumber(dataList,dummyInventoryInfoEOTemp);
verifySerialNumber(dataList,dummyInventoryInfoEOTemp);
for (DummyInventoryInfoEO dummyInventoryInfoEO : dataList) {
i++;
String errorMsg = "";
@@ -872,7 +886,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
//实施类别(单选不必填)
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, implementType,msgList,"实施类别","implementation category");
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, implementType,msgList,"实施类别","implementation category","implement_type");
if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setImplementType(value);
}
@@ -889,7 +903,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
// dummyInventoryInfoEO.setImplementTime(implementTime);
// }
//认证类型(单选不必填)
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, attestationType,msgList,"认证类型","certification type");
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, attestationType,msgList,"认证类型","certification type","attestation_type");
if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setAttestationType(value);
}
@@ -897,7 +911,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
//认证级别(单选必填)
flag = must(dummyInventoryInfoEO, errorMsg, msgList, attestationRank,"认证级别","certification level");
if(flag){
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, attestationRank,msgList,"认证级别","certification level");
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, attestationRank,msgList,"认证级别","certification level","attestation_rank");
if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setAttestationRank(value);
}
@@ -906,7 +920,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
//责任领域(多选必填)
flag = must(dummyInventoryInfoEO, errorMsg, msgList, dutyTerritory,"责任领域","area of responsibility");
if(flag){
value = pullMore(dictItemList, dummyInventoryInfoEO, errorMsg, dutyTerritory,msgList,"责任领域","area of responsibility");
value = pullMore(dictItemList, dummyInventoryInfoEO, errorMsg, dutyTerritory,msgList,"责任领域","area of responsibility","duty_territory");
if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setDutyTerritory(value);
}
@@ -914,7 +928,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
//设计
//交付物类型
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, designDeliverableType,msgList,"交付物类型","type of deliverables");
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, designDeliverableType,msgList,"交付物类型","type of deliverables","deliverable_template");
if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setDesignDeliverableType(value);
}
@@ -926,20 +940,20 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
}
//发起人
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, designInitiator,msgList,"发起人","initiator");
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, designInitiator,msgList,"发起人","initiator","fa1_qi3_ren2");
if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setDesignInitiator(value);
}
//责任人
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, designDuty,msgList,"责任人","person liable");
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, designDuty,msgList,"责任人","person liable","ze2_ren4_ren2");
if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setDesignDuty(value);
}
//pre
//交付物类型
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, prehomoDeliverableType,msgList,"交付物类型","type of deliverables");
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, prehomoDeliverableType,msgList,"交付物类型","type of deliverables","deliverable_template");
if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setPrehomoDeliverableType(value);
}
@@ -951,20 +965,20 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
}
//发起人
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, prehomoInitiator,msgList,"发起人","initiator");
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, prehomoInitiator,msgList,"发起人","initiator","fa1_qi3_ren2");
if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setPrehomoInitiator(value);
}
//责任人
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, prehomoDuty,msgList,"责任人","person liable");
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, prehomoDuty,msgList,"责任人","person liable","ze2_ren4_ren2");
if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setPrehomoDuty(value);
}
//确认
//交付物类型
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, verifyDeliverableType,msgList,"交付物类型","type of deliverables");
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, verifyDeliverableType,msgList,"交付物类型","type of deliverables","deliverable_template");
if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setVerifyDeliverableType(value);
}
@@ -977,13 +991,13 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
//发起人
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, verifyInitiator,msgList,"发起人","initiator");
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, verifyInitiator,msgList,"发起人","initiator","fa1_qi3_ren2");
if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setVerifyInitiator(value);
}
//责任人
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, verifyDuty,msgList,"责任人","person liable");
value = pullSingle(dictItemList, dummyInventoryInfoEO, errorMsg, verifyDuty,msgList,"责任人","person liable","ze2_ren4_ren2");
if(StringUtils.isNotBlank(value)){
dummyInventoryInfoEO.setVerifyDuty(value);
}
@@ -1004,52 +1018,60 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
}
}
private List<BussDocumentLibraryEO> verifySerialNumber(List<DummyInventoryInfoEO> dataList,DummyInventoryInfoEO dummyInventoryInfoEOTemp) {
private void verifySerialNumber(List<DummyInventoryInfoEO> dataList,DummyInventoryInfoEO dummyInventoryInfoEOTemp) {
//文档库数据
List<String> serialNumberList = dataList.stream().map(DummyInventoryInfoEO::getSerialNumber).collect(Collectors.toList());
LambdaQueryWrapper<BussDocumentLibraryEO> wrapper = new LambdaQueryWrapper<>();
wrapper.in(BussDocumentLibraryEO::getSerialNumber,serialNumberList);
List<BussDocumentLibraryEO> bussDocumentLibraryEOList = iBussDocumentLibraryEOService.list(wrapper);
//文档库中可能存在重复的标准号
List<String> serialNumberListTemp = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).distinct().collect(Collectors.toList());
//虚拟清单数据
LambdaQueryWrapper<DummyInventoryInfoEO> wrapperTemp = new LambdaQueryWrapper<>();
wrapperTemp.in(DummyInventoryInfoEO::getSerialNumber,serialNumberList).in(DummyInventoryInfoEO::getDummyInventoryBaseId,dummyInventoryInfoEOTemp.getDummyInventoryBaseId());
List<DummyInventoryInfoEO> dummyInventoryInfoEOList = this.list(wrapperTemp);
List<String> serialNumberTempList = dummyInventoryInfoEOList.stream().map(DummyInventoryInfoEO::getSerialNumber).collect(Collectors.toList());
if(serialNumberList.size() != serialNumberListTemp.size()){
//存在文档库没有的数据
List<String> collect = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList());
List<String> serialNumbers = serialNumberList.stream().filter(e -> !collect.contains(e)).collect(Collectors.toList());
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){
throw new JeroBootException(StringUtils.join(serialNumbers,",")+"文档库中不存在,不能添加");
}else{
throw new JeroBootException(StringUtils.join(serialNumbers,",")+" does not exist in the document library and cannot be added");
List<String> serialNumberS = new ArrayList<>();
if(serialNumberList.size() != 0){
for (String s : serialNumberList) {
if(StringUtils.isNotBlank(s)){
serialNumberS.add(s);
}
}
}
if(dummyInventoryInfoEOList.size() > 0){
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){
throw new JeroBootException(StringUtils.join(serialNumberTempList,",")+"已存在,不能重复添加");
}else{
throw new JeroBootException(StringUtils.join(serialNumberTempList,",")+" already exists and cannot be added again");
if(serialNumberS.size() != 0){
LambdaQueryWrapper<BussDocumentLibraryEO> wrapper = new LambdaQueryWrapper<>();
wrapper.in(BussDocumentLibraryEO::getSerialNumber,serialNumberS);
List<BussDocumentLibraryEO> bussDocumentLibraryEOList = iBussDocumentLibraryEOService.list(wrapper);
//文档库中可能存在重复的标准号
List<String> serialNumberListTemp = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).distinct().collect(Collectors.toList());
//虚拟清单数据
LambdaQueryWrapper<DummyInventoryInfoEO> wrapperTemp = new LambdaQueryWrapper<>();
wrapperTemp.in(DummyInventoryInfoEO::getSerialNumber,serialNumberS).in(DummyInventoryInfoEO::getDummyInventoryBaseId,dummyInventoryInfoEOTemp.getDummyInventoryBaseId());
List<DummyInventoryInfoEO> dummyInventoryInfoEOList = this.list(wrapperTemp);
List<String> serialNumberTempList = dummyInventoryInfoEOList.stream().map(DummyInventoryInfoEO::getSerialNumber).collect(Collectors.toList());
if(serialNumberS.size() != serialNumberListTemp.size()){
//存在文档库没有的数据
List<String> collect = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList());
List<String> serialNumbers = serialNumberS.stream().filter(e -> !collect.contains(e)).collect(Collectors.toList());
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){
throw new JeroBootException(StringUtils.join(serialNumbers,",")+"文档库中不存在,不能添加");
}else{
throw new JeroBootException(StringUtils.join(serialNumbers,",")+" does not exist in the document library and cannot be added");
}
}
if(dummyInventoryInfoEOList.size() > 0){
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){
throw new JeroBootException(StringUtils.join(serialNumberTempList,",")+"已存在,不能重复添加");
}else{
throw new JeroBootException(StringUtils.join(serialNumberTempList,",")+" already exists and cannot be added again");
}
}
//通过编号将导入的数据与文档库进行关联
for (DummyInventoryInfoEO dummyInventoryInfoEO : dataList) {
List<BussDocumentLibraryEO> collect = bussDocumentLibraryEOList.stream()
.filter(e -> e.getSerialNumber().equals(dummyInventoryInfoEO.getSerialNumber())).collect(Collectors.toList());
dummyInventoryInfoEO.setTitle(collect.get(0).getTitle());
dummyInventoryInfoEO.setState(collect.get(0).getState());
dummyInventoryInfoEO.setCorrespondingStandard(collect.get(0).getCorrespondingStandard());
dummyInventoryInfoEO.setTechnologyTerritory(collect.get(0).getTechnologyTerritory());
dummyInventoryInfoEO.setRegion(collect.get(0).getRegion());
dummyInventoryInfoEO.setShi4Yong4Fan4Wei2(collect.get(0).getShi4Yong4Fan4Wei2());
dummyInventoryInfoEO.setImplementTime(collect.get(0).getImplementTime());
dummyInventoryInfoEO.setXin1Che1Xing2Shi2Shi1Ri4Qi1(collect.get(0).getXin1Che1Xing2Shi2Shi1Ri4Qi1());
}
}
//通过编号将导入的数据与文档库进行关联
for (DummyInventoryInfoEO dummyInventoryInfoEO : dataList) {
List<BussDocumentLibraryEO> collect = bussDocumentLibraryEOList.stream()
.filter(e -> e.getSerialNumber().equals(dummyInventoryInfoEO.getSerialNumber())).collect(Collectors.toList());
dummyInventoryInfoEO.setTitle(collect.get(0).getTitle());
dummyInventoryInfoEO.setState(collect.get(0).getState());
dummyInventoryInfoEO.setCorrespondingStandard(collect.get(0).getCorrespondingStandard());
dummyInventoryInfoEO.setTechnologyTerritory(collect.get(0).getTechnologyTerritory());
dummyInventoryInfoEO.setRegion(collect.get(0).getRegion());
dummyInventoryInfoEO.setShi4Yong4Fan4Wei2(collect.get(0).getShi4Yong4Fan4Wei2());
dummyInventoryInfoEO.setImplementTime(collect.get(0).getImplementTime());
dummyInventoryInfoEO.setXin1Che1Xing2Shi2Shi1Ri4Qi1(collect.get(0).getXin1Che1Xing2Shi2Shi1Ri4Qi1());
}
return bussDocumentLibraryEOList;
}
private String template(String zipEntryName, DummyInventoryInfoEO dummyInventoryInfoEO,
@@ -1137,7 +1159,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
private String pullSingle(List<SysDictItem> dictItemList, DummyInventoryInfoEO dummyInventoryInfoEO,
String errorMsg, String value,List<String> msgList,
String nameCn,String nameEn) {
String nameCn,String nameEn,String dictCode) {
if(StringUtils.isNotBlank(value)){
if(value.contains(",")){
if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){
@@ -1147,7 +1169,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
}
msgList.add(errorMsg);
}else{
List<SysDictItem> collect = dictItemList.stream().filter(e -> value.equals(e.getItemText())).collect(Collectors.toList());
List<SysDictItem> collect = dictItemList.stream().filter(e ->dictCode.equals(e.getDictCode()) && value.equals(e.getItemText())).collect(Collectors.toList());
if (collect.size() == 0) {
if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){
errorMsg += nameCn + "中的" + value + "与数据字典不匹配";
@@ -1164,11 +1186,11 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
}
private String pullMore(List<SysDictItem> dictItemList, DummyInventoryInfoEO dummyInventoryInfoEO,
String errorMsg, String value,List<String> msgList,
String nameCn,String nameEn) {
String nameCn,String nameEn,String dictCode) {
List<String> valueList = new ArrayList<>();
if (StringUtils.isNotBlank(value)) {
List<String> list = Arrays.asList(value.split(","));
List<SysDictItem> collect = dictItemList.stream().filter(e -> list.contains(e.getItemText())).collect(Collectors.toList());
List<SysDictItem> collect = dictItemList.stream().filter(e -> dictCode.equals(e.getDictCode()) && list.contains(e.getItemText())).collect(Collectors.toList());
if(list.size() == collect.size()){
valueList = collect.stream().map(SysDictItem::getItemValue).collect(Collectors.toList());
}else{
@@ -1192,9 +1214,9 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
if(StringUtils.isBlank(serialNumber)){
errorCount ++;
if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){
errorMsg += "编号为必填项,不能为空";
errorMsg += nameCn + "为必填项,不能为空";
}else{
errorMsg += "serial number this parameter is mandatory and cannot be empty";
errorMsg += nameEn + " this parameter is mandatory and cannot be empty";
}
msgList.add(errorMsg);
}
@@ -1,5 +1,7 @@
package com.jero.modules.dummy.util;
import org.apache.commons.lang3.StringUtils;
import java.lang.reflect.Field;
import java.util.*;
@@ -23,13 +25,24 @@ public class ListDiff <T> {
}
if( ! equals(v1, v2) && !f.getName().contains("create")
&& !f.getName().contains("update") && !f.getName().equals("id")){
if (StringUtils.isBlank(v1.toString())){
v1 = "null";
}
if (StringUtils.isBlank(v2.toString())){
v2 = "null";
}
StringBuilder v1String= new StringBuilder(String.valueOf(v1));
StringBuilder v2String= new StringBuilder(String.valueOf(v2));
if(f.getName().contains("erritory") || f.getName().contains("emplate")){
if(f.getName().contains("erritory") || f.getName().contains("emplate")
|| f.getName().equals(("shi4Yong4Fan4Wei2")) || f.getName().equals("region")){
result.put(f.getName(), v1String.append("|").append(v2String).toString());
}else {
result.put(f.getName(), v1String.append(",").append(v2String).toString());
//
// if (StringUtils.isBlank(v2String)) {
// result.put(f.getName(), v1String.append(",").append("null").toString());
// }else {
result.put(f.getName(), v1String.append(",").append(v2String).toString());
// }
}
}
}
@@ -138,8 +138,9 @@ public class ProjectTaskPlanningController extends JeroController<ProjectTaskPla
@AutoLog(value = "法规,认证任务计划 (各阶段确认进度) 表-通过projectId查询")
@ApiOperation(value="法规,认证任务计划 (各阶段确认进度) 表-通过projectId查询", notes="法规,认证任务计划 (各阶段确认进度) 表-通过projectId查询")
@GetMapping(value = "/queryByProjectId")
public Result<?> queryByProjectId(@RequestParam(name="projectId",required=true) String projectId) {
List<TimeNodeVO> projectTaskPlanning = projectTaskPlanningService.queryByProjectId(projectId);
public Result<?> queryByProjectId(@RequestParam(name="projectId",required=true) String projectId,
@RequestParam(name="cut",required=true) String cut) {
List<TimeNodeVO> projectTaskPlanning = projectTaskPlanningService.queryByProjectId(projectId,cut);
if(projectTaskPlanning==null) {
return Result.error("未找到对应数据");
}
@@ -1,21 +1,21 @@
package com.jero.modules.project.enums;
public enum ProjectTaskPlanningNameEnum {
LIST_CONFIRMATION("法规清单确认"),
LEGAL_TASK_CONFIRMATION("法规任务确认"),
DESIGN_DEADLINE("设计符合性确认截止时间"),
PREHOMO_DEADLINE("PreHomo确认截止时间"),
ATTESTATION_START_TIME("认证开始"),
ATTESTATION_END_TIME("认证结束"),
VERIFY_DEADLINE("验证符合性确认截止时间"),
LIST_CONFIRMATION("法规清单确认","listConfirmation"),
LEGAL_TASK_CONFIRMATION("法规任务确认","legalTaskConfirmation"),
DESIGN_DEADLINE("设计符合性确认截止时间","designDeadline"),
PREHOMO_DEADLINE("PreHomo确认截止时间","prehomoDeadline"),
ATTESTATION_START_TIME("认证开始","attestationStartTime"),
ATTESTATION_END_TIME("认证结束","attestationEndTime"),
VERIFY_DEADLINE("验证符合性确认截止时间","verifyDeadline"),
;
String name;
String value;
ProjectTaskPlanningNameEnum(String name) {
ProjectTaskPlanningNameEnum(String name, String value) {
this.name = name;
this.value = value;
}
public String getName() {
@@ -25,4 +25,12 @@ public enum ProjectTaskPlanningNameEnum {
public void setName(String name) {
this.name = name;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}
@@ -52,7 +52,7 @@ public interface IProjectTaskPlanningService extends IService<ProjectTaskPlannin
* @param projectId
* @return
*/
List<TimeNodeVO> queryByProjectId(String projectId);
List<TimeNodeVO> queryByProjectId(String projectId,String cut);
/**
* 列表查询
@@ -1403,7 +1403,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}else{
titleOne = "*serial number,subtitle,WVTA ID," +
"*implementation category,certification type,*certification level," +
"*area of responsibility,*laws engineer,*authentication engineer,*engineering interface person," +
"*area of responsibility,laws engineer,authentication engineer,engineering interface person," +
"remarks," +
"design compliance check,pre-homo check,validation compliance chech";
titleTwo = "type of deliverables,deliverable template,initiator,person liable,deadline," +
@@ -1411,7 +1411,6 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
"type of deliverables,deliverable template,initiator,person liable,deadline";
}
List<String> list = Arrays.asList(titleOne.split(","));
int index = 0;
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
@@ -1599,12 +1598,21 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
public void importData(MultipartFile file, ProjectLawsInventoryEO projectLawsInventoryEO) {
String title = "";
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
title = "*编号,子标题,WVTA ID,实施类别,认证类型,*认证级别,*责任领域,法规工程师,认证工程师,工程接口人,备注," +
title = "*编号,子标题,WVTA ID," +
"实施类别,认证类型,*认证级别," +
"*责任领域,法规工程师,认证工程师,工程接口人," +
"备注," +
"设计交付物类型,设计交付物模板,设计发起人,设计责任人,设计截止时间," +
"pre交付物类型,pre交付物模板,pre发起人,pre责任人,pre截止时间," +
"验证交付物类型,验证交付物模板,验证发起人,验证责任人,验证截止时间";
}else{
title = "*serial number,subtitle,WVTA ID," +
"*implementation category,certification type,*certification level," +
"*area of responsibility,laws engineer,authentication engineer,engineering interface person," +
"remarks," +
"design type of deliverables,design deliverable template,design initiator,design person liable,design deadline," +
"pre type of deliverables,pre deliverable template,pre initiator,pre person liable,pre deadline," +
"verify type of deliverables,verify deliverable template,verify initiator,verify person liable,verify deadline";
}
int pos = file.getOriginalFilename().lastIndexOf(".");
@@ -1727,17 +1735,28 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
if(j > 10){
String flag = "";
if(10 < j && j < 16){
flag ="设计";
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
flag ="设计";
}else{
flag ="design ";
}
key = flag + headerCell.getStringCellValue();
}
if(15 < j && j < 21){
flag ="pre";
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
flag ="pre";
}else{
flag ="pre ";
}
key = flag + headerCell.getStringCellValue();
}
if(20 < j && j < 26){
flag ="验证";
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
flag ="验证";
}else{
flag ="verify ";
}
key = flag + headerCell.getStringCellValue();
}
headerSb.append(key + ",");
}
@@ -1783,6 +1802,8 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
ProjectLawsInventoryEO projectLawsInventoryEOTemp = JSON.parseObject(JSON.toJSONString(stringStringMap), ProjectLawsInventoryEO.class);
projectLawsInventoryEOTemp.setCut(projectLawsInventoryEO.getCut());
projectLawsInventoryEOTemp.setProjectLibraryId(projectLawsInventoryEO.getProjectLibraryId());
projectLawsInventoryEOTemp.setTaskAffirmStatus(TaskAffirmStatusEnum.NOT_STARTED.getValue());
projectLawsInventoryEOTemp.setInventoryAffirmStatus(InventoryAffirmStatusEnum.NOT_STARTED.getValue());
datas.add(projectLawsInventoryEOTemp);
}
}
@@ -1829,10 +1850,9 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
List<String> msgList = new ArrayList<>();
String value = "";
boolean flag = true;
//iProjectRelatedPersonnelService
//编号验证
// List<BussDocumentLibraryEO> bussDocumentLibraryEOList = verifySerialNumber(dataList,projectLawsInventoryEOTemp);
verifySerialNumber(dataList,projectLawsInventoryEOTemp);
for (ProjectLawsInventoryEO projectLawsInventoryEO : dataList) {
i++;
String errorMsg = "";
@@ -1897,7 +1917,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//实施类别(单选不必填)
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, implementType,msgList,"实施类别","implementation category");
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, implementType,msgList,"实施类别","implementation category","implement_type");
if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setImplementType(value);
}
@@ -1914,7 +1934,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
// dummyInventoryInfoEO.setImplementTime(implementTime);
// }
//认证类型(单选不必填)
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, attestationType,msgList,"认证类型","certification type");
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, attestationType,msgList,"认证类型","certification type","attestation_type");
if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setAttestationType(value);
}
@@ -1922,7 +1942,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//认证级别(单选必填)
flag = must(projectLawsInventoryEO, errorMsg, msgList, attestationRank,"认证级别","certification level");
if(flag){
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, attestationRank,msgList,"认证级别","certification level");
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, attestationRank,msgList,"认证级别","certification level","attestation_rank");
if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setAttestationRank(value);
}
@@ -1931,7 +1951,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//责任领域(多选必填)
flag = must(projectLawsInventoryEO, errorMsg, msgList, dutyTerritory,"责任领域","area of responsibility");
if(flag){
value = pullMore(dictItemList, projectLawsInventoryEO, errorMsg, dutyTerritory,msgList,"责任领域","area of responsibility");
value = pullMore(dictItemList, projectLawsInventoryEO, errorMsg, dutyTerritory,msgList,"责任领域","area of responsibility","duty_territory");
if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setDutyTerritory(value);
}
@@ -1945,6 +1965,8 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
List<Map<String, String>> mapCertificationList = (List<Map<String, String>>) objectMap.get("certificationEngineerList");
//工程接口人
List<Map<String, String>> mapPersonList = (List<Map<String, String>>) objectMap.get("engineeringInterfacePersonList");
//所有人
List<Map<String, String>> allPersonList = (List<Map<String, String>>) objectMap.get("allPersonList");
String nameCn = "";
String nameEn = "";
@@ -1953,7 +1975,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
nameCn = "法规工程师";
nameEn = "regulatory engineer";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, regulationOwnerId, mapLawList,nameCn,nameEn);
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, regulationOwnerId, mapLawList,nameCn,nameEn);
}
//认证工程师
@@ -1961,7 +1983,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
nameCn = "认证工程师";
nameEn = "certification engineer ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, homologationEngineerId, mapCertificationList,nameCn,nameEn);
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, homologationEngineerId, mapCertificationList,nameCn,nameEn);
}
//工程接口人
@@ -1969,13 +1991,13 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
nameCn = "工程接口人";
nameEn = "engineering interface person ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, homologationEngineerId, mapPersonList,nameCn,nameEn);
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, homologationEngineerId, mapPersonList,nameCn,nameEn);
}
//设计
//交付物类型
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, designDeliverableType,msgList,"交付物类型","type of deliverables");
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, designDeliverableType,msgList,"交付物类型","type of deliverables","deliverable_template");
if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setDesignDeliverableType(value);
}
@@ -1987,15 +2009,19 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}
//发起人
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, designInitiator,msgList,"发起人","initiator");
if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setDesignInitiator(value);
if(StringUtils.isNotBlank(designInitiator)){
nameCn = "设计符合性确认发起人";
nameEn = "confirm design conformance initiator ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, designInitiator, allPersonList,nameCn,nameEn);
}
//责任人
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, designDuty,msgList,"责任人","person liable");
if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setDesignDuty(value);
if(StringUtils.isNotBlank(designDuty)){
nameCn = "设计符合性确认责任人";
nameEn = "confirm design conformance responsible";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, designDuty, allPersonList,nameCn,nameEn);
}
//截止时间
@@ -2007,7 +2033,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//pre
//交付物类型
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, prehomoDeliverableType,msgList,"交付物类型","type of deliverables");
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, prehomoDeliverableType,msgList,"交付物类型","type of deliverables","deliverable_template");
if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setPrehomoDeliverableType(value);
}
@@ -2019,15 +2045,19 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}
//发起人
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, prehomoInitiator,msgList,"发起人","initiator");
if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setPrehomoInitiator(value);
if(StringUtils.isNotBlank(prehomoInitiator)){
nameCn = "Pre-homo确认发起人";
nameEn = "Pre-homo identifies the initiator ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, prehomoInitiator, allPersonList,nameCn,nameEn);
}
//责任人
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, prehomoDuty,msgList,"责任人","person liable");
if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setPrehomoDuty(value);
if(StringUtils.isNotBlank(prehomoDuty)){
nameCn = "Pre-homo确认责任人";
nameEn = "Pre-homo identifies the person responsible";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList,prehomoDuty, allPersonList,nameCn,nameEn);
}
//截止时间
@@ -2038,7 +2068,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//确认
//交付物类型
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, verifyDeliverableType,msgList,"交付物类型","type of deliverables");
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, verifyDeliverableType,msgList,"交付物类型","type of deliverables","deliverable_template");
if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setVerifyDeliverableType(value);
}
@@ -2051,17 +2081,22 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
//发起人
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, verifyInitiator,msgList,"发起人","initiator");
if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setVerifyInitiator(value);
if(StringUtils.isNotBlank(verifyInitiator)){
nameCn = "验证符合性确认发起人";
nameEn = "verify conformance validates the originator ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList,verifyInitiator, allPersonList,nameCn,nameEn);
}
//责任人
value = pullSingle(dictItemList, projectLawsInventoryEO, errorMsg, verifyDuty,msgList,"责任人","person liable");
if(StringUtils.isNotBlank(value)){
projectLawsInventoryEO.setVerifyDuty(value);
if(StringUtils.isNotBlank(verifyDuty)){
nameCn = "验证符合性确认责任人";
nameEn = "verify conformance to confirm the responsible person ";
//验证人员是否存在
personnelVerify(projectLawsInventoryEO, errorMsg, msgList,verifyDuty, allPersonList,nameCn,nameEn);
}
//截止时间
flag = dateVerify(projectLawsInventoryEO, errorMsg, verifyDueDate,msgList,"在产车实施日期","on the production vehicle implementation date");
if(flag){
@@ -2084,10 +2119,54 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}
}
private void verifySerialNumber(List<ProjectLawsInventoryEO> dataList,ProjectLawsInventoryEO projectLawsInventoryEOTemp){
//1. 验证标准号在文档库中是否存在
List<String> serialNumberList = dataList.stream().map(ProjectLawsInventoryEO::getSerialNumber).collect(Collectors.toList());
LambdaQueryWrapper<BussDocumentLibraryEO> wrapper = new LambdaQueryWrapper<>();
wrapper.in(BussDocumentLibraryEO::getSerialNumber,serialNumberList);
List<BussDocumentLibraryEO> bussDocumentLibraryEOList = iBussDocumentLibraryEOService.list(wrapper);
//文档库中可能存在重复的标准号
List<String> serialNumberListTemp = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).distinct().collect(Collectors.toList());
if(serialNumberList.size() != serialNumberListTemp.size()){
//存在文档库没有的数据
List<String> collect = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList());
List<String> serialNumbers = serialNumberList.stream().filter(e -> !collect.contains(e)).collect(Collectors.toList());
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){
throw new JeroBootException(StringUtils.join(serialNumbers,",")+"文档库中不存在,不能添加");
}else{
throw new JeroBootException(StringUtils.join(serialNumbers,",")+" does not exist in the document library and cannot be added");
}
}
//2. 验证标准号在法规清单中是否添加过
LambdaQueryWrapper<ProjectLawsInventoryEO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.in(ProjectLawsInventoryEO::getSerialNumber,serialNumberList).in(ProjectLawsInventoryEO::getProjectLibraryId,projectLawsInventoryEOTemp.getProjectLibraryId());
List<ProjectLawsInventoryEO> projectLawsInventoryEOList = this.list(lambdaQueryWrapper);
List<String> serialNumberTempList = projectLawsInventoryEOList.stream().map(ProjectLawsInventoryEO::getSerialNumber).collect(Collectors.toList());
if(projectLawsInventoryEOList.size() > 0){
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){
throw new JeroBootException(StringUtils.join(serialNumberTempList,",")+"已存在,不能重复添加");
}else{
throw new JeroBootException(StringUtils.join(serialNumberTempList,",")+" already exists and cannot be added again");
}
}
//3. 通过编号将导入的数据与文档库进行关联
for (ProjectLawsInventoryEO projectLawsInventoryEO : dataList) {
List<BussDocumentLibraryEO> collect = bussDocumentLibraryEOList.stream()
.filter(e -> e.getSerialNumber().equals(projectLawsInventoryEO.getSerialNumber())).collect(Collectors.toList());
projectLawsInventoryEO.setTitle(collect.get(0).getTitle());//标题
projectLawsInventoryEO.setCorrespondingStandard(collect.get(0).getCorrespondingStandard());//对应标准
projectLawsInventoryEO.setRegion(collect.get(0).getRegion());//适用地区
projectLawsInventoryEO.setImplementTime(collect.get(0).getImplementTime());//在产车实施日期
projectLawsInventoryEO.setXin1Che1Xing2Shi2Shi1Ri4Qi1(collect.get(0).getXin1Che1Xing2Shi2Shi1Ri4Qi1());//新车实施日期
}
}
private void personnelVerify(ProjectLawsInventoryEO projectLawsInventoryEO,
String errorMsg, String regulationOwnerId,
List<Map<String, String>> mapList,
String nameCn,String nameEn) {
String errorMsg, List<String> msgList,
String regulationOwnerId,
List<Map<String, String>> mapList,
String nameCn,String nameEn) {
//单选
if(regulationOwnerId.contains(",")){
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
@@ -2095,6 +2174,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}else{
errorMsg += "Only one user name can be entered for"+ nameEn +"import";
}
msgList.add(errorMsg);
}
if(mapList.size() != 0){
@@ -2113,6 +2193,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}else{
errorMsg += nameEn+regulationOwnerId+"does not match a person under the area of responsibility in the relevant person list";
}
msgList.add(errorMsg);
}
}else{
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
@@ -2120,6 +2201,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}else{
errorMsg += nameEn+regulationOwnerId+"does not match a person under the area of responsibility in the relevant person list";
}
msgList.add(errorMsg);
}
}
@@ -2150,9 +2232,9 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
if(StringUtils.isBlank(serialNumber)){
errorCount ++;
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
errorMsg += "编号为必填项,不能为空";
errorMsg += nameCn + "为必填项,不能为空";
}else{
errorMsg += "serial number this parameter is mandatory and cannot be empty";
errorMsg += nameEn + "this parameter is mandatory and cannot be empty";
}
msgList.add(errorMsg);
}
@@ -2165,11 +2247,11 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
private String pullMore(List<SysDictItem> dictItemList, ProjectLawsInventoryEO projectLawsInventoryEO,
String errorMsg, String value,List<String> msgList,
String nameCn,String nameEn) {
String nameCn,String nameEn,String dictCode) {
List<String> valueList = new ArrayList<>();
if (StringUtils.isNotBlank(value)) {
List<String> list = Arrays.asList(value.split(","));
List<SysDictItem> collect = dictItemList.stream().filter(e -> list.contains(e.getItemText())).collect(Collectors.toList());
List<SysDictItem> collect = dictItemList.stream().filter(e ->dictCode.equals(e.getDictCode()) && list.contains(e.getItemText())).collect(Collectors.toList());
if(list.size() == collect.size()){
valueList = collect.stream().map(SysDictItem::getItemValue).collect(Collectors.toList());
}else{
@@ -2189,7 +2271,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
private String pullSingle(List<SysDictItem> dictItemList, ProjectLawsInventoryEO projectLawsInventoryEO,
String errorMsg, String value,List<String> msgList,
String nameCn,String nameEn) {
String nameCn,String nameEn,String dictCode) {
if(StringUtils.isNotBlank(value)){
if(value.contains(",")){
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
@@ -2199,7 +2281,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}
msgList.add(errorMsg);
}else{
List<SysDictItem> collect = dictItemList.stream().filter(e -> value.equals(e.getItemText())).collect(Collectors.toList());
List<SysDictItem> collect = dictItemList.stream().filter(e ->dictCode.equals(e.getDictCode()) && value.equals(e.getItemText())).collect(Collectors.toList());
if (collect.size() == 0) {
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
errorMsg += nameCn + "中的" + value + "与数据字典不匹配";
@@ -2256,34 +2338,66 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
if (field == null) return null;
switch (field) {
case "*编号": return "serialNumber";
case "*serial number": return "serialNumber";
case "标题": return "title";
case "子标题": return "subtitle";
case "subtitle": return "subtitle";
case "适用范围": return "shi4Yong4Fan4Wei2";
case "状态": return "state";
case "对应标准": return "correspondingStandard";
case "实施类别": return "implementType";
case "*implementation category": return "implementType";
case "新车实施日期": return "xin1Che1Xing2Shi2Shi1Ri4Qi1";
case "在产车实施日期": return "implementTime";
case "WVTA ID": return "wvtaId";
case "认证类型": return "attestationType";
case "certification type": return "attestationType";
case "*认证级别": return "attestationRank";
case "*certification level": return "attestationRank";
case "技术领域": return "technologyTerritory";
case "*责任领域": return "dutyTerritory";
case "*area of responsibility": return "dutyTerritory";
case "适用地区": return "region";
case "备注": return "remark";
case "remark": return "remark";
case "法规工程师": return "regulationOwnerId";
case "laws engineer": return "regulationOwnerId";
case "认证工程师": return "homologationEngineerId";
case "authentication engineer": return "homologationEngineerId";
case "工程接口人": return "engineeringInterfacePerson";
case "engineering interface person": return "engineeringInterfacePerson";
case "设计交付物类型": return "designDeliverableType";
case "design type of deliverables": return "designDeliverableType";
case "设计交付物模板": return "designDeliverableTemplate";
case "design deliverable template": return "designDeliverableTemplate";
case "设计发起人": return "designInitiator";
case "design initiator": return "designInitiator";
case "设计责任人": return "designDuty";
case "design person liable": return "designDuty";
case "设计截止时间": return "designDueDate";
case "design deadline": return "designDueDate";
case "pre交付物类型": return "prehomoDeliverableType";
case "pre type of deliverables": return "prehomoDeliverableType";
case "pre交付物模板": return "prehomoDeliverableTemplate";
case "pre deliverable template": return "prehomoDeliverableTemplate";
case "pre发起人": return "prehomoInitiator";
case "pre initiator": return "prehomoInitiator";
case "pre责任人": return "prehomoDuty";
case "pre person liable": return "prehomoDuty";
case "pre截止时间": return "prehomoDueDate";
case "pre deadline": return "prehomoDueDate";
case "验证交付物类型": return "verifyDeliverableType";
case "verify type of deliverables": return "verifyDeliverableType";
case "验证交付物模板": return "verifyDeliverableTemplate";
case "verify deliverable template": return "verifyDeliverableTemplate";
case "验证发起人": return "verifyInitiator";
case "verify initiator": return "verifyInitiator";
case "验证责任人": return "verifyDuty";
case "verify person liable": return "verifyDuty";
case "验证截止时间": return "verifyDueDate";
case "verify deadline": return "verifyDueDate";
default: return null;
//"type of deliverables,deliverable template,initiator,person liable,deadline," +
}
}
@@ -2,6 +2,7 @@ package com.jero.modules.project.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.enums.CutEnum;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.project.entity.ProjectTaskPlanning;
import com.jero.modules.project.enums.PlanStatusEnum;
@@ -89,7 +90,7 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
* @return
*/
@Override
public List<TimeNodeVO> queryByProjectId(String projectId) {
public List<TimeNodeVO> queryByProjectId(String projectId,String cut) {
ProjectTaskPlanning projectTaskPlanning = projectTaskPlanningMapper.getByProjectId(projectId);
List<TimeNodeVO> timeNodeVOS = new ArrayList<>();
TimeNodeVO listConfirmationVO=null;
@@ -106,7 +107,13 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
if(StringUtils.isNotBlank(projectTaskPlanning.getListConfirmation().toString())) {
listConfirmationVO = new TimeNodeVO();
listConfirmationVO.setName(ProjectTaskPlanningNameEnum.LIST_CONFIRMATION.getName());
if(CutEnum.CN.getValue().equals(cut)){
listConfirmationVO.setName(ProjectTaskPlanningNameEnum.LIST_CONFIRMATION.getName());
}else{
listConfirmationVO.setName(ProjectTaskPlanningNameEnum.LIST_CONFIRMATION.getValue());
}
listConfirmationVO.setTime(projectTaskPlanning.getListConfirmation());
if(projectTaskPlanning.getListConfirmation().after(trueNow)){
listConfirmationVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
@@ -120,7 +127,13 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
if(!StringUtils.isEmpty(projectTaskPlanning.getLegalTaskConfirmation().toString())) {
TimeNodeVO legalTaskConfirmationVO = new TimeNodeVO();
legalTaskConfirmationVO.setName(ProjectTaskPlanningNameEnum.LEGAL_TASK_CONFIRMATION.getName());
if(CutEnum.CN.getValue().equals(cut)){
legalTaskConfirmationVO.setName(ProjectTaskPlanningNameEnum.LEGAL_TASK_CONFIRMATION.getName());
}else{
legalTaskConfirmationVO.setName(ProjectTaskPlanningNameEnum.LEGAL_TASK_CONFIRMATION.getValue());
}
legalTaskConfirmationVO.setTime(projectTaskPlanning.getLegalTaskConfirmation());
if(projectTaskPlanning.getLegalTaskConfirmation().after(trueNow)){
legalTaskConfirmationVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
@@ -131,22 +144,36 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
}
timeNodeVOS.add(legalTaskConfirmationVO);
}
if(StringUtils.isNotBlank(projectTaskPlanning.getDesignDeadline().toString())) {
TimeNodeVO designDeadlineVO = new TimeNodeVO();
if(StringUtils.isNotBlank(projectTaskPlanning.getDesignDeadline().toString())) {
TimeNodeVO designDeadlineVO = new TimeNodeVO();
if(CutEnum.CN.getValue().equals(cut)){
designDeadlineVO.setName(ProjectTaskPlanningNameEnum.DESIGN_DEADLINE.getName());
designDeadlineVO.setTime(projectTaskPlanning.getDesignDeadline());
if(projectTaskPlanning.getDesignDeadline().after(trueNow)){
designDeadlineVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
}else if(projectTaskPlanning.getDesignDeadline().before(trueNow)){
designDeadlineVO.setStatus(PlanStatusEnum.OUT_OF_DATE.getValue());
}else{
designDeadlineVO.setStatus(PlanStatusEnum.ON_GOING.getValue());
}
timeNodeVOS.add(designDeadlineVO);
}else{
designDeadlineVO.setName(ProjectTaskPlanningNameEnum.DESIGN_DEADLINE.getValue());
}
designDeadlineVO.setTime(projectTaskPlanning.getDesignDeadline());
if(projectTaskPlanning.getDesignDeadline().after(trueNow)){
designDeadlineVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
}else if(projectTaskPlanning.getDesignDeadline().before(trueNow)){
designDeadlineVO.setStatus(PlanStatusEnum.OUT_OF_DATE.getValue());
}else{
designDeadlineVO.setStatus(PlanStatusEnum.ON_GOING.getValue());
}
timeNodeVOS.add(designDeadlineVO);
}
if(StringUtils.isNotBlank(projectTaskPlanning.getPrehomoDeadline().toString())) {
TimeNodeVO prehomoDeadlineVO = new TimeNodeVO();
prehomoDeadlineVO.setName(ProjectTaskPlanningNameEnum.PREHOMO_DEADLINE.getName());
if(CutEnum.CN.getValue().equals(cut)){
prehomoDeadlineVO.setName(ProjectTaskPlanningNameEnum.PREHOMO_DEADLINE.getName());
}else{
prehomoDeadlineVO.setName(ProjectTaskPlanningNameEnum.PREHOMO_DEADLINE.getValue());
}
prehomoDeadlineVO.setTime(projectTaskPlanning.getPrehomoDeadline());
if(projectTaskPlanning.getPrehomoDeadline().after(trueNow)){
prehomoDeadlineVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
@@ -157,9 +184,16 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
}
timeNodeVOS.add(prehomoDeadlineVO);
}
if(StringUtils.isNotBlank(projectTaskPlanning.getAttestationStartTime().toString())) {
TimeNodeVO attestationStartTimeVO = new TimeNodeVO();
attestationStartTimeVO.setName(ProjectTaskPlanningNameEnum.ATTESTATION_START_TIME.getName());
if(CutEnum.CN.getValue().equals(cut)){
attestationStartTimeVO.setName(ProjectTaskPlanningNameEnum.ATTESTATION_START_TIME.getName());
}else{
attestationStartTimeVO.setName(ProjectTaskPlanningNameEnum.ATTESTATION_START_TIME.getValue());
}
attestationStartTimeVO.setTime(projectTaskPlanning.getAttestationStartTime());
if(projectTaskPlanning.getAttestationStartTime().after(trueNow)){
attestationStartTimeVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
@@ -172,7 +206,13 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
}
if(StringUtils.isNotBlank(projectTaskPlanning.getAttestationEndTime().toString())) {
TimeNodeVO attestationEndTimeVO = new TimeNodeVO();
attestationEndTimeVO.setName(ProjectTaskPlanningNameEnum.ATTESTATION_END_TIME.getName());
if(CutEnum.CN.getValue().equals(cut)){
attestationEndTimeVO.setName(ProjectTaskPlanningNameEnum.ATTESTATION_END_TIME.getName());
}else{
attestationEndTimeVO.setName(ProjectTaskPlanningNameEnum.ATTESTATION_END_TIME.getValue());
}
attestationEndTimeVO.setTime(projectTaskPlanning.getAttestationEndTime());
if(projectTaskPlanning.getAttestationEndTime().after(trueNow)){
attestationEndTimeVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());
@@ -183,9 +223,16 @@ public class ProjectTaskPlanningServiceImpl extends ServiceImpl<ProjectTaskPlann
}
timeNodeVOS.add(attestationEndTimeVO);
}
if(StringUtils.isNotBlank(projectTaskPlanning.getVerifyDeadline().toString())) {
TimeNodeVO verifyDeadlineVO = new TimeNodeVO();
verifyDeadlineVO.setName(ProjectTaskPlanningNameEnum.VERIFY_DEADLINE.getName());
if(CutEnum.CN.getValue().equals(cut)){
verifyDeadlineVO.setName(ProjectTaskPlanningNameEnum.VERIFY_DEADLINE.getName());
}else{
verifyDeadlineVO.setName(ProjectTaskPlanningNameEnum.VERIFY_DEADLINE.getValue());
}
verifyDeadlineVO.setTime(projectTaskPlanning.getVerifyDeadline());
if(projectTaskPlanning.getVerifyDeadline().after(trueNow)){
verifyDeadlineVO.setStatus(PlanStatusEnum.LESS_THAN_TIME.getValue());