From c453de19f357c6998572fcca96d74ff5d9b32531 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期二, 11 三月 2025 19:10:34 +0800
Subject: [PATCH] 检验下单代码迁移:下单功能

---
 basic-server/src/main/resources/mapper/StandardProductListMapper.xml                 |    4 
 basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java     |    2 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/UserController.java        |   11 ++
 inspect-server/src/main/java/com/ruoyi/inspect/controller/InsOrderController.java    |   15 +--
 basic-server/src/main/java/com/ruoyi/basic/mapper/StandardTreeMapper.java            |    2 
 ruoyi-common/src/main/java/com/ruoyi/common/numgen/NumberGenerator.java              |    1 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java    |    4 
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java        |   23 +++++
 ruoyi-system/src/main/resources/mapper/system/UserMapper.xml                         |   46 +++++++++++
 inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java |   36 +++------
 ruoyi-system/src/main/java/com/ruoyi/system/service/UserService.java                 |    4 +
 inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSample.java                   |    6 -
 ruoyi-system/src/main/java/com/ruoyi/system/mapper/UserMapper.java                   |    5 +
 basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java |   12 +--
 inspect-server/src/main/java/com/ruoyi/inspect/controller/InsBushingController.java  |   35 ++++++++
 inspect-server/src/main/java/com/ruoyi/inspect/dto/AddInsOrderDTO.java               |   27 ++++++
 16 files changed, 180 insertions(+), 53 deletions(-)

diff --git a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java
index 0942d94..7311557 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.ruoyi.basic.pojo.StandardProductList;
 import com.ruoyi.basic.vo.StandardProductVO;
+import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -14,6 +15,7 @@
 * @createDate 2024-03-05 10:33:29
 * @Entity com.ruoyi.basic.pojo.StandardProductList
 */
+@Mapper
 public interface StandardProductListMapper extends BaseMapper<StandardProductList> {
 
     IPage<StandardProductList> standardProductListIPage(@Param("id") Integer id, @Param("tree") String tree, IPage<StandardProductList> page, @Param("laboratory") String laboratory, @Param("insItem") String insItem, @Param("insItems") String insItems);
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 ccb59a6..3718541 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
@@ -8,6 +8,7 @@
 import com.ruoyi.basic.pojo.StandardMethodList;
 import com.ruoyi.basic.pojo.StandardProductList;
 import com.ruoyi.basic.pojo.StandardTree;
+import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -18,6 +19,7 @@
  * @createDate 2024-03-01 15:06:44
  * @Entity com.ruoyi.basic.pojo.StandardTree
  */
+@Mapper
 public interface StandardTreeMapper extends BaseMapper<StandardTree> {
 
     List<FactoryDto> selectStandardTreeList();
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 e0529ea..5394368 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
@@ -1,13 +1,8 @@
 package com.ruoyi.basic.service.impl;
 
-import cn.hutool.core.collection.CollUtil;
 import cn.hutool.poi.excel.ExcelUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
-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.FactoryDto;
@@ -18,8 +13,9 @@
 import com.ruoyi.basic.pojo.StandardProductList;
 import com.ruoyi.basic.pojo.StandardTemplate;
 import com.ruoyi.basic.pojo.StandardTree;
-import com.ruoyi.basic.pojo.StructureTestObject;
-import com.ruoyi.basic.service.*;
+import com.ruoyi.basic.service.StandardMethodListService;
+import com.ruoyi.basic.service.StandardTemplateService;
+import com.ruoyi.basic.service.StandardTreeService;
 import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.framework.exception.ErrorException;
 import lombok.AllArgsConstructor;
@@ -60,7 +56,7 @@
         for (FactoryDto factoryDto : factoryDtos) {
             for (LaboratoryDto laboratoryDto : factoryDto.getChildren()) {
                 for (SampleTypeDto sampleTypeDto : laboratoryDto.getChildren()) {
-                    if (sampleTypeDto.getChildren().size() == 0) {
+                    if (sampleTypeDto.getChildren().isEmpty()) {
                         sampleTypeDto.setChildren(standardTreeMapper.getStandardTree3(sampleTypeDto.getValue()));
                     }
                 }
diff --git a/basic-server/src/main/resources/mapper/StandardProductListMapper.xml b/basic-server/src/main/resources/mapper/StandardProductListMapper.xml
index 7d06d0c..0a18129 100644
--- a/basic-server/src/main/resources/mapper/StandardProductListMapper.xml
+++ b/basic-server/src/main/resources/mapper/StandardProductListMapper.xml
@@ -75,7 +75,7 @@
         <if test="sample != null and sample != ''">
             and sample =#{sample}
         </if>
-            case when man_hour_group is NULL then 1
+        order by case when man_hour_group is NULL then 1
                       when man_hour_group ='' then 1  else 0 end,
                  CASE
                      WHEN man_hour_group REGEXP '^[0-9]' THEN CAST(man_hour_group AS UNSIGNED) -- 濡傛灉浠ユ暟瀛楀紑澶达紝鍒欐寜鐓ф暟瀛楀ぇ灏忔帓搴�
@@ -87,7 +87,7 @@
         where standard_method_list_id = #{standardMethodListId}
           and state =#{state}
           and tree =#{tree}
-        order by    case when man_hour_group is NULL then 1
+        order by case when man_hour_group is NULL then 1
                       when man_hour_group ='' then 1  else 0 end,
                  CASE
                      WHEN man_hour_group REGEXP '^[0-9]' THEN CAST(man_hour_group AS UNSIGNED) -- 濡傛灉浠ユ暟瀛楀紑澶达紝鍒欐寜鐓ф暟瀛楀ぇ灏忔帓搴�
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsBushingController.java b/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsBushingController.java
new file mode 100644
index 0000000..393fde4
--- /dev/null
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/controller/InsBushingController.java
@@ -0,0 +1,35 @@
+package com.ruoyi.inspect.controller;
+
+import com.ruoyi.common.core.domain.Result;
+import com.ruoyi.inspect.service.InsBushingService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ * 鍏夌氦閰嶇疆鐨勫绠¤〃 鍓嶇鎺у埗鍣�
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2024-05-30 05:58:16
+ */
+@Api(tags = "妫�楠屼笅鍗�-鍏夌氦閰嶇疆-濂楃")
+@AllArgsConstructor
+@RestController
+@RequestMapping("/insBushing")
+public class InsBushingController {
+
+    private InsBushingService insBushingService;
+
+    @ApiModelProperty("/閫氳繃鏍峰搧id鑾峰彇鏍峰搧涓嬪厜绾ら厤缃唴瀹�")
+    @GetMapping("/selectBushingBySampleId")
+    public Result<?> selectBushingBySampleId(Integer sampleId){
+        return Result.success(insBushingService.selectBushingBySampleId(sampleId));
+    }
+
+}
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 074496d..61a8a7b 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
@@ -73,14 +73,12 @@
     @ApiOperation(value = "涓嬪崟鎸夐挳")
     @PostMapping("/addInsOrder")
     @Log(title = "妫�楠屼笅鍗�", businessType = BusinessType.INSERT)
-    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")+"");
-        List<List<Integer>> fiberPairing = JSON.parseArray(map.get("fiberPairing")+"");//鍏夌氦閰嶇疆閲岀殑鐔旀帴閰嶅
-        return Result.success(insOrderService.addInsOrder(list, insOrder, pairing,fiberPairing));
+    public Result<?> addInsOrder(@RequestBody AddInsOrderDTO addInsOrderDTO) {
+        return Result.success(insOrderService.addInsOrder(
+                addInsOrderDTO.getList(),
+                addInsOrderDTO.getInsOrder(),
+                addInsOrderDTO.getPairing(),
+                addInsOrderDTO.getFiberPairing()));
     }
 
     @ApiOperation(value = "鏌ヨ璁㈠崟鏈�闀块璁℃椂闂�")
@@ -92,7 +90,6 @@
 
     @ApiOperation(value = "鏌ヨ妫�楠屼笅鍗曞唴瀹硅鎯�")
     @GetMapping("/getInsOrder")
-    @Log(title = "妫�楠屼笅鍗�", businessType = BusinessType.OTHER)
     public Result<?> getInsOrder(Integer orderId) {
         return Result.success(insOrderService.getInsOrder(orderId));
     }
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/dto/AddInsOrderDTO.java b/inspect-server/src/main/java/com/ruoyi/inspect/dto/AddInsOrderDTO.java
new file mode 100644
index 0000000..5142e27
--- /dev/null
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/dto/AddInsOrderDTO.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.io.Serializable;
+import java.util.List;
+
+@Data
+public class AddInsOrderDTO implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty("鏍峰搧鍒楄〃")
+    private List<SampleProductDto> list;
+
+    @ApiModelProperty("妫�楠屽崟涓讳綋娑堟伅")
+    private InsOrder insOrder;
+
+    @ApiModelProperty("鍏夌氦鐔旀帴閰嶅娑堟伅")
+    private List<List<Integer>> pairing;
+
+    @ApiModelProperty("鍏夌紗涓嬬殑鍏夌氦鐔旀帴閰嶅娑堟伅")
+    private List<List<Integer>> fiberPairing;
+
+}
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSample.java b/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSample.java
index ae45b48..8d8254b 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSample.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsSample.java
@@ -111,12 +111,6 @@
 
     private Integer parentId;
 
-    @ApiModelProperty("鏁伴噺")
-    private Integer quantity;
-
-    @ApiModelProperty("鐗规畩鏍囧噯鏂规硶")
-    private String specialStandardMethod;
-
     @TableField(select = false,exist = false)
     private Integer num=1;
 
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 efc2876..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
@@ -93,6 +93,10 @@
 
     private NumberGenerator<InsOrder> numberGenerator;
 
+    private NumberGenerator<InsSample> sampleCodeGenerator;
+
+    private NumberGenerator<InsFibers> fibersCodeGenerator;
+
     private InsSampleUserMapper insSampleUserMapper;
 
     private InsOrderStateMapper insOrderStateMapper;
@@ -255,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 -> {
@@ -267,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());
@@ -294,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()) {
@@ -334,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) {
@@ -364,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())) {
@@ -388,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());
@@ -508,16 +506,6 @@
                         }
                     }
                 }
-
-                // 娌℃湁杩涜鍏夌氦閰嶇疆鐨勭啍鎺ラ厤瀵癸紝鐩存帴娣诲姞鏍峰搧
-//                try {
-//                    for (InsProduct insProduct : insProducts) {
-//                        insProduct.setId(null);
-//                        insProduct.setInsSampleId(insSample.getId());
-//                        insProductMapper.insert(insProduct);
-//                    }
-//                } catch (Exception e) {
-//                }
             }
         }
         return insOrder.getId();
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
index ba48829..73768ba 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
@@ -74,7 +74,7 @@
         SysUser user = loginUser.getUser();
         //鏌ヨ鐢ㄦ埛淇℃伅
         //TODO:閲嶅啓鏌ヨ鐢ㄦ埛淇℃伅sql
-//        SysUserVO userInfo = userMapper.selectUserInfo(user.getUserId());
+        SysUserVO userInfo = userMapper.selectUserInfo(user.getUserId());
         // 瑙掕壊闆嗗悎
         Set<String> roles = permissionService.getRolePermission(user);
         // 鏉冮檺闆嗗悎
@@ -85,7 +85,7 @@
             tokenService.refreshToken(loginUser);
         }
         AjaxResult ajax = AjaxResult.success();
-        ajax.put("user", user);
+        ajax.put("user", userInfo);
         ajax.put("roles", roles);
         ajax.put("permissions", permissions);
         return ajax;
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 53ee93f..42b997e 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
@@ -96,5 +96,16 @@
         return Result.success(userService.addPersonUser(personDto));
     }
 
+    /**
+     * 鑾峰彇瀹為獙瀹や笅鐨勬楠屽憳鍒楄〃
+     * @return
+     */
+    @ApiOperation(value = "鑾峰彇瀹為獙瀹や笅鐨勬楠屽憳鍒楄〃")
+    @GetMapping("/getLaboratoryPersonList")
+    public Result<?> getLaboratoryPersonList() {
+        return Result.success(userService.getLaboratoryPersonList());
+    }
+
+
 }
 
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/numgen/NumberGenerator.java b/ruoyi-common/src/main/java/com/ruoyi/common/numgen/NumberGenerator.java
index 3b933bb..5cbd84d 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/numgen/NumberGenerator.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/numgen/NumberGenerator.java
@@ -79,7 +79,6 @@
 		return prependPrefix(prefix, generatedNumber);
 	}
 
-
 	/**
 	 * 鐢熸垚甯﹀悗缂�鐨勭紪鍙�
 	 *
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 157d946..a463ca3 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
@@ -6,6 +6,7 @@
 import com.ruoyi.common.core.vo.SysUserVO;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
 
@@ -47,5 +48,9 @@
     User getUserNow(@Param("userId") int userId);
 
     SysUserVO selectUserInfo(Long userId);
+
+    String seldepLimsId(int depLimsId);
+
+    List<Map<String, Object>> getLaboratoryPersonList(String laboratory);
 }
 
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 34d7974..0a421a5 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
@@ -5,6 +5,7 @@
 import com.ruoyi.common.core.dto.PersonDto;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * 鐢ㄦ埛淇℃伅琛�
@@ -40,5 +41,8 @@
     int delUserDepardLimsId(Integer id);
 
     int addPersonUser(PersonDto personDto);
+
+    Map<String, List<Map<String,Object>>> getLaboratoryPersonList();
+
 }
 
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 08331cd..db10443 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
@@ -12,6 +12,7 @@
 import com.ruoyi.system.mapper.UserMapper;
 import com.ruoyi.system.service.CustomService;
 import com.ruoyi.system.service.UserService;
+import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -19,6 +20,8 @@
 
 import java.time.LocalDateTime;
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  * 鐢ㄦ埛淇℃伅琛�
@@ -110,5 +113,25 @@
         });
         return 1;
     }
+
+    @Override
+    public Map<String, List<Map<String, Object>>> getLaboratoryPersonList() {
+        //鏌ヨ閫氫俊鍜岀數鍔涗笅鐨勪汉鍛樹俊鎭�
+        //鏌ヨ褰撳墠鐧诲綍浜哄憳鐨勬灦鏋�
+        //鍒ゆ柇鍏ㄩ儴,涓汉,缁勭粐鐨勬潈闄�
+        User user = baseMapper.selectById(SecurityUtils.getUserId());//褰撳墠鐧诲綍鐨勪汉
+        //鑾峰彇褰撳墠浜烘墍灞炲疄楠屽id
+        String laboratory = "";
+        String departLimsId = user.getDepartLimsId();
+        if (ObjectUtils.isNotEmpty(departLimsId)) {
+            String[] split = departLimsId.split(",");
+            //鏌ヨ瀵瑰簲鏋舵瀯鍚嶇О(閫氫俊瀹為獙瀹�,鐢靛姏瀹為獙瀹�,妫�娴嬪姙)
+            String departLims = baseMapper.seldepLimsId(Integer.parseInt(split[split.length - 1]));
+            if (departLims.contains("瀹為獙瀹�")) {
+                laboratory = departLims;
+            }
+        }
+        return baseMapper.getLaboratoryPersonList(laboratory).stream().collect(Collectors.groupingBy(m->m.get("depName").toString()));
+    }
 }
 
diff --git a/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml
index f05881a..d6d1d60 100644
--- a/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml
@@ -61,6 +61,50 @@
         where u.id = #{userId}
     </select>
     <select id="selectUserInfo" resultType="com.ruoyi.common.core.vo.SysUserVO">
-        select * from user
+        select u.id as user_id,
+               u.dept_id,
+               u.name as nick_name,
+               u.account as user_name,
+               u.name_en,
+               u.email,
+               u.phone as phone_number,
+               u.sex,
+               u.picture_url,
+               u.signature_url,
+               u.company,
+               c.company as company_name,
+               c.code,
+               u.password,
+               u.status,
+               u.del_flag,
+               u.login_ip,
+               u.login_date,
+               u.is_custom
+        from user u left join custom c on u.company = c.id
+        where u.id = #{userId}
+    </select>
+    <select id="seldepLimsId" resultType="java.lang.String">
+        select name
+        from department_lims
+        where id = #{depLimsId}
+    </select>
+    <select id="getLaboratoryPersonList" resultType="java.util.Map">
+        select
+        u.id,
+        u.name,
+        dl.name as depName
+        from
+        user u
+        left join
+        department_lims dl
+        on
+        FIND_IN_SET(dl.id,u.depart_lims_id)
+        where
+        dl.name in('閫氫俊浜у搧瀹為獙瀹�','鐢靛姏浜у搧瀹為獙瀹�')
+        and u.status = 0
+        and u.is_custom = 0
+        <if test="laboratory!='' and laboratory!=null">
+            and dl.name = #{laboratory}
+        </if>
     </select>
 </mapper>

--
Gitblit v1.9.3