| | |
| | | package org.jeecg.modules.eam.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableLogic; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; |
| | | import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import org.jeecg.common.constant.CommonConstant; |
| | | import org.jeecg.modules.eam.entity.PredictiveWorkOrder; |
| | | import org.jeecg.modules.eam.entity.PredictiveWorkPlan; |
| | | import org.jeecg.modules.eam.entity.PredictiveWorkPlanWarn; |
| | | import org.jeecg.modules.eam.entity.PredictiveWorkPlanWarnHistory; |
| | | import org.jeecg.common.util.UUIDGenerator; |
| | | import org.jeecg.modules.eam.entity.*; |
| | | import org.jeecg.modules.eam.mapper.PredictiveWorkPlanWarnMapper; |
| | | import org.jeecg.modules.eam.model.MdcEquipmentAlarmVo; |
| | | import org.jeecg.modules.eam.service.IPredictiveWorkOrderService; |
| | | import org.jeecg.modules.eam.service.IPredictiveWorkPlanService; |
| | | import org.jeecg.modules.eam.service.IPredictiveWorkPlanWarnHistoryService; |
| | | import org.jeecg.modules.eam.service.IPredictiveWorkPlanWarnService; |
| | | import org.jeecgframework.poi.excel.annotation.Excel; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | |
| | | } |
| | | if (needWarnFlag) { |
| | | //判断是否生成工单 ,将报警信息备份 |
| | | boolean flag = this.createOrder(predictiveWorkPlan.getId(), predictiveWorkPlan.getEquipmentId()); |
| | | if (flag) { |
| | | this.backInfo(predictiveWorkPlan.getId(), insertList); |
| | | PredictiveWorkOrder predictiveWorkOrder = this.createOrder(predictiveWorkPlan.getId(), predictiveWorkPlan.getEquipmentId()); |
| | | if (predictiveWorkOrder != null) { |
| | | this.backInfo(predictiveWorkPlan.getId(), predictiveWorkOrder.getId(),insertList); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | private void backInfo(String workPlanId, List<MdcEquipmentAlarmVo> predictiveWorkPlanWarnList) { |
| | | @Override |
| | | public void removeByWorkPlanId(String predictiveWorkPlanId) { |
| | | LambdaUpdateChainWrapper<PredictiveWorkPlanWarn> lambdaUpdate = this.lambdaUpdate(); |
| | | lambdaUpdate.eq(PredictiveWorkPlanWarn::getWorkPlanId, predictiveWorkPlanId); |
| | | lambdaUpdate.remove(); |
| | | } |
| | | |
| | | @Override |
| | | public void revise(String oldWorkPlanId, String workPlanId) { |
| | | LambdaQueryChainWrapper<PredictiveWorkPlanWarn> lambdaQuery = this.lambdaQuery(); |
| | | lambdaQuery.eq(PredictiveWorkPlanWarn::getWorkPlanId,oldWorkPlanId).eq(PredictiveWorkPlanWarn::getDelFlag,0); |
| | | List<PredictiveWorkPlanWarn> insertList = lambdaQuery.list(); |
| | | for(PredictiveWorkPlanWarn predictiveWorkPlanWarn:insertList){ |
| | | predictiveWorkPlanWarn.setWorkPlanId(workPlanId); |
| | | predictiveWorkPlanWarn.setId(UUIDGenerator.generate()); |
| | | } |
| | | this.saveBatch(insertList); |
| | | } |
| | | |
| | | private void backInfo(String workPlanId, String workOrderId,List<MdcEquipmentAlarmVo> predictiveWorkPlanWarnList) { |
| | | List<PredictiveWorkPlanWarnHistory> list = new ArrayList<>(); |
| | | for (MdcEquipmentAlarmVo mdcEquipmentAlarmVo : predictiveWorkPlanWarnList) { |
| | | PredictiveWorkPlanWarnHistory predictiveWorkPlanWarnHistory = new PredictiveWorkPlanWarnHistory(); |
| | | predictiveWorkPlanWarnHistory.setWorkPlanId(workPlanId); |
| | | predictiveWorkPlanWarnHistory.setWorkOrderId(workOrderId); |
| | | predictiveWorkPlanWarnHistory.setWarnId(mdcEquipmentAlarmVo.getAlarmNo()); |
| | | predictiveWorkPlanWarnHistory.setWarnCode(mdcEquipmentAlarmVo.getAlarmNo()); |
| | | predictiveWorkPlanWarnHistory.setWarnName(mdcEquipmentAlarmVo.getAlarmContent()); |
| | |
| | | predictiveWorkPlanWarnHistoryService.saveBatch(list); |
| | | } |
| | | |
| | | private boolean createOrder(String workPlanId, String equipmentId) { |
| | | private PredictiveWorkOrder createOrder(String workPlanId, String equipmentId) { |
| | | LambdaQueryChainWrapper<PredictiveWorkOrder> lambdaQuery = predictiveWorkOrderService.lambdaQuery(); |
| | | lambdaQuery.eq(PredictiveWorkOrder::getWorkPlanId, workPlanId).eq(PredictiveWorkOrder::getEquipmentId, equipmentId); |
| | | //已创建 0 已下发 1 未开始 2 执行中 3 |
| | |
| | | predictiveWorkOrder.setEquipmentId(equipmentId); |
| | | predictiveWorkOrder.setWorkPlanId(workPlanId); |
| | | predictiveWorkOrderService.add(predictiveWorkOrder); |
| | | return true; |
| | | return predictiveWorkOrder; |
| | | } |
| | | return false; |
| | | return null; |
| | | } |
| | | |
| | | //单位统一换算为秒 |