Browse Source

禁闭管理模块,对数据添加是否关联问题状态,如已关联问题,支持查看问题详情

master
buaixuexideshitongxue 2 weeks ago
parent
commit
07e28eb177
  1. 4
      src/main/java/com/biutag/supervision/pojo/vo/ConfinementVo.java
  2. 35
      src/main/java/com/biutag/supervision/service/ConfinementService.java

4
src/main/java/com/biutag/supervision/pojo/vo/ConfinementVo.java

@ -1,6 +1,7 @@
package com.biutag.supervision.pojo.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
@ -91,4 +92,7 @@ public class ConfinementVo {
private String roleId;
private String userId;
@Schema(description = "问题ID")
private String negativeId;
}

35
src/main/java/com/biutag/supervision/service/ConfinementService.java

@ -10,21 +10,25 @@ import com.biutag.supervision.constants.AppConstants;
import com.biutag.supervision.constants.enums.RoleCodeEnum;
import com.biutag.supervision.mapper.ConfinementMapper;
import com.biutag.supervision.pojo.entity.Confinement;
import com.biutag.supervision.pojo.entity.NegativeBlame;
import com.biutag.supervision.pojo.model.UserAuth;
import com.biutag.supervision.pojo.param.ConfinementQueryParam;
import com.biutag.supervision.pojo.param.negativeBlame.NegativeBlameConfinementQueryParam;
import com.biutag.supervision.pojo.vo.ConfinementExcelVo;
import com.biutag.supervision.pojo.vo.ConfinementVo;
import com.biutag.supervision.repository.negativeBlame.NegativeBlameResourceService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
@RequiredArgsConstructor
@Service
public class ConfinementService extends ServiceImpl<ConfinementMapper, Confinement> {
private final SupDepartService departService;
private final NegativeBlameResourceService negativeBlameResourceService;
public Page<ConfinementVo> page(ConfinementQueryParam param) {
QueryWrapper<Confinement> queryWrapper = new QueryWrapper<>();
@ -57,8 +61,31 @@ public class ConfinementService extends ServiceImpl<ConfinementMapper, Confineme
}
}
//todo 排序
return baseMapper.queryPage(Page.of(param.getCurrent(), param.getSize()), queryWrapper);
Page<ConfinementVo> confinementVoPage = baseMapper.queryPage(Page.of(param.getCurrent(), param.getSize()), queryWrapper);
List<ConfinementVo> records = confinementVoPage.getRecords();
if (CollectionUtils.isNotEmpty(records)){
// 所有的禁闭ID
Set<String> confinementIdList = records.stream().map(ConfinementVo::getId).collect(Collectors.toSet());
// 去negativeBlame中找negativeId
NegativeBlameConfinementQueryParam negativeBlameQueryParam = new NegativeBlameConfinementQueryParam();
negativeBlameQueryParam.setConfinementIds(confinementIdList);
negativeBlameQueryParam.setLeadConfinementIds(confinementIdList);
List<NegativeBlame> negativeBlames = negativeBlameResourceService.queryConfinement(negativeBlameQueryParam);
// confinementId --- negativeId
Map<String, String> negativeIdMap = new HashMap<>();
for (NegativeBlame nb : negativeBlames) {
if (StrUtil.isNotBlank(nb.getNegativeId())) {
if (StrUtil.isNotBlank(nb.getConfinementId())) {
negativeIdMap.putIfAbsent(nb.getConfinementId(), nb.getNegativeId());
}
if (StrUtil.isNotBlank(nb.getLeadConfinementId())) {
negativeIdMap.putIfAbsent(nb.getLeadConfinementId(), nb.getNegativeId());
}
}
}
records.forEach(one -> one.setNegativeId(negativeIdMap.get(one.getId())));
}
return confinementVoPage;
}

Loading…
Cancel
Save