Ver Fonte

add: 违规审核-科室事中审查列表

Scott há 2 anos atrás
pai
commit
329f5e9d28
14 ficheiros alterados com 210 adições e 5 exclusões
  1. 4 0
      jeecg-boot-base-core/src/main/java/org/jeecg/common/api/vo/Result.java
  2. 3 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/bo/mid/request/AuditMidDetailListRequest.java
  3. 39 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/bo/mid/response/MidAuditViolateProjectStatisticsResponse.java
  4. 53 1
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/ViolationAnalysisController.java
  5. 4 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/MidIncidentAuditDetailMapper.java
  6. 2 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/MidIncidentAuditMapper.java
  7. 29 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/xml/MidIncidentAuditDetailMapper.xml
  8. 38 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/xml/MidIncidentAuditMapper.xml
  9. 4 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IMidIncidentAuditDetailService.java
  10. 3 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IMidIncidentAuditService.java
  11. 9 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IViolationAnalysisService.java
  12. 6 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MidIncidentAuditDetailServiceImpl.java
  13. 5 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MidIncidentAuditServiceImpl.java
  14. 11 4
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/ViolationAnalysisServiceImpl.java

+ 4 - 0
jeecg-boot-base-core/src/main/java/org/jeecg/common/api/vo/Result.java

@@ -1,5 +1,6 @@
 package org.jeecg.common.api.vo;
 
+import com.alibaba.fastjson.JSONObject;
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -43,6 +44,9 @@ public class Result<T> implements Serializable {
 	 */
 	@ApiModelProperty(value = "返回数据对象")
 	private T result;
+
+	@ApiModelProperty(value = "扩展属性")
+	private JSONObject extend;
 	
 	/**
 	 * 时间戳

+ 3 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/bo/mid/request/AuditMidDetailListRequest.java

@@ -31,6 +31,9 @@ public class AuditMidDetailListRequest implements Serializable {
     @ApiModelProperty(value = "违反规则级别")
     private String reminderLevel;
 
+    @ApiModelProperty(value = "医保项目编码")
+    private String medicalProjectCode;
+
 
 
     @ApiModelProperty(value = "医生名称")

+ 39 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/bo/mid/response/MidAuditViolateProjectStatisticsResponse.java

@@ -0,0 +1,39 @@
+package org.jeecg.modules.medical.common.bo.mid.response;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.jeecgframework.poi.excel.annotation.Excel;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * @author yaowei
+ * @time 2023/10/18 22:51 星期三
+ * @description '违规项目统计'
+ * @parentProject medical-java
+ */
+@Data
+public class MidAuditViolateProjectStatisticsResponse implements Serializable {
+
+    @ApiModelProperty(value = "事中工单id")
+    private Integer id;
+
+    @ApiModelProperty(value = "项目类型")
+    private java.lang.String projectType;
+
+    @ApiModelProperty(value = "医保项目编码")
+    private java.lang.String medicalProjectCode;
+    /**项目名称*/
+
+    @ApiModelProperty(value = "医保项目名称")
+    private java.lang.String medicalProjectName;
+
+    @ApiModelProperty(value = "违规总数")
+    private Integer violationTotal;
+
+    @ApiModelProperty(value = "异常金额总和")
+    private BigDecimal errorAmountTotal;
+
+
+}

+ 53 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/ViolationAnalysisController.java

@@ -1,5 +1,6 @@
 package org.jeecg.modules.medical.controller;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import io.swagger.annotations.Api;
@@ -11,15 +12,18 @@ import org.jeecg.modules.medical.common.bo.before.AuditAdvanceWarningAuditDetail
 import org.jeecg.modules.medical.common.bo.mid.AuditMidDetailListResponse;
 import org.jeecg.modules.medical.common.bo.mid.request.AuditMidDetailListRequest;
 import org.jeecg.modules.medical.common.bo.mid.response.MidAuditDetailResponse;
+import org.jeecg.modules.medical.common.bo.mid.response.MidAuditViolateProjectStatisticsResponse;
 import org.jeecg.modules.medical.common.bo.mid.response.MidDeptAuditDetailResponse;
 import org.jeecg.modules.medical.service.IViolationAnalysisService;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.servlet.http.HttpServletRequest;
+import java.math.BigDecimal;
 import java.util.Map;
 
 /**
@@ -82,7 +86,7 @@ public class ViolationAnalysisController {
 
     @ApiOperation(value="违规分析-科室事中审查-列表-里面的详情", notes="违规分析-科室事中审查-列表-里面的详情")
     @GetMapping(value = "/mid/dept/child/list")
-    public Result<?> midDeptAuditByDeptDetailList(
+    public Result<IPage<AuditMidDetailListResponse>> midDeptAuditByDeptDetailList(
             @RequestParam("projectSearch") String projectSearch, //项目编码/名称
             @RequestParam("medicalDeptCode") String medicalDeptCode, // 科室代码
             @RequestParam("medicalInsRuleInfoCode") String medicalInsRuleInfoCode, //违反规则编码
@@ -101,9 +105,57 @@ public class ViolationAnalysisController {
 
         Map<String, String[]> parameterMap = req.getParameterMap();
         IPage<AuditMidDetailListResponse> result = violationAnalysisService.loadMidAuditPageList(request, pageNo, pageSize, parameterMap);
+
+        BigDecimal totalAmount = violationAnalysisService.statisticsMidAuditTotal(request);
+
+        Result<IPage<AuditMidDetailListResponse>> ok = Result.OK(result);
+
+        JSONObject j = new JSONObject();
+        j.put("totalAmount", totalAmount);
+        ok.setExtend(j);
+        return ok;
+    }
+
+
+    @ApiOperation(value="违规分析-事中违规项目统计-列表", notes="违规分析-违规项目统计")
+    @GetMapping(value = "/mid/project/list")
+    public Result<IPage<MidAuditViolateProjectStatisticsResponse>> violateProjectStatisticsList(String projectSearch, //项目类别
+                                                                                                String startTime,
+                                                                                                String endTime,
+                                                                                                Integer pageNo,
+                                                                                                Integer pageSize
+    ) {
+        IPage<AuditAdvanceWarningAuditDetailResponse> page = new Page<>(pageNo, pageSize);
+        IPage<MidAuditViolateProjectStatisticsResponse> result = violationAnalysisService.violateProjectStatisticsList(page, projectSearch, startTime, endTime);
         return Result.OK(result);
     }
 
+    @ApiOperation(value="违规分析-事中违规项目统计-列表-里面的详情", notes="违规分析-科室事中审查-列表-里面的详情")
+    @GetMapping(value = "/mid/project/child/list")
+    public Result<IPage<AuditMidDetailListResponse>> midDeptAuditByDeptDetailList(
+            @RequestParam("medicalProjectCode") String medicalProjectCode, //医保项目编码
+            @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+            @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+            HttpServletRequest req) {
+
+        if (!StringUtils.hasText( medicalProjectCode)) {
+            return Result.error("违规项目编码不可为空");
+        }
+
+        AuditMidDetailListRequest request = new AuditMidDetailListRequest();
+        request.setMedicalProjectCode(medicalProjectCode);
+
+        Map<String, String[]> parameterMap = req.getParameterMap();
+        IPage<AuditMidDetailListResponse> result = violationAnalysisService.loadMidAuditPageList(request, pageNo, pageSize, parameterMap);
+
+        BigDecimal totalAmount = violationAnalysisService.statisticsMidAuditTotal(request);
+
+        Result<IPage<AuditMidDetailListResponse>> ok = Result.OK(result);
+        JSONObject j = new JSONObject();
+        j.put("totalAmount", totalAmount);
+        ok.setExtend(j);
+        return ok;
+    }
 
 
 }

+ 4 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/MidIncidentAuditDetailMapper.java

@@ -9,6 +9,7 @@ import org.jeecg.modules.medical.common.bo.before.AuditAdvanceWarningAuditDetail
 import org.jeecg.modules.medical.common.bo.before.PatientInformationResponse;
 import org.jeecg.modules.medical.common.bo.mid.ViolationDetails;
 import org.jeecg.modules.medical.common.bo.mid.ViolationInfo;
+import org.jeecg.modules.medical.common.bo.mid.response.MidAuditViolateProjectStatisticsResponse;
 import org.jeecg.modules.medical.common.bo.mid.response.MidDeptAuditDetailResponse;
 import org.jeecg.modules.medical.entity.MidIncidentAuditDetail;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -30,4 +31,7 @@ public interface MidIncidentAuditDetailMapper extends BaseMapper<MidIncidentAudi
 
     IPage<MidDeptAuditDetailResponse> midDeptAuditList(IPage<AuditAdvanceWarningAuditDetailResponse> page, @Param("deptName") String deptName,
                                                        @Param("startTime") String startTime, @Param("endTime") String endTime);
+
+    IPage<MidAuditViolateProjectStatisticsResponse> violateProjectStatisticsList(IPage<AuditAdvanceWarningAuditDetailResponse> page, @Param("projectSearch")String projectSearch,
+                                                                                 @Param("startTime") String startTime, @Param("endTime") String endTime);
 }

+ 2 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/MidIncidentAuditMapper.java

@@ -21,9 +21,11 @@ public interface MidIncidentAuditMapper extends BaseMapper<MidIncidentAudit> {
 
     IPage<AuditMidDetailListResponse> loadMidAuditPageList(Page<AuditMidDetailListResponse> page, @Param("ew") AuditMidDetailListRequest ew);
 
+    BigDecimal statisticsMidAuditTotal(@Param("ew") AuditMidDetailListRequest request);
     AuditMidDetailListResponse loadViolationDetail(@Param("detailId") Integer detailId);
 
     BigDecimal statissticsErrAmtByMidAuditRecordId(@Param("id") Integer id);
 
 
+
 }

+ 29 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/xml/MidIncidentAuditDetailMapper.xml

@@ -79,5 +79,34 @@
         GROUP BY medical_dept_code
         ORDER BY violationDoctorNumber DESC
     </select>
+    <select id="violateProjectStatisticsList"
+            resultType="org.jeecg.modules.medical.common.bo.mid.response.MidAuditViolateProjectStatisticsResponse">
+        SELECT
+            id
+            ,project_type
+             ,medical_project_name
+             ,medical_project_code
+             ,(select IFNULL(count(amount), 0) from mid_incident_audit_detail WHERE medical_project_code = m.medical_project_code ) as violationTotal  -- 违规总数
+             ,sum(amount) as errorAmountTotal -- 异常金额总和
+        FROM mid_incident_audit_detail as m
+        <where>
+            <if test="projectSearch != null and projectSearch != '' ">
+                AND(
+                    proejct_code LIKE concat(concat('%',#{projectSearch}),'%')
+                    or
+                    proejct_name LIKE concat(concat('%',#{projectSearch}),'%')
+                )
+            </if>
+            <if test="startTime != null and startTime != ''">
+                and <![CDATA[ m.create_time >= #{startTime} ]]>
+            </if>
+            <if test="endTime != null and endTime != ''">
+                and <![CDATA[ m.create_time <= #{endTime} ]]>
+            </if>
+        </where>
+
+        GROUP BY medical_project_code
+        ORDER BY violationTotal DESC
+    </select>
 
 </mapper>

+ 38 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/xml/MidIncidentAuditMapper.xml

@@ -44,6 +44,43 @@
             <if test="ew.endTime != null and ew.endTime != '' ">
                 AND <![CDATA[  create_time <= #{ew.endTime} ]]>
             </if>
+            <if test="ew.medicalProjectCode != null and ew.medicalProjectCode != null" >
+                AND medical_project_code = #{ew.medicalProjectCode}
+            </if>
+        </where>
+    </select>
+
+    <select id="statisticsMidAuditTotal" resultType="java.math.BigDecimal">
+        SELECT
+            ifnull(sum(amount), 0) as totalAmount
+        FROM
+        mid_incident_audit_detail
+        <where>
+            <if test="ew.projectSearch != null and ew.projectSearch != '' ">
+                AND(
+                proejct_code LIKE concat(concat('%',#{ew.projectSearch}),'%')
+                or
+                proejct_name LIKE concat(concat('%',#{ew.projectSearch}),'%')
+                )
+            </if>
+            <if test="ew.treatmentType != null and ew.treatmentType != '' ">
+                AND treatment_type = #{ew.treatmentType}
+            </if>
+            <if test="ew.doctorName != null and ew.doctorName != '' ">
+                AND doctor_name LIKE concat(concat('%',#{ew.doctorName}),'%')
+            </if>
+            <if test="ew.medicalDeptName != null and ew.medicalDeptName != ''">
+                AND medical_dept_name = #{ew.medicalDeptName}
+            </if>
+            <if test="ew.startTime != null and ew.startTime != '' ">
+                AND <![CDATA[ create_time >= #{ew.startTime} ]]>
+            </if>
+            <if test="ew.endTime != null and ew.endTime != '' ">
+                AND <![CDATA[  create_time <= #{ew.endTime} ]]>
+            </if>
+            <if test="ew.medicalProjectCode != null and ew.medicalProjectCode != null" >
+                AND medical_project_code = #{ew.medicalProjectCode}
+            </if>
         </where>
     </select>
 
@@ -107,4 +144,5 @@
         </where>
 
     </select>
+
 </mapper>

+ 4 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IMidIncidentAuditDetailService.java

@@ -7,6 +7,7 @@ import org.jeecg.modules.medical.common.bo.before.PatientInformationResponse;
 import org.jeecg.modules.medical.common.bo.mid.FeedbackReasonRequest;
 import org.jeecg.modules.medical.common.bo.mid.ViolationDetails;
 import org.jeecg.modules.medical.common.bo.mid.ViolationInfo;
+import org.jeecg.modules.medical.common.bo.mid.response.MidAuditViolateProjectStatisticsResponse;
 import org.jeecg.modules.medical.common.bo.mid.response.MidDeptAuditDetailResponse;
 import org.jeecg.modules.medical.entity.MidIncidentAuditDetail;
 import com.baomidou.mybatisplus.extension.service.IService;
@@ -46,4 +47,7 @@ public interface IMidIncidentAuditDetailService extends IService<MidIncidentAudi
 
 
     IPage<MidDeptAuditDetailResponse> midDeptAuditList(IPage<AuditAdvanceWarningAuditDetailResponse> page, String deptName, String startTime, String endTime);
+
+
+    IPage<MidAuditViolateProjectStatisticsResponse> violateProjectStatisticsList(IPage<AuditAdvanceWarningAuditDetailResponse> page, String projectSearch, String startTime, String endTime);
 }

+ 3 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IMidIncidentAuditService.java

@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import org.jeecg.modules.medical.entity.MidIncidentAuditDetail;
 
 import java.math.BigDecimal;
+import java.util.List;
 
 /**
  * @Description: mid_incident_audit
@@ -22,6 +23,7 @@ public interface IMidIncidentAuditService extends IService<MidIncidentAudit> {
 
 
     IPage<AuditMidDetailListResponse> loadMidAuditPageList(Page<AuditMidDetailListResponse> page, AuditMidDetailListRequest request);
+    BigDecimal statisticsMidAuditTotal(AuditMidDetailListRequest request);
 
     /**
      * 获取一条事中审核记录
@@ -38,4 +40,5 @@ public interface IMidIncidentAuditService extends IService<MidIncidentAudit> {
     BigDecimal statissticsErrAmtByMidAuditRecordId(Integer id);
 
 
+
 }

+ 9 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IViolationAnalysisService.java

@@ -5,8 +5,10 @@ import org.jeecg.modules.medical.common.bo.before.AuditAdvanceWarningAuditDetail
 import org.jeecg.modules.medical.common.bo.mid.AuditMidDetailListResponse;
 import org.jeecg.modules.medical.common.bo.mid.request.AuditMidDetailListRequest;
 import org.jeecg.modules.medical.common.bo.mid.response.MidAuditDetailResponse;
+import org.jeecg.modules.medical.common.bo.mid.response.MidAuditViolateProjectStatisticsResponse;
 import org.jeecg.modules.medical.common.bo.mid.response.MidDeptAuditDetailResponse;
 
+import java.math.BigDecimal;
 import java.util.Map;
 
 /**
@@ -28,6 +30,8 @@ public interface IViolationAnalysisService {
      */
     IPage<AuditMidDetailListResponse> loadMidAuditPageList(AuditMidDetailListRequest request, Integer pageNo, Integer pageSize, Map<String, String[]> parameterMap);
 
+    BigDecimal statisticsMidAuditTotal(AuditMidDetailListRequest request);
+
     /**
      * 事中审查统计-查看明细
      * @param detailId
@@ -37,4 +41,9 @@ public interface IViolationAnalysisService {
 
 
     IPage<MidDeptAuditDetailResponse> midDeptAuditList(IPage<AuditAdvanceWarningAuditDetailResponse> page, String deptName, String startTime, String endTime);
+
+
+    IPage<MidAuditViolateProjectStatisticsResponse> violateProjectStatisticsList(IPage<AuditAdvanceWarningAuditDetailResponse> page, String projectSearch, String startTime, String endTime);
+
+
 }

+ 6 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MidIncidentAuditDetailServiceImpl.java

@@ -12,6 +12,7 @@ import org.jeecg.modules.medical.common.bo.before.PatientInformationResponse;
 import org.jeecg.modules.medical.common.bo.mid.FeedbackReasonRequest;
 import org.jeecg.modules.medical.common.bo.mid.ViolationDetails;
 import org.jeecg.modules.medical.common.bo.mid.ViolationInfo;
+import org.jeecg.modules.medical.common.bo.mid.response.MidAuditViolateProjectStatisticsResponse;
 import org.jeecg.modules.medical.common.bo.mid.response.MidDeptAuditDetailResponse;
 import org.jeecg.modules.medical.common.enums.MidFeedBackReasonEnum;
 import org.jeecg.modules.medical.entity.AdvanceWarningAudit;
@@ -135,4 +136,9 @@ public class MidIncidentAuditDetailServiceImpl extends ServiceImpl<MidIncidentAu
     public IPage<MidDeptAuditDetailResponse> midDeptAuditList(IPage<AuditAdvanceWarningAuditDetailResponse> page, String deptName, String startTime, String endTime) {
         return baseMapper.midDeptAuditList(page, deptName, startTime, endTime);
     }
+
+    @Override
+    public IPage<MidAuditViolateProjectStatisticsResponse> violateProjectStatisticsList(IPage<AuditAdvanceWarningAuditDetailResponse> page, String projectSearch, String startTime, String endTime) {
+        return baseMapper.violateProjectStatisticsList(page, projectSearch, startTime, endTime);
+    }
 }

+ 5 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MidIncidentAuditServiceImpl.java

@@ -27,6 +27,11 @@ public class MidIncidentAuditServiceImpl extends ServiceImpl<MidIncidentAuditMap
         return baseMapper.loadMidAuditPageList(page, request);
     }
 
+    @Override
+    public BigDecimal statisticsMidAuditTotal(AuditMidDetailListRequest request) {
+        return baseMapper.statisticsMidAuditTotal(request);
+    }
+
     @Override
     public AuditMidDetailListResponse loadViolationDetail(Integer detailId) {
         return baseMapper.loadViolationDetail(detailId);

+ 11 - 4
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/ViolationAnalysisServiceImpl.java

@@ -10,10 +10,7 @@ import org.jeecg.modules.medical.common.bo.before.AuditAdvanceWarningAuditDetail
 import org.jeecg.modules.medical.common.bo.before.PatientInformationResponse;
 import org.jeecg.modules.medical.common.bo.mid.AuditMidDetailListResponse;
 import org.jeecg.modules.medical.common.bo.mid.request.AuditMidDetailListRequest;
-import org.jeecg.modules.medical.common.bo.mid.response.MidAuditDetailResponse;
-import org.jeecg.modules.medical.common.bo.mid.response.MidAuditDoctorInfo;
-import org.jeecg.modules.medical.common.bo.mid.response.MidDeptAuditDetailResponse;
-import org.jeecg.modules.medical.common.bo.mid.response.ViolationsProjectMedicinesDetail;
+import org.jeecg.modules.medical.common.bo.mid.response.*;
 import org.jeecg.modules.medical.entity.AdvanceWarningAuditDetail;
 import org.jeecg.modules.medical.service.IAdvanceWarningAuditDetailService;
 import org.jeecg.modules.medical.service.IMidIncidentAuditDetailService;
@@ -99,6 +96,11 @@ public class ViolationAnalysisServiceImpl implements IViolationAnalysisService {
         return resultPage;
     }
 
+    @Override
+    public BigDecimal statisticsMidAuditTotal(AuditMidDetailListRequest request) {
+        return midIncidentAuditService.statisticsMidAuditTotal(request);
+    }
+
     /**
      * 事中审查统计-查看明细
      * @param detailId: 详情ID
@@ -159,4 +161,9 @@ public class ViolationAnalysisServiceImpl implements IViolationAnalysisService {
     public IPage<MidDeptAuditDetailResponse> midDeptAuditList(IPage<AuditAdvanceWarningAuditDetailResponse> page, String deptName, String startTime, String endTime) {
         return midIncidentAuditDetailService.midDeptAuditList(page, deptName, startTime, endTime);
     }
+
+    @Override
+    public IPage<MidAuditViolateProjectStatisticsResponse> violateProjectStatisticsList(IPage<AuditAdvanceWarningAuditDetailResponse> page, String projectSearch, String startTime, String endTime) {
+        return midIncidentAuditDetailService.violateProjectStatisticsList(page, projectSearch, startTime, endTime);
+    }
 }