|
@ -17,6 +17,7 @@ import com.win.module.wms.convert.repleinshRequest.RepleinshRequestDetailConvert |
|
|
import com.win.module.wms.convert.repleinshRequest.RepleinshRequestMainConvert; |
|
|
import com.win.module.wms.convert.repleinshRequest.RepleinshRequestMainConvert; |
|
|
import com.win.module.wms.dal.dataobject.balance.BalanceDO; |
|
|
import com.win.module.wms.dal.dataobject.balance.BalanceDO; |
|
|
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO; |
|
|
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO; |
|
|
|
|
|
import com.win.module.wms.dal.dataobject.issueRequest.IssueRequestDetailDO; |
|
|
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO; |
|
|
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO; |
|
|
import com.win.module.wms.dal.dataobject.jobsetting.JobsettingDO; |
|
|
import com.win.module.wms.dal.dataobject.jobsetting.JobsettingDO; |
|
|
import com.win.module.wms.dal.dataobject.purchasereceiptRequest.PurchasereceiptRequestDetailDO; |
|
|
import com.win.module.wms.dal.dataobject.purchasereceiptRequest.PurchasereceiptRequestDetailDO; |
|
@ -53,9 +54,7 @@ import org.springframework.validation.annotation.Validated; |
|
|
import javax.annotation.Resource; |
|
|
import javax.annotation.Resource; |
|
|
import javax.validation.Validator; |
|
|
import javax.validation.Validator; |
|
|
import java.time.LocalDateTime; |
|
|
import java.time.LocalDateTime; |
|
|
import java.util.ArrayList; |
|
|
import java.util.*; |
|
|
import java.util.Collection; |
|
|
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
|
|
|
|
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; |
|
|
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; |
|
|
import static com.win.module.wms.enums.ErrorCodeConstants.*; |
|
|
import static com.win.module.wms.enums.ErrorCodeConstants.*; |
|
@ -500,6 +499,18 @@ public class RepleinshRequestMainServiceImpl implements RepleinshRequestMainServ |
|
|
if("TRUE".equals(mainDO.getDirectCreateRecord())) { |
|
|
if("TRUE".equals(mainDO.getDirectCreateRecord())) { |
|
|
// TODO: 发料申请 跳过任务直接生成记录 未做!!
|
|
|
// TODO: 发料申请 跳过任务直接生成记录 未做!!
|
|
|
} |
|
|
} |
|
|
|
|
|
// 根据 子表 toLocationCode 拆分任务
|
|
|
|
|
|
Map<String, List<RepleinshRequestDetailDO>> listMap = new HashMap<>(); |
|
|
|
|
|
for(RepleinshRequestDetailDO detailItem : detailDO) { |
|
|
|
|
|
List<RepleinshRequestDetailDO> list = listMap.get(detailItem.getToLocationCode()); |
|
|
|
|
|
if(list == null) { |
|
|
|
|
|
list = new ArrayList<>(); |
|
|
|
|
|
} |
|
|
|
|
|
//向list增加数据
|
|
|
|
|
|
list.add(detailItem); |
|
|
|
|
|
listMap.put(detailItem.getToLocationCode(), list); |
|
|
|
|
|
} |
|
|
|
|
|
for(String mapKey : listMap.keySet()) { |
|
|
// 任务主表信息
|
|
|
// 任务主表信息
|
|
|
RepleinshJobMainDO repleinshJobMainDO = new RepleinshJobMainDO(); |
|
|
RepleinshJobMainDO repleinshJobMainDO = new RepleinshJobMainDO(); |
|
|
repleinshJobMainDO.setRequestNumber(mainDO.getNumber()); |
|
|
repleinshJobMainDO.setRequestNumber(mainDO.getNumber()); |
|
@ -545,9 +556,8 @@ public class RepleinshRequestMainServiceImpl implements RepleinshRequestMainServ |
|
|
List<ExpectinCreateReqVO> expectinCreateReqVOList = new ArrayList<>(); |
|
|
List<ExpectinCreateReqVO> expectinCreateReqVOList = new ArrayList<>(); |
|
|
List<ExpectoutCreateReqVO> expectoutCreateReqVOList = new ArrayList<>(); |
|
|
List<ExpectoutCreateReqVO> expectoutCreateReqVOList = new ArrayList<>(); |
|
|
// 根据发料申请子表数据进行分析
|
|
|
// 根据发料申请子表数据进行分析
|
|
|
detailDO.forEach(item -> { |
|
|
listMap.get(mapKey).forEach(item -> { |
|
|
// 根据批次策略/下架策略 返回 库存余额DO
|
|
|
// 根据批次策略/下架策略 返回 库存余额DO
|
|
|
// TODO: 任务 会多生成数据 查下原因
|
|
|
|
|
|
List<BalanceDO> balanceDOListJob = jobUtils.getBalanceByBatchOffShelf(item.getItemCode(),item.getInventoryStatus(),item.getProjectCode(),item.getQty(),mainDO.getFromLocationTypes()); |
|
|
List<BalanceDO> balanceDOListJob = jobUtils.getBalanceByBatchOffShelf(item.getItemCode(),item.getInventoryStatus(),item.getProjectCode(),item.getQty(),mainDO.getFromLocationTypes()); |
|
|
// 根据 查询出所需数据 解析成 任务子表数据
|
|
|
// 根据 查询出所需数据 解析成 任务子表数据
|
|
|
balanceDOListJob.forEach(balanceDOItem -> { |
|
|
balanceDOListJob.forEach(balanceDOItem -> { |
|
@ -600,5 +610,7 @@ public class RepleinshRequestMainServiceImpl implements RepleinshRequestMainServ |
|
|
expectoutService.createExpectout(expectoutCreateReqVOList); |
|
|
expectoutService.createExpectout(expectoutCreateReqVOList); |
|
|
trendsApi.createTrends(repleinshJobMainDO.getId(), "repleinshJob", "补料申请生成补料任务", TrendsTypeEnum.CREATE); |
|
|
trendsApi.createTrends(repleinshJobMainDO.getId(), "repleinshJob", "补料申请生成补料任务", TrendsTypeEnum.CREATE); |
|
|
} |
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|