New file |
| | |
| | | package com.panzhihua.service_user.service.impl; |
| | | |
| | | 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.UserConstants; |
| | | import com.panzhihua.common.model.dtos.PageDTO; |
| | | import com.panzhihua.common.model.dtos.community.NoticeReadDTO; |
| | | import com.panzhihua.common.model.dtos.user.PageFeedBackDTO; |
| | | import com.panzhihua.common.model.dtos.user.PageUserAppletsBackstageDTO; |
| | | import com.panzhihua.common.model.dtos.user.SysUserFeedbackDTO; |
| | | import com.panzhihua.common.model.vos.IndexDataKanbanVO; |
| | | 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.partybuilding.ActivityManagerVO; |
| | | import com.panzhihua.common.model.vos.user.*; |
| | | import com.panzhihua.service_user.dao.*; |
| | | import com.panzhihua.service_user.model.dos.*; |
| | | import com.panzhihua.service_user.model.dtos.DataKanbanDTO; |
| | | import com.panzhihua.service_user.service.UserService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.data.redis.core.StringRedisTemplate; |
| | | import org.springframework.data.redis.core.ValueOperations; |
| | | import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.util.ObjectUtils; |
| | | import org.springframework.util.StringUtils; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * @program: springcloud_k8s_panzhihuazhihuishequ |
| | | * @description: 用户 |
| | | * @author: huang.hongfa weixin hhf9596 qq 959656820 |
| | | * @create: 2020-11-24 09:13 |
| | | **/ |
| | | @Slf4j |
| | | @Service |
| | | public class UserServiceImpl implements UserService { |
| | | @Resource |
| | | private UserDao userDao; |
| | | @Resource |
| | | private RoleDAO roleDAO; |
| | | @Resource |
| | | private ComMngUserTagDAO comMngUserTagDAO; |
| | | @Resource |
| | | private ComMngFamilyInfoDAO comMngFamilyInfoDAO; |
| | | @Resource |
| | | private StringRedisTemplate stringRedisTemplate; |
| | | @Resource |
| | | private SysUserRoleDAO sysUserRoleDAO; |
| | | @Resource |
| | | private SysOperLogDAO sysOperLogDAO; |
| | | @Resource |
| | | private SysUserAgreementDAO sysUserAgreementDAO; |
| | | @Resource |
| | | private SysUserFeedbackDAO sysUserFeedbackDAO; |
| | | @Resource |
| | | private SysUserNoticeDAO sysUserNoticeDAO; |
| | | |
| | | |
| | | /** |
| | | * 小程序微信用户信息更新 |
| | | * |
| | | * @param openid 小程序唯一ID |
| | | * @param sessionKey 会话密钥 |
| | | * @param unionid 用户在开放平台的唯一标识符 |
| | | * @return token |
| | | */ |
| | | @Override |
| | | public R updateInsertUser(String openid, String sessionKey, String unionid) { |
| | | SysUserDO sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getOpenid, openid)); |
| | | boolean empty = ObjectUtils.isEmpty(sysUserDO); |
| | | int num = 0; |
| | | if (empty) { |
| | | SysUserDO sysUserDO1 = new SysUserDO(); |
| | | Date date = new Date(); |
| | | String encode = new BCryptPasswordEncoder().encode(UserConstants.PASSWORD); |
| | | sysUserDO1.setOpenid(openid); |
| | | sysUserDO1.setUnionid(unionid); |
| | | sysUserDO1.setSessionKey(sessionKey); |
| | | sysUserDO1.setCreateAt(date); |
| | | sysUserDO1.setLastLoginTime(date); |
| | | sysUserDO1.setPassword(encode); |
| | | sysUserDO1.setType(1); |
| | | num = userDao.insert(sysUserDO1); |
| | | } else { |
| | | String encode = new BCryptPasswordEncoder().encode(UserConstants.PASSWORD); |
| | | sysUserDO.setUnionid(unionid); |
| | | sysUserDO.setSessionKey(sessionKey); |
| | | sysUserDO.setPassword(encode); |
| | | sysUserDO.setType(1); |
| | | num = userDao.updateById(sysUserDO); |
| | | } |
| | | if (num > 0) { |
| | | return R.ok(); |
| | | } else { |
| | | return R.fail("登录失败"); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 维护小程序用户基本信息 头像 昵称 性别 |
| | | * |
| | | * @param userId 数据库用户ID |
| | | * @param nickName 昵称 |
| | | * @param gender 性别 |
| | | * @param avatarUrl 头像 |
| | | * @return 维护结果 |
| | | */ |
| | | @Override |
| | | public R updateUserWeiXinInfo(Long userId, String nickName, int gender, String avatarUrl) { |
| | | SysUserDO sysUserDO = new SysUserDO(); |
| | | sysUserDO.setSex(gender); |
| | | sysUserDO.setNickName(nickName); |
| | | sysUserDO.setImageUrl(avatarUrl); |
| | | sysUserDO.setUserId(userId); |
| | | int i = userDao.updateById(sysUserDO); |
| | | if (i > 0) { |
| | | return R.ok(); |
| | | } else { |
| | | return R.fail("维护微信基本信息失败"); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 维护微信用户手机号 |
| | | * |
| | | * @param userId 数据库ID |
| | | * @param purePhoneNumber 没有区号的手机号 |
| | | * @return 维护结果 |
| | | */ |
| | | @Override |
| | | public R updateUserWeiXinPhone(Long userId, String purePhoneNumber) { |
| | | SysUserDO sysUserDO = new SysUserDO(); |
| | | sysUserDO.setPhone(purePhoneNumber); |
| | | sysUserDO.setUserId(userId); |
| | | int i = userDao.updateById(sysUserDO); |
| | | if (i > 0) { |
| | | return R.ok(); |
| | | } else { |
| | | return R.fail("维护微信手机号失败"); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 认证中心获取平台用户信息 |
| | | * |
| | | * @param name 登录账户 |
| | | * @param type 用户类型 用户类型 1 小程序 2 运营平台 3 社区平台 |
| | | * @return 用户基本信息、角色 |
| | | */ |
| | | @Override |
| | | public R<LoginUserInfoVO> getUserInfo(String name, int type) { |
| | | SysUserDO sysUserDO = null; |
| | | if (1 == type) { |
| | | sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, type).eq(SysUserDO::getOpenid, name)); |
| | | } else { |
| | | LambdaQueryWrapper<SysUserDO> wrapper = new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, type); |
| | | wrapper.and(sysUserDOLambdaQueryWrapper ->sysUserDOLambdaQueryWrapper .eq(SysUserDO::getAccount, name).or().eq(SysUserDO::getPhone, name)); |
| | | sysUserDO = userDao.selectOne(wrapper); |
| | | } |
| | | boolean empty = ObjectUtils.isEmpty(sysUserDO); |
| | | if (empty) { |
| | | return R.fail(); |
| | | } |
| | | LoginUserInfoVO loginUserInfoVO=new LoginUserInfoVO(); |
| | | loginUserInfoVO.setUserId(sysUserDO.getUserId()); |
| | | loginUserInfoVO.setName(sysUserDO.getName()); |
| | | loginUserInfoVO.setPassword(sysUserDO.getPassword()); |
| | | loginUserInfoVO.setStatus(sysUserDO.getStatus()); |
| | | loginUserInfoVO.setAccount(name); |
| | | loginUserInfoVO.setType(sysUserDO.getType()); |
| | | List<SysRoleDO> roleDOList=roleDAO.selectByUserId(sysUserDO.getUserId()); |
| | | Set<String> set=new HashSet<>(); |
| | | if (!ObjectUtils.isEmpty(roleDOList)) { |
| | | roleDOList.forEach(sysRoleDO -> { |
| | | set.add(sysRoleDO.getRoleKey()); |
| | | }); |
| | | } |
| | | return R.ok(loginUserInfoVO); |
| | | } |
| | | |
| | | /** |
| | | * 三端获取用户信息 |
| | | * |
| | | * @param userId 用户ID |
| | | * @return 用户基本信息、角色 |
| | | */ |
| | | @Override |
| | | public R<LoginUserInfoVO> getUserInfo(String userId) { |
| | | SysUserDO sysUserDO = userDao.selectById(userId); |
| | | boolean empty = ObjectUtils.isEmpty(sysUserDO); |
| | | if (empty) { |
| | | return R.fail(); |
| | | } |
| | | LoginUserInfoVO loginUserInfoVO=new LoginUserInfoVO(); |
| | | BeanUtils.copyProperties(sysUserDO,loginUserInfoVO); |
| | | List<SysRoleDO> roleDOList=roleDAO.selectByUserId(sysUserDO.getUserId()); |
| | | Set<String> set=new HashSet<>(); |
| | | if (!ObjectUtils.isEmpty(roleDOList)) { |
| | | roleDOList.forEach(sysRoleDO -> { |
| | | set.add(sysRoleDO.getRoleKey()); |
| | | }); |
| | | loginUserInfoVO.setRoles(set); |
| | | } |
| | | return R.ok(loginUserInfoVO); |
| | | } |
| | | |
| | | /** |
| | | * 修改用户登录密码 |
| | | * |
| | | * @param changePasswordVO 新密码 |
| | | * @return 修改结果 |
| | | */ |
| | | @Override |
| | | public R changePassword(ChangePasswordVO changePasswordVO) { |
| | | Long userId = changePasswordVO.getUserId(); |
| | | SysUserDO sysUserDO1 = userDao.selectById(userId); |
| | | String oldPassoword = sysUserDO1.getPassword(); |
| | | String newPassword = changePasswordVO.getNewPassword(); |
| | | if (oldPassoword.equals(newPassword)) { |
| | | return R.fail("新老密码不能相同"); |
| | | } |
| | | oldPassoword = new BCryptPasswordEncoder().encode(oldPassoword); |
| | | BCryptPasswordEncoder encoder = new BCryptPasswordEncoder(); |
| | | if( !encoder.matches(oldPassoword,newPassword)){ |
| | | return R.fail("老密码错误"); |
| | | |
| | | } |
| | | SysUserDO sysUserDO=new SysUserDO(); |
| | | sysUserDO.setUserId(userId); |
| | | String encode = new BCryptPasswordEncoder().encode(newPassword); |
| | | sysUserDO.setPassword(encode); |
| | | int update = userDao.updateById(sysUserDO); |
| | | if (update>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 某社区后台人员查询 |
| | | * |
| | | * @param param 名字 |
| | | * @param communityId 社区id |
| | | * @return 人员集合 |
| | | */ |
| | | @Override |
| | | public R listActivityManager(String param, Long communityId) { |
| | | LambdaQueryWrapper<SysUserDO> queryWrapper=new LambdaQueryWrapper<>(); |
| | | List<ActivityManagerVO> activityManagerVOS=new ArrayList<>(); |
| | | queryWrapper = new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getCommunityId, communityId).eq(SysUserDO::getStatus, 1).eq(SysUserDO::getType,3); |
| | | if (!ObjectUtils.isEmpty(param)) { |
| | | queryWrapper = queryWrapper.eq(SysUserDO::getName, param); |
| | | } |
| | | List<SysUserDO> sysUserDOS = userDao.selectList(queryWrapper); |
| | | if (!ObjectUtils.isEmpty(sysUserDOS)) { |
| | | sysUserDOS.forEach(sysUserDO -> { |
| | | ActivityManagerVO activityManagerVO=new ActivityManagerVO(); |
| | | activityManagerVO.setManagerId(sysUserDO.getUserId()); |
| | | activityManagerVO.setName(sysUserDO.getName()); |
| | | activityManagerVOS.add(activityManagerVO); |
| | | }); |
| | | } |
| | | return R.ok(activityManagerVOS); |
| | | } |
| | | |
| | | /** |
| | | * 分页查询人脸识别 |
| | | * |
| | | * @param loginUserInfoVO 查询参数 |
| | | * @return 分页集合 |
| | | */ |
| | | @Override |
| | | public R pageUserFace(LoginUserInfoVO loginUserInfoVO) { |
| | | Page page = new Page<>(); |
| | | Long pageNum = loginUserInfoVO.getPageNum(); |
| | | Long pageSize = loginUserInfoVO.getPageSize(); |
| | | if (null==pageNum||0==pageNum) { |
| | | pageNum = 1l; |
| | | } |
| | | if (null==pageSize||0==pageSize) { |
| | | pageSize = 10l; |
| | | } |
| | | page.setSize(pageSize); |
| | | page.setCurrent(pageNum); |
| | | IPage<LoginUserInfoVO> iPage = userDao.pageUserFace(page, loginUserInfoVO); |
| | | return R.ok(iPage); |
| | | } |
| | | |
| | | /** |
| | | * 编辑人脸采集数据通过、驳回、删除 |
| | | * |
| | | * @param loginUserInfoVO 操作信息 |
| | | * @return 操作结果 |
| | | */ |
| | | @Override |
| | | public R putUserFace(LoginUserInfoVO loginUserInfoVO) { |
| | | int operationType = loginUserInfoVO.getOperationType().intValue(); |
| | | Long userId = loginUserInfoVO.getUserId(); |
| | | SysUserDO sysUserDO=new SysUserDO(); |
| | | sysUserDO.setUserId(userId); |
| | | switch (operationType){ |
| | | case 1: |
| | | sysUserDO.setFaceState(1); |
| | | break; |
| | | case 2: |
| | | sysUserDO.setFaceState(3); |
| | | break; |
| | | case 3: |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | int num=0; |
| | | if (operationType==3) { |
| | | num=userDao.deleteById(userId); |
| | | } else { |
| | | num=userDao.updateById(sysUserDO); |
| | | } |
| | | if (num>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 分页查询人口管理 |
| | | * |
| | | * @param loginUserInfoVO 查询参数 |
| | | * @return 分页数据 |
| | | */ |
| | | @Override |
| | | public R pageUser(LoginUserInfoVO loginUserInfoVO) { |
| | | Page page = new Page<>(); |
| | | Long pageNum = loginUserInfoVO.getPageNum(); |
| | | Long pageSize = loginUserInfoVO.getPageSize(); |
| | | if (null==pageNum||0==pageNum) { |
| | | pageNum = 1l; |
| | | } |
| | | if (null==pageSize||0==pageSize) { |
| | | pageSize = 10l; |
| | | } |
| | | page.setSize(pageSize); |
| | | page.setCurrent(pageNum); |
| | | IPage<LoginUserInfoVO> iPage = userDao.pageUser(page, loginUserInfoVO); |
| | | return R.ok(iPage); |
| | | } |
| | | |
| | | /** |
| | | * 查询所有人员标签 |
| | | * |
| | | * @return 标签集合 |
| | | */ |
| | | @Override |
| | | public R listTag() { |
| | | List<String> list=new ArrayList<>(); |
| | | List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO.selectList(null); |
| | | if (!ObjectUtils.isEmpty(comMngUserTagDOS)) { |
| | | list=comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName()).collect(Collectors.toList()); |
| | | } |
| | | return R.ok(list); |
| | | } |
| | | |
| | | /** |
| | | * 人员详情 |
| | | * |
| | | * @param userId 用户id |
| | | * @return 人员详情 |
| | | */ |
| | | @Override |
| | | public R detailUser(Long userId) { |
| | | SysUserDO sysUserDO = userDao.selectById(userId); |
| | | if (ObjectUtils.isEmpty(sysUserDO)) { |
| | | return R.fail("人员不存在"); |
| | | } |
| | | LoginUserInfoVO loginUserInfoVO=new LoginUserInfoVO(); |
| | | BeanUtils.copyProperties(sysUserDO,loginUserInfoVO); |
| | | List<ComMngFamilyInfoDO> comMngFamilyInfoDOS = comMngFamilyInfoDAO.selectList(new QueryWrapper<ComMngFamilyInfoDO>().lambda().eq(ComMngFamilyInfoDO::getUserId, userId)); |
| | | if (!ObjectUtils.isEmpty(comMngFamilyInfoDOS)) { |
| | | List<ComMngFamilyInfoVO>comMngFamilyInfoVOS=new ArrayList<>(); |
| | | comMngFamilyInfoDOS.forEach(comMngFamilyInfoDO -> { |
| | | ComMngFamilyInfoVO comMngFamilyInfoVO=new ComMngFamilyInfoVO(); |
| | | BeanUtils.copyProperties(comMngFamilyInfoDO,comMngFamilyInfoVO); |
| | | comMngFamilyInfoVOS.add(comMngFamilyInfoVO); |
| | | }); |
| | | loginUserInfoVO.setComMngFamilyInfoVOS(comMngFamilyInfoVOS); |
| | | } |
| | | return R.ok(loginUserInfoVO); |
| | | } |
| | | |
| | | /** |
| | | * 设置用户标签 |
| | | * |
| | | * @param loginUserInfoVO 标签信息 |
| | | * @return 设置结果 |
| | | */ |
| | | @Override |
| | | public R putUserTag(LoginUserInfoVO loginUserInfoVO) { |
| | | SysUserDO sysUserDO=new SysUserDO(); |
| | | sysUserDO.setUserId(loginUserInfoVO.getUserId()); |
| | | sysUserDO.setTags(loginUserInfoVO.getTags()); |
| | | int update = userDao.updateById(sysUserDO); |
| | | if (update>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 修改用户志愿者状态 |
| | | * |
| | | * @param phone 志愿者手机号 |
| | | * @param type |
| | | */ |
| | | @Override |
| | | public R putUserIsVolunteer(String phone, int type) { |
| | | SysUserDO sysUserDO=new SysUserDO(); |
| | | sysUserDO.setIsVolunteer(type); |
| | | int update = userDao.update(sysUserDO, new UpdateWrapper<SysUserDO>().lambda().eq(SysUserDO::getPhone, phone)); |
| | | if (update>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 用户绑定社区、小区 |
| | | * |
| | | * @param loginUserInfoVO 社区小区数据 |
| | | * @return 绑定结果 |
| | | */ |
| | | @Override |
| | | public R putUserCommunityArea(LoginUserInfoVO loginUserInfoVO) { |
| | | SysUserDO sysUserDO=new SysUserDO(); |
| | | sysUserDO.setCommunityId(loginUserInfoVO.getCommunityId()); |
| | | sysUserDO.setAreaId(loginUserInfoVO.getAreaId()); |
| | | sysUserDO.setUserId(loginUserInfoVO.getUserId()); |
| | | int update = userDao.updateById(sysUserDO); |
| | | if (update>0) { |
| | | //删除用户信息缓存 |
| | | String userKey = UserConstants.LOGIN_USER_INFO + loginUserInfoVO.getUserId(); |
| | | stringRedisTemplate.delete(userKey); |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 用户实名认证 |
| | | * |
| | | * @param loginUserInfoVO 认证数据 |
| | | * @return 认证结果 |
| | | */ |
| | | @Override |
| | | public R putUserAuthentication(LoginUserInfoVO loginUserInfoVO) { |
| | | SysUserDO sysUserDO=new SysUserDO(); |
| | | sysUserDO.setName(loginUserInfoVO.getName()); |
| | | sysUserDO.setIdCard(loginUserInfoVO.getIdCard()); |
| | | sysUserDO.setSex(loginUserInfoVO.getSex()); |
| | | sysUserDO.setBirthday(loginUserInfoVO.getBirthday()); |
| | | sysUserDO.setJob(loginUserInfoVO.getJob()); |
| | | sysUserDO.setUserId(loginUserInfoVO.getUserId()); |
| | | sysUserDO.setFaceUrl(loginUserInfoVO.getFaceUrl()); |
| | | sysUserDO.setFaceState(0); |
| | | SysUserDO sysUserDO1 = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getIdCard, loginUserInfoVO.getIdCard())); |
| | | if (!ObjectUtils.isEmpty(sysUserDO1)) { |
| | | return R.fail("身份证已经存在"); |
| | | } |
| | | int update = userDao.updateById(sysUserDO); |
| | | if (update>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 修改用户手机号 |
| | | * |
| | | * @param userPhoneVO 手机号信息 |
| | | * @return 修改结果 |
| | | */ |
| | | @Override |
| | | public R putUserphone(UserPhoneVO userPhoneVO) { |
| | | String oldPhone = userPhoneVO.getOldPhone(); |
| | | String newPhone = userPhoneVO.getNewPhone(); |
| | | String smsCode = userPhoneVO.getSmsCode(); |
| | | if (oldPhone.equals(newPhone)) { |
| | | return R.fail("新旧手机号不能重复"); |
| | | } |
| | | String key = UserConstants.PHONE_PUT + newPhone; |
| | | Boolean hasKey = stringRedisTemplate.hasKey(key); |
| | | if (!hasKey) { |
| | | return R.fail("重新发送验证码"); |
| | | } |
| | | SysUserDO sysUserDO1 = userDao.selectById(userPhoneVO.getUserId()); |
| | | String phone = sysUserDO1.getPhone(); |
| | | if (!StringUtils.isEmpty(phone)&& !phone.equals(oldPhone)) { |
| | | return R.fail("旧手机号错误"); |
| | | } |
| | | ValueOperations<String, String> valueOperations = stringRedisTemplate.opsForValue(); |
| | | String code = valueOperations.get(key); |
| | | if (!code.equals(smsCode)) { |
| | | return R.fail("验证码错误"); |
| | | } |
| | | SysUserDO sysUserDO=new SysUserDO(); |
| | | sysUserDO.setUserId(userPhoneVO.getUserId()); |
| | | sysUserDO.setPhone(newPhone); |
| | | int update = userDao.updateById(sysUserDO); |
| | | if (update>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 修改用户信息 |
| | | * |
| | | * @param loginUserInfoVO 修改内容 |
| | | * @return 修改结果 |
| | | */ |
| | | @Override |
| | | public R putUser(LoginUserInfoVO loginUserInfoVO) { |
| | | Integer faceState = loginUserInfoVO.getFaceState(); |
| | | if (null==faceState||0==faceState) { |
| | | loginUserInfoVO.setFaceState(null); |
| | | } |
| | | Integer isPartymember = loginUserInfoVO.getIsPartymember(); |
| | | if (null==isPartymember||0==isPartymember) { |
| | | loginUserInfoVO.setIsPartymember(null); |
| | | } |
| | | Integer isVolunteer = loginUserInfoVO.getIsVolunteer(); |
| | | if (null==isVolunteer||0==isVolunteer) { |
| | | loginUserInfoVO.setIsVolunteer(null); |
| | | } |
| | | Integer operationType = loginUserInfoVO.getOperationType(); |
| | | if (null==operationType||0==operationType) { |
| | | loginUserInfoVO.setOperationType(null); |
| | | } |
| | | Integer sex = loginUserInfoVO.getSex(); |
| | | if (null==sex||0==sex) { |
| | | loginUserInfoVO.setSex(null); |
| | | } |
| | | Integer status = loginUserInfoVO.getStatus(); |
| | | if (null==status||0==status) { |
| | | loginUserInfoVO.setStatus(null); |
| | | } |
| | | Integer type = loginUserInfoVO.getType(); |
| | | if (null==type||0==type) { |
| | | loginUserInfoVO.setType(null); |
| | | } |
| | | Long communityId = loginUserInfoVO.getCommunityId(); |
| | | if (null==communityId||0==communityId) { |
| | | loginUserInfoVO.setCommunityId(null); |
| | | } |
| | | SysUserDO sysUserDO=new SysUserDO(); |
| | | BeanUtils.copyProperties(loginUserInfoVO,sysUserDO); |
| | | int update = userDao.updateById(sysUserDO); |
| | | if (update>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 家庭成员列表 |
| | | * |
| | | * @param userId 登录用户 |
| | | * @return 成员集合 |
| | | */ |
| | | @Override |
| | | public R listFamily(Long userId) { |
| | | List<ComMngFamilyInfoVO>comMngFamilyInfoVOS=new ArrayList<>(); |
| | | List<ComMngFamilyInfoDO> comMngFamilyInfoDOS = comMngFamilyInfoDAO.selectList(new QueryWrapper<ComMngFamilyInfoDO>().lambda().eq(ComMngFamilyInfoDO::getUserId, userId)); |
| | | if (!ObjectUtils.isEmpty(comMngFamilyInfoDOS)) { |
| | | comMngFamilyInfoDOS.forEach(comMngFamilyInfoDO -> { |
| | | ComMngFamilyInfoVO comMngFamilyInfoVO=new ComMngFamilyInfoVO(); |
| | | BeanUtils.copyProperties(comMngFamilyInfoDO,comMngFamilyInfoVO); |
| | | comMngFamilyInfoVOS.add(comMngFamilyInfoVO); |
| | | }); |
| | | } |
| | | return R.ok(comMngFamilyInfoVOS); |
| | | } |
| | | |
| | | /** |
| | | * 新增家庭成员 |
| | | * |
| | | * @param comMngFamilyInfoVO 家庭成员基本信息 |
| | | * @return 增加结果 |
| | | */ |
| | | @Override |
| | | public R addFamily(ComMngFamilyInfoVO comMngFamilyInfoVO) { |
| | | ComMngFamilyInfoDO comMngFamilyInfoDO=new ComMngFamilyInfoDO(); |
| | | BeanUtils.copyProperties(comMngFamilyInfoVO,comMngFamilyInfoDO); |
| | | ComMngFamilyInfoDO comMngFamilyInfoDO1 = comMngFamilyInfoDAO.selectOne(new QueryWrapper<ComMngFamilyInfoDO>().lambda().eq(ComMngFamilyInfoDO::getIdCard, comMngFamilyInfoVO.getIdCard()).eq(ComMngFamilyInfoDO::getUserId, comMngFamilyInfoVO.getUserId())); |
| | | if (!ObjectUtils.isEmpty(comMngFamilyInfoDO1)) { |
| | | return R.fail("家庭成员已经存在"); |
| | | } |
| | | int insert = comMngFamilyInfoDAO.insert(comMngFamilyInfoDO); |
| | | if (insert>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 编辑家庭成员 |
| | | * |
| | | * @param comMngFamilyInfoVO 家庭成员信息 |
| | | * @return 编辑结果 |
| | | */ |
| | | @Override |
| | | public R putFamily(ComMngFamilyInfoVO comMngFamilyInfoVO) { |
| | | ComMngFamilyInfoDO comMngFamilyInfoDO=new ComMngFamilyInfoDO(); |
| | | BeanUtils.copyProperties(comMngFamilyInfoVO,comMngFamilyInfoDO); |
| | | int update = comMngFamilyInfoDAO.updateById(comMngFamilyInfoDO); |
| | | if (update>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 新增运营后台账户 |
| | | * |
| | | * @param administratorsUserVO 账户信息 |
| | | * @return 新增结果 |
| | | */ |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R addUserBackstage(AdministratorsUserVO administratorsUserVO) { |
| | | SysUserDO sysUserDO=new SysUserDO(); |
| | | SysRoleDO roleDO = roleDAO.selectById(administratorsUserVO.getRoleId()); |
| | | 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")) { |
| | | return R.fail("手机号已经存在"); |
| | | } |
| | | } |
| | | if (insert>0) { |
| | | SysUserDO sysUserDO1 = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getType, administratorsUserVO.getType()).eq(SysUserDO::getPhone, administratorsUserVO.getPhone())); |
| | | 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(); |
| | | } |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 编辑运营后台账户 |
| | | * |
| | | * @param administratorsUserVO 编辑账户内容 |
| | | * @return 编辑结果 |
| | | */ |
| | | @Override |
| | | public R putUserBackstage(AdministratorsUserVO administratorsUserVO) { |
| | | SysUserDO sysUserDO=new SysUserDO(); |
| | | Long roleId = administratorsUserVO.getRoleId(); |
| | | SysRoleDO roleDO=null; |
| | | if (null!=roleId&&0!=roleId) { |
| | | roleDO = roleDAO.selectById(roleId); |
| | | if (ObjectUtils.isEmpty(roleDO)) { |
| | | return R.fail("角色不存在"); |
| | | } |
| | | } |
| | | String password = administratorsUserVO.getPassword(); |
| | | if (!ObjectUtils.isEmpty(password)) { |
| | | String encode = new BCryptPasswordEncoder().encode(password); |
| | | administratorsUserVO.setPassword(encode); |
| | | } |
| | | BeanUtils.copyProperties(administratorsUserVO,sysUserDO); |
| | | int update=0; |
| | | try { |
| | | update = userDao.updateById(sysUserDO); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | log.error("编辑后台用户出错【{}】",e.getMessage()); |
| | | if (e.getMessage().contains("union_phone_type")) { |
| | | return R.fail("手机号已经存在"); |
| | | } |
| | | } |
| | | if (update>0&&null!=roleDO) { |
| | | SysUserRoleDO sysUserRoleDO=new SysUserRoleDO(); |
| | | sysUserRoleDO.setRoleId(roleDO.getRoleId()); |
| | | int update1 = sysUserRoleDAO.update(sysUserRoleDO,new UpdateWrapper<SysUserRoleDO>().lambda().eq(SysUserRoleDO::getUserId,administratorsUserVO.getUserId())); |
| | | if (update1>0) { |
| | | return R.ok(); |
| | | }else{ |
| | | sysUserRoleDO.setUserId(administratorsUserVO.getUserId()); |
| | | sysUserRoleDAO.insert(sysUserRoleDO); |
| | | } |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | | * 删除后台用户 |
| | | * |
| | | * @param administratorsUserVO 用户主键 |
| | | * @return 删除结果 |
| | | */ |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R deleteUserBackstage(AdministratorsUserVO administratorsUserVO) { |
| | | Long userId = administratorsUserVO.getUserId(); |
| | | SysUserDO sysUserDO = userDao.selectById(userId); |
| | | if (ObjectUtils.isEmpty(sysUserDO)) { |
| | | return R.fail("用户不存在"); |
| | | } |
| | | Long communityId = sysUserDO.getCommunityId(); |
| | | Long communityId1 = administratorsUserVO.getCommunityId(); |
| | | if (communityId1.intValue()!=communityId.intValue()) { |
| | | return R.fail("用户不属于当前平台"); |
| | | } |
| | | //删除用户 |
| | | int delete = userDao.deleteById(userId); |
| | | //删除用户角色关系 |
| | | if (delete>0) { |
| | | int delete1 = sysUserRoleDAO.delete(new QueryWrapper<SysUserRoleDO>().lambda().eq(SysUserRoleDO::getUserId, userId)); |
| | | if (delete1==0) { |
| | | return R.fail("用户没有角色关系"); |
| | | } |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | | * 分页查询后台用户 |
| | | * |
| | | * @param administratorsUserVO 查询参数 |
| | | * @return 后台用户 |
| | | */ |
| | | @Override |
| | | public R pageUserBackstage(AdministratorsUserVO administratorsUserVO) { |
| | | Page page = new Page<>(); |
| | | Long pageNum = administratorsUserVO.getPageNum(); |
| | | Long pageSize = administratorsUserVO.getPageSize(); |
| | | if (null==pageNum||pageNum==0) { |
| | | pageNum = 1l; |
| | | } |
| | | if (null==pageSize||pageSize==0) { |
| | | pageSize = 10l; |
| | | } |
| | | page.setSize(pageSize); |
| | | page.setCurrent(pageNum); |
| | | IPage<AdministratorsUserVO> iPage = userDao.pageUserBackstage(page, administratorsUserVO); |
| | | return R.ok(iPage); |
| | | } |
| | | |
| | | /** |
| | | * 保存操作日志 |
| | | * |
| | | * @param operlog 日志内容 |
| | | * @return 保存结果 |
| | | */ |
| | | @Override |
| | | public R addOperLog(SysOperLogVO operlog) { |
| | | SysOperLogDO sysOperLogDO=new SysOperLogDO(); |
| | | BeanUtils.copyProperties(operlog,sysOperLogDO); |
| | | int insert = sysOperLogDAO.insert(sysOperLogDO); |
| | | if (insert>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 分页展示操作日志 |
| | | * |
| | | * @param sysOperLogVO 分页参数 |
| | | * @return 分页集合 |
| | | */ |
| | | @Override |
| | | public R pageOperLog(SysOperLogVO sysOperLogVO) { |
| | | Page page = new Page<>(); |
| | | Long pageNum = sysOperLogVO.getPageNum(); |
| | | Long pageSize = sysOperLogVO.getPageSize(); |
| | | if (null==pageNum||pageNum==0) { |
| | | pageNum = 1l; |
| | | } |
| | | if (null==pageSize||pageSize==0) { |
| | | pageSize = 10l; |
| | | } |
| | | page.setSize(pageSize); |
| | | page.setCurrent(pageNum); |
| | | IPage<SysOperLogVO> iPage = sysOperLogDAO.pageOperLog(page, sysOperLogVO); |
| | | return R.ok(iPage); |
| | | } |
| | | |
| | | /** |
| | | * 用户协议 |
| | | * |
| | | * @return 协议集合 |
| | | */ |
| | | @Override |
| | | public R listAgreement() { |
| | | List<SysUserAgreementDO> sysUserAgreementDOS = sysUserAgreementDAO.selectList(null); |
| | | if (ObjectUtils.isEmpty(sysUserAgreementDOS)) { |
| | | return R.fail(); |
| | | } |
| | | List<SysUserAgreementVO> sysUserAgreementVOS=new ArrayList<>(); |
| | | sysUserAgreementDOS.forEach(sysUserAgreementDO -> { |
| | | SysUserAgreementVO sysUserAgreementVO=new SysUserAgreementVO(); |
| | | BeanUtils.copyProperties(sysUserAgreementDO,sysUserAgreementVO); |
| | | sysUserAgreementVOS.add(sysUserAgreementVO); |
| | | }); |
| | | return R.ok(sysUserAgreementVOS); |
| | | } |
| | | |
| | | /** |
| | | * 编辑用户协议 |
| | | * |
| | | * @param sysUserAgreementVO 编辑内容 |
| | | * @return 编辑结果 |
| | | */ |
| | | @Override |
| | | public R putAgreement(SysUserAgreementVO sysUserAgreementVO) { |
| | | SysUserAgreementDO sysUserAgreementDO=new SysUserAgreementDO(); |
| | | BeanUtils.copyProperties(sysUserAgreementVO,sysUserAgreementDO); |
| | | int update = sysUserAgreementDAO.updateById(sysUserAgreementDO); |
| | | if (update==0) { |
| | | return R.fail("协议不存在"); |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | | * 用户标签 |
| | | * |
| | | * @param communityId 社区id |
| | | * @return 标签集合 |
| | | */ |
| | | @Override |
| | | public R listComMngUserTag(Long communityId) { |
| | | List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO.selectList(new QueryWrapper<ComMngUserTagDO>().lambda().eq(ComMngUserTagDO::getCommunityId, communityId)); |
| | | if (ObjectUtils.isEmpty(comMngUserTagDOS)) { |
| | | return R.fail(); |
| | | } |
| | | List<ComMngUserTagVO> comMngUserTagVOList=new ArrayList<>(); |
| | | comMngUserTagDOS.forEach(comMngUserTagDO -> { |
| | | ComMngUserTagVO comMngUserTagVO=new ComMngUserTagVO(); |
| | | BeanUtils.copyProperties(comMngUserTagDO,comMngUserTagVO); |
| | | comMngUserTagVOList.add(comMngUserTagVO); |
| | | }); |
| | | return R.ok(comMngUserTagVOList); |
| | | } |
| | | |
| | | /** |
| | | * 新增删除用户标签 |
| | | * |
| | | * @param systemmanagementConfigVO 操作内容 |
| | | * @return 操作结果 |
| | | */ |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R putComMngUserTag(SystemmanagementConfigVO systemmanagementConfigVO) { |
| | | Long communityId = systemmanagementConfigVO.getCommunityId(); |
| | | List<ComMngUserTagVO> comMngUserTagVOList = systemmanagementConfigVO.getComMngUserTagVOList(); |
| | | if (!ObjectUtils.isEmpty(comMngUserTagVOList)) { |
| | | comMngUserTagDAO.delete(null); |
| | | comMngUserTagVOList.forEach(comMngUserTagVO -> { |
| | | ComMngUserTagDO comMngUserTagDO=new ComMngUserTagDO(); |
| | | comMngUserTagDO.setCommunityId(communityId); |
| | | comMngUserTagDO.setTagName(comMngUserTagVO.getTagName()); |
| | | comMngUserTagDAO.insert(comMngUserTagDO); |
| | | }); |
| | | return R.ok(); |
| | | }else { |
| | | return R.fail("用户标签不能为空"); |
| | | } |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 分页查询小程序用户 |
| | | * |
| | | * @param pageUserAppletsBackstageDTO 查询参数 |
| | | * @return 分页集合 |
| | | */ |
| | | @Override |
| | | public R pageUserAppletsBackstage(PageUserAppletsBackstageDTO pageUserAppletsBackstageDTO) { |
| | | Page page = new Page<>(); |
| | | Long pageNum = pageUserAppletsBackstageDTO.getPageNum(); |
| | | Long pageSize = pageUserAppletsBackstageDTO.getPageSize(); |
| | | page.setSize(pageSize); |
| | | page.setCurrent(pageNum); |
| | | IPage<SysUserVO> iPage = userDao.pageUserAppletsBackstage(page, pageUserAppletsBackstageDTO); |
| | | return R.ok(iPage); |
| | | } |
| | | |
| | | /** |
| | | * 编辑用户状态 |
| | | * |
| | | * @param pageUserAppletsBackstageDTO 启用或者禁用 1 启用 2 禁用 |
| | | * @return 编辑结果 |
| | | */ |
| | | @Override |
| | | public R putUserAppletsBackstage(PageUserAppletsBackstageDTO pageUserAppletsBackstageDTO) { |
| | | Long userId = pageUserAppletsBackstageDTO.getUserId(); |
| | | Integer status = pageUserAppletsBackstageDTO.getStatus(); |
| | | SysUserDO sysUserDO=new SysUserDO(); |
| | | sysUserDO.setUserId(userId); |
| | | sysUserDO.setStatus(status); |
| | | int update = userDao.updateById(sysUserDO); |
| | | if (update>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail("用户不存在"); |
| | | } |
| | | |
| | | /** |
| | | * 调试接口--清除昵称、社区、小区 |
| | | * |
| | | * @param userId 登录用户id |
| | | * @return 清除结果 |
| | | */ |
| | | @Override |
| | | public R deleteUserTest(Long userId) { |
| | | int num=userDao.deleteUserTest(userId); |
| | | if (num>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail("清除失败"); |
| | | } |
| | | |
| | | /** |
| | | * 用户协议和隐私政策 |
| | | * |
| | | * @param type 所属app 1居民端app 2网格员端app 3商家端app |
| | | * @return 协议内容 |
| | | */ |
| | | @Override |
| | | public R userAgreement(int type) { |
| | | SysUserAgreementDO sysUserAgreementDO = sysUserAgreementDAO.selectOne(new QueryWrapper<SysUserAgreementDO>().lambda().eq(SysUserAgreementDO::getType, type)); |
| | | return R.ok(sysUserAgreementDO); |
| | | } |
| | | |
| | | /** |
| | | * 意见反馈 |
| | | * |
| | | * @param sysUserFeedbackDTO 反馈内容 |
| | | * @return 反馈结果 |
| | | */ |
| | | @Override |
| | | public R addFeedback(SysUserFeedbackDTO sysUserFeedbackDTO) { |
| | | SysUserFeedbackDO sysUserFeedbackDO=new SysUserFeedbackDO(); |
| | | BeanUtils.copyProperties(sysUserFeedbackDTO,sysUserFeedbackDO); |
| | | int insert = sysUserFeedbackDAO.insert(sysUserFeedbackDO); |
| | | if (insert>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail(); |
| | | } |
| | | |
| | | /** |
| | | * 分页通知列表 |
| | | * |
| | | * @param pageDTO 分页参数 |
| | | * @return 分页结果 |
| | | */ |
| | | @Override |
| | | public R pageNotice(PageDTO pageDTO) { |
| | | Long userId=pageDTO.getUserId(); |
| | | Integer type = pageDTO.getType(); |
| | | int integer =0; |
| | | if (null!=type&&type.intValue()>0) { |
| | | integer=sysUserNoticeDAO.selectCount(new QueryWrapper<SysUserNoticeDO>().lambda().eq(SysUserNoticeDO::getUserId, userId).eq(SysUserNoticeDO::getStatus, 0).eq(SysUserNoticeDO::getType,type)); |
| | | }else{ |
| | | integer=sysUserNoticeDAO.selectCount(new QueryWrapper<SysUserNoticeDO>().lambda().eq(SysUserNoticeDO::getUserId, userId).eq(SysUserNoticeDO::getStatus, 0)); |
| | | } |
| | | Page page = new Page<>(); |
| | | Long pageNum = pageDTO.getPageNum(); |
| | | Long pageSize = pageDTO.getPageSize(); |
| | | page.setSize(pageSize); |
| | | page.setCurrent(pageNum); |
| | | IPage<SysUserNoticeVO> iPage = userDao.pageNotice(page, pageDTO); |
| | | Map<String,Object> map=new HashMap<>(2); |
| | | map.put("page",iPage); |
| | | map.put("unreadNum",integer); |
| | | return R.ok(map); |
| | | } |
| | | |
| | | /** |
| | | * 通知已读 |
| | | * |
| | | * @param noticeReadDTO 通知已读 |
| | | * @return 修改状态 |
| | | */ |
| | | @Override |
| | | public R putNotice(NoticeReadDTO noticeReadDTO) { |
| | | Integer all = noticeReadDTO.getAll(); |
| | | Long userId = noticeReadDTO.getUserId(); |
| | | int num=0; |
| | | SysUserNoticeDO sysUserNoticeDO=new SysUserNoticeDO(); |
| | | if (null!=all&&1==all.intValue()) { |
| | | sysUserNoticeDO.setStatus(1); |
| | | num=sysUserNoticeDAO.update(sysUserNoticeDO,new UpdateWrapper<SysUserNoticeDO>().lambda().eq(SysUserNoticeDO::getUserId,userId).eq(SysUserNoticeDO::getStatus,0)); |
| | | }else{ |
| | | sysUserNoticeDO.setId(noticeReadDTO.getId()); |
| | | sysUserNoticeDO.setStatus(1); |
| | | num=sysUserNoticeDAO.updateById(sysUserNoticeDO); |
| | | } |
| | | if (num>0) { |
| | | return R.ok(); |
| | | } |
| | | return R.fail("通知不存在"); |
| | | } |
| | | |
| | | /** |
| | | * 分页查询用户意见反馈 |
| | | * |
| | | * @param pageFeedBackDTO 分页查询参数 |
| | | * @return 意见集合 |
| | | */ |
| | | @Override |
| | | public R pageFeedback(PageFeedBackDTO pageFeedBackDTO) { |
| | | Page page = new Page<>(); |
| | | Long pageNum = pageFeedBackDTO.getPageNum(); |
| | | Long pageSize = pageFeedBackDTO.getPageSize(); |
| | | page.setSize(pageSize); |
| | | page.setCurrent(pageNum); |
| | | IPage<SysUserFeedbackVO> iPage = sysUserFeedbackDAO.pageFeedback(page, pageFeedBackDTO); |
| | | return R.ok(iPage); |
| | | } |
| | | |
| | | /** |
| | | * 未读消息汇总 |
| | | * |
| | | * @param userId 登录用户信息 |
| | | * @return 未读汇总 |
| | | */ |
| | | @Override |
| | | public R noticeUnreadNum(Long userId) { |
| | | NoticeUnReadVO noticeUnReadVO=sysUserNoticeDAO.noticeUnreadNum(userId); |
| | | List<SysUserNoticeVO> sysUserNoticeVOList=new ArrayList<>(); |
| | | List<SysUserNoticeDO> sysUserNoticeDOS = sysUserNoticeDAO.selectList(new QueryWrapper<SysUserNoticeDO>().lambda().eq(SysUserNoticeDO::getUserId, userId).orderByDesc(SysUserNoticeDO::getCreateAt).groupBy(SysUserNoticeDO::getType)); |
| | | if (!ObjectUtils.isEmpty(sysUserNoticeDOS)) { |
| | | sysUserNoticeDOS.forEach(sysUserNoticeDO -> { |
| | | SysUserNoticeVO sysUserNoticeVO=new SysUserNoticeVO(); |
| | | BeanUtils.copyProperties(sysUserNoticeDO,sysUserNoticeVO); |
| | | sysUserNoticeVOList.add(sysUserNoticeVO); |
| | | }); |
| | | } |
| | | noticeUnReadVO.setSysUserNoticeVOList(sysUserNoticeVOList); |
| | | return R.ok(noticeUnReadVO); |
| | | } |
| | | |
| | | /** |
| | | * 反馈意见详情 |
| | | * |
| | | * @param id 反馈主键 |
| | | * @return 反馈详情 |
| | | */ |
| | | @Override |
| | | public R detailFeedback(Long id) { |
| | | SysUserFeedbackVO sysUserFeedbackVO=sysUserFeedbackDAO.detailFeedback(id); |
| | | return R.ok(sysUserFeedbackVO); |
| | | } |
| | | |
| | | /** |
| | | * 运营小程序后台数据看板 |
| | | * |
| | | * @return 展示数据 |
| | | */ |
| | | @Override |
| | | public R dataKanban() { |
| | | IndexDataKanbanVO indexDataKanbanVO=userDao.selectIndexDataKanban(); |
| | | List<DataKanbanDTO> dataKanbanDTOS=userDao.selectCommunityUserOrder(); |
| | | List<DataKanbanDTO> dataKanbanDTOS1=userDao.selectCommunityActiveUserOrder(); |
| | | List<String> communityUserX=new ArrayList<>(); |
| | | List<Integer> communityUserY=new ArrayList<>(); |
| | | List<String> communityActiveUserX=new ArrayList<>(); |
| | | List<Integer> communityActiveUserY=new ArrayList<>(); |
| | | if (!ObjectUtils.isEmpty(dataKanbanDTOS)) { |
| | | dataKanbanDTOS.forEach(dataKanbanDTO -> { |
| | | communityUserX.add(dataKanbanDTO.getName()); |
| | | communityUserY.add(dataKanbanDTO.getNum()); |
| | | }); |
| | | } |
| | | if (!ObjectUtils.isEmpty(dataKanbanDTOS1)) { |
| | | dataKanbanDTOS1.forEach(dataKanbanDTO -> { |
| | | communityActiveUserX.add(dataKanbanDTO.getName()); |
| | | communityActiveUserY.add(dataKanbanDTO.getNum()); |
| | | }); |
| | | } |
| | | indexDataKanbanVO.setCommunityActiveUserX(communityActiveUserX); |
| | | indexDataKanbanVO.setCommunityActiveUserY(communityActiveUserY); |
| | | indexDataKanbanVO.setCommunityUserX(communityUserX); |
| | | indexDataKanbanVO.setCommunityUserY(communityUserY); |
| | | return R.ok(indexDataKanbanVO); |
| | | } |
| | | |
| | | public static void main(String[] args) { |
| | | String encode = new BCryptPasswordEncoder().encode("123456"); |
| | | System.out.println(encode); |
| | | } |
| | | } |