From d1169af7e268c6b38f441f549a042267fb77412d Mon Sep 17 00:00:00 2001
From: 张天森 <1292933220@qq.com>
Date: 星期二, 11 十月 2022 17:56:07 +0800
Subject: [PATCH] 三说会堂登陆账号处理
---
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java | 84 +++++++++++++++++++++++++++++++++++++++++-
1 files changed, 82 insertions(+), 2 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
index 75f86c1..03fb117 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
@@ -28,7 +28,9 @@
import com.panzhihua.common.model.vos.community.acid.ComActAcidMemberVO;
import com.panzhihua.common.model.vos.community.acid.ComActAcidRecordVO;
import com.panzhihua.common.model.vos.community.microCommercialStreet.McsLoginUserInfoVO;
+import com.panzhihua.common.model.vos.sanshuo.ComSanshuoExpertVO;
import com.panzhihua.common.model.vos.user.*;
+import com.panzhihua.common.service.community.CommunityService;
import com.panzhihua.common.utlis.*;
import com.panzhihua.service_user.dao.*;
import com.panzhihua.service_user.entity.SysAppConfig;
@@ -302,10 +304,16 @@
*/
@Override
public R<LoginUserInfoVO> getUserInfo(String name, int type,String appId) {
+ //是否为三说会堂行业分中心或专家后台账号
SysUserDO sysUserDO = null;
+ Boolean isIndustryOrExpertAccount=(userDao.isIndustryCenterAccount(name)>0 || userDao.isExpertAccount(name)>0);
if (1 == type) {
sysUserDO = userDao.selectOne(
new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, type).eq(SysUserDO::getOpenid, name));
+ }else if(isIndustryOrExpertAccount){
+ //三说会堂行业分中心或专家后台账号登陆
+ sysUserDO=userDao.selectOne(
+ new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getAccount, name).eq(SysUserDO::getAppId,appId ));
} else {
LambdaQueryWrapper<SysUserDO> wrapper = new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, type);
if (type == 11) {
@@ -493,8 +501,15 @@
}else if (isNull(loginUserInfoVO.getLevel())){
loginUserInfoVO.setLevel(1);
}
+ //是否为三说会堂专家
+ ComSanshuoExpertVO expertVO=userDao.isExpert(loginUserInfoVO.getPhone());
+ if (nonNull(expertVO)){
+ loginUserInfoVO.setType(13);
+ }
return R.ok(loginUserInfoVO);
}
+
+
/**
* 修改用户登录密码
@@ -3609,6 +3624,38 @@
}
return R.ok();
}
+
+ @Override
+ public R wsPush(String washPhone,String phone,String washName,Integer orderStatus) {
+ if(StringUtils.isNotEmpty(phone)){
+ SysUserDO sysUserDO=userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getPhone,phone).eq(SysUserDO::getAppId,"wx98d62711dfbd8425").orderByDesc(SysUserDO::getCreateAt).last("limit 1"));
+ if(sysUserDO!=null&&StringUtils.isNotEmpty(sysUserDO.getOpenid())){
+ String status="";
+ String accessToken="";
+ WxXCXTempSend util = new WxXCXTempSend();
+ try {
+ accessToken = util.getWsAccessToken();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ switch (orderStatus){
+ case 3 : status="已分配车美";
+ WxUtil.sendUuWash3(sysUserDO.getOpenid(),accessToken,status,washName,washPhone,phone,"sNj6m-JBvW6rOokKGDX9X3-XH1AD0GY5_X0jA9JSLwc");
+ break;
+ case 4 : status="车美已开始服务";
+ WxUtil.sendUuWash4(sysUserDO.getOpenid(),accessToken,status,washName,washPhone,phone,"Eft5ksvsnOQANy2uNOGY43CC3pb33eDGA_lgCEoxuiw");
+ break;
+ case 6 : status="订单确认完成";
+ WxUtil.sendUuWash6(sysUserDO.getOpenid(),accessToken,status,washName,washPhone,phone,"iPS8yrsGDqy76hiP8bIbxkosveoX1xTFhdusSiGp-XM");
+ break;
+ case 9 : status="订单已取消";
+ WxUtil.sendUuWash(sysUserDO.getOpenid(),accessToken,status,washName,washPhone,phone,"z_ysGXz9JWBc2rXuYZzVCXKJTyLf0w0WerrohuNoEng");
+ break;
+ }
+ }
+ }
+ return R.ok();
+ }
@Override
public R getCommunityList(String name,Long id) {
//区级账号名
@@ -3754,10 +3801,11 @@
//是否存在相同账号
SysUserDO userDO = userDao.selectOne(new QueryWrapper<SysUserDO>().eq("account", administratorsUserVO.getAccount()));
if (isNull(userDO)){
+ sysUserDO.setAppId("wx0cef797390444b75");
sysUserDO.setCreateAt(new Date());
sysUserDO.setUserId(administratorsUserVO.getUserId());
sysUserDO.setAccount(administratorsUserVO.getAccount());
- sysUserDO.setPassword(administratorsUserVO.getPassword());
+ sysUserDO.setPassword(new BCryptPasswordEncoder().encode(administratorsUserVO.getPassword()));
sysUserDO.setName(administratorsUserVO.getName());
if (nonNull(administratorsUserVO.getImageUrl())){
sysUserDO.setImageUrl(administratorsUserVO.getImageUrl());
@@ -3771,6 +3819,13 @@
sysUserRole.setUserId(sysUserDO.getUserId());
if (sysUserDO.getType().equals(11)){
sysUserRole.setRoleId(Long.parseLong(UserConstants.SANSHUO_EXPERT_ROLE));
+ //将专家小程序账号设置为专家权限
+ SysUserDO sysUserDO1 = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, 1).eq(SysUserDO::getPhone, administratorsUserVO.getPhone()));
+ if (nonNull(sysUserDO1)){
+ sysUserDO1.setType(13);
+ userDao.updateById(sysUserDO1);
+ log.info("添加专家小程序账号权限");
+ }
}else{
sysUserRole.setRoleId(Long.parseLong(UserConstants.SANSHUO_INDUSTRY_CENTER_ROLE));
}
@@ -3788,13 +3843,38 @@
public R resetPassExpertOrIndustryCenter(String account,String password) {
SysUserDO sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().eq("account", account));
if (nonNull(sysUserDO)){
- sysUserDO.setPassword(password);
+ sysUserDO.setPassword(new BCryptPasswordEncoder().encode(password));
userDao.updateById(sysUserDO);
return R.ok();
}
return R.fail("修改失败");
}
+ /**
+ * 移除专家权限
+ * */
+ @Override
+ public R removeExpertRole(String phone) {
+ if (nonNull(phone)){
+ //是否有权限为专家的账号
+ SysUserDO sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, 11).eq(SysUserDO::getPhone, phone));
+ if (nonNull(sysUserDO)){
+ //删除后台账号
+ sysUserDO.setStatus(2);
+ userDao.updateById(sysUserDO);
+ log.info("禁用专家后台账号成功");
+ }
+ //小程序账号移除专家权限
+ SysUserDO sysUserDO1 = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, 13).eq(SysUserDO::getPhone, phone));
+ if (nonNull(sysUserDO1)){
+ sysUserDO1.setType(1);
+ userDao.updateById(sysUserDO1);
+ log.info("移除专家权限成功");
+ }
+ }
+ return R.ok();
+ }
+
@Override
public R getAreaAndStreet() {
--
Gitblit v1.7.1