package org.jeecg.modules.eam.controller;
|
|
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.modules.eam.constant.EquipmentMaintenanceStatus;
|
import org.jeecg.modules.eam.constant.EquipmentRepairStatus;
|
import org.jeecg.modules.eam.entity.EamEquipment;
|
import org.jeecg.modules.eam.service.IEamEquipmentService;
|
import org.jeecg.modules.eam.vo.EquipmentMaintenanceStatistics;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import java.util.ArrayList;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
@Slf4j
|
@Api(tags="设备管理-首页看板接口")
|
@RestController
|
@RequestMapping("/eam/dashboard")
|
public class EamDashboardController {
|
@Autowired
|
private IEamEquipmentService eamEquipmentService;
|
|
@ApiOperation(value="看板接口-维保状态统计", notes="看板接口-维保状态统计")
|
@GetMapping(value = "/equipmentStatusStatistics")
|
public Result<?> equipmentStatusStatistics(@RequestParam(required = false, value = "productionId") String productionId) {
|
List<EamEquipment> list = eamEquipmentService.queryByProductionId(productionId);
|
//初始化返回
|
Map<String, EquipmentMaintenanceStatistics> statisticsMap = new HashMap<>();
|
statisticsMap.put(EquipmentMaintenanceStatus.NORMAL.name(), new EquipmentMaintenanceStatistics(EquipmentMaintenanceStatus.NORMAL.name(), "正常"));
|
statisticsMap.put(EquipmentMaintenanceStatus.UNDER_INSPECTION.name(), new EquipmentMaintenanceStatistics(EquipmentMaintenanceStatus.UNDER_INSPECTION.name(), "点检"));
|
statisticsMap.put(EquipmentMaintenanceStatus.UNDER_MAINTENANCE.name(), new EquipmentMaintenanceStatistics(EquipmentMaintenanceStatus.UNDER_MAINTENANCE.name(), "保养"));
|
statisticsMap.put(EquipmentRepairStatus.UNDER_REPAIR.name(), new EquipmentMaintenanceStatistics(EquipmentRepairStatus.UNDER_REPAIR.name(), "维修"));
|
|
for (EamEquipment entity : list) {
|
if(EquipmentMaintenanceStatus.NORMAL.name().equals(entity.getMaintenanceStatus()) && EquipmentMaintenanceStatus.NORMAL.name().equals(entity.getRepairStatus())) {
|
//正常状态
|
statisticsMap.get(EquipmentMaintenanceStatus.NORMAL.name()).increase();
|
}else if(!EquipmentMaintenanceStatus.NORMAL.name().equals(entity.getRepairStatus())) {
|
//维修状态
|
statisticsMap.get(EquipmentRepairStatus.UNDER_REPAIR.name()).increase();
|
} else if(EquipmentMaintenanceStatus.UNDER_MAINTENANCE.name().equals(entity.getMaintenanceStatus()) || EquipmentMaintenanceStatus.WAIT_CONFIRM.name().equals(entity.getMaintenanceStatus())) {
|
//保养状态
|
statisticsMap.get(EquipmentMaintenanceStatus.UNDER_MAINTENANCE.name()).increase();
|
} else {
|
statisticsMap.get(EquipmentMaintenanceStatus.UNDER_INSPECTION.name()).increase();
|
}
|
}
|
List<EquipmentMaintenanceStatistics> resultList = new ArrayList<>(statisticsMap.values());
|
return Result.ok(resultList);
|
}
|
}
|