From 74570c3c6b01ef869824030ad110e6b930fa5e08 Mon Sep 17 00:00:00 2001 From: huanghongfa <huanghongfa123456> Date: 星期日, 26 九月 2021 16:43:07 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/test_bak' into test_bak --- springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java | 268 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 259 insertions(+), 9 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 49ed606..f4adeda 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,6 +1,15 @@ package com.panzhihua.service_user.service.impl; -import java.util.*; +import static java.util.Objects.isNull; +import static java.util.Objects.nonNull; + +import java.util.ArrayList; +import java.util.Date; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; import java.util.stream.Collectors; import javax.annotation.Resource; @@ -26,19 +35,80 @@ 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.grid.*; -import com.panzhihua.common.model.dtos.user.*; -import com.panzhihua.common.model.vos.*; +import com.panzhihua.common.model.dtos.community.convenient.ConvenientMerchantDTO; +import com.panzhihua.common.model.dtos.community.convenient.DisableOrEnableConvenientMerchantDTO; +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.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.user.*; -import com.panzhihua.common.utlis.*; -import com.panzhihua.service_user.dao.*; -import com.panzhihua.service_user.model.dos.*; +import com.panzhihua.common.model.vos.user.AdministratorsUserVO; +import com.panzhihua.common.model.vos.user.ChangePasswordVO; +import com.panzhihua.common.model.vos.user.ComMngFamilyInfoVO; +import com.panzhihua.common.model.vos.user.ComMngUserTagVO; +import com.panzhihua.common.model.vos.user.CommunityUserInfoVO; +import com.panzhihua.common.model.vos.user.MenuRoleVO; +import com.panzhihua.common.model.vos.user.NoticeUnReadVO; +import com.panzhihua.common.model.vos.user.SysOperLogVO; +import com.panzhihua.common.model.vos.user.SysUserAgreementVO; +import com.panzhihua.common.model.vos.user.SysUserFeedbackVO; +import com.panzhihua.common.model.vos.user.SysUserNoticeVO; +import com.panzhihua.common.model.vos.user.SysUserVO; +import com.panzhihua.common.model.vos.user.UpdateUserArchivesVO; +import com.panzhihua.common.model.vos.user.UserArchivesVO; +import com.panzhihua.common.model.vos.user.UserPhoneVO; +import com.panzhihua.common.utlis.IdCard; +import com.panzhihua.common.utlis.SensitiveUtil; +import com.panzhihua.common.utlis.Snowflake; +import com.panzhihua.common.utlis.StringUtils; +import com.panzhihua.common.utlis.WxUtil; +import com.panzhihua.common.utlis.WxXCXTempSend; +import com.panzhihua.service_user.dao.ComMngFamilyInfoDAO; +import com.panzhihua.service_user.dao.ComMngUserTagDAO; +import com.panzhihua.service_user.dao.EventGridMemberBuildingRelationMapper; +import com.panzhihua.service_user.dao.LcCompareMemberCodeMapper; +import com.panzhihua.service_user.dao.RoleDAO; +import com.panzhihua.service_user.dao.SysMenuDAO; +import com.panzhihua.service_user.dao.SysOperLogDAO; +import com.panzhihua.service_user.dao.SysRoleMenuDAO; +import com.panzhihua.service_user.dao.SysUserAgreementDAO; +import com.panzhihua.service_user.dao.SysUserFeedbackDAO; +import com.panzhihua.service_user.dao.SysUserInputDAO; +import com.panzhihua.service_user.dao.SysUserNoticeDAO; +import com.panzhihua.service_user.dao.SysUserRoleDAO; +import com.panzhihua.service_user.dao.UserDao; +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.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; import com.panzhihua.service_user.service.EventGridMemberBuildingRelationService; import com.panzhihua.service_user.service.UserService; @@ -238,6 +308,9 @@ loginUserInfoVO.setAccount(name); loginUserInfoVO.setType(sysUserDO.getType()); loginUserInfoVO.setIsRealNamed(sysUserDO.getIdCard() != null);// 暂时 身份证判断实名制 + if(sysUserDO.getCommunityId()!=null){ + loginUserInfoVO.setCommunityId(sysUserDO.getCommunityId()); + } List<SysRoleDO> roleDOList = roleDAO.selectByUserId(sysUserDO.getUserId()); Set<String> set = new HashSet<>(); if (!ObjectUtils.isEmpty(roleDOList)) { @@ -1031,7 +1104,47 @@ sysUserRoleDO.setRoleId(roleDO.getRoleId()); int insert1 = sysUserRoleDAO.insert(sysUserRoleDO); if (insert1 > 0) { - return R.ok(); + return R.ok(userId); + } + } + return R.fail(); + } + + @Override + public R addUserBackstageProperty(AdministratorsUserVO administratorsUserVO) { + SysUserDO sysUserDO = new SysUserDO(); + Long roleId = administratorsUserVO.getRoleId(); + SysRoleDO roleDO = roleDAO.selectById(roleId); + if (ObjectUtils.isEmpty(roleDO)) { + return R.fail("角色不存在"); + } + String encode = new BCryptPasswordEncoder().encode(administratorsUserVO.getPassword()); + administratorsUserVO.setPassword(encode); + BeanUtils.copyProperties(administratorsUserVO, sysUserDO); + int insert = 0; + try { + insert = userDao.insert(sysUserDO); + } catch (Exception e) { + e.printStackTrace(); + log.error("新增后台用户报错【{}】", e.getMessage()); + if (e.getMessage().contains("union_phone_type")) { + throw new ServiceException("手机号已经存在"); + } else if (e.getMessage().contains("union_account_type")) { + throw new ServiceException("账户已经存在"); + } + + } + if (insert > 0) { + SysUserDO sysUserDO1 = userDao + .selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, administratorsUserVO.getType()) + .eq(SysUserDO::getAccount, administratorsUserVO.getAccount())); + Long userId = sysUserDO1.getUserId(); + SysUserRoleDO sysUserRoleDO = new SysUserRoleDO(); + sysUserRoleDO.setUserId(userId); + sysUserRoleDO.setRoleId(roleDO.getRoleId()); + int insert1 = sysUserRoleDAO.insert(sysUserRoleDO); + if (insert1 > 0) { + return R.ok(userId); } } return R.fail(); @@ -2422,4 +2535,141 @@ public R getUserListByCommunityId(Long communityId) { return R.ok(this.userDao.getUserListByCommunityId(communityId)); } + + /** + * 检查当前用户是否是社区工作人员 + * @param phone + * @param communityId + * @return + */ + @Override + public R checkCurrentUserIsTeam(String phone, Long communityId) { + int result = this.userDao.selectCountTeam(phone, communityId); + if (result > 0) { + return R.ok(true); + } + return R.ok(false); + } + + @Override + public R resetPassword(Long userId) { + SysUserDO sysUserDO = new SysUserDO(); + sysUserDO.setUserId(userId); + String encode = new BCryptPasswordEncoder().encode("admin123456"); + sysUserDO.setPassword(encode); + int update = userDao.updateById(sysUserDO); + if (update > 0) { + return R.ok(); + } + return R.fail(); + } + + @Override + public R resetPasswordPatch(Long[] userId) { + if(userId!=null){ + for(Long user:userId){ + SysUserDO sysUserDO = new SysUserDO(); + sysUserDO.setUserId(user); + String encode = new BCryptPasswordEncoder().encode("admin123456"); + sysUserDO.setPassword(encode); + userDao.updateById(sysUserDO); + } + } + return R.ok(); + } + + /** + * 便民服务新增商家账号 + * @param convenientMerchantDTO + * @return 商家用户id + */ + @Override + @Transactional(rollbackFor = Exception.class) + public R addConvenientMerchantUser(ConvenientMerchantDTO convenientMerchantDTO) { + SysUserDO sysUserDO = new SysUserDO(); + Long communityId = 0L; + // 新增社区高级管理员角色 + SysRoleDO sysRoleDO = new SysRoleDO(); + sysRoleDO.setCommunityId(0L); + sysRoleDO.setRoleName(convenientMerchantDTO.getName()); + sysRoleDO.setRoleKey(Constants.CONVENIENT_MERCHANT_ROLE_KEY + convenientMerchantDTO.getAccount()); + sysRoleDO.setRoleSort(0); + sysRoleDO.setCreateBy(convenientMerchantDTO.getCreatedBy()); + try { + int insert = roleDAO.insert(sysRoleDO); + if (insert != 1) { + return R.fail("网络错误"); + } + } catch (Exception e) { + log.error("新增角色报错【{}】", e.getMessage()); + if (e.getMessage().contains("unique_role_name_community_id")) { + return R.fail("商家名称已被占用"); + } else { + return R.fail("建立商家角色失败"); + } + } + // 新角色设置所有权限 + MenuRoleVO menuRoleVO = new MenuRoleVO(); + menuRoleVO.setIsAll(1); + menuRoleVO.setCommunityId(communityId); + menuRoleVO.setRoleId(sysRoleDO.getRoleId()); + this.putMenuRole(menuRoleVO); + + // sys_user 表 + String encode = new BCryptPasswordEncoder().encode(convenientMerchantDTO.getPassword()); + BeanUtils.copyProperties(convenientMerchantDTO, sysUserDO); + sysUserDO.setAccount(convenientMerchantDTO.getAccount()); + sysUserDO.setType(10); + sysUserDO.setAreaId(null); + sysUserDO.setStatus(1); + sysUserDO.setPhone(convenientMerchantDTO.getPhone()); + sysUserDO.setName(convenientMerchantDTO.getContacts()); + sysUserDO.setPassword(encode); + try { + userDao.insert(sysUserDO); + return R.ok(sysUserDO.getUserId()); + } catch (Exception e) { + e.printStackTrace(); + log.error("新增后台用户报错【{}】", e.getMessage()); + roleDAO.deleteByRoleKey(Constants.CONVENIENT_MERCHANT_ROLE_KEY + convenientMerchantDTO.getAccount()); + if (e.getMessage().contains("union_phone_type")) { + return R.fail("手机号已经存在"); + } else if (e.getMessage().contains("union_account_type")) { + return R.fail("账户已经存在"); + } + } + return R.fail("新增商户发生错误"); + } + + /** + * 修改便民服务商家绑定账号 + * @param userId 用户id + * @param account 修改账户 + * @return 修改结果 + */ +@Override +public R putUserAccount(Long userId, String account) { + SysUserDO sysUserDO = userDao.selectById(userId); + if (isNull(sysUserDO)) { + return R.fail("用户不存在"); + } + String oldAccount = sysUserDO.getAccount(); + sysUserDO.setAccount(account); + int result = userDao.updateById(sysUserDO); + if (result > 0) { + SysRoleDO sysRoleDO = roleDAO.selectOne(new QueryWrapper<SysRoleDO>() + .lambda().eq(SysRoleDO::getRoleKey, Constants.CONVENIENT_MERCHANT_ROLE_KEY + oldAccount)); + if (nonNull(sysRoleDO)) { + sysRoleDO.setRoleKey(Constants.CONVENIENT_MERCHANT_ROLE_KEY + account); + roleDAO.updateById(sysRoleDO); + } + } + return R.ok(); +} + + @Override + public R disableOrEnableMerchantUsers(DisableOrEnableConvenientMerchantDTO disableOrEnableConvenientMerchantDTO) { + userDao.disableOrEnableMerchantUsers(disableOrEnableConvenientMerchantDTO.getType(), disableOrEnableConvenientMerchantDTO.getIds()); + return R.ok(); + } } -- Gitblit v1.7.1