|
|
|
@ -986,9 +986,9 @@ public class ChanjetManager {
|
|
|
|
|
|
|
|
|
|
subDO.setAmount(mList.stream().mapToInt(QuerySaleOrderListResDTO::getAmount).sum());
|
|
|
|
|
subDO.setOrderAmount(mList.stream().mapToInt(QuerySaleOrderListResDTO::getAmount).sum());
|
|
|
|
|
subDO.setPubuserdefnvc2(mList.get(0).getPubuserdefnvc2());
|
|
|
|
|
subDO.setPriuserdefnvc2(mList.get(0).getPriuserdefnvc2());
|
|
|
|
|
subDO.setFreeItem0(mList.get(0).getFreeItem0());
|
|
|
|
|
subDO.setCustomerSubCode(mList.get(0).getPubuserdefnvc2());
|
|
|
|
|
subDO.setOrderSerialNumber(mList.get(0).getPriuserdefnvc2());
|
|
|
|
|
subDO.setFreeItemColor(mList.get(0).getFreeItem0());
|
|
|
|
|
subDOList.add(subDO);
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
@ -1455,47 +1455,46 @@ public class ChanjetManager {
|
|
|
|
|
.setManufactureOrderDetails(detailList);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 设置生产加工单工序信息
|
|
|
|
|
List<ManufactureOrderProcessDetails> manufactureOrderProcessDetailsList = new ArrayList<>();
|
|
|
|
|
ManufactureOrderProcessDetails manufactureOrderProcessDetails = new ManufactureOrderProcessDetails();
|
|
|
|
|
manufactureOrderProcessDetails.setInventory(new Inventory(subDOList.get(0).getProjectSubCode()));
|
|
|
|
|
ProcessingType processingType = new ProcessingType();
|
|
|
|
|
processingType.setCode("HomeMade");
|
|
|
|
|
manufactureOrderProcessDetails.setProcessingType(processingType);
|
|
|
|
|
manufactureOrderProcessDetails.setUnit(new Unit(subDOList.get(0).getUnit()));
|
|
|
|
|
// 生产订单必须要选择工序,否则无法与工序汇报单无法匹配
|
|
|
|
|
manufactureOrderProcessDetails.setProcess(new Process("01"));
|
|
|
|
|
|
|
|
|
|
manufactureOrderProcessDetailsList.add(manufactureOrderProcessDetails);
|
|
|
|
|
|
|
|
|
|
ManufactureOrderDetails detail = new ManufactureOrderDetails();
|
|
|
|
|
DictDataDO dictDataDO = dictDataMapper.selectByDictTypeAndValue(DictTypeConstants.MATERIAL_UNIT.getCode(), subDOList.get(0).getUnit());
|
|
|
|
|
|
|
|
|
|
detail.setInventory(new Inventory(subDOList.get(0).getProjectSubCode()))
|
|
|
|
|
.setUnit(new Unit(dictDataDO.getLabel()))
|
|
|
|
|
.setQuantity(subDOList.get(0).getAmount())
|
|
|
|
|
.setPreStartDate(aDo.getProjectStartTime().format(DateTimeFormatter.ISO_DATE))
|
|
|
|
|
.setPreFinishDate(aDo.getProjectEndTime().format(DateTimeFormatter.ISO_DATE))
|
|
|
|
|
.setManufactureOrderProcessDetails(manufactureOrderProcessDetailsList)
|
|
|
|
|
;
|
|
|
|
|
detailList.add(detail);
|
|
|
|
|
|
|
|
|
|
// subDOList.forEach(subDO -> {
|
|
|
|
|
// ManufactureOrderDetails detail = new ManufactureOrderDetails();
|
|
|
|
|
// DictDataDO dictDataDO = dictDataMapper.selectByDictTypeAndValue(DictTypeConstants.MATERIAL_UNIT.getCode(), subDO.getUnit());
|
|
|
|
|
// // 设置生产加工单工序信息
|
|
|
|
|
// List<ManufactureOrderProcessDetails> manufactureOrderProcessDetailsList = new ArrayList<>();
|
|
|
|
|
// ManufactureOrderProcessDetails manufactureOrderProcessDetails = new ManufactureOrderProcessDetails();
|
|
|
|
|
// manufactureOrderProcessDetails.setInventory(new Inventory(subDOList.get(0).getProjectSubCode()));
|
|
|
|
|
// ProcessingType processingType = new ProcessingType();
|
|
|
|
|
// processingType.setCode("HomeMade");
|
|
|
|
|
// manufactureOrderProcessDetails.setProcessingType(processingType);
|
|
|
|
|
// manufactureOrderProcessDetails.setUnit(new Unit(subDOList.get(0).getUnit()));
|
|
|
|
|
// // 生产订单必须要选择工序,否则无法与工序汇报单无法匹配
|
|
|
|
|
// manufactureOrderProcessDetails.setProcess(new Process("01"));
|
|
|
|
|
//
|
|
|
|
|
// manufactureOrderProcessDetailsList.add(manufactureOrderProcessDetails);
|
|
|
|
|
//
|
|
|
|
|
// ManufactureOrderDetails detail = new ManufactureOrderDetails();
|
|
|
|
|
// DictDataDO dictDataDO = dictDataMapper.selectByDictTypeAndValue(DictTypeConstants.MATERIAL_UNIT.getCode(), subDOList.get(0).getUnit());
|
|
|
|
|
//
|
|
|
|
|
// detail.setInventory(new Inventory(subDO.getProjectSubCode()))
|
|
|
|
|
// .setUnit(new Unit(dictDataDO.getLabel()))
|
|
|
|
|
// .setQuantity(subDO.getAmount())
|
|
|
|
|
// .setPreStartDate(aDo.getProjectStartTime().format(DateTimeFormatter.ISO_DATE))
|
|
|
|
|
// .setPreFinishDate(aDo.getProjectEndTime().format(DateTimeFormatter.ISO_DATE))
|
|
|
|
|
// ;
|
|
|
|
|
// detailList.add(detail);
|
|
|
|
|
// });
|
|
|
|
|
// detail.setInventory(new Inventory(subDOList.get(0).getProjectSubCode()))
|
|
|
|
|
// .setUnit(new Unit(dictDataDO.getLabel()))
|
|
|
|
|
// .setQuantity(subDOList.get(0).getAmount())
|
|
|
|
|
// .setPreStartDate(aDo.getProjectStartTime().format(DateTimeFormatter.ISO_DATE))
|
|
|
|
|
// .setPreFinishDate(aDo.getProjectEndTime().format(DateTimeFormatter.ISO_DATE))
|
|
|
|
|
// .setManufactureOrderProcessDetails(manufactureOrderProcessDetailsList)
|
|
|
|
|
// ;
|
|
|
|
|
// detailList.add(detail);
|
|
|
|
|
|
|
|
|
|
subDOList.forEach(subDO -> {
|
|
|
|
|
ManufactureOrderDetails detail = new ManufactureOrderDetails();
|
|
|
|
|
DictDataDO dictDataDO = dictDataMapper.selectByDictTypeAndValue(DictTypeConstants.MATERIAL_UNIT.getCode(), subDO.getUnit());
|
|
|
|
|
|
|
|
|
|
detail.setInventory(new Inventory(subDO.getProjectSubCode()))
|
|
|
|
|
.setUnit(new Unit(dictDataDO.getLabel()))
|
|
|
|
|
.setQuantity(subDO.getAmount())
|
|
|
|
|
.setPreStartDate(aDo.getProjectStartTime().format(DateTimeFormatter.ISO_DATE))
|
|
|
|
|
.setPreFinishDate(aDo.getProjectEndTime().format(DateTimeFormatter.ISO_DATE))
|
|
|
|
|
;
|
|
|
|
|
detailList.add(detail);
|
|
|
|
|
});
|
|
|
|
|
// 设置为“是”,打开所有与用友通信的接口
|
|
|
|
|
if(getSystemParameters()) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//判断是否已经提交过生产加工单
|
|
|
|
|
CommonResult<ListResultResVO> resultExist =
|
|
|
|
|
chanjetSpi.invoke(QUERY_PRODUCTION_ORDER_LIST, new ListProductionOrderReqVO(aDo.getCode()), ListResultResVO.class);
|
|
|
|
@ -1506,7 +1505,7 @@ public class ChanjetManager {
|
|
|
|
|
CommonResult<ResultResVO> result = null;
|
|
|
|
|
if(resultExist.getData().getData()!=null && resultExist.getData().getData().getTotalCount()==0){
|
|
|
|
|
//没提交过,直接创建生产加工单
|
|
|
|
|
result = chanjetSpi.invoke(CREATE_PRODUCTION_ORDER, new CreateProductionOrderReqVO(dto), ResultResVO.class);
|
|
|
|
|
result = chanjetSpi.invoke(CREATE_PRODUCTION_ORDER_ASYNC, new CreateProductionOrderReqVO(dto), ResultResVO.class);
|
|
|
|
|
}else{
|
|
|
|
|
|
|
|
|
|
//生产加工单修改接口问题,重新提交时要先弃审,删除,再重新创建,
|
|
|
|
|