From 2f0009c750de4d47a18cce4a5a403fa83ba0c209 Mon Sep 17 00:00:00 2001
From: baoshiwei <baoshiwei@shlanbao.cn>
Date: 星期三, 02 七月 2025 08:58:27 +0800
Subject: [PATCH] feat(report): 新增设备稼动率统计功能

---
 eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/controller/EimsInspectRecordController.java |   49 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 49 insertions(+), 0 deletions(-)

diff --git a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/controller/EimsInspectRecordController.java b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/controller/EimsInspectRecordController.java
index 6a65c62..106896e 100644
--- a/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/controller/EimsInspectRecordController.java
+++ b/eims/ruoyi-modules/lb-eims/src/main/java/org/dromara/eims/controller/EimsInspectRecordController.java
@@ -1,11 +1,22 @@
 package org.dromara.eims.controller;
 
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.time.temporal.TemporalAdjusters;
 import java.util.List;
+import java.util.Map;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import lombok.RequiredArgsConstructor;
 import jakarta.servlet.http.HttpServletResponse;
 import jakarta.validation.constraints.*;
 import cn.dev33.satoken.annotation.SaCheckPermission;
+import org.dromara.common.core.utils.DateUtils;
+import org.dromara.common.core.utils.StringUtils;
+import org.dromara.eims.domain.bo.EimsMaintOrderBo;
+import org.dromara.eims.domain.bo.InspectRecordBo;
+import org.dromara.eims.domain.vo.EimsMaintOrderVo;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.validation.annotation.Validated;
 import org.dromara.common.idempotent.annotation.RepeatSubmit;
@@ -45,6 +56,36 @@
        // return eimsInspectRecordService.queryPageList(bo, pageQuery);
         return eimsInspectRecordService.queryPageListCustom(bo, pageQuery);
     }
+
+    @SaCheckPermission("eims:inspectRecord:list")
+    @GetMapping("/stList")
+    public TableDataInfo<EimsInspectRecordVo> groupDetail(EimsInspectRecordBo bo, PageQuery pageQuery) {
+        // 杩欓噷浣跨敤inspCode浼犻�掍簡 equid + plantime + viewModel锛坉ay-鏃ヨ鍥�  month-鏈堣鍥撅級
+        String inspCode = bo.getInspCode();
+        if (StringUtils.isEmpty(inspCode) || !inspCode.contains("_")) {
+            return TableDataInfo.build(new Page<>(0,0));
+        }
+        String[] split = inspCode.split("_");
+        bo.setEquId(Long.valueOf(split[0]));
+        bo.setInspCode(null);
+        LocalDate planTime = DateUtils.parseDate(split[1]).toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
+        if((split[2].equals("Day"))){
+            LocalDateTime startOfDay = planTime.atStartOfDay();
+            LocalDateTime endOfDay = planTime.plusDays(1).atStartOfDay().minusSeconds(1);
+            Map<String, Object> params = bo.getParams();
+            params.put("beginPlanTime",startOfDay);
+            params.put("endPlanTime",endOfDay);
+        }else if((split[2].equals("Month"))){
+            LocalDate startOfMonth = planTime.with(TemporalAdjusters.firstDayOfMonth());
+            LocalDate endOfMonth = planTime.with(TemporalAdjusters.lastDayOfMonth());
+            Map<String, Object> params = bo.getParams();
+            params.put("beginPlanTime",startOfMonth);
+            params.put("endPlanTime",endOfMonth);
+            params.put("type","Month");
+        }
+        return eimsInspectRecordService.queryPageListCustom(bo, pageQuery);
+    }
+
 
     /**
      * 瀵煎嚭鐐规璁板綍鍒楄〃
@@ -91,6 +132,14 @@
         return toAjax(eimsInspectRecordService.updateByBo(bo));
     }
 
+    @SaCheckPermission("eims:inspectRecord:edit")
+    @Log(title = "鐐规璁板綍-鎵归噺淇敼", businessType = BusinessType.UPDATE)
+    @RepeatSubmit()
+    @PutMapping("editBatch")
+    public R<Void> editBatch(@Validated(EditGroup.class) @RequestBody InspectRecordBo bo) {
+        return toAjax(eimsInspectRecordService.updateBatchByBo(bo));
+    }
+
     /**
      * 鍒犻櫎鐐规璁板綍
      *

--
Gitblit v1.9.3