From 4c9c08844bfd952babda3cb0b30b75e07bc5df0e Mon Sep 17 00:00:00 2001
From: “linengliang” <vanSuperEnergy@163.com>
Date: 星期二, 17 十月 2023 17:28:09 +0800
Subject: [PATCH] 保养变更申请单

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/PlanChangeApplyController.java |   60 +++++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 51 insertions(+), 9 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/PlanChangeApplyController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/PlanChangeApplyController.java
index 3fa85bf..ef658b0 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/PlanChangeApplyController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/PlanChangeApplyController.java
@@ -1,22 +1,24 @@
 package org.jeecg.modules.eam.controller;
 
 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.extension.plugins.pagination.Page;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.util.DateUtils;
 import org.jeecg.modules.eam.entity.DailyMaintenanceOrder;
+import org.jeecg.modules.eam.entity.EquipmentMaintenancePlanDetail;
 import org.jeecg.modules.eam.entity.MaintenanceCycle;
 import org.jeecg.modules.eam.entity.PlanChangeApply;
-import org.jeecg.modules.eam.service.IDailyMaintenanceOrderService;
-import org.jeecg.modules.eam.service.IMaintenanceCycleService;
-import org.jeecg.modules.eam.service.IPlanChangeApplyService;
+import org.jeecg.modules.eam.service.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.servlet.ModelAndView;
@@ -45,7 +47,10 @@
 
 	@Autowired
 	private IMaintenanceCycleService maintenanceCycleService;
-	
+
+	@Autowired
+	private IEquipmentMaintenancePlanDetailService maintenancePlanDetailService;
+
 	/**
 	 * 鍒嗛〉鍒楄〃鏌ヨ
 	 *
@@ -67,7 +72,7 @@
 		IPage<PlanChangeApply> pageList = planChangeApplyService.page(page, queryWrapper);
 		return Result.OK(pageList);
 	}
-	
+
 	/**
 	 *   娣诲姞
 	 *
@@ -106,7 +111,7 @@
 
 		return Result.OK("娣诲姞鎴愬姛锛�");
 	}
-	
+
 	/**
 	 *  缂栬緫
 	 *
@@ -121,7 +126,7 @@
 		planChangeApplyService.updateById(planChangeApply);
 		return Result.OK("缂栬緫鎴愬姛!");
 	}
-	
+
 	/**
 	 *   閫氳繃id鍒犻櫎
 	 *
@@ -136,7 +141,7 @@
 		planChangeApplyService.removeById(id);
 		return Result.OK("鍒犻櫎鎴愬姛!");
 	}
-	
+
 	/**
 	 *  鎵归噺鍒犻櫎
 	 *
@@ -151,7 +156,7 @@
 		this.planChangeApplyService.removeByIds(Arrays.asList(ids.split(",")));
 		return Result.OK("鎵归噺鍒犻櫎鎴愬姛!");
 	}
-	
+
 	/**
 	 * 閫氳繃id鏌ヨ
 	 *
@@ -193,5 +198,42 @@
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         return super.importExcel(request, response, PlanChangeApply.class);
     }
+	@PostMapping(value = "/addForPlan")
+	public Result<String> addForPlan(@RequestBody PlanChangeApply planChangeApply) {
+    	DailyMaintenanceOrder dailyMaintenanceOrder = dailyMaintenanceOrderService
+				.getOne(new QueryWrapper<DailyMaintenanceOrder>()
+						.eq("maintenance_order_uda1",planChangeApply.getPlanId())
+						.eq("maintenance_order_uda2",planChangeApply.getId()),false);
+    	if(ObjectUtils.isNull(dailyMaintenanceOrder)){
+    		return Result.error("灏氭湭鐢熸垚宸ュ崟锛屾棤闇�鐢宠");
+		}else if(!dailyMaintenanceOrder.getStatus().equals(CommonConstant.STATUS_1)){
+            return Result.error("宸ュ崟宸蹭笅杈句笉鍏佽杩涜鍙樻洿");
+		}
+		maintenancePlanDetailService.update(new UpdateWrapper<EquipmentMaintenancePlanDetail>().eq("id",planChangeApply.getId()).set("plan_start_time",planChangeApply.getPlanDelayTime()));
+		planChangeApply.setMaintenanceOrderId(dailyMaintenanceOrder.getId());
+		planChangeApply.setId("");
+		planChangeApplyService.save(planChangeApply);
+		/**
+		 * 鏍规嵁鐢宠寤朵繚鏃堕棿  閲嶆柊璁$畻宸ュ崟鐨勭粨鏉熸椂闂�
+		 */
+		String maintenanceCycleId = dailyMaintenanceOrder.getMaintenanceCycleId();
+		Date planDelayTime = planChangeApply.getPlanDelayTime();
+		MaintenanceCycle maintenanceCycle = maintenanceCycleService.getById(maintenanceCycleId);
+		String unit = maintenanceCycle.getUnit();
+		int effectiveTime = maintenanceCycle.getEffectiveTime().intValue();
+		Date date = null;
+		if ("min".equals(unit)) {
+			date = DateUtils.getMinAfter(planDelayTime, effectiveTime);
+		} else if ("hour".equals(unit)) {
+			date = DateUtils.getHourAfter(planDelayTime, effectiveTime);
+		} else if ("day".equals(unit)) {
+			date = DateUtils.getDayAfter(planDelayTime, effectiveTime);
+		}
+		dailyMaintenanceOrder.setPlanEndTime(date);
+		dailyMaintenanceOrder.setPlanStartTime(planDelayTime);
+		dailyMaintenanceOrderService.updateById(dailyMaintenanceOrder);
+		return Result.OK("娣诲姞鎴愬姛锛�");
+	}
+
 
 }

--
Gitblit v1.9.3