From e4ead8decf8ce5c4b590da877bf60f6780066c24 Mon Sep 17 00:00:00 2001 From: yanghui <2536613402@qq.com> Date: 星期五, 14 十月 2022 11:24:57 +0800 Subject: [PATCH] #feat 修改 --- springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java | 90 +++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 87 insertions(+), 3 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..bd73ae8 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,11 +304,18 @@ */ @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 { + }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) { //只允许通过account登录 @@ -493,8 +502,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 +3625,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.sendWsWash3(sysUserDO.getOpenid(),accessToken,status,washName,washPhone,phone,"sNj6m-JBvW6rOokKGDX9X3-XH1AD0GY5_X0jA9JSLwc"); + break; + case 4 : status="车美已开始服务"; + WxUtil.sendWsWash4(sysUserDO.getOpenid(),accessToken,status,washName,washPhone,phone,"Eft5ksvsnOQANy2uNOGY43CC3pb33eDGA_lgCEoxuiw"); + break; + case 6 : status="订单确认完成"; + WxUtil.sendWsWash6(sysUserDO.getOpenid(),accessToken,status,washName,washPhone,phone,"iPS8yrsGDqy76hiP8bIbxkosveoX1xTFhdusSiGp-XM"); + break; + case 9 : status="订单已取消"; + WxUtil.sendWsWash(sysUserDO.getOpenid(),accessToken,status,washName,washPhone,phone,"z_ysGXz9JWBc2rXuYZzVCXKJTyLf0w0WerrohuNoEng"); + break; + } + } + } + return R.ok(); + } @Override public R getCommunityList(String name,Long id) { //区级账号名 @@ -3754,10 +3802,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()); @@ -3765,12 +3814,22 @@ if (nonNull(administratorsUserVO.getType())){ sysUserDO.setType(administratorsUserVO.getType()); } + if (nonNull(administratorsUserVO.getPhone())){ + sysUserDO.setPhone(administratorsUserVO.getPhone()); + } userDao.insert(sysUserDO); //分配权限 SysUserRoleDO sysUserRole=new SysUserRoleDO(); 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 +3847,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