From 17bccd09afb6e6a4fffa0409d7d5285e88442103 Mon Sep 17 00:00:00 2001
From: huanghongfa <18228131219@163.com>
Date: 星期四, 31 十二月 2020 16:05:57 +0800
Subject: [PATCH] 志愿者团新增接口

---
 springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java |  237 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 230 insertions(+), 7 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 89add58..e917834 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
@@ -7,14 +7,14 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.panzhihua.common.constants.SecurityConstants;
 import com.panzhihua.common.constants.UserConstants;
+import com.panzhihua.common.model.dtos.user.PageUserAppletsBackstageDTO;
+import com.panzhihua.common.model.dtos.user.SysUserFeedbackDTO;
 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.partybuilding.PageActivityMembersVO;
-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.UserPhoneVO;
+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.service.UserService;
@@ -53,6 +53,12 @@
     private StringRedisTemplate stringRedisTemplate;
     @Resource
     private SysUserRoleDAO sysUserRoleDAO;
+    @Resource
+    private SysOperLogDAO sysOperLogDAO;
+    @Resource
+    private SysUserAgreementDAO sysUserAgreementDAO;
+    @Resource
+    private SysUserFeedbackDAO sysUserFeedbackDAO;
 
 
     /**
@@ -212,7 +218,18 @@
     @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);
@@ -705,9 +722,10 @@
         if (ObjectUtils.isEmpty(sysUserDO)) {
             return R.fail("用户不存在");
         }
-        Integer type = sysUserDO.getType();
-        if (type.intValue()!=2) {
-            return R.fail("用户废运营平台用户");
+        Long communityId = sysUserDO.getCommunityId();
+        Long communityId1 = administratorsUserVO.getCommunityId();
+        if (communityId1.intValue()!=communityId.intValue()) {
+            return R.fail("用户不属于当前平台");
         }
         //删除用户
         int delete = userDao.deleteById(userId);
@@ -744,6 +762,211 @@
         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();
+    }
+
     public static void main(String[] args) {
         String encode = new BCryptPasswordEncoder().encode("123456");
         System.out.println(encode);

--
Gitblit v1.7.1