自动化立体仓库 - WMS系统
zc
7 天以前 48a341f0b97479b449cbac9f53faf56f08a5c7cc
src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -1,18 +1,40 @@
package com.zy.asrs.service.impl;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.core.exception.CoolException;
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.entity.ManLocDetl;
import com.zy.asrs.entity.Mat;
import com.zy.asrs.entity.Node;
import com.zy.asrs.entity.param.LocDetlAdjustParam;
import com.zy.asrs.entity.result.StockVo;
import com.zy.asrs.mapper.LocDetlMapper;
import com.zy.asrs.service.LocDetlService;
import com.zy.asrs.service.MatService;
import com.zy.asrs.utils.SaasUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Set;
@Service("locDetlService")
public class LocDetlServiceImpl extends ServiceImpl<LocDetlMapper, LocDetl> implements LocDetlService {
    @Autowired
    private MatService matService;
    @Override
    public Page<LocDetl> getPage(Page<LocDetl> page) {
        page.setRecords(baseMapper.listByPage(page.getCondition()));
        page.setTotal(baseMapper.listByPageCount(page.getCondition()));
        return page;
    }
    @Override
    public Page<LocDetl> getStockOut(Page<LocDetl> page) {
@@ -30,6 +52,33 @@
        }
    }
    @Transactional
    @Override
    public void adjustLocDetl2(LocDetlAdjustParam param, String barcode, Long userId) {
        Date now = new Date();
        this.baseMapper.delete(new EntityWrapper<LocDetl>()
                .eq("loc_no", param.getLocNo()));
        for (LocDetlAdjustParam.LocDetlAdjust locDetlAdjust : param.getList()) {
            Mat mat = matService.selectOne(new EntityWrapper<Mat>()
                    .eq("matnr", locDetlAdjust.getMatnr()));
            if (mat == null) {
                throw new CoolException("无法找到需要调整的物料,请联系管理员");
            }
            LocDetl manLocDetl = new LocDetl();
            manLocDetl.sync(mat);
            manLocDetl.setLocNo(param.getLocNo());
            manLocDetl.setZpallet(barcode);
            manLocDetl.setAnfme(locDetlAdjust.getCount());
            manLocDetl.setBatch(locDetlAdjust.getBatch());
            manLocDetl.setBarcode(barcode);
            manLocDetl.setDanger(locDetlAdjust.getDanger());
            SaasUtils.insertLog(3, manLocDetl.getLocNo(), manLocDetl.getMatnr(), manLocDetl.getAnfme());
            this.baseMapper.insert(manLocDetl);
        }
    }
    @Override
    public boolean updateLocNo(String newLocNo, String oldLocNo) {
        return baseMapper.updateLocNo(newLocNo, oldLocNo) > 0;
@@ -38,6 +87,11 @@
    @Override
    public List<String> getSameDetlToday(String matnr, Integer start, Integer end) {
        return this.baseMapper.selectSameDetlToday(matnr, start, end);
    }
    @Override
    public List<String> getSameDetlToday(String matnr, String batch, Integer start, Integer end) {
        return this.baseMapper.selectSameDetlTodayBatch(matnr, batch, start, end);
    }
@@ -69,8 +123,23 @@
    }
    @Override
    public List<LocDetl> queryStock(String matnr, String batch, String orderNo, Set<String> locNos) {
        return this.baseMapper.queryStock(matnr, batch, orderNo, locNos);
    public List<LocDetl> queryStock(String matnr, String batch, String orderNo, Set<String> locNos, String supp, String temp1, String temp2) {
        return this.baseMapper.queryStock(matnr, batch, orderNo, locNos, supp, temp1, temp2);
    }
    @Override
    public List<LocDetl> queryStockCrn(String matnr, String batch, String orderNo, Set<String> locNos, String supp, String temp1, String temp2) {
        return this.baseMapper.queryStockCrn(matnr, batch, orderNo, locNos, supp, temp1, temp2);
    }
    @Override
    public List<LocDetl> queryStockFour(String matnr, String batch, String orderNo, Set<String> locNos, String supp, String temp1, String temp2) {
        return this.baseMapper.queryStockFour(matnr, batch, orderNo, locNos, supp, temp1, temp2);
    }
    @Override
    public List<LocDetl> queryStockMinAnfme(String matnr, String batch, String orderNo, Set<String> locNos, String supp, String temp1, String temp2) {
        return this.baseMapper.queryStockMinAnfme(matnr, batch, orderNo, locNos, supp, temp1, temp2);
    }
    @Override
@@ -83,8 +152,50 @@
        return this.baseMapper.queryStockTotal();
    }
    /**
     * 获取库存总数
     *
     * @return
     */
    @Override
    public Double sum() {
        return this.baseMapper.sum();
    }
    @Override
    public List<LocDetl> unreason() {
        return this.baseMapper.unreason();
    }
    @Override
    public LocDetl selectItem(String locNo, String matnr, String batch) {
        return this.baseMapper.selectItem(locNo, matnr, batch);
    }
    @Override
    public Double getLocDetlSumQty(String locNo) {
        return this.baseMapper.selectLocDetlSumQty(locNo);
    }
    @Override
    public void updateMatTurn(String matnrOld, String matnr) {
        this.baseMapper.updateMatTurn(matnrOld, matnr);
    }
    @Override
    public List<Map<String, Object>> selectLocDetlUnilateralMoveShuttleMap(Integer crnNo) {
        if (crnNo == 1) {
            return this.baseMapper.selectLocDetlUnilateralMoveShuttleMapY(crnNo);
        }
        return this.baseMapper.selectLocDetlUnilateralMoveShuttleMapN(crnNo);
    }
    @Override
    public List<LocDetl> selectLocDetlUnilateralMoveShuttle(String matnr, String batch, String grade, Integer crnNo) {
        if (crnNo == 1) {
            return this.baseMapper.selectLocDetlUnilateralMoveShuttleY(matnr, batch, grade);
        }
        return this.baseMapper.selectLocDetlUnilateralMoveShuttleN(matnr, batch, grade);
    }
}