|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.plugins.Page; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.service.impl.ServiceImpl; | 
|---|
|  |  |  | import com.core.common.Cools; | 
|---|
|  |  |  | import com.core.common.R; | 
|---|
|  |  |  | import com.zy.asrs.entity.FrozenParam; | 
|---|
|  |  |  | import com.zy.asrs.entity.LocDetl; | 
|---|
|  |  |  | import com.zy.asrs.entity.result.LocDetlAll; | 
|---|
|  |  |  | import com.zy.asrs.entity.result.LocDetlDTO; | 
|---|
|  |  |  | import com.zy.asrs.entity.result.StockVo; | 
|---|
|  |  |  | import com.zy.asrs.mapper.LocDetlMapper; | 
|---|
|  |  |  | import com.zy.asrs.service.LocDetlService; | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.ArrayList; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  | import java.util.Set; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Service("locDetlService") | 
|---|
|  |  |  | public class LocDetlServiceImpl extends ServiceImpl<LocDetlMapper, LocDetl> implements LocDetlService { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public Page<LocDetl> getStockOut(Page<LocDetl> page) { | 
|---|
|  |  |  | page.setRecords(baseMapper.getStockOutPage(page.getCurrent(), page.getSize() | 
|---|
|  |  |  | , page.getCondition().get("loc_no"), page.getCondition().get("matnr"))); | 
|---|
|  |  |  | page.setTotal(baseMapper.getStockOutPageCount(page.getCondition().get("loc_no"), page.getCondition().get("matnr"))); | 
|---|
|  |  |  | public Page<LocDetl> getPage(Page<LocDetl> page) { | 
|---|
|  |  |  | page.setRecords(baseMapper.listByPage(page.getCondition())); | 
|---|
|  |  |  | page.setTotal(baseMapper.listByPageCount(page.getCondition())); | 
|---|
|  |  |  | return page; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public int selectAllCount(LocDetlDTO locDetlDTO) { | 
|---|
|  |  |  | return this.baseMapper.selectAllCount(locDetlDTO); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<LocDetlAll> selectAllOwner(LocDetlDTO locDetlDTO) { | 
|---|
|  |  |  | return this.baseMapper.selectAllOwner(locDetlDTO); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public Page<LocDetl> getStockOut(Page<LocDetl> page) { | 
|---|
|  |  |  | page.setRecords(baseMapper.getStockOutPage(page.getCondition())); | 
|---|
|  |  |  | page.setTotal(baseMapper.getStockOutPageCount(page.getCondition())); | 
|---|
|  |  |  | return page; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public Page<LocDetl> getStockStatis2(Page<LocDetl> page) { | 
|---|
|  |  |  | page.setRecords(baseMapper.getStockStatis2(page.getCondition())); | 
|---|
|  |  |  | page.setTotal(baseMapper.getStockStatisCount(page.getCondition())); | 
|---|
|  |  |  | return page; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public boolean updateAnfme(Double anfme, String locNo, String matnr, String batch, | 
|---|
|  |  |  | String brand,String standby1,String standby2,String standby3,String boxType1,String boxType2,String boxType3) { | 
|---|
|  |  |  | if (anfme <= 0) { | 
|---|
|  |  |  | return this.baseMapper.deleteItem(locNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3) > 0; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | return baseMapper.updateAnfme(anfme, locNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3) > 0; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public boolean updateLocNo(String newLocNo, String oldLocNo) { | 
|---|
|  |  |  | return baseMapper.updateLocNo(newLocNo, oldLocNo) > 0; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @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); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public Page<LocDetl> getStockStatis(Page<LocDetl> page) { | 
|---|
|  |  |  | page.setRecords(baseMapper.getStockStatis(page.getCondition())); | 
|---|
|  |  |  | page.setTotal(baseMapper.getStockStatisCount(page.getCondition())); | 
|---|
|  |  |  | return page; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public Double getSumAnfme(String matnr) { | 
|---|
|  |  |  | return this.baseMapper.selectSumAnfmeByMatnr(matnr); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<LocDetl> selectPakoutByRule(String matnr) { | 
|---|
|  |  |  | return this.baseMapper.selectPakoutByRule(matnr); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<LocDetl> getAsrsLocDetl(String matnr) { | 
|---|
|  |  |  | return this.baseMapper.getAsrsLocDetl(matnr); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public Integer countLocNoNum(String locNo) { | 
|---|
|  |  |  | return this.baseMapper.countLocNoNum(locNo); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<LocDetl> queryStock(String matnr, String batch, String orderNo, Set<String> locNos) { | 
|---|
|  |  |  | return this.baseMapper.queryStock(matnr, batch, orderNo, locNos); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<LocDetl> queryStockAll(String orderNo, Set<String> locNos,String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) { | 
|---|
|  |  |  | return this.baseMapper.queryStockAll(orderNo,locNos, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public Double queryStockAnfme(String matnr, String batch) { | 
|---|
|  |  |  | return this.baseMapper.queryStockAnfme(matnr, batch); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<StockVo> queryStockTotal() { | 
|---|
|  |  |  | return this.baseMapper.queryStockTotal(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取库存总数 | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public Integer sum() { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return this.baseMapper.sum(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<LocDetl> unreason() { | 
|---|
|  |  |  | return this.baseMapper.unreason(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public LocDetl selectItem(String locNo, String matnr, String batch,String brand,String standby1,String standby2,String standby3,String boxType1,String boxType2,String boxType3) { | 
|---|
|  |  |  | return this.baseMapper.selectItem(locNo, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @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); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<LocDetl> searchByLike(String orderNo, String matnr, String maktx, String specs, String locNo) { | 
|---|
|  |  |  | if (Cools.isEmpty(orderNo) && Cools.isEmpty(matnr) && Cools.isEmpty(maktx) && Cools.isEmpty(specs) && Cools.isEmpty(locNo)) { | 
|---|
|  |  |  | return new ArrayList<>(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return this.baseMapper.searchByLike(orderNo, matnr, maktx, specs, locNo); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public R frozenInventory(List<FrozenParam> param) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | for(FrozenParam obj : param) { | 
|---|
|  |  |  | this.baseMapper.frozenInventory(obj.getLocNo(), obj.getMatnr(), obj.getBatch(), 1); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return R.ok("冻结库存完成!"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public R unfreezeInventory(List<FrozenParam> param) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | for(FrozenParam obj : param) { | 
|---|
|  |  |  | this.baseMapper.frozenInventory(obj.getLocNo(), obj.getMatnr(), obj.getBatch(), 0); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return R.ok("库存解冻完成!"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|