package com.zy.asrs.service.impl; import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.zy.asrs.entity.LocDetl; import com.zy.asrs.entity.OrderDetl; import com.zy.asrs.entity.StockStatisDTO; import com.zy.asrs.entity.WrkDetl; import com.zy.asrs.entity.param.StockOutParam; import com.zy.asrs.entity.result.StockVo; import com.zy.asrs.mapper.LocDetlMapper; import com.zy.asrs.service.LocDetlService; import com.zy.asrs.utils.MatCompareUtils; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; import java.util.Map; @Service("locDetlService") public class LocDetlServiceImpl extends ServiceImpl implements LocDetlService { @Override public Page getPage(Page page) { page.setRecords(baseMapper.listByPage(page.getCondition())); page.setTotal(baseMapper.listByPageCount(page.getCondition())); return page; } @Override public Page getStockOut(Page page) { page.setRecords(baseMapper.getStockOutPage(page.getCondition())); page.setTotal(baseMapper.getStockOutPageCount(page.getCondition())); return page; } @Override public boolean updateAnfme(Double anfme, String locNo, WrkDetl wrkDetl) { List locDetls = this.baseMapper.selectItem3(locNo, wrkDetl.getMatnr()); if (locDetls.isEmpty()) { return false; } for (LocDetl locDetl : locDetls) { if (MatCompareUtils.compare(locDetl, wrkDetl)) { if (anfme <= 0) { return this.baseMapper.deleteItem(locDetl.getLocNo(), locDetl) > 0; } else { return baseMapper.updateAnfme(anfme, locNo, locDetl) > 0; } } } return false; } @Override public boolean updateAnfme(Double anfme, String locNo, LocDetl wrkDetl) { List locDetls = this.baseMapper.selectItem3(locNo, wrkDetl.getMatnr()); if (locDetls.isEmpty()) { return false; } for (LocDetl locDetl : locDetls) { if (MatCompareUtils.compare(locDetl, wrkDetl)) { if (anfme <= 0) { return this.baseMapper.deleteItem(locDetl.getLocNo(), locDetl) > 0; } else { return baseMapper.updateAnfme(anfme, locNo, locDetl) > 0; } } } return false; } @Override public boolean updateLocNo(String newLocNo, String oldLocNo) { return baseMapper.updateLocNo(newLocNo, oldLocNo) > 0; } @Override public List getSameDetlToday(String matnr, Integer start, Integer end) { return this.baseMapper.selectSameDetlToday(matnr, start, end); } @Override public List getSameDetlToday(String matnr, String batch, Integer start, Integer end) { return this.baseMapper.selectSameDetlTodayBatch(matnr, batch, start, end); } @Override public Page getStockStatis(Page page) { page.setRecords(baseMapper.asrsAndErpList(page.getCondition())); page.setTotal(baseMapper.asrsAndErpCount(page.getCondition())); return page; } @Override public Double getSumAnfme(String matnr) { return this.baseMapper.selectSumAnfmeByMatnr(matnr); } @Override public List selectPakoutByRule(String matnr) { return this.baseMapper.selectPakoutByRule(matnr); } @Override public List getAsrsLocDetl(String matnr) { return this.baseMapper.getAsrsLocDetl(matnr); } @Override public Integer countLocNoNum(String locNo) { return this.baseMapper.countLocNoNum(locNo); } // @Override // public List queryStock(String matnr, String batch, String orderNo, Set locNos) { // return this.baseMapper.queryStock(null, matnr, batch, orderNo, locNos); // } @Override public List queryStock(OrderDetl orderDetl) { List data = new ArrayList<>(); List locDetls = this.baseMapper.queryStock(null, orderDetl.getMatnr(), null, null, null); if (locDetls == null) { return null; } for (LocDetl locDetl : locDetls) { if (MatCompareUtils.compare(locDetl, orderDetl)) { data.add(locDetl); } } return data; } // @Override // public List queryStockByModel(String model) { // return this.baseMapper.queryStock(null, model, null, null, null); // } // @Override // public Double queryStockAnfme(String matnr, String batch) { // return this.baseMapper.queryStockAnfme(matnr, batch); // } @Override public List queryStockTotal() { return this.baseMapper.queryStockTotal(); } /** * 获取库存总数 * * @return */ @Override public Integer sum() { return this.baseMapper.sum(); } @Override public List unreason() { return this.baseMapper.unreason(); } // @Override // public LocDetl selectItem(String locNo, String matnr, String batch) { // return this.baseMapper.selectItem(locNo, matnr, batch); // } // // @Override // public LocDetl selectItem2(String locNo, String matnr) { // return this.baseMapper.selectItem2(locNo, matnr); // } @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> selectLocDetlUnilateralMoveShuttleMap(Integer crnNo) { if (crnNo == 1) { return this.baseMapper.selectLocDetlUnilateralMoveShuttleMapY(crnNo); } return this.baseMapper.selectLocDetlUnilateralMoveShuttleMapN(crnNo); } @Override public List 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); } @Override public LocDetl selectItem(String locNo, WrkDetl wrkDetl) { List locDetls = this.baseMapper.selectItem3(locNo, wrkDetl.getMatnr()); if (locDetls != null) { for (LocDetl locDetl : locDetls) { if (MatCompareUtils.compare(locDetl, wrkDetl)) { return locDetl; } } } return null; } @Override public LocDetl selectItem(String locNo, StockOutParam.LocDetl locDetl) { List locDetls = this.baseMapper.selectItem3(locNo, locDetl.getMatnr()); if (locDetls != null) { for (LocDetl detl : locDetls) { if (MatCompareUtils.compare(locDetl, detl)) { return detl; } } } return null; } }