|
|
|
@ -3,6 +3,7 @@ package com.biutag.supervision.service.complaintCollection; |
|
|
|
import cn.hutool.core.bean.BeanUtil; |
|
|
|
import cn.hutool.core.bean.BeanUtil; |
|
|
|
import cn.hutool.core.collection.CollectionUtil; |
|
|
|
import cn.hutool.core.collection.CollectionUtil; |
|
|
|
import cn.hutool.core.lang.Opt; |
|
|
|
import cn.hutool.core.lang.Opt; |
|
|
|
|
|
|
|
import cn.hutool.core.map.MapUtil; |
|
|
|
import cn.hutool.core.util.StrUtil; |
|
|
|
import cn.hutool.core.util.StrUtil; |
|
|
|
import com.alibaba.fastjson2.JSON; |
|
|
|
import com.alibaba.fastjson2.JSON; |
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
@ -21,6 +22,7 @@ import com.biutag.supervision.pojo.param.ComplaintCollection.ComplaintCollection |
|
|
|
import com.biutag.supervision.pojo.param.ComplaintCollection.ComplaintCollectionQueryParam; |
|
|
|
import com.biutag.supervision.pojo.param.ComplaintCollection.ComplaintCollectionQueryParam; |
|
|
|
import com.biutag.supervision.pojo.param.ComplaintCollection.ComplaintCollectionUpdateParam; |
|
|
|
import com.biutag.supervision.pojo.param.ComplaintCollection.ComplaintCollectionUpdateParam; |
|
|
|
import com.biutag.supervision.pojo.param.SupDepartQueryParam; |
|
|
|
import com.biutag.supervision.pojo.param.SupDepartQueryParam; |
|
|
|
|
|
|
|
import com.biutag.supervision.pojo.param.SupPoliceQueryParam; |
|
|
|
import com.biutag.supervision.pojo.param.complaintCollectionBlame.ComplaintCollectionBlameQueryParam; |
|
|
|
import com.biutag.supervision.pojo.param.complaintCollectionBlame.ComplaintCollectionBlameQueryParam; |
|
|
|
import com.biutag.supervision.pojo.request.complaintCollection.*; |
|
|
|
import com.biutag.supervision.pojo.request.complaintCollection.*; |
|
|
|
import com.biutag.supervision.pojo.transfer.ComplaintCollectionTransfer; |
|
|
|
import com.biutag.supervision.pojo.transfer.ComplaintCollectionTransfer; |
|
|
|
@ -28,6 +30,7 @@ import com.biutag.supervision.pojo.vo.complaintCollection.ComplaintCollectionPag |
|
|
|
import com.biutag.supervision.pojo.vo.complaintCollection.ComplaintCollectionWatchDetailVO; |
|
|
|
import com.biutag.supervision.pojo.vo.complaintCollection.ComplaintCollectionWatchDetailVO; |
|
|
|
import com.biutag.supervision.repository.complaintCollection.ComplaintCollectionResourceService; |
|
|
|
import com.biutag.supervision.repository.complaintCollection.ComplaintCollectionResourceService; |
|
|
|
import com.biutag.supervision.repository.complaintCollectionBlame.ComplaintCollectionBlameResourceService; |
|
|
|
import com.biutag.supervision.repository.complaintCollectionBlame.ComplaintCollectionBlameResourceService; |
|
|
|
|
|
|
|
import com.biutag.supervision.repository.supPolice.SupPoliceResourceService; |
|
|
|
import com.biutag.supervision.repository.supdepart.SupDepartResourceService; |
|
|
|
import com.biutag.supervision.repository.supdepart.SupDepartResourceService; |
|
|
|
import com.biutag.supervision.service.*; |
|
|
|
import com.biutag.supervision.service.*; |
|
|
|
import com.biutag.supervision.util.CodeTranslateUtil; |
|
|
|
import com.biutag.supervision.util.CodeTranslateUtil; |
|
|
|
@ -39,6 +42,7 @@ import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
|
|
|
|
import java.time.LocalDateTime; |
|
|
|
import java.time.LocalDateTime; |
|
|
|
import java.util.*; |
|
|
|
import java.util.*; |
|
|
|
|
|
|
|
import java.util.function.Function; |
|
|
|
import java.util.stream.Collectors; |
|
|
|
import java.util.stream.Collectors; |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
@ -69,6 +73,7 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic |
|
|
|
private final SupDepartResourceService supDepartResourceService; |
|
|
|
private final SupDepartResourceService supDepartResourceService; |
|
|
|
private final ApplyCompletionAction applyCompletionAction; |
|
|
|
private final ApplyCompletionAction applyCompletionAction; |
|
|
|
private final NegativeBlameService negativeBlameService; |
|
|
|
private final NegativeBlameService negativeBlameService; |
|
|
|
|
|
|
|
private final SupPoliceResourceService supPoliceResourceService; |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public Result<Boolean> addComplaintCollection(ComplaintCollectionAddRequest request) { |
|
|
|
public Result<Boolean> addComplaintCollection(ComplaintCollectionAddRequest request) { |
|
|
|
@ -83,7 +88,7 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic |
|
|
|
} |
|
|
|
} |
|
|
|
ComplaintCollection complaintCollection = ComplaintCollectionTransfer.INSTANCE.addRequestToEntity(request); |
|
|
|
ComplaintCollection complaintCollection = ComplaintCollectionTransfer.INSTANCE.addRequestToEntity(request); |
|
|
|
// 生成编号
|
|
|
|
// 生成编号
|
|
|
|
if (StrUtil.isBlank(complaintCollection.getOriginId())){ |
|
|
|
if (StrUtil.isBlank(complaintCollection.getOriginId())) { |
|
|
|
complaintCollection.setOriginId(SfssUtil.generateIdWithPrefix(request.getSourceTable())); |
|
|
|
complaintCollection.setOriginId(SfssUtil.generateIdWithPrefix(request.getSourceTable())); |
|
|
|
} |
|
|
|
} |
|
|
|
complaintCollection.setCreateTime(LocalDateTime.now()); |
|
|
|
complaintCollection.setCreateTime(LocalDateTime.now()); |
|
|
|
@ -221,13 +226,51 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic |
|
|
|
blames = request.getBlames().stream().filter(item -> BlameType.department.name().equals(item.getType())).toList(); |
|
|
|
blames = request.getBlames().stream().filter(item -> BlameType.department.name().equals(item.getType())).toList(); |
|
|
|
} |
|
|
|
} |
|
|
|
if (CollectionUtil.isNotEmpty(blames)) { |
|
|
|
if (CollectionUtil.isNotEmpty(blames)) { |
|
|
|
|
|
|
|
// 所有警号
|
|
|
|
|
|
|
|
Set<String> blameEmpSet = blames.stream() |
|
|
|
|
|
|
|
.map(ComplaintCollectionAndBlameAddRequest.Blame::getBlameEmpNo) |
|
|
|
|
|
|
|
.filter(Objects::nonNull) |
|
|
|
|
|
|
|
.collect(Collectors.toSet()); |
|
|
|
|
|
|
|
if (CollectionUtil.isNotEmpty(request.getBlameLeaders())) { |
|
|
|
|
|
|
|
Set<String> leadEmpNos = request.getBlameLeaders().stream() |
|
|
|
|
|
|
|
.map(ComplaintCollectionAndBlameAddRequest.BlameLeader::getLeadEmpNo) |
|
|
|
|
|
|
|
.filter(Objects::nonNull) |
|
|
|
|
|
|
|
.collect(Collectors.toSet()); |
|
|
|
|
|
|
|
blameEmpSet.addAll(leadEmpNos); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
// 查询警员信息
|
|
|
|
|
|
|
|
SupPoliceQueryParam policeQueryParam = new SupPoliceQueryParam(); |
|
|
|
|
|
|
|
policeQueryParam.setEmpNos(blameEmpSet); |
|
|
|
|
|
|
|
Map<String, SupPolice> policeMap = supPoliceResourceService.query(policeQueryParam); |
|
|
|
|
|
|
|
// orgId 集合
|
|
|
|
|
|
|
|
Set<String> orgIds = policeMap.values().stream() |
|
|
|
|
|
|
|
.map(SupPolice::getOrgId) |
|
|
|
|
|
|
|
.filter(Objects::nonNull) |
|
|
|
|
|
|
|
.collect(Collectors.toSet()); |
|
|
|
|
|
|
|
// 查询单位信息
|
|
|
|
|
|
|
|
SupDepartQueryParam departQueryParam = new SupDepartQueryParam(); |
|
|
|
|
|
|
|
departQueryParam.setIds(orgIds); |
|
|
|
|
|
|
|
List<SupDepart> supDepartList = supDepartResourceService.query(departQueryParam); |
|
|
|
|
|
|
|
// 构建 ID -> 单位映射
|
|
|
|
|
|
|
|
Map<String, SupDepart> idToEntityMap = supDepartList.stream() |
|
|
|
|
|
|
|
.filter(Objects::nonNull) |
|
|
|
|
|
|
|
.collect(Collectors.toMap(SupDepart::getId, Function.identity())); |
|
|
|
for (ComplaintCollectionAndBlameAddRequest.Blame blame : blames) { |
|
|
|
for (ComplaintCollectionAndBlameAddRequest.Blame blame : blames) { |
|
|
|
ComplaintCollectionBlame blameEntity = new ComplaintCollectionBlame(); |
|
|
|
ComplaintCollectionBlame blameEntity = new ComplaintCollectionBlame(); |
|
|
|
BeanUtil.copyProperties(blame, blameEntity); |
|
|
|
BeanUtil.copyProperties(blame, blameEntity); |
|
|
|
blameEntity.setBlameId(UUID.randomUUID().toString()); |
|
|
|
blameEntity.setBlameId(UUID.randomUUID().toString()); |
|
|
|
blameEntity.setComplaintId(request.getComplaintId()); |
|
|
|
blameEntity.setComplaintId(request.getComplaintId()); |
|
|
|
blameEntity.setBlameDepartId(request.getInvolveDepartId()); |
|
|
|
if (MapUtil.isNotEmpty(policeMap)) { |
|
|
|
blameEntity.setBlameDepartName(request.getInvolveDepartName()); |
|
|
|
SupPolice police = policeMap.get(blame.getBlameEmpNo()); |
|
|
|
|
|
|
|
if (police != null && StrUtil.isNotBlank(police.getOrgId())) { |
|
|
|
|
|
|
|
SupDepart depart = idToEntityMap.get(police.getOrgId()); |
|
|
|
|
|
|
|
blameEntity.setBlameDepartId(police.getOrgId()); |
|
|
|
|
|
|
|
blameEntity.setBlameDepartName(depart != null ? depart.getShortName() : null); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
blameEntity.setBlameDepartId(request.getInvolveDepartId()); |
|
|
|
|
|
|
|
blameEntity.setBlameDepartName(request.getInvolveDepartName()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
// 领导信息
|
|
|
|
// 领导信息
|
|
|
|
List<ComplaintCollectionAndBlameAddRequest.BlameLeader> leadList = request.getBlameLeaders().stream() |
|
|
|
List<ComplaintCollectionAndBlameAddRequest.BlameLeader> leadList = request.getBlameLeaders().stream() |
|
|
|
.filter(leader -> leader.getBlameIdCodes().contains(blame.getBlameIdCode())) |
|
|
|
.filter(leader -> leader.getBlameIdCodes().contains(blame.getBlameIdCode())) |
|
|
|
@ -237,6 +280,17 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic |
|
|
|
blameEntity.setLeadName(blameLeader.getLeadName()); |
|
|
|
blameEntity.setLeadName(blameLeader.getLeadName()); |
|
|
|
blameEntity.setLeadIdCode(blameLeader.getLeadIdCode()); |
|
|
|
blameEntity.setLeadIdCode(blameLeader.getLeadIdCode()); |
|
|
|
blameEntity.setLeadEmpNo(blameLeader.getLeadEmpNo()); |
|
|
|
blameEntity.setLeadEmpNo(blameLeader.getLeadEmpNo()); |
|
|
|
|
|
|
|
if (MapUtil.isNotEmpty(policeMap)) { |
|
|
|
|
|
|
|
SupPolice police = policeMap.get(blameLeader.getLeadEmpNo()); |
|
|
|
|
|
|
|
if (police != null && StrUtil.isNotBlank(police.getOrgId())) { |
|
|
|
|
|
|
|
SupDepart depart = idToEntityMap.get(police.getOrgId()); |
|
|
|
|
|
|
|
blameEntity.setLeadDepartId(police.getOrgId()); |
|
|
|
|
|
|
|
blameEntity.setLeadDepartName(depart != null ? depart.getShortName() : null); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
blameEntity.setLeadDepartId(request.getInvolveDepartId()); |
|
|
|
|
|
|
|
blameEntity.setLeadDepartName(request.getInvolveDepartName()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
blameEntity.setCreateBy(userName); |
|
|
|
blameEntity.setCreateBy(userName); |
|
|
|
blameEntity.setCreateTime(LocalDateTime.now()); |
|
|
|
blameEntity.setCreateTime(LocalDateTime.now()); |
|
|
|
@ -387,7 +441,6 @@ public class ComplaintCollectionServiceImpl implements ComplaintCollectionServic |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public Negative saveNegative(NegativeDto negativeDto) { |
|
|
|
public Negative saveNegative(NegativeDto negativeDto) { |
|
|
|
Negative negative = new Negative(); |
|
|
|
Negative negative = new Negative(); |
|
|
|
BeanUtil.copyProperties(negativeDto, negative); |
|
|
|
BeanUtil.copyProperties(negativeDto, negative); |
|
|
|
|