| | |
| | | package com.zy.asrs.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.baomidou.mybatisplus.mapper.Wrapper; |
| | | import com.baomidou.mybatisplus.service.impl.ServiceImpl; |
| | | import com.core.common.Cools; |
| | | import com.zy.asrs.entity.LocMast; |
| | | import com.zy.asrs.entity.LocRule; |
| | | import com.zy.asrs.entity.Mat; |
| | | import com.zy.asrs.mapper.LocRuleMapper; |
| | | import com.zy.asrs.entity.LocRule; |
| | | import com.zy.asrs.service.LocMastService; |
| | | import com.zy.asrs.service.LocRuleService; |
| | | import com.baomidou.mybatisplus.service.impl.ServiceImpl; |
| | | import com.zy.asrs.service.MatService; |
| | | import com.zy.asrs.utils.Utils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.List; |
| | | |
| | | @Service("locRuleService") |
| | | public class LocRuleServiceImpl extends ServiceImpl<LocRuleMapper, LocRule> implements LocRuleService { |
| | | |
| | | @Autowired |
| | | private MatService matService; |
| | | @Autowired |
| | | private LocMastService locMastService; |
| | | |
| | | @Override |
| | | public LocRule find(String matnr, String batch, int startRow, int endRow) { |
| | | public List<LocRule> find(String matnr) { |
| | | if (Cools.isEmpty(matnr)) { |
| | | return null; |
| | | } |
| | |
| | | if (Cools.isEmpty(mat)) { |
| | | return null; |
| | | } |
| | | LocRule locRule = null; |
| | | do { |
| | | locRule = this.selectOne(new EntityWrapper<LocRule>().eq("matnr", matnr).ge("row_beg", startRow).le("row_end", endRow).eq("status", 1)); |
| | | if (null != locRule) { |
| | | break; |
| | | } |
| | | locRule = this.selectOne(new EntityWrapper<LocRule>().eq("specs", mat.getSpecs()).ge("row_beg", startRow).le("row_end", endRow).eq("status", 1)); |
| | | if (null != locRule) { |
| | | break; |
| | | } |
| | | locRule = this.selectOne(new EntityWrapper<LocRule>().eq("model", mat.getModel()).ge("row_beg", startRow).le("row_end", endRow).eq("status", 1)); |
| | | if (null != locRule) { |
| | | break; |
| | | } |
| | | locRule = this.selectOne(new EntityWrapper<LocRule>().eq("batch", batch).ge("row_beg", startRow).le("row_end", endRow).eq("status", 1)); |
| | | if (null != locRule) { |
| | | break; |
| | | } |
| | | } while (false); |
| | | return locRule; |
| | | |
| | | return this.baseMapper.selectByMatnr(matnr); |
| | | } |
| | | |
| | | @Override |
| | | public List<LocRule> findCode(String matnr,String other) { |
| | | if (Cools.isEmpty(matnr)) { |
| | | return null; |
| | | } |
| | | Mat mat = matService.selectByMatnr(matnr); |
| | | if (Cools.isEmpty(mat)) { |
| | | return null; |
| | | } |
| | | if(Cools.isEmpty(mat.getBrand())){ |
| | | return null; |
| | | } |
| | | |
| | | Wrapper<LocRule> wrapper = new EntityWrapper<LocRule>() |
| | | .eq("matnr",mat.getBrand().substring(0,4)) |
| | | .eq("mixed",0) |
| | | .eq("status",1); |
| | | |
| | | Utils.wapperSetCondition(wrapper,"other",other); |
| | | |
| | | return this.selectList(wrapper); |
| | | |
| | | } |
| | | |
| | | //找混载库位规则 |
| | | @Override |
| | | public List<LocRule> findMixed() { |
| | | return this.baseMapper.selectByMixed(1);//搜索混载库位规则 |
| | | } |
| | | |
| | | //将库位规则转换为库位组(能查出来的都是空库位) |
| | | @Override |
| | | public List<LocMast> locRuleToLocNos(LocRule locRule) { |
| | | return locMastService.queryFreeLocMast2(null, locRule.getRowBeg(), locRule.getRowEnd(), locRule.getBayBeg(), locRule.getBayEnd(), locRule.getLevBeg(), locRule.getLevEnd()); |
| | | } |
| | | |
| | | @Override |
| | | public int updateKeepGoByMatnr(String matnr, Integer keepGo) { |
| | | return this.baseMapper.updateKeepGoByMatnr(matnr, keepGo); |
| | | } |
| | | |
| | | @Override |
| | | public int updateKeepGoByMixed(Integer keepGo) { |
| | | return this.baseMapper.updateKeepGoByMixed(keepGo); |
| | | } |
| | | } |