登录 及 会员部分修改

This commit is contained in:
2024-07-17 13:39:37 +08:00
parent 50ec8c7cd7
commit d784ba8c27
5 changed files with 276 additions and 152 deletions

View File

@@ -96,19 +96,15 @@ public class LoginContoller {
* @return
*/
@RequestMapping("/wx/custom/login")
public Result wxCustomLogin(HttpServletRequest request, @RequestBody Map<String, String> map
// ,
// @RequestParam(value = "rawData", required = false) String rawData,
// @RequestParam(value = "signature", required = false) String signature
) {
public Result wxCustomLogin(HttpServletRequest request, @RequestBody Map<String, String> map) {
if (ObjectUtil.isNull(map) || ObjectUtil.isEmpty(map) || !map.containsKey("code") || ObjectUtil.isEmpty(map.get("code"))) {
Result.fail("code不能为空");
}
String code = map.get("code").toString();
String rawData = map.get("rawData");
String signature = map.get("signature");
String encryptedData = map.get("encryptedData");
String ivStr = map.get("iv");
// String signature = map.get("signature");
// String encryptedData = map.get("encryptedData");
// String ivStr = map.get("iv");
// String phone = map.get("phone");
// 用户非敏感信息rawData
// 签名signature
@@ -118,26 +114,26 @@ public class LoginContoller {
JSONObject SessionKeyOpenId = WechatUtil.getSessionKeyOrOpenId(code, customAppId, customSecrete);
// 3.接收微信接口服务 获取返回的参数
String openid = SessionKeyOpenId.getString("openid");
String sessionKey = SessionKeyOpenId.getString("session_key");
// String sessionKey = SessionKeyOpenId.getString("session_key");
// 4.校验签名 小程序发送的签名signature与服务器端生成的签名signature2 = sha1(rawData + sessionKey)
String signature2 = DigestUtils.sha1Hex(rawData + sessionKey);
if (!signature.equals(signature2)) {
return Result.fail("签名校验失败");
}
String phone = "";
try{
String data = WxMaCryptUtils.decrypt(sessionKey, encryptedData, ivStr);
if (ObjectUtil.isNotEmpty(data) && JSONObject.parseObject(data).containsKey("phoneNumber")) {
phone =JSONObject.parseObject(data).get("phoneNumber").toString();
}
}catch (Exception e){
log.info("登录传参:获取手机号失败{}",e.getMessage());
}
// String signature2 = DigestUtils.sha1Hex(rawData + sessionKey);
// if (!signature.equals(signature2)) {
// return Result.fail("签名校验失败");
// }
// String phone = "";
// try{
// String data = WxMaCryptUtils.decrypt(sessionKey, encryptedData, ivStr);
// if (ObjectUtil.isNotEmpty(data) && JSONObject.parseObject(data).containsKey("phoneNumber")) {
// phone =JSONObject.parseObject(data).get("phoneNumber").toString();
// }
// }catch (Exception e){
// log.info("登录传参:获取手机号失败{}",e.getMessage());
// }
String nickName = rawDataJson.getString("nickName");
String avatarUrl = rawDataJson.getString("avatarUrl");
try {
return loginService.wxCustomLogin(openid, avatarUrl, nickName, phone, IpUtil.getIpAddr(request));
return loginService.wxCustomLogin(openid, avatarUrl, nickName, "", IpUtil.getIpAddr(request));
} catch (Exception e) {
e.printStackTrace();
}
@@ -154,7 +150,37 @@ public class LoginContoller {
* @return
*/
// @RequestMapping("getPhoneNumber")
public Result getPhoneNumber(@RequestBody Map<String, String> map) {
// public Result getPhoneNumber(@RequestBody Map<String, String> map) {
//
// if (ObjectUtil.isNull(map) || ObjectUtil.isEmpty(map) || !map.containsKey("code") || ObjectUtil.isEmpty(map.get("code"))) {
// Result.fail("code不能为空");
// }
// String code = map.get("code").toString();
//
// String encryptedData = map.get("encryptedData");
//
// String ivStr = map.get("iv");
// if (StringUtils.isBlank(encryptedData) || StringUtils.isBlank(ivStr)) {
// return Result.fail("请授权后使用");
// }
//
// JSONObject SessionKeyOpenId = WechatUtil.getSessionKeyOrOpenId(code, customAppId, customSecrete);
// // 3.接收微信接口服务 获取返回的参数
// String openid = SessionKeyOpenId.getString("openid");
// String sessionKey = SessionKeyOpenId.getString("session_key");
// String data = WxMaCryptUtils.decrypt(sessionKey, encryptedData, ivStr);
// try {
// if (ObjectUtil.isNotEmpty(data) && JSONObject.parseObject(data).containsKey("phoneNumber")) {
// log.info("登录传参 获取手机号成功 sessionKey:{}\n encryptedData:{} \nivStr:{} \n data:{},",sessionKey,encryptedData,ivStr,JSONObject.parseObject(data).get("phoneNumber"));
// return Result.success(CodeEnum.SUCCESS, JSONObject.parseObject(data).get("phoneNumber"));
// }
// } catch (Exception e){
// log.info("登录传参 获取手机号失败 sessionKey:{}\n encryptedData:{} \nivStr:{} \n data:{},",sessionKey,encryptedData,ivStr,data);
// }
// return Result.fail("获取手机号失败,请重试!");
// }
@RequestMapping("getPhoneNumber")
public Result getPhoneNumber(@RequestHeader String openId,@RequestBody Map<String, String> map) {
if (ObjectUtil.isNull(map) || ObjectUtil.isEmpty(map) || !map.containsKey("code") || ObjectUtil.isEmpty(map.get("code"))) {
Result.fail("code不能为空");
@@ -175,8 +201,11 @@ public class LoginContoller {
String data = WxMaCryptUtils.decrypt(sessionKey, encryptedData, ivStr);
try {
if (ObjectUtil.isNotEmpty(data) && JSONObject.parseObject(data).containsKey("phoneNumber")) {
if (!map.containsKey("shopId") || ObjectUtil.isEmpty(map.get("shopId"))) {
return Result.success(CodeEnum.SUCCESS, JSONObject.parseObject(data).get("phoneNumber"));
}
log.info("登录传参 获取手机号成功 sessionKey:{}\n encryptedData:{} \nivStr:{} \n data:{},",sessionKey,encryptedData,ivStr,JSONObject.parseObject(data).get("phoneNumber"));
return Result.success(CodeEnum.SUCCESS, JSONObject.parseObject(data).get("phoneNumber"));
return loginService.upPhone(openId,JSONObject.parseObject(data).get("phoneNumber").toString(),map.get("shopId").toString());
}
} catch (Exception e){
log.info("登录传参 获取手机号失败 sessionKey:{}\n encryptedData:{} \nivStr:{} \n data:{},",sessionKey,encryptedData,ivStr,data);

View File

@@ -89,8 +89,8 @@ public class UserContoller {
shopUser = shopUserMapper.selectByUserIdAndShopId(userId, shopId);
if (ObjectUtil.isEmpty(shopUser)) {
TbUserInfo tbUserInfo = userInfoMapper.selectByPrimaryKey(Integer.valueOf(userId));
shopUser = shopUserMapper.selectByPhoneAndShopId(tbUserInfo.getTelephone(), shopId);
if(ObjectUtil.isEmpty(shopUser)){
// shopUser = shopUserMapper.selectByPhoneAndShopId(tbUserInfo.getTelephone(), shopId);
// if(ObjectUtil.isEmpty(shopUser)){
shopUser=new TbShopUser();
shopUser.setName(tbUserInfo.getNickName());
shopUser.setSex(tbUserInfo.getSex());
@@ -112,11 +112,11 @@ public class UserContoller {
shopUser.setCreatedAt(System.currentTimeMillis());
shopUser.setUpdatedAt(System.currentTimeMillis());
shopUserMapper.insert(shopUser);
}else {
shopUser.setUserId(userId);
shopUser.setUpdatedAt(System.currentTimeMillis());
shopUserMapper.updateByPrimaryKey(shopUser);
}
// }else {
// shopUser.setUserId(userId);
// shopUser.setUpdatedAt(System.currentTimeMillis());
// shopUserMapper.updateByPrimaryKey(shopUser);
// }
}
}else {
shopUser.setAmount(BigDecimal.ZERO);

View File

@@ -88,124 +88,171 @@ public class LoginService {
}
@Transactional(rollbackFor = Exception.class)
public Result wxCustomLogin(String openId, String headImage, String nickName, String telephone, String ip) throws Exception {
TbUserInfo userInfo = new TbUserInfo();
if(StringUtils.isNotBlank(telephone)){
userInfo = tbUserInfoMapper.selectByPhone(telephone);
if (ObjectUtil.isNull(userInfo)) {
userInfo = tbUserInfoMapper.selectByOpenId(openId);
if (ObjectUtil.isNull(userInfo)) {
userInfo = new TbUserInfo();
userInfo.setAmount(BigDecimal.ZERO);
userInfo.setChargeAmount(BigDecimal.ZERO);
userInfo.setLineOfCredit(BigDecimal.ZERO);
userInfo.setConsumeNumber(0);
userInfo.setConsumeAmount(BigDecimal.ZERO);
userInfo.setTotalScore(0);
userInfo.setLockScore(0);
userInfo.setHeadImg("https://cashier-oss.oss-cn-beijing.aliyuncs.com/upload/20240411/a2be5869bfa24d72a4782f695cc53ed1.png");
userInfo.setNickName(ObjectUtil.isNotNull(nickName) ? nickName : "微信用户");
userInfo.setTelephone(telephone);
userInfo.setMiniAppOpenId(openId);
userInfo.setStatus(Byte.parseByte("1"));
userInfo.setParentType("PERSON");
userInfo.setIsResource(Byte.parseByte("0"));
userInfo.setIsOnline(Byte.parseByte("0"));
userInfo.setIsVip(Byte.parseByte("0"));
userInfo.setSourcePath("WECHAT-APP");
userInfo.setIsAttentionMp(Byte.parseByte("0"));
userInfo.setSearchWord("||微信用户");
userInfo.setIsPwd("0");
userInfo.setPwd(MD5Utils.md5("123456"));
userInfo.setLastLogInAt(System.currentTimeMillis());
userInfo.setCreatedAt(System.currentTimeMillis());
userInfo.setUpdatedAt(System.currentTimeMillis());
tbUserInfoMapper.insert(userInfo);
List<TbShopUser> tbShopUsers = tbShopUserMapper.selectByPhone(telephone);
if (!CollectionUtils.isEmpty(tbShopUsers)) {
for (TbShopUser tbShopUser : tbShopUsers) {
tbShopUser.setUserId(userInfo.getId() + "");
tbShopUser.setUpdatedAt(System.currentTimeMillis());
tbShopUserMapper.updateByPrimaryKey(tbShopUser);
}
}
}else {
userInfo.setTelephone(telephone);
userInfo.setUpdatedAt(System.currentTimeMillis());
tbUserInfoMapper.updateByPrimaryKeySelective(userInfo);
List<TbShopUser> tbShopUsers = tbShopUserMapper.selectByPhone(telephone);
if (!CollectionUtils.isEmpty(tbShopUsers)) {
for (TbShopUser tbShopUser : tbShopUsers) {
tbShopUser.setUserId(null);
tbShopUser.setUpdatedAt(System.currentTimeMillis());
tbShopUserMapper.updateByPrimaryKey(tbShopUser);
}
}
}
}else {
if(!userInfo.getMiniAppOpenId().equals(openId)){
userInfo.setMiniAppOpenId(openId);
userInfo.setUpdatedAt(System.currentTimeMillis());
tbUserInfoMapper.updateByPrimaryKeySelective(userInfo);
}
}
public Result wxCustomLogin(String openId,String headImage,String nickName,String telephone,String ip) {
TbUserInfo userInfo= tbUserInfoMapper.selectByOpenId(openId);
if(ObjectUtil.isNull(userInfo)){
userInfo=new TbUserInfo();
userInfo.setAmount(BigDecimal.ZERO);
userInfo.setChargeAmount(BigDecimal.ZERO);
userInfo.setLineOfCredit(BigDecimal.ZERO);
userInfo.setConsumeNumber(0);
userInfo.setConsumeAmount(BigDecimal.ZERO);
userInfo.setTotalScore(0);
userInfo.setLockScore(0);
userInfo.setHeadImg(ObjectUtil.isNotNull(headImage)?headImage:"");
userInfo.setNickName(ObjectUtil.isNotNull(nickName)?nickName:"微信用户");
userInfo.setTelephone(ObjectUtil.isNotNull(telephone)?telephone:"");
userInfo.setMiniAppOpenId(openId);
userInfo.setStatus(Byte.parseByte("1"));
userInfo.setParentType("PERSON");
userInfo.setIsResource(Byte.parseByte("0"));
userInfo.setIsOnline(Byte.parseByte("0"));
userInfo.setIsVip(Byte.parseByte("0"));
userInfo.setSourcePath("WECHAT-APP");
userInfo.setIsAttentionMp(Byte.parseByte("0"));
userInfo.setSearchWord("||微信用户");
userInfo.setIsPwd("0");
userInfo.setPwd(MD5Utils.md5("123456"));
userInfo.setCreatedAt(System.currentTimeMillis());
userInfo.setLastLogInAt(System.currentTimeMillis());
userInfo.setUpdatedAt(System.currentTimeMillis());
tbUserInfoMapper.insert(userInfo);
}else {
userInfo = tbUserInfoMapper.selectByOpenId(openId);
if(ObjectUtil.isNull(userInfo)){
userInfo = new TbUserInfo();
userInfo.setAmount(BigDecimal.ZERO);
userInfo.setChargeAmount(BigDecimal.ZERO);
userInfo.setLineOfCredit(BigDecimal.ZERO);
userInfo.setConsumeNumber(0);
userInfo.setConsumeAmount(BigDecimal.ZERO);
userInfo.setTotalScore(0);
userInfo.setLockScore(0);
userInfo.setHeadImg("https://cashier-oss.oss-cn-beijing.aliyuncs.com/upload/20240411/a2be5869bfa24d72a4782f695cc53ed1.png");
userInfo.setNickName(ObjectUtil.isNotNull(nickName) ? nickName : "微信用户");
userInfo.setTelephone(telephone);
userInfo.setMiniAppOpenId(openId);
userInfo.setStatus(Byte.parseByte("1"));
userInfo.setParentType("PERSON");
userInfo.setIsResource(Byte.parseByte("0"));
userInfo.setIsOnline(Byte.parseByte("0"));
userInfo.setIsVip(Byte.parseByte("0"));
userInfo.setSourcePath("WECHAT-APP");
userInfo.setIsAttentionMp(Byte.parseByte("0"));
userInfo.setSearchWord("||微信用户");
userInfo.setIsPwd("0");
userInfo.setPwd(MD5Utils.md5("123456"));
userInfo.setLastLogInAt(System.currentTimeMillis());
userInfo.setCreatedAt(System.currentTimeMillis());
userInfo.setUpdatedAt(System.currentTimeMillis());
tbUserInfoMapper.insert(userInfo);
}
userInfo.setHeadImg(ObjectUtil.isNotNull(headImage)?headImage:"");
userInfo.setNickName(ObjectUtil.isNotNull(nickName)?nickName:"微信用户");
userInfo.setTelephone(ObjectUtil.isNotNull(telephone)?telephone:"");
userInfo.setUpdatedAt(System.currentTimeMillis());
userInfo.setLastLogInAt(System.currentTimeMillis());
tbUserInfoMapper.updateByPrimaryKeySelective(userInfo);
}
//生成token 信息
String token = TokenUtil.generateToken(userInfo.getId(), userInfo.getMiniAppOpenId(), userInfo.getTelephone(), userInfo.getNickName());
Map<String, Object> map = new HashMap<>();
try {
map.put("token", token);
map.put("userInfo", userInfo);
redisUtil.saveMessage(RedisCst.ONLINE_USER.concat(openId), JSON.toJSONString(map),60*60*24*30L);
//redis里 获取要关注的公众号信息
//userInfo 某字段存储关注公众号的标识
// userInfo.get
//公众号 appid
//展示描述
//图标
// map.put("", );
log.info("登录传参 结果:" + JSONUtil.toJSONString(map));
return Result.success(CodeEnum.SUCCESS, map);
} catch (Exception e) {
e.printStackTrace();
}
return Result.fail("登录失败");
map.put("token", token);
map.put("userInfo", userInfo);
redisUtil.saveMessage(RedisCst.ONLINE_USER.concat(openId), JSON.toJSONString(map), 60 * 60 * 24 * 30L);
log.info("登录传参 结果:" + JSONUtil.toJSONString(map));
return Result.success(CodeEnum.SUCCESS, map);
}
// @Transactional(rollbackFor = Exception.class)
// public Result wxCustomLogin(String openId, String headImage, String nickName, String telephone, String ip) throws Exception {
// TbUserInfo userInfo = new TbUserInfo();
// if(StringUtils.isNotBlank(telephone)){
// userInfo = tbUserInfoMapper.selectByPhone(telephone);
// if (ObjectUtil.isNull(userInfo)) {
// userInfo = tbUserInfoMapper.selectByOpenId(openId);
// if (ObjectUtil.isNull(userInfo)) {
// userInfo = new TbUserInfo();
// userInfo.setAmount(BigDecimal.ZERO);
// userInfo.setChargeAmount(BigDecimal.ZERO);
// userInfo.setLineOfCredit(BigDecimal.ZERO);
// userInfo.setConsumeNumber(0);
// userInfo.setConsumeAmount(BigDecimal.ZERO);
// userInfo.setTotalScore(0);
// userInfo.setLockScore(0);
// userInfo.setHeadImg("https://cashier-oss.oss-cn-beijing.aliyuncs.com/upload/20240411/a2be5869bfa24d72a4782f695cc53ed1.png");
// userInfo.setNickName(ObjectUtil.isNotNull(nickName) ? nickName : "微信用户");
// userInfo.setTelephone(telephone);
// userInfo.setMiniAppOpenId(openId);
// userInfo.setStatus(Byte.parseByte("1"));
// userInfo.setParentType("PERSON");
// userInfo.setIsResource(Byte.parseByte("0"));
// userInfo.setIsOnline(Byte.parseByte("0"));
// userInfo.setIsVip(Byte.parseByte("0"));
// userInfo.setSourcePath("WECHAT-APP");
// userInfo.setIsAttentionMp(Byte.parseByte("0"));
// userInfo.setSearchWord("||微信用户");
// userInfo.setIsPwd("0");
// userInfo.setPwd(MD5Utils.md5("123456"));
// userInfo.setLastLogInAt(System.currentTimeMillis());
// userInfo.setCreatedAt(System.currentTimeMillis());
// userInfo.setUpdatedAt(System.currentTimeMillis());
// tbUserInfoMapper.insert(userInfo);
// List<TbShopUser> tbShopUsers = tbShopUserMapper.selectByPhone(telephone);
// if (!CollectionUtils.isEmpty(tbShopUsers)) {
// for (TbShopUser tbShopUser : tbShopUsers) {
// tbShopUser.setUserId(userInfo.getId() + "");
// tbShopUser.setUpdatedAt(System.currentTimeMillis());
// tbShopUserMapper.updateByPrimaryKey(tbShopUser);
// }
// }
// }else {
// userInfo.setTelephone(telephone);
// userInfo.setUpdatedAt(System.currentTimeMillis());
// tbUserInfoMapper.updateByPrimaryKeySelective(userInfo);
// List<TbShopUser> tbShopUsers = tbShopUserMapper.selectByPhone(telephone);
// if (!CollectionUtils.isEmpty(tbShopUsers)) {
// for (TbShopUser tbShopUser : tbShopUsers) {
// tbShopUser.setUserId(null);
// tbShopUser.setUpdatedAt(System.currentTimeMillis());
// tbShopUserMapper.updateByPrimaryKey(tbShopUser);
// }
// }
// }
// }else {
// if(!userInfo.getMiniAppOpenId().equals(openId)){
// userInfo.setMiniAppOpenId(openId);
// userInfo.setUpdatedAt(System.currentTimeMillis());
// tbUserInfoMapper.updateByPrimaryKeySelective(userInfo);
// }
// }
// }else {
// userInfo = tbUserInfoMapper.selectByOpenId(openId);
// if(ObjectUtil.isNull(userInfo)){
// userInfo = new TbUserInfo();
// userInfo.setAmount(BigDecimal.ZERO);
// userInfo.setChargeAmount(BigDecimal.ZERO);
// userInfo.setLineOfCredit(BigDecimal.ZERO);
// userInfo.setConsumeNumber(0);
// userInfo.setConsumeAmount(BigDecimal.ZERO);
// userInfo.setTotalScore(0);
// userInfo.setLockScore(0);
// userInfo.setHeadImg("https://cashier-oss.oss-cn-beijing.aliyuncs.com/upload/20240411/a2be5869bfa24d72a4782f695cc53ed1.png");
// userInfo.setNickName(ObjectUtil.isNotNull(nickName) ? nickName : "微信用户");
// userInfo.setTelephone(telephone);
// userInfo.setMiniAppOpenId(openId);
// userInfo.setStatus(Byte.parseByte("1"));
// userInfo.setParentType("PERSON");
// userInfo.setIsResource(Byte.parseByte("0"));
// userInfo.setIsOnline(Byte.parseByte("0"));
// userInfo.setIsVip(Byte.parseByte("0"));
// userInfo.setSourcePath("WECHAT-APP");
// userInfo.setIsAttentionMp(Byte.parseByte("0"));
// userInfo.setSearchWord("||微信用户");
// userInfo.setIsPwd("0");
// userInfo.setPwd(MD5Utils.md5("123456"));
// userInfo.setLastLogInAt(System.currentTimeMillis());
// userInfo.setCreatedAt(System.currentTimeMillis());
// userInfo.setUpdatedAt(System.currentTimeMillis());
// tbUserInfoMapper.insert(userInfo);
// }
// }
// //生成token 信息
// String token = TokenUtil.generateToken(userInfo.getId(), userInfo.getMiniAppOpenId(), userInfo.getTelephone(), userInfo.getNickName());
//
// Map<String, Object> map = new HashMap<>();
// try {
// map.put("token", token);
// map.put("userInfo", userInfo);
// redisUtil.saveMessage(RedisCst.ONLINE_USER.concat(openId), JSON.toJSONString(map),60*60*24*30L);
// //redis里 获取要关注的公众号信息
// //userInfo 某字段存储关注公众号的标识
//// userInfo.get
// //公众号 appid
// //展示描述
// //图标
//// map.put("", );
// log.info("登录传参 结果:" + JSONUtil.toJSONString(map));
// return Result.success(CodeEnum.SUCCESS, map);
// } catch (Exception e) {
// e.printStackTrace();
//
// }
// return Result.fail("登录失败");
// }
/**
* APP注册
*
@@ -366,6 +413,53 @@ public class LoginService {
return Result.success(CodeEnum.ENCRYPT, tbUserInfo);
}
@Transactional
public Result upPhone(String openId, String phone, String shopId) {
TbUserInfo userInfo = tbUserInfoMapper.selectByOpenId(openId);
userInfo.setTelephone(phone);
userInfo.setUpdatedAt(System.currentTimeMillis());
tbUserInfoMapper.updateByPrimaryKeySelective(userInfo);
TbShopUser shopUser = tbShopUserMapper.selectByUserIdAndShopId(userInfo.getId().toString(), shopId);
if (shopUser != null) if (!shopUser.getIsVip().equals(1) && shopUser.getAmount().equals(BigDecimal.ZERO)) {
tbShopUserMapper.deleteByPrimaryKey(shopUser.getId());
List<TbShopUser> tbShopUsers = tbShopUserMapper.selectByPhone(phone);
if (!CollectionUtils.isEmpty(tbShopUsers)) {
for (TbShopUser tbShopUser : tbShopUsers) {
tbShopUser.setUserId(userInfo.getId() + "");
tbShopUser.setUpdatedAt(System.currentTimeMillis());
tbShopUserMapper.updateByPrimaryKey(tbShopUser);
}
return Result.success(CodeEnum.SUCCESS);
}
}
registerShopUser(userInfo,shopId);
return Result.success(CodeEnum.SUCCESS);
}
public void registerShopUser(TbUserInfo userInfo,String shopId) {
TbShopUser shopUser = new TbShopUser();
shopUser.setName(userInfo.getNickName());
shopUser.setSex(userInfo.getSex());
shopUser.setBirthDay(userInfo.getBirthDay());
shopUser.setLevel(Byte.parseByte("1"));
String dynamicCode = RandomUtil.randomNumbers(8);
shopUser.setCode(dynamicCode);
shopUser.setTelephone(userInfo.getTelephone());
shopUser.setAmount(BigDecimal.ZERO);
shopUser.setIsVip(Byte.parseByte("0"));
shopUser.setCreditAmount(BigDecimal.ZERO);
shopUser.setConsumeAmount(BigDecimal.ZERO);
shopUser.setConsumeNumber(0);
shopUser.setLevelConsume(BigDecimal.ZERO);
shopUser.setStatus(Byte.parseByte("1"));
shopUser.setShopId(shopId);
shopUser.setUserId(userInfo.getId().toString());
shopUser.setMiniOpenId(userInfo.getMiniAppOpenId());
shopUser.setCreatedAt(System.currentTimeMillis());
shopUser.setUpdatedAt(System.currentTimeMillis());
tbShopUserMapper.insert(shopUser);
}
public Result upPass(String userId, String oldPass, String newPass) {
TbUserInfo tbUserInfo = tbUserInfoMapper.selectByPrimaryKey(Integer.valueOf(userId));
if (!tbUserInfo.getPassword().equals(oldPass)) {

View File

@@ -76,8 +76,8 @@ public class ProductService {
try{
if (ObjectUtil.isEmpty(shopUser)) {
TbUserInfo tbUserInfo = tbUserInfoMapper.selectByPrimaryKey(Integer.valueOf(userId));
shopUser = tbShopUserMapper.selectByPhoneAndShopId(tbUserInfo.getTelephone(), shopId);
if(ObjectUtil.isEmpty(shopUser)){
// shopUser = tbShopUserMapper.selectByPhoneAndShopId(tbUserInfo.getTelephone(), shopId);
// if(ObjectUtil.isEmpty(shopUser)){
shopUser=new TbShopUser();
shopUser.setName(tbUserInfo.getNickName());
shopUser.setSex(tbUserInfo.getSex());
@@ -99,11 +99,11 @@ public class ProductService {
shopUser.setCreatedAt(System.currentTimeMillis());
shopUser.setUpdatedAt(System.currentTimeMillis());
tbShopUserMapper.insert(shopUser);
}else {
shopUser.setUserId(userId);
shopUser.setUpdatedAt(System.currentTimeMillis());
tbShopUserMapper.updateByPrimaryKey(shopUser);
}
// }else {
// shopUser.setUserId(userId);
// shopUser.setUpdatedAt(System.currentTimeMillis());
// tbShopUserMapper.updateByPrimaryKey(shopUser);
// }
}else {
shopUser.setUpdatedAt(System.currentTimeMillis());
tbShopUserMapper.updateByPrimaryKey(shopUser);

View File

@@ -424,9 +424,10 @@
tb_shop_user u
left join tb_shop_info i on u.shop_id=i.id
WHERE
u.user_id = #{userId}
u.user_id = #{userId}
and is_vip = 1
<if test="shopId != null and shopId !=''">
and shop_id = #{shopId}
and shop_id = #{shopId}
</if>
</select>
</mapper>