9b05e167 sonin

设备月报 维修管理情况

1 个父辈 e8a606b6
......@@ -33,6 +33,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.*;
import java.util.stream.Collectors;
/**
* 维修维护报表
......@@ -88,20 +89,20 @@ public class EquipmentInfoMonthReportController {
// 设备管理情况
Map<String,Object> childDataMap = equipmentDetail(childDepartIds, startDate, endDate);
// 设备大修、更新开展情况
CaseWhen caseWhen = new CaseWhen();
caseWhen.selectCaseWhen("equipment_maintain_task.results_enforcement = 3", "hasFinish");
caseWhen.selectCaseWhen("equipment_maintain_task.results_enforcement != 3", "notFinish");
QueryWrapper<?> queryWrapper0 = new QueryWrapper<>();
queryWrapper0.ge("equipment_maintain_task.maintain_time", startDate + BusinessConstant.startTimeSuffix)
.le("equipment_maintain_task.maintain_time", endDate + BusinessConstant.endTimeSuffix)
.eq("equipment_maintain_plan.maintenance_type", "dxjg")
.eq("equipment_maintain_plan.release_status", "1")
.ge("equipment_maintain_plan.start_time", startDate + BusinessConstant.startTimeSuffix)
.le("equipment_maintain_plan.end_time", endDate + BusinessConstant.endTimeSuffix)
.in("equipment_maintain_plan.depart_id", Arrays.asList(childDepartIds.split(",")));
Map<String, Object> queryMap0 = baseService.queryForMap("select " + caseWhen.print() + " from equipment_maintain_task left join equipment_maintain_plan on equipment_maintain_task.plan_id = equipment_maintain_plan.id", queryWrapper0);
childDataMap.put("hasFinish", queryMap0.get("hasFinish"));
childDataMap.put("notFinish", queryMap0.get("notFinish"));
// CaseWhen caseWhen = new CaseWhen();
// caseWhen.selectCaseWhen("equipment_maintain_task.results_enforcement = 3", "hasFinish");
// caseWhen.selectCaseWhen("equipment_maintain_task.results_enforcement != 3", "notFinish");
// QueryWrapper<?> queryWrapper0 = new QueryWrapper<>();
// queryWrapper0.ge("equipment_maintain_task.maintain_time", startDate + BusinessConstant.startTimeSuffix)
// .le("equipment_maintain_task.maintain_time", endDate + BusinessConstant.endTimeSuffix)
// .eq("equipment_maintain_plan.maintenance_type", "dxjg")
// .eq("equipment_maintain_plan.release_status", "1")
// .ge("equipment_maintain_plan.start_time", startDate + BusinessConstant.startTimeSuffix)
// .le("equipment_maintain_plan.end_time", endDate + BusinessConstant.endTimeSuffix)
// .in("equipment_maintain_plan.depart_id", Arrays.asList(childDepartIds.split(",")));
// Map<String, Object> queryMap0 = baseService.queryForMap("select " + caseWhen.print() + " from equipment_maintain_task left join equipment_maintain_plan on equipment_maintain_task.plan_id = equipment_maintain_plan.id", queryWrapper0);
// childDataMap.put("hasFinish", queryMap0.get("hasFinish"));
// childDataMap.put("notFinish", queryMap0.get("notFinish"));
// 设备更新情况
List<Map<String,Object>> childEquipmentUpdateList = equipmentUpdateList(childDepartIds, startDate, endDate);
childDataMap.put("equipmentUpdateList", childEquipmentUpdateList);
......@@ -199,14 +200,15 @@ public class EquipmentInfoMonthReportController {
//设备管理情况
private Map<String,Object> equipmentDetail(String departIds,String startDate,String endDate){
Map<String,Object> dataMap = new HashMap<>();
String inDepartIds = Arrays.stream(departIds.split(",")).map(item -> "'" + item + "'").collect(Collectors.joining(","));
String sql = "";
//月度计划维修费合计XX万元
sql = "select round(sum(ifnull(plan_cost,0))/10000,2) 'plan_cost' from equipment_maintain_plan where release_status = '1' and start_time >= '"+startDate+" 00:00:00' and end_time <='"+endDate+" 23:59:59'";
sql = "select round(sum(ifnull(plan_cost,0))/10000,2) 'plan_cost' from equipment_maintain_plan where release_status = '1' and start_time >= '"+startDate+" 00:00:00' and end_time <='"+endDate+" 23:59:59' and depart_id in (" + inDepartIds + ")";
String plan_cost = commonSqlService.queryForString(sql);
dataMap.put("planCost",plan_cost);//月度计划维修费合计XX万元
//执行XX万元
// sql = "select round(ifnull(sum(total_cost),0)/10000,2) 'repair_cost' from equipment_repair where reality_maintenance_end_time >= '"+startDate+" 00:00:00' and reality_maintenance_end_time <='"+endDate+" 23:59:59'";
sql = "select round(ifnull(sum(maintenance_cost),0)/10000,2) 'repair_cost' from equipment_maintain_task where real_end_time >= '"+startDate+" 00:00:00' and real_end_time <='"+endDate+" 23:59:59'";
sql = "select round(ifnull(sum(maintenance_cost),0)/10000,2) 'repair_cost' from equipment_maintain_task where real_end_time >= '"+startDate+" 00:00:00' and real_end_time <='"+endDate+" 23:59:59' and depart_id in (" + inDepartIds + ")";
String repair_cost = commonSqlService.queryForString(sql);
dataMap.put("repairCost",repair_cost);//执行XX万元
String expression = "100 * "+ repair_cost +" /"+plan_cost;
......@@ -214,21 +216,21 @@ public class EquipmentInfoMonthReportController {
//本月计划开展大修技改项目XX项,完成XX项
sql = " select count(1) 'count' from ( select emp.maintenance_type , emt.results_enforcement from equipment_maintain_task emt left join equipment_maintain_plan emp on emt.plan_id = emp.id ";
sql += " where emt.maintain_time >= '"+startDate+" 00:00:00' and emt.maintain_time <='"+endDate+" 23:59:59' ) aaa where aaa.maintenance_type = 'dxjg' ";
sql = " select count(1) 'count' from ( select emp.maintenance_type , emt.results_enforcement, emt.depart_id from equipment_maintain_task emt left join equipment_maintain_plan emp on emt.plan_id = emp.id ";
sql += " where emt.maintain_time >= '"+startDate+" 00:00:00' and emt.maintain_time <='"+endDate+" 23:59:59' ) aaa where aaa.maintenance_type = 'dxjg' and aaa.depart_id in (" + inDepartIds + ")";
String dxjg_count = commonSqlService.queryForString(sql);
dataMap.put("dxjgCount",dxjg_count);//本月计划开展大修技改项目XX项,完成XX项
sql = " select count(1) 'count' from ( select emp.maintenance_type , emt.results_enforcement from equipment_maintain_task emt left join equipment_maintain_plan emp on emt.plan_id = emp.id ";
sql += " where emt.maintain_time >= '"+startDate+" 00:00:00' and emt.maintain_time <='"+endDate+" 23:59:59' ) aaa where aaa.results_enforcement >2 and aaa.maintenance_type = 'dxjg' ";
sql = " select count(1) 'count' from ( select emp.maintenance_type , emt.results_enforcement, emt.depart_id from equipment_maintain_task emt left join equipment_maintain_plan emp on emt.plan_id = emp.id ";
sql += " where emt.maintain_time >= '"+startDate+" 00:00:00' and emt.maintain_time <='"+endDate+" 23:59:59' ) aaa where aaa.results_enforcement >2 and aaa.maintenance_type = 'dxjg' and aaa.depart_id in (" + inDepartIds + ")";
String dxjg_complete_count = commonSqlService.queryForString(sql);
dataMap.put("dxjg_complete_count",dxjg_complete_count);//完成XX项
dataMap.put("dxjg_sy_count",dxjg_complete_count);//剩余
//生产类设备资产购置XX台
sql = " select count(1) 'count' from (select emp.maintenance_type , emt.results_enforcement from equipment_maintain_task emt left join equipment_maintain_plan emp on emt.plan_id = emp.id ";
sql += " where emt.maintain_time >= '"+startDate+" 00:00:00' and emt.maintain_time <='"+endDate+" 23:59:59' ) aaa where aaa.results_enforcement >2 and aaa.maintenance_type = 'dxjg'";
sql = " select count(1) 'count' from (select emp.maintenance_type , emt.results_enforcement, emt.depart_id from equipment_maintain_task emt left join equipment_maintain_plan emp on emt.plan_id = emp.id ";
sql += " where emt.maintain_time >= '"+startDate+" 00:00:00' and emt.maintain_time <='"+endDate+" 23:59:59' ) aaa where aaa.results_enforcement >2 and aaa.maintenance_type = 'dxjg' and aaa.depart_id in (" + inDepartIds + ")";
String equipment_count = commonSqlService.queryForString(sql);
dataMap.put("equipmentCount",equipment_count);//生产类设备资产购置XX台
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!