新火炬后端单体项目初始化代码
zhangherong
19 小时以前 9e97ded95f71e4c736bf11464ea2c25860d2aab8
src/main/java/org/jeecg/modules/mes/service/impl/MesMaterialLoadingServiceImpl.java
@@ -3,7 +3,6 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.shiro.SecurityUtils;
@@ -13,10 +12,13 @@
import org.jeecg.modules.base.entity.LineSideWarehouse;
import org.jeecg.modules.base.service.ILineSideWarehouseService;
import org.jeecg.modules.lsw.entity.LswMaterial;
import org.jeecg.modules.lsw.entity.LswMaterialInbound;
import org.jeecg.modules.lsw.entity.LswMaterialInventory;
import org.jeecg.modules.lsw.entity.LswMaterialOutbound;
import org.jeecg.modules.lsw.enums.MaterialCategoryEnum;
import org.jeecg.modules.lsw.enums.MaterialInboundCategory;
import org.jeecg.modules.lsw.enums.MaterialOutboundCategory;
import org.jeecg.modules.lsw.service.ILswMaterialInboundService;
import org.jeecg.modules.lsw.service.ILswMaterialInventoryService;
import org.jeecg.modules.lsw.service.ILswMaterialOutboundService;
import org.jeecg.modules.lsw.service.ILswMaterialService;
@@ -24,13 +26,12 @@
import org.jeecg.modules.mes.entity.MesMaterialUnloading;
import org.jeecg.modules.mes.mapper.MesMaterialLoadingMapper;
import org.jeecg.modules.mes.service.IMesMaterialLoadingService;
import org.jeecg.modules.mes.service.IMesMaterialUnloadingService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
/**
 * @Description: 上料
@@ -49,6 +50,10 @@
    private ILswMaterialInventoryService materialInventoryService;
    @Autowired
    private ILswMaterialService materialService;
    @Autowired
    private IMesMaterialUnloadingService mesMaterialUnloadingService;
    @Autowired
    private ILswMaterialInboundService materialInboundService;
    @Override
    public List<MesMaterialUnloading> queryUnloadingByLoadingId(String loadingId) {
@@ -138,4 +143,54 @@
        this.save(mesMaterialLoading);
        return true;
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public boolean unloading(MesMaterialLoading mesMaterialLoading) {
        if (mesMaterialLoading == null) {
            throw new JeecgBootException("参数错误!");
        }
        if (StringUtils.isBlank(mesMaterialLoading.getId())
                || mesMaterialLoading.getUnloadingQuantity() == null
                || mesMaterialLoading.getUnloadingQuantity().intValue() < 1) {
            throw new JeecgBootException("参数错误!");
        }
        //查询上料数据
        MesMaterialLoading loading = super.getById(mesMaterialLoading.getId());
        if (loading == null) {
            throw new JeecgBootException("未查询到上料数据!");
        }
        if (loading.getRemainingQuantity().compareTo(mesMaterialLoading.getUnloadingQuantity()) < 0) {
            throw new JeecgBootException("下料数量不能大于当前剩余数量!");
        }
        //线边库信息
        LineSideWarehouse warehouse = lineSideWarehouseService.getById(loading.getWarehouseId());
        if(warehouse == null) {
            throw new JeecgBootException("未查询到线边库!");
        }
        loading.setUnloadingFlag(CommonConstant.STATUS_1);
        loading.setRemainingQuantity(loading.getRemainingQuantity().subtract(mesMaterialLoading.getUnloadingQuantity()));
        super.updateById(loading);
        //保存下料信息
        MesMaterialUnloading unloading = new MesMaterialUnloading();
        unloading.setLoadingId(loading.getId());
        unloading.setMaterialNumber(loading.getMaterialNumber());
        unloading.setMaterialName(loading.getMaterialName());
        unloading.setBatchNumber(loading.getBatchNumber());
        unloading.setQuantity(mesMaterialLoading.getUnloadingQuantity());
        mesMaterialUnloadingService.save(unloading);
        //保存入库信息
        LswMaterialInbound materialInbound = new LswMaterialInbound()
                .setFactoryId(loading.getFactoryId())
                .setWarehouseId(loading.getWarehouseId())
                .setMaterialNumber(loading.getMaterialNumber())
                .setMaterialName(loading.getMaterialName())
                .setBatchNumber(loading.getBatchNumber())
                .setQuantity(unloading.getQuantity())
                .setInboundCategory(MaterialInboundCategory.PRODUCTION_UNLOADING.name())//下料
                .setOriginalCode(warehouse.getWarehouseCode())
                .setOriginalName(warehouse.getWarehouseName());
        materialInboundService.inboundMaterial(materialInbound);
        return true;
    }
}