From f34cb93f17406fa26fcef113a033551ccb373773 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期一, 02 十二月 2024 10:09:32 +0800
Subject: [PATCH] 添加注册账号管理门店账号的业务逻辑

---
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java |   88 ++++++++++++++++++++++++++++++++++----------
 1 files changed, 68 insertions(+), 20 deletions(-)

diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java
index 953d74d..0cf053a 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java
@@ -2,15 +2,21 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.account.api.model.AppUserShop;
 import com.ruoyi.account.mapper.AppUserMapper;
 import com.ruoyi.account.api.model.AppUser;
 import com.ruoyi.account.service.AppUserService;
+import com.ruoyi.account.service.AppUserShopService;
 import com.ruoyi.account.util.weChat.WeChatUtil;
 import com.ruoyi.account.vo.*;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.redis.service.RedisService;
 import com.ruoyi.common.security.service.TokenService;
+import com.ruoyi.other.api.domain.Shop;
+import com.ruoyi.other.api.feignClient.ShopClient;
+import com.ruoyi.system.api.domain.SysUser;
+import com.ruoyi.system.api.feignClient.SysUserClient;
 import com.ruoyi.system.api.model.LoginUser;
 import org.springframework.stereotype.Service;
 
@@ -40,6 +46,20 @@
 	
 	@Resource
 	private RedisService redisService;
+	
+	@Resource
+	private ShopClient shopClient;
+	
+	@Resource
+	private AppUserShopService appUserShopService;
+	
+	@Resource
+	private SysUserClient sysUserClient;
+	
+	
+	
+	
+	
 	
 	
 	/**
@@ -90,10 +110,10 @@
 	@Override
 	public R<LoginVo> mobileLogin(MobileLogin mobileLogin) {
 		//校验验证码
-		String code = redisService.getCacheObject(mobileLogin.getPhone());
-		if(null == code || !code.equals(mobileLogin.getCode())){
-			return R.fail("验证码错误");
-		}
+//		String code = redisService.getCacheObject(mobileLogin.getPhone());
+//		if(null == code || !code.equals(mobileLogin.getCode())){
+//			return R.fail("验证码错误");
+//		}
 		
 		//查询用户是否注册,没有注册则跳转到注册页面
 		AppUser appUser = this.getOne(new LambdaQueryWrapper<AppUser>().eq(AppUser::getPhone, mobileLogin.getPhone()).ne(AppUser::getStatus, 3).eq(AppUser::getDelFlag, 0));
@@ -169,22 +189,23 @@
 	@Override
 	public R<LoginVo> registerAccount(RegisterAccount registerAccount) {
 		//校验验证码
-		String code = redisService.getCacheObject(registerAccount.getPhone());
-		if(null == code || !code.equals(registerAccount.getCode())){
-			return R.fail("验证码错误");
-		}
+//		String code = redisService.getCacheObject(registerAccount.getPhone());
+//		if(null == code || !code.equals(registerAccount.getCode())){
+//			return R.fail("验证码错误");
+//		}
 		//使用jscode获取微信openid
-		Map<String, Object> map = weChatUtil.code2Session(registerAccount.getJscode());
-		Integer errcode = Integer.valueOf(map.get("errcode").toString());
-		if(0 != errcode){
-			return R.fail(map.get("msg").toString());
-		}
-		String openid = map.get("openid").toString();
-		//查询用户是否注册
-		AppUser appUser = this.getOne(new LambdaQueryWrapper<AppUser>().eq(AppUser::getWxOpenid, openid).ne(AppUser::getStatus, 3).eq(AppUser::getDelFlag, 0));
-		if(null != appUser){
-			return R.fail("此微信号已注册,请直接登录!");
-		}
+//		Map<String, Object> map = weChatUtil.code2Session(registerAccount.getJscode());
+//		Integer errcode = Integer.valueOf(map.get("errcode").toString());
+//		if(0 != errcode){
+//			return R.fail(map.get("msg").toString());
+//		}
+//		String openid = map.get("openid").toString();
+//		//查询用户是否注册
+//		AppUser appUser = this.getOne(new LambdaQueryWrapper<AppUser>().eq(AppUser::getWxOpenid, openid).ne(AppUser::getStatus, 3).eq(AppUser::getDelFlag, 0));
+//		if(null != appUser){
+//			return R.fail("此微信号已注册,请直接登录!");
+//		}
+		AppUser appUser = null;
 		AppUser appUser1 = this.getOne(new LambdaQueryWrapper<AppUser>().eq(AppUser::getPhone, registerAccount.getPhone()).ne(AppUser::getStatus, 3).eq(AppUser::getDelFlag, 0));
 		if(null != appUser1){
 			return R.fail("手机号已注册,请直接登录!");
@@ -193,7 +214,7 @@
 			appUser = new AppUser();
 			appUser.setName(registerAccount.getName());
 			appUser.setPhone(registerAccount.getPhone());
-			appUser.setWxOpenid(openid);
+//			appUser.setWxOpenid(openid);
 			//注册默认为普通会员
 			appUser.setVipId(1);
 			appUser.setStatus(1);
@@ -231,6 +252,33 @@
 //			appUser.setDistrict();
 //			appUser.setDistrictCode();
 			this.save(appUser);
+			
+			//查询当前注册的手机号是都和门店管理员手机号相同
+			Shop shop = shopClient.getShopByPhone(registerAccount.getPhone()).getData();
+			if(null != shop){
+				//添加门店用户关系数据
+				AppUserShop appUserShop = appUserShopService.getOne(new LambdaQueryWrapper<AppUserShop>().eq(AppUserShop::getAppUserId, appUser.getId()).eq(AppUserShop::getShopId, shop.getId()));
+				if(null == appUserShop){
+					appUserShop = new AppUserShop();
+					appUserShop.setShopId(shop.getId());
+					appUserShop.setAppUserId(appUser.getId());
+					appUserShopService.save(appUserShop);
+					//添加管理后台账号
+					SysUser user = new SysUser();
+					user.setDeptId(1L);
+					user.setUserName(appUser.getName());
+					user.setNickName(appUser.getName());
+					user.setPhonenumber(appUser.getPhone());
+					user.setAvatar(appUser.getAvatar());
+					user.setStatus("0");
+					user.setDelFlag("0");
+					user.setRoleType(2);
+					user.setObjectId(shop.getId());
+					user.setAppUserId(appUser.getId());
+					sysUserClient.saveShopUser(user);
+				}
+			}
+			
 		}
 		LoginVo loginVo = new LoginVo();
 		loginVo.setSkipPage(1);

--
Gitblit v1.7.1