package org.jeecg.modules.eam.service.impl;
|
|
import cn.hutool.core.date.DateUtil;
|
import org.jeecg.modules.eam.constant.SecondMaintenanceStatusEnum;
|
import org.jeecg.modules.eam.constant.ThirdMaintenanceStatusEnum;
|
import org.jeecg.modules.eam.entity.EamSecondMaintenanceOrder;
|
import org.jeecg.modules.eam.entity.EamThirdMaintenanceOrder;
|
import org.jeecg.modules.eam.mapper.EquipmentHomeMapper;
|
import org.jeecg.modules.eam.service.IEquipmentHomeService;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.util.*;
|
import java.util.stream.Collectors;
|
|
@Service
|
public class EquipmentHomeServiceImpl implements IEquipmentHomeService {
|
|
@Autowired
|
private EquipmentHomeMapper equipmentHomeMapper;
|
|
/**
|
*首页 技术状态数量统计
|
*/
|
@Override
|
public List<Map<String, Object>> getEquipmentTechnologyStatusList() {
|
return this.equipmentHomeMapper.getEquipmentTechnologyStatusList();
|
}
|
|
/**
|
*首页 设备报修情况统计
|
*/
|
@Override
|
public List<Map<String, Object>> getReportRepairEquipmentList() {
|
return this.equipmentHomeMapper.getReportRepairEquipmentList();
|
}
|
|
/**
|
*首页 三保计划
|
* @return
|
*/
|
@Override
|
public Map<String, Object> getThirdGuaranteesPlan() {
|
Map<String, Object> map = new HashMap<>();
|
//获取本月三保计划
|
List<EamThirdMaintenanceOrder> thirdMaintenanceOrderList = equipmentHomeMapper.getThirdGuaranteesPlan(DateUtil.format(new Date(), "yyyy-MM"));
|
//获取下月三保计划
|
List<EamThirdMaintenanceOrder> nextThirdMaintenanceOrderList = equipmentHomeMapper.getThirdGuaranteesPlan(DateUtil.format(DateUtil.nextMonth(), "yyyy-MM"));
|
map.put("thisMonthCount", thirdMaintenanceOrderList.size());
|
map.put("thisMonthFinishCount", thirdMaintenanceOrderList.stream().filter(eamThirdMaintenanceOrder -> ThirdMaintenanceStatusEnum.COMPLETE.name().equals(eamThirdMaintenanceOrder.getMaintenanceStatus())).collect(Collectors.toList()).size());
|
map.put("thisMonthOverdueCount", thirdMaintenanceOrderList.stream().filter(eamThirdMaintenanceOrder -> ThirdMaintenanceStatusEnum.EXPIRED.name().equals(eamThirdMaintenanceOrder.getMaintenanceStatus())).collect(Collectors.toList()).size());
|
map.put("nextMonthCount", nextThirdMaintenanceOrderList.size());
|
return map;
|
}
|
|
/**
|
*首页 二保计划
|
*/
|
@Override
|
public Map<String, Object> getSecondGuaranteesPlan() {
|
Map<String, Object> map = new HashMap<>();
|
//获取本月二保计划
|
List<EamSecondMaintenanceOrder> secondMaintenanceOrderList = equipmentHomeMapper.getSecondGuaranteesPlan(DateUtil.format(new Date(), "yyyy-MM"));
|
//获取下月二保计划
|
List<EamSecondMaintenanceOrder> nextsecondMaintenanceOrderList = equipmentHomeMapper.getSecondGuaranteesPlan(DateUtil.format(DateUtil.nextMonth(), "yyyy-MM"));
|
map.put("thisMonthCount", secondMaintenanceOrderList.size());
|
map.put("thisMonthFinishCount", secondMaintenanceOrderList.stream().filter(eamSecondMaintenanceOrder -> SecondMaintenanceStatusEnum.COMPLETE.name().equals(eamSecondMaintenanceOrder.getMaintenanceStatus())).collect(Collectors.toList()).size());
|
map.put("thisMonthOverdueCount", secondMaintenanceOrderList.stream().filter(eamSecondMaintenanceOrder -> SecondMaintenanceStatusEnum.EXPIRED.name().equals(eamSecondMaintenanceOrder.getMaintenanceStatus())).collect(Collectors.toList()).size());
|
map.put("nextMonthCount", nextsecondMaintenanceOrderList.size());
|
return map;
|
}
|
}
|