From fef91e78140f8c968f4b1fa80232cf50a371586b Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期二, 04 二月 2020 15:50:41 +0800
Subject: [PATCH] 优化车位出租问题

---
 WebService/src/main/java/com/java110/web/smo/impl/RegisterServiceSMOImpl.java |   54 ++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 48 insertions(+), 6 deletions(-)

diff --git a/WebService/src/main/java/com/java110/web/smo/impl/RegisterServiceSMOImpl.java b/WebService/src/main/java/com/java110/web/smo/impl/RegisterServiceSMOImpl.java
index 2f481ab..44ad6e6 100644
--- a/WebService/src/main/java/com/java110/web/smo/impl/RegisterServiceSMOImpl.java
+++ b/WebService/src/main/java/com/java110/web/smo/impl/RegisterServiceSMOImpl.java
@@ -1,14 +1,15 @@
 package com.java110.web.smo.impl;
 
 import com.alibaba.fastjson.JSONObject;
-import com.java110.common.cache.CommonCache;
-import com.java110.common.constant.ServiceConstant;
-import com.java110.common.util.Assert;
+import com.java110.utils.cache.CommonCache;
+import com.java110.utils.cache.MappingCache;
+import com.java110.utils.constant.ServiceConstant;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.StringUtil;
 import com.java110.core.context.IPageData;
 import com.java110.core.factory.AliSendMessageFactory;
 import com.java110.core.factory.AuthenticationFactory;
-import com.java110.core.factory.ValidateCodeFactory;
-import com.java110.web.core.BaseComponentSMO;
+import com.java110.core.component.BaseComponentSMO;
 import com.java110.web.smo.IRegisterServiceSMO;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -55,12 +56,49 @@
             return responseEntity;
         }
 
+        responseEntity = this.checkNameAndTelExists(pd,registerInfo.getString("username"),"");
+        if(responseEntity.getStatusCode()!=HttpStatus.OK){
+            return responseEntity;
+        }
+
+        responseEntity = this.checkNameAndTelExists(pd,"",registerInfo.getString("tel"));
+        if(responseEntity.getStatusCode()!=HttpStatus.OK){
+            return responseEntity;
+        }
+
+
         registerInfo.put("passwd", AuthenticationFactory.passwdMd5(registerInfo.getString("passwd")));
 
         registerInfo.put("name",registerInfo.getString("username"));
         registerInfo.put("password",registerInfo.getString("passwd"));
         responseEntity = this.callCenterService(restTemplate,pd,registerInfo.toJSONString(), ServiceConstant.SERVICE_API_URL+"/api/user.service.register", HttpMethod.POST);
         return responseEntity;
+    }
+
+    private ResponseEntity<String> checkNameAndTelExists(IPageData pd,String name,String tel){
+        ResponseEntity<String> responseEntity = null;
+        //鏍¢獙鐢ㄦ埛鍚嶆垨鎵嬫満鏄惁瀛樺湪
+        responseEntity = this.callCenterService(restTemplate,pd,"",
+                ServiceConstant.SERVICE_API_URL+"/api/check.hasUser.byNameOrTel?name="+name+"&tel="+tel,
+                HttpMethod.GET);
+
+        if(responseEntity.getStatusCode()!=HttpStatus.OK){
+            logger.error("璋冪敤鍚庣鏈嶅姟寮傚父锛歿}",responseEntity);
+            return new ResponseEntity<String>("璋冪敤涓績鏈嶅姟寮傚父",HttpStatus.INTERNAL_SERVER_ERROR);
+        }
+
+        Assert.jsonObjectHaveKey(responseEntity.getBody(),"userCount","璋冪敤涓績鏈嶅姟寮傚父锛屾姤鏂囦腑鏈寘鍚玼serCount鑺傜偣");
+
+        JSONObject userInfo = JSONObject.parseObject(responseEntity.getBody());
+
+        if(userInfo.getIntValue("userCount") > 0){
+            return new ResponseEntity<String>(StringUtil.isNullOrNone(name)?"鎵嬫満鍙峰凡鍗犵敤":"鐢ㄦ埛鍚嶅凡鍗犵敤",HttpStatus.INTERNAL_SERVER_ERROR);
+        }
+
+        responseEntity = new ResponseEntity<>("鎴愬姛",HttpStatus.OK);
+
+        return responseEntity;
+
     }
 
     /**
@@ -79,14 +117,18 @@
 
         String verifyCode = AliSendMessageFactory.generateMessageCode();
         ResponseEntity<String> sendMessageResult = null;
+        String verifyStr="婕旂ず鐜楠岃瘉鐮�:"+verifyCode;
         try {
+            if("ON".equals(MappingCache.getValue("SMS_SEND_SWITCH"))){
             //寮�濮嬪彂閫侀獙璇佺爜
             AliSendMessageFactory.sendMessage(telInfo.getString("tel"),verifyCode);
 
+                verifyStr ="楠岃瘉鐮佸凡涓嬪彂鑷虫偍鐨勬墜鏈�!";
+            }
             //灏嗛獙璇佺爜瀛樺叆Redis涓�
             CommonCache.setValue(telInfo.getString("tel")+"_validateTel",verifyCode.toLowerCase(),CommonCache.defaultExpireTime);
 
-            sendMessageResult = new ResponseEntity<>("鎴愬姛", HttpStatus.OK);
+            sendMessageResult = new ResponseEntity<>(verifyStr, HttpStatus.OK);
 
         }catch (Exception e){
             logger.error("鐢熸垚楠岃瘉鐮佸け璐ワ紝",e);

--
Gitblit v1.8.0