From a4e554b7e6c5b98e728f96be80a12b0b04eebd48 Mon Sep 17 00:00:00 2001
From: cuijian <cuijian@xalxzn.com>
Date: 星期三, 22 十一月 2023 19:10:28 +0800
Subject: [PATCH] 设备完好率、设备开动率报表逻辑开发

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/RepairOrderController.java |   73 +++++++++++++++++++++++++-----------
 1 files changed, 51 insertions(+), 22 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 c37f1dd..fed8a69 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
@@ -1,5 +1,6 @@
 package org.jeecg.modules.eam.controller;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -19,6 +20,7 @@
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.eam.entity.*;
 import org.jeecg.modules.eam.service.*;
+import org.jeecg.modules.eam.vo.EquipmentAvailabilityVo;
 import org.jeecgframework.poi.excel.ExcelImportUtil;
 import org.jeecgframework.poi.excel.def.NormalExcelConstants;
 import org.jeecgframework.poi.excel.entity.ExportParams;
@@ -36,6 +38,7 @@
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.math.BigDecimal;
+import java.text.ParseException;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -121,28 +124,28 @@
 								   HttpServletRequest req) {
 		Page<RepairOrder> page = new Page<RepairOrder>(pageNo, pageSize);
 		IPage<RepairOrder> pageList = repairOrderService.getRepairOrderList(page, repairOrder);
-		for(RepairOrder repairOrder1 : pageList.getRecords()){
-			if(StringUtils.isNotBlank(repairOrder1.getReportRepairId())){
-				EquipmentReportRepair equipmentReportRepair = equipmentReportRepairService.getById(repairOrder1.getReportRepairId());
-				repairOrder1.setReportRepairNum(equipmentReportRepair.getNum());
-			}
-			if(StringUtils.isNotBlank(repairOrder1.getProjectMaintenanceOrderId())){
-				ProjectMaintenanceOrderDetail projectMaintenanceOrderDetail = projectMaintenanceOrderDetailService.getById(repairOrder1.getProjectMaintenanceOrderId());
-				repairOrder1.setProjectMaintenanceOrderNum(projectMaintenanceOrderDetail.getTaskNum());
-			}
-
-			String id = repairOrder1.getId();
-			QueryWrapper<RepairOrderActualWorkHours> wrapper = new QueryWrapper<>();
-			wrapper.eq("repair_order_id", id)
-					.eq("del_flag", 0);
-			wrapper.select("sum(actual_hour) as actualHour");
-			Map<String, Object> map = repairOrderActualWorkHoursService.getMap(wrapper);
-			BigDecimal actualHour = new BigDecimal(0);
-			if (map != null) {
-				actualHour = (BigDecimal) map.get("actualHour");
-			}
-			repairOrder1.setActualHour(actualHour);
-		}
+//		for(RepairOrder repairOrder1 : pageList.getRecords()){
+//			if(StringUtils.isNotBlank(repairOrder1.getReportRepairId())){
+//				EquipmentReportRepair equipmentReportRepair = equipmentReportRepairService.getById(repairOrder1.getReportRepairId());
+//				repairOrder1.setReportRepairNum(equipmentReportRepair.getNum());
+//			}
+//			if(StringUtils.isNotBlank(repairOrder1.getProjectMaintenanceOrderId())){
+//				ProjectMaintenanceOrderDetail projectMaintenanceOrderDetail = projectMaintenanceOrderDetailService.getById(repairOrder1.getProjectMaintenanceOrderId());
+//				repairOrder1.setProjectMaintenanceOrderNum(projectMaintenanceOrderDetail.getTaskNum());
+//			}
+//
+//			String id = repairOrder1.getId();
+//			QueryWrapper<RepairOrderActualWorkHours> wrapper = new QueryWrapper<>();
+//			wrapper.eq("repair_order_id", id)
+//					.eq("del_flag", 0);
+//			wrapper.select("sum(actual_hour) as actualHour");
+//			Map<String, Object> map = repairOrderActualWorkHoursService.getMap(wrapper);
+//			BigDecimal actualHour = new BigDecimal(0);
+//			if (map != null) {
+//				actualHour = (BigDecimal) map.get("actualHour");
+//			}
+//			repairOrder1.setActualHour(actualHour);
+//		}
 		return Result.OK(pageList);
 	}
 
@@ -1700,4 +1703,30 @@
 		 repairOrderService.updateById(repairOrder);
 		 return Result.OK("鎿嶄綔鎴愬姛");
 	 }
+
+	 /**
+	  * 璁惧瀹屽ソ鐜�
+	  *
+	  * @return
+	  */
+	 @GetMapping("/equipmentAvailability")
+	 public JSONObject equipmentAvailability(@RequestParam Map<String, String> query) throws ParseException {
+		 List<EquipmentAvailabilityVo> list = repairOrderService.equipmentAvailability(query);
+		 JSONObject jsonObject = new JSONObject();
+		 jsonObject.put("data",list);
+		 return jsonObject;
+	 }
+
+	 /**
+	  * 璁惧鍙紑鍔ㄧ巼
+	  *
+	  * @return
+	  */
+	 @GetMapping("/getStartRate")
+	 public JSONObject getStartRate(@RequestParam Map<String, String> query) throws ParseException {
+		 List<EquipmentAvailabilityVo> list = repairOrderService.getStartRate(query);
+		 JSONObject jsonObject = new JSONObject();
+		 jsonObject.put("data",list);
+		 return jsonObject;
+	 }
 }

--
Gitblit v1.9.3