自动化立体仓库 - WMS系统
#
zyx
2024-05-14 6c3d4d0530fd8f64e6fc92b996ec724eba316e94
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -20,6 +20,7 @@
import com.zy.common.utils.Synchro;
import com.zy.system.entity.User;
import com.zy.system.service.SaasLogService;
import lombok.Synchronized;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -103,6 +104,7 @@
    private PlaQtyService plaQtyService;
    @Autowired
    private SaasLogService saasLogService;
@@ -1236,6 +1238,7 @@
    @Override
    @Transactional
    @Synchronized
    public void plaPakout(String brand, String locNo, String batch, Integer packageNo, String orderNo, String plaQtyId, String wrkNo, Double anfme, boolean isReplace) {
        Pla pla = plaService.selectByBatchAndPackageNo(batch, packageNo,brand);
@@ -1332,8 +1335,13 @@
        //还原旧物料状态
        Pla plaOld = plaService.selectByBatchAndPackageNo(manPakOut.getBatch(), Integer.parseInt(manPakOut.getBarcode()), manPakOut.getMaktx());
        //更新新物料信息
        plaNew.setQtyAnfme(plaOld.getQtyAnfme());
        plaNew.setStatus(plaOld.getStatus());
        plaService.updateById(plaNew);
        plaOld.setStatus(GlobleParameter.PLA_STATUS_1);
        plaOld.setQtyAnfme(0.0);
        plaOld.setQtyAnfme(plaOld.getQtyAnfme() - manPakOut.getCount());
        plaService.updateById(plaOld);
@@ -1352,4 +1360,32 @@
        manPakOutService.updateById(manPakOut);
    }
    @Override
    public List<Pla> pdaSelectInfmt(String barcode) {
        EntityWrapper<Pla> plaEntityWrapper = new EntityWrapper<>();
        String[] split = barcode.split(";");
        if (split.length == 4){
            plaEntityWrapper.eq("brand",split[0]);
            plaEntityWrapper.eq("batch",split[1]);
            plaEntityWrapper.eq("package_no",split[2]);
            plaEntityWrapper.eq("line",split[3]);
        }else if (split.length == 1){
            Node node = nodeService.selectOne(new EntityWrapper<Node>().eq("name", barcode));
            if (Cools.isEmpty(node)){
                throw new CoolException("请检查输入的库位码");
            }
            plaEntityWrapper.eq("loc_no",barcode);
        }else {
            throw new CoolException("条码信息有误!");
        }
        List<Pla> plaList = plaService.selectList(plaEntityWrapper);
        if (Cools.isEmpty(plaList)){
            throw new CoolException("未查询到库存物料信息");
        }
        return plaList;
    }
}