From 915a2e40175c6390802af1257e57effea5fd02ef Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期二, 06 五月 2025 17:35:32 +0800
Subject: [PATCH] art: 设备管理-看板接口-点检、周保统计接口

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamWeekMaintenanceOrderMapper.java            |   12 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java |   27 +++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamWeekMaintenanceOrderMapper.xml         |   20 ++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamDashboardController.java               |   64 ++++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamInspectionOrderMapper.xml              |   20 ++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/EquipmentInspectionStatistics.java                |   28 +++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java      |   27 +++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamInspectionOrderService.java              |   11 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamWeekMaintenanceOrderService.java         |   11 ++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/EquipmentMaintenanceStatistics.java               |   29 +++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamInspectionOrderMapper.java                 |   12 ++
 11 files changed, 261 insertions(+), 0 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamDashboardController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamDashboardController.java
index 109ffa9..864c55b 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamDashboardController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamDashboardController.java
@@ -9,7 +9,11 @@
 import org.jeecg.modules.eam.constant.EquipmentRepairStatus;
 import org.jeecg.modules.eam.entity.EamEquipment;
 import org.jeecg.modules.eam.service.IEamEquipmentService;
+import org.jeecg.modules.eam.service.IEamInspectionOrderService;
 import org.jeecg.modules.eam.service.IEamReportRepairService;
+import org.jeecg.modules.eam.service.IEamWeekMaintenanceOrderService;
+import org.jeecg.modules.eam.vo.EquipmentInspectionStatistics;
+import org.jeecg.modules.eam.vo.EquipmentMaintenanceStatistics;
 import org.jeecg.modules.eam.vo.EquipmentRepairStatistics;
 import org.jeecg.modules.eam.vo.EquipmentStatusStatistics;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -30,6 +34,10 @@
     private IEamEquipmentService eamEquipmentService;
     @Autowired
     private IEamReportRepairService reportRepairService;
+    @Autowired
+    private IEamInspectionOrderService inspectionOrderService;
+    @Autowired
+    private IEamWeekMaintenanceOrderService weekMaintenanceOrderService;
 
     @ApiOperation(value = "鐪嬫澘鎺ュ彛-缁翠繚鐘舵�佺粺璁�", notes = "鐪嬫澘鎺ュ彛-缁翠繚鐘舵�佺粺璁�")
     @GetMapping(value = "/equipmentStatusStatistics")
@@ -87,4 +95,60 @@
         resultList.sort(Comparator.comparing(EquipmentRepairStatistics::getMonthStr));
         return Result.ok(resultList);
     }
+
+    @ApiOperation(value = "鐪嬫澘鎺ュ彛-鐐规缁熻", notes = "鐪嬫澘鎺ュ彛-鐐规缁熻")
+    @GetMapping(value = "/equipmentInspectionStatistics")
+    public Result<?> equipmentInspectionStatistics(@RequestParam(required = false, value = "productionId") String productionId) {
+        //缁熻缁撴潫鏃ユ湡
+        LocalDate today = LocalDate.now();
+        LocalDate localDate = today.minusMonths(5);
+        //缁熻寮�濮嬫棩鏈�
+        LocalDate firstOfMonth = DateUtils.getFirstOfMonth(localDate);
+
+        //鍒濆鍖栬繑鍥炲��
+        Map<String, EquipmentInspectionStatistics> statisticsMap = new HashMap<>();
+        List<String> monthsBetween = DateUtils.getMonthsBetween(firstOfMonth, today);
+        monthsBetween.forEach(month -> {
+            statisticsMap.put(month, new EquipmentInspectionStatistics(month));
+        });
+
+        List<EquipmentInspectionStatistics> list = inspectionOrderService.equipmentInspectionStatistics(productionId, firstOfMonth, today);
+        for (EquipmentInspectionStatistics statistics : list) {
+            if (statisticsMap.containsKey(statistics.getMonthStr())) {
+                statisticsMap.put(statistics.getMonthStr(), statistics);
+            }
+        }
+        List<EquipmentInspectionStatistics> resultList = new ArrayList<>(statisticsMap.values());
+        //鎺掑簭
+        resultList.sort(Comparator.comparing(EquipmentInspectionStatistics::getMonthStr));
+        return Result.ok(resultList);
+    }
+
+    @ApiOperation(value = "鐪嬫澘鎺ュ彛-鍛ㄤ繚缁熻", notes = "鐪嬫澘鎺ュ彛-鍛ㄤ繚缁熻")
+    @GetMapping(value = "/equipmentMaintenanceStatistics")
+    public Result<?> equipmentMaintenanceStatistics(@RequestParam(required = false, value = "productionId") String productionId) {
+        //缁熻缁撴潫鏃ユ湡
+        LocalDate today = LocalDate.now();
+        LocalDate localDate = today.minusMonths(5);
+        //缁熻寮�濮嬫棩鏈�
+        LocalDate firstOfMonth = DateUtils.getFirstOfMonth(localDate);
+
+        //鍒濆鍖栬繑鍥炲��
+        Map<String, EquipmentMaintenanceStatistics> statisticsMap = new HashMap<>();
+        List<String> monthsBetween = DateUtils.getMonthsBetween(firstOfMonth, today);
+        monthsBetween.forEach(month -> {
+            statisticsMap.put(month, new EquipmentMaintenanceStatistics(month));
+        });
+
+        List<EquipmentMaintenanceStatistics> list = weekMaintenanceOrderService.equipmentMaintenanceStatistics(productionId, firstOfMonth, today);
+        for (EquipmentMaintenanceStatistics statistics : list) {
+            if (statisticsMap.containsKey(statistics.getMonthStr())) {
+                statisticsMap.put(statistics.getMonthStr(), statistics);
+            }
+        }
+        List<EquipmentMaintenanceStatistics> resultList = new ArrayList<>(statisticsMap.values());
+        //鎺掑簭
+        resultList.sort(Comparator.comparing(EquipmentMaintenanceStatistics::getMonthStr));
+        return Result.ok(resultList);
+    }
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamInspectionOrderMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamInspectionOrderMapper.java
index 0851910..3c346e0 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamInspectionOrderMapper.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamInspectionOrderMapper.java
@@ -8,6 +8,9 @@
 import org.apache.ibatis.annotations.Param;
 import org.jeecg.modules.eam.entity.EamInspectionOrder;
 import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrder;
+import org.jeecg.modules.eam.vo.EquipmentInspectionStatistics;
+
+import java.util.List;
 
 /**
  * @Description: 鐐规宸ュ崟
@@ -24,4 +27,13 @@
      * @return
      */
     IPage<EamInspectionOrder> queryPageList(Page<EamInspectionOrder> page, @Param(Constants.WRAPPER) QueryWrapper<EamInspectionOrder> queryWrapper);
+
+    /**
+     * 鐐规缁熻
+     * @param productionIds
+     * @param start
+     * @param end
+     * @return
+     */
+    List<EquipmentInspectionStatistics> equipmentInspectionStatistics(@Param("productionIds") List<String> productionIds, @Param("start") String start, @Param("end") String end);
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamWeekMaintenanceOrderMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamWeekMaintenanceOrderMapper.java
index f6f73de..3580713 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamWeekMaintenanceOrderMapper.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/EamWeekMaintenanceOrderMapper.java
@@ -7,6 +7,9 @@
 
 import org.apache.ibatis.annotations.Param;
 import org.jeecg.modules.eam.entity.EamWeekMaintenanceOrder;
+import org.jeecg.modules.eam.vo.EquipmentMaintenanceStatistics;
+
+import java.util.List;
 
 /**
  * @Description: 鍛ㄤ繚宸ュ崟
@@ -22,4 +25,13 @@
      * @return
      */
     IPage<EamWeekMaintenanceOrder> queryPageList(IPage<EamWeekMaintenanceOrder> page, @Param(Constants.WRAPPER) Wrapper<EamWeekMaintenanceOrder> queryWrapper);
+
+    /**
+     * 淇濆吇缁熻
+     * @param productionIds
+     * @param start
+     * @param end
+     * @return
+     */
+    List<EquipmentMaintenanceStatistics> equipmentMaintenanceStatistics(@Param("productionIds") List<String> productionIds, @Param("start") String start, @Param("end") String end);
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamInspectionOrderMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamInspectionOrderMapper.xml
index b596292..225c243 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamInspectionOrderMapper.xml
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamInspectionOrderMapper.xml
@@ -9,4 +9,24 @@
         on wmo.equipment_id = e.id
         ${ew.customSqlSegment}
     </select>
+
+    <select id="equipmentInspectionStatistics"
+            resultType="org.jeecg.modules.eam.vo.EquipmentInspectionStatistics">
+        select FORMAT(err.inspection_date, 'yyyy-MM') as monthStr,
+        COUNT(1) as planNumber,
+        SUM(CASE WHEN err.inspection_status = 'COMPLETE' THEN 1 ELSE 0 END) as completeNumber
+        from eam_inspection_order err
+        inner join eam_equipment e
+        on err.equipment_id = e.id
+        where err.inspection_status != 'ABOLISH' and err.del_flag = 0 and e.del_flag = 0
+        <if test="productionIds != null">
+            AND e.org_id IN
+            <foreach collection="productionIds" item="productionId" index="index" open="(" close=")" separator=",">
+                #{productionId}
+            </foreach>
+        </if>
+        and err.inspection_date &gt;= #{start}
+        and err.inspection_date &lt; #{end}
+        group by FORMAT(err.inspection_date, 'yyyy-MM')
+    </select>
 </mapper>
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamWeekMaintenanceOrderMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamWeekMaintenanceOrderMapper.xml
index f07c0c8..41f74de 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamWeekMaintenanceOrderMapper.xml
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EamWeekMaintenanceOrderMapper.xml
@@ -9,4 +9,24 @@
         on wmo.equipment_id = e.id
         ${ew.customSqlSegment}
     </select>
+
+    <select id="equipmentMaintenanceStatistics"
+            resultType="org.jeecg.modules.eam.vo.EquipmentMaintenanceStatistics">
+        select FORMAT(err.maintenance_date, 'yyyy-MM') as monthStr,
+        COUNT(1) as planNumber,
+        SUM(CASE WHEN err.maintenance_status = 'COMPLETE' THEN 1 ELSE 0 END) as completeNumber
+        from eam_week_maintenance_order err
+        inner join eam_equipment e
+        on err.equipment_id = e.id
+        where err.maintenance_status != 'ABOLISH' and err.del_flag = 0 and e.del_flag = 0
+        <if test="productionIds != null">
+            AND e.org_id IN
+            <foreach collection="productionIds" item="productionId" index="index" open="(" close=")" separator=",">
+                #{productionId}
+            </foreach>
+        </if>
+        and err.maintenance_date &gt;= #{start}
+        and err.maintenance_date &lt; #{end}
+        group by FORMAT(err.maintenance_date, 'yyyy-MM')
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamInspectionOrderService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamInspectionOrderService.java
index 7999fa1..6146862 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamInspectionOrderService.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamInspectionOrderService.java
@@ -7,7 +7,9 @@
 import org.jeecg.modules.eam.entity.EamInspectionOrder;
 import org.jeecg.modules.eam.request.EamInspectionOrderQuery;
 import org.jeecg.modules.eam.request.EamInspectionOrderRequest;
+import org.jeecg.modules.eam.vo.EquipmentInspectionStatistics;
 
+import java.time.LocalDate;
 import java.util.List;
 
 /**
@@ -82,4 +84,13 @@
      * @return
      */
     List<EamInspectionOrder> selectUnCompleteOrder(String expiredDate);
+
+    /**
+     * 鐐规缁熻
+     * @param productionId
+     * @param firstOfMonth
+     * @param today
+     * @return
+     */
+    List<EquipmentInspectionStatistics> equipmentInspectionStatistics(String productionId, LocalDate firstOfMonth, LocalDate today);
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamWeekMaintenanceOrderService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamWeekMaintenanceOrderService.java
index 2a69318..0ea10d1 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamWeekMaintenanceOrderService.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamWeekMaintenanceOrderService.java
@@ -6,7 +6,9 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 import org.jeecg.modules.eam.request.EamWeekMaintenanceQuery;
 import org.jeecg.modules.eam.request.EamWeekMaintenanceRequest;
+import org.jeecg.modules.eam.vo.EquipmentMaintenanceStatistics;
 
+import java.time.LocalDate;
 import java.util.List;
 
 /**
@@ -59,4 +61,13 @@
      * @return
      */
     List<EamWeekMaintenanceOrder> selectUnCompleteOrder(String expiredDate);
+
+    /**
+     * 淇濆吇缁熻
+     * @param productionId
+     * @param firstOfMonth
+     * @param today
+     * @return
+     */
+    List<EquipmentMaintenanceStatistics> equipmentMaintenanceStatistics(String productionId, LocalDate firstOfMonth, LocalDate today);
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java
index e79f405..b621571 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java
@@ -33,6 +33,8 @@
 import org.jeecg.modules.eam.request.EamInspectionOrderQuery;
 import org.jeecg.modules.eam.request.EamInspectionOrderRequest;
 import org.jeecg.modules.eam.service.*;
+import org.jeecg.modules.eam.vo.EquipmentInspectionStatistics;
+import org.jeecg.modules.eam.vo.EquipmentRepairStatistics;
 import org.jeecg.modules.flowable.apithird.business.entity.FlowMyBusiness;
 import org.jeecg.modules.flowable.apithird.business.service.impl.FlowMyBusinessServiceImpl;
 import org.jeecg.modules.flowable.apithird.service.FlowCallBackServiceI;
@@ -40,6 +42,7 @@
 import org.jeecg.modules.flowable.service.IFlowDefinitionService;
 import org.jeecg.modules.flowable.service.IFlowTaskService;
 import org.jeecg.modules.system.entity.SysUser;
+import org.jeecg.modules.system.service.IMdcProductionService;
 import org.jeecg.modules.system.service.IMdcUserProductionService;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -47,6 +50,7 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import java.time.LocalDate;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -83,6 +87,8 @@
     private IEamReportRepairService eamReportRepairService;
     @Autowired
     private IEamEquipmentExtendService eamEquipmentExtendService;
+    @Autowired
+    private IMdcProductionService mdcProductionService;
 
     @Override
     public IPage<EamInspectionOrder> queryPageList(Page<EamInspectionOrder> page, EamInspectionOrderQuery query) {
@@ -148,6 +154,27 @@
     }
 
     @Override
+    public List<EquipmentInspectionStatistics> equipmentInspectionStatistics(String productionId, LocalDate firstOfMonth, LocalDate today) {
+        if (StringUtils.isNotBlank(productionId)) {
+            //杞﹂棿缂栫爜涓嶄负绌�
+            List<String> productIds = mdcProductionService.recursionChildren(productionId);
+            if (CollectionUtil.isEmpty(productIds)) {
+                return Collections.emptyList();
+            }
+            List<EquipmentInspectionStatistics> list = this.baseMapper.equipmentInspectionStatistics(productIds, firstOfMonth.toString(), today.plusDays(1).toString());
+            if (CollectionUtil.isEmpty(list)) {
+                return Collections.emptyList();
+            }
+            return list;
+        }
+        List<EquipmentInspectionStatistics> list = this.baseMapper.equipmentInspectionStatistics(null, firstOfMonth.toString(), today.plusDays(1).toString());
+        if (CollectionUtil.isEmpty(list)) {
+            return Collections.emptyList();
+        }
+        return list;
+    }
+
+    @Override
     @Transactional(rollbackFor = Exception.class)
     public boolean addInspectionOrder(EamInspectionOrderRequest eamInspectionOrderRequest) {
         EamInspectionOrder eamInspectionOrder = new EamInspectionOrder();
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java
index 661eba9..dc69929 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java
@@ -30,12 +30,15 @@
 import org.jeecg.modules.eam.request.EamWeekMaintenanceQuery;
 import org.jeecg.modules.eam.request.EamWeekMaintenanceRequest;
 import org.jeecg.modules.eam.service.*;
+import org.jeecg.modules.eam.vo.EquipmentInspectionStatistics;
+import org.jeecg.modules.eam.vo.EquipmentMaintenanceStatistics;
 import org.jeecg.modules.flowable.apithird.business.entity.FlowMyBusiness;
 import org.jeecg.modules.flowable.apithird.business.service.IFlowMyBusinessService;
 import org.jeecg.modules.flowable.apithird.service.FlowCallBackServiceI;
 import org.jeecg.modules.flowable.apithird.service.FlowCommonService;
 import org.jeecg.modules.flowable.service.IFlowDefinitionService;
 import org.jeecg.modules.flowable.service.IFlowTaskService;
+import org.jeecg.modules.system.service.IMdcProductionService;
 import org.jeecg.modules.system.service.ISysUserService;
 import org.jeecg.modules.system.vo.UserSelector;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -43,6 +46,7 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import java.time.LocalDate;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -80,6 +84,8 @@
     private IEamReportRepairService eamReportRepairService;
     @Autowired
     private IEamEquipmentExtendService eamEquipmentExtendService;
+    @Autowired
+    private IMdcProductionService mdcProductionService;
 
     @Override
     @Transactional(rollbackFor = Exception.class)
@@ -499,6 +505,27 @@
         return eamWeekMaintenanceOrderMapper.selectList(queryWrapper);
     }
 
+    @Override
+    public List<EquipmentMaintenanceStatistics> equipmentMaintenanceStatistics(String productionId, LocalDate firstOfMonth, LocalDate today) {
+        if (StringUtils.isNotBlank(productionId)) {
+            //杞﹂棿缂栫爜涓嶄负绌�
+            List<String> productIds = mdcProductionService.recursionChildren(productionId);
+            if (CollectionUtil.isEmpty(productIds)) {
+                return Collections.emptyList();
+            }
+            List<EquipmentMaintenanceStatistics> list = this.baseMapper.equipmentMaintenanceStatistics(productIds, firstOfMonth.toString(), today.plusDays(1).toString());
+            if (CollectionUtil.isEmpty(list)) {
+                return Collections.emptyList();
+            }
+            return list;
+        }
+        List<EquipmentMaintenanceStatistics> list = this.baseMapper.equipmentMaintenanceStatistics(null, firstOfMonth.toString(), today.plusDays(1).toString());
+        if (CollectionUtil.isEmpty(list)) {
+            return Collections.emptyList();
+        }
+        return list;
+    }
+
     private boolean isUserAuthorized(FlowMyBusiness flowMyBusiness, LoginUser user) {
         List<String> todoUsers = JSON.parseArray(flowMyBusiness.getTodoUsers(), String.class);
         return todoUsers != null && todoUsers.contains(user.getUsername());
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/EquipmentInspectionStatistics.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/EquipmentInspectionStatistics.java
new file mode 100644
index 0000000..3a74079
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/EquipmentInspectionStatistics.java
@@ -0,0 +1,28 @@
+package org.jeecg.modules.eam.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class EquipmentInspectionStatistics implements Serializable {
+    /**
+     * 鏈堜唤
+     */
+    private String monthStr;
+    /**
+     * 璁″垝鏁�
+     */
+    private Integer planNumber;
+    /**
+     * 瀹屾垚鏁�
+     */
+    private Integer completeNumber;
+    public EquipmentInspectionStatistics(){}
+
+    public EquipmentInspectionStatistics(String monthStr){
+        this.monthStr = monthStr;
+        this.planNumber = 0;
+        this.completeNumber = 0;
+    }
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/EquipmentMaintenanceStatistics.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/EquipmentMaintenanceStatistics.java
new file mode 100644
index 0000000..194ef5e
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/EquipmentMaintenanceStatistics.java
@@ -0,0 +1,29 @@
+package org.jeecg.modules.eam.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class EquipmentMaintenanceStatistics implements Serializable {
+    /**
+     * 鏈堜唤
+     */
+    private String monthStr;
+    /**
+     * 璁″垝鏁�
+     */
+    private Integer planNumber;
+    /**
+     * 瀹屾垚鏁�
+     */
+    private Integer completeNumber;
+
+    public EquipmentMaintenanceStatistics(){}
+
+    public EquipmentMaintenanceStatistics(String monthStr){
+        this.monthStr = monthStr;
+        this.planNumber = 0;
+        this.completeNumber = 0;
+    }
+}

--
Gitblit v1.9.3