From 7eef12f6ffa0a76abb3a6dfecda9460144655e3a Mon Sep 17 00:00:00 2001
From: “linengliang” <vanSuperEnergy@163.com>
Date: 星期六, 18 十一月 2023 12:32:32 +0800
Subject: [PATCH] 维修工单

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java |   89 ++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 85 insertions(+), 4 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java
index 073cfe2..c37f1dd 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import io.swagger.annotations.Api;
@@ -1501,7 +1502,7 @@
 	 public Result<?> orderStart(@RequestBody RepairOrder repairOrder){
 	 	if(StringUtils.isNotBlank(repairOrder.getReportRepairId())){
 			EquipmentReportRepair equipmentReportRepair = equipmentReportRepairService.getById(repairOrder.getReportRepairId());
-			equipmentReportRepair.setStatus("3");
+			equipmentReportRepair.setStatus("2");
 			equipmentReportRepairService.updateById(equipmentReportRepair);
 			if(StringUtils.isNotBlank(equipmentReportRepair.getEquipmentId())){
 				Equipment equipment = equipmentService.getById(equipmentReportRepair.getEquipmentId());
@@ -1528,7 +1529,12 @@
 			projectMaintenanceOrder.setTypeStatus("underExecution");
 			projectMaintenanceOrderService.updateById(projectMaintenanceOrder);
 		}
-		 return Result.OK(repairOrderService.update(new UpdateWrapper<RepairOrder>().set("status",3).set("actual_start_time",new Date(System.currentTimeMillis())).eq("id",repairOrder.getId())));
+	 	 repairOrder
+				 .setStatus("3")
+				 .setActualStartTime(new Date())
+				 .setRepairOrderUda1("normal");
+	 	 repairOrderService.updateById(repairOrder);
+		 return Result.OK("寮�宸ユ垚鍔�");
 	 }
 	 /**
 	  * 宸ュ崟鎶ュ伐
@@ -1536,6 +1542,7 @@
 	  * @return
 	  */
 	 @PutMapping(value = "/report")
+	 @Transactional(rollbackFor = {Exception.class})
 	 public Result<?> orderReport(@RequestBody RepairOrder repairOrder){
 		 if(StringUtils.isNotBlank(repairOrder.getProjectMaintenanceOrderId())){
 			 //鍒ゆ柇椤圭洰鎬х淮淇瓙琛ㄧ姸鎬�
@@ -1567,9 +1574,19 @@
 		 }
 		 LoginUser user= (LoginUser)SecurityUtils.getSubject().getPrincipal();
 		 if(StringUtils.isNotBlank(repairOrder.getReportRepairId())){
-			 equipmentReportRepairService.update(new UpdateWrapper<EquipmentReportRepair>().eq("id",repairOrder.getReportRepairId()).set("status",3));
+			 equipmentReportRepairService.update(new UpdateWrapper<EquipmentReportRepair>().eq("id",repairOrder.getReportRepairId()).set("status",4));
 		 }
-		 return Result.OK(repairOrderService.update(new UpdateWrapper<RepairOrder>().set("status",4).set("actual_end_time",new Date(System.currentTimeMillis())).set("recipient_user_id",user.getId()).eq("id",repairOrder.getId())));
+		 Date now = new Date();
+		 Date start = repairOrder.getActualStartTime();
+		 long timeDifference = now.getTime() - start.getTime();
+		 BigDecimal hours = new BigDecimal(timeDifference)
+				 .divide(new BigDecimal(60 * 60 * 1000), 3, BigDecimal.ROUND_HALF_EVEN);
+		 repairOrder.setStatus("4");
+		 repairOrder.setActualEndTime(now);
+		 repairOrder.setActualHour(hours);
+		 repairOrder.setRecipientUserId(user.getId());
+		 repairOrderService.updateById(repairOrder);
+		 return Result.OK("鎶ュ伐鎴愬姛");
 	 }
 	 /**
 	  * 宸ュ崟鎾ら攢
@@ -1619,4 +1636,68 @@
 	 	equipmentReportRepairService.updateBatchById(equipmentReportRepairs);
 	 	return Result.OK("棰嗗彇鎴愬姛");
 	 }
+	 /**
+	  * 宸ュ崟绛夊浠�
+	  * @param repairOrder
+	  * @return
+	  */
+	 @PutMapping(value = "/handleSpare")
+	 @Transactional(rollbackFor = {Exception.class})
+	 public Result<?> handleSpare(@RequestBody RepairOrder repairOrder){
+		repairOrder.setRepairOrderUda2(new Date());
+		repairOrder.setRepairOrderUda1("needSpare");
+		repairOrderService.updateById(repairOrder);
+		return Result.OK("鎿嶄綔鎴愬姛");
+	 }
+	 /**
+	  * 宸ュ崟鍋滄绛夊浠�
+	  * @param repairOrder
+	  * @return
+	  */
+	 @PutMapping(value = "/handleSpareStop")
+	 @Transactional(rollbackFor = {Exception.class})
+	 public Result<?> handleSpareStop(@RequestBody RepairOrder repairOrder){
+	 	 Date now = new Date();
+	 	 Date start = repairOrder.getRepairOrderUda2();
+		 long timeDifference = now.getTime() - start.getTime();
+		 BigDecimal hours = new BigDecimal(timeDifference)
+				 .divide(new BigDecimal(60 * 60 * 1000), 3, BigDecimal.ROUND_HALF_EVEN);
+		 repairOrder.setRepairOrderUda3(now);
+		 repairOrder.setRepairOrderUda1("normal");
+		 repairOrder.setSpareTime(hours);
+		 repairOrderService.updateById(repairOrder);
+		 return Result.OK("鎿嶄綔鎴愬姛");
+	 }
+	 /**
+	  * 宸ュ崟绛夊姞宸ヤ欢
+	  * @param repairOrder
+	  * @return
+	  */
+	 @PutMapping(value = "/handlePart")
+	 @Transactional(rollbackFor = {Exception.class})
+	 public Result<?> handlePart(@RequestBody RepairOrder repairOrder){
+		 repairOrder.setRepairOrderUda4(new Date());
+		 repairOrder.setRepairOrderUda1("needPart");
+		 repairOrderService.updateById(repairOrder);
+		 return Result.OK("鎿嶄綔鎴愬姛");
+	 }
+	 /**
+	  * 宸ュ崟鍋滄绛夊姞宸ヤ欢
+	  * @param repairOrder
+	  * @return
+	  */
+	 @PutMapping(value = "/handlePartStop")
+	 @Transactional(rollbackFor = {Exception.class})
+	 public Result<?> handlePartStop(@RequestBody RepairOrder repairOrder){
+		 Date now = new Date();
+		 Date start = repairOrder.getRepairOrderUda4();
+		 long timeDifference = now.getTime() - start.getTime();
+		 BigDecimal hours = new BigDecimal(timeDifference)
+				 .divide(new BigDecimal(60 * 60 * 1000), 3, BigDecimal.ROUND_HALF_EVEN);
+		 repairOrder.setRepairOrderUda5(now);
+		 repairOrder.setRepairOrderUda1("normal");
+		 repairOrder.setPartTime(hours);
+		 repairOrderService.updateById(repairOrder);
+		 return Result.OK("鎿嶄綔鎴愬姛");
+	 }
 }

--
Gitblit v1.9.3