From 9b015b51b72ba050b4c38a6ba79eb45b7065e67d Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期四, 25 七月 2024 10:11:52 +0800
Subject: [PATCH] 调整sql

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/FaultIntervalTimeController.java |   86 ++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 84 insertions(+), 2 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/FaultIntervalTimeController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/FaultIntervalTimeController.java
index 58abbaf..8acf2b2 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/FaultIntervalTimeController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/FaultIntervalTimeController.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.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -8,19 +9,25 @@
 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.Equipment;
 import org.jeecg.modules.eam.entity.FaultIntervalTime;
+import org.jeecg.modules.eam.service.IEamEquipmentService;
 import org.jeecg.modules.eam.service.IFaultIntervalTimeService;
+import org.jeecg.modules.eam.vo.EquipmentAvailabilityVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.servlet.ModelAndView;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import java.util.Arrays;
+import java.text.ParseException;
+import java.util.*;
 
- /**
+/**
  * @Description: mom_eam_fault_interval_time
  * @Author: jeecg-boot
  * @Date:   2023-08-30
@@ -31,8 +38,11 @@
 @RequestMapping("/eam/faultIntervalTime")
 @Slf4j
 public class FaultIntervalTimeController extends JeecgController<FaultIntervalTime, IFaultIntervalTimeService> {
+
 	@Autowired
 	private IFaultIntervalTimeService faultIntervalTimeService;
+	@Autowired
+	private IEamEquipmentService equipmentService;
 	
 	/**
 	 * 鍒嗛〉鍒楄〃鏌ヨ
@@ -158,4 +168,76 @@
         return super.importExcel(request, response, FaultIntervalTime.class);
     }
 
+
+	/**
+	 * 鐢熶骇璁惧骞冲潎鏁呴殰闂撮殧鏃堕棿MTBF
+	 * (璇存槑:璁惧骞冲潎鎶�闅滈棿闅旀湡 (MTBF): 鎸囧湪瑙勫畾鏈熷唴锛岃澶囨棤鏁呴殰宸ヤ綔鏃堕棿鐨勫钩鍧囧�笺�傝澶囩殑骞冲潎鏁呴殰鍚岄殧鏈熸寚鏍囪秺澶уソ锛岃〃鏄庤澶囨棤鏁呴殰杩愯鏃堕棿闀裤��
+	 * 璁惧骞冲潎鏁呴殰闂撮殧鏈燂紙MTBP锛�=锛堟棩鍘嗘椂闂�-鎬绘晠闅滃仠鏈烘椂闂达級/鎬绘晠闅滄鏁帮級
+	 *
+	 * @return
+	 */
+	@GetMapping("/getMTBF")
+	public JSONObject getMTBF(@RequestParam Map<String, String> query) throws ParseException {
+		Map<String,Object> result= new HashMap<>();
+		IPage<FaultIntervalTime> pageData = new Page<FaultIntervalTime>();
+		List<FaultIntervalTime> list = faultIntervalTimeService.getMTBF(query);
+		JSONObject jsonObject = new JSONObject();
+		jsonObject.put("data",list);
+		return jsonObject;
+	}
+
+	@GetMapping("/get2MTBF")
+	public JSONObject get2MTBF(@RequestParam Map<String, Object> query) throws ParseException {
+		List<Map<String, Object>> equipmentList = faultIntervalTimeService.getEquipmentList(query);
+		List<FaultIntervalTime> faultIntervalTimeList = new ArrayList<>();
+		for (Map<String, Object> map : equipmentList) {
+			query.put("equipmentId",map.get("id"));
+
+			List<Map<String, Object>> equipmentMTBF = faultIntervalTimeService.getEquipmentMTBF(query);
+
+			FaultIntervalTime faultIntervalTime = new FaultIntervalTime();
+			faultIntervalTime.setEquipmentId((String)map.get("id"));
+			faultIntervalTime.setEquipmentNum((String)map.get("num"));
+			faultIntervalTime.setEquipmentName((String)map.get("name"));
+			faultIntervalTime.setEquipmentModel((String)map.get("model"));
+			faultIntervalTime.setUserDepart((String)map.get("departName"));
+			if(equipmentMTBF.size()>0){
+				faultIntervalTime.setTotalAvailableTime(equipmentMTBF.get(0).get("totalAvailableTime").toString());
+				faultIntervalTime.setNoFaultTime(equipmentMTBF.get(0).get("noFaultTime").toString());
+				faultIntervalTime.setFaultTime(equipmentMTBF.get(0).get("faultTime").toString());
+				faultIntervalTime.setFaultNumber(equipmentMTBF.get(0).get("faultNumber").toString());
+				faultIntervalTime.setAverageRepairTime(equipmentMTBF.get(0).get("averageRepairTime").toString());
+				faultIntervalTime.setAverageFaultIntervalTime(equipmentMTBF.get(0).get("averageFaultIntervalTime").toString());
+				faultIntervalTime.setRepairTime(equipmentMTBF.get(0).get("repairTime").toString());
+				faultIntervalTimeList.add(faultIntervalTime);
+			}else{
+				List<Map<String, Object>> mtbfTotalAvailableTime = faultIntervalTimeService.getMTBFTotalAvailableTime(query);
+				if(query.get("startTime") != "" && query.get("endTime") != ""){
+					faultIntervalTime.setTotalAvailableTime(mtbfTotalAvailableTime.get(0).get("totalAvailableTime").toString());
+					faultIntervalTime.setNoFaultTime(mtbfTotalAvailableTime.get(0).get("totalAvailableTime").toString());
+					faultIntervalTime.setAverageFaultIntervalTime(mtbfTotalAvailableTime.get(0).get("totalAvailableTime").toString());
+				}else{
+					faultIntervalTime.setTotalAvailableTime("0");
+					faultIntervalTime.setNoFaultTime("0");
+					faultIntervalTime.setAverageFaultIntervalTime("0");
+				}
+				faultIntervalTime.setFaultTime("0");
+				faultIntervalTime.setFaultNumber("0");
+				faultIntervalTime.setAverageRepairTime("0");
+				faultIntervalTime.setRepairTime("0");
+				faultIntervalTimeList.add(faultIntervalTime);
+			}
+
+		}
+//		Map<String,Object> result= new HashMap<>();
+//		IPage<FaultIntervalTime> pageData = new Page<FaultIntervalTime>();
+//		List<FaultIntervalTime> list = faultIntervalTimeService.getMTBF(query);
+		JSONObject jsonObject = new JSONObject();
+		jsonObject.put("data",faultIntervalTimeList);
+		return jsonObject;
+	}
+
+
+
+
 }

--
Gitblit v1.9.3