|
|
|
@ -1451,14 +1451,28 @@ public class ChanjetManager {
|
|
|
|
|
|
|
|
|
|
CreateProductionOrderDto dto = new CreateProductionOrderDto();
|
|
|
|
|
ArrayList<ManufactureOrderDetails> detailList = new ArrayList<>(16);
|
|
|
|
|
String externalCode = aDo.getCode()+"-"+subDOList.stream().sorted(Comparator.comparing(ProjectOrderSubDO::getId)).map(subDO -> String.valueOf(subDO.getId())).collect(Collectors.joining("-"));
|
|
|
|
|
// String externalCode = aDo.getCode()+"-"+subDOList.stream().sorted(Comparator.comparing(ProjectOrderSubDO::getId)).map(subDO -> String.valueOf(subDO.getId())).collect(Collectors.joining("-"));
|
|
|
|
|
String externalCode = aDo.getCode()+"-"+aDo.getId().toString();
|
|
|
|
|
dto.setExternalCode(externalCode)
|
|
|
|
|
.setCode(aDo.getCode())
|
|
|
|
|
// 任意车间
|
|
|
|
|
.setDepartment(new Department(workshopDO.getCode()))
|
|
|
|
|
.setVoucherDate(dateFormat)
|
|
|
|
|
.setIsStartDispatching(0)//禁用派工
|
|
|
|
|
.setIsStartDispatching(false)//禁用派工
|
|
|
|
|
.setManufactureOrderDetails(detailList);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 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))
|
|
|
|
|
// ;
|
|
|
|
|
// detailList.add(detail);
|
|
|
|
|
|
|
|
|
|
subDOList.forEach(subDO -> {
|
|
|
|
|
ManufactureOrderDetails detail = new ManufactureOrderDetails();
|
|
|
|
|
DictDataDO dictDataDO = dictDataMapper.selectByDictTypeAndValue(DictTypeConstants.MATERIAL_UNIT.getCode(), subDO.getUnit());
|
|
|
|
@ -1473,7 +1487,21 @@ public class ChanjetManager {
|
|
|
|
|
});
|
|
|
|
|
// 设置为“是”,打开所有与用友通信的接口
|
|
|
|
|
if(getSystemParameters()) {
|
|
|
|
|
CommonResult<ResultResVO> result = chanjetSpi.invoke(CREATE_PRODUCTION_ORDER, new CreateProductionOrderReqVO(dto), ResultResVO.class);
|
|
|
|
|
CommonResult<ResultResVO> result = null;
|
|
|
|
|
if(aDo.getTs()==null || aDo.getTs().isEmpty()){
|
|
|
|
|
result = chanjetSpi.invoke(CREATE_PRODUCTION_ORDER, new CreateProductionOrderReqVO(dto), ResultResVO.class);
|
|
|
|
|
}else{
|
|
|
|
|
|
|
|
|
|
//生产加工单修改前要先弃审
|
|
|
|
|
CommonResult<ResultResVO> result3 = chanjetSpi.invoke(UN_AUDIT_PRODUCTION_ORDER, new QuerySaleOrderReqVO(new QuerySaleOrderReqVO.SaleOrderParamVO(aDo.getCode())), ResultResVO.class);
|
|
|
|
|
if (!result3.isSuccess() || !result3.getData().isSuccess()) {
|
|
|
|
|
throw new RuntimeException(result3.getMsg());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dto.setTs(aDo.getTs());
|
|
|
|
|
result = chanjetSpi.invoke(UPDATE_PRODUCTION_ORDER, new CreateProductionOrderReqVO(dto), ResultResVO.class);
|
|
|
|
|
}
|
|
|
|
|
// CommonResult<ResultResVO> result = chanjetSpi.invoke(UPDATE_PRODUCTION_ORDER, new CreateProductionOrderReqVO(dto), ResultResVO.class);
|
|
|
|
|
if (!result.isSuccess() || !result.getData().isSuccess()) {
|
|
|
|
|
throw exception(CALL_API_ERROR);
|
|
|
|
|
}
|
|
|
|
@ -1486,6 +1514,9 @@ public class ChanjetManager {
|
|
|
|
|
|
|
|
|
|
Map<String, String> rMap = JSON.parseObject(JSON.toJSONString(result.getData().getData()), new TypeReference<Map<String, String>>() {{
|
|
|
|
|
}});
|
|
|
|
|
|
|
|
|
|
aDo.setTs(rMap.get("Ts").toString());
|
|
|
|
|
projectOrderMapper.updateById(aDo);
|
|
|
|
|
// 查询报工单数据 将id回写至子项目表
|
|
|
|
|
Map<String, List<ProjectOrderSubDO>> subGroupByProjectSubCode = subDOList.stream().collect(Collectors.groupingBy(ProjectOrderSubDO::getProjectSubCode));
|
|
|
|
|
CommonResult<ListResultResVO> listResult = chanjetSpi.invoke(QUERY_PRODUCTION_ORDER_LIST, new ListProductionOrderReqVO(rMap.get("Code")), ListResultResVO.class);
|
|
|
|
|