Browse Source

家庭成员移除

master
zhaoqifeng 3 years ago
parent
commit
f60ddbee1d
  1. 5
      epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/UserMessageTypeConstant.java
  2. 19
      epmet-user/epmet-user-server/src/main/java/com/epmet/constant/MessageConstant.java
  3. 19
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/ChangeRelocationController.java
  4. 10
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/ChangeRelocationService.java
  5. 55
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/ChangeRelocationServiceImpl.java
  6. 54
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java

5
epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/UserMessageTypeConstant.java

@ -212,4 +212,9 @@ public interface UserMessageTypeConstant {
* ic_event新事件
*/
String IC_EVENT="ic_event";
/**
* 移除家庭成员
*/
String MOVE_OUT_HOME = "move_out_home";
}

19
epmet-user/epmet-user-server/src/main/java/com/epmet/constant/MessageConstant.java

@ -0,0 +1,19 @@
package com.epmet.constant;
/**
* @Description
* @Author zhaoqifeng
* @Date 2022/6/27 14:23
*/
public interface MessageConstant {
/**
* 消息标题
*/
String MOVE_OUT_TITLE = "您有一条移除家庭成员消息";
/**
* 审核驳回消息模板
*/
String OVE_OUT_REJECTED_MSG = "您好,您的申请由于%s,已被驳回。";
}

19
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/ChangeRelocationController.java

@ -104,4 +104,23 @@ public class ChangeRelocationController {
return changeRelocationService.saveOutOfInfo(dto);
}
/**
* 从家庭中移除
*
* @Param tokenDto
* @Param dto
* @Return {@link Result}
* @Author zhaoqifeng
* @Date 2022/6/27 10:50
*/
@NoRepeatSubmit
@PostMapping("moveOutHome")
public Result moveOutHome(@LoginUser TokenDto tokenDto, @RequestBody ChangeRelocationDTO dto){
dto.setCustomerId(tokenDto.getCustomerId());
dto.setStaffId(tokenDto.getUserId());
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
return changeRelocationService.saveOutOfInfo(dto);
}
}

10
epmet-user/epmet-user-server/src/main/java/com/epmet/service/ChangeRelocationService.java

@ -85,4 +85,14 @@ public interface ChangeRelocationService extends BaseService<ChangeRelocationEnt
* @return com.epmet.commons.tools.utils.Result
*/
Result saveOutOfInfo(ChangeRelocationDTO dto);
/**
* 从家庭中移除
*
* @Param dto
* @Return
* @Author zhaoqifeng
* @Date 2022/6/27 10:52
*/
void moveOutHome(ChangeRelocationDTO dto);
}

55
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/ChangeRelocationServiceImpl.java

@ -7,6 +7,8 @@ import com.epmet.commons.rocketmq.messages.IcResiUserAddMQMsg;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.enums.IcResiUserSubStatusEnum;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.user.LoginUserUtil;
import com.epmet.commons.tools.utils.ConvertUtils;
@ -21,6 +23,7 @@ import com.epmet.constant.SystemMessageType;
import com.epmet.dao.ChangeRelocationDao;
import com.epmet.dto.ChangeRelocationDTO;
import com.epmet.dto.ChangeWelfareDTO;
import com.epmet.dto.IcResiUserDTO;
import com.epmet.dto.form.IcResiUserTransferFormDTO;
import com.epmet.dto.form.RentTenantDataFormDTO;
import com.epmet.dto.form.SystemMsgFormDTO;
@ -39,6 +42,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
@ -70,6 +74,8 @@ public class ChangeRelocationServiceImpl extends BaseServiceImpl<ChangeRelocatio
@Autowired
private IcResiUserService icResiUserService;
@Resource
private IcUserTransferRecordService icUserTransferRecordService;
@Override
public PageData<ChangeRelocationDTO> page(Map<String, Object> params) {
@ -197,8 +203,10 @@ public class ChangeRelocationServiceImpl extends BaseServiceImpl<ChangeRelocatio
//更新epmet用户状态
IcResiUserEntity userEntity = new IcResiUserEntity();
userEntity.setId(dto.getIcUserId());
userEntity.setStatus(NumConstant.ONE_STR);//转出(迁出)
userEntity.setSubStatus(IcResiUserSubStatusEnum.MOVE_OUT.getSubStatus());//迁出
//转出(迁出)
userEntity.setStatus(NumConstant.ONE_STR);
//迁出
userEntity.setSubStatus(IcResiUserSubStatusEnum.MOVE_OUT.getSubStatus());
icResiUserService.updateById(userEntity);
//插入变更主表、变更明细表
IcResiUserTransferFormDTO icResiUserTransferFormDTO = ConvertUtils.sourceToTarget(dto, IcResiUserTransferFormDTO.class);
@ -217,6 +225,49 @@ public class ChangeRelocationServiceImpl extends BaseServiceImpl<ChangeRelocatio
return new Result();
}
/**
* 从家庭中移除
*
* @param dto
* @Param dto
* @Return
* @Author zhaoqifeng
* @Date 2022/6/27 10:52
*/
@Override
public void moveOutHome(ChangeRelocationDTO dto) {
if ("in".equals(dto.getType())) {
//获取居民信息
IcResiUserDTO userInfo = icResiUserService.get(dto.getIcUserId());
if (null == userInfo) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "居民信息不存在", "居民信息不存在");
}
if (userInfo.getAgencyId().equals(dto.getAgencyId())) {
//组织内走变更流程
IcResiUserTransferFormDTO formDTO = new IcResiUserTransferFormDTO();
formDTO.setIcUserId(dto.getIcUserId());
formDTO.setType("in");
formDTO.setNewAgencyId(dto.getAgencyId());
formDTO.setNewGridId(dto.getGridId());
formDTO.setNewNeighborHoodId(dto.getVillageId());
formDTO.setNewBuildingId(dto.getBuildId());
formDTO.setNewBuildingUnitId(dto.getUnitId());
formDTO.setNewHouseId(dto.getHomeId());
formDTO.setTransferTime(dto.getTransferTime());
formDTO.setIdEdit(false);
formDTO.setCustomerId(dto.getCustomerId());
formDTO.setStaffId(dto.getStaffId());
icUserTransferRecordService.add(formDTO);
} else {
//组织外走迁出流程
this.saveOutOfInfo(dto);
}
} else {
this.saveOutOfInfo(dto);
}
}
public void editResiMq(String customerId, String userId) {
//推送MQ事件
IcResiUserAddMQMsg mqMsg = new IcResiUserAddMQMsg();

54
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserConfirmServiceImpl.java

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.AppClientConstant;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult;
@ -18,18 +19,19 @@ import com.epmet.commons.tools.redis.common.bean.GridInfoCache;
import com.epmet.commons.tools.redis.common.bean.HouseInfoCache;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.MessageConstant;
import com.epmet.constant.ReadFlagConstant;
import com.epmet.constant.UserMessageTypeConstant;
import com.epmet.dao.IcResiUserConfirmDao;
import com.epmet.dao.IcResiUserDao;
import com.epmet.dto.IcResiUserConfirmDTO;
import com.epmet.dto.form.ConfirmListFormDTO;
import com.epmet.dto.form.IcResiUserConfirmGetDTO;
import com.epmet.dto.form.IcResiUserConfirmSubmitDTO;
import com.epmet.dto.form.MoveOutMemberFormDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.ConfirmListResultDTO;
import com.epmet.dto.result.MoveOutDetailResultDTO;
import com.epmet.entity.IcResiUserConfirmEntity;
import com.epmet.entity.IcResiUserEntity;
import com.epmet.enums.UserConfirmEnum;
import com.epmet.feign.EpmetMessageOpenFeignClient;
import com.epmet.redis.IcResiUserConfirmRedis;
import com.epmet.service.IcResiUserConfirmService;
import com.github.pagehelper.PageHelper;
@ -41,9 +43,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import javax.annotation.Resource;
import java.util.*;
/**
* 居民信息审核表
@ -64,6 +65,9 @@ public class IcResiUserConfirmServiceImpl extends BaseServiceImpl<IcResiUserConf
@Autowired
private IcResiUserConfirmDao icResiUserConfirmDao;
@Resource
private EpmetMessageOpenFeignClient epmetMessageOpenFeignClient;
@Override
public PageData<IcResiUserConfirmDTO> page(Map<String, Object> params) {
IPage<IcResiUserConfirmEntity> page = baseDao.selectPage(
@ -333,6 +337,42 @@ public class IcResiUserConfirmServiceImpl extends BaseServiceImpl<IcResiUserConf
@Transactional(rollbackFor = Exception.class)
public void moveOutConfirm(IcResiUserConfirmDTO formDTO) {
baseDao.updateById(ConvertUtils.sourceToTarget(formDTO, IcResiUserConfirmEntity.class));
//审核不通过,发送消息
if (NumConstant.TWO_STR.equals(formDTO.getConfirmResult())) {
String msg = String.format(MessageConstant.OVE_OUT_REJECTED_MSG, formDTO.getReason());
IcResiUserConfirmEntity entity = baseDao.selectById(formDTO.getId());
sendMessage(entity.getCustomerId(),entity.getGridId(), entity.getId(), entity.getCreatedBy(), msg);
}
}
private void sendMessage(String customerId, String gridId, String targetId, String userId, String userMsg) {
UserMessageFormDTO userMessageFormDTO = new UserMessageFormDTO();
userMessageFormDTO.setCustomerId(customerId);
userMessageFormDTO.setGridId(gridId);
userMessageFormDTO.setApp(AppClientConstant.APP_RESI);
userMessageFormDTO.setTitle(MessageConstant.MOVE_OUT_TITLE);
userMessageFormDTO.setMessageType(UserMessageTypeConstant.MOVE_OUT_HOME);
userMessageFormDTO.setTargetId(targetId);
userMessageFormDTO.setMessageContent(userMsg);
userMessageFormDTO.setReadFlag(ReadFlagConstant.UN_READ);
userMessageFormDTO.setUserId(userId);
//发送微信订阅消息
WxSubscribeMessageFormDTO wxSubscribeMessageFormDTO = new WxSubscribeMessageFormDTO();
wxSubscribeMessageFormDTO.setCustomerId(customerId);
wxSubscribeMessageFormDTO.setUserId(userId);
wxSubscribeMessageFormDTO.setClientType(AppClientConstant.APP_RESI);
wxSubscribeMessageFormDTO.setGridId(gridId);
wxSubscribeMessageFormDTO.setBehaviorType(MessageConstant.MOVE_OUT_TITLE);
wxSubscribeMessageFormDTO.setMessageContent(userMsg);
wxSubscribeMessageFormDTO.setMessageTime(new Date());
List<WxSubscribeMessageFormDTO> msgList = new ArrayList<>();
msgList.add(wxSubscribeMessageFormDTO);
epmetMessageOpenFeignClient.sendWxSubscribeMessage(msgList);
//保存消息
epmetMessageOpenFeignClient.saveUserMessage(userMessageFormDTO);
}
}

Loading…
Cancel
Save