Explorar o código

通报情况、超期情况、通报事项统计

abai hai 5 días
pai
achega
34e29925dd

+ 52 - 0
ruoyi-modules/ruoyi-business/src/main/java/com/ruoyi/business/controller/BjReportController.java

@@ -0,0 +1,52 @@
+package com.ruoyi.business.controller;
+
+import com.ruoyi.business.domain.vo.ReportTotal;
+import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.core.web.domain.AjaxResult;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.RequiredArgsConstructor;
+import org.apache.commons.compress.utils.Lists;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * 通报情况统计信息
+ * 前端访问路由地址为:/business/report
+ *
+ * @author libai
+ * @date 2025-10-30
+ */
+@Tag(name = "通报情况统计信息")
+@Validated
+@RequiredArgsConstructor
+@RestController
+@RequestMapping("/report")
+public class BjReportController extends BaseController {
+
+
+    /**
+     * 获取通报情况统计信息
+     */
+    @Operation(summary = "获取通报情况统计信息")
+//    @SaCheckPermission("business:report:query")
+    @GetMapping("/total")
+    public AjaxResult getInfo() {
+        List<ReportTotal> list = Lists.newArrayList();
+        list.add(ReportTotal.builder().unit("总数").beenPublishCount(5863).beenReceiveCount(5863).beenFeedbackCount(5863)
+                .beenHandleCount(5863).beenClosedCount(5863).beenTotal(5863).notReceiveCount(5863).notFeedbackCount(5863).notHandleCount(5863)
+                .notTotal(5863).noOverdueCount(5863).receiveOverdueCount(5863).handleOverdueCount(5863).closedOverdueCount(5863).overdueTotal(5863).build());
+        list.add(ReportTotal.builder().unit("交通运输部海事局").beenPublishCount(466).beenReceiveCount(466).beenFeedbackCount(466)
+                .beenHandleCount(466).beenClosedCount(466).beenTotal(466).notReceiveCount(466).notFeedbackCount(466).notHandleCount(466)
+                .notTotal(466).noOverdueCount(466).receiveOverdueCount(466).handleOverdueCount(466).closedOverdueCount(466).overdueTotal(466).build());
+        list.add(ReportTotal.builder().unit("长江航务管理局").beenPublishCount(214).beenReceiveCount(214).beenFeedbackCount(214)
+                .beenHandleCount(214).beenClosedCount(214).beenTotal(214).notReceiveCount(214).notFeedbackCount(214).notHandleCount(214)
+                .notTotal(214).noOverdueCount(214).receiveOverdueCount(214).handleOverdueCount(214).closedOverdueCount(214).overdueTotal(214).build());
+        return success(list);
+    }
+
+}

+ 50 - 0
ruoyi-modules/ruoyi-business/src/main/java/com/ruoyi/business/controller/BjReportItemController.java

@@ -0,0 +1,50 @@
+package com.ruoyi.business.controller;
+
+import com.ruoyi.business.domain.vo.ReportAllTotal;
+import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.core.web.domain.AjaxResult;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.RequiredArgsConstructor;
+import org.apache.commons.compress.utils.Lists;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * 通报事项统计信息
+ * 前端访问路由地址为:/business/reportItem
+ *
+ * @author libai
+ * @date 2025-10-30
+ */
+@Tag(name = "通报事项统计信息")
+@Validated
+@RequiredArgsConstructor
+@RestController
+@RequestMapping("/reportItem")
+public class BjReportItemController extends BaseController {
+
+
+    /**
+     * 获取通报事项统计信息
+     */
+    @Operation(summary = "获取通报事项统计信息")
+//    @SaCheckPermission("business:timeLimit:query")
+    @GetMapping("/total")
+    public AjaxResult getInfo() {
+        List<ReportAllTotal> allList = Lists.newArrayList();
+        allList.add(ReportAllTotal.builder().name("通报事项总计").number(2873).proportion(new BigDecimal("100")).build());
+        allList.add(ReportAllTotal.builder().name("涉客船舶相关违法违规行为").number(368).proportion(new BigDecimal("24")).build());
+        allList.add(ReportAllTotal.builder().name("从事休闲活动船舶相关违法违规行为").number(74).proportion(new BigDecimal("15")).build());
+        allList.add(ReportAllTotal.builder().name("渔船相关违法违规信息").number(368).proportion(new BigDecimal("9")).build());
+        allList.add(ReportAllTotal.builder().name("水上新业态风险隐患信息").number(1346).proportion(new BigDecimal("13")).build());
+        allList.add(ReportAllTotal.builder().name("通航水域船舶碰撞桥梁垮塌风险").number(968).proportion(new BigDecimal("28")).build());
+        return success(allList);
+    }
+
+}

+ 62 - 0
ruoyi-modules/ruoyi-business/src/main/java/com/ruoyi/business/controller/BjTimeLimitController.java

@@ -0,0 +1,62 @@
+package com.ruoyi.business.controller;
+
+import com.ruoyi.business.domain.vo.ReportAllTotal;
+import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.core.web.domain.AjaxResult;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.RequiredArgsConstructor;
+import org.apache.commons.compress.utils.Lists;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.math.BigDecimal;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 超期情况统计信息
+ * 前端访问路由地址为:/business/timeLimit
+ *
+ * @author libai
+ * @date 2025-10-30
+ */
+@Tag(name = "超期情况统计信息")
+@Validated
+@RequiredArgsConstructor
+@RestController
+@RequestMapping("/timeLimit")
+public class BjTimeLimitController extends BaseController {
+
+
+    /**
+     * 获取超期情况统计信息
+     */
+    @Operation(summary = "获取超期情况统计信息")
+//    @SaCheckPermission("business:timeLimit:query")
+    @GetMapping("/total")
+    public AjaxResult getInfo() {
+        Map<Integer, List<ReportAllTotal>> resultMap = new HashMap<>();
+        List<ReportAllTotal> allList = Lists.newArrayList();
+        List<ReportAllTotal> outList = Lists.newArrayList();
+        allList.add(ReportAllTotal.builder().name("超期情况总数").number(2873).proportion(new BigDecimal("100")).build());
+        allList.add(ReportAllTotal.builder().name("海南海事局").number(368).proportion(new BigDecimal("24")).build());
+        allList.add(ReportAllTotal.builder().name("广西海事局").number(74).proportion(new BigDecimal("15")).build());
+        allList.add(ReportAllTotal.builder().name("广东海事局").number(307).proportion(new BigDecimal("9")).build());
+        allList.add(ReportAllTotal.builder().name("福建海事局").number(1346).proportion(new BigDecimal("13")).build());
+        allList.add(ReportAllTotal.builder().name("浙江海事局").number(1346).proportion(new BigDecimal("13")).build());
+        outList.add(ReportAllTotal.builder().name("行业外超期情况总数").number(2873).proportion(new BigDecimal("100")).build());
+        outList.add(ReportAllTotal.builder().name("地方政府").number(368).proportion(new BigDecimal("24")).build());
+        outList.add(ReportAllTotal.builder().name("船舶检验机构").number(74).proportion(new BigDecimal("15")).build());
+        outList.add(ReportAllTotal.builder().name("农业农村部门").number(307).proportion(new BigDecimal("9")).build());
+        outList.add(ReportAllTotal.builder().name("海警机构").number(1346).proportion(new BigDecimal("13")).build());
+        outList.add(ReportAllTotal.builder().name("公安机构").number(1346).proportion(new BigDecimal("13")).build());
+        resultMap.put(0, allList);
+        resultMap.put(1, outList);
+        return success(resultMap);
+    }
+
+}

+ 4 - 4
ruoyi-modules/ruoyi-business/src/main/java/com/ruoyi/business/domain/BjPortReport.java

@@ -30,14 +30,14 @@ public class BjPortReport extends BaseEntity {
     private Long portReportId;
 
     /**
-     * 中文船名
+     * IMO编号
      */
-    private String shipNameCn;
+    private String shipImo;
 
     /**
-     * IMO编号
+     * 中文船名
      */
-    private String shipImo;
+    private String shipNameCn;
 
     /**
      * 报告编号

+ 4 - 4
ruoyi-modules/ruoyi-business/src/main/java/com/ruoyi/business/domain/bo/BjPortReportBo.java

@@ -29,14 +29,14 @@ public class BjPortReportBo extends BaseEntity {
     private Long portReportId;
 
     /**
-     * 中文船名
+     * IMO编号
      */
-    private String shipNameCn;
+    private String shipImo;
 
     /**
-     * IMO编号
+     * 中文船名
      */
-    private String shipImo;
+    private String shipNameCn;
 
     /**
      * 报告编号

+ 4 - 4
ruoyi-modules/ruoyi-business/src/main/java/com/ruoyi/business/domain/vo/BjPortReportVo.java

@@ -27,14 +27,14 @@ public class BjPortReportVo implements Serializable {
     private Long portReportId;
 
     /**
-     * 中文船名
+     * IMO编号
      */
-    private String shipNameCn;
+    private String shipImo;
 
     /**
-     * IMO编号
+     * 中文船名
      */
-    private String shipImo;
+    private String shipNameCn;
 
     /**
      * 报告编号

+ 17 - 0
ruoyi-modules/ruoyi-business/src/main/java/com/ruoyi/business/domain/vo/ReportAllTotal.java

@@ -0,0 +1,17 @@
+package com.ruoyi.business.domain.vo;
+
+import lombok.Builder;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Builder
+@Data
+public class ReportAllTotal {
+
+    private String name;
+
+    private Integer number;
+
+    private BigDecimal proportion;
+}

+ 91 - 0
ruoyi-modules/ruoyi-business/src/main/java/com/ruoyi/business/domain/vo/ReportTotal.java

@@ -0,0 +1,91 @@
+package com.ruoyi.business.domain.vo;
+
+import lombok.Builder;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Builder
+@Data
+public class ReportTotal implements Serializable {
+
+    /**
+     * 单位
+     */
+    private String unit;
+
+    /**
+     * 已完成发布数量(件)
+     */
+    private Integer beenPublishCount;
+
+    /**
+     * 已完成接收数量(件)
+     */
+    private Integer beenReceiveCount;
+
+    /**
+     * 完成处置反馈数量(件)
+     */
+    private Integer beenFeedbackCount;
+
+    /**
+     * 完成处置处理数量(件)
+     */
+    private Integer beenHandleCount;
+
+    /**
+     * 已结案(件)
+     */
+    private Integer beenClosedCount;
+
+    /**
+     * 总计(件)
+     */
+    private Integer beenTotal;
+
+    /**
+     * 未完成接收数量(件)
+     */
+    private Integer notReceiveCount;
+
+    /**
+     * 未完成处置反馈数量(件)
+     */
+    private Integer notFeedbackCount;
+
+    /**
+     * 未完成处置处理数量(件)
+     */
+    private Integer notHandleCount;
+
+    /**
+     * 总计(件)
+     */
+    private Integer notTotal;
+
+    /**
+     * 正常接收(件)
+     */
+    private Integer noOverdueCount;
+
+    /**
+     * 接收超期(件)
+     */
+    private Integer receiveOverdueCount;
+
+    /**
+     * 处理超期(件)
+     */
+    private Integer handleOverdueCount;
+
+    /**
+     * 处置完成超期(件)
+     */
+    private Integer closedOverdueCount;
+
+    /**
+     * 总计(件)
+     */
+    private Integer overdueTotal;
+}

+ 2 - 0
ruoyi-modules/ruoyi-business/src/main/resources/mapper/business/BjBuildCheckMapper.xml

@@ -7,6 +7,7 @@
         <result property="buildCheckId" column="build_check_id"/>
         <result property="shipName" column="ship_name"/>
         <result property="shipyard" column="shipyard"/>
+        <result property="shipRegisterNumber" column="ship_register_number"/>
         <result property="shipCheckOrganization" column="ship_check_organization"/>
         <result property="checkPerson" column="check_person"/>
         <result property="checkDate" column="check_date"/>
@@ -26,6 +27,7 @@
         select build_check_id,
                ship_name,
                shipyard,
+               ship_register_number,
                ship_check_organization,
                check_person,
                check_date,

+ 1 - 1
ruoyi-modules/ruoyi-business/src/main/resources/mapper/business/BjPortReportMapper.xml

@@ -22,8 +22,8 @@
     </resultMap>
     <select id="queryPortReportList" resultMap="portReportVoList">
         select port_report_id,
-               ship_name_cn,
                ship_imo,
+               ship_name_cn,
                report_code,
                report_organization,
                report_type,

+ 2 - 0
ruoyi-modules/ruoyi-business/src/main/resources/mapper/business/BjServiceCheckMapper.xml

@@ -7,6 +7,7 @@
         <result property="serviceCheckId" column="service_check_id"/>
         <result property="shipName" column="ship_name"/>
         <result property="shipId" column="ship_id"/>
+        <result property="shipRegisterNumber" column="ship_register_number"/>
         <result property="regportName" column="regport_name"/>
         <result property="checkDate" column="check_date"/>
         <result property="beMonitorOrganization" column="be_monitor_organization"/>
@@ -22,6 +23,7 @@
         select service_check_id,
                ship_name,
                ship_id,
+               ship_register_number,
                regport_name,
                check_date,
                be_monitor_organization,