package org.jeecg.modules.mdc.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.jeecg.modules.mdc.entity.Equipment; import org.jeecg.modules.mdc.mapper.EquipmentMapper; import org.jeecg.modules.mdc.service.IEquipmentService; import org.jeecg.modules.mdc.vo.WsEquipmentStatus; import org.jeecg.modules.mdc.vo.WsEquipmentUtilizationRate; import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.math.RoundingMode; import java.time.LocalDate; import java.util.List; /** * @Description: 采集设备表 * @Author: liuS * @Date: 2023-03-23 * @Version: V1.0 */ @Service public class EquipmentServiceImpl extends ServiceImpl implements IEquipmentService { @Override public String checkTableExists(String saveTableName) { return this.baseMapper.checkTableExists(saveTableName); } @Override public Integer checkTableDataNum(String saveTableName, String day) { return this.baseMapper.checkTableDataNum(saveTableName, day); } @Override public void insertTableData(String backupTableName, String tableName, String day) { this.baseMapper.insertTableData(backupTableName, tableName, day); } @Override public void deleteTableData(String tableName, String day) { this.baseMapper.deleteTableData(tableName, day); } @Override public void insertNoTableData(String backupTableName, String tableName, String day) { this.baseMapper.insertNoTableData(backupTableName, tableName, day); } @Override public List selectEquipmentStatus() { List equipmentStatusList = this.baseMapper.selectEquipmentStatus(); if (equipmentStatusList != null && !equipmentStatusList.isEmpty()) { for (WsEquipmentStatus wsEquipmentStatus : equipmentStatusList) { // 1-加工 2-待机 3-关机 4-报警 if (wsEquipmentStatus.getEquipmentStatus() != null) { switch (wsEquipmentStatus.getEquipmentStatus()) { case "1": case "2": wsEquipmentStatus.setEquipmentStatus("2"); break; case "3": wsEquipmentStatus.setEquipmentStatus("1"); break; case "22": wsEquipmentStatus.setEquipmentStatus("4"); break; default: wsEquipmentStatus.setEquipmentStatus("3"); break; } } else { wsEquipmentStatus.setEquipmentStatus("3"); } } } return equipmentStatusList; } /** * 查询设备利用率 * @return */ @Override public List selectEquipmentRate() { String date = LocalDate.now().plusDays(-1).toString(); List list = this.baseMapper.selectEquipmentRate(date.replaceAll("-", "")); if (list != null && !list.isEmpty()) { for (WsEquipmentUtilizationRate wsEquipmentUtilizationRate : list) { String equipmentRunTime = wsEquipmentUtilizationRate.getEquipmentRunTime(); wsEquipmentUtilizationRate.setStatisType("D"); wsEquipmentUtilizationRate.setEquipmentRunTime(new BigDecimal(equipmentRunTime).divide(new BigDecimal("60"), 0, RoundingMode.HALF_UP).toString()); wsEquipmentUtilizationRate.setEquipmentRate(new BigDecimal(equipmentRunTime).divide(new BigDecimal("86400"), 2, RoundingMode.HALF_UP).toString()); wsEquipmentUtilizationRate.setEquipmentCalendar(date); } } return list; } }