From 48ba72a6a0492254a5c4ef1c5ec96a38440a765b Mon Sep 17 00:00:00 2001 From: zhuo <2089219845@qq.com> Date: 星期三, 19 二月 2025 17:44:10 +0800 Subject: [PATCH] 订单下单调整 --- basic-server/src/main/resources/mapper/StandardTreeMapper.xml | 19 ++- inspect-server/src/main/java/com/ruoyi/inspect/service/InsOrderService.java | 2 ruoyi-common/src/main/java/com/ruoyi/common/handler/MybatisHandler.java | 1 basic-server/src/main/java/com/ruoyi/basic/controller/StandardTemplateController.java | 2 inspect-server/src/main/java/com/ruoyi/inspect/service/impl/RawMaterialOrderServiceImpl.java | 20 +++ inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSampleUser.java | 2 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java | 10 ++ inspect-server/src/main/java/com/ruoyi/inspect/controller/InsOrderController.java | 25 ---- inspect-server/src/main/java/com/ruoyi/inspect/controller/RawMaterialOrderController.java | 31 +++-- basic-server/src/main/java/com/ruoyi/basic/mapper/StandardTreeMapper.java | 7 + inspect-server/src/main/java/com/ruoyi/inspect/dto/InsPlaceOrderDto.java | 27 +++++ ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java | 10 ++ ruoyi-system/src/main/resources/mapper/system/UserMapper.xml | 13 ++ inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java | 3 ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java | 6 + ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java | 7 + basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java | 39 ++++--- inspect-server/pom.xml | 3 basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java | 37 ++---- 19 files changed, 169 insertions(+), 95 deletions(-) diff --git a/basic-server/src/main/java/com/ruoyi/basic/controller/StandardTemplateController.java b/basic-server/src/main/java/com/ruoyi/basic/controller/StandardTemplateController.java index f4414ee..07be416 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/controller/StandardTemplateController.java +++ b/basic-server/src/main/java/com/ruoyi/basic/controller/StandardTemplateController.java @@ -19,7 +19,7 @@ @ApiOperation(value = "鑾峰彇鍘熷璁板綍妯℃澘鍒楄〃") @GetMapping("/selectStandardTemplatePageList") - public Result selectStandardTemplatePageList(Page page,StandardTemplate standardTemplate) throws Exception { + public Result selectStandardTemplatePageList(Page page,StandardTemplate standardTemplate){ return Result.success(standardTemplateService.selectStandardTemplatePageList(page, standardTemplate)); } diff --git a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardTreeMapper.java b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardTreeMapper.java index daad498..fc0aa9f 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardTreeMapper.java +++ b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardTreeMapper.java @@ -12,6 +12,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Set; /** * @author Administrator @@ -85,6 +86,12 @@ */ IPage<IfsInventoryQuantitySupplierDto> getIfsByQuarter(Page<IfsInventoryQuantitySupplierDto> page, @Param("ew") QueryWrapper<IfsInventoryQuantitySupplierDto> ew, @Param("beginDeclareDate") String beginDeclareDate, @Param("endDeclareDate")String endDeclareDate); + /** + * 鎵归噺鏌ヨ鏍� + * @param sampleTypeValues + * @return + */ + List<SampleDto> getStandardTree3Batch(@Param("sampleTypeValues") Set<String> sampleTypeValues); } diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java index c5695ec..b50d427 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java +++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java @@ -432,30 +432,21 @@ .like(StandardProductList::getTree, tree)); } - boolean success = false; - int retryCount = 0; - while (!success && retryCount < 100) { - try { - standardProductListService2.saveBatch(list.stream().map(a -> { - a.setFactory(trees[0]); - a.setLaboratory(trees[1]); - a.setSampleType(trees[2]); - a.setCreateUser(userId); - a.setUpdateUser(userId); - a.setStandardMethodListId(id); - return a; - }).collect(Collectors.toList())); - ; - success = true; - } catch (Exception e) { - // 澶勭悊閲嶅 ID 鐨勮褰曪紝閲嶆柊鐢熸垚 ID 骞剁户缁皾璇曟彃鍏� - for (StandardProductList productList : list) { - productList.setId(IdWorker.getId()); - } + try { + standardProductListService2.saveBatch(list.stream().map(a -> { + a.setFactory(trees[0]); + a.setLaboratory(trees[1]); + a.setSampleType(trees[2]); + a.setCreateUser(userId); + a.setUpdateUser(userId); + a.setStandardMethodListId(id); + return a; + }).collect(Collectors.toList())); + } catch (Exception e) { + // 澶勭悊閲嶅 ID 鐨勮褰曪紝閲嶆柊鐢熸垚 ID 骞剁户缁皾璇曟彃鍏� + for (StandardProductList productList : list) { + productList.setId(IdWorker.getId()); } - } - if (!success) { - throw new RuntimeException("鎻掑叆澶辫触"); } } diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java index b64ab41..3fe74d1 100644 --- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java +++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java @@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.basic.dto.SampleDto; import com.ruoyi.common.exception.base.BaseException; import com.ruoyi.basic.dto.FactoryDto; import com.ruoyi.basic.dto.LaboratoryDto; @@ -29,10 +30,9 @@ import java.io.IOException; import java.io.InputStream; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.concurrent.atomic.AtomicReference; +import java.util.stream.Collectors; /** * @author Administrator @@ -61,20 +61,33 @@ @Override public List<FactoryDto> selectStandardTreeList() { List<FactoryDto> factoryDtos = standardTreeMapper.selectStandardTreeList(); + // 鏀堕泦鎵�鏈� sampleTypeDto 鐨� value + Set<String> sampleTypeValues = new HashSet<>(); for (FactoryDto factoryDto : factoryDtos) { for (LaboratoryDto laboratoryDto : factoryDto.getChildren()) { laboratoryDto.getChildren().sort((o1, o2) -> (o1.getSort() == null ? 0 : o1.getSort()) - (o2.getSort() == null ? 0 : o2.getSort())); for (SampleTypeDto sampleTypeDto : laboratoryDto.getChildren()) { -// if (sampleTypeDto.getChildren().size() == 0) { - sampleTypeDto.getChildren().addAll(standardTreeMapper.getStandardTree3(sampleTypeDto.getValue())); -// } + sampleTypeValues.add(sampleTypeDto.getValue()); + } + } + } + // 鎵归噺鏌ヨ鎵�鏈� sampleTypeDto 鐨勬暟鎹� + List<SampleDto> standardList = standardTreeMapper.getStandardTree3Batch(sampleTypeValues); + Map<String, List<SampleDto>> standardTreeMap = standardList.stream().collect(Collectors.groupingBy(SampleDto::getValue)); + // 灏嗘煡璇㈢粨鏋滃垎閰嶅埌瀵瑰簲鐨� sampleTypeDto + for (FactoryDto factoryDto : factoryDtos) { + for (LaboratoryDto laboratoryDto : factoryDto.getChildren()) { + for (SampleTypeDto sampleTypeDto : laboratoryDto.getChildren()) { + List<SampleDto> standardTreeList = standardTreeMap.get(sampleTypeDto.getValue()); + if (standardTreeList != null) { + sampleTypeDto.getChildren().addAll(standardTreeList); + } } } } return factoryDtos; } - @Override @@ -109,18 +122,6 @@ standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2]).eq(StandardTree::getSample, trees[3]).eq(StandardTree::getModel, trees[4])); } break; - /*case 4: - standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2]).eq(StandardTree::getSample, trees[3])); - break; - case 3: - standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2])); - break; - case 2: - standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1])); - break; - case 1: - standardTreeMapper.delete(Wrappers.<StandardTree>lambdaUpdate().eq(StandardTree::getFactory, trees[0])); - break;*/ } return 1; } diff --git a/basic-server/src/main/resources/mapper/StandardTreeMapper.xml b/basic-server/src/main/resources/mapper/StandardTreeMapper.xml index 74ded82..e97a9cd 100644 --- a/basic-server/src/main/resources/mapper/StandardTreeMapper.xml +++ b/basic-server/src/main/resources/mapper/StandardTreeMapper.xml @@ -212,14 +212,6 @@ and st.sample = p.name </select> - <select id="getStandardTree3" resultType="com.ruoyi.basic.dto.SampleDto"> - select model label, - model value - from standard_tree - where sample_type = #{sampleType} - and sample is null - </select> - <select id="getLaboratory" resultType="java.lang.String"> select l.laboratory_name from structure_test_object sto @@ -381,4 +373,15 @@ ${ew.customSqlSegment} </if> </select> + + <select id="getStandardTree3Batch" resultType="com.ruoyi.basic.dto.SampleDto"> + select model label, + model value + from standard_tree + where sample_type in + <foreach item="item" collection="sampleTypeValues" open="(" separator="," close=")"> + #{item} + </foreach> + and sample is null + </select> </mapper> diff --git a/inspect-server/pom.xml b/inspect-server/pom.xml index 9781406..d3d0bd6 100644 --- a/inspect-server/pom.xml +++ b/inspect-server/pom.xml @@ -49,7 +49,6 @@ </dependency> <!--word杞琾df--> - <!--D:\JavaWork\center-lims-after\inspect-server\src\main\resources\lib--> <!--mvn install:install-file -Dfile=aspose-words-15.12.0-jdk16.jar -DgroupId=com.aspose -DartifactId=aspose-words -Dversion=15.12.0 -Dpackaging=jar--> <dependency> <groupId>com.aspose</groupId> @@ -62,7 +61,7 @@ <version>5.0.6</version> </dependency> - + </dependencies> <properties> diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsOrderController.java b/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsOrderController.java index e65b4ea..b3a36ef 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsOrderController.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsOrderController.java @@ -75,16 +75,10 @@ return Result.success(insOrderService.upInsOrder(orderId, sampleId, appointed, userId,sonLaboratory)); } - //todo: 涓嬪崟闇�瑕佷慨鏀� @ApiOperation(value = "娣诲姞妫�楠屼笅鍗曟暟鎹�") @PostMapping("/addInsOrder") - public Result<?> addInsOrder(String str) { - Map<String, Object> map = JSON.parseObject(str, Map.class); - JSONArray jsonArray = JSON.parseArray(map.get("list")+""); - List<SampleProductDto> list = jsonArray.toJavaList(SampleProductDto.class); - InsOrder insOrder = JSON.parseObject(JSON.toJSONString(map.get("insOrder")), InsOrder.class); - List<List<Integer>> pairing = JSON.parseArray(map.get("pairing")+""); - return Result.success(insOrderService.addInsOrder(list, insOrder, pairing)); + public Result<?> addInsOrder(@RequestBody InsPlaceOrderDto insPlaceOrderDto) { + return Result.success(insOrderService.addInsOrder(insPlaceOrderDto.getSampleList(), insPlaceOrderDto.getInsOrder())); } @ApiOperation(value = "鏌ヨ璁㈠崟鏈�闀块璁℃椂闂�") @@ -236,19 +230,6 @@ return Result.success(insOrderService.getRetestResult(insProductId)); } - - - @ApiOperation(value = "閾滃崟涓濅笅鍗�") - @PostMapping("/addRawCopperOrder") - public Result<?> addRawCopperOrder(String str) { - Map<String, Object> map = JSON.parseObject(str, Map.class); - JSONArray jsonArray = JSON.parseArray(map.get("list")+""); - List<SampleProductDto> list = jsonArray.toJavaList(SampleProductDto.class); - CopperInsOrderDto CopperInsOrder = JSON.parseObject(JSON.toJSONString(map.get("insOrder")), CopperInsOrderDto.class); - return Result.success(insOrderService.addRawCopperOrder(list, CopperInsOrder)); - } - - @ApiOperation(value = "淇敼濮旀墭缂栧彿") @PostMapping("/updateOrderEntrustCode") public Result<?> updateOrderEntrustCode(@RequestBody InsOrder insOrder) { @@ -263,7 +244,7 @@ } @ApiOperation(value = "鍒犻櫎閫�鍥炶鍗�") - @GetMapping("/delInsOrder") + @DeleteMapping("/delInsOrder") public Result<?> delInsOrder(Integer insOrderId) { // 鏌ヨ璁㈠崟 InsOrder order = insOrderService.getById(insOrderId); diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/controller/RawMaterialOrderController.java b/inspect-server/src/main/java/com/ruoyi/inspect/controller/RawMaterialOrderController.java index 5ec41ee..abc3b2a 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/controller/RawMaterialOrderController.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/controller/RawMaterialOrderController.java @@ -5,9 +5,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.basic.dto.*; import com.ruoyi.basic.pojo.IfsInventoryQuantity; +import com.ruoyi.inspect.dto.InsPlaceOrderDto; import com.ruoyi.inspect.dto.SampleProductDto; import com.ruoyi.inspect.pojo.InsOrder; import com.ruoyi.inspect.pojo.RawMaterialOrderTemplate; +import com.ruoyi.inspect.service.InsOrderService; import com.ruoyi.inspect.service.RawMaterialOrderService; import com.ruoyi.inspect.service.RawMaterialOrderTemplateService; import com.ruoyi.common.core.domain.Result; @@ -34,6 +36,7 @@ @Api(tags = "鍘熸潗鏂欎笅鍗�") public class RawMaterialOrderController { + private InsOrderService insOrderService; private RawMaterialOrderService rawMaterialOrderService; private RawMaterialOrderTemplateService rawMaterialOrderTemplateService; @@ -99,7 +102,7 @@ /** * 鍙栨秷鎶ユ - * @param param 鍘熸潗鏂欎笅鍗� + * @param param * @return */ @ApiOperation(value = "鎾ら攢鎶ユ") @@ -159,12 +162,8 @@ @ApiOperation(value = "鍘熸潗鏂欎笅鍗曞厤妫�") @PostMapping("/addExemptionOrder") - public Result<?> addExemptionOrder(String str) { - Map<String, Object> map = JSON.parseObject(str, Map.class); - JSONArray jsonArray = JSON.parseArray(map.get("list")+""); - List<SampleProductDto> list = jsonArray.toJavaList(SampleProductDto.class); - InsOrder insOrder = JSON.parseObject(JSON.toJSONString(map.get("insOrder")), InsOrder.class); - return Result.success(rawMaterialOrderService.addExemptionOrder(list, insOrder)); + public Result<?> addExemptionOrder(@RequestBody InsPlaceOrderDto insPlaceOrderDto) { + return Result.success(rawMaterialOrderService.addExemptionOrder(insPlaceOrderDto.getSampleList(), insPlaceOrderDto.getInsOrder())); } @@ -176,7 +175,7 @@ /** * 鍙栨秷鎶ユ - * @param id 鍘熸潗鏂欎笅鍗� + * @param id * @return */ @ApiOperation(value = "鍒犻櫎鍘熸潗鏂欐姤妫�淇℃伅") @@ -238,14 +237,18 @@ return Result.success(); } + + + @ApiOperation(value = "閾滃崟涓濅笅鍗�") + @PostMapping("/addRawCopperOrder") + public Result<?> addRawCopperOrder(@RequestBody InsPlaceOrderDto insPlaceOrderDto) { + return Result.success(insOrderService.addRawCopperOrder(insPlaceOrderDto.getSampleList(), insPlaceOrderDto.getCopperInsOrder())); + } + @ApiOperation(value = "閾滃崟涓濅笅鍗曞厤妫�") @PostMapping("/addRawCopperOrderExemptionOrder") - public Result<?> addRawCopperOrderExemptionOrder(String str) { - Map<String, Object> map = JSON.parseObject(str, Map.class); - JSONArray jsonArray = JSON.parseArray(map.get("list")+""); - List<SampleProductDto> list = jsonArray.toJavaList(SampleProductDto.class); - CopperInsOrderDto CopperInsOrder = JSON.parseObject(JSON.toJSONString(map.get("insOrder")), CopperInsOrderDto.class); - return Result.success(rawMaterialOrderService.addRawCopperOrderExemptionOrder(list, CopperInsOrder)); + public Result<?> addRawCopperOrderExemptionOrder(@RequestBody InsPlaceOrderDto insPlaceOrderDto) { + return Result.success(rawMaterialOrderService.addRawCopperOrderExemptionOrder(insPlaceOrderDto.getSampleList(), insPlaceOrderDto.getCopperInsOrder())); } /** diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/dto/InsPlaceOrderDto.java b/inspect-server/src/main/java/com/ruoyi/inspect/dto/InsPlaceOrderDto.java new file mode 100644 index 0000000..03c0cc6 --- /dev/null +++ b/inspect-server/src/main/java/com/ruoyi/inspect/dto/InsPlaceOrderDto.java @@ -0,0 +1,27 @@ +package com.ruoyi.inspect.dto; + +import com.ruoyi.inspect.pojo.InsOrder; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * 涓嬪崟瀵硅薄 + * + * @Author zhuo + * @Date 2025/2/19 + */ +@Data +public class InsPlaceOrderDto{ + + @ApiModelProperty("鏍峰搧") + private List<SampleProductDto> sampleList; + + @ApiModelProperty("璁㈠崟淇℃伅") + private InsOrder insOrder; + + @ApiModelProperty("閾滃崟涓濊鍗�") + private CopperInsOrderDto copperInsOrder; + +} diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSampleUser.java b/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSampleUser.java index 52807bb..6acf39b 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSampleUser.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSampleUser.java @@ -24,7 +24,7 @@ private Integer id; /** - * 澶栭敭锛氭楠屾牱鍝乮ns_sample琛╥d + * 澶栭敭锛氭槸璁㈠崟insOrder琛╥d (????) */ private Integer insSampleId; diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/InsOrderService.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/InsOrderService.java index ea5ac0a..e845236 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/service/InsOrderService.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/InsOrderService.java @@ -29,7 +29,7 @@ //淇敼妫�楠屼笅鍗曟暟鎹� int upInsOrder(Integer orderId,Integer sampleId, String appointed, Integer userId,String sonLaboratory); - int addInsOrder(List<SampleProductDto> list, InsOrder insOrder, List<List<Integer>> pairing); + int addInsOrder(List<SampleProductDto> list, InsOrder insOrder); Map<String, Object> getInsOrder(Integer id); 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 aeba583..87188f4 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 @@ -149,7 +149,7 @@ @Override @Transactional(rollbackFor = Exception.class) - public int addInsOrder(List<SampleProductDto> list, InsOrder insOrder, List<List<Integer>> pairing) { + public int addInsOrder(List<SampleProductDto> list, InsOrder insOrder) { // todo: 涓嬪崟鍒ゆ柇鎶芥牱璁″垝鐨勫敮涓�鎬� if (insOrder.getQuarterItemId() != null) { Long quarterItemCount = insOrderMapper.selectCount(Wrappers.<InsOrder>lambdaQuery() @@ -159,7 +159,6 @@ throw new ErrorException("璇ユ娊鏍疯鍒掑凡琚粦瀹氳繃"); } } - insOrder.setState(0); LocalDate appointed = insOrder.getAppointed(); diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/RawMaterialOrderServiceImpl.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/RawMaterialOrderServiceImpl.java index 9bce1e1..43fcea6 100644 --- a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/RawMaterialOrderServiceImpl.java +++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/RawMaterialOrderServiceImpl.java @@ -57,6 +57,7 @@ import java.time.format.DateTimeFormatter; import java.util.*; import java.util.concurrent.atomic.AtomicInteger; +import java.util.stream.Collectors; /** * @Author zhuo @@ -90,11 +91,26 @@ throw new ErrorException("闆朵欢鍙蜂负" + partNo + "鐨勫師鏉愭枡娌℃湁瀵瑰簲鐨勬爣鍑嗗簱閰嶇疆"); } RawMaterialStandardTreeDto rawMaterialStandardTreeDto = new RawMaterialStandardTreeDto(); + Set<String> sampleTypeValues = new HashSet<>(); for (FactoryDto factoryDto : factoryDtos) { for (LaboratoryDto laboratoryDto : factoryDto.getChildren()) { for (SampleTypeDto sampleTypeDto : laboratoryDto.getChildren()) { if (sampleTypeDto.getChildren().size() == 0) { - sampleTypeDto.setChildren(standardTreeMapper.getStandardTree3(sampleTypeDto.getValue())); + sampleTypeValues.add(sampleTypeDto.getValue()); + } + } + } + } + // 鎵归噺鏌ヨ鎵�鏈� sampleTypeDto 鐨勬暟鎹� + List<SampleDto> standardList = standardTreeMapper.getStandardTree3Batch(sampleTypeValues); + Map<String, List<SampleDto>> standardTreeMap = standardList.stream().collect(Collectors.groupingBy(SampleDto::getValue)); + + for (FactoryDto factoryDto : factoryDtos) { + for (LaboratoryDto laboratoryDto : factoryDto.getChildren()) { + for (SampleTypeDto sampleTypeDto : laboratoryDto.getChildren()) { + List<SampleDto> standardTreeList = standardTreeMap.get(sampleTypeDto.getValue()); + if (sampleTypeDto.getChildren().size() == 0) { + sampleTypeDto.getChildren().addAll(standardTreeList); } // 鍒ゆ柇缁戝畾鐨勬槸鍚︽槸褰撳墠闆朵欢鍙� if (sampleTypeDto.getPartNo() != null && sampleTypeDto.getPartNo().equals(partNo)) { @@ -491,6 +507,8 @@ } + + /** * 閾滃崟涓濅笅鍗曞厤妫� * @param list diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java index 802bd22..c5fb7e2 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java @@ -37,5 +37,15 @@ return Result.success(userService.selectUserCondition(user, type)); } + /** + * 鑾峰彇褰撳墠鐧诲綍鐨勫鎴蜂俊鎭� + * @return + */ + @GetMapping("/getUserNow") + @ApiOperation(value = "鑾峰彇褰撳墠鐧诲綍鐨勫鎴蜂俊鎭�") + public Result<?> getUserNow(){ + return Result.success(userService.getUserNow()); + } + } diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/handler/MybatisHandler.java b/ruoyi-common/src/main/java/com/ruoyi/common/handler/MybatisHandler.java index 3f0d883..f9a5932 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/handler/MybatisHandler.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/handler/MybatisHandler.java @@ -18,7 +18,6 @@ userId = SecurityUtils.getUserId().intValue(); } catch (Exception ignored) { } - System.out.println("鎵ц鎻掑叆濉厖..."); this.strictInsertFill(metaObject, "createTime", LocalDateTime.class, LocalDateTime.now()); this.strictInsertFill(metaObject, "updateTime", LocalDateTime.class, LocalDateTime.now()); this.strictInsertFill(metaObject, "createUser", Integer.class, userId); diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java index 6bfa898..51b3929 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java @@ -22,5 +22,12 @@ * @return */ List<User> selectUserCondition(@Param("ew") QueryWrapper<User> ew, @Param("type") String type); + + /** + * 鑾峰彇褰撳墠鐧诲綍鐨勫鎴蜂俊鎭� + * @param userId + * @return + */ + User getUserNow(@Param("userId") int userId); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java index 615f700..9c0a6d3 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java @@ -21,5 +21,11 @@ * @return */ List<User> selectUserCondition(User user, String type); + + /** + * 鑾峰彇褰撳墠鐧诲綍鐨勫鎴蜂俊鎭� + * @return + */ + User getUserNow(); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java index 7251c0c..3241365 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.domain.entity.User; import com.ruoyi.common.utils.QueryWrappers; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.system.mapper.UserMapper; import com.ruoyi.system.service.UserService; import org.springframework.stereotype.Service; @@ -28,5 +29,14 @@ public List<User> selectUserCondition(User user, String type) { return baseMapper.selectUserCondition(QueryWrappers.queryWrappers(user), type); } + + /** + * 鑾峰彇褰撳墠鐧诲綍鐨勫鎴蜂俊鎭� + * @return + */ + @Override + public User getUserNow() { + return baseMapper.getUserNow(SecurityUtils.getUserId().intValue()); + } } diff --git a/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml index f927978..6634947 100644 --- a/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml @@ -29,4 +29,17 @@ ${ew.customSqlSegment} </if> </select> + + <!-- 鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛淇℃伅 --> + <select id="getUserNow" resultType="com.ruoyi.common.core.domain.entity.User"> + select u.id, + c.company, + u.name, + c.code, + u.phone, + c.id departId + from user u + left join custom c on u.company = c.id + where u.id = #{userId} + </select> </mapper> -- Gitblit v1.9.3