From 4c80d2017a3b88b9ad55f28c3b87fd96eb67bcb2 Mon Sep 17 00:00:00 2001 From: 张天森 <1292933220@qq.com> Date: 星期四, 29 九月 2022 09:40:51 +0800 Subject: [PATCH] Merge branch 'sanshuohuitang_dev' into huacheng_test --- springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java | 177 ++++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 150 insertions(+), 27 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 81c2810..59c23cf 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 @@ -2,7 +2,6 @@ import static java.util.Objects.isNull; import static java.util.Objects.nonNull; -import static org.apache.commons.lang3.StringUtils.capitalize; import static org.apache.commons.lang3.StringUtils.isNotBlank; import java.math.BigDecimal; @@ -13,8 +12,6 @@ import javax.annotation.Resource; -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.collection.ListUtil; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUtil; @@ -23,9 +20,9 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.fasterxml.jackson.core.JsonProcessingException; -import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.panzhihua.common.model.dtos.community.microCommercialStreet.BindUserPhoneDTO; +import com.panzhihua.common.model.dtos.partybuilding.ComPbCheckUserDTO; 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; @@ -44,7 +41,6 @@ import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.CollectionUtils; import org.springframework.util.ObjectUtils; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -100,7 +96,6 @@ 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.SysUserInputDO; import com.panzhihua.service_user.model.dos.SysUserNoticeDO; import com.panzhihua.service_user.model.dos.SysUserRoleDO; import com.panzhihua.service_user.model.dtos.DataKanbanDTO; @@ -109,7 +104,6 @@ import cn.hutool.core.util.IdcardUtil; import lombok.extern.slf4j.Slf4j; -import org.springframework.web.bind.annotation.RequestParam; // import com.panzhihua.common.service.grid.GridService; @@ -207,7 +201,7 @@ * @return token */ @Override - public R updateInsertUser(String openid, String sessionKey, String unionid) { + public R updateInsertUser(String openid, String sessionKey, String unionid,String appId) { SysUserDO sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getOpenid, openid)); boolean empty = ObjectUtils.isEmpty(sysUserDO); @@ -223,6 +217,7 @@ sysUserDO1.setLastLoginTime(date); sysUserDO1.setPassword(encode); sysUserDO1.setType(1); + sysUserDO1.setAppId(appId); num = userDao.insert(sysUserDO1); } else { String encode = new BCryptPasswordEncoder().encode(UserConstants.PASSWORD); @@ -231,6 +226,7 @@ sysUserDO.setPassword(encode); sysUserDO.setLastLoginTime(date); sysUserDO.setType(1); + sysUserDO.setAppId(appId); num = userDao.updateById(sysUserDO); } if (num > 0) { @@ -475,6 +471,28 @@ } } loginUserInfoVO.setIsRealNamed(sysUserDO.getIdCard() != null); + //是否社区或街道后台 + int countSocialOrg=userDao.countSocialOrg(sysUserDO.getUserId()); + if(countSocialOrg>0){ + loginUserInfoVO.setUserType(3); + } + else { + if(loginUserInfoVO.getStreetId()!=null){ + loginUserInfoVO.setUserType(1); + loginUserInfoVO.setLevel(3); + } + 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); + } return R.ok(loginUserInfoVO); } @@ -750,10 +768,30 @@ else { if(loginUserInfoVO.getStreetId()!=null){ loginUserInfoVO.setUserType(1); + loginUserInfoVO.setLevel(3); } 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","yanbian","miyi","renhe","fantaixinqu"}; + if("zuzhibu".equals(sysUserDO.getAccount())){ + loginUserInfoVO.setBackstageType(2); + } + if(ArrayUtil.contains(account,sysUserDO.getAccount())){ + loginUserInfoVO.setBackstageType(3); + } + if(sysUserDO.getBindingCheckUnitId()!=null){ + loginUserInfoVO.setBackstageType(4); } return R.ok(loginUserInfoVO); } @@ -1216,6 +1254,7 @@ String encode = new BCryptPasswordEncoder().encode(administratorsUserVO.getPassword()); administratorsUserVO.setPassword(encode); BeanUtils.copyProperties(administratorsUserVO, sysUserDO); + sysUserDO.setAppId(administratorsUserVO.getAppid()); int insert = 0; try { insert = userDao.insert(sysUserDO); @@ -2916,7 +2955,7 @@ */ @Override public R dataKanBans(DataKanBansDto dataKanBansDto){ - IndexDataKanbanVO indexDataKanbanVO = userDao.selectIndexDataKanban(dataKanBansDto.getAreaCode()); + IndexDataKanbanVO indexDataKanbanVO = userDao.selectIndexDataKanban(dataKanBansDto.getAppId()); List<String> communityUserX = new ArrayList<>(); List<Integer> communityUserY = new ArrayList<>(); @@ -2934,9 +2973,9 @@ page.setSize(20L); } if(dataKanBansDto.getType() != null && dataKanBansDto.getType().equals(DataKanBansDto.type.by)){ - dataKanbanDTOS = userDao.selectCommunityUserOrderMonth(page, dataKanBansDto.getAreaCode()).getRecords(); + dataKanbanDTOS = userDao.selectCommunityUserOrderMonth(page, dataKanBansDto.getAppId()).getRecords(); }else{ - dataKanbanDTOS = userDao.selectCommunityUserOrder(page, dataKanBansDto.getAreaCode()).getRecords(); + dataKanbanDTOS = userDao.selectCommunityUserOrder(page, dataKanBansDto.getAppId()).getRecords(); } if (!ObjectUtils.isEmpty(dataKanbanDTOS)) { dataKanbanDTOS.forEach(dataKanbanDTO -> { @@ -2949,7 +2988,7 @@ List<Date> serverndays = com.panzhihua.common.utlis.DateUtils.getOldDays(); serverndays.forEach(date -> { // 查询社区活动数量 - DataKanbanDTO dataKanbanDTO = userDao.selectCommunityAddUserOrder(dataKanBansDto.getAreaCode(),date); + DataKanbanDTO dataKanbanDTO = userDao.selectCommunityAddUserOrder(dataKanBansDto.getAppId(),date); communityActiveUserX.add(DateFormatUtils.format(date, "MM-dd")); communityActiveUserY.add(dataKanbanDTO.getNum()); communityActiveUserZ.add(dataKanbanDTO.getDayNum()); @@ -3288,7 +3327,7 @@ } Map<String, String> headerMap=new HashMap<>(); headerMap.put("appid","10000"); - String resultJson=HttpClientUtil.get("https://api.uucsh.cn/member/wx/get-access?province="+uuLoginVO.getProvince()+"&city="+uuLoginVO.getCity()+"&area="+uuLoginVO.getArea()+"&appid=10000×tamp="+uuLoginVO.getTimestamp()+"&sign="+uuLoginVO.getSign()+"&mobile="+uuLoginVO.getMobile(),headerMap,null); + String resultJson=HttpClientUtil.get("https://api.uucsh.cn/member/wx/get-access?province="+uuLoginVO.getProvince()+"&city="+uuLoginVO.getCity()+"&area="+uuLoginVO.getArea()+"&appid=10000×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")); @@ -3305,8 +3344,8 @@ } @Override - public R newIndexData(Integer type, Long streetId,Long areaCode) { - IndexDataKanbanVO indexDataKanbanVO = userDao.selectIndexDataKanban(null); + public R newIndexData(Integer type, Long streetId,Long areaCode,String appId) { + IndexDataKanbanVO indexDataKanbanVO = userDao.selectIndexDataKanban(appId); IndexDataAnalysisVO vo=new IndexDataAnalysisVO(); if (ObjectUtils.isEmpty(type)){ //不传默认为所有区县 @@ -3387,7 +3426,7 @@ } @Override - public R userRate(Integer type, Long streetId, Long areaCode, Integer range) { + public R userRate(Integer type, Long streetId, Long areaCode, Integer range,String appId) { IndexDataAnalysisVO analysisVO=new IndexDataAnalysisVO(); if (type.equals(BYSTREET) || type.equals(BYAREA)){ //街道,区县筛选 @@ -3395,7 +3434,7 @@ BeanUtils.copyProperties(indexDataVO,analysisVO ); }else { //总量数据 - IndexDataKanbanVO indexDataKanbanVO = userDao.selectIndexDataKanban(null); + IndexDataKanbanVO indexDataKanbanVO = userDao.selectIndexDataKanban(appId); BeanUtils.copyProperties(indexDataKanbanVO,analysisVO ); } String date=""; @@ -3405,7 +3444,7 @@ date = DateUtil.parse(dateTime.toString(), "yyyy-MM-dd HH:mm:ss").toString(); } } - List<UserProportion> userProportions = userDao.userAnalysis(type, date, streetId,areaCode); + List<UserProportion> userProportions = userDao.userAnalysis(type, date, streetId,areaCode,appId); List<UserRateAnalysisVO> userRateAnalysisVOList=new ArrayList<>(); Boolean monthRange=false; if (org.apache.commons.lang3.ObjectUtils.isNotEmpty(range)){ @@ -3423,7 +3462,7 @@ } //获取本月的用户总数作为计算占比的用户总数 //IndexDataKanbanVO data = userDao.dataKanBanStreet(streetId, areaCode, date); - Integer monthUsers = userDao.getMonthUsers(streetId, areaCode, date); + Integer monthUsers = userDao.getMonthUsers(streetId, areaCode, date,appId); vo.setRate(getRate(monthUsers,userProportion.getUser())); }else{ vo.setRate(getRate(analysisVO.getAllUser(),userProportion.getUser())); @@ -3452,7 +3491,7 @@ } @Override - public R realUser(Integer type, Long streetId, Long areaCode, Integer range) { + public R realUser(Integer type, Long streetId, Long areaCode, Integer range,String appId) { IndexDataAnalysisVO analysisVO=new IndexDataAnalysisVO(); if (type.equals(BYSTREET) || type.equals(BYAREA)){ //街道,区县筛选 @@ -3460,7 +3499,7 @@ BeanUtils.copyProperties(indexDataVO,analysisVO ); }else { //总量数据 - IndexDataKanbanVO indexDataKanbanVO = userDao.selectIndexDataKanban(null); + IndexDataKanbanVO indexDataKanbanVO = userDao.selectIndexDataKanban(appId); BeanUtils.copyProperties(indexDataKanbanVO,analysisVO ); } String date=""; @@ -3471,7 +3510,7 @@ } } RealUserVO realUserVO=new RealUserVO(); - List<RealUser> realUsers = userDao.realUserCount(type, date, streetId, areaCode); + List<RealUser> realUsers = userDao.realUserCount(type, date, streetId, areaCode,appId); List<RealUserAnalysisVO> realUserList=new ArrayList<>(); realUserVO.setRealUserCount(getStreetRealUser(realUsers)); Integer rate = getRate(analysisVO.getAllUser(), realUserVO.getRealUserCount()); @@ -3516,7 +3555,7 @@ } @Override - public R userActivity(Integer type, Long streetId, Long areaCode, Integer range) { + public R userActivity(Integer type, Long streetId, Long areaCode, Integer range, String appId) { UserActivityAnalysisVO vo=new UserActivityAnalysisVO(); List<Date> activeX=getTwentyDays(); List<String> activeY=new ArrayList<>(); @@ -3529,7 +3568,7 @@ } SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); for (Date date : activeX) { - Map<String, Long> map = userDao.getDailyAddAndActive(DateUtil.parse(sdf.format(date)), streetId,areaCode); + Map<String, Long> map = userDao.getDailyAddAndActive(DateUtil.parse(sdf.format(date)), streetId,areaCode, appId); adY.add(map.get("addUser").toString()); activeY.add(map.get("activeUser").toString()); } @@ -3542,7 +3581,7 @@ @Override public R uuPush(String washPhone,String phone,String washName,Integer orderStatus) { if(StringUtils.isNotEmpty(phone)){ - SysUserDO sysUserDO=userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getPhone,phone).orderByDesc(SysUserDO::getCreateAt).last("limit 1")); + SysUserDO sysUserDO=userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getPhone,phone).eq(SysUserDO::getAppId,"wx118de8a734d269f0").orderByDesc(SysUserDO::getCreateAt).last("limit 1")); if(sysUserDO!=null&&StringUtils.isNotEmpty(sysUserDO.getOpenid())){ String status=""; String accessToken=""; @@ -3647,8 +3686,8 @@ } @Override - public R resetPassword(Integer type, String account) { - SysUserDO sysUserDO=userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getAccount,account).eq(SysUserDO::getType,type)); + public R resetPassword(Integer type, String account,String appId) { + SysUserDO sysUserDO=userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getAccount,account).eq(SysUserDO::getType,type).eq(SysUserDO::getAppId,appId)); if(sysUserDO!=null){ sysUserDO.setPassword("$2a$10$F/2lE2NMhKNHJfi5.FLmfu7jIr7ImRWgCTTeO6m3IRNR2V4sv8YR."); userDao.updateById(sysUserDO); @@ -3672,6 +3711,90 @@ return R.ok(); } + @Override + public R accept(Long userId) { + SysUserDO sysUserDO=new SysUserDO(); + sysUserDO.setUserId(userId); + sysUserDO.setIsAccept(1); + userDao.updateById(sysUserDO); + return R.ok(); + } + + @Override + @Transactional + public R addComPbCheckUser(ComPbCheckUserDTO comPbCheckUserDTO) { + SysUserDO sysUserDO=userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getAccount,comPbCheckUserDTO.getAccount()).eq(SysUserDO::getType,3).eq(SysUserDO::getAppId,"wx118de8a734d269f0")); + if(sysUserDO!=null){ + return R.fail("账户名已存在"); + } + SysUserDO sysUserDO1=new SysUserDO(); + sysUserDO1.setUserId(Snowflake.getId()); + sysUserDO1.setAccount(comPbCheckUserDTO.getAccount()); + sysUserDO1.setPassword(new BCryptPasswordEncoder().encode(comPbCheckUserDTO.getPassword())); + sysUserDO1.setType(3); + sysUserDO1.setAppId("wx118de8a734d269f0"); + sysUserDO1.setCommunityId(0L); + sysUserDO1.setBindingCheckUnitId(comPbCheckUserDTO.getCheckUnitId()); + int restlt=userDao.insert(sysUserDO1); + if(restlt>0){ + SysUserRoleDO sysUserRoleDO=new SysUserRoleDO(); + sysUserRoleDO.setRoleId(123321L); + sysUserRoleDO.setUserId(sysUserDO1.getUserId()); + sysUserRoleDAO.insert(sysUserRoleDO); + } + 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.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()); + } + userDao.insert(sysUserDO); + //分配权限 + SysUserRoleDO sysUserRole=new SysUserRoleDO(); + sysUserRole.setUserId(sysUserDO.getUserId()); + if (sysUserDO.getType().equals(11)){ + sysUserRole.setRoleId(Long.parseLong(UserConstants.SANSHUO_EXPERT_ROLE)); + }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 getAreaAndStreet() { -- Gitblit v1.7.1