From a07fbafbc973ac8d11df09afe1386681d00091a9 Mon Sep 17 00:00:00 2001
From: CeDo <cedoogle@gmail.com>
Date: 星期一, 31 五月 2021 18:16:02 +0800
Subject: [PATCH] update
---
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java | 117 ++++++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 104 insertions(+), 13 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 bcb4fd7..ed7c464 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
@@ -18,6 +18,7 @@
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.service.partybuilding.PartyBuildingService;
import com.panzhihua.common.utlis.IdCard;
import com.panzhihua.common.utlis.RealNameUtil;
import com.panzhihua.common.utlis.SensitiveUtil;
@@ -252,6 +253,7 @@
loginUserInfoVO.setIsmemberrole(1);
}
}
+ loginUserInfoVO.setIsRealNamed(sysUserDO.getIdCard()!=null);
return R.ok(loginUserInfoVO);
}
@@ -512,10 +514,29 @@
*/
@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) {
+ ComMngVolunteerMngVO comMngVolunteerMngVO = userDao.selectVolunteerMngByPhone(phone);
+ if(comMngVolunteerMngVO!=null&&comMngVolunteerMngVO.getSubmitUserId()!=null) {
+ Long userId = comMngVolunteerMngVO.getSubmitUserId();
+ //删除用户信息缓存
+ String userKey = UserConstants.LOGIN_USER_INFO + userId;
+ stringRedisTemplate.delete(userKey);
+ }else{
+ List<SysUserDO> userDOList = userDao.selectList(new LambdaQueryWrapper<SysUserDO>().eq(SysUserDO::getPhone, phone));
+ if(userDOList!=null && userDOList.size()>0){
+ userDOList.forEach(usrDo ->{
+ Long userId = usrDo.getUserId();
+ //删除用户信息缓存
+ String userKey = UserConstants.LOGIN_USER_INFO + userId;
+ stringRedisTemplate.delete(userKey);
+ });
+ }
+ }
return R.ok();
}
return R.fail();
@@ -545,6 +566,9 @@
}
int update = userDao.updateById(sysUserDO);
if (update > 0) {
+ //删除用户信息缓存
+ String userKey = UserConstants.LOGIN_USER_INFO + userId;
+ stringRedisTemplate.delete(userKey);
return R.ok();
}
}
@@ -561,7 +585,7 @@
public R putUserCommunityArea(LoginUserInfoVO loginUserInfoVO) {
SysUserDO sysUserDO = new SysUserDO();
sysUserDO.setCommunityId(loginUserInfoVO.getCommunityId());
- sysUserDO.setAreaId(loginUserInfoVO.getAreaId());
+// sysUserDO.setAreaId(loginUserInfoVO.getAreaId());
sysUserDO.setUserId(loginUserInfoVO.getUserId());
int update = userDao.updateById(sysUserDO);
if (update > 0) {
@@ -585,15 +609,20 @@
String idCard = loginUserInfoVO.getIdCard();
String name = loginUserInfoVO.getName();
log.info("用户实名认证发送请求,姓名:" + name + "身份证号码:" + idCard);
- boolean b = RealNameUtil.authentication(idCard, name);
- if (!b) {
- return R.fail("身份认证失败:公安系统认证错误");
+ try {
+ boolean b = RealNameUtil.authentication(idCard, name);
+ if (!b) {
+ return R.fail("身份认证失败:请填写真实信息");
+ }
+ }catch (ServiceException serviceException){
+ return R.fail(serviceException.getMessage());
}
SysUserDO sysUserDO = new SysUserDO();
sysUserDO.setName(name);
sysUserDO.setIdCard(idCard);
- sysUserDO.setSex(loginUserInfoVO.getSex());
- sysUserDO.setBirthday(loginUserInfoVO.getBirthday());
+ //通过身份证号判断性别以及出生日期
+ sysUserDO.setSex(IdCard.sex(idCard));
+ sysUserDO.setBirthday(IdCard.birthDay(idCard));
sysUserDO.setJob(loginUserInfoVO.getJob());
sysUserDO.setUserId(loginUserInfoVO.getUserId());
sysUserDO.setFaceUrl(loginUserInfoVO.getFaceUrl());
@@ -604,6 +633,17 @@
}
int update = userDao.updateById(sysUserDO);
if (update > 0) {
+ //清空缓存
+ String userKey = UserConstants.LOGIN_USER_INFO + loginUserInfoVO.getUserId();
+ stringRedisTemplate.delete(userKey);
+ //实名认证成功查询是否有已审核的党员信息,有则更新党员信息绑定党员的userId
+ Long memberId = userDao.getPartyBuildingByIdCard(idCard);
+ if(memberId != null){
+ sysUserDO.setIsPartymember(1);
+ userDao.updateById(sysUserDO);
+ //修改审核绑定的userId
+ userDao.updateComPbMemberUserId(idCard,sysUserDO.getUserId());
+ }
return R.ok();
}
return R.fail();
@@ -715,7 +755,7 @@
@Override
public R listFamily(Long userId,Long pageNum, Long pageSize) {
List<ComMngFamilyInfoVO> comMngFamilyInfoVOS = new ArrayList<>();
- LambdaQueryWrapper<ComMngFamilyInfoDO> query = new QueryWrapper<ComMngFamilyInfoDO>().lambda().eq(ComMngFamilyInfoDO::getUserId, userId);
+ LambdaQueryWrapper<ComMngFamilyInfoDO> query = new QueryWrapper<ComMngFamilyInfoDO>().lambda().eq(ComMngFamilyInfoDO::getUserId, userId).orderByDesc(ComMngFamilyInfoDO::getCreateAt);
IPage<ComMngFamilyInfoDO> pageData = comMngFamilyInfoDAO.selectPage(new Page<>(pageNum,pageSize), query);
if (!ObjectUtils.isEmpty(pageData.getRecords())) {
pageData.getRecords().forEach(comMngFamilyInfoDO -> {
@@ -824,6 +864,29 @@
throw new ServiceException("账户已经存在");
}
+ }
+
+ if(insert>0 && sysUserDO.getType()==3){//添加的用户是社区账号时
+ //添加网格综合治理管理后台用户
+ SysUserDO sysUserDOWangGe = new SysUserDO();
+ BeanUtils.copyProperties(sysUserDO, sysUserDOWangGe);
+ sysUserDOWangGe.setUserId(null);
+ sysUserDOWangGe.setType(7);//网格综治后台
+ try {
+ int addWange = userDao.insert(sysUserDOWangGe);
+ if(addWange!=1){
+ throw new ServiceException("新增网格综合治理管理后台用户失败");
+ }
+ } 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()));
@@ -1368,6 +1431,7 @@
@Override
public R indexDataCommunityBackstage(Long communityId) {
IndexDataVO indexDataVO = userDao.indexDataCommunityBackstage(communityId);
+ //查询后台党员数量
return R.ok(indexDataVO);
}
@@ -1410,17 +1474,44 @@
*/
@Override
public R updateUserIsPartymember(String idCard) {
- SysUserDO sysUserDO = new SysUserDO();
- sysUserDO.setIsPartymember(1);
- int update = userDao.update(sysUserDO, new UpdateWrapper<SysUserDO>().lambda().eq(SysUserDO::getIdCard, idCard));
- if (update > 0) {
+ SysUserDO sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getIdCard,idCard).eq(SysUserDO::getType,1));
+ if(sysUserDO != null){
+ sysUserDO.setIsPartymember(1);
+ int updated = userDao.updateById(sysUserDO);
+ if(updated>0){
+ //删除用户信息缓存
+ String userKey = UserConstants.LOGIN_USER_INFO + sysUserDO.getUserId();
+ stringRedisTemplate.delete(userKey);
+ }
log.info("新增党员修改用户党员状态成功 身份证号【{}】", idCard);
- return R.ok();
}
- return R.fail();
+ return R.ok();
}
/**
+ * 修改用户的党员状态
+ *
+ * @param idCard 身份证号
+ * @return 修改结果
+ */
+ @Override
+ public R updateUserNotPartymember(String idCard) {
+ SysUserDO sysUserDO = userDao.selectOne(new QueryWrapper<SysUserDO>().lambda().eq(SysUserDO::getIdCard,idCard).eq(SysUserDO::getType,1));
+ if(sysUserDO != null){
+ sysUserDO.setIsPartymember(0);
+ int updated = userDao.updateById(sysUserDO);
+ if(updated>0) {
+ //删除用户信息缓存
+ String userKey = UserConstants.LOGIN_USER_INFO + sysUserDO.getUserId();
+ stringRedisTemplate.delete(userKey);
+ }
+ log.info("新增党员修改用户为非党员状态成功 身份证号【{}】", idCard);
+ }
+ return R.ok();
+ }
+
+
+ /**
* 获取各种协议
*
* @param type 1居民端app协议 2网格员端app协议 3商家端app协议 4隐私政策
--
Gitblit v1.7.1