From 3e4b5f6e5ae9271d3fc534f65b4745342605975b Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期一, 18 七月 2022 23:08:53 +0800
Subject: [PATCH] 优化 登录 接口为cmd 模式

---
 service-user/src/main/java/com/java110/user/cmd/login/AdminLoginPropertyCmd.java |   87 +++++++++----------------------------------
 1 files changed, 18 insertions(+), 69 deletions(-)

diff --git a/service-api/src/main/java/com/java110/api/listener/login/AdminLoginPropertyListener.java b/service-user/src/main/java/com/java110/user/cmd/login/AdminLoginPropertyCmd.java
old mode 100755
new mode 100644
similarity index 60%
rename from service-api/src/main/java/com/java110/api/listener/login/AdminLoginPropertyListener.java
rename to service-user/src/main/java/com/java110/user/cmd/login/AdminLoginPropertyCmd.java
index 365d3ea..388d42e
--- a/service-api/src/main/java/com/java110/api/listener/login/AdminLoginPropertyListener.java
+++ b/service-user/src/main/java/com/java110/user/cmd/login/AdminLoginPropertyCmd.java
@@ -1,25 +1,10 @@
-/*
- * Copyright 2017-2021 鍚村鏂� and java110 team.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.java110.api.listener.login;
+package com.java110.user.cmd.login;
 
 import com.alibaba.fastjson.JSONObject;
-import com.java110.api.listener.AbstractServiceApiDataFlowListener;
-import com.java110.core.annotation.Java110Listener;
-import com.java110.core.context.DataFlowContext;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
+import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.context.ICmdDataFlowContext;
+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;
 import com.java110.dto.store.StoreUserDto;
@@ -31,15 +16,12 @@
 import com.java110.po.userLogin.UserLoginPo;
 import com.java110.utils.constant.CommonConstant;
 import com.java110.utils.constant.ResponseConstant;
-import com.java110.utils.constant.ServiceCodeConstant;
+import com.java110.utils.exception.CmdException;
 import com.java110.utils.exception.SMOException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.DateUtil;
 import com.java110.vo.ResultVo;
-import org.slf4j.Logger;
-import com.java110.core.log.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 
@@ -47,15 +29,8 @@
 import java.util.List;
 import java.util.Map;
 
-/**
- * 鐢ㄦ埛娉ㄥ唽 渚﹀惉
- * Created by wuxw on 2018/5/18.
- */
-@Java110Listener("adminLoginPropertyListener")
-public class AdminLoginPropertyListener extends AbstractServiceApiDataFlowListener {
-
-    private final static Logger logger = LoggerFactory.getLogger(AdminLoginPropertyListener.class);
-
+@Java110Cmd(serviceCode = "login.adminLoginProperty")
+public class AdminLoginPropertyCmd extends Cmd {
 
     @Autowired
     private IUserLoginInnerServiceSMO userLoginInnerServiceSMOImpl;
@@ -67,47 +42,23 @@
     private IStoreInnerServiceSMO storeInnerServiceSMOImpl;
 
     @Override
-    public String getServiceCode() {
-        return ServiceCodeConstant.SERVICE_CODE_ADMIN_LOGIN_PROPERTY;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.POST;
-    }
-
-
-    @Override
-    public int getOrder() {
-        return 0;
-    }
-
-    private void validate(JSONObject reqJson) {
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
         Assert.hasKeyAndValue(reqJson, "username", "鏈寘鍚渶瑕佺櫥褰曠殑鐢ㄦ埛鍚�");
         Assert.hasKeyAndValue(reqJson, "userId", "鏈寘鍚渶瑕佺櫥褰曠殑鐢ㄦ埛ID");
         Assert.hasKeyAndValue(reqJson, "curPasswd", "鏈寘鍚綋鍓嶇敤鎴风殑瀵嗙爜");
         Assert.hasKeyAndValue(reqJson, "curUserName", "鏈寘鍚綋鍓嶇敤鎴风殑鐢ㄦ埛鍚�");
     }
 
-
-    /**
-     * @param event
-     */
     @Override
-    public void soService(ServiceDataFlowEvent event) {
-        //鑾峰彇鏁版嵁涓婁笅鏂囧璞�
-        DataFlowContext dataFlowContext = event.getDataFlowContext();
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
         ResponseEntity<String> responseEntity = null;
-        JSONObject paramIn = JSONObject.parseObject(dataFlowContext.getReqData());
-        validate(paramIn);
-
         UserDto userDto = new UserDto();
-        userDto.setUserName(paramIn.getString("curUserName"));
-        userDto.setPassword(paramIn.getString("curPasswd"));
+        userDto.setUserName(reqJson.getString("curUserName"));
+        userDto.setPassword(reqJson.getString("curPasswd"));
         List<UserDto> userDtos = userInnerServiceSMOImpl.getUsers(userDto);
 
         if (userDtos == null || userDtos.size() < 1) {
-            dataFlowContext.setResponseEntity(ResultVo.createResponseEntity(ResultVo.CODE_UNAUTHORIZED, "鐢ㄦ埛鎴栧瘑鐮侀敊璇�"));
+            context.setResponseEntity(ResultVo.createResponseEntity(ResultVo.CODE_UNAUTHORIZED, "鐢ㄦ埛鎴栧瘑鐮侀敊璇�"));
             return;
         }
 
@@ -118,14 +69,14 @@
         List<StoreUserDto> storeUserDtos = storeInnerServiceSMOImpl.getStoreUserInfo(storeUserDto);
 
         if (storeUserDtos == null || storeUserDtos.size() < 1) {
-            dataFlowContext.setResponseEntity(ResultVo.createResponseEntity(ResultVo.CODE_UNAUTHORIZED, "褰撳墠鐢ㄦ埛涓嶆槸杩愯惀鍥㈤槦 涓嶈兘鍏嶇櫥褰�"));
+            context.setResponseEntity(ResultVo.createResponseEntity(ResultVo.CODE_UNAUTHORIZED, "褰撳墠鐢ㄦ埛涓嶆槸杩愯惀鍥㈤槦 涓嶈兘鍏嶇櫥褰�"));
             return;
         }
 
         // 鏍¢獙 闇�瑕佺櫥褰曠殑鐗╀笟璐﹀彿鏄惁瀛樺湪
         userDto = new UserDto();
-        userDto.setUserId(paramIn.getString("userId"));
-        userDto.setUserName(paramIn.getString("username"));
+        userDto.setUserId(reqJson.getString("userId"));
+        userDto.setUserName(reqJson.getString("username"));
         userDtos = userInnerServiceSMOImpl.getUsers(userDto);
 
         Assert.listOnlyOne(userDtos, "鐗╀笟璐﹀彿涓嶅瓨鍦�");
@@ -137,7 +88,7 @@
         storeUserDtos = storeInnerServiceSMOImpl.getStoreUserInfo(storeUserDto);
 
         if (storeUserDtos == null || storeUserDtos.size() < 1) {
-            dataFlowContext.setResponseEntity(ResultVo.createResponseEntity(ResultVo.CODE_UNAUTHORIZED, "闇�瑕佸厤瀵嗙櫥褰曠殑璐﹀彿涓嶆槸鐗╀笟璐﹀彿"));
+            context.setResponseEntity(ResultVo.createResponseEntity(ResultVo.CODE_UNAUTHORIZED, "闇�瑕佸厤瀵嗙櫥褰曠殑璐﹀彿涓嶆槸鐗╀笟璐﹀彿"));
             return;
         }
 
@@ -161,11 +112,9 @@
             userLoginPo.setUserName(userInfo.getString("userName"));
             userLoginInnerServiceSMOImpl.saveUserLogin(userLoginPo);
             responseEntity = new ResponseEntity<String>(userInfo.toJSONString(), HttpStatus.OK);
-            dataFlowContext.setResponseEntity(responseEntity);
+            context.setResponseEntity(responseEntity);
         } catch (Exception e) {
-            logger.error("鐧诲綍寮傚父锛�", e);
             throw new SMOException(ResponseConstant.RESULT_CODE_INNER_ERROR, "绯荤粺鍐呴儴閿欒锛岃鑱旂郴绠$悊鍛�");
         }
     }
-
 }

--
Gitblit v1.8.0