From 0107e3eab40010e4b20effd48266c39eec8d74e9 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期一, 25 七月 2022 17:13:43 +0800
Subject: [PATCH] 加入角色 授权项目

---
 service-user/src/main/java/com/java110/user/cmd/user/ResetStaffPwdCmd.java |   26 ++++++++++++++++++++++----
 1 files changed, 22 insertions(+), 4 deletions(-)

diff --git a/service-user/src/main/java/com/java110/user/cmd/user/ResetStaffPwdCmd.java b/service-user/src/main/java/com/java110/user/cmd/user/ResetStaffPwdCmd.java
index c88e35c..5c085df 100644
--- a/service-user/src/main/java/com/java110/user/cmd/user/ResetStaffPwdCmd.java
+++ b/service-user/src/main/java/com/java110/user/cmd/user/ResetStaffPwdCmd.java
@@ -2,8 +2,9 @@
 
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.context.Environment;
 import com.java110.core.context.ICmdDataFlowContext;
-import com.java110.core.event.cmd.AbstractServiceCmdListener;
+import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.factory.AuthenticationFactory;
 import com.java110.core.factory.GenerateCodeFactory;
@@ -25,7 +26,7 @@
 import java.util.List;
 
 @Java110Cmd(serviceCode = "user.resetStaffPwd")
-public class ResetStaffPwdCmd extends AbstractServiceCmdListener {
+public class ResetStaffPwdCmd extends Cmd {
 
     @Autowired
     private IStoreUserV1InnerServiceSMO storeUserV1InnerServiceSMOImpl;
@@ -42,16 +43,31 @@
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
 
+        Environment.isDevEnv();
+
+        if(reqJson.containsKey("storeId") && StoreDto.STORE_ADMIN.equals(reqJson.getString("storeId"))){
+            return ;
+        }
+
         if (!reqJson.containsKey("staffId")) {
             reqJson.put("staffId", reqJson.getString("userId"));
         }
 
         Assert.jsonObjectHaveKey(reqJson, "staffId", "璇锋眰鍙傛暟涓湭鍖呭惈staffId 鑺傜偣锛岃纭");
 
+        StoreUserDto storeUserDt = new StoreUserDto();
+        storeUserDt.setUserId(reqJson.getString("userId"));
+        List<StoreUserDto> storeUserDts = storeUserV1InnerServiceSMOImpl.queryStoreUsers(storeUserDt);
+        Assert.listOnlyOne(storeUserDts, "鏌ヨ鍛樺伐鍟嗘埛閿欒锛�");
+
         //棣栧厛鍒ゆ柇鏄惁涓� 杩愯惀鎴栬�呭紑鍙�
         //鏌ヨstore 淇℃伅
         StoreDto storeDto = new StoreDto();
-        storeDto.setStoreId(reqJson.getString("storeId"));
+        if (!reqJson.containsKey("storeId")) {
+            storeDto.setStoreId(storeUserDts.get(0).getStoreId());
+        } else {
+            storeDto.setStoreId(reqJson.getString("storeId"));
+        }
         List<StoreDto> storeDtos = storeV1InnerServiceSMOImpl.queryStores(storeDto);
 
         Assert.listOnlyOne(storeDtos, "鍟嗘埛涓嶅瓨鍦�");
@@ -62,7 +78,7 @@
 
         //鏍¢獙 staff 鍜� store 涔嬮棿鏄惁鏈� 鍏崇郴 闃叉 鏀诲嚮
         StoreUserDto storeUserDto = new StoreUserDto();
-        storeUserDto.setUserId(reqJson.getString("staffId"));
+        storeUserDto.setUserId(reqJson.getString("userId"));
         storeUserDto.setStoreId(reqJson.getString("storeId"));
         List<StoreUserDto> storeUserDtos = storeUserV1InnerServiceSMOImpl.queryStoreUsers(storeUserDto);
 
@@ -74,6 +90,8 @@
         modifyStaff(reqJson, cmdDataFlowContext);
         JSONObject paramOut = new JSONObject();
         paramOut.put("pwd", reqJson.getString("pwd"));
+        paramOut.put("code",0);
+        paramOut.put("msg","鎴愬姛");
         ResponseEntity<String> responseEntity = new ResponseEntity<>(paramOut.toJSONString(), HttpStatus.OK);
         cmdDataFlowContext.setResponseEntity(responseEntity);
 

--
Gitblit v1.8.0