From b701cf0331e91900bf8055009a745d4953a6c510 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期一, 30 三月 2026 17:58:23 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/hxsj' into hxsj

---
 src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java |   42 ++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 40 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java b/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java
index abac6a7..c0d89df 100644
--- a/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java
+++ b/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java
@@ -3,13 +3,21 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.device.dto.DeviceLedgerDto;
+import com.ruoyi.device.execl.DeviceLedgerExeclDto;
+import com.ruoyi.device.mapper.DeviceLedgerMapper;
+import com.ruoyi.device.mapper.DeviceMaintenanceMapper;
 import com.ruoyi.device.pojo.DeviceLedger;
+import com.ruoyi.device.pojo.DeviceMaintenance;
 import com.ruoyi.device.service.IDeviceLedgerService;
+import com.ruoyi.framework.aspectj.lang.annotation.Anonymous;
+import com.ruoyi.framework.aspectj.lang.annotation.Log;
+import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
 import com.ruoyi.framework.web.domain.AjaxResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiModelProperty;
-import org.apache.commons.lang3.ArrayUtils;
+import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
@@ -17,7 +25,7 @@
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.util.ArrayList;
-import java.util.Arrays;
+import java.util.List;
 
 @Api(tags = "璁惧鍙拌处绠$悊")
 @RequestMapping("/device/ledger")
@@ -26,6 +34,14 @@
 
     @Autowired
     private IDeviceLedgerService deviceLedgerService;
+
+    @Autowired
+    private DeviceLedgerMapper deviceLedgerMapper;
+
+    @Autowired
+    private DeviceMaintenanceMapper deviceMaintenanceMapper;
+
+
 
     @ApiModelProperty("璁惧鍙拌处鍒楄〃")
     @GetMapping("/page")
@@ -70,6 +86,7 @@
 
     @PostMapping("import")
     @ApiModelProperty("瀵煎叆璁惧鍙拌处")
+    @Log(title = "璁惧鍙拌处瀵煎叆", businessType = BusinessType.IMPORT)
     public AjaxResult importData(MultipartFile file) throws IOException {
         Boolean b = deviceLedgerService.importData(file);
         if (b) {
@@ -78,6 +95,14 @@
         return AjaxResult.error("瀵煎叆澶辫触");
     }
 
+    @PostMapping("/downloadTemplate")
+    @ApiModelProperty("涓嬭浇瀵煎叆妯℃澘")
+    @Log(title = "璁惧鍙拌处瀵煎叆", businessType = BusinessType.IMPORT)
+    public void downloadTemplate(HttpServletResponse response) {
+        ExcelUtil<DeviceLedgerExeclDto> util = new ExcelUtil<DeviceLedgerExeclDto>(DeviceLedgerExeclDto.class);
+        util.importTemplateExcel(response, "璁惧鍙拌处妯℃澘");
+    }
+
 
     @GetMapping("getDeviceLedger")
     @ApiModelProperty("鑾峰彇璁惧鍙拌处")
@@ -85,4 +110,17 @@
         return AjaxResult.success(deviceLedgerService.list(new QueryWrapper<DeviceLedger>().lambda()
                 .select(DeviceLedger::getId, DeviceLedger::getDeviceName,DeviceLedger::getDeviceModel)));
     }
+
+    @GetMapping("scanDevice")
+    @ApiOperation("鑾峰彇璁惧鍙拌处")
+    @Anonymous
+    public AjaxResult scanDevice(Long id) {
+        List<DeviceMaintenance> list = deviceMaintenanceMapper.list1(id);
+        DeviceLedger deviceLedger = deviceLedgerMapper.selectById1(id);
+        if (list.size()>0){
+            deviceLedger.setUpdateTime(list.get(0).getMaintenanceActuallyTime());//鏈�鍚庣淮鎶ゆ椂闂�
+        }
+        deviceLedger.setCreateTime(deviceLedger.getUpdateTime().plusMonths(1));//涓嬫缁存姢鏃堕棿
+        return AjaxResult.success(deviceLedger);
+    }
 }

--
Gitblit v1.9.3