diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/controller/DummyInventoryBaseEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/controller/DummyInventoryBaseEOController.java index 067627513..ad69b13f0 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/controller/DummyInventoryBaseEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/controller/DummyInventoryBaseEOController.java @@ -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发布 2-->撤回 //撤回需要发消息 - if(InventoryStateEnum.ISSUE.getValue().equals(dummyInventoryBaseEO.getState())){ //先判断第一次发布的时候是否保存过数据 LambdaQueryWrapper wrapper =new LambdaQueryWrapper<>(); @@ -310,11 +314,8 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl infoCJBaseSerialNumberList = infoCJList.stream().map(e -> e.getSerialNumber()).collect(Collectors.toList()); - - List dummyInventoryInfoEOSerialNumberList = dummyInventoryInfoEOList.stream().map(e -> e.getSerialNumber()).collect(Collectors.toList()); - List sameDummyInventoryInfoEOList = new ArrayList<>(); List sameinfoCJList = new ArrayList<>(); if (CollectionUtils.isNotEmpty(dummyInventoryInfoEOSerialNumberList)) { @@ -346,9 +347,15 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl> 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不发送消息,数据不处理 + 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 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 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 records) { Set technologyTerritorySet = new HashSet<>(); for (DummyInventoryInfoEO dummyInventoryInfoEO : records) { //技术领域 - if(StringUtils.isNotBlank(dummyInventoryInfoEO.getTechnologyTerritory())){ + if (StringUtils.isNotBlank(dummyInventoryInfoEO.getTechnologyTerritory())) { List list = Arrays.asList(dummyInventoryInfoEO.getTechnologyTerritory().split(",")); technologyTerritorySet.addAll(list); } //树形结构数据字典(技术领域) List categoryList = new ArrayList<>(); - if(technologyTerritorySet.size() != 0){ + if (technologyTerritorySet.size() != 0) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.in(SysCategory::getId, technologyTerritorySet); categoryList = sysCategoryService.list(wrapper); @@ -414,9 +436,9 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl 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 dutyTerritory = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.DUTY_TERRITORY.getValue()); - List 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 shi4Yong4Fan4Wei2 = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.SHI4_YONG4_FAN4_WEI2.getValue()); + List 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 region = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.REGION.getValue()); + List 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 dutyTerritory = sysDictItemMapper.selectItemsByDictCode(DummyInventoryBaseDictCodeEnum.DUTY_TERRITORY.getValue()); + List 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 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 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 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 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 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 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 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 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 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 baseDiff, String idTemp,List> infoDiffList,String addSerialNumber,String deleteSerialNumber) { + private void sendMsg(Map baseDiff, String idTemp,List> infoDiffList, + String addSerialNumber,String deleteSerialNumber,String state) { - String baseName=queryById(idTemp).getName();//基础表id + String baseName = queryById(idTemp).getName();//基础表id + //查询订阅用户 List userNameList = dummyReadEOService.queryReadUserInfo(idTemp); - List userIdList=sysUserService.queryUserIdListByNameList(userNameList).stream().map(e->e.getId()).collect(Collectors.toList()); - //给发送消息的用户 - if(userIdList.size() == 0){ - return; - } - List sysUsers = sysUserService.listByIds(userIdList); - List 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 userIdList = sysUserService.queryUserIdListByNameList(userNameList).stream().map(e -> e.getId()).collect(Collectors.toList()); + //给发送消息的用户 + if (userIdList.size() == 0) { + return; } + List sysUsers = sysUserService.listByIds(userIdList); + List 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 baseDiff, List> infoDiffList , String addSerialNumber, String deleteSerialNumber) { @@ -575,187 +651,189 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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; diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/impl/DummyInventoryInfoEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/impl/DummyInventoryInfoEOServiceImpl.java index 526fc70dc..b56253bc5 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/impl/DummyInventoryInfoEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/dummy/service/impl/DummyInventoryInfoEOServiceImpl.java @@ -290,6 +290,20 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl bussDocumentLibraryEOList = verifySerialNumber(dataList,dummyInventoryInfoEOTemp); + verifySerialNumber(dataList,dummyInventoryInfoEOTemp); for (DummyInventoryInfoEO dummyInventoryInfoEO : dataList) { i++; String errorMsg = ""; @@ -872,7 +886,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl verifySerialNumber(List dataList,DummyInventoryInfoEO dummyInventoryInfoEOTemp) { + private void verifySerialNumber(List dataList,DummyInventoryInfoEO dummyInventoryInfoEOTemp) { //文档库数据 List serialNumberList = dataList.stream().map(DummyInventoryInfoEO::getSerialNumber).collect(Collectors.toList()); - LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.in(BussDocumentLibraryEO::getSerialNumber,serialNumberList); - List bussDocumentLibraryEOList = iBussDocumentLibraryEOService.list(wrapper); - //文档库中可能存在重复的标准号 - List serialNumberListTemp = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).distinct().collect(Collectors.toList()); - - //虚拟清单数据 - LambdaQueryWrapper wrapperTemp = new LambdaQueryWrapper<>(); - wrapperTemp.in(DummyInventoryInfoEO::getSerialNumber,serialNumberList).in(DummyInventoryInfoEO::getDummyInventoryBaseId,dummyInventoryInfoEOTemp.getDummyInventoryBaseId()); - List dummyInventoryInfoEOList = this.list(wrapperTemp); - List serialNumberTempList = dummyInventoryInfoEOList.stream().map(DummyInventoryInfoEO::getSerialNumber).collect(Collectors.toList()); - if(serialNumberList.size() != serialNumberListTemp.size()){ - //存在文档库没有的数据 - List collect = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList()); - List 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 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 wrapper = new LambdaQueryWrapper<>(); + wrapper.in(BussDocumentLibraryEO::getSerialNumber,serialNumberS); + List bussDocumentLibraryEOList = iBussDocumentLibraryEOService.list(wrapper); + //文档库中可能存在重复的标准号 + List serialNumberListTemp = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).distinct().collect(Collectors.toList()); + + //虚拟清单数据 + LambdaQueryWrapper wrapperTemp = new LambdaQueryWrapper<>(); + wrapperTemp.in(DummyInventoryInfoEO::getSerialNumber,serialNumberS).in(DummyInventoryInfoEO::getDummyInventoryBaseId,dummyInventoryInfoEOTemp.getDummyInventoryBaseId()); + List dummyInventoryInfoEOList = this.list(wrapperTemp); + List serialNumberTempList = dummyInventoryInfoEOList.stream().map(DummyInventoryInfoEO::getSerialNumber).collect(Collectors.toList()); + if(serialNumberS.size() != serialNumberListTemp.size()){ + //存在文档库没有的数据 + List collect = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList()); + List 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 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 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 dictItemList, DummyInventoryInfoEO dummyInventoryInfoEO, String errorMsg, String value,List 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 collect = dictItemList.stream().filter(e -> value.equals(e.getItemText())).collect(Collectors.toList()); + List 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 dictItemList, DummyInventoryInfoEO dummyInventoryInfoEO, String errorMsg, String value,List msgList, - String nameCn,String nameEn) { + String nameCn,String nameEn,String dictCode) { List valueList = new ArrayList<>(); if (StringUtils.isNotBlank(value)) { List list = Arrays.asList(value.split(",")); - List collect = dictItemList.stream().filter(e -> list.contains(e.getItemText())).collect(Collectors.toList()); + List 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 { } 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()); +// } } } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java index c906fa03c..49b07ae03 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java @@ -1916,7 +1916,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl dictItemList, ProjectLawsInventoryEO projectLawsInventoryEO, String errorMsg, String value,List msgList, - String nameCn,String nameEn) { + String nameCn,String nameEn,String dictCode) { List valueList = new ArrayList<>(); if (StringUtils.isNotBlank(value)) { List list = Arrays.asList(value.split(",")); - List collect = dictItemList.stream().filter(e -> list.contains(e.getItemText())).collect(Collectors.toList()); + List 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{ @@ -2270,7 +2270,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl dictItemList, ProjectLawsInventoryEO projectLawsInventoryEO, String errorMsg, String value,List 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())){ @@ -2280,7 +2280,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl collect = dictItemList.stream().filter(e -> value.equals(e.getItemText())).collect(Collectors.toList()); + List 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 + "与数据字典不匹配"; diff --git a/jero-web/src/common/lang/en-us.js b/jero-web/src/common/lang/en-us.js index 95fbb89a9..e6ac0470d 100644 --- a/jero-web/src/common/lang/en-us.js +++ b/jero-web/src/common/lang/en-us.js @@ -786,5 +786,6 @@ module.exports = { green: 'green', red: 'red', blue: 'blue', - yellow: 'yellow' + yellow: 'yellow', + resultReported:'Result Reported', } \ 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 48ca70d70..386249c0e 100644 --- a/jero-web/src/common/lang/zh-cn.js +++ b/jero-web/src/common/lang/zh-cn.js @@ -792,4 +792,5 @@ module.exports = { red:'红', blue:'蓝', yellow:'黄', + resultReported:'结果报告', } \ No newline at end of file diff --git a/jero-web/src/components/searchalonesplit/index.vue b/jero-web/src/components/searchalonesplit/index.vue new file mode 100644 index 000000000..e19c93f3c --- /dev/null +++ b/jero-web/src/components/searchalonesplit/index.vue @@ -0,0 +1,259 @@ + + + + + \ No newline at end of file diff --git a/jero-web/src/views/documentManage/splitting/index.vue b/jero-web/src/views/documentManage/splitting/index.vue index 3cfe77f89..b104cef49 100644 --- a/jero-web/src/views/documentManage/splitting/index.vue +++ b/jero-web/src/views/documentManage/splitting/index.vue @@ -2,7 +2,7 @@
- +
@@ -37,7 +37,7 @@