Browse Source

审计督察大屏中央数据

master
buaixuexideshitongxue 2 months ago
parent
commit
91d40f1c24
  1. 21
      src/main/java/com/biutag/supervision/controller/datav/DataVAuditController.java
  2. 12
      src/main/java/com/biutag/supervision/mapper/ReportProjectMapper.java
  3. 175
      src/main/java/com/biutag/supervision/pojo/entity/report/ReportProject.java
  4. 18
      src/main/java/com/biutag/supervision/pojo/vo/AuditOverview.java

21
src/main/java/com/biutag/supervision/controller/datav/DataVAuditController.java

@ -4,19 +4,25 @@ import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.biutag.supervision.constants.enums.ProblemSourcesEnum; import com.biutag.supervision.constants.enums.ProblemSourcesEnum;
import com.biutag.supervision.constants.enums.invest.DeleteStatusEnum;
import com.biutag.supervision.constants.enums.invest.ReportProjectNodeEnum;
import com.biutag.supervision.mapper.NegativeMapper; import com.biutag.supervision.mapper.NegativeMapper;
import com.biutag.supervision.mapper.ReportProjectMapper;
import com.biutag.supervision.pojo.Result; import com.biutag.supervision.pojo.Result;
import com.biutag.supervision.pojo.dto.common.PieItem; import com.biutag.supervision.pojo.dto.common.PieItem;
import com.biutag.supervision.pojo.entity.Negative; import com.biutag.supervision.pojo.entity.Negative;
import com.biutag.supervision.pojo.entity.NegativeBlame; import com.biutag.supervision.pojo.entity.NegativeBlame;
import com.biutag.supervision.pojo.entity.News; import com.biutag.supervision.pojo.entity.News;
import com.biutag.supervision.pojo.entity.report.ReportProject;
import com.biutag.supervision.pojo.vo.AuditNegativeVo; import com.biutag.supervision.pojo.vo.AuditNegativeVo;
import com.biutag.supervision.pojo.vo.AuditOverview; import com.biutag.supervision.pojo.vo.AuditOverview;
import com.biutag.supervision.pojo.vo.EchartsVo; import com.biutag.supervision.pojo.vo.EchartsVo;
import com.biutag.supervision.service.NegativeBlameService; import com.biutag.supervision.service.NegativeBlameService;
import com.biutag.supervision.service.NegativeService; import com.biutag.supervision.service.NegativeService;
import com.biutag.supervision.service.NewsService; import com.biutag.supervision.service.NewsService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
@ -24,9 +30,11 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.biutag.supervision.constants.WorkDynamicConstants.SJGZDT; import static com.biutag.supervision.constants.WorkDynamicConstants.SJGZDT;
@ -52,6 +60,10 @@ public class DataVAuditController {
private final NegativeBlameService negativeBlameService; private final NegativeBlameService negativeBlameService;
@Resource
private ReportProjectMapper reportProjectMapper;
@Operation(description = "审计督察一级大屏中央数字")
@GetMapping("/overview") @GetMapping("/overview")
public Result<AuditOverview> overview(@RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd") Date beginTime, public Result<AuditOverview> overview(@RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd") Date beginTime,
@RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime) { @RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd") Date endTime) {
@ -59,9 +71,18 @@ public class DataVAuditController {
.in(Negative::getProblemSourcesCode, List.of(ProblemSourcesEnum.ZFTZSJ.getValue(), ProblemSourcesEnum.ZFSACFSS.getValue(), ProblemSourcesEnum.JJZRSJ.getValue(), ProblemSourcesEnum.ZXSJ.getValue()))); .in(Negative::getProblemSourcesCode, List.of(ProblemSourcesEnum.ZFTZSJ.getValue(), ProblemSourcesEnum.ZFSACFSS.getValue(), ProblemSourcesEnum.JJZRSJ.getValue(), ProblemSourcesEnum.ZXSJ.getValue())));
long accountableNumber = negativeBlameService.count(new LambdaQueryWrapper<NegativeBlame>().in(NegativeBlame::getNegativeId, negatives.stream().map(Negative::getId).collect(Collectors.toSet())) long accountableNumber = negativeBlameService.count(new LambdaQueryWrapper<NegativeBlame>().in(NegativeBlame::getNegativeId, negatives.stream().map(Negative::getId).collect(Collectors.toSet()))
.ne(NegativeBlame::getHandleResultName, "不予追责")); .ne(NegativeBlame::getHandleResultName, "不予追责"));
LambdaQueryWrapper<ReportProject> projectLambdaQueryWrapper = new LambdaQueryWrapper<>();
projectLambdaQueryWrapper.eq(ReportProject::getNode, ReportProjectNodeEnum.END);
projectLambdaQueryWrapper.eq(ReportProject::getDeleteFlag, DeleteStatusEnum.NO.getCode());
List<ReportProject> reportProjects = reportProjectMapper.selectList(projectLambdaQueryWrapper);
BigDecimal totalReportMoney = reportProjects.stream().map(ReportProject::getReportMoney).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
BigDecimal totalArchivingReduceMoney = reportProjects.stream().map(ReportProject::getArchivingReduceMoney).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
AuditOverview overview = new AuditOverview(); AuditOverview overview = new AuditOverview();
overview.setNegativeNumber(negatives.size()); overview.setNegativeNumber(negatives.size());
overview.setAccountableNumber(accountableNumber); overview.setAccountableNumber(accountableNumber);
overview.setProjectNumber(new BigDecimal(reportProjects.size()));
overview.setAuditAmount(totalReportMoney);
overview.setAuditSjAmount(totalArchivingReduceMoney);
return Result.success(overview); return Result.success(overview);
} }

12
src/main/java/com/biutag/supervision/mapper/ReportProjectMapper.java

@ -0,0 +1,12 @@
package com.biutag.supervision.mapper;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.biutag.supervision.pojo.entity.report.ReportProject;
@DS("invest")
public interface ReportProjectMapper extends BaseMapper<ReportProject> {
}

175
src/main/java/com/biutag/supervision/pojo/entity/report/ReportProject.java

@ -0,0 +1,175 @@
package com.biutag.supervision.pojo.entity.report;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.biutag.supervision.constants.AppConstants;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
//报审项目
@Getter
@Setter
@TableName("report_project")
@Schema(description="项目基本内容--报审项目内容")
public class ReportProject {
@TableId
private String id;
//报审类型
@TableField("report_type")
private String reportType;
//项目名称
@TableField("report_name")
private String reportName;
//项目类别
@TableField("project_type")
private String projectType;
//审计单位id
@TableField("audit_unit_id")
private String auditUnitId;
//审计单位
@TableField("audit_unit")
private String auditUnit;
//项目单位id
@TableField("project_unit_id")
private String projectUnitId;
//项目单位
@TableField("project_unit")
private String projectUnit;
//项目负责人
@TableField("project_principal")
private String projectPrincipal;
//负责人联系方式
@TableField("project_phone")
private String projectPhone;
//采购方式
@TableField("purchase_method")
private String purchaseMethod;
//报审金额
@TableField("report_money")
private BigDecimal reportMoney;
//立项金额
@TableField("project_approval_money")
private BigDecimal projectApprovalMoney;
//立项审批领导
@TableField("project_approval_lead")
private String projectApprovalLead;
//报审人
@TableField("applicant")
private String applicant;
//报审人id
@TableField("applicant_id")
private String applicantId;
//报审日期
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@TableField("applicant_time")
private LocalDateTime applicantTime;
//立项日期
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@TableField("project_approval_time")
private LocalDateTime projectApprovalTime;
//申报政府采购日期
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@TableField("apply_government_time")
private LocalDateTime applyGovernmentTime;
//采购方式
@TableField("purchase_type")
private String purchaseType;
//采购日期
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@TableField("purchase_time")
private LocalDateTime purchaseTime;
//合同签订日期
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@TableField("contract_time")
private LocalDateTime contractTime;
//合同金额
@TableField("contract_mount")
private BigDecimal contractMount;
//服务单位
@TableField("service_unit")
private String serviceUnit;
//服务单位负责人
@TableField("service_unit_manager")
private String serviceUnitManager;
@TableField(exist = false)
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private List<LocalDateTime> serviceTime;
//服务日期(开始)
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@TableField("service_start_time")
private LocalDateTime serviceStartTime;
//服务日期(结束)
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@TableField("service_end_time")
private LocalDateTime serviceEndTime;
//服务单位联系电话
@TableField("service_unit_phone")
private String serviceUnitPhone;
//文号
@TableField("reference_number")
private String referenceNumber;
//发文日期
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@TableField("publication_date")
private LocalDateTime publicationDate;
@TableField("node")
private String node;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@TableField("crt_time")
private LocalDateTime crtTime;
//(归档时间)
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@TableField("archiving")
private LocalDateTime archiving;
//审定金额(归档)
@TableField("archiving_money")
private BigDecimal archivingMoney;
//审减金额(归档)
@TableField("archiving_reduce_money")
private BigDecimal archivingReduceMoney;
@TableField("warning_state")
private String warningState;
//是否退窗
@TableField("is_recessed")
private int isRecessed;
/**
* @see AppConstants
*/
@Schema(description = "是否逻辑删除:0-未删除,1-已删除")
@TableLogic(value = AppConstants.UN_DEL, delval = AppConstants.DEL)
@TableField("delete_flag")
private Integer deleteFlag;
@TableField("delete_reason")
@Schema(description = "删除原因")
private String deleteReason;
}

18
src/main/java/com/biutag/supervision/pojo/vo/AuditOverview.java

@ -1,14 +1,18 @@
package com.biutag.supervision.pojo.vo; package com.biutag.supervision.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import java.math.BigDecimal;
/** /**
* @author wxc * @author wxc
* @date 2025/4/24 * @date 2025/4/24
*/ */
@Setter @Setter
@Getter @Getter
@Schema(description = "审计督察中央数字数据VO")
public class AuditOverview { public class AuditOverview {
// 查出问题数 // 查出问题数
@ -16,4 +20,18 @@ public class AuditOverview {
// 追责问责数 // 追责问责数
private Long accountableNumber; private Long accountableNumber;
@Schema(description = "审计单位/项目")
private BigDecimal projectNumber;
@Schema(description = "审计总金额")
private BigDecimal auditAmount;
@Schema(description = "审减金额")
private BigDecimal auditSjAmount;
} }

Loading…
Cancel
Save