Showing
1 changed file
with
62 additions
and
0 deletions
xingyun-sc/src/main/java/com/lframework/xingyun/sc/impl/shipments/ShipmentsOrderInfoServiceImpl.java
| @@ -30,12 +30,14 @@ import com.lframework.xingyun.sc.handlers.MessageHandler; | @@ -30,12 +30,14 @@ import com.lframework.xingyun.sc.handlers.MessageHandler; | ||
| 30 | import com.lframework.xingyun.sc.service.ledger.ReceiptLedgerInfoService; | 30 | import com.lframework.xingyun.sc.service.ledger.ReceiptLedgerInfoService; |
| 31 | import com.lframework.xingyun.sc.service.order.PurchaseOrderInfoService; | 31 | import com.lframework.xingyun.sc.service.order.PurchaseOrderInfoService; |
| 32 | import com.lframework.xingyun.sc.service.order.PurchaseOrderLineService; | 32 | import com.lframework.xingyun.sc.service.order.PurchaseOrderLineService; |
| 33 | +import com.lframework.xingyun.sc.service.sample.SampleResultTrackingService; | ||
| 33 | import com.lframework.xingyun.sc.service.shipments.ShipmentsPlanDetailService; | 34 | import com.lframework.xingyun.sc.service.shipments.ShipmentsPlanDetailService; |
| 34 | import com.lframework.xingyun.sc.service.shipments.ShipmentsPlanService; | 35 | import com.lframework.xingyun.sc.service.shipments.ShipmentsPlanService; |
| 35 | import com.lframework.xingyun.sc.service.shipments.car.CarRequestPlanService; | 36 | import com.lframework.xingyun.sc.service.shipments.car.CarRequestPlanService; |
| 36 | import com.lframework.xingyun.sc.service.shipments.car.DraftRequestCarTicketService; | 37 | import com.lframework.xingyun.sc.service.shipments.car.DraftRequestCarTicketService; |
| 37 | import com.lframework.xingyun.sc.service.shipments.car.RequestCarTicketService; | 38 | import com.lframework.xingyun.sc.service.shipments.car.RequestCarTicketService; |
| 38 | import com.lframework.xingyun.sc.utils.CommonUtil; | 39 | import com.lframework.xingyun.sc.utils.CommonUtil; |
| 40 | +import com.lframework.xingyun.sc.vo.sample.tracking.CreateSampleResultTrackingVo; | ||
| 39 | import com.lframework.xingyun.sc.vo.shipments.car.CreateCarRequestPlanVo; | 41 | import com.lframework.xingyun.sc.vo.shipments.car.CreateCarRequestPlanVo; |
| 40 | import com.lframework.xingyun.sc.vo.shipments.car.CreateDraftRequestCarTicketVo; | 42 | import com.lframework.xingyun.sc.vo.shipments.car.CreateDraftRequestCarTicketVo; |
| 41 | import com.lframework.xingyun.sc.vo.shipments.car.CreateRequestCarTicketVo; | 43 | import com.lframework.xingyun.sc.vo.shipments.car.CreateRequestCarTicketVo; |
| @@ -95,6 +97,8 @@ public class ShipmentsOrderInfoServiceImpl extends BaseMpServiceImpl<ShipmentsOr | @@ -95,6 +97,8 @@ public class ShipmentsOrderInfoServiceImpl extends BaseMpServiceImpl<ShipmentsOr | ||
| 95 | private ReceiptLedgerInfoService receiptLedgerInfoService; | 97 | private ReceiptLedgerInfoService receiptLedgerInfoService; |
| 96 | @Resource | 98 | @Resource |
| 97 | private SysUserRoleService sysUserRoleService; | 99 | private SysUserRoleService sysUserRoleService; |
| 100 | + @Resource | ||
| 101 | + private SampleResultTrackingService sampleResultTrackingService; | ||
| 98 | 102 | ||
| 99 | 103 | ||
| 100 | @Override | 104 | @Override |
| @@ -454,6 +458,64 @@ public class ShipmentsOrderInfoServiceImpl extends BaseMpServiceImpl<ShipmentsOr | @@ -454,6 +458,64 @@ public class ShipmentsOrderInfoServiceImpl extends BaseMpServiceImpl<ShipmentsOr | ||
| 454 | // 生成应收款台账明细数据 | 458 | // 生成应收款台账明细数据 |
| 455 | receiptLedgerInfoService.generateLedgerInfo(Collections.singletonList(orderInfo)); | 459 | receiptLedgerInfoService.generateLedgerInfo(Collections.singletonList(orderInfo)); |
| 456 | } | 460 | } |
| 461 | + //生成产品试样结果跟踪单 | ||
| 462 | + if (CollectionUtils.isNotEmpty(orderIds)) { | ||
| 463 | + Map<Object, List<ShipmentsPlanDetail>> map = shipmentsOrderDetailList.stream() | ||
| 464 | + .collect(Collectors.groupingBy(ShipmentsPlanDetail::getOrderId)); | ||
| 465 | + for (String orderId : orderIds) { | ||
| 466 | + CreateSampleResultTrackingVo vo1 = new CreateSampleResultTrackingVo(); | ||
| 467 | + PurchaseOrderInfo info = purchaseOrderInfoService.findById(orderId); | ||
| 468 | + if (!info.isSampleOrder()) { | ||
| 469 | + continue; | ||
| 470 | + } | ||
| 471 | + vo1.setDeptId(info.getDeptId()); | ||
| 472 | + vo1.setCustomerId(orderInfo.getCustomerId()); | ||
| 473 | + vo1.setWorkshopId(orderInfo.getWorkshopId()); | ||
| 474 | + vo1.setOrderId(orderId); | ||
| 475 | + | ||
| 476 | + List<SampleFeedbackTrackingDetail> details = new ArrayList<>(); | ||
| 477 | + List<ShipmentsPlanDetail> shipmentsPlanDetails = map.get(orderId); | ||
| 478 | + if (CollectionUtils.isNotEmpty(shipmentsPlanDetails)) { | ||
| 479 | + List<String> ids = shipmentsPlanDetails.stream().map(ShipmentsPlanDetail::getId).collect(Collectors.toList()); | ||
| 480 | + QueryShipmentsPlanDetailVo vo2 = new QueryShipmentsPlanDetailVo(); | ||
| 481 | + vo2.setIds(ids); | ||
| 482 | + List<ShipmentsPlanDetail> query = shipmentsPlanDetailService.query(vo2); | ||
| 483 | + if (CollectionUtils.isNotEmpty(query)) { | ||
| 484 | + SampleFeedbackTrackingDetail detail = new SampleFeedbackTrackingDetail(); | ||
| 485 | + String userId = SecurityUtil.getCurrentUser().getId(); | ||
| 486 | + for (ShipmentsPlanDetail shipmentsPlanDetail : query) { | ||
| 487 | + detail.setId(IdUtil.getId()); | ||
| 488 | + detail.setOrderId(orderId); | ||
| 489 | + detail.setOrderSpecId(shipmentsPlanDetail.getOrderSpecId()); | ||
| 490 | + detail.setShipmentOrderId(shipmentsPlanDetail.getShipmentOrderId()); | ||
| 491 | + detail.setShipmentDetailId(shipmentsPlanDetail.getId()); | ||
| 492 | + detail.setBrand(shipmentsPlanDetail.getBrand()); | ||
| 493 | + detail.setThickness(shipmentsPlanDetail.getThickness()); | ||
| 494 | + detail.setThicknessTolPos(shipmentsPlanDetail.getThicknessTolPos()); | ||
| 495 | + detail.setThicknessTolNeg(shipmentsPlanDetail.getThicknessTolNeg()); | ||
| 496 | + detail.setWidth(shipmentsPlanDetail.getWidth()); | ||
| 497 | + detail.setWidthTolPos(shipmentsPlanDetail.getWidthTolPos()); | ||
| 498 | + detail.setWidthTolNeg(shipmentsPlanDetail.getWidthTolNeg()); | ||
| 499 | + detail.setLength(shipmentsPlanDetail.getLength()); | ||
| 500 | + detail.setLengthTolPos(shipmentsPlanDetail.getLengthTolPos()); | ||
| 501 | + detail.setLengthTolNeg(shipmentsPlanDetail.getLengthTolNeg()); | ||
| 502 | + detail.setStatus(shipmentsPlanDetail.getStatus()); | ||
| 503 | + detail.setShipmentDate(shipmentsPlanDetail.getShipmentsDate()); | ||
| 504 | + detail.setQuantity(shipmentsPlanDetail.getActualShipmentQuantity()); | ||
| 505 | + detail.setYieldBatchNo(shipmentsPlanDetail.getYieldBatchNo()); | ||
| 506 | + detail.setCreateById(userId); | ||
| 507 | + detail.setCreateTime(LocalDateTime.now()); | ||
| 508 | + detail.setUpdateById(userId); | ||
| 509 | + detail.setUpdateTime(LocalDateTime.now()); | ||
| 510 | + details.add(detail); | ||
| 511 | + } | ||
| 512 | + } | ||
| 513 | + } | ||
| 514 | + vo1.setSampleFeedbackTrackingDetailList(details); | ||
| 515 | + | ||
| 516 | + sampleResultTrackingService.create(vo1); | ||
| 517 | + } | ||
| 518 | + } | ||
| 457 | } | 519 | } |
| 458 | 520 | ||
| 459 | @Override | 521 | @Override |