From fc8c86e7a365d5c6bdc37c2b05b9f83115ac2bc3 Mon Sep 17 00:00:00 2001
From: shiyunteng <shiyunteng@example.com>
Date: 星期三, 23 四月 2025 17:30:52 +0800
Subject: [PATCH] 巡检任务  设备维修新增是否生成工单

---
 platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceRepairServiceImpl.java |   38 ++++++++++++++++++++++++++++++++++----
 1 files changed, 34 insertions(+), 4 deletions(-)

diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceRepairServiceImpl.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceRepairServiceImpl.java
index c483823..9f287e0 100644
--- a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceRepairServiceImpl.java
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceRepairServiceImpl.java
@@ -1,12 +1,20 @@
 package com.by4cloud.platformx.device.service.impl;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.by4cloud.platformx.common.core.util.R;
+import com.by4cloud.platformx.device.constant.CommonStatusContant;
+import com.by4cloud.platformx.device.constant.MaxSizeContant;
+import com.by4cloud.platformx.device.dto.DeviceRepairQueryDTO;
 import com.by4cloud.platformx.device.entity.DeviceInventory;
 import com.by4cloud.platformx.device.entity.DeviceRepair;
+import com.by4cloud.platformx.device.entity.WorkOrder;
 import com.by4cloud.platformx.device.mapper.DeviceInventoryMapper;
 import com.by4cloud.platformx.device.mapper.DeviceRepairMapper;
+import com.by4cloud.platformx.device.mapper.WorkOrderMapper;
 import com.by4cloud.platformx.device.service.DeviceRepairService;
+import com.by4cloud.platformx.device.service.JcMaxSizeService;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
 /**
@@ -20,14 +28,16 @@
 public class DeviceRepairServiceImpl extends ServiceImpl<DeviceRepairMapper, DeviceRepair> implements DeviceRepairService {
 
 	private final DeviceInventoryMapper inventoryMapper;
+	private final JcMaxSizeService maxSizeService;
+	private final WorkOrderMapper workOrderMapper;
 
 	@Override
 	public R approved(Long id) {
 		DeviceRepair repair = baseMapper.selectById(id);
-		repair.setStatus(2);
+		repair.setStatus(CommonStatusContant.DEVICE_REPAIR_STATUS_REPAIRING);
 		baseMapper.updateById(repair);
 		DeviceInventory inventory = inventoryMapper.selectById(repair.getInventoryId());
-		inventory.setInventoryStatus(3);
+		inventory.setInventoryStatus(CommonStatusContant.DEVICE_INVENTORY_REPAIRING);
 		inventoryMapper.updateById(inventory);
 		return R.ok();
 	}
@@ -35,11 +45,31 @@
 	@Override
 	public R complete(Long id) {
 		DeviceRepair repair = baseMapper.selectById(id);
-		repair.setStatus(3);
+		repair.setStatus(CommonStatusContant.DEVICE_REPAIR_STATUS_COMPLETE);
 		baseMapper.updateById(repair);
 		DeviceInventory inventory = inventoryMapper.selectById(repair.getInventoryId());
-		inventory.setInventoryStatus(1);
+		inventory.setInventoryStatus(CommonStatusContant.DEVICE_INVENTORY_USABLE);
 		inventoryMapper.updateById(inventory);
 		return R.ok();
 	}
+
+	@Override
+	public IPage pageNew(Page page, DeviceRepairQueryDTO queryDTO) {
+		return baseMapper.pageNew(page,queryDTO);
+	}
+
+	@Override
+	public R genWorkOrder(Long id) {
+		DeviceRepair repair = baseMapper.selectById(id);
+		WorkOrder workOrder = new WorkOrder();
+		workOrder.setRepairId(id);
+		workOrder.setWoCode(maxSizeService.nextNo(MaxSizeContant.DEVICE_PURCHASE_CODE));
+		workOrder.setWoDesc(repair.getRepairDesc());
+		workOrder.setWoType(CommonStatusContant.WORK_ORDER_TYPE_REPAIR);
+		workOrder.setWoStatus(CommonStatusContant.WORK_ORDER_STATUS_ALLOCATED);
+		workOrderMapper.insert(workOrder);
+		repair.setWoFlag(CommonStatusContant.DEVICE_REPAIR_FLAG_Y);
+		baseMapper.updateById(repair);
+		return R.ok();
+	}
 }
\ No newline at end of file

--
Gitblit v1.9.1