From c20f18b987d597b04e110665c57c0cc6eb796525 Mon Sep 17 00:00:00 2001 From: lidongdong <1459917685@qq.com> Date: 星期三, 05 七月 2023 10:06:51 +0800 Subject: [PATCH] 修改新增社区 不同区域同名字社区添加报错 --- springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java | 673 +++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 548 insertions(+), 125 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 1897a3e..612ce4b 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 @@ -1,54 +1,43 @@ package com.panzhihua.service_user.service.impl; +import static java.util.Objects.isNull; +import static java.util.Objects.nonNull; +import static org.apache.commons.lang3.StringUtils.isNotBlank; + +import java.math.BigDecimal; +import java.text.SimpleDateFormat; +import java.util.*; +import java.util.concurrent.TimeUnit; +import java.util.stream.Collectors; + +import javax.annotation.Resource; + import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ArrayUtil; -import cn.hutool.core.util.IdcardUtil; import cn.hutool.core.util.NumberUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.core.util.*; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; -import com.panzhihua.common.constants.Constants; -import com.panzhihua.common.constants.UserConstants; -import com.panzhihua.common.exceptions.ServiceException; -import com.panzhihua.common.model.dtos.DataKanBansDto; -import com.panzhihua.common.model.dtos.PageDTO; -import com.panzhihua.common.model.dtos.community.ExportUserDTO; -import com.panzhihua.common.model.dtos.community.NoticeReadDTO; -import com.panzhihua.common.model.dtos.community.convenient.ConvenientMerchantDTO; -import com.panzhihua.common.model.dtos.community.convenient.DisableOrEnableConvenientMerchantDTO; import com.panzhihua.common.model.dtos.community.microCommercialStreet.BindUserPhoneDTO; -import com.panzhihua.common.model.dtos.community.microCommercialStreet.McsMerchantDTO; -import com.panzhihua.common.model.dtos.grid.*; import com.panzhihua.common.model.dtos.partybuilding.ComPbCheckUserDTO; -import com.panzhihua.common.model.dtos.user.*; -import com.panzhihua.common.model.vos.*; -import com.panzhihua.common.model.vos.community.*; +import com.panzhihua.common.model.vos.community.ComAreaTownCommunityVO; import com.panzhihua.common.model.vos.community.acid.ComActAcidCheckRecordVO; 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.grid.GridMemberVO; -import com.panzhihua.common.model.vos.grid.admin.GridMemberBuildingVO; -import com.panzhihua.common.model.vos.partybuilding.ActivityManagerVO; -import com.panzhihua.common.model.vos.shop.ShopStoreVO; +import com.panzhihua.common.model.vos.sanshuo.ComSanshuoExpertVO; +import com.panzhihua.common.model.vos.shop.ComShopUserAddressVO; 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; import com.panzhihua.service_user.entity.SysTemplateConfig; -import com.panzhihua.service_user.model.dos.*; -import com.panzhihua.service_user.model.dtos.DataKanbanDTO; -import com.panzhihua.service_user.service.EventGridMemberBuildingRelationService; -import com.panzhihua.service_user.service.UserService; -import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.time.DateFormatUtils; import org.apache.commons.lang.time.DateUtils; import org.springframework.beans.BeanUtils; @@ -59,16 +48,68 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.util.ObjectUtils; -import javax.annotation.Resource; -import java.math.BigDecimal; -import java.text.SimpleDateFormat; -import java.util.*; -import java.util.concurrent.TimeUnit; -import java.util.stream.Collectors; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.panzhihua.common.constants.Constants; +import com.panzhihua.common.constants.UserConstants; +import com.panzhihua.common.exceptions.ServiceException; +import com.panzhihua.common.model.dtos.DataKanBansDto; +import com.panzhihua.common.model.dtos.PageDTO; +import com.panzhihua.common.model.dtos.community.ExportUserDTO; +import com.panzhihua.common.model.dtos.community.NoticeReadDTO; +import com.panzhihua.common.model.dtos.community.convenient.ConvenientMerchantDTO; +import com.panzhihua.common.model.dtos.community.convenient.DisableOrEnableConvenientMerchantDTO; +import com.panzhihua.common.model.dtos.community.microCommercialStreet.McsMerchantDTO; +import com.panzhihua.common.model.dtos.grid.EventGridMemberAddDTO; +import com.panzhihua.common.model.dtos.grid.EventGridMemberEditAdminDTO; +import com.panzhihua.common.model.dtos.grid.EventGridMemberEditStatusDTO; +import com.panzhihua.common.model.dtos.grid.EventGridMemberPassResetDTO; +import com.panzhihua.common.model.dtos.grid.PageEventGridMemberRelationDTO; +import com.panzhihua.common.model.dtos.user.EexcelUserDTO; +import com.panzhihua.common.model.dtos.user.PageFeedBackDTO; +import com.panzhihua.common.model.dtos.user.PageUserAppletsBackstageDTO; +import com.panzhihua.common.model.dtos.user.SysUserEditTipsDTO; +import com.panzhihua.common.model.dtos.user.SysUserFeedbackDTO; +import com.panzhihua.common.model.vos.AppletUserInfoVO; +import com.panzhihua.common.model.vos.EditUserInfoPassAppDTO; +import com.panzhihua.common.model.vos.IndexDataKanbanVO; +import com.panzhihua.common.model.vos.IndexDataVO; +import com.panzhihua.common.model.vos.LoginUserInfoVO; +import com.panzhihua.common.model.vos.R; +import com.panzhihua.common.model.vos.SystemmanagementConfigVO; +import com.panzhihua.common.model.vos.community.ComActVO; +import com.panzhihua.common.model.vos.community.ComMngVolunteerMngVO; +import com.panzhihua.common.model.vos.community.IndexUserCommunityVo; +import com.panzhihua.common.model.vos.community.IndexUserStatisticsVo; +import com.panzhihua.common.model.vos.community.IndexUserStreetVo; +import com.panzhihua.common.model.vos.grid.GridMemberVO; +import com.panzhihua.common.model.vos.grid.admin.GridMemberBuildingVO; +import com.panzhihua.common.model.vos.partybuilding.ActivityManagerVO; +import com.panzhihua.common.model.vos.shop.ShopStoreVO; +import com.panzhihua.service_user.model.dos.ComActFourMember; +import com.panzhihua.service_user.model.dos.ComMngFamilyInfoDO; +import com.panzhihua.service_user.model.dos.ComMngUserTagDO; +import com.panzhihua.service_user.model.dos.EventGridMemberBuildingRelationDO; +import com.panzhihua.service_user.model.dos.LcCompareCodeMemberDO; +import com.panzhihua.service_user.model.dos.SysMenuDO; +import com.panzhihua.service_user.model.dos.SysOperLogDO; +import com.panzhihua.service_user.model.dos.SysRoleDO; +import com.panzhihua.service_user.model.dos.SysRoleMenuDO; +import com.panzhihua.service_user.model.dos.SysUserAgreementDO; +import com.panzhihua.service_user.model.dos.SysUserDO; +import com.panzhihua.service_user.model.dos.SysUserFeedbackDO; +import com.panzhihua.service_user.model.dos.SysUserNoticeDO; +import com.panzhihua.service_user.model.dos.SysUserRoleDO; +import com.panzhihua.service_user.model.dtos.DataKanbanDTO; +import com.panzhihua.service_user.model.dtos.UsersStatisticsDTO; +import com.panzhihua.service_user.service.EventGridMemberBuildingRelationService; +import com.panzhihua.service_user.service.UserService; -import static java.util.Objects.isNull; -import static java.util.Objects.nonNull; -import static org.apache.commons.lang3.StringUtils.isNotBlank; +import cn.hutool.core.util.IdcardUtil; +import lombok.extern.slf4j.Slf4j; // import com.panzhihua.common.service.grid.GridService; @@ -124,15 +165,15 @@ private SysTemplateConfigDao sysTemplateConfigDao; @Resource private ObjectMapper objectMapper; - private static final Integer ALLCOUNTY = 1; - private static final Integer ALLSTREET = 2; - private static final Integer ALLCOMMUNITY = 3; - private static final Integer BYSTREET = 4; - private static final Integer BYAREA = 5; - private static final String OTHERUSER = "其他用户"; - private static final String UPDATEACIDCHECKRECORD = "修改排查数据"; - private static final String UPDATEACIDMEMBER = "修改防疫工作人员信息"; - private static final String UPDATEACIDRECORD = "修改防疫信息数据"; + private static final Integer ALLCOUNTY=1; + private static final Integer ALLSTREET=2; + private static final Integer ALLCOMMUNITY=3; + private static final Integer BYSTREET=4; + private static final Integer BYAREA=5; + private static final String OTHERUSER="其他用户"; + private static final String UPDATEACIDCHECKRECORD="修改排查数据"; + private static final String UPDATEACIDMEMBER="修改防疫工作人员信息"; + private static final String UPDATEACIDRECORD="修改防疫信息数据"; // @Resource // private GridService gridService; @@ -184,6 +225,10 @@ sysUserDO1.setPassword(encode); sysUserDO1.setType(1); sysUserDO1.setAppId(appId); + //设置默认头像地址 + sysUserDO1.setImageUrl("https://www.psciio.com//idcard/f15c91f940624ed59537ecced1059f18.jpg"); + //设置默认用户名 + sysUserDO1.setNickName("用户" + RandomUtil.randomString(8)); num = userDao.insert(sysUserDO1); } else { String encode = new BCryptPasswordEncoder().encode(UserConstants.PASSWORD); @@ -259,18 +304,25 @@ * @return 用户基本信息、角色 */ @Override - public R<LoginUserInfoVO> getUserInfo(String name, int type, String appId) { + 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 { + new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, type).eq(SysUserDO::getOpenid, name).eq(SysUserDO::getAppId, appId)); + }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登录 - wrapper.and(sysUserDOLambdaQueryWrapper -> sysUserDOLambdaQueryWrapper.eq(SysUserDO::getAccount, name).eq(SysUserDO::getAppId, appId)); + wrapper.and(sysUserDOLambdaQueryWrapper -> sysUserDOLambdaQueryWrapper.eq(SysUserDO::getAccount, name).eq(SysUserDO::getAppId,appId)); } else { - wrapper.and(sysUserDOLambdaQueryWrapper -> sysUserDOLambdaQueryWrapper.eq(SysUserDO::getAppId, appId).eq(SysUserDO::getAccount, name).or() + wrapper.and(sysUserDOLambdaQueryWrapper -> sysUserDOLambdaQueryWrapper.eq(SysUserDO::getAppId,appId).eq(SysUserDO::getAccount, name).or() .eq(SysUserDO::getPhone, name)); } sysUserDO = userDao.selectOne(wrapper); @@ -280,6 +332,17 @@ return R.fail(); } LoginUserInfoVO loginUserInfoVO = new LoginUserInfoVO(); + //获取后台商家user + SysUserDO sysUser = userDao.selectOne( + new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, 5).eq(SysUserDO::getPhone, sysUserDO.getPhone()).eq(SysUserDO::getAppId, appId)); + //判断是否是商家账号 + if (nonNull(sysUser)){ + loginUserInfoVO.setBackstageUserId(sysUser.getUserId()); + loginUserInfoVO.setBackstageType(5); + } + if (nonNull(sysUserDO.getStreetId())){ + loginUserInfoVO.setStreetId(sysUserDO.getStreetId()); + } loginUserInfoVO.setUserId(sysUserDO.getUserId()); loginUserInfoVO.setName(sysUserDO.getName()); loginUserInfoVO.setPassword(sysUserDO.getPassword()); @@ -287,13 +350,13 @@ loginUserInfoVO.setAccount(name); loginUserInfoVO.setType(sysUserDO.getType()); loginUserInfoVO.setIsRealNamed(sysUserDO.getIdCard() != null);// 暂时 身份证判断实名制 - if (sysUserDO.getCommunityId() != null) { + if(sysUserDO.getCommunityId()!=null){ ComActVO comActVO = userDao.selectCommunity(sysUserDO.getCommunityId()); loginUserInfoVO.setCommunityId(sysUserDO.getCommunityId()); - if (comActVO != null) { + if(comActVO!=null){ loginUserInfoVO.setComActVO(comActVO); - String areaName = userDao.selectAreaCodeByStreetId(comActVO.getStreetId()); - if (StringUtils.isNotEmpty(areaName)) { + String areaName=userDao.selectAreaCodeByStreetId(comActVO.getStreetId()); + if(StringUtils.isNotEmpty(areaName)){ loginUserInfoVO.setAreaName(areaName); } // SysAppConfig sysAppConfig=sysAppConfigDao.selectOne(new QueryWrapper<SysAppConfig>().lambda().eq(SysAppConfig::getAreaCode,comActVO.getAreaCode())); @@ -309,6 +372,20 @@ roleDOList.forEach(sysRoleDO -> { set.add(sysRoleDO.getRoleKey()); }); + } + //是否为人大代表 + if (StringUtils.isNotEmpty(sysUserDO.getPhone()) && StringUtils.isNotEmpty(sysUserDO.getName())){ + int i = userDao.isDpcMember(sysUserDO.getPhone(), sysUserDO.getName()); + if (i>0){ + loginUserInfoVO.setIsDpcMember(1); + } + } + //是否为物业公司账号 + if (nonNull(sysUserDO.getPhone())){ + Long propertyAccount = userDao.isPropertyAccount(sysUserDO.getPhone()); + if (nonNull(propertyAccount)){ + loginUserInfoVO.setPropertyId(propertyAccount); + } } return R.ok(loginUserInfoVO); } @@ -352,8 +429,8 @@ loginUserInfoVO.setCommunityName(comActVO.getName()); loginUserInfoVO.setComActVO(comActVO); loginUserInfoVO.setAreaCode(comActVO.getAreaCode()); - SysAppConfig sysAppConfig = sysAppConfigDao.selectOne(new QueryWrapper<SysAppConfig>().lambda().eq(SysAppConfig::getAreaCode, comActVO.getAreaCode())); - if (sysAppConfig != null) { + SysAppConfig sysAppConfig=sysAppConfigDao.selectOne(new QueryWrapper<SysAppConfig>().lambda().eq(SysAppConfig::getAreaCode,comActVO.getAreaCode())); + if(sysAppConfig!=null){ loginUserInfoVO.setAppId(sysAppConfig.getAppId()); loginUserInfoVO.setAppSecret(sysAppConfig.getSecret()); } @@ -368,8 +445,8 @@ loginUserInfoVO.setVolunteerStatus(state); } //是否四长四员 - Integer countFourMember = comActFourMemberDao.selectCount(new QueryWrapper<ComActFourMember>().lambda().eq(ComActFourMember::getIdCard, sysUserDO.getIdCard())); - if (countFourMember > 0) { + Integer countFourMember=comActFourMemberDao.selectCount(new QueryWrapper<ComActFourMember>().lambda().eq(ComActFourMember::getIdCard,sysUserDO.getIdCard())); + if(countFourMember>0){ loginUserInfoVO.setIsFourMember(1); } //是否是社区物业人员 @@ -385,21 +462,24 @@ //是否是防疫工作人员 ComActAcidMemberVO acidMember = userDao.selectAcidMemberByPhone(phone); if (nonNull(acidMember)) { - if (acidMember.getRelationName().equals("panzhihua") || acidMember.getRelationName().equals("西区") || acidMember.getRelationName().equals("东区") || acidMember.getRelationName().equals("仁和区") || acidMember.getRelationName().equals("米易县") || acidMember.getRelationName().equals("盐边县")) { + if(acidMember.getRelationName().equals("panzhihua")||acidMember.getRelationName().equals("西区")||acidMember.getRelationName().equals("东区")||acidMember.getRelationName().equals("仁和区")||acidMember.getRelationName().equals("米易县")||acidMember.getRelationName().equals("盐边县")){ loginUserInfoVO.setIsAcidMember(1); - } else { + } + else { loginUserInfoVO.setIsAcidMember(2); } loginUserInfoVO.setRelationName(acidMember.getRelationName()); } - Integer count = userDao.selectOrgAdmin(phone); - if (count > 0) { + Integer count=userDao.selectOrgAdmin(phone); + if(count>0){ loginUserInfoVO.setIsCheckUnitAdmin(1); } - Long checkUnitId = userDao.selectCheckUnitId(phone); - if (checkUnitId != null) { + Long checkUnitId=userDao.selectCheckUnitId(phone); + if(checkUnitId!=null){ loginUserInfoVO.setCheckUnitId(checkUnitId); - } else { + } + + else { loginUserInfoVO.setIsCheckUnitAdmin(0); } //是否网格员 @@ -419,19 +499,102 @@ } else if (isSysUser != null && isSysUser > 0) { loginUserInfoVO.setIsmemberrole(1); } - Integer countSocialWorker = userDao.countSocialWorker(phone, userCommunityId); - if (countSocialWorker > 0) { + Integer countSocialWorker = userDao.countSocialWorker(phone,userCommunityId); + if(countSocialWorker>0){ loginUserInfoVO.setIsSocialWorker(1); } } loginUserInfoVO.setIsRealNamed(sysUserDO.getIdCard() != null); + //是否社区或街道后台 + int countSocialOrg=userDao.countSocialOrg(sysUserDO.getUserId()); + if(countSocialOrg>0){ + loginUserInfoVO.setUserType(3); + } + if (nonNull(sysUserDO.getAccount())){ + if (isStreetAccount(sysUserDO.getAccount())){ + //街道账号 + loginUserInfoVO.setLevel(3); + } + if (sysUserDO.getAccount().equals("admin")){ + loginUserInfoVO.setLevel(1); + } + } + if (loginUserInfoVO.getType().equals(3)){ + loginUserInfoVO.setLevel(4); + } + if (sysUserDO.getType().equals(11)){ + //专家 + loginUserInfoVO.setLevel(5); + }else if (sysUserDO.getType().equals(12)){ + //行业分中心 + loginUserInfoVO.setLevel(2); + } + //是否为三说会堂专家 + ComSanshuoExpertVO expertVO=userDao.isExpert(loginUserInfoVO.getPhone()); + if (nonNull(expertVO)){ + loginUserInfoVO.setType(13); + } + //是否为人大代表 + if (StringUtils.isNotEmpty(phone) && StringUtils.isNotEmpty(sysUserDO.getName())){ + int i = userDao.isDpcMember(phone, sysUserDO.getName()); + if (i>0){ + loginUserInfoVO.setIsDpcMember(1); + } + } + //获取后台商家user + SysUserDO sysUser = userDao.selectOne( + new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, 5).eq(SysUserDO::getPhone, sysUserDO.getPhone()).eq(SysUserDO::getAppId, "wx118de8a734d269f0")); + //判断是否是商家账号 + if (nonNull(sysUser)){ + loginUserInfoVO.setBackstageUserId(sysUser.getUserId()); + loginUserInfoVO.setBackstageType(5); + Long storeId = userDao.selectStoreIdIdByUserId(sysUser.getUserId()); + loginUserInfoVO.setStoreIdId(storeId); + + } + //是否为物业公司账号 + if (nonNull(sysUserDO.getPhone())){ + Long propertyAccount = userDao.isPropertyAccount(sysUserDO.getPhone()); + if (nonNull(propertyAccount)){ + loginUserInfoVO.setPropertyId(propertyAccount); + } + } + //获取自提点账号 + if (StrUtil.isNotBlank(sysUserDO.getPhone())){ + if(userDao.checkPoint(sysUserDO.getPhone()) > 0){ + loginUserInfoVO.setIsPoint(true); + }else { + loginUserInfoVO.setIsPoint(false); + } + } + //默认地址 + ComShopUserAddressVO comShopUserAddressVO = userDao.selectDefaultAddressVO(userId); + if (nonNull(comShopUserAddressVO)){ + loginUserInfoVO.setComShopUserAddressVO(comShopUserAddressVO); + } return R.ok(loginUserInfoVO); } /** + * 是否为综治后台街道账号 + * */ + public Boolean isStreetAccount(String name){ + Boolean flag=false; + String[] account={"glpz","qxpjd","tjdjd","dbdjd","yqjd","bcg","hmkjd","dhjd","jsgyy","dzhljd"}; + if (nonNull(name)){ + if (ArrayUtil.contains(account,name)){ + flag=true; + } + } + return flag; + } + + + /** * 修改用户登录密码 * - * @param changePasswordVO 新密码 + * @param changePasswordVO + * 新密码 * @return 修改结果 */ @Override @@ -463,8 +626,10 @@ /** * 某社区后台人员查询 * - * @param param 名字 - * @param communityId 社区id + * @param param + * 名字 + * @param communityId + * 社区id * @return 人员集合 */ @Override @@ -491,8 +656,10 @@ /** * 微心愿搜索社区团队人员列表 * - * @param param 请求参数 - * @param communityId 社区id + * @param param + * 请求参数 + * @param communityId + * 社区id * @return 社区团队人员列表 */ @Override @@ -503,7 +670,8 @@ /** * 分页查询人脸识别 * - * @param loginUserInfoVO 查询参数 + * @param loginUserInfoVO + * 查询参数 * @return 分页集合 */ @Override @@ -671,6 +839,13 @@ //是否是防疫工作人员 loginUserInfoVO.setIsAcidMember(0); ComActAcidMemberVO acidMember = userDao.selectAcidMemberByPhone(loginUserInfoVO.getPhone()); + //是否为普达物业公司后台账号 + if (nonNull(sysUserDO.getPhone())){ + Long propertyAccount = userDao.isPropertyAccount(sysUserDO.getPhone()); + if (nonNull(propertyAccount)){ + loginUserInfoVO.setPropertyId(propertyAccount); + } + } if (nonNull(acidMember)) { if (acidMember.getRelationName().equals("panzhihua") || acidMember.getRelationName().equals("西区") || acidMember.getRelationName().equals("东区") || acidMember.getRelationName().equals("仁和区") || acidMember.getRelationName().equals("米易县") || acidMember.getRelationName().equals("盐边县")) { loginUserInfoVO.setIsAcidMember(1); @@ -690,7 +865,15 @@ loginUserInfoVO.setUserType(1); } else { loginUserInfoVO.setUserType(2); + loginUserInfoVO.setLevel(4); } + } + if (sysUserDO.getType().equals(11)){ + loginUserInfoVO.setLevel(5); + }else if (sysUserDO.getType().equals(12)){ + loginUserInfoVO.setLevel(2); + }else if (isNull(loginUserInfoVO.getLevel())){ + loginUserInfoVO.setLevel(1); } loginUserInfoVO.setBackstageType(1); String[] account = {"dongqu", "xiqu", "yanbianxian", "miyixian", "renhequ", "fantaixinqu"}; @@ -703,6 +886,18 @@ if (sysUserDO.getBindingCheckUnitId() != null) { loginUserInfoVO.setBackstageType(4); } + //判断是否是商家账号 + Long storeId = userDao.selectStoreIdIdByUserId(sysUserDO.getUserId()); + if (null != storeId){ + loginUserInfoVO.setBackstageUserId(sysUserDO.getUserId()); + loginUserInfoVO.setBackstageType(5); + loginUserInfoVO.setStoreIdId(storeId); + } + + SysUserRoleDO sysUserRoleDO=sysUserRoleDAO.selectOne(new QueryWrapper<SysUserRoleDO>() + .lambda().eq(SysUserRoleDO::getUserId,sysUserDO.getUserId())); + loginUserInfoVO.setRoleId(sysUserRoleDO.getRoleId().toString()); + return R.ok(loginUserInfoVO); } @@ -872,7 +1067,7 @@ userDao.updateComPbMemberUserId(idCard, sysUserDO.getUserId()); } - SysUserDO user = userDao.selectById(loginUserInfoVO.getUserId()); + /*SysUserDO user = userDao.selectById(loginUserInfoVO.getUserId()); if (user != null) { // 实名认证成功推送订阅消息给用户 try { @@ -885,7 +1080,7 @@ } catch (Exception e) { log.error("推送用户订阅消息失败,失败原因:" + e.getMessage()); } - } + }*/ return R.ok(); } return R.fail(); @@ -1061,6 +1256,15 @@ @Override @Transactional(rollbackFor = Exception.class) public R addUserBackstage(AdministratorsUserVO administratorsUserVO) { + + List<SysUserDO> list=userDao.selectList(new QueryWrapper<SysUserDO>().lambda(). + eq(SysUserDO::getAppId,administratorsUserVO.getAppid()). + eq(SysUserDO::getAccount,administratorsUserVO.getAccount())); + if(list!=null && list.size()>0) + { + return R.fail("账户已存在!"); + } + ComActVO comActVO = userDao.selectCommunity(administratorsUserVO.getCommunityId()); if (nonNull(comActVO)) { List<ComAreaTownCommunityVO> areaTownList = userDao.selectAreaTownCommunity(comActVO.getName()); @@ -1093,11 +1297,29 @@ } sysRoleDO.setRoleSort(0); sysRoleDO.setCreateBy(administratorsUserVO.getUserId()); - int insert = roleDAO.insert(sysRoleDO); - if (insert > 0) { - SysRoleDO sysRoleDO1 = roleDAO.selectOne( - new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleKey, sysRoleDO.getRoleKey())); - roleId = sysRoleDO1.getRoleId(); + sysRoleDO.setRoleId(Snowflake.getId()); + + SysRoleDO sysRoleDOSelext = roleDAO.selectOne( + new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleKey, sysRoleDO.getRoleKey())); + + if(sysRoleDOSelext==null) + { + int insert = roleDAO.insert(sysRoleDO); + if (insert > 0) { + SysRoleDO sysRoleDO1 = roleDAO.selectOne( + new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleId, sysRoleDO.getRoleId())); + roleId = sysRoleDO1.getRoleId(); + // 新角色设置所有权限 + MenuRoleVO menuRoleVO = new MenuRoleVO(); + menuRoleVO.setIsAll(1); + menuRoleVO.setCommunityId(communityId); + menuRoleVO.setRoleId(roleId); + this.putMenuRole(menuRoleVO); + } + } + else + { + roleId = sysRoleDOSelext.getRoleId(); // 新角色设置所有权限 MenuRoleVO menuRoleVO = new MenuRoleVO(); menuRoleVO.setIsAll(1); @@ -1105,6 +1327,7 @@ menuRoleVO.setRoleId(roleId); this.putMenuRole(menuRoleVO); } + } if (roleId.intValue() == 777777777) { SysRoleDO sysRoleDO = new SysRoleDO(); @@ -1112,11 +1335,47 @@ sysRoleDO.setRoleKey(Constants.STREET_ROLE_KEY + administratorsUserVO.getStreetId()); sysRoleDO.setRoleSort(0); sysRoleDO.setCreateBy(administratorsUserVO.getUserId()); - int insert = roleDAO.insert(sysRoleDO); - if (insert > 0) { - SysRoleDO sysRoleDO1 = roleDAO.selectOne( - new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleKey, sysRoleDO.getRoleKey())); - roleId = sysRoleDO1.getRoleId(); + sysRoleDO.setRoleId(Snowflake.getId()); + + SysRoleDO sysRoleDOSelext = roleDAO.selectOne( + new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleKey, sysRoleDO.getRoleKey())); + + if(sysRoleDOSelext==null) + { + int insert = roleDAO.insert(sysRoleDO); + if (insert > 0) { +// SysRoleDO sysRoleDO1 = roleDAO.selectOne( +// new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleId, sysRoleDO.getRoleId())); + roleId = sysRoleDOSelext.getRoleId(); + // 新街道管理员角色设置固定三社权限 + MenuRoleVO menuRoleVO = new MenuRoleVO(); + List<Long> menu = new ArrayList<>(); + if (administratorsUserVO.getSocialType() == 1) { + menu.add(233L); + menu.add(234L); + menu.add(235L); + menu.add(236L); + menu.add(237L); + } else if (administratorsUserVO.getSocialType() == 2) { + menu.add(233L); + menu.add(234L); + menu.add(236L); + menu.add(237L); + menu.add(238L); + } else if (administratorsUserVO.getSocialType() == 3) { + menu.add(233L); + menu.add(237L); + } else { + menuRoleVO.setIsAll(1); + } + menuRoleVO.setMenuIds(menu); + menuRoleVO.setRoleId(roleId); + this.putMenuRole(menuRoleVO); + } + } + else + { + roleId = sysRoleDOSelext.getRoleId(); // 新街道管理员角色设置固定三社权限 MenuRoleVO menuRoleVO = new MenuRoleVO(); List<Long> menu = new ArrayList<>(); @@ -1142,6 +1401,7 @@ menuRoleVO.setRoleId(roleId); this.putMenuRole(menuRoleVO); } + } SysRoleDO roleDO = roleDAO.selectById(roleId); if (ObjectUtils.isEmpty(roleDO)) { @@ -1208,13 +1468,12 @@ menu.add(300L); menu.add(303L); } - sysRoleDO.setRoleSort(0); sysRoleDO.setCreateBy(administratorsUserVO.getUserId()); - SysRoleDO sysRoleDO1 = roleDAO.selectOne( + List<SysRoleDO> sysRoleDO1 = roleDAO.selectList( new QueryWrapper<SysRoleDO>().lambda().eq(SysRoleDO::getRoleKey, sysRoleDO.getRoleKey())); - if (sysRoleDO1 != null) { - sysRoleDO = sysRoleDO1; + if (sysRoleDO1 != null && sysRoleDO1.size()>0 ) { + sysRoleDO = sysRoleDO1.get(0); roleId = sysRoleDO.getRoleId(); } else { roleDAO.insert(sysRoleDO); @@ -1225,6 +1484,8 @@ this.putMenuRole(menuRoleVO); } } + log.info("======================type"+administratorsUserVO.getType()); + log.info("=======================roleId"+roleId); SysRoleDO roleDO = roleDAO.selectById(roleId); if (ObjectUtils.isEmpty(roleDO)) { return R.fail("角色不存在"); @@ -1232,6 +1493,9 @@ String encode = new BCryptPasswordEncoder().encode(administratorsUserVO.getPassword()); administratorsUserVO.setPassword(encode); BeanUtils.copyProperties(administratorsUserVO, sysUserDO); + if (nonNull(administratorsUserVO.getAppid())){ + sysUserDO.setAppId(administratorsUserVO.getAppid()); + } int insert = 0; try { insert = userDao.insert(sysUserDO); @@ -1245,7 +1509,6 @@ } else if (e.getMessage().contains("23000")) { throw new ServiceException("手机号已存在"); } - } if (insert > 0) { SysUserDO sysUserDO1 = userDao @@ -1489,6 +1752,11 @@ } page.setSize(pageSize); page.setCurrent(pageNum); + //因操作日志数据量太大,如果没有时间查询条件,默认查询最近十五天的数据 + if (StrUtil.isEmpty(sysOperLogVO.getStartTime()) && StrUtil.isEmpty(sysOperLogVO.getEndTime())){ + sysOperLogVO.setStartTime(com.panzhihua.common.utlis.DateUtils.getBeforeDay(15)); + sysOperLogVO.setEndTime(com.panzhihua.common.utlis.DateUtils.getCurrentDateymd()); + } IPage<SysOperLogVO> iPage = sysOperLogDAO.pageOperLog(page, sysOperLogVO); return R.ok(iPage); } @@ -2163,8 +2431,13 @@ sysUserDO.setPhone(storeVO.getPhone()); sysUserDO.setName(storeVO.getContacts()); sysUserDO.setPassword(encode); + sysUserDO.setAppId("wx0cef797390444b75"); try { insert = userDao.insert(sysUserDO); + SysUserRoleDO sysUserRoleDO = new SysUserRoleDO(); + sysUserRoleDO.setUserId(sysUserDO.getUserId()); + sysUserRoleDO.setRoleId(sysRoleDO.getRoleId()); + sysUserRoleDAO.insert(sysUserRoleDO); // 把SysUserId赋值给店铺 if (sysUserDO.getUserId() != null) { userDao.updateStoreByPhone(storeVO.getPhone(), sysUserDO.getUserId()); @@ -2706,7 +2979,8 @@ @Transactional(rollbackFor = Exception.class) public R addConvenientMerchantUser(ConvenientMerchantDTO convenientMerchantDTO) { SysUserDO sysUserDO; - sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getAccount, convenientMerchantDTO.getAccount())); + sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getAccount, convenientMerchantDTO.getAccount()) + .eq(SysUserDO::getPhone,convenientMerchantDTO.getMobilePhone()).eq(SysUserDO::getAppId,"wx118de8a734d269f0")); if (nonNull(sysUserDO)) { return R.fail("账户已经存在"); } @@ -2715,12 +2989,13 @@ String encode = new BCryptPasswordEncoder().encode(convenientMerchantDTO.getPassword()); BeanUtils.copyProperties(convenientMerchantDTO, sysUserDO); sysUserDO.setAccount(convenientMerchantDTO.getAccount()); - sysUserDO.setType(10); + sysUserDO.setType(5); sysUserDO.setAreaId(null); sysUserDO.setStatus(1); - sysUserDO.setPhone(null); + sysUserDO.setPhone(convenientMerchantDTO.getMobilePhone()); sysUserDO.setName(convenientMerchantDTO.getContacts()); sysUserDO.setPassword(encode); + sysUserDO.setAppId("wx118de8a734d269f0"); try { userDao.insert(sysUserDO); return R.ok(sysUserDO.getUserId()); @@ -2834,14 +3109,24 @@ } // 获取最近二十天数据 - List<Date> serverndays = com.panzhihua.common.utlis.DateUtils.getOldDays(); - serverndays.forEach(date -> { - // 查询社区活动数量 - DataKanbanDTO dataKanbanDTO = userDao.selectCommunityAddUserOrder(dataKanBansDto.getAppId(), date); + List<Date> activeDate = getTwentyDays(); + + String twentyDay = com.panzhihua.common.utlis.DateUtils.getTwentyDay(); + //获取最近活跃人数 + List<UsersStatisticsDTO> actives = userDao.selectActive(twentyDay, dataKanBansDto.getAppId()); + //获取最近注册人数 + List<UsersStatisticsDTO> dailyAdds = userDao.selectDailyAdd(twentyDay, dataKanBansDto.getAppId()); + + Map<String, String> activeMap = actives.stream().collect(Collectors.toMap(UsersStatisticsDTO::getSpecificDate, UsersStatisticsDTO::getTotal)); + Map<String, String> dailyAddMap = dailyAdds.stream().collect(Collectors.toMap(UsersStatisticsDTO::getSpecificDate, UsersStatisticsDTO::getTotal)); + + + for (Date date : activeDate) { + String dateStr = DateUtil.format(date, "yyyy-MM-dd"); communityActiveUserX.add(DateFormatUtils.format(date, "MM-dd")); - communityActiveUserY.add(dataKanbanDTO.getNum()); - communityActiveUserZ.add(dataKanbanDTO.getDayNum()); - }); + communityActiveUserY.add(dailyAddMap.containsKey(dateStr) ? Integer.parseInt(dailyAddMap.get(dateStr)) : 0); + communityActiveUserZ.add(activeMap.containsKey(dateStr) ? Integer.parseInt(activeMap.get(dateStr)) : 0); + } indexDataKanbanVO.setCommunityActiveUserX(communityActiveUserX); indexDataKanbanVO.setCommunityAddUserY(communityActiveUserY); indexDataKanbanVO.setCommunityActiveUserY(communityActiveUserZ); @@ -3161,16 +3446,19 @@ @Override public R updateUserPartyStatus(Long userId) { - SysUserDO sysUserDO = userDao.selectById(userId); - if (sysUserDO != null) { - sysUserDO.setIsPartymember(1); - int updated = userDao.updateById(sysUserDO); - if (updated > 0) { - // 删除用户信息缓存 - String userKey = UserConstants.LOGIN_USER_INFO + sysUserDO.getUserId(); - stringRedisTemplate.delete(userKey); + List<SysUserDO> sysUserDOs = userDao.selectByUserId(userId); + for (SysUserDO sysUserDO : sysUserDOs) { + if (sysUserDO != null) { + sysUserDO.setIsPartymember(1); + int updated = userDao.updateById(sysUserDO); + if (updated > 0) { + // 删除用户信息缓存 + String userKey = UserConstants.LOGIN_USER_INFO + sysUserDO.getUserId(); + stringRedisTemplate.delete(userKey); + } } } + return R.ok(); } @@ -3197,7 +3485,7 @@ } Map<String, String> headerMap = new HashMap<>(); headerMap.put("appid", appId); - String resultJson = HttpClientUtil.get("https://api.uucsh.cn/member/wx/get-access?province=" + uuLoginVO.getProvince() + "&city=" + uuLoginVO.getCity() + "&area=" + uuLoginVO.getArea() + "&appid=" + appId + "×tamp=" + uuLoginVO.getTimestamp() + "&sign=" + uuLoginVO.getSign() + "&mobile=" + uuLoginVO.getMobile() + "&couponId=" + uuLoginVO.getCouponId(), headerMap, null); + String resultJson = HttpClientUtil.get("https://uu-api.imashuo.com/member/wx/get-access?province=" + uuLoginVO.getProvince() + "&city=" + uuLoginVO.getCity() + "&area=" + uuLoginVO.getArea() + "&appid=" + appId + "×tamp=" + uuLoginVO.getTimestamp() + "&sign=" + uuLoginVO.getSign() + "&mobile=" + uuLoginVO.getMobile() + "&couponId=" + uuLoginVO.getCouponId(), headerMap, null); JSONObject result = JSON.parseObject(resultJson); if (result.get("status").equals(1)) { return R.ok(result.get("data")); @@ -3462,15 +3750,18 @@ activeDate = getMonthTwentyDays(); } } - //获取最近活跃人数 - Map<String, Long> active = userDao.getActive(activeX, streetId, areaCode, appId); + List<UsersStatisticsDTO> actives = userDao.getActive(activeX, streetId, areaCode, appId); //获取最近注册人数 - Map<String, Long> dailyAdd = userDao.getDailyAdd(activeX, streetId, areaCode, appId); + List<UsersStatisticsDTO> dailyAdds = userDao.getDailyAdd(activeX, streetId, areaCode, appId); + Map<String, String> activeMap = actives.stream().collect(Collectors.toMap(UsersStatisticsDTO::getSpecificDate, UsersStatisticsDTO::getTotal)); + Map<String, String> dailyAddMap = dailyAdds.stream().collect(Collectors.toMap(UsersStatisticsDTO::getSpecificDate, UsersStatisticsDTO::getTotal)); + + for (Date date : activeDate) { String dateStr = DateUtil.format(date, "yyyy-MM-dd"); - activeY.add(active.containsKey(dateStr) ? active.get("activeUser").toString() : "0"); - adY.add(dailyAdd.containsKey(dateStr) ? dailyAdd.get("addUser").toString() : "0"); + activeY.add(activeMap.containsKey(dateStr) ? activeMap.get(dateStr) : "0"); + adY.add(dailyAddMap.containsKey(dateStr) ? dailyAddMap.get(dateStr) : "0"); } vo.setUserX(getMAndD(activeDate)); @@ -3488,7 +3779,7 @@ String accessToken = ""; WxXCXTempSend util = new WxXCXTempSend(); try { - accessToken = util.getAccessToken(); + accessToken = util.getAccessToken("wx118de8a734d269f0"); } catch (Exception e) { e.printStackTrace(); } @@ -3498,15 +3789,15 @@ WxUtil.sendUuWash3(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "sU18zbyzxFldHAdOREaQCR5uq_uMvCKTmGtklO1xw-w"); break; case 4: - status = "车美已开始服务"; + status = "开始服务"; WxUtil.sendUuWash4(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "Eft5ksvsnOQANy2uNOGY43CC3pb33eDGA_lgCEoxuiw"); break; case 6: - status = "订单确认完成"; + status = "订单完成"; WxUtil.sendUuWash6(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "k1aV97H3pDNNcNcDTeZBD9jQemNDADnRE801HhTXweI"); break; case 9: - status = "订单已取消"; + status = "订单取消"; WxUtil.sendUuWash(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "9_2FhQPDxZoUqmAuIZ1L1zjjYXokdNvu7A0gzKfvruI"); break; } @@ -3534,15 +3825,15 @@ WxUtil.sendWsWash3(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "sNj6m-JBvW6rOokKGDX9X3-XH1AD0GY5_X0jA9JSLwc"); break; case 4: - status = "车美已开始服务"; + status = "开始服务"; WxUtil.sendWsWash4(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "Eft5ksvsnOQANy2uNOGY43CC3pb33eDGA_lgCEoxuiw"); break; case 6: - status = "订单确认完成"; + status = "订单完成"; WxUtil.sendWsWash6(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "iPS8yrsGDqy76hiP8bIbxkosveoX1xTFhdusSiGp-XM"); break; case 9: - status = "订单已取消"; + status = "订单取消"; WxUtil.sendWsWash(sysUserDO.getOpenid(), accessToken, status, washName, washPhone, phone, "z_ysGXz9JWBc2rXuYZzVCXKJTyLf0w0WerrohuNoEng"); break; } @@ -3552,6 +3843,27 @@ } @Override + public R getAllCommunityList() { + List<Integer> areaList = areaCodeList(); + List<AreaVOStr> areaVOList = new ArrayList<>(); + for (Integer code : areaList) { + AreaVOStr areaVO = new AreaVOStr(); + areaVO.setId(code+""); + areaVO.setName(areaCodeToName(code.longValue())); + List<StreetVOStr> streetVOS = userDao.selectStreetByAreaCodeStr(code); + Iterator<StreetVOStr> iterator = streetVOS.listIterator(); + while (iterator.hasNext()) { + StreetVOStr vo = iterator.next(); + List<CommunityVO> communityVOS = userDao.selectCommunityByStreetId(Long.parseLong(vo.getId()), 3); + vo.setChildList(communityVOS); + + } + areaVO.setChildList(streetVOS); + areaVOList.add(areaVO); + } + return R.ok(areaVOList); + } + @Override public R getCommunityList(String name, Long id) { //区级账号名 String[] streetList = {"bingcaogangjiedao", "donghuajiedao", "nongnongpingjiedao", "dadukoujiedaojiedao", "guazipingjiedao", @@ -3559,7 +3871,7 @@ "jingjiangzhen", "renhezhen", "pingdizhen", "datianzhen", "tongdezhen", "futianzhen", "qianjinzhen", "panlianzhen", "binguzhen", "baimazhen", "salianzhen", "puweizhen", "deshizhen", "wanqiuyizuxiang", "caochangzhen", "xinshanlisuzuxiang", "tongzilinzhen", "yongxingzhen", "yumenzhen", "honggezhen", "hongguoyizuxiang"}; - List<Integer> ids = userDao.selectIdsByAccount(streetList); +// List<Integer> ids = userDao.selectIdsByAccount(streetList); //村或社区账号 Integer type = isVilliage(name); //是否为市级账号 @@ -3687,6 +3999,118 @@ return R.ok(); } + /** + * 三说会堂新增业务中心或专家账号 + * */ + @Override + public R addExpertOrIndustryCenter(AdministratorsUserVO administratorsUserVO) { + SysUserDO sysUserDO=new SysUserDO(); + //是否存在相同账号 + 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(new BCryptPasswordEncoder().encode(administratorsUserVO.getPassword())); + sysUserDO.setName(administratorsUserVO.getName()); + if (nonNull(administratorsUserVO.getImageUrl())){ + sysUserDO.setImageUrl(administratorsUserVO.getImageUrl()); + } + 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)); + } + //配置权限 + sysUserRoleDAO.insert(sysUserRole); + return R.ok(); + } + return R.fail("账户名已存在"); + } + + /** + * 三说会堂后台重置密码 + * */ + @Override + public R resetPassExpertOrIndustryCenter(String account,String password) { + SysUserDO sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().eq("account", account)); + if (nonNull(sysUserDO)){ + 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 feedBackReply(SysUserFeedbackVO sysUserFeedbackVO) { + if (isNull(sysUserFeedbackVO.getReply())){ + return R.fail("回复内容不能为空"); + } + SysUserFeedbackDO sysUserFeedbackDO1 = sysUserFeedbackDAO.selectById(sysUserFeedbackVO.getId()); + sysUserFeedbackDO1.setReply(sysUserFeedbackVO.getReply()); + return R.ok(sysUserFeedbackDAO.reply(sysUserFeedbackDO1)); + } + + @Override + public R myFeedBack(Long id,Integer type,Long propertyId) { + List<SysUserFeedbackDO> sysUserFeedbackDOS = sysUserFeedbackDAO.selectList(new QueryWrapper<SysUserFeedbackDO>().lambda().eq(SysUserFeedbackDO::getType, type).eq(SysUserFeedbackDO::getUserId, id).eq(SysUserFeedbackDO::getPropertyId,propertyId )); + return R.ok(sysUserFeedbackDOS); + } + + @Override + public R propertyCheck(String phone) { + Long propertyAccount = userDao.isPropertyAccount(phone); + log.info("==============物业公司id"+propertyAccount); + if (isNull(propertyAccount)){ + return R.fail(); + } + return R.ok(propertyAccount); + } + @Override public R getAreaAndStreet() { @@ -3717,7 +4141,6 @@ } return dates; } - /** * 获取最近本月20天数据 -- Gitblit v1.7.1