From 09e41d546b030b47661877d4b8141c88584d7598 Mon Sep 17 00:00:00 2001
From: 罗元桥 <2376770955@qq.com>
Date: 星期五, 24 九月 2021 16:03:52 +0800
Subject: [PATCH] Merge branch 'test' into 'four_member'

---
 springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java |  181 +++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 173 insertions(+), 8 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 39d44bf..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;
@@ -2507,4 +2577,99 @@
         }
         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