Ver Fonte

/user/login/auth/scan/result PC微信授权登录
/user/login/password 账号密码登录
接口修改返回vipflag

zhijiezhao há 3 anos atrás
pai
commit
5bd8ee8a67

+ 2 - 0
src/main/java/com/caimei365/user/model/dto/LoginPasswordDto.java

@@ -16,6 +16,8 @@ import java.io.Serializable;
 @ApiModel("密码登录参数")
 @Data
 public class LoginPasswordDto implements Serializable {
+
+
     /**
      * 手机号或邮箱
      */

+ 6 - 0
src/main/java/com/caimei365/user/model/vo/UserLoginVo.java

@@ -14,6 +14,12 @@ import java.util.Date;
  */
 @Data
 public class UserLoginVo implements Serializable {
+
+    /**
+     * 过期标记
+     */
+    @ApiModelProperty("过期套餐标记,0未买过,-1过期,1有效/无过期时间接口0不是会员,1是")
+    private Integer vipFlag;
     /**
      * 用户Id
      */

+ 34 - 1
src/main/java/com/caimei365/user/service/impl/LoginServiceImpl.java

@@ -10,7 +10,9 @@ import com.caimei365.user.model.ResponseJson;
 import com.caimei365.user.model.dto.AuthBindDto;
 import com.caimei365.user.model.dto.LoginPasswordDto;
 import com.caimei365.user.model.dto.ScanBindDto;
+import com.caimei365.user.model.dto.SuperVipDto;
 import com.caimei365.user.model.po.OperationPo;
+import com.caimei365.user.model.po.SuperVipPo;
 import com.caimei365.user.model.po.UserBeansHistoryPo;
 import com.caimei365.user.model.vo.UserLoginVo;
 import com.caimei365.user.model.vo.UserVo;
@@ -36,6 +38,8 @@ import java.util.*;
 @Service
 public class LoginServiceImpl implements LoginService {
 
+    @Resource
+    private SuperVipMapper vipMapper;
     @Resource
     private RedisService redisService;
     @Resource
@@ -82,6 +86,7 @@ public class LoginServiceImpl implements LoginService {
         }
         //处理比对密码
         UserLoginVo baseUser = loginMapper.getLoginUserByMobileOrEmail(mobileOrEmail);
+        
         if (baseUser != null) {
             // 如果前端传入unionId,则存入返回前端
             baseUser.setUnionId(unionId);
@@ -93,16 +98,20 @@ public class LoginServiceImpl implements LoginService {
                  *     登录成功
                  *
                  */
-
+                Integer userId = baseUser.getUserId();
+                SuperVipDto end = findEnd(userId);
+                Integer vipFlag = end.getVipFlag();
                 if (baseUser.getUserIdentity() == 1) {
                     // 协销登录
                     return ResponseJson.success(baseUser);
                 } else {
                     // 返回登录校验结果
+                    baseUser.setVipFlag(vipFlag);
                     return logonVerify(baseUser);
                 }
             }
         }
+
         return ResponseJson.error("输入的密码和账户名不匹配", null);
     }
 
@@ -310,6 +319,8 @@ public class LoginServiceImpl implements LoginService {
                 clubMapper.updateUserBeans(loginUser.getUserId(), userBeans);
             }
         }
+        SuperVipDto end = findEnd(loginUser.getUserId());
+        loginUser.setVipFlag(end.getVipFlag());
         return ResponseJson.success("登录成功", loginUser);
     }
 
@@ -661,4 +672,26 @@ public class LoginServiceImpl implements LoginService {
         return ResponseJson.success("绑定微信成功", user);
     }
 
+    /**
+     * 根据userId查是否过期,返回dto对象,flag=0未买过,-1过期,1有效,endTime过期时间
+     */
+    private SuperVipDto findEnd(Integer userId) {
+        SuperVipPo superVip = vipMapper.findSuperVip(userId);
+        SuperVipDto superVipDto = new SuperVipDto();
+        if (superVip == null) {
+            superVipDto.setVipFlag(0);
+        } else {
+            SuperVipPo endTime = vipMapper.findEndTime(userId);
+            if (endTime == null) {
+                superVipDto.setVipFlag(-1);
+                superVipDto.setEndTime(superVip.getEndTime());
+            }
+            superVipDto.setVipFlag(1);
+            superVipDto.setEndTime(endTime.getEndTime());
+        }
+        return superVipDto;
+    }
+
+
+
 }