From 49251095c2cc2414064270aa6c9175463c56ad20 Mon Sep 17 00:00:00 2001 From: liujie <1793218484@qq.com> Date: 星期五, 20 六月 2025 14:31:17 +0800 Subject: [PATCH] 修改bug 调整需求 --- springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/impl/SystemUserServiceImpl.java | 342 +++++++++++++++++++++++++++++++++----------------------- 1 files changed, 203 insertions(+), 139 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/impl/SystemUserServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/impl/SystemUserServiceImpl.java index b8fbc40..614dbb5 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/impl/SystemUserServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_westcommittee/src/main/java/com/panzhihua/westcommittee/service/impl/SystemUserServiceImpl.java @@ -1,29 +1,35 @@ package com.panzhihua.westcommittee.service.impl; 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.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.beust.jcommander.internal.Lists; +import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.west.SystemUserVo; +import com.panzhihua.common.utlis.PayUtil; import com.panzhihua.common.utlis.StringUtils; import com.panzhihua.westcommittee.dao.SystemUserLevelMapper; import com.panzhihua.westcommittee.dao.SystemUserMapper; -import com.panzhihua.westcommittee.model.entity.ComAct; -import com.panzhihua.westcommittee.model.entity.ComStreet; -import com.panzhihua.westcommittee.model.entity.SystemUser; +import com.panzhihua.westcommittee.model.entity.*; import com.panzhihua.westcommittee.model.vo.RegionVO; -import com.panzhihua.westcommittee.service.IComActService; -import com.panzhihua.westcommittee.service.IComStreetService; -import com.panzhihua.westcommittee.service.ISystemUserService; +import com.panzhihua.westcommittee.service.*; +import com.panzhihua.westcommittee.utils.ExcelUtil; import com.panzhihua.westcommittee.warpper.SystemUserList; import com.panzhihua.westcommittee.warpper.SystemUserListVo; import lombok.RequiredArgsConstructor; +import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; +import sun.security.util.Password; +import java.time.LocalDateTime; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Optional; @@ -35,144 +41,202 @@ @Service @RequiredArgsConstructor(onConstructor_ = {@Lazy}) public class SystemUserServiceImpl extends ServiceImpl<SystemUserMapper, SystemUser> implements ISystemUserService { - private final IComActService comActService; - private final SystemUserLevelMapper systemUserLevelMapper; - private final IComStreetService comStreetService; - /** - * 获取列表数据 - * @param query - * @return - */ - @Override - public IPage<SystemUserListVo> list(SystemUser user, SystemUserList query) { - Page page = new Page<>(); - page.setCurrent(query.getPageNum()); - page.setSize(query.getPageSize()); - IPage<SystemUserListVo> list = this.baseMapper.list(page, user, query); - return list; - } + private final IComActService comActService; + private final SystemUserLevelMapper systemUserLevelMapper; + private final IComStreetService comStreetService; + private final ExcelUtil excelUtil; + private final IDepartmentService departmentService; + private final ISystemPostService systemPostService; - /** - * 根据手机号码查询小程序用户在西区纪委的上级角色用户 - * @param phone - * @return - */ - @Override - public Optional<SystemUser> getSystemUserAdminByPhone(String phone) { - if (StringUtils.isBlank(phone)) { - return Optional.empty(); - } - return this.lambdaQuery() - .eq(SystemUser::getPhone, phone).ne(SystemUser::getStatus, 3) - .eq(SystemUser::getIsAdmin, 1).last("LIMIT 1").oneOpt(); - } + /** + * 获取列表数据 + * @param query + * @return + */ + @Override + public IPage<SystemUserListVo> list(SystemUser user, SystemUserList query) { + Page page = new Page<>(); + page.setCurrent(query.getPageNum()); + page.setSize(query.getPageSize()); + IPage<SystemUserListVo> list = this.baseMapper.list(page, user, query); + return list; + } - @Override - public Optional<SystemUser> getSystemUserByPhone(String phone) { - if (StringUtils.isBlank(phone)) { - return Optional.empty(); - } - return this.lambdaQuery() - .eq(SystemUser::getPhone, phone).ne(SystemUser::getStatus, 3).last("LIMIT 1").oneOpt(); - } + /** + * 根据手机号码查询小程序用户在西区纪委的上级角色用户 + * @param phone + * @return + */ + @Override + public Optional<SystemUser> getSystemUserAdminByPhone(String phone) { + if (StringUtils.isBlank(phone)) { + return Optional.empty(); + } + return this.lambdaQuery() + .eq(SystemUser::getPhone, phone).ne(SystemUser::getStatus, 3) + .eq(SystemUser::getIsAdmin, 1).last("LIMIT 1").oneOpt(); + } - /** - * 获取行政区划数据 - * - * @param pcode - * @return - */ - @Override - public List<RegionVO> getRegion(String pcode) { - return this.baseMapper.getRegion(pcode); - } - - - /** - * 获取街道数据 - * - * @param areaCode - * @return - */ - @Override - public List<RegionVO> getStreet(String areaCode) { - return this.baseMapper.getStreet(areaCode); - } - - - /** - * 获取社区数据 - * - * @param streetId - * @return - */ - @Override - public List<RegionVO> getCommunity(String streetId) { - return this.baseMapper.getCommunity(streetId); - } + @Override + public Optional<SystemUser> getSystemUserByPhone(String phone) { + if (StringUtils.isBlank(phone)) { + return Optional.empty(); + } + return this.lambdaQuery() + .eq(SystemUser::getPhone, phone).ne(SystemUser::getStatus, 3).last("LIMIT 1").oneOpt(); + } - /** - * 获取区县-街道-社区树 - * @return - */ - @Override - public List<RegionVO> getRegionTree(SystemUserVo loginUserInfo) { - log.info("getRegionTree入参:{}",JSONObject.toJSONString(loginUserInfo)); - SystemUser systemUser = getById(loginUserInfo.getId()); - Integer accountLevel = systemUser.getAccountLevel(); - List<RegionVO> regionTree = new ArrayList<>(); - switch (accountLevel) { - case 1: - regionTree = baseMapper.getRegion("510400"); - baseMapper.getStreet("510400"); - regionTree.forEach(district -> { - district.setTier(2); - List<RegionVO> streets = baseMapper.getStreet(district.getId()); - district.setChildren(streets); - streets.forEach(street -> { - street.setTier(3); - List<RegionVO> communities = baseMapper.getCommunity(street.getId()); - communities.forEach(e->e.setTier(4)); - street.setChildren(communities); - }); - }); - break; - case 2: - regionTree = baseMapper.getStreet(systemUser.getDistrictsCode()); - regionTree.forEach(regionVO->{ - regionVO.setTier(3); - List<RegionVO> communities = baseMapper.getCommunity(regionVO.getId()); - communities.forEach(e->e.setTier(4)); - regionVO.setChildren(communities); - }); - break; - case 3: - ComStreet street = comStreetService.getById(systemUser.getStreetId()); - RegionVO streetVO = new RegionVO(); - streetVO.setId(street.getStreetId()); - streetVO.setName(street.getName()); - streetVO.setTier(3); - List<RegionVO> communities = baseMapper.getCommunity(systemUser.getStreetId()); - communities.forEach(e->e.setTier(4)); - streetVO.setChildren(communities); - regionTree = Lists.newArrayList(streetVO); - break; - case 4: - ComAct byId = comActService.getById(systemUser.getCommunityId()); - RegionVO regionVO = new RegionVO(); - regionVO.setTier(4); - regionVO.setId(byId.getCommunityId().toString()); - regionVO.setName(byId.getName()); - regionTree = Lists.newArrayList(regionVO); - break; - } + /** + * 获取行政区划数据 + * + * @param pcode + * @return + */ + @Override + public List<RegionVO> getRegion(String pcode) { + return this.baseMapper.getRegion(pcode); + } - return regionTree; - } - @Override - public String getCreateByIdPhone(Long createBy) { - return this.baseMapper.getCreateByIdPhone(createBy); - } + /** + * 获取街道数据 + * + * @param areaCode + * @return + */ + @Override + public List<RegionVO> getStreet(String areaCode) { + return this.baseMapper.getStreet(areaCode); + } + + + /** + * 获取社区数据 + * + * @param streetId + * @return + */ + @Override + public List<RegionVO> getCommunity(String streetId) { + return this.baseMapper.getCommunity(streetId); + } + + /** + * 获取区县-街道-社区树 + * @return + */ + @Override + public List<RegionVO> getRegionTree(SystemUserVo loginUserInfo) { + log.info("getRegionTree入参:{}", JSONObject.toJSONString(loginUserInfo)); + SystemUser systemUser = getById(loginUserInfo.getId()); + Integer accountLevel = systemUser.getAccountLevel(); + List<RegionVO> regionTree = new ArrayList<>(); + switch (accountLevel) { + case 1: + regionTree = baseMapper.getRegion("510400"); + baseMapper.getStreet("510400"); + regionTree.forEach(district -> { + district.setTier(2); + List<RegionVO> streets = baseMapper.getStreet(district.getId()); + district.setChildren(streets); + streets.forEach(street -> { + street.setTier(3); + List<RegionVO> communities = baseMapper.getCommunity(street.getId()); + communities.forEach(e -> e.setTier(4)); + street.setChildren(communities); + }); + }); + break; + case 2: + regionTree = baseMapper.getStreet(systemUser.getDistrictsCode()); + regionTree.forEach(regionVO -> { + regionVO.setTier(3); + List<RegionVO> communities = baseMapper.getCommunity(regionVO.getId()); + communities.forEach(e -> e.setTier(4)); + regionVO.setChildren(communities); + }); + break; + case 3: + ComStreet street = comStreetService.getById(systemUser.getStreetId()); + RegionVO streetVO = new RegionVO(); + streetVO.setId(street.getStreetId()); + streetVO.setName(street.getName()); + streetVO.setTier(3); + List<RegionVO> communities = baseMapper.getCommunity(systemUser.getStreetId()); + communities.forEach(e -> e.setTier(4)); + streetVO.setChildren(communities); + regionTree = Lists.newArrayList(streetVO); + break; + case 4: + ComAct byId = comActService.getById(systemUser.getCommunityId()); + RegionVO regionVO = new RegionVO(); + regionVO.setTier(4); + regionVO.setId(byId.getCommunityId().toString()); + regionVO.setName(byId.getName()); + regionTree = Lists.newArrayList(regionVO); + break; + } + + return regionTree; + } + + @Override + public String getCreateByIdPhone(Long createBy) { + return this.baseMapper.getCreateByIdPhone(createBy); + } + + @SneakyThrows + @Override + public R<?> importUser(String s, MultipartFile file) { + List<List<List<String>>> upload = excelUtil.upload(s, file); + List<List<String>> lists = upload.get(0); + for (List<String> list : lists) { + String name = list.get(0); + String postName = list.get(1); + String deptName = list.get(2); + String roleId = list.get(3); + String phone = list.get(4); + String pwd = list.get(5); + + long count = this.count(new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getPhone, phone).ne(SystemUser::getStatus, 3)); + if (0 == count) { + SystemUser systemUser = new SystemUser(); + systemUser.setName(name); + systemUser.setPhone(phone); + systemUser.setPassword(PayUtil.MD5(pwd).toLowerCase()); + + try { + Department name1 = departmentService.getOne(new QueryWrapper<Department>().eq("name", deptName)); + systemUser.setOneDepartmentId(name1.getId()); + systemUser.setDistricts(name1.getDistricts()); + systemUser.setDistrictsCode(name1.getDistrictsCode()); + systemUser.setStreet(name1.getStreet()); + systemUser.setStreetId(name1.getStreetId()); + systemUser.setCommunity(name1.getCommunity()); + systemUser.setCommunityId(name1.getCommunityId()); + systemUser.setAccountLevel(name1.getTier()); + systemUser.setStatus(1); + systemUser.setSystemRoleId(Integer.valueOf(roleId)); + systemUser.setCreateTime(LocalDateTime.now()); + + SystemPost name2 = systemPostService.getOne(new QueryWrapper<SystemPost>().eq("name", postName)); + systemUser.setSystemPostId(name2.getId()); + save(systemUser); + + } catch (Exception e) { + System.out.println(deptName); + System.out.println(postName); + e.printStackTrace(); + } + } + } + + + return R.ok(); + } + + public static void main(String[] args) throws Exception { + System.out.println(PayUtil.MD5("111111").toLowerCase()); + } } -- Gitblit v1.7.1