zhoushihao
2025-06-06 4e3b8155722b66e25df3c6fd42cc586b68dea391
hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglassdetails/service/impl/RawGlassStorageDetailsServiceImpl.java
@@ -8,9 +8,12 @@
import com.kangaroohy.milo.service.MiloService;
import com.mes.common.config.Const;
import com.mes.rawglassdetails.entity.RawGlassStorageDetails;
import com.mes.rawglassdetails.entity.dto.RawGlassStorageDetailsDTO;
import com.mes.rawglassdetails.entity.request.RawGlassRequest;
import com.mes.rawglassdetails.mapper.RawGlassStorageDetailsMapper;
import com.mes.rawglassdetails.service.RawGlassStorageDetailsService;
import com.mes.rawglassstation.entity.RawGlassStorageStation;
import com.mes.rawglassstation.service.RawGlassStorageStationService;
import com.mes.rawglasstask.entity.RawGlassStorageTask;
import com.mes.rawglasstask.service.RawGlassStorageTaskService;
import lombok.extern.slf4j.Slf4j;
@@ -33,6 +36,9 @@
    @Autowired
    RawGlassStorageTaskService rawGlassStorageTaskService;
    @Autowired
    RawGlassStorageStationService rawGlassStorageStationService;
    @Autowired(required = false)
    MiloService miloService;
@@ -102,20 +108,33 @@
    }
    @Override
    public String UpdateQuantity(RawGlassRequest request) {
        update(
                new LambdaUpdateWrapper<RawGlassStorageDetails>()
                        .set(RawGlassStorageDetails::getRemainQuantity, request.getRemainQuantity())
                        .eq(RawGlassStorageDetails::getSlot, request.getSlot())
                        .eq(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN));
    public String updateQuantity(RawGlassRequest request) {
        RawGlassStorageDetails one = getOne(new LambdaQueryWrapper<RawGlassStorageDetails>().eq(RawGlassStorageDetails::getSlot, request.getSlot())
                .eq(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN));
        if (null == one) {
            RawGlassStorageDetails details = new RawGlassStorageDetails();
            BeanUtils.copyProperties(request, details);
            details.setState(Const.RAW_GLASS_STATE_IN);
            details.setShelf(request.getSlot());
            save(details);
        } else {
            update(
                    new LambdaUpdateWrapper<RawGlassStorageDetails>()
                            .set(RawGlassStorageDetails::getRemainQuantity, request.getRemainQuantity())
                            .set(RawGlassStorageDetails::getPatternWidth, request.getPatternWidth())
                            .set(RawGlassStorageDetails::getPatternHeight, request.getPatternHeight())
                            .set(RawGlassStorageDetails::getPatternThickness, request.getPatternThickness())
                            .set(RawGlassStorageDetails::getFilmsId, request.getFilmsId())
                            .eq(RawGlassStorageDetails::getSlot, request.getSlot())
                            .eq(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN));
        }
        return "success";
    }
    @Override
    public String deleteWarehousing(Long slotId) {
        update(new LambdaUpdateWrapper<RawGlassStorageDetails>().eq(RawGlassStorageDetails::getSlot, slotId)
                .eq(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_OUT)
                .set(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN));
        remove(new LambdaUpdateWrapper<RawGlassStorageDetails>().eq(RawGlassStorageDetails::getSlot, slotId)
                .eq(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN));
        return "success";
    }
@@ -190,4 +209,36 @@
        readWriteEntity.setValue(value);
        return readWriteEntity;
    }
    @Override
    public String shelfReset(Long slot) {
        update(new LambdaUpdateWrapper<RawGlassStorageDetails>().eq(RawGlassStorageDetails::getSlot, slot)
                .eq(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN)
                .set(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_RESET));
        //生成一条详情数据  仅记录架子状态
        return "success";
    }
    @Override
    public List<RawGlassStorageDetailsDTO> patternUsage(String width, String height, String thickness, String films){
        return baseMapper.patternUsage(width, height, thickness, films);
    }
    @Override
    public RawGlassStorageDetails generateDetails(RawGlassStorageDetails details, Integer targetSlot) {
        RawGlassStorageDetails targetDetails = new RawGlassStorageDetails();
        RawGlassStorageStation station = rawGlassStorageStationService.getOne(new LambdaQueryWrapper<RawGlassStorageStation>()
                .eq(RawGlassStorageStation::getSlot, targetSlot));
        targetDetails.setDeviceId(station.getDeviceId());
        targetDetails.setSlot(targetSlot);
        targetDetails.setShelf(details.getShelf());
        targetDetails.setPatternWidth(details.getPatternWidth());
        targetDetails.setPatternHeight(details.getPatternHeight());
        targetDetails.setPatternThickness(details.getPatternThickness());
        targetDetails.setFilmsId(details.getFilmsId());
        targetDetails.setRemainQuantity(details.getRemainQuantity());
        targetDetails.setCreateTime(new Date());
        targetDetails.setState(Const.RAW_GLASS_STATE_IN);
        return targetDetails;
    }
}