plf пре 4 година
родитељ
комит
4fa7b1eafa

+ 2 - 2
src/main/java/com/caimei365/user/controller/HeHeApi.java

@@ -20,7 +20,7 @@ import org.springframework.web.bind.annotation.*;
 @Api(tags = "呵呵商城用户API")
 @RestController
 @RequiredArgsConstructor
-@RequestMapping("/heHe")
+@RequestMapping("/user/he")
 public class HeHeApi {
 
     private final HeHeService heHeService;
@@ -36,7 +36,7 @@ public class HeHeApi {
 
     @ApiOperation("手机号验证码登录")
     @PostMapping("/mobile/login")
-    public ResponseJson<HeHeUserVo> mobileLogin(@RequestBody HeHeUserDto heHeUserDto) {
+    public ResponseJson<HeHeUserVo> mobileLogin(HeHeUserDto heHeUserDto) {
         if (StringUtils.isBlank(heHeUserDto.getMobile())) {
             return ResponseJson.error("请输入手机号", null);
         }

+ 11 - 3
src/main/java/com/caimei365/user/mapper/HeHeMapper.java

@@ -1,6 +1,7 @@
 package com.caimei365.user.mapper;
 
-import com.caimei365.user.model.dto.HeHeUserDto;
+import com.caimei365.user.model.po.CmHeHeUserPo;
+import com.caimei365.user.model.po.UserPo;
 import com.caimei365.user.model.vo.HeHeUserVo;
 import org.apache.ibatis.annotations.Mapper;
 
@@ -39,7 +40,14 @@ public interface HeHeMapper {
     /**
      * 保存呵呵普通用户信息
      *
-     * @param heHeUserDto
+     * @param heUserPo
      */
-    void insertHeHeUser(HeHeUserDto heHeUserDto);
+    void insertHeHeUser(CmHeHeUserPo heUserPo);
+
+    /**
+     * 保存普通用户user信息
+     *
+     * @param user
+     */
+    void insertUser(UserPo user);
 }

+ 56 - 0
src/main/java/com/caimei365/user/model/po/CmHeHeUserPo.java

@@ -0,0 +1,56 @@
+package com.caimei365.user.model.po;
+
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * cm_hehe_user
+ * @author 
+ */
+@Data
+public class CmHeHeUserPo implements Serializable {
+    private Integer id;
+
+    /**
+     * 对应user表用户id
+     */
+    private Integer userId;
+
+    /**
+     * 姓名
+     */
+    private String name;
+
+    /**
+     * 手机号
+     */
+    private String mobile;
+
+    /**
+     * 用户身份:1普通用户,2分销者
+     */
+    private String userIdentity;
+
+    /**
+     * 微信昵称
+     */
+    private String nickName;
+
+    /**
+     * 微信头像
+     */
+    private String headImgUrl;
+
+    /**
+     * 微信openid
+     */
+    private String openId;
+
+    /**
+     * 添加时间
+     */
+    private Date addTime;
+
+    private static final long serialVersionUID = 1L;
+}

+ 1 - 1
src/main/java/com/caimei365/user/model/vo/HeHeUserVo.java

@@ -30,7 +30,7 @@ public class HeHeUserVo implements Serializable {
     /**
      * 用户身份:1普通用户,2分销者
      */
-    private String userIdentity;
+    private Integer userIdentity;
 
     /**
      * 微信昵称

+ 30 - 5
src/main/java/com/caimei365/user/service/impl/HeHeServiceImpl.java

@@ -5,16 +5,22 @@ import com.caimei365.user.components.WeChatService;
 import com.caimei365.user.mapper.HeHeMapper;
 import com.caimei365.user.model.ResponseJson;
 import com.caimei365.user.model.dto.HeHeUserDto;
+import com.caimei365.user.model.po.CmHeHeUserPo;
+import com.caimei365.user.model.po.UserPo;
 import com.caimei365.user.model.vo.HeHeUserVo;
 import com.caimei365.user.service.HeHeService;
 import com.caimei365.user.utils.AliyunSmsUtil;
 import com.caimei365.user.utils.CodeUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.StringUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.http.HttpHeaders;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.Map;
 
 /**
@@ -46,13 +52,17 @@ public class HeHeServiceImpl implements HeHeService {
         if (heHeUser == null) {
             heHeUser = new HeHeUserVo();
             heHeUser.setOpenId(openId);
+            return ResponseJson.error(heHeUser);
         }
         return ResponseJson.success(heHeUser);
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public ResponseJson<HeHeUserVo> mobileLogin(HeHeUserDto heHeUserDto) {
-        String redisSmsCode = (String) redisService.get("heCode" + heHeUserDto.getMobile());
+        Date date = new Date();
+        String currentTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
+        String redisSmsCode = (String) redisService.get("heCode:" + heHeUserDto.getMobile());
         if (null != redisSmsCode && !"null".equals(redisSmsCode)) {
             if (redisSmsCode.equals(heHeUserDto.getVerificationCode())) {
                 HeHeUserVo heHeUser = heHeMapper.findHeHeUserByMobile(heHeUserDto.getMobile());
@@ -64,15 +74,30 @@ public class HeHeServiceImpl implements HeHeService {
                         heHeMapper.updateHeHeUser(heHeUser);
                     }
                 } else {
-                    heHeMapper.insertHeHeUser(heHeUserDto);
+                    UserPo user = new UserPo();
+                    user.setBindMobile("H" + heHeUserDto.getMobile());
+                    user.setUserName(heHeUserDto.getNickName());
+                    user.setName(heHeUserDto.getNickName());
+                    user.setPassword("HeHe");
+                    //6:呵呵商城用户
+                    user.setUserPermission(6);
+                    user.setUserIdentity(6);
+                    user.setRegisterTime(currentTime);
+                    user.setValidFlag(1);
+                    heHeMapper.insertUser(user);
+
+                    CmHeHeUserPo heUserPo = new CmHeHeUserPo();
+                    BeanUtils.copyProperties(heHeUserDto, heUserPo);
+                    heUserPo.setUserId(user.getUserId());
+                    heUserPo.setUserIdentity("1");
+                    heUserPo.setAddTime(date);
+                    heHeMapper.insertHeHeUser(heUserPo);
                     heHeUser = heHeMapper.findHeHeUserByMobile(heHeUserDto.getMobile());
                 }
                 return ResponseJson.success(heHeUser);
-            } else {
-                return ResponseJson.error("验证码错误", null);
             }
         }
-        return ResponseJson.error("验证码已过期", null);
+        return ResponseJson.error("验证码错误", null);
     }
 
     @Override

+ 1 - 1
src/main/resources/bootstrap.yml

@@ -10,5 +10,5 @@ spring:
       profile: @activatedProperties@    # 启用配置后缀名称
       label: master                     # 分支名称
       # uri: http://47.119.112.46:18001       # 配置中心地址(开发中)
-      uri: http://120.79.162.1:18001          # 配置中心地址(正式环境)
+      uri: http://localhost:18001          # 配置中心地址(正式环境)
       name: user                        # 配置文件名称

+ 26 - 13
src/main/resources/mapper/HeHeMapper.xml

@@ -6,11 +6,12 @@
 
     <select id="findHeHeUserByOpenId" resultType="com.caimei365.user.model.vo.HeHeUserVo">
         SELECT
-          id AS userId,
+          userId,
           NAME,
           mobile,
           userIdentity,
           nickName,
+          headImgUrl,
           openId
         FROM
           cm_hehe_user
@@ -20,11 +21,12 @@
 
     <select id="findHeHeUserByMobile" resultType="com.caimei365.user.model.vo.HeHeUserVo">
         SELECT
-          id AS userId,
+          userId,
           NAME,
           mobile,
           userIdentity,
           nickName,
+          headImgUrl,
           openId
         FROM
           cm_hehe_user
@@ -40,19 +42,30 @@
           `headImgUrl` = #{headImgUrl},
           `openId` = #{openId}
         WHERE
-          `id` = #{id}
+          `userId` = #{userId}
     </update>
 
-    <insert id="insertHeHeUser" parameterType="com.caimei365.user.model.dto.HeHeUserDto">
-        INSERT INTO `cm_hehe_user` (
-          `mobile`, `userIdentity`, `nickName`,
-          `headImgUrl`, `openId`, `addTime`
-        )
-        VALUES
-          (
-            #{mobile}, 1, #{nickName}, #{headImgUrl},
-            #{openId}, NOW()
-          )
+    <insert id="insertHeHeUser">
+        insert into cm_hehe_user (userId, `name`, mobile,
+          userIdentity, nickName, headImgUrl,
+          openId, addTime)
+        values (#{userId}, #{name}, #{mobile},
+          #{userIdentity}, #{nickName}, #{headImgUrl},
+          #{openId}, #{addTime})
+    </insert>
+
+    <insert id="insertUser" parameterType="com.caimei365.user.model.po.UserPo" keyColumn="userID" keyProperty="userId" useGeneratedKeys="true">
+        INSERT INTO USER (
+		  bindMobile, userPermission, userIdentity,
+		  userName, password, name, registerTime,
+		  validFlag
+		)
+		VALUES
+		  (
+			#{bindMobile}, #{userPermission}, #{userIdentity},
+			#{userName}, #{password}, #{name}, #{registerTime},
+			#{validFlag}
+		  )
     </insert>
 
 </mapper>