diff --git a/src/main/java/com/biutag/supervision/constants/enums/ProblemSourcesEnum.java b/src/main/java/com/biutag/supervision/constants/enums/ProblemSourcesEnum.java index 2b12d0e..45b0153 100644 --- a/src/main/java/com/biutag/supervision/constants/enums/ProblemSourcesEnum.java +++ b/src/main/java/com/biutag/supervision/constants/enums/ProblemSourcesEnum.java @@ -6,6 +6,7 @@ import lombok.Getter; @Getter @AllArgsConstructor public enum ProblemSourcesEnum { + XCDC("现场督察", "13"), LMGZ("灵敏感知", "14"), ZXDC("专项督察", "15"), diff --git a/src/main/java/com/biutag/supervision/controller/books/NegativeBookController.java b/src/main/java/com/biutag/supervision/controller/books/NegativeBookController.java index 2d5ebf3..34a3039 100644 --- a/src/main/java/com/biutag/supervision/controller/books/NegativeBookController.java +++ b/src/main/java/com/biutag/supervision/controller/books/NegativeBookController.java @@ -3,14 +3,18 @@ package com.biutag.supervision.controller.books; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.biutag.supervision.constants.enums.DepartLevelEnum; import com.biutag.supervision.constants.enums.ProblemSourcesEnum; import com.biutag.supervision.constants.enums.SpecialSupervisionEnum; +import com.biutag.supervision.mapper.DataPetitionComplaintMapper; import com.biutag.supervision.pojo.Result; +import com.biutag.supervision.pojo.entity.DataPetitionComplaint; import com.biutag.supervision.pojo.entity.Negative; import com.biutag.supervision.pojo.entity.NegativeBlame; import com.biutag.supervision.pojo.param.NegativeQueryParam; +import com.biutag.supervision.pojo.vo.DataPetitionComplaintNegativeVo; import com.biutag.supervision.pojo.vo.DepartTree; import com.biutag.supervision.pojo.vo.NegativeHdjq; import com.biutag.supervision.service.NegativeBlameService; @@ -19,6 +23,7 @@ import com.biutag.supervision.service.SupDepartService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -43,6 +48,8 @@ public class NegativeBookController { private final SupDepartService departService; + private final DataPetitionComplaintMapper dataPetitionComplaintMapper; + @GetMapping("hdjq") public Result> page(NegativeQueryParam param) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); @@ -50,6 +57,7 @@ public class NegativeBookController { .eq(Negative::getSpecialSupervision, SpecialSupervisionEnum.HDJQ.getValue()) .in(!param.getProcessingStatus().isEmpty(), Negative::getProcessingStatus, param.getProcessingStatus()) .like(StrUtil.isNotBlank(param.getThingDesc()), Negative::getThingDesc, param.getThingDesc()) + .like(StrUtil.isNotBlank(param.getCheckStatusDesc()), Negative::getCheckStatusDesc, param.getCheckStatusDesc()) .like(StrUtil.isNotBlank(param.getReportNumber()), Negative::getReportNumber, param.getReportNumber()) .eq(Objects.nonNull(param.getCrtDepartLevel()), Negative::getCrtDepartLevel, param.getCrtDepartLevel()) .orderByDesc(Negative::getDiscoveryTime) @@ -100,4 +108,110 @@ public class NegativeBookController { return Result.success(new Page().setTotal(page.getTotal()).setRecords(list)); } + @GetMapping("xcdc") + public Result> pageByXcdc(NegativeQueryParam param) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(Negative::getProblemSourcesCode, ProblemSourcesEnum.XCDC.getValue()) + .in(!param.getProcessingStatus().isEmpty(), Negative::getProcessingStatus, param.getProcessingStatus()) + .like(StrUtil.isNotBlank(param.getThingDesc()), Negative::getThingDesc, param.getThingDesc()) + .like(StrUtil.isNotBlank(param.getCheckStatusDesc()), Negative::getCheckStatusDesc, param.getCheckStatusDesc()) + .eq(Objects.nonNull(param.getCrtDepartLevel()), Negative::getCrtDepartLevel, param.getCrtDepartLevel()) + .orderByDesc(Negative::getDiscoveryTime); + if (param.getDiscoveryTime().size() == 2) { + queryWrapper.between(Negative::getDiscoveryTime, param.getDiscoveryTime().get(0), param.getDiscoveryTime().get(1)); + } + // 涉及单位 + if (StrUtil.isNotBlank(param.getInvolveDepartId())) { + List departIds = departService.getAllNodeIds(param.getInvolveDepartId()); + queryWrapper.in(Negative::getInvolveDepartId, departIds); + } + // 办理单位 + if (StrUtil.isNotBlank(param.getHandleDepartId())) { + List nodes = departService.getAllNode(List.of(param.getHandleDepartId())); + List secondIds = nodes.stream().filter(node -> DepartLevelEnum.SECOND.getValue().equals(node.getLevel())).map(DepartTree::getId).toList(); + if (!secondIds.isEmpty()) { + queryWrapper.in(Negative::getHandleSecondDepartId, secondIds); + } else { + queryWrapper.in(Negative::getHandleThreeDepartId, nodes.stream().filter(node -> DepartLevelEnum.THREE.getValue().equals(node.getLevel())).map(DepartTree::getId).toList()); + } + } + if (StrUtil.isNotBlank(param.getBlameKey()) && StrUtil.isNotBlank(param.getBlameValue())) { + LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); + switch (param.getResponderKey()) { + case "name": + qw.like(NegativeBlame::getBlameName, param.getBlameValue()); + break; + case "empNo": + qw.like(NegativeBlame::getBlameEmpNo, param.getBlameValue()); + break; + case "idCode": + qw.like(NegativeBlame::getBlameIdCode, param.getBlameValue()); + break; + } + List blames = blameService.list(qw); + if (blames.isEmpty()) { + return Result.success(new Page().setTotal(0).setRecords(new ArrayList<>())); + } + queryWrapper.in(Negative::getId, blames.stream().map(NegativeBlame::getNegativeId).collect(Collectors.toSet())); + } + Page page = negativeService.page(Page.of(param.getCurrent(), param.getSize()), queryWrapper); + List list = page.getRecords().stream().map(item -> { + NegativeHdjq negativeHdjq = new NegativeHdjq(); + BeanUtil.copyProperties(item, negativeHdjq); + return negativeHdjq; + }).toList(); + return Result.success(new Page().setTotal(page.getTotal()).setRecords(list)); + } + + @GetMapping("ajhc") + public Result> pageByAjhc(NegativeQueryParam param) { + return Result.success(); + } + + @GetMapping("xf/{problemSourcesCode}") + public Result> pageByGabxf(@PathVariable String problemSourcesCode, NegativeQueryParam param) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("pc.problem_sources_code", problemSourcesCode) + .in(!param.getProcessingStatus().isEmpty(), "n.Processing_Status", param.getProcessingStatus()) + .like(StrUtil.isNotBlank(param.getThingDesc()), "pc.Thing_Desc", param.getThingDesc()) + .like(StrUtil.isNotBlank(param.getCheckStatusDesc()), "n.checkStatusDesc", param.getCheckStatusDesc()) + .like(StrUtil.isNotBlank(param.getInitialPetition()), "pc.Initial_Petition", param.getInitialPetition()); + // 涉及单位 + if (StrUtil.isNotBlank(param.getInvolveDepartId())) { + List departIds = departService.getAllNodeIds(param.getInvolveDepartId()); + queryWrapper.in("n.involveDepartId", departIds); + } + // 办理单位 + if (StrUtil.isNotBlank(param.getHandleDepartId())) { + List nodes = departService.getAllNode(List.of(param.getHandleDepartId())); + List secondIds = nodes.stream().filter(node -> DepartLevelEnum.SECOND.getValue().equals(node.getLevel())).map(DepartTree::getId).toList(); + if (!secondIds.isEmpty()) { + queryWrapper.in("n.Handle_second_depart_id", secondIds); + } else { + queryWrapper.in("n.Handle_three_depart_Id", nodes.stream().filter(node -> DepartLevelEnum.THREE.getValue().equals(node.getLevel())).map(DepartTree::getId).toList()); + } + } + if (StrUtil.isNotBlank(param.getBlameKey()) && StrUtil.isNotBlank(param.getBlameValue())) { + LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); + switch (param.getResponderKey()) { + case "name": + qw.like(NegativeBlame::getBlameName, param.getBlameValue()); + break; + case "empNo": + qw.like(NegativeBlame::getBlameEmpNo, param.getBlameValue()); + break; + case "idCode": + qw.like(NegativeBlame::getBlameIdCode, param.getBlameValue()); + break; + } + List blames = blameService.list(qw); + if (blames.isEmpty()) { + return Result.success(new Page().setTotal(0).setRecords(new ArrayList<>())); + } + queryWrapper.in("n.id", blames.stream().map(NegativeBlame::getNegativeId).collect(Collectors.toSet())); + } + Page page = dataPetitionComplaintMapper.queryBooks(Page.of(param.getCurrent(), param.getSize()), queryWrapper); + return Result.success(page); + } + } diff --git a/src/main/java/com/biutag/supervision/controller/sensitiveperception/ScoreController.java b/src/main/java/com/biutag/supervision/controller/sensitiveperception/ScoreController.java index 3216086..ad4ad04 100644 --- a/src/main/java/com/biutag/supervision/controller/sensitiveperception/ScoreController.java +++ b/src/main/java/com/biutag/supervision/controller/sensitiveperception/ScoreController.java @@ -93,38 +93,47 @@ public class ScoreController { if (Objects.isNull(size)) { size = 1000000; } + try { + updateDepartScore(); + } catch (Exception e) { + log.error(e.getMessage(), e); + } List riskPersonals = riskPersonalService.page(Page.of(1, size), new LambdaQueryWrapper().eq(RiskPersonal::getDel, AppConstants.UN_DEL) ).getRecords(); log.info("{}条数据正在打分", riskPersonals.size()); List rules1 = riskScoreRuleService.list(new LambdaQueryWrapper().eq(RiskScoreRule::getLevel, 1)); - riskPersonals.forEach(personal -> { - log.info("{}-{} 开始打分--------------------------------------", personal.getName(), personal.getIdCode()); - double riskScore = rules1.stream().mapToDouble(rule -> { - List rules2 = riskScoreRuleService.list(new LambdaQueryWrapper().eq(RiskScoreRule::getPid, rule.getId()) - .eq(RiskScoreRule::getLevel, 2)); - double score2 = rules2.stream().mapToDouble(rule2 -> { - Model model = modelService.getOne(new LambdaQueryWrapper().eq(Model::getRiskScoreRuleId, rule2.getId())); - if (Objects.isNull(model)) { - log.info("{} 分值 = {}", rule.getRiskName(), 0); - return 0; - } - double score3 = riskModelTaskClueService.list(new LambdaQueryWrapper() - .eq(RiskModelTaskClue::getModelId, model.getId()) - .eq(RiskModelTaskClue::getIdCode, personal.getIdCode()) - .eq(RiskModelTaskClue::getDel, AppConstants.UN_DEL)) - .stream().mapToDouble(RiskModelTaskClue::getScore).sum(); - score3 = Math.min(rule2.getScore(), score3); - log.info("{} 分值 = {}", rule2.getRiskName(), score3); - return score3; + try { + riskPersonals.forEach(personal -> { + log.info("{}-{} 开始打分--------------------------------------", personal.getName(), personal.getIdCode()); + double riskScore = rules1.stream().mapToDouble(rule -> { + List rules2 = riskScoreRuleService.list(new LambdaQueryWrapper().eq(RiskScoreRule::getPid, rule.getId()) + .eq(RiskScoreRule::getLevel, 2)); + double score2 = rules2.stream().mapToDouble(rule2 -> { + Model model = modelService.getOne(new LambdaQueryWrapper().eq(Model::getRiskScoreRuleId, rule2.getId())); + if (Objects.isNull(model)) { + log.info("{} 分值 = {}", rule.getRiskName(), 0); + return 0; + } + double score3 = riskModelTaskClueService.list(new LambdaQueryWrapper() + .eq(RiskModelTaskClue::getModelId, model.getId()) + .eq(RiskModelTaskClue::getIdCode, personal.getIdCode()) + .eq(RiskModelTaskClue::getDel, AppConstants.UN_DEL)) + .stream().mapToDouble(RiskModelTaskClue::getScore).sum(); + score3 = Math.min(rule2.getScore(), score3); + log.info("{} 分值 = {}", rule2.getRiskName(), score3); + return score3; + }).sum(); + log.info("{} 分值 = {}", rule.getRiskName(), score2); + return score2 / rule.getScore() * rule.getWeight(); }).sum(); - log.info("{} 分值 = {}", rule.getRiskName(), score2); - return score2 / rule.getScore() * rule.getWeight(); - }).sum(); - riskScore = NumberUtil.round(riskScore, 2).doubleValue(); - log.info("{}-{}的 分值 = {}", personal.getName(), personal.getIdCode(), riskScore); - riskPersonalService.update(new LambdaUpdateWrapper().eq(RiskPersonal::getIdCode, personal.getIdCode()).set(RiskPersonal::getRiskScore, riskScore)); - }); - updateDepartScore(); + riskScore = NumberUtil.round(riskScore, 2).doubleValue(); + log.info("{}-{}的 分值 = {}", personal.getName(), personal.getIdCode(), riskScore); + riskPersonalService.update(new LambdaUpdateWrapper().eq(RiskPersonal::getIdCode, personal.getIdCode()).set(RiskPersonal::getRiskScore, riskScore)); + }); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + return Result.success("success"); } diff --git a/src/main/java/com/biutag/supervision/controller/work/NegativeTaskController.java b/src/main/java/com/biutag/supervision/controller/work/NegativeTaskController.java index 0d256b9..900dcf4 100644 --- a/src/main/java/com/biutag/supervision/controller/work/NegativeTaskController.java +++ b/src/main/java/com/biutag/supervision/controller/work/NegativeTaskController.java @@ -14,6 +14,7 @@ import com.biutag.supervision.constants.enums.DepartLevelEnum; import com.biutag.supervision.constants.enums.PoliceTypeEnum; import com.biutag.supervision.constants.enums.ProblemSourcesEnum; import com.biutag.supervision.pojo.Result; +import com.biutag.supervision.pojo.dto.NegativeImportDistributeDto; import com.biutag.supervision.pojo.dto.NegativeImportDto; import com.biutag.supervision.pojo.entity.NegativeTask; import com.biutag.supervision.pojo.entity.SupDepart; @@ -75,14 +76,16 @@ public class NegativeTaskController { List list = new ArrayList<>(); List suspectProblem = dictDataService.listByDictType("suspectProblem"); + List specialSupervision = dictDataService.listByDictType("specialSupervision"); ExcelReader excelReader = EasyExcel.read(file.getInputStream(), NegativeImportDto.class, new ReadListener() { @Override public void invoke(NegativeImportDto data, AnalysisContext analysisContext) { + Set> validate = validator.validate(data); if (!validate.isEmpty()) { String message = validate.stream().map(ConstraintViolation::getMessage).collect(Collectors.joining("\n")); - throw new RuntimeException(message); + throw new RuntimeException(String.format("第 %s 条数据:%s", list.size() + 1, message)); } if (StrUtil.isNotBlank(data.getProblemSources())) { ProblemSourcesEnum problemSourcesEnum = ProblemSourcesEnum.getByLabel(data.getProblemSources()); @@ -118,7 +121,7 @@ public class NegativeTaskController { if (departNames.length > 1) { List threeDeparts = departService.list(new LambdaQueryWrapper() .eq(SupDepart::getPid, departs.get(0).getId()) - .eq(SupDepart::getShortName, departNames[0])); + .eq(SupDepart::getShortName, departNames[1])); if (!threeDeparts.isEmpty()) { data.setInvolveDepartId(threeDeparts.get(0).getId()); data.setInvolveDepartName(threeDeparts.get(0).getShortName()); @@ -128,7 +131,10 @@ public class NegativeTaskController { data.setInvolveDepartName(departs.get(0).getShortName()); } } - + } + if (StrUtil.isNotBlank(data.getSpecialSupervisionName())) { + String dictVal = specialSupervision.stream().filter(item -> data.getSpecialSupervisionName().equals(item.getDictLabel())).map(SupDictData::getDictValue).findFirst().orElse(null); + data.setSpecialSupervision(dictVal); } list.add(data); } @@ -142,4 +148,9 @@ public class NegativeTaskController { return Result.success(list); } + @PostMapping("distribute") + public Result distribute(@RequestBody NegativeImportDistributeDto distributeData) { + return Result.success(negativeTaskService.distribution(distributeData)); + } + } diff --git a/src/main/java/com/biutag/supervision/mapper/DataPetitionComplaintMapper.java b/src/main/java/com/biutag/supervision/mapper/DataPetitionComplaintMapper.java index a51f2af..61c04a7 100644 --- a/src/main/java/com/biutag/supervision/mapper/DataPetitionComplaintMapper.java +++ b/src/main/java/com/biutag/supervision/mapper/DataPetitionComplaintMapper.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.biutag.supervision.pojo.dto.CaseVerifDepart; +import com.biutag.supervision.pojo.vo.DataPetitionComplaintNegativeVo; import com.biutag.supervision.pojo.entity.DataPetitionComplaint; import com.biutag.supervision.pojo.vo.*; import org.apache.ibatis.annotations.Param; @@ -347,4 +348,7 @@ public interface DataPetitionComplaintMapper extends BaseMapper queryBooks(@Param("page") Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); + } diff --git a/src/main/java/com/biutag/supervision/pojo/dto/NegativeDto.java b/src/main/java/com/biutag/supervision/pojo/dto/NegativeDto.java index 1c2d765..11cffdd 100644 --- a/src/main/java/com/biutag/supervision/pojo/dto/NegativeDto.java +++ b/src/main/java/com/biutag/supervision/pojo/dto/NegativeDto.java @@ -107,4 +107,6 @@ public class NegativeDto { // 通报期数 private String reportNumber; + private String taskId; + } diff --git a/src/main/java/com/biutag/supervision/pojo/dto/NegativeImportDistributeDto.java b/src/main/java/com/biutag/supervision/pojo/dto/NegativeImportDistributeDto.java new file mode 100644 index 0000000..d73995a --- /dev/null +++ b/src/main/java/com/biutag/supervision/pojo/dto/NegativeImportDistributeDto.java @@ -0,0 +1,42 @@ +package com.biutag.supervision.pojo.dto; + +import com.biutag.supervision.pojo.vo.FileVo; +import jakarta.validation.constraints.NotBlank; +import lombok.Getter; +import lombok.Setter; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author wxc + * @date 2024/12/27 + */ +@Setter +@Getter +public class NegativeImportDistributeDto { + + private List data = new ArrayList<>(); + + private String taskName; + + // 办理时限 + @NotBlank + private String timeLimit; + + // 最大签收时长(天) + private Integer maxSignDuration; + + // 最大办理时长(天) + private Integer maxHandleDuration; + + // 最大延期时长(天) + private Integer maxExtensionDuration; + + // 审批流程 + @NotBlank + private String approvalFlow; + + + private List thingFiles = new ArrayList<>(); +} diff --git a/src/main/java/com/biutag/supervision/pojo/dto/NegativeImportDto.java b/src/main/java/com/biutag/supervision/pojo/dto/NegativeImportDto.java index 1eb897c..436405f 100644 --- a/src/main/java/com/biutag/supervision/pojo/dto/NegativeImportDto.java +++ b/src/main/java/com/biutag/supervision/pojo/dto/NegativeImportDto.java @@ -16,13 +16,12 @@ import java.util.List; public class NegativeImportDto { // 问题发现时间 + @NotNull(message = "问题发现时间不能为空") @ExcelProperty("问题发现时间") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm") private LocalDateTime discoveryTime; - @ExcelProperty("问题发生时间") - @NotNull(message = "问题发生时间不能为空") @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm") private LocalDateTime happenTime; @@ -73,7 +72,6 @@ public class NegativeImportDto { // 涉及案件/警情编号 @ExcelProperty("案件/警情编号") - @NotBlank(message = "案件/警情编号不能为空") private String caseNumber; // 专项督察 diff --git a/src/main/java/com/biutag/supervision/pojo/param/NegativeQueryParam.java b/src/main/java/com/biutag/supervision/pojo/param/NegativeQueryParam.java index ba7c0c4..0f3e279 100644 --- a/src/main/java/com/biutag/supervision/pojo/param/NegativeQueryParam.java +++ b/src/main/java/com/biutag/supervision/pojo/param/NegativeQueryParam.java @@ -76,4 +76,8 @@ public class NegativeQueryParam extends BasePage { private String caseNumber; + private String checkStatusDesc; + + private String initialPetition; + } diff --git a/src/main/java/com/biutag/supervision/pojo/vo/DataPetitionComplaintNegativeVo.java b/src/main/java/com/biutag/supervision/pojo/vo/DataPetitionComplaintNegativeVo.java new file mode 100644 index 0000000..b4cf1c4 --- /dev/null +++ b/src/main/java/com/biutag/supervision/pojo/vo/DataPetitionComplaintNegativeVo.java @@ -0,0 +1,90 @@ +package com.biutag.supervision.pojo.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Getter; +import lombok.Setter; + +import java.time.LocalDateTime; + +/** + * @author wxc + * @date 2024/12/27 + */ +@Setter +@Getter +public class DataPetitionComplaintNegativeVo { + + private String id; + + // 投诉渠道 + private String channelForFilingComplaints; + + // 受理层级 + private String acceptanceLevel; + + // 登记时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm") + private LocalDateTime discoveryTime; + + // 投诉人 + private String responderName; + + // 投诉人电话 + private String responderPhone; + + // 初重信访 + private String initialPetition; + + // 缠访闹访 + private Boolean entanglementVisits; + + // 群众集访 + private Boolean massVisits; + + // 涉嫌问题 + private String involveProblem; + + // 业务类别 + private String businessTypeName; + + // 涉及警种名称 + private String policeTypeName; + + // 具体内容 + private String thingDesc; + + + //--------------------- + + // 涉及单位 二级 + private String secondDepartId; + + private String secondDepartName; + + // 所对 + private String thirdDepartId; + + private String thirdDepartName; + + + private LocalDateTime createTime; + + private LocalDateTime updateTime; + + // 来源 + private String problemSourcesCode; + + // 分发状态 + private String distributionState; + + // 问题核查情况 + private String checkStatusDesc; + + private String processingStatus; + + private String handleSecondDepartName; + + private String handleThreeDepartName; + + private String involveDepartName; +} diff --git a/src/main/java/com/biutag/supervision/pojo/vo/NegativeHdjq.java b/src/main/java/com/biutag/supervision/pojo/vo/NegativeHdjq.java index 2a466b6..74a2df5 100644 --- a/src/main/java/com/biutag/supervision/pojo/vo/NegativeHdjq.java +++ b/src/main/java/com/biutag/supervision/pojo/vo/NegativeHdjq.java @@ -1,5 +1,6 @@ package com.biutag.supervision.pojo.vo; +import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Getter; import lombok.Setter; @@ -54,4 +55,9 @@ public class NegativeHdjq { // 办理状态 private String processingStatus; + + private String checkStatus; + + // 核查情况 + private String checkStatusName; } diff --git a/src/main/java/com/biutag/supervision/service/NegativeTaskService.java b/src/main/java/com/biutag/supervision/service/NegativeTaskService.java index d88568c..5d021bd 100644 --- a/src/main/java/com/biutag/supervision/service/NegativeTaskService.java +++ b/src/main/java/com/biutag/supervision/service/NegativeTaskService.java @@ -1,5 +1,6 @@ package com.biutag.supervision.service; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.excel.EasyExcel; @@ -8,11 +9,13 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.biutag.supervision.common.UserContextHolder; -import com.biutag.supervision.constants.enums.NegativeTaskCategoryEnum; -import com.biutag.supervision.constants.enums.NegativeTaskStatusEnum; -import com.biutag.supervision.constants.enums.ProcessingStatusEnum; +import com.biutag.supervision.constants.enums.*; import com.biutag.supervision.mapper.NegativeTaskMapper; +import com.biutag.supervision.pojo.dto.*; +import com.biutag.supervision.pojo.entity.DataPetition12337; import com.biutag.supervision.pojo.entity.NegativeTask; +import com.biutag.supervision.pojo.entity.SupDepart; +import com.biutag.supervision.pojo.model.UserAuth; import com.biutag.supervision.pojo.param.NegativeTaskQueryParam; import com.biutag.supervision.pojo.vo.ExportNegativeVo; import com.biutag.supervision.pojo.vo.NegativeQueryVo; @@ -22,12 +25,14 @@ import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.GetMapping; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.time.LocalDate; import java.time.LocalDateTime; +import java.time.ZoneId; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; @@ -38,6 +43,10 @@ public class NegativeTaskService extends ServiceImpl page(NegativeTaskQueryParam param) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper() .eq(NegativeTask::getCategory, NegativeTaskCategoryEnum.EXPORT.getValue()) @@ -100,4 +109,44 @@ public class NegativeTaskService extends ServiceImpl data = distributeData.getData(); + NegativeTask negativeTask = new NegativeTask(); + negativeTask.setId(IdUtil.getSnowflakeNextIdStr()); + negativeTask.setTaskName(distributeData.getTaskName()); + negativeTask.setImportRow(data.size()); + negativeTask.setCrtTime(LocalDateTime.now()); + negativeTask.setSource("标准模板"); + UserAuth user = UserContextHolder.getCurrentUser(); + negativeTask.setCrtUser(user.getNickName()); + save(negativeTask); + data.forEach(item -> { + NegativeDto negativeDto = new NegativeDto(); + BeanUtil.copyProperties(item, negativeDto); + negativeDto.setThingFiles(distributeData.getThingFiles()); + + SupDepart depart = departService.getById(item.getInvolveDepartId()); + + negativeDto.setDepartId(item.getInvolveDepartId()); + negativeDto.setDepartName(depart.getShortName()); + + negativeDto.setHostLevel(HostLevelEnums.SECOND.getValue()); + negativeDto.setApprovalFlow(distributeData.getApprovalFlow()); // 审批流程 + negativeDto.setTimeLimit(distributeData.getTimeLimit()); // 办理时限 + negativeDto.setMaxSignDuration(distributeData.getMaxSignDuration()); + negativeDto.setMaxHandleDuration(distributeData.getMaxHandleDuration()); + negativeDto.setMaxExtensionDuration(distributeData.getMaxExtensionDuration()); + negativeDto.setTaskId(negativeTask.getId()); + negativeService.save(negativeDto); + }); + return true; + } + } diff --git a/src/main/resources/mapper/DataPetitionComplaintMapper.xml b/src/main/resources/mapper/DataPetitionComplaintMapper.xml index a341e0e..a104744 100644 --- a/src/main/resources/mapper/DataPetitionComplaintMapper.xml +++ b/src/main/resources/mapper/DataPetitionComplaintMapper.xml @@ -13,4 +13,14 @@ ${ew.getCustomSqlSegment} + + +