From 11af23e0c7976eed1211ba2ca0beae3a12e19310 Mon Sep 17 00:00:00 2001 From: lxp <1928192722@qq.com> Date: 星期三, 12 三月 2025 15:37:47 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev --- inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java | 90 ++++++++++++++++---------------------------- 1 files changed, 33 insertions(+), 57 deletions(-) diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java index 3f1c275..ae37bf8 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java @@ -33,6 +33,7 @@ import com.ruoyi.common.utils.QueryWrappers; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.framework.exception.ErrorException; +import com.ruoyi.inspect.comparater.CustomComparator; import com.ruoyi.inspect.dto.*; import com.ruoyi.inspect.excel.FiberRibboGeometricalParameterExcelData; import com.ruoyi.inspect.mapper.*; @@ -49,6 +50,7 @@ import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.core.Authentication; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Isolation; import org.springframework.transaction.annotation.Transactional; @@ -91,6 +93,10 @@ private NumberGenerator<InsOrder> numberGenerator; + private NumberGenerator<InsSample> sampleCodeGenerator; + + private NumberGenerator<InsFibers> fibersCodeGenerator; + private InsSampleUserMapper insSampleUserMapper; private InsOrderStateMapper insOrderStateMapper; @@ -114,7 +120,7 @@ //鑾峰彇妫�楠屼笅鍗曟暟鎹� @Override - public Map<String, Object> selectInsOrderParameter(Page<InsOrder> page, SampleOrderDto sampleOrderDto) { + public IPage<SampleOrderDto> selectInsOrderParameter(Page<InsOrder> page, SampleOrderDto sampleOrderDto) { page.setOptimizeCountSql(false); List<String> startAndEndTime = sampleOrderDto.getStartAndEndTime(); String startTime = ""; @@ -123,25 +129,23 @@ startTime = startAndEndTime.get(0) + " 00:00:00"; endTime = startAndEndTime.get(1) + " 23:59:59"; } - - Map<String, Object> map = new HashMap<>(); //// map.put("head", PrintChina.printChina(SampleOrderDto.class)); // //鍒ゆ柇鍏ㄩ儴,涓汉,缁勭粐鐨勬潈闄� // Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId("selectInsOrderParameter"); -// User user = userMapper.selectById(map1.get("userId"));//褰撳墠鐧诲綍鐨勪汉 -// Integer roleId = user.getRoleId(); + User user = userMapper.selectById(SecurityUtils.getUserId());;//褰撳墠鐧诲綍鐨勪汉 // //鑾峰彇褰撳墠浜烘墍灞炲疄楠屽id -// String departLimsId = user.getDepartLimsId(); - String laboratory = null; -// if (ObjectUtils.isNotEmpty(departLimsId) && !departLimsId.isEmpty()) { -// String[] split = departLimsId.split(","); -// //鏌ヨ瀵瑰簲鏋舵瀯鍚嶇О(閫氫俊瀹為獙瀹�,鐢靛姏瀹為獙瀹�,妫�娴嬪姙) -// String departLims = baseMapper.seldepLimsId(Integer.parseInt(split[split.length - 1])); -// if (departLims.contains("瀹為獙瀹�")) { -// laboratory = departLims; -// } -// } + String departLimsId = user.getDepartLimsId(); + String laboratory = ""; + if (ObjectUtils.isNotEmpty(departLimsId) && !departLimsId.isEmpty()) { + String[] split = departLimsId.split(","); + //鏌ヨ瀵瑰簲鏋舵瀯鍚嶇О(閫氫俊瀹為獙瀹�,鐢靛姏瀹為獙瀹�,妫�娴嬪姙) + String departLims = baseMapper.seldepLimsId(Integer.parseInt(split[split.length - 1])); + if (departLims.contains("瀹為獙瀹�")) { + laboratory = departLims; + } + } // //鍒ゆ柇鏄惁鏄叏閮ㄦ潈闄� +// SecurityUtils.hasPermi(""); // Power power = powerMapper.selectOne(Wrappers.<Power>lambdaQuery().eq(Power::getRoleId, roleId).eq(Power::getMenuMethod, "selectAllInsOrderParameter")); // if (ObjectUtils.isEmpty(power)) { // if (map1.get("look") == 1) { @@ -174,8 +178,7 @@ i.setSampleCode(split[0]); } }); - map.put("body", sampleOrderDtoIPage); - return map; + return sampleOrderDtoIPage; } @Override @@ -256,11 +259,10 @@ String outEntrustCodePrefix = getOutEntrustCodePrefix(customCode, laboratoryCode); String outEntrustCode = numberGenerator.generateNumberWithPrefix(5, outEntrustCodePrefix, InsOrder::getOutEntrustCode); insOrder.setOutEntrustCode(outEntrustCode); -// String giveCode = this.giveCode.giveCode("JCZX-" + customCode + "-", "ins_sample", "", "yyMMdd"); - String giveCode = ""; -// insOrder.setOutEntrustCode(giveCode.giveCode3("ZT/" + code2 + "-" + code + "-", insOrder.getCompanyId(), insOrder.getLaboratory(), "ins_order", "", "yyMM")); -// String giveCode = this.giveCode.giveCode("JCZX-" + code + "-", "ins_sample", "", "yyMMdd"); insOrderMapper.insert(insOrder); + //鐢熸垚鏍峰搧缂栧彿 + String currentDay = LocalDate.now().format(DateTimeFormatter.ofPattern("yyMMdd")); + String generatedSampleCode = sampleCodeGenerator.generateNumberWithPrefix(3, currentDay, InsSample::getSampleCode); AtomicInteger count = new AtomicInteger(); List<FiberDto> fiberList = new ArrayList<>(); list.forEach(a -> { @@ -268,7 +270,7 @@ a.setId(null); a.setInsOrderId(insOrder.getId()); if (StrUtil.isEmpty(a.getSampleCode())) { - a.setSampleCode(giveCode.split("-")[2] + "-" + count.get()); + a.setSampleCode(generatedSampleCode + "-" + count.get()); } else { //鍘婚櫎鎵嬭緭鐨勬牱鍝佺紪鍙蜂腑棣栧熬鍙兘鍖呭惈鐨勭┖鏍� a.setSampleCode(a.getSampleCode().trim()); @@ -295,8 +297,7 @@ for (FibersDto fibersDto : bushingDto.getFibers()) { fibersDto.setInsBushingId(bushingDto.getId()); if (StringUtils.isBlank(fibersDto.getCode())) { -// fibersDto.setCode(this.giveCode.giveCode("", "ins_fibers", "", "yyMMdd")); - fibersDto.setCode(""); + fibersDto.setCode(fibersCodeGenerator.generateNumberWithPrefix(3, currentDay, InsFibers::getCode)); } insFibersMapper.insert(fibersDto); for (FiberDto fiberDto : fibersDto.getFiber()) { @@ -335,16 +336,13 @@ insProductMapper.insert(product); } } -// else { -// throw new ErrorException("鏍峰搧鐨勫厜绾ら厤缃俊鎭噷闈㈡病鏈夐厤缃厜绾ゅ甫淇℃伅涔熸病鏈夊厜绾や俊鎭�,璇烽噸鏂伴厤缃繚瀛樺啀鎻愪氦涓嬪崟!!!"); -// } } } } } if (ObjectUtil.isNotEmpty(a.getInsulating())) { List<InsProduct> ip2 = new ArrayList<>(); - for (Integer i = 0; i < a.getInsulating().getNum(); i++) { + for (int i = 0; i < a.getInsulating().getNum(); i++) { ip2.addAll(a.getInsulating().getInsProduct()); } for (InsProduct product : ip2) { @@ -365,8 +363,7 @@ b.setInsOrderId(insOrder.getId()); b.setParentId(a.getId()); if (StrUtil.isEmpty(b.getSampleCode())) { -// b.setSampleCode(this.giveCode.giveCode("", "ins_sample", "", "yyMMdd")); - b.setSampleCode(""); + b.setSampleCode(sampleCodeGenerator.generateNumberWithPrefix(3, currentDay, InsSample::getSampleCode)); } insSampleMapper.insert(b); if (ObjectUtil.isNotEmpty(b.getInsProduct())) { @@ -389,7 +386,7 @@ } else { for (FibersDto fibersDto : bushingDto.getFibers()) { fibersDto.setInsBushingId(bushingDto.getId()); - fibersDto.setCode(""); + fibersDto.setCode(fibersCodeGenerator.generateNumberWithPrefix(3, currentDay, InsFibers::getCode)); insFibersMapper.insert(fibersDto); for (FiberDto fiberDto : fibersDto.getFiber()) { fiberDto.setInsFibersId(fibersDto.getId()); @@ -509,16 +506,6 @@ } } } - - // 娌℃湁杩涜鍏夌氦閰嶇疆鐨勭啍鎺ラ厤瀵癸紝鐩存帴娣诲姞鏍峰搧 -// try { -// for (InsProduct insProduct : insProducts) { -// insProduct.setId(null); -// insProduct.setInsSampleId(insSample.getId()); -// insProductMapper.insert(insProduct); -// } -// } catch (Exception e) { -// } } } return insOrder.getId(); @@ -935,20 +922,16 @@ } @Override - public Map<String, Object> selectSampleAndProductByOrderId(SampleProductDto2 sampleProductDto) { - Map<String, Object> map = new HashMap<>(); - List<Map<String, Object>> headList = new ArrayList<>(); + public List<SampleProductDto2> selectSampleAndProductByOrderId(SampleProductDto2 sampleProductDto) { List<SampleProductDto2> SampleProductDto2S = null; if (!Objects.isNull(sampleProductDto.getId())) { String laboratory = insOrderMapper.selectById(sampleProductDto.getId()).getLaboratory(); if (laboratory.equals("鐢靛姏浜у搧瀹為獙瀹�")) { //鐢靛姏璇曢獙瀹ょ殑鏁版嵁鏌ョ湅锛屽垹闄ゅ厜绾ら厤缃浉鍏冲瓧娈� -// headList = PrintChina.printChina(SampleProductDTODL.class); SampleProductDto2S = insOrderMapper.selectSampleAndProductByOrderId( QueryWrappers.queryWrappers(sampleProductDto).orderByAsc("ins_product_id"), sampleProductDto.getId()); } else { -// headList = PrintChina.printChina(SampleProductDto2.class); SampleProductDto2S = insOrderMapper.selectSampleAndProductByOrderId( QueryWrappers.queryWrappers(sampleProductDto) .orderByAsc("son_laboratory"), @@ -1022,7 +1005,7 @@ } collect2.addAll(list); SampleProductDto2S = collect2; -// SampleProductDto2S.sort(new CustomComparator(enumService)); + SampleProductDto2S.sort(new CustomComparator(dictTypeService)); } } for (SampleProductDto2 record : SampleProductDto2S) { @@ -1039,9 +1022,7 @@ record.setLastValue(String.join(",", values)); } } - map.put("head", headList); - map.put("body", SampleProductDto2S); - return map; + return SampleProductDto2S; } @Override @@ -1200,8 +1181,7 @@ @Override public void exportChecked(Map<String, Object> data, HttpServletResponse response) { // Integer userId = getLook.selectPowerByMethodAndUserId(null).get("userId"); - Integer userId = Integer.valueOf(String.valueOf(SecurityUtils.getLoginUser().getUserId())); - User user = userMapper.selectById(userId); + User user = userMapper.selectById(SecurityUtils.getLoginUser().getUserId()); List<String> names = null; String startTime = ""; String endTime = ""; @@ -1710,7 +1690,7 @@ } temperatureCyclingList = temperatureCyclingList.stream().distinct().collect(Collectors.toList()); //鏌ヨ鍏ㄨ壊璋憋紝杩囨护鑹叉爣骞舵帓搴� - List<String> colorList = dictTypeService.selectDictDataByType("color_type").stream() + List<String> colorList = dictTypeService.selectDictDataByType("fiber_color_type").stream() .sorted(Comparator.comparing(SysDictData::getDictSort)) .map(SysDictData::getDictLabel) .collect(Collectors.toList()); @@ -1945,10 +1925,6 @@ LocalDate today = LocalDate.parse(split[1]); LocalTime end = LocalTime.of(23, 59, 59); List<CostStatisticsDto> costStatisticsDtos = insOrderMapper.selectCostStatistics2(QueryWrappers.queryWrappers(costStatisticsDto), split[0], today.atTime(end).toString(), laboratory); -// double totalPrice = costStatisticsDtos.stream() -// .filter(dto -> dto.getPrice() != null) // 杩囨护鎺変环鏍间负 null 鐨勫璞� -// .mapToDouble(value -> value.getPrice().doubleValue() * value.getNum()) -// .sum(); BigDecimal total = BigDecimal.ZERO; for (CostStatisticsDto dto : costStatisticsDtos) { if (Objects.isNull(dto.getPrice()) || dto.getPrice().compareTo(BigDecimal.ZERO) == 0) { -- Gitblit v1.9.3