| | |
| | | package zy.cloud.wms.manager.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.baomidou.mybatisplus.plugins.Page; |
| | | import com.baomidou.mybatisplus.service.impl.ServiceImpl; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import zy.cloud.wms.common.config.CodeCoolException; |
| | | import zy.cloud.wms.manager.entity.CustOrder; |
| | | import zy.cloud.wms.manager.entity.LocDetl; |
| | | import zy.cloud.wms.manager.entity.Mat; |
| | | import zy.cloud.wms.manager.mapper.LocDetlMapper; |
| | | import zy.cloud.wms.manager.service.CustOrderService; |
| | | import zy.cloud.wms.manager.service.LocDetlService; |
| | | import zy.cloud.wms.manager.service.MatService; |
| | | |
| | | import java.util.List; |
| | | |
| | | @Service("locDetlService") |
| | | public class LocDetlServiceImpl extends ServiceImpl<LocDetlMapper, LocDetl> implements LocDetlService { |
| | | |
| | | @Autowired |
| | | private CustOrderService custOrderService; |
| | | @Autowired |
| | | private MatService matService; |
| | | |
| | | @Override |
| | | public Page<LocDetl> getPage(Page page, String nodeId, Object locNo, Object matnr, Object maktx) { |
| | |
| | | return this.baseMapper.selectByLocNoAndMatnr(nodeId, matnr); |
| | | } |
| | | |
| | | @Override |
| | | public void checkLocDetlCount(String number) { |
| | | List<CustOrder> custOrders = custOrderService.selectList(new EntityWrapper<CustOrder>().eq("number", number).eq("status", 1)); |
| | | StringBuilder errorMsg = new StringBuilder(); |
| | | boolean error = false; |
| | | for (CustOrder custOrder : custOrders) { |
| | | Double count = this.baseMapper.selectCountByMatnr(custOrder.getUserCode()); |
| | | if (count == null) { |
| | | count = 0.0D; |
| | | } |
| | | if (count < custOrder.getQty()) { |
| | | if (!error) { |
| | | error = true; |
| | | } |
| | | Mat mat = matService.selectByMatnr(custOrder.getUserCode()); |
| | | errorMsg.append(mat == null ? custOrder.getUserCode() : mat.getMaktx()).append("库存不足,缺货数量:").append(custOrder.getQty() - count).append("</br>"); |
| | | } |
| | | } |
| | | if (error) { |
| | | throw new CodeCoolException("20001-" + errorMsg.toString()); |
| | | } |
| | | } |
| | | |
| | | |
| | | } |