From 18d1f4bc4f4f77c8883702a00896dd99469db648 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期五, 25 八月 2023 16:06:37 +0800
Subject: [PATCH] Merge branch 'master' of http://git.homecommunity.cn/supervip/MicroCommunity

---
 service-store/src/main/java/com/java110/store/cmd/resourceStore/ListUserStorehousesCmd.java |   48 +++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 43 insertions(+), 5 deletions(-)

diff --git a/service-store/src/main/java/com/java110/store/cmd/resourceStore/ListUserStorehousesCmd.java b/service-store/src/main/java/com/java110/store/cmd/resourceStore/ListUserStorehousesCmd.java
index ac5305b..029a458 100644
--- a/service-store/src/main/java/com/java110/store/cmd/resourceStore/ListUserStorehousesCmd.java
+++ b/service-store/src/main/java/com/java110/store/cmd/resourceStore/ListUserStorehousesCmd.java
@@ -6,10 +6,15 @@
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.dto.privilege.BasePrivilegeDto;
+import com.java110.dto.repair.RepairUserDto;
+import com.java110.dto.user.UserDto;
 import com.java110.dto.user.UserStorehouseDto;
 import com.java110.intf.community.IMenuInnerServiceSMO;
+import com.java110.intf.community.IRepairUserInnerServiceSMO;
 import com.java110.intf.store.IUserStorehouseInnerServiceSMO;
+import com.java110.intf.user.IUserInnerServiceSMO;
 import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.utils.util.StringUtil;
 import com.java110.vo.ResultVo;
@@ -31,6 +36,12 @@
     @Autowired
     private IMenuInnerServiceSMO menuInnerServiceSMOImpl;
 
+    @Autowired
+    private IRepairUserInnerServiceSMO repairUserInnerServiceSMOImpl;
+
+    @Autowired
+    private IUserInnerServiceSMO userInnerServiceSMOImpl;
+
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
         super.validatePageInfo(reqJson);
@@ -41,7 +52,16 @@
         UserStorehouseDto userStorehouseDto = BeanConvertUtil.covertBean(reqJson, UserStorehouseDto.class);
         //鑾峰彇鐢ㄦ埛id
         String userId = reqJson.getString("userId");
-        if(StringUtil.isEmpty(userId)){
+        if (!StringUtil.isEmpty(reqJson.getString("sign")) && reqJson.getString("sign").equals("1")) {
+            RepairUserDto repairUserDto = new RepairUserDto();
+            repairUserDto.setRepairId(reqJson.getString("repairId"));
+            repairUserDto.setState(RepairUserDto.STATE_DOING); //澶勭悊涓�
+            List<RepairUserDto> repairUserDtos = repairUserInnerServiceSMOImpl.queryRepairUsers(repairUserDto);
+            if (repairUserDtos != null && repairUserDtos.size() == 1) {
+                userId = repairUserDtos.get(0).getStaffId();
+            }
+        }
+        if (StringUtil.isEmpty(userId)) {
             userId = context.getReqHeaders().get("user-id");
         }
         List<Map> privileges = null;
@@ -51,13 +71,31 @@
         basePrivilegeDto.setUserId(userId);
         privileges = menuInnerServiceSMOImpl.checkUserHasResource(basePrivilegeDto);
         if (privileges != null && privileges.size() > 0) {
-            userStorehouseDto.setUserId(reqJson.getString("searchUserId"));
-            userStorehouseDto.setUserName(reqJson.getString("searchUserName"));
+            if (!StringUtil.isEmpty(reqJson.getString("sign")) && reqJson.getString("sign").equals("1")) {
+                UserDto userDto = new UserDto();
+                userDto.setUserId(userId);
+                List<UserDto> users = userInnerServiceSMOImpl.getUsers(userDto);
+                Assert.listOnlyOne(users, "鏌ヨ鐢ㄦ埛淇℃伅閿欒锛�");
+                userStorehouseDto.setUserId(userId);
+                userStorehouseDto.setUserName(users.get(0).getName());
+            } else {
+                userStorehouseDto.setUserId(reqJson.getString("searchUserId"));
+                userStorehouseDto.setUserName(reqJson.getString("searchUserName"));
+            }
         }
         //杞鍙煡璇㈣嚜宸辩殑鐗╁搧
         if (!StringUtil.isEmpty(reqJson.getString("giveType")) && "1".equals(reqJson.getString("giveType"))) {
-            userStorehouseDto.setUserId(reqJson.getString("userId"));
-            userStorehouseDto.setUserName(reqJson.getString("searchUserName"));
+            if (!StringUtil.isEmpty(reqJson.getString("sign")) && reqJson.getString("sign").equals("1")) {
+                UserDto userDto = new UserDto();
+                userDto.setUserId(userId);
+                List<UserDto> users = userInnerServiceSMOImpl.getUsers(userDto);
+                Assert.listOnlyOne(users, "鏌ヨ鐢ㄦ埛淇℃伅閿欒锛�");
+                userStorehouseDto.setUserId(userId);
+                userStorehouseDto.setUserName(users.get(0).getName());
+            } else {
+                userStorehouseDto.setUserId(reqJson.getString("userId"));
+                userStorehouseDto.setUserName(reqJson.getString("searchUserName"));
+            }
         }
         userStorehouseDto.setLagerStockZero("1");
 

--
Gitblit v1.8.0