From 766e3d9f03b6ff9c52a37d14d19304f9822d7c3d Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期二, 09 六月 2026 13:37:10 +0800
Subject: [PATCH] feat:销售台账-审核操作。新增的订单状态是未审核,审核人不能审核本人录入的订单。未审核的订单不能进行任何操作,只能修改、删除和审核

---
 src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java |   59 ++++++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 42 insertions(+), 17 deletions(-)

diff --git a/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java
index b59d466..6eb0871 100644
--- a/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java
+++ b/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java
@@ -10,14 +10,15 @@
 import com.ruoyi.device.execl.DeviceMaintenanceExeclDto;
 import com.ruoyi.device.mapper.DeviceMaintenanceMapper;
 import com.ruoyi.device.pojo.DeviceMaintenance;
+import com.ruoyi.device.service.DeviceMaintenanceFileService;
 import com.ruoyi.device.service.IDeviceMaintenanceService;
 import com.ruoyi.framework.web.domain.AjaxResult;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.List;
 
 
@@ -29,6 +30,9 @@
     @Autowired
     private DeviceMaintenanceMapper deviceMaintenanceMapper;
 
+    @Autowired
+    private DeviceMaintenanceFileService deviceMaintenanceFileService;
+
     @Override
     public IPage<DeviceMaintenanceDto> queryPage(Page page, DeviceMaintenanceDto deviceMaintenanceDto) {
 
@@ -36,17 +40,43 @@
     }
 
     @Override
-    public AjaxResult saveDeviceRepair(DeviceMaintenance deviceRepair) {
-        boolean save = this.save(deviceRepair);
-        if (save){
-            return AjaxResult.success();
+    @Transactional(rollbackFor = Exception.class)
+    public AjaxResult saveDeviceRepair(DeviceMaintenance deviceMaintenance) {
+        // 鍏堜繚瀛樿澶囦繚鍏昏褰�
+        boolean save = this.save(deviceMaintenance);
+        if (!save) {
+            return AjaxResult.error("淇濆瓨澶辫触");
         }
-        return AjaxResult.error();
+
+        // 澶勭悊涓存椂鏂囦欢鍏宠仈
+        if (deviceMaintenance.getTempFileIds() != null && !deviceMaintenance.getTempFileIds().isEmpty()) {
+            for (String tempId : deviceMaintenance.getTempFileIds()) {
+                try {
+                    deviceMaintenanceFileService.bindFromTemp(tempId, deviceMaintenance.getId().intValue(), null);
+                } catch (Exception e) {
+                    throw new RuntimeException("鍏宠仈涓存椂鏂囦欢澶辫触: " + e.getMessage());
+                }
+            }
+        }
+
+        return AjaxResult.success(deviceMaintenance);
     }
 
     @Override
-    public AjaxResult updateDeviceRepair(DeviceMaintenance deviceRepair) {
-        if (this.updateById(deviceRepair)) {
+    @Transactional(rollbackFor = Exception.class)
+    public AjaxResult updateDeviceDeviceMaintenance(DeviceMaintenance deviceMaintenance) {
+        // 澶勭悊涓存椂鏂囦欢鍏宠仈
+        if (deviceMaintenance.getTempFileIds() != null && !deviceMaintenance.getTempFileIds().isEmpty()) {
+            for (String tempId : deviceMaintenance.getTempFileIds()) {
+                try {
+                    deviceMaintenanceFileService.bindFromTemp(tempId, deviceMaintenance.getId().intValue(), null);
+                } catch (Exception e) {
+                    return AjaxResult.error("鍏宠仈涓存椂鏂囦欢澶辫触: " + e.getMessage());
+                }
+            }
+        }
+
+        if (this.updateById(deviceMaintenance)) {
             return AjaxResult.success();
         }
         return AjaxResult.error();
@@ -54,18 +84,13 @@
 
     @Override
     public void export(HttpServletResponse response, Long[] ids) {
-        ArrayList<Long> arrayList = new ArrayList<>();
-        Arrays.stream(ids).map(id -> {
-            return arrayList.add( id);
-        });
-        List<DeviceMaintenance> supplierManageList = deviceMaintenanceMapper.selectBatchIds(arrayList);
+        List<DeviceMaintenance> supplierManageList = deviceMaintenanceMapper.selectList(null);
         ArrayList<DeviceMaintenanceExeclDto> deviceLedgerExeclDtos = new ArrayList<>();
-        supplierManageList.stream().forEach(deviceMaintenance -> {
+        supplierManageList.forEach(deviceMaintenance -> {
             DeviceMaintenanceExeclDto deviceRepairExeclDto = new DeviceMaintenanceExeclDto();
             BeanUtils.copyProperties(deviceMaintenance,deviceRepairExeclDto);
-            deviceRepairExeclDto.setStatus(deviceMaintenance.getStatus() == 0 ? "寰呯淮淇�" : "瀹岀粨");
-            deviceRepairExeclDto.setMaintenanceResult(deviceMaintenance.getMaintenanceResult() == 0 ? "缁翠慨" : "瀹屽ソ");
-
+            deviceRepairExeclDto.setStatus(deviceMaintenance.getStatus() == 0 ? "寰呯淮淇�" : deviceMaintenance.getStatus() == 1 ? "瀹岀粨" : "澶辫触");
+//            deviceRepairExeclDto.setMaintenanceResult(deviceMaintenance.getMaintenanceResult() != null && deviceMaintenance.getMaintenanceResult() == 0 ? "缁翠慨" : "瀹屽ソ");
             deviceLedgerExeclDtos.add(deviceRepairExeclDto);
         });
         ExcelUtil<DeviceMaintenanceExeclDto> util = new ExcelUtil<DeviceMaintenanceExeclDto>(DeviceMaintenanceExeclDto.class);

--
Gitblit v1.9.3