diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); }