| | |
| | | package zy.cloud.wms.common.service; |
| | | |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.core.common.Cools; |
| | | import com.core.exception.CoolException; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import zy.cloud.wms.common.service.erp.entity.GetDataResult; |
| | | import zy.cloud.wms.manager.entity.LocDetl; |
| | | import zy.cloud.wms.manager.entity.Mat; |
| | | import zy.cloud.wms.manager.entity.Prior; |
| | | import zy.cloud.wms.manager.service.LocDetlService; |
| | | import zy.cloud.wms.manager.service.MatService; |
| | | import zy.cloud.wms.manager.service.PakoutService; |
| | | import zy.cloud.wms.manager.service.PriorService; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * Created by vincent on 2021/3/1 |
| | |
| | | @Service("mainService") |
| | | public class MainService { |
| | | |
| | | @Autowired |
| | | private MatService matService; |
| | | @Autowired |
| | | private LocDetlService locDetlService; |
| | | @Autowired |
| | | private PakoutService pakoutService; |
| | | @Autowired |
| | | private PriorService priorService; |
| | | |
| | | @Transactional |
| | | public void stockOutProcess() { |
| | | public void stockOutProcess(List<GetDataResult> list) { |
| | | if (Cools.isEmpty(list)) { |
| | | return; |
| | | } |
| | | for (GetDataResult data : list) { |
| | | // 判断物料是否存在 |
| | | Mat mat = matService.selectByMatnr(data.getUserCode()); |
| | | if (null == mat) { |
| | | throw new CoolException(data.getUserCode() + "物料尚未更新。" + data.getNumber() +"单据因此中断!"); |
| | | } |
| | | // 根据推荐库位查找库存 |
| | | List<Prior> priors = priorService.selectList(new EntityWrapper<Prior>().eq("matnr", mat.getMatnr()).orderBy("prio")); |
| | | if (!Cools.isEmpty(priors)) { |
| | | for (Prior prior : priors) { |
| | | LocDetl locDetl = locDetlService.getLocDetl(prior.getNodeId(), prior.getMatnr()); |
| | | if (null != locDetl) { |
| | | |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | } |
| | | |
| | | |