Browse Source

用户注册修改

jk-GitHub-coder 4 years ago
parent
commit
09ba3a322e

+ 18 - 12
YijiaRestful/src/main/java/com/platform/yijia/controller/AppUserInfoController.java

@@ -15,7 +15,9 @@ import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 /***
  * <Title> AppUserInfoController </Title>
@@ -41,18 +43,21 @@ public class AppUserInfoController {
         Gson gson =new Gson();
         ResultData resultData=null;
         AppUserInfo appUserInfo =new AppUserInfo();
+        String openId = "";
         try{
             if(request.getUserType()!=null){
                 //1-微信公众号
                 if(request.getUserType().equals("1") &&StringUtils.isNotBlank(request.getBlogOpenid())&&StringUtils.isNotBlank(request.getBlogToken())){
                     appUserInfo.setUserType(request.getUserType());
                     appUserInfo.setBlogToken(request.getBlogToken());
-                    appUserInfo.setBlogOpenid(request.getBlogOpenid());
+                    openId = request.getBlogOpenid();
+                    appUserInfo.setBlogOpenid(openId);
                  //2-微信小程序
                 }else if(request.getUserType().equals("2") &&StringUtils.isNotBlank(request.getMinaOpenid())&&StringUtils.isNotBlank(request.getMinaToken())){
                     appUserInfo.setUserType(request.getUserType());
                     appUserInfo.setMinaToken(request.getMinaToken());
-                    appUserInfo.setMinaOpenid(request.getMinaOpenid());
+                    openId = request.getMinaOpenid();
+                    appUserInfo.setMinaOpenid(openId);
                 }
             }
             if(StringUtils.isNotBlank(request.getBlogNickName())){
@@ -64,26 +69,27 @@ public class AppUserInfoController {
             if(StringUtils.isNotBlank(request.getBlogProfilePhoto())){
                 appUserInfo.setBlogProfilePhoto(request.getBlogProfilePhoto());
             }
-            if(StringUtils.isNotBlank(request.getRegisteDate())){
-                appUserInfo.setRegisteDate(new Date());
-            }
-            if(StringUtils.isNotBlank(request.getUpdateDate())){
-                appUserInfo.setUpdateDate(new Date());
-            }
+
+            appUserInfo.setRegisteDate(new Date());
+            appUserInfo.setUpdateDate(new Date());
+
             if(StringUtils.isNotBlank(request.getSexFlag())){
                 appUserInfo.setSexFlag(request.getSexFlag());
             }
 
+            Map<String, Object> params = new HashMap<>();
+            params.put("openId", openId);
+            params.put("userType", request.getUserType());
             //判断该用户是否已存在
-            List<AppUserInfo> appUserInfoList = appUserInfoService.Authentication(appUserInfo);
-            if(appUserInfoList !=null && appUserInfoList.size() > 0){
+            int count = appUserInfoService.isExistAppUser(params);
+            if(count > 0){
                 resultData = ResultData.error(CodeMsg.USER_EXSIST);
             }else {
                 appUserInfoService.AddAppUserInfo(appUserInfo);
-                resultData=ResultData.success(CodeMsg.SUCCESS);
+                resultData = ResultData.success(CodeMsg.SUCCESS);
             }
         }catch (Exception e){
-            resultData=ResultData.error(CodeMsg.INSERT_FAIL);
+            resultData = ResultData.error(CodeMsg.INSERT_FAIL);
             e.printStackTrace();
         }
         return gson.toJson(resultData);

+ 9 - 0
YijiaRestful/src/main/java/com/platform/yijia/dao/AppUserInfoMapper.java

@@ -3,9 +3,18 @@ package com.platform.yijia.dao;
 import com.platform.yijia.pojo.AppUserInfo;
 import com.platform.yijia.pojo.AppUserInfoExample;
 import java.util.List;
+import java.util.Map;
+
 import org.apache.ibatis.annotations.Param;
 
 public interface AppUserInfoMapper {
+
+    /***
+     * 判断该App用户是否已注册
+     * @param map
+     * @return
+     */
+    int isExistAppUser(Map map);
     /**
      * This method was generated by MyBatis Generator.
      * This method corresponds to the database table app_user_info

+ 5 - 1
YijiaRestful/src/main/java/com/platform/yijia/service/AppUserInfoService.java

@@ -3,15 +3,19 @@ package com.platform.yijia.service;
 import com.platform.yijia.pojo.AppUserInfo;
 
 import java.util.List;
+import java.util.Map;
 
 
 public interface AppUserInfoService {
 
     //验证身份
     List<AppUserInfo> Authentication(AppUserInfo appUserInfo);
-//添加信息
+    //添加信息
     void AddAppUserInfo(AppUserInfo appUserInfo);
 
+    //判断新注册用户是否存在
+    int isExistAppUser(Map params);
+
     //验证身份
     boolean selectAppUserInfo(String token, String userType);
 }

+ 13 - 0
YijiaRestful/src/main/java/com/platform/yijia/service/impl/AppUserInfoServiceImpl.java

@@ -8,7 +8,10 @@ import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
+
 @Service("appUserInfoService")
 public class AppUserInfoServiceImpl implements AppUserInfoService {
     @Resource
@@ -38,6 +41,16 @@ public class AppUserInfoServiceImpl implements AppUserInfoService {
         appUserInfoMapper.insert(appUserInfo);
     }
 
+    /****
+     * 根据用户token和userType 判断该用户是否存在
+     * @param params
+     * @return
+     */
+    @Override
+    public int isExistAppUser(Map params) {
+        return  appUserInfoMapper.isExistAppUser(params);
+    }
+
     @Override
     public boolean selectAppUserInfo(String token, String userType) {
         Boolean flag=true;

+ 19 - 0
YijiaRestful/src/main/resources/mapper/AppUserInfoMapper.xml

@@ -93,6 +93,25 @@
     user_id, user_type, blog_openid, mina_openid, mobile_phone, blog_nick_name, sex_flag, 
     registe_date, blog_token, mina_token, blog_profile_photo, update_date
   </sql>
+
+  <!-- 判断注册账户是否已存在-->
+  <select id="isExistAppUser" parameterType="map" resultType="int">
+    SELECT
+        COUNT(user_id)
+    FROM
+        app_user_info
+    <where>
+      user_type = #{userType}
+      <if test="userType !=null and userType ==1 ">
+        AND blog_openid = #{openId}
+      </if>
+      <if test="userType !=null and userType ==2 ">
+        AND mina_openid = #{openId}
+      </if>
+    </where>
+  </select>
+
+
   <select id="selectByExample" parameterType="com.platform.yijia.pojo.AppUserInfoExample" resultMap="BaseResultMap">
     <!--
       WARNING - @mbg.generated