| | |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.jeecg.common.constant.CommonConstant; |
| | | import org.jeecg.common.system.vo.DictModel; |
| | | import org.jeecg.modules.mdc.dto.CurrentElectricHistoryDto; |
| | | import org.jeecg.modules.mdc.dto.CurrentElectricDto; |
| | | import org.jeecg.modules.mdc.dto.EquipmentMachiningHistoryDto; |
| | | import org.jeecg.modules.mdc.dto.MachineXYZHistoryDto; |
| | | import org.jeecg.modules.mdc.entity.Equipment; |
| | |
| | | private IEquipmentElectricStatisticalService equipmentElectricStatisticalService; |
| | | |
| | | @Resource |
| | | private ICurrentXYZHistoryService currentXYZHistoryService; |
| | | private IEquipmentWorkLineService equipmentWorkLineService; |
| | | |
| | | @Resource |
| | | private IMachineXYZHistoryService machineXYZHistoryService; |
| | | |
| | | @Resource |
| | | private IEquipmentMachiningHistoryService equipmentMachiningHistoryService; |
| | | private IEquipmentXYZService equipmentXYZService; |
| | | |
| | | @Override |
| | | public void execute(JobExecutionContext context) throws JobExecutionException { |
| | |
| | | List<DictModel> dictList = sysDictService.queryEnableDictItemsByCode(CommonConstant.AXIS_TYPE); |
| | | if (dictList != null && !dictList.isEmpty()) { |
| | | for (Equipment equipment : equipmentList) { |
| | | Date lastDate = equipmentElectricStatisticalService.getMaxDate(equipment.getEquipmentid()); |
| | | if (lastDate == null) { |
| | | Date minCollectTime = currentXYZHistoryService.getMinDate(equipment.getEquipmentid()); |
| | | if (minCollectTime == null) { |
| | | continue; |
| | | } |
| | | initDate = DateUtils.removeTime(minCollectTime); |
| | | } |
| | | for (DictModel dictModel : dictList) { |
| | | electricStatistical = new EquipmentElectricStatistical(); |
| | | Integer axisType = Integer.parseInt(dictModel.getValue()); |
| | | CurrentElectricHistoryDto currentElectricHistoryDto = currentXYZHistoryService.getMaxElectric(equipment.getEquipmentid(), axisType, initDate, DateUtils.plusTime(initDate, 1)); |
| | | if (currentElectricHistoryDto == null || currentElectricHistoryDto.getEquipmentID() == null || currentElectricHistoryDto.getCollectTime() == null) { |
| | | initDate = DateUtils.plusTime(initDate, 1); |
| | | continue; |
| | | } |
| | | electricStatistical.setAxistype(axisType); |
| | | electricStatistical.setEquipmentid(equipment.getEquipmentid()); |
| | | electricStatistical.setEquipmentname(equipment.getEquipmentname()); |
| | | electricStatistical.setElectrictime(currentElectricHistoryDto.getCollectTime()); |
| | | electricStatistical.setElectricvalue(currentElectricHistoryDto.getCurrentValue()); |
| | | electricStatistical.setCreatedate(initDate); |
| | | EquipmentMachiningHistoryDto machiningHistoryDto = equipmentMachiningHistoryService.getNearTimeSpindleLoad(equipment.getEquipmentid(), initDate, DateUtils.plusTime(initDate, 1), currentElectricHistoryDto.getCollectTime()); |
| | | if (machiningHistoryDto != null) { |
| | | electricStatistical.setSpindlespeed(machiningHistoryDto.getSpindleSpeed()); |
| | | electricStatistical.setSpindleload(machiningHistoryDto.getSpindleLoad()); |
| | | electricStatistical.setSpindletime(machiningHistoryDto.getCollectTime()); |
| | | } |
| | | MachineXYZHistoryDto machineXYZHistoryDto = machineXYZHistoryService.getNearAxisType(equipment.getEquipmentid(), initDate, DateUtils.plusTime(initDate, 1), currentElectricHistoryDto.getCollectTime()); |
| | | if (machineXYZHistoryDto != null) { |
| | | electricStatistical.setAxistime(machineXYZHistoryDto.getCollectTime()); |
| | | if (axisType == 1) { |
| | | electricStatistical.setAxisvalue(machineXYZHistoryDto.getXMachine()); |
| | | } else if (axisType == 2) { |
| | | electricStatistical.setAxisvalue(machineXYZHistoryDto.getYMachine()); |
| | | } else if (axisType == 3) { |
| | | electricStatistical.setAxisvalue(machineXYZHistoryDto.getZMachine()); |
| | | } else if (axisType == 4) { |
| | | electricStatistical.setAxisvalue(machineXYZHistoryDto.getAMachine()); |
| | | } else if (axisType == 5) { |
| | | electricStatistical.setAxisvalue(machineXYZHistoryDto.getBMachine()); |
| | | if (equipment.getDrivetype().equals("SIEMENSOpcUa")) { |
| | | String saveTableName = equipment.getSavetablename(); |
| | | Date lastDate = equipmentElectricStatisticalService.getMaxDate(equipment.getEquipmentid()); |
| | | if (lastDate == null) { |
| | | Date minCollectTime = equipmentWorkLineService.getMinDate(saveTableName); |
| | | if (minCollectTime == null) { |
| | | continue; |
| | | } |
| | | initDate = DateUtils.removeTime(minCollectTime); |
| | | } else { |
| | | initDate = DateUtils.plusTime(lastDate, 1); |
| | | } |
| | | resultList.add(electricStatistical); |
| | | for (DictModel dictModel : dictList) { |
| | | electricStatistical = new EquipmentElectricStatistical(); |
| | | Integer axisType = Integer.parseInt(dictModel.getValue()); |
| | | CurrentElectricDto currentElectricDto = equipmentWorkLineService.getMaxElectric(saveTableName, axisType, initDate, DateUtils.plusTime(initDate, 1)); |
| | | if (currentElectricDto == null) { |
| | | continue; |
| | | } |
| | | electricStatistical.setAxistype(axisType); |
| | | electricStatistical.setEquipmentid(equipment.getEquipmentid()); |
| | | electricStatistical.setEquipmentname(equipment.getEquipmentname()); |
| | | electricStatistical.setElectrictime(currentElectricDto.getCollectTime()); |
| | | electricStatistical.setElectricvalue(currentElectricDto.getCurrentValue()); |
| | | electricStatistical.setCreatedate(initDate); |
| | | EquipmentMachiningHistoryDto machiningHistoryDto = equipmentWorkLineService.getNearTimeSpindleLoad(saveTableName, initDate, DateUtils.plusTime(initDate, 1), currentElectricDto.getCollectTime()); |
| | | if (machiningHistoryDto != null) { |
| | | electricStatistical.setSpindlespeed(machiningHistoryDto.getSpindleSpeed()); |
| | | electricStatistical.setSpindleload(machiningHistoryDto.getSpindleLoad()); |
| | | electricStatistical.setSpindletime(machiningHistoryDto.getCollectTime()); |
| | | } |
| | | MachineXYZHistoryDto machineXYZHistoryDto = equipmentXYZService.getNearAxisType(equipment.getEquipmentid(), initDate, DateUtils.plusTime(initDate, 1), currentElectricDto.getCollectTime()); |
| | | if (machineXYZHistoryDto != null) { |
| | | electricStatistical.setAxistime(machineXYZHistoryDto.getCollectTime()); |
| | | if (axisType == 1) { |
| | | electricStatistical.setAxisvalue(machineXYZHistoryDto.getXMachine()); |
| | | } else if (axisType == 2) { |
| | | electricStatistical.setAxisvalue(machineXYZHistoryDto.getYMachine()); |
| | | } else if (axisType == 3) { |
| | | electricStatistical.setAxisvalue(machineXYZHistoryDto.getZMachine()); |
| | | } else if (axisType == 4) { |
| | | electricStatistical.setAxisvalue(machineXYZHistoryDto.getAMachine()); |
| | | } else if (axisType == 5) { |
| | | electricStatistical.setAxisvalue(machineXYZHistoryDto.getBMachine()); |
| | | } |
| | | } |
| | | resultList.add(electricStatistical); |
| | | } |
| | | } |
| | | } |
| | | } |