From a6bc9e6c8262239cbc00b8df6c61457a5c32b449 Mon Sep 17 00:00:00 2001 From: buaixuexideshitongxue <2936013465@qq.com> Date: Thu, 26 Feb 2026 10:41:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=A1=E8=AE=A1=E9=A1=B9=E7=9B=AE=E7=9A=84?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E5=8A=9F=E8=83=BD--=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=AE=A1=E8=AE=A1=E7=B1=BB=E5=9E=8B=E5=90=8D=E7=A7=B0=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/data/DataAuditController.java | 14 +++++----- .../dto/dataAudit/DataAuditImportDto.java | 7 +++-- .../pojo/dto/dataAudit/DataAuditPageDTO.java | 3 +++ .../supervision/pojo/entity/DataAudit.java | 4 +++ .../dataAudit/DataAuditAddRequest.java | 7 +++++ .../dataAudit/DataAuditUpdateRequest.java | 8 +++++- .../dataAudit/DataAuditServiceImpl.java | 26 ++++++++++++++----- src/main/resources/mapper/DataAuditMapper.xml | 2 ++ 8 files changed, 54 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/biutag/supervision/controller/data/DataAuditController.java b/src/main/java/com/biutag/supervision/controller/data/DataAuditController.java index 8301323..2c43b62 100644 --- a/src/main/java/com/biutag/supervision/controller/data/DataAuditController.java +++ b/src/main/java/com/biutag/supervision/controller/data/DataAuditController.java @@ -1,9 +1,7 @@ package com.biutag.supervision.controller.data; import cn.hutool.core.io.FileUtil; -import cn.hutool.core.util.StrUtil; import com.alibaba.excel.EasyExcel; -import com.alibaba.excel.read.listener.ReadListener; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.biutag.supervision.pojo.Result; import com.biutag.supervision.pojo.dto.dataAudit.DataAuditImportDto; @@ -16,19 +14,18 @@ import com.biutag.supervision.service.dataAudit.DataAuditService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.servlet.http.HttpServletResponse; -import jakarta.validation.ConstraintViolation; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.io.IOException; +import java.math.BigDecimal; import java.net.URLEncoder; import java.nio.charset.StandardCharsets; +import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; -import java.util.Set; -import java.util.stream.Collectors; @Tag(name = "审计记录控制层", description = "审计记录管理") @Slf4j @@ -74,12 +71,13 @@ public class DataAuditController { List dataList = new ArrayList<>(); DataAuditImportDto example = new DataAuditImportDto(); - example.setAuditType("执法活动财物审计"); + example.setAuditTypeName("执法活动财物审计"); example.setProjectName("示例项目名称"); example.setSecondLevelDeptName("示例二级单位"); example.setThirdLevelDeptName("示例三级单位"); - example.setAuditAmount(null); - example.setIssueAmount(null); + example.setAuditTime(LocalDateTime.now()); + example.setAuditAmount(new BigDecimal("22")); + example.setIssueAmount(new BigDecimal("11")); dataList.add(example); EasyExcel.write(response.getOutputStream(), DataAuditImportDto.class) diff --git a/src/main/java/com/biutag/supervision/pojo/dto/dataAudit/DataAuditImportDto.java b/src/main/java/com/biutag/supervision/pojo/dto/dataAudit/DataAuditImportDto.java index 8e4e4b5..a07f6af 100644 --- a/src/main/java/com/biutag/supervision/pojo/dto/dataAudit/DataAuditImportDto.java +++ b/src/main/java/com/biutag/supervision/pojo/dto/dataAudit/DataAuditImportDto.java @@ -17,10 +17,13 @@ import java.time.LocalDateTime; @Getter public class DataAuditImportDto { - @ExcelProperty("审计类型") - @NotBlank(message = "审计类型不能为空") + @ExcelIgnore private String auditType; + @ExcelProperty("审计类型名称") + @NotBlank(message = "审计类型名称不能为空") + private String auditTypeName; + @ExcelProperty("项目名称") @NotBlank(message = "项目名称不能为空") private String projectName; diff --git a/src/main/java/com/biutag/supervision/pojo/dto/dataAudit/DataAuditPageDTO.java b/src/main/java/com/biutag/supervision/pojo/dto/dataAudit/DataAuditPageDTO.java index efc0f5b..22275d0 100644 --- a/src/main/java/com/biutag/supervision/pojo/dto/dataAudit/DataAuditPageDTO.java +++ b/src/main/java/com/biutag/supervision/pojo/dto/dataAudit/DataAuditPageDTO.java @@ -18,6 +18,9 @@ public class DataAuditPageDTO { @Schema(description = "审计类型") private String auditType; + @Schema(description = "审计类型名称") + private String auditTypeName; + @Schema(description = "项目名称") private String projectName; diff --git a/src/main/java/com/biutag/supervision/pojo/entity/DataAudit.java b/src/main/java/com/biutag/supervision/pojo/entity/DataAudit.java index e29c697..f04fe3e 100644 --- a/src/main/java/com/biutag/supervision/pojo/entity/DataAudit.java +++ b/src/main/java/com/biutag/supervision/pojo/entity/DataAudit.java @@ -22,6 +22,10 @@ public class DataAudit { @TableField("audit_type") private String auditType; + @Schema(description = "审计类型名称") + @TableField("audit_type_name") + private String auditTypeName; + @Schema(description = "被审计的项目名称") @TableField("project_name") private String projectName; diff --git a/src/main/java/com/biutag/supervision/pojo/request/dataAudit/DataAuditAddRequest.java b/src/main/java/com/biutag/supervision/pojo/request/dataAudit/DataAuditAddRequest.java index d3ad5bb..747799c 100644 --- a/src/main/java/com/biutag/supervision/pojo/request/dataAudit/DataAuditAddRequest.java +++ b/src/main/java/com/biutag/supervision/pojo/request/dataAudit/DataAuditAddRequest.java @@ -22,6 +22,10 @@ public class DataAuditAddRequest implements ParamChecked { @Schema(description = "审计类型") private String auditType; + + @Schema(description = "审计类型名称") + private String auditTypeName; + @Schema(description = "被审计的项目名称") private String projectName; @@ -61,6 +65,9 @@ public class DataAuditAddRequest implements ParamChecked { if (auditAmount == null) { throw new IllegalArgumentException("审计涉及金额不能为空"); } + if (secondLevelDeptId == null) { + throw new IllegalArgumentException("二级机构不能为空"); + } if (issueAmount == null) { issueAmount = BigDecimal.ZERO; } diff --git a/src/main/java/com/biutag/supervision/pojo/request/dataAudit/DataAuditUpdateRequest.java b/src/main/java/com/biutag/supervision/pojo/request/dataAudit/DataAuditUpdateRequest.java index 4765aa5..4be5f5a 100644 --- a/src/main/java/com/biutag/supervision/pojo/request/dataAudit/DataAuditUpdateRequest.java +++ b/src/main/java/com/biutag/supervision/pojo/request/dataAudit/DataAuditUpdateRequest.java @@ -17,9 +17,12 @@ public class DataAuditUpdateRequest implements ParamChecked { @Schema(description = "主键ID") private Long id; - @Schema(description = "审计类型(如财务审计、合规审计等)") + @Schema(description = "审计类型") private String auditType; + @Schema(description = "审计类型名称") + private String auditTypeName; + @Schema(description = "被审计的项目名称") private String projectName; @@ -61,5 +64,8 @@ public class DataAuditUpdateRequest implements ParamChecked { if (auditAmount == null) { throw new IllegalArgumentException("审计涉及金额不能为空"); } + if (secondLevelDeptId==null){ + throw new IllegalArgumentException("二级机构不能为空"); + } } } diff --git a/src/main/java/com/biutag/supervision/service/dataAudit/DataAuditServiceImpl.java b/src/main/java/com/biutag/supervision/service/dataAudit/DataAuditServiceImpl.java index 81db96a..a78c1bc 100644 --- a/src/main/java/com/biutag/supervision/service/dataAudit/DataAuditServiceImpl.java +++ b/src/main/java/com/biutag/supervision/service/dataAudit/DataAuditServiceImpl.java @@ -28,9 +28,7 @@ import org.springframework.transaction.annotation.Transactional; import java.io.InputStream; import java.time.LocalDateTime; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; +import java.util.*; @Slf4j @Service @@ -40,7 +38,12 @@ public class DataAuditServiceImpl implements DataAuditService { private final DataAuditResourceService dataAuditResourceService; private final SupDepartService supDepartService; private final SupDepartResourceService supDepartResourceService; - + Map auditMap = new HashMap<>(Map.of( + "政府投资审计", "27", + "执法活动财物审计", "28", + "经济责任审计", "29", + "专项审计", "30" + )); @Override public Result> getDataAuditPage(DataAuditPageRequest request) { DataAuditQueryParam param = new DataAuditQueryParam(); @@ -79,9 +82,12 @@ public class DataAuditServiceImpl implements DataAuditService { } if (ObjectUtil.isNotNull(request.getThirdLevelDeptId())){ SupDepart byId = supDepartService.getById(request.getThirdLevelDeptId()); - if (byId.getLevel()!=3){ + if (byId==null || byId.getLevel()!=3 ){ throw new IllegalArgumentException("请选择正确的三级单位"); } + if (!String.valueOf(request.getSecondLevelDeptId()).equals(byId.getPid())){ + throw new IllegalArgumentException("该三级单位非所属二级单位"); + } } DataAudit dataAudit = BeanUtil.copyProperties(request, DataAudit.class); dataAudit.setCreateBy(UserContextHolder.getCurrentUser().getUserName()); @@ -101,9 +107,12 @@ public class DataAuditServiceImpl implements DataAuditService { } if (ObjectUtil.isNotNull(request.getThirdLevelDeptId())){ SupDepart byId = supDepartService.getById(request.getThirdLevelDeptId()); - if (byId.getLevel()!=3){ + if (byId==null || byId.getLevel()!=3 ){ throw new IllegalArgumentException("请选择正确的三级单位"); } + if (!String.valueOf(request.getSecondLevelDeptId()).equals(byId.getPid())){ + throw new IllegalArgumentException("该三级单位非所属二级单位"); + } } DataAudit dataAudit = BeanUtil.copyProperties(request, DataAudit.class); dataAudit.setUpdateBy(UserContextHolder.getCurrentUser().getUserName()); @@ -134,6 +143,10 @@ public class DataAuditServiceImpl implements DataAuditService { EasyExcel.read(inputStream, DataAuditImportDto.class, new ReadListener() { @Override public void invoke(DataAuditImportDto data, com.alibaba.excel.context.AnalysisContext analysisContext) { + if (auditMap.get(data.getAuditTypeName().trim())==null){ + throw new IllegalArgumentException("不存在审计类型["+data.getAuditTypeName()+"]"); + } + data.setAuditType(auditMap.get(data.getAuditTypeName().trim())); if (StrUtil.isNotBlank(data.getSecondLevelDeptName())) { SupDepartQueryParam supDepartQueryParam = new SupDepartQueryParam(); supDepartQueryParam.setShortName(data.getSecondLevelDeptName()); @@ -179,6 +192,7 @@ public class DataAuditServiceImpl implements DataAuditService { .map(dto -> { DataAudit audit = new DataAudit(); audit.setAuditType(dto.getAuditType()); + audit.setAuditTypeName(dto.getAuditTypeName()); audit.setProjectName(dto.getProjectName()); audit.setSecondLevelDeptId(dto.getSecondLevelDeptId()); audit.setSecondLevelDeptName(dto.getSecondLevelDeptName()); diff --git a/src/main/resources/mapper/DataAuditMapper.xml b/src/main/resources/mapper/DataAuditMapper.xml index 134c8ae..6729554 100644 --- a/src/main/resources/mapper/DataAuditMapper.xml +++ b/src/main/resources/mapper/DataAuditMapper.xml @@ -7,6 +7,7 @@ INSERT INTO data_audit ( audit_type, + audit_type_name, project_name, second_level_dept_id, second_level_dept_name, @@ -25,6 +26,7 @@ ( #{item.auditType}, + #{item.auditTypeName}, #{item.projectName}, #{item.secondLevelDeptId}, #{item.secondLevelDeptName},