|
|
|
@ -19,7 +19,6 @@ package com.epmet.modules.warmhearted.service.impl; |
|
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
import com.baomidou.mybatisplus.core.toolkit.IdWorker; |
|
|
|
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
|
|
|
import com.epmet.commons.tools.constant.AppClientConstant; |
|
|
|
import com.epmet.commons.tools.constant.EpmetRoleKeyConstant; |
|
|
|
@ -33,9 +32,9 @@ import com.epmet.commons.tools.utils.Result; |
|
|
|
import com.epmet.constant.PartyMemberConstant; |
|
|
|
import com.epmet.dto.UserRoleDTO; |
|
|
|
import com.epmet.dto.form.UserResiInfoFormDTO; |
|
|
|
import com.epmet.dto.form.UserResiInfoListFormDTO; |
|
|
|
import com.epmet.dto.result.UserResiInfoResultDTO; |
|
|
|
import com.epmet.modules.feign.EpmetUserFeignClient; |
|
|
|
import com.epmet.modules.utils.ModuleConstant; |
|
|
|
import com.epmet.modules.warmhearted.constant.ResiWarmheartedVisitConstant; |
|
|
|
import com.epmet.modules.warmhearted.dao.ResiWarmheartedApplyDao; |
|
|
|
import com.epmet.modules.warmhearted.entity.ResiWarmheartedApplyEntity; |
|
|
|
@ -44,21 +43,23 @@ import com.epmet.modules.warmhearted.service.ResiWarmheartedApplyService; |
|
|
|
import com.epmet.modules.warmhearted.service.ResiWarmheartedVisitService; |
|
|
|
import com.epmet.resi.partymember.dto.warmhearted.ResiWarmheartedApplyDTO; |
|
|
|
import com.epmet.resi.partymember.dto.warmhearted.form.ResiWarmheartedAuditFormDTO; |
|
|
|
import com.epmet.resi.partymember.dto.warmhearted.form.ResiWarmheartedAuditedFromDTO; |
|
|
|
import com.epmet.resi.partymember.dto.warmhearted.form.ResiWarmheartedFormDTO; |
|
|
|
import com.epmet.resi.partymember.dto.warmhearted.form.ResiWarmheartedSubmitFormDTO; |
|
|
|
import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmheartedAuditedResultDTO; |
|
|
|
import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmheartedResultDTO; |
|
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
|
import org.slf4j.Logger; |
|
|
|
import org.slf4j.LoggerFactory; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.Arrays; |
|
|
|
import java.util.Date; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
|
|
|
|
|
import org.slf4j.Logger; |
|
|
|
import org.slf4j.LoggerFactory; |
|
|
|
import java.util.stream.Collectors; |
|
|
|
|
|
|
|
/** |
|
|
|
* 热心居民申请表 |
|
|
|
@ -176,7 +177,7 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl<ResiWarmhea |
|
|
|
if (null != resiWarmheartedApplyDTO) { |
|
|
|
logger.error(ResiWarmheartedVisitConstant.REPEAT_EXCEPTION); |
|
|
|
throw new RenException(ResiWarmheartedVisitConstant.REPEAT_EXCEPTION); |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
//1:将申请记录存入热心居民申请表中
|
|
|
|
saveResiWarmApply(formDTO); |
|
|
|
//2:将最后一次操作行为更新到热心居民申请行为记录表中
|
|
|
|
@ -239,4 +240,56 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl<ResiWarmhea |
|
|
|
} |
|
|
|
return result; |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public Result<List<ResiWarmheartedAuditedResultDTO>> audited(ResiWarmheartedAuditedFromDTO formDTO) { |
|
|
|
Result<List<ResiWarmheartedAuditedResultDTO>> result = new Result<>(); |
|
|
|
List<ResiWarmheartedAuditedResultDTO> resultList = new ArrayList<>(); |
|
|
|
//查询条件
|
|
|
|
ResiWarmheartedApplyDTO applyDTO = ConvertUtils.sourceToTarget(formDTO, ResiWarmheartedApplyDTO.class); |
|
|
|
applyDTO.setAuditStatus(PartyMemberConstant.UNDER_AUDITTING); |
|
|
|
//获取审核列表
|
|
|
|
List<ResiWarmheartedApplyEntity> applyList = |
|
|
|
baseDao.selectList(getWrapper(applyDTO).orderByDesc("UPDATED_TIME")); |
|
|
|
if (null == applyList || applyList.size() == 0) { |
|
|
|
return result.ok(resultList); |
|
|
|
} |
|
|
|
//提取所有userID
|
|
|
|
List<String> userIds = |
|
|
|
applyList.stream().map(ResiWarmheartedApplyEntity::getUserId).collect(Collectors.toList()); |
|
|
|
//获取用户昵称,头像
|
|
|
|
UserResiInfoListFormDTO userResiInfoListFormDTO = new UserResiInfoListFormDTO(); |
|
|
|
userResiInfoListFormDTO.setUserIdList(userIds); |
|
|
|
List<UserResiInfoResultDTO> userResiInfoList = |
|
|
|
epmetUserFeignClient.getUserResiInfoList(userResiInfoListFormDTO).getData(); |
|
|
|
if (null == userResiInfoList || userResiInfoList.size() == 0) { |
|
|
|
return result.ok(resultList); |
|
|
|
} |
|
|
|
resultList = applyList.stream().flatMap(apply -> userResiInfoList.stream().filter(user -> |
|
|
|
apply.getUserId().equals(user.getUserId())).map(userInfo -> { |
|
|
|
ResiWarmheartedAuditedResultDTO resultDTO = new ResiWarmheartedAuditedResultDTO(); |
|
|
|
resultDTO.setApplyId(apply.getId()); |
|
|
|
resultDTO.setUserId(apply.getUserId()); |
|
|
|
resultDTO.setStatus(apply.getAuditStatus()); |
|
|
|
resultDTO.setApplyTime(apply.getUpdatedTime()); |
|
|
|
resultDTO.setMessageText(apply.getMessageText()); |
|
|
|
resultDTO.setUserNickName(userInfo.getShowName()); |
|
|
|
resultDTO.setUserHeadPhoto(userInfo.getHeadPhoto()); |
|
|
|
return resultDTO; |
|
|
|
})).collect(Collectors.toList()); |
|
|
|
|
|
|
|
return result.ok(resultList); |
|
|
|
} |
|
|
|
|
|
|
|
private QueryWrapper<ResiWarmheartedApplyEntity> getWrapper(ResiWarmheartedApplyDTO params) { |
|
|
|
String customerId = params.getCustomerId(); |
|
|
|
String gridId = params.getGridId(); |
|
|
|
String auditStatus = params.getAuditStatus(); |
|
|
|
QueryWrapper<ResiWarmheartedApplyEntity> wrapper = new QueryWrapper<>(); |
|
|
|
wrapper.eq(StringUtils.isNotBlank(customerId), "CUSTOMER_ID", customerId) |
|
|
|
.eq(StringUtils.isNotBlank(gridId), "GRID_ID", gridId) |
|
|
|
.ne(StringUtils.isNotBlank(auditStatus), "AUDIT_STATUS", auditStatus); |
|
|
|
|
|
|
|
return wrapper; |
|
|
|
} |
|
|
|
} |
|
|
|
|