From eb49b39db4de118a2161fd2a57b96f8f1b84eade Mon Sep 17 00:00:00 2001 From: puhanshu <a9236326> Date: 星期三, 05 一月 2022 18:11:01 +0800 Subject: [PATCH] 商家后台相关代码提交2 --- springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java | 169 ++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 158 insertions(+), 11 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 62ee081..dfed62b 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 @@ -2,6 +2,7 @@ import static java.util.Objects.isNull; import static java.util.Objects.nonNull; +import static org.apache.commons.lang3.StringUtils.isNotBlank; import java.util.ArrayList; import java.util.Date; @@ -13,12 +14,9 @@ import java.util.stream.Collectors; import javax.annotation.Resource; +import javax.validation.constraints.NotBlank; -import cn.hutool.core.util.IdcardUtil; -import com.panzhihua.common.model.dtos.DataKanBansDto; -import com.panzhihua.common.model.vos.community.*; -import com.panzhihua.service_user.dao.*; -import com.panzhihua.service_user.model.dos.*; +import com.panzhihua.common.model.dtos.community.microCommercialStreet.McsMerchantDTO; import org.apache.commons.lang.time.DateFormatUtils; import org.apache.commons.lang.time.DateUtils; import org.springframework.beans.BeanUtils; @@ -37,6 +35,7 @@ import com.panzhihua.common.constants.Constants; import com.panzhihua.common.constants.UserConstants; import com.panzhihua.common.exceptions.ServiceException; +import com.panzhihua.common.model.dtos.DataKanBansDto; import com.panzhihua.common.model.dtos.PageDTO; import com.panzhihua.common.model.dtos.community.ExportUserDTO; import com.panzhihua.common.model.dtos.community.NoticeReadDTO; @@ -59,6 +58,11 @@ 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.community.IndexUserCommunityVo; +import com.panzhihua.common.model.vos.community.IndexUserStatisticsVo; +import com.panzhihua.common.model.vos.community.IndexUserStreetVo; 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; @@ -84,10 +88,41 @@ import com.panzhihua.common.utlis.StringUtils; import com.panzhihua.common.utlis.WxUtil; import com.panzhihua.common.utlis.WxXCXTempSend; +import com.panzhihua.service_user.dao.ComActFourMemberDao; +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.ComActFourMember; +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; +import cn.hutool.core.util.IdcardUtil; import lombok.extern.slf4j.Slf4j; // import com.panzhihua.common.service.grid.GridService; @@ -325,6 +360,7 @@ loginUserInfoVO.setIsmemberrole(2); loginUserInfoVO.setIsFourMember(2); loginUserInfoVO.setIsCommunityWorker(2); + loginUserInfoVO.setIsPropertyWorker(2); // 志愿者状态 String phone = sysUserDO.getPhone(); Long userCommunityId = sysUserDO.getCommunityId(); @@ -346,6 +382,11 @@ Integer countFourMember=comActFourMemberDao.selectCount(new QueryWrapper<ComActFourMember>().lambda().eq(ComActFourMember::getIdCard,sysUserDO.getIdCard())); if(countFourMember>0){ loginUserInfoVO.setIsFourMember(1); + } + //是否是社区物业人员 + int countPropertyWorker = userDao.countPropertyWorker(Long.parseLong(userId), userCommunityId); + if (countPropertyWorker > 0) { + loginUserInfoVO.setIsPropertyWorker(1); } // 是否是"管理员"或者 本社区 "社区团队"、"党委成员" Integer countTeam = userDao.selectCountTeam(phone, userCommunityId); @@ -584,6 +625,7 @@ if (ObjectUtils.isEmpty(sysUserDO)) { return R.fail("人员不存在"); } + BeanUtils.copyProperties(sysUserDO, loginUserInfoVO); List<ComMngFamilyInfoDO> comMngFamilyInfoDOS = comMngFamilyInfoDAO .selectList(new QueryWrapper<ComMngFamilyInfoDO>().lambda().eq(ComMngFamilyInfoDO::getUserId, userId)); @@ -637,6 +679,9 @@ if (!ObjectUtils.isEmpty(comActVO)) { loginUserInfoVO.setCommunityName(comActVO.getName()); } + //是否是社区物业人员 + int countPropertyWorker = userDao.countPropertyWorker(userId, loginUserInfoVO.getCommunityId()); + loginUserInfoVO.setIsPropertyWorker(countPropertyWorker > 0 ? 1 : 0); loginUserInfoVO.setIdCard(SensitiveUtil.desensitizedIdNumber(loginUserInfoVO.getIdCard())); loginUserInfoVO.setPhone(SensitiveUtil.desensitizedPhoneNumber(loginUserInfoVO.getPhone())); return R.ok(loginUserInfoVO); @@ -2063,7 +2108,7 @@ @Override public R editSysUser(ShopStoreVO storeVO) { SysUserDO sysUserDO1 = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda() - .eq(SysUserDO::getPhone, storeVO.getPhone()).eq(SysUserDO::getType, 5)); + .eq(SysUserDO::getPhone, storeVO.getStoreAccount()).eq(SysUserDO::getType, 5)); if (sysUserDO1 == null) { return R.fail("未查询到后台管理用户!"); } @@ -2589,10 +2634,6 @@ if (nonNull(sysUserDO)) { return R.fail("账户已经存在"); } - sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getPhone, convenientMerchantDTO.getPhone())); - if (nonNull(sysUserDO)) { - return R.fail("手机号已经存在"); - } // sys_user 表 sysUserDO = new SysUserDO(); String encode = new BCryptPasswordEncoder().encode(convenientMerchantDTO.getPassword()); @@ -2601,7 +2642,7 @@ sysUserDO.setType(10); sysUserDO.setAreaId(null); sysUserDO.setStatus(1); - sysUserDO.setPhone(convenientMerchantDTO.getPhone()); + sysUserDO.setPhone(null); sysUserDO.setName(convenientMerchantDTO.getContacts()); sysUserDO.setPassword(encode); try { @@ -2745,4 +2786,110 @@ public R communityStatisticsExport(){ return R.ok(userDao.getUserCommunityExcelExport()); } + + /** + * 通过UnionId获取用户信息 + * @param unionId + * @return + */ + @Override + public R getUserInfoByUnionId(String unionId) { + SysUserDO sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getUnionid, unionId)); + if (isNull(sysUserDO)) { + return R.fail("用户不存在"); + } + LoginUserInfoVO loginUserInfoVO = new LoginUserInfoVO(); + BeanUtils.copyProperties(sysUserDO, loginUserInfoVO); + return R.ok(loginUserInfoVO); + } + + /** + * 微商业街新增商家账号 + * @param mcsMerchantDTO + * @return 商家用户id + */ + @Override + @Transactional(rollbackFor = Exception.class) + public R addMcsMerchantUser(McsMerchantDTO mcsMerchantDTO) { + SysUserDO sysUserDO; + sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda() + .eq(SysUserDO::getAccount, mcsMerchantDTO.getAccount()).eq(SysUserDO::getType, 11)); + if (nonNull(sysUserDO)) { + return R.fail("账户已经存在"); + } + // sys_user 表 + sysUserDO = new SysUserDO(); + String encode = new BCryptPasswordEncoder().encode(mcsMerchantDTO.getPassword()); + BeanUtils.copyProperties(mcsMerchantDTO, sysUserDO); + sysUserDO.setAccount(mcsMerchantDTO.getAccount()); + sysUserDO.setType(11); + sysUserDO.setAreaId(null); + sysUserDO.setStatus(mcsMerchantDTO.getAccountStatus()); + sysUserDO.setPhone(mcsMerchantDTO.getPhone()); + sysUserDO.setPassword(encode); + try { + userDao.insert(sysUserDO); + return R.ok(sysUserDO.getUserId()); + } catch (Exception e) { + e.printStackTrace(); + log.error("新增后台用户报错【{}】", e.getMessage()); + } + return R.fail("新增商户发生错误"); + } + + /** + * 微商业街修改商家账号 + * @param mcsMerchantDTO + * @return + */ + @Override + public R putMcsMerchantUser(McsMerchantDTO mcsMerchantDTO) { + SysUserDO sysUserDO = userDao.selectById(mcsMerchantDTO.getUserId()); + if (isNull(sysUserDO)) { + return R.fail("用户不存在"); + } + String account = mcsMerchantDTO.getAccount(); + String phone = mcsMerchantDTO.getPhone(); + Integer accountStatus = mcsMerchantDTO.getAccountStatus(); + if (isNotBlank(account)) { + sysUserDO.setAccount(account); + } + if (isNotBlank(phone)) { + sysUserDO.setPhone(phone); + } + if (nonNull(accountStatus)) { + sysUserDO.setStatus(accountStatus); + } + try { + userDao.updateById(sysUserDO); + } catch (Exception e) { + e.printStackTrace(); + log.error("修改数字商业街商家用户报错【{}】", e.getMessage()); + if (e.getMessage().contains("union_phone_type")) { + return R.fail("手机号已存在"); + } else if (e.getMessage().contains("union_account_type")) { + return R.fail("账户已经存在"); + }else if(e.getMessage().contains("23000")){ + return R.fail("手机号已存在"); + } else { + return R.fail("账户或手机号已存在,请重新填写尝试"); + } + } + return R.ok(); + } + + /** + * 检查用户是否有效 + * @param userId + * @param type + * @return + */ + @Override + public Boolean checkUserIsValid(Long userId, Integer type) { + SysUserDO sysUserDO = userDao.selectById(userId); + if (isNull(sysUserDO) || sysUserDO.getStatus() != 1 || !sysUserDO.getType().equals(type)) { + return false; + } + return true; + } } -- Gitblit v1.7.1