From 80ea05da0c43c2ae14e2d8cf8d284d96d9a8f1f5 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期二, 06 八月 2024 19:08:53 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java | 71 +++++++++++++++++++++++++++++++++-- 1 files changed, 67 insertions(+), 4 deletions(-) diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java index 2bdfe65..649278d 100644 --- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java +++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java @@ -8,6 +8,7 @@ import com.alibaba.excel.write.style.column.SimpleColumnWidthStyleStrategy; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -34,6 +35,7 @@ import java.net.URLEncoder; import java.time.LocalDate; import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.*; import java.util.concurrent.atomic.AtomicInteger; import java.util.stream.Collectors; @@ -56,6 +58,8 @@ private InsProductMapper insProductMapper; private InsProductService insProductService; + + private InsProductUserMapper insProductUserMapper; private GiveCode giveCode; @@ -111,7 +115,14 @@ } } } - map.put("body", insOrderMapper.selectInsOrderPage(page, QueryWrappers.queryWrappers(sampleOrderDto), laboratory)); + IPage<SampleOrderDto> sampleOrderDtoIPage = insOrderMapper.selectInsOrderPage(page, QueryWrappers.queryWrappers(sampleOrderDto), laboratory); + sampleOrderDtoIPage.getRecords().forEach(i -> { + if (i.getSampleCode().contains("锛�")) { + String[] split = i.getSampleCode().split("锛�"); + i.setSampleCode(split[0]); + } + }); + map.put("body", sampleOrderDtoIPage); return map; } @@ -198,6 +209,7 @@ for (BushingDto bushingDto : a.getBushing()) { bushingDto.setInsSampleId(a.getId()); insBushingMapper.insert(bushingDto); + //鍏夌氦涓嶄负绌� if (bushingDto.getFiber().size() != 0) { for (FiberDto fiberDto : bushingDto.getFiber()) { fiberDto.setInsBushingId(bushingDto.getId()); @@ -205,7 +217,9 @@ addInsProductMethod(a.getId(), a.getInsProduct(), fiberDto.getId(), 2, true); addInsProductMethod(a.getId(), fiberDto.getProductList(), fiberDto.getId(), 2, false); } - } else { + } + //鍏夌氦甯︿笉涓虹┖ + else if ( bushingDto.getFibers().size()!=0){ for (FibersDto fibersDto : bushingDto.getFibers()) { fibersDto.setInsBushingId(bushingDto.getId()); fibersDto.setCode(this.giveCode.giveCode("", "ins_fibers", "", "yyMMdd")); @@ -218,6 +232,29 @@ } //addInsProductMethod(a.getId(), a.getInsProduct(), fibersDto.getId(), 1); addInsProductMethod(a.getId(), fibersDto.getProductList(), fibersDto.getId(), 1, false); + } + } + //閮戒负绌� 鍙厤缃簡濂楃 杩欑鎯呭喌鍙檺浜庨」鐩槸鍚湁鏉惧绠$殑 + else { + String collect = a.getInsProduct().stream().map(InsProduct::getInspectionItem).distinct().collect(Collectors.joining(",")); + if (collect.contains("鏉惧绠�")){ + //鑾峰彇妫�楠岄」鐩腑鍖呭惈鏉惧绠$殑妫�楠岄」鐩� + List<InsProduct> products = a.getInsProduct().stream().filter(insProduct -> insProduct.getInspectionItem().contains("鏉惧绠�")).collect(Collectors.toList()); + for (InsProduct product : products) { + product.setInsBushId(bushingDto.getId()); + product.setId(null); + product.setCreateTime(null); + product.setUpdateTime(null); + product.setUpdateTime(null); + product.setUpdateUser(null); + product.setInsSampleId(a.getId()); + if (product.getInspectionItemSubclass() == null) { + product.setInspectionItemSubclass(""); + } + insProductMapper.insert(product); + } + }else { + throw new ErrorException("鏍峰搧鐨勫厜绾ら厤缃俊鎭噷闈㈡病鏈夐厤缃厜绾ゅ甫淇℃伅涔熸病鏈夊厜绾や俊鎭�,璇烽噸鏂伴厤缃繚瀛樺啀鎻愪氦涓嬪崟!!!"); } } } @@ -303,6 +340,9 @@ InsOrder insOrder = insOrderMapper.selectById(insSampleMapper.selectById(sampleId).getInsOrderId()); String name = insSampleMapper.selMethodById(sampleId); for (InsProduct product : productList) { + if (product.getInspectionItem().contains("鏉惧绠�")){ + continue; + } if (product.getState() == 1 && !product.getInspectionItem().equals("鍏夌氦鎺ュご鎹熻��")) { //鍒ゆ柇鍏夌紗鐨勬俯搴﹀惊鐜」鐩坊鍔� if (insOrder.getSampleType().equals("鍏夌紗") && product.getInspectionItem().equals("娓╁害寰幆") && type != 0) { @@ -415,7 +455,8 @@ } } insProductService.saveBatch(insProductess); - } else { + } + else { if (!is) { switch (type) { case 1: @@ -539,6 +580,16 @@ Map<String, Object> map = new HashMap<>(); InsOrder insOrder = insOrderMapper.selectById(id); List<SampleProductDto> list = insSampleMapper.getInsOrderAndSample(id, laboratory); + for (SampleProductDto sampleProductDto : list) { + List<Integer> ids = sampleProductDto.getInsProduct().stream().map(InsProduct::getId).collect(Collectors.toList()); + List<InsProductUser> insProductUsers = insProductUserMapper.selectList(Wrappers.<InsProductUser>lambdaQuery() + .in(InsProductUser::getInsProductId, ids)); + if (CollectionUtils.isNotEmpty(insProductUsers)) { + List<Integer> userIds = insProductUsers.stream().map(InsProductUser::getCreateUser).distinct().collect(Collectors.toList()); + String collect = userMapper.selectBatchIds(userIds).stream().map(User::getName).collect(Collectors.joining(",")); + sampleProductDto.setCheckName(collect); + } + } map.put("insOrder", insOrder); map.put("sampleProduct", list); //鏌ヨ鎵�鏈夎褰曟ā鐗堝幓閲� @@ -551,7 +602,19 @@ public Map<String, Object> selectSampleAndProductByOrderId(IPage<SampleProductDto2> page, SampleProductDto2 sampleProductDto) { Map<String, Object> map = new HashMap<>(); map.put("head", PrintChina.printChina(SampleProductDto2.class)); - map.put("body", insOrderMapper.selectSampleAndProductByOrderId(page, QueryWrappers.queryWrappers(sampleProductDto))); + IPage<SampleProductDto2> productDto2IPage = insOrderMapper.selectSampleAndProductByOrderId(page, QueryWrappers.queryWrappers(sampleProductDto)); + for (SampleProductDto2 record : productDto2IPage.getRecords()) { + InsProductUser insProductUser = insProductUserMapper.selectOne(Wrappers.<InsProductUser>lambdaQuery() + .eq(InsProductUser::getInsProductId, record.getInsProductId()) + .orderByDesc(InsProductUser::getCreateTime) + .last("limit 1")); + if (ObjectUtils.isNotEmpty(insProductUser)){ + record.setCheckName(userMapper.selectById(insProductUser.getCreateUser()).getName()); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + record.setCheckTime(insProductUser.getCreateTime().format(formatter)); + } + } + map.put("body",productDto2IPage); return map; } -- Gitblit v1.9.3