From 87d92eb2fd29226c701b2b2dd4c46d30fa56b80c Mon Sep 17 00:00:00 2001 From: 啊鑫 <t2856754968@163.com> Date: 星期一, 17 二月 2025 14:57:36 +0800 Subject: [PATCH] 撤回流程的补充 --- src/main/java/com/gs/xky/service/XkyService.java | 84 +++++++++++++++++++++++++++++++++++------ 1 files changed, 71 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/gs/xky/service/XkyService.java b/src/main/java/com/gs/xky/service/XkyService.java index 7a26aea..fb17ddf 100644 --- a/src/main/java/com/gs/xky/service/XkyService.java +++ b/src/main/java/com/gs/xky/service/XkyService.java @@ -1,6 +1,8 @@ package com.gs.xky.service; +import cn.hutool.core.collection.CollUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.gs.xky.config.ApiResponse; import com.gs.xky.config.BodyParam; @@ -9,7 +11,7 @@ import com.gs.xky.dto.BarcodeDeliveryNo; import com.gs.xky.dto.XkyDetail; import com.gs.xky.dto.XkyEntity; -import com.gs.xky.entity.DeliveryNotice; +import com.gs.xky.entity.*; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -28,6 +30,13 @@ private final DeliveryNoticeService deliveryNoticeService; private final TblBarcodeInformationService barcodeInformationService; + private final DeliveryNoticeDetailService deliveryNoticeDetailService; + + private final MesInvItemArnService mesInvItemArnService; + private final MesInvItemArnDetailService mesInvItemArnDetailService; + private final MesInvItemBarcodesService mesInvItemBarcodesService; + + private final MesQaItemsDetect01Service mesQaItemsDetect01Service; public void GetSaveDetail() throws IOException { long currentTimeMillis = System.currentTimeMillis(); @@ -35,15 +44,15 @@ XkyCommonParam param = XkyCommonParam.GetInit(); // 璁$畻浜斿垎閽熷墠鐨勬椂闂存埑 - long startDate = currentTimeMillis - (65 * 60 * 1000); // 5 鍒嗛挓 = 5 * 60 * 1000 姣 + long startDate = currentTimeMillis - (6 * 60 * 1000); // 5 鍒嗛挓 = 5 * 60 * 1000 姣 // 鍒涘缓 BodyParam 瀵硅薄骞惰祴鍊� BodyParam bodyParam = new BodyParam(); bodyParam.setStartDate(startDate); bodyParam.setEndDate(currentTimeMillis); bodyParam.setErpCode(DataAcquisitionConfiguration.TEST_ERP_CODE); - bodyParam.setStatus(new int[]{1}); - bodyParam.setLogisticsStatus(2); + bodyParam.setStatus(new int[]{1, 6}); +// bodyParam.setLogisticsStatus(2); param.setBody(bodyParam); @@ -53,27 +62,76 @@ List<XkyEntity> deliveryNoList = noList.getDataList(); - LambdaUpdateWrapper<DeliveryNotice> deliveryNoticeWrapper = new LambdaUpdateWrapper<>(); + if (CollUtil.isEmpty(deliveryNoList)) { + return; + } deliveryNoList.forEach(deliveryNo -> { try { - if ("4".equals(deliveryNo.getStatus()) || "8".equals(deliveryNo.getStatus())) { - deliveryNoticeWrapper.clear(); - deliveryNoticeWrapper.eq(DeliveryNotice::getDeliveryNo, deliveryNo.getDeliveryNo()); - deliveryNoticeService.remove(deliveryNoticeWrapper); + if ("6".equals(deliveryNo.getStatus()) || "0".equals(deliveryNo.getLogisticsStatus())) { + + remove(deliveryNo); + + } else if ("1".equals(deliveryNo.getStatus()) && "2".equals(deliveryNo.getLogisticsStatus())) { + XkyDetail detail = getDetail(deliveryNo.getDeliveryNo()); + deliveryNoticeService.saveDeliveryNotice(detail); + List<BarcodeDeliveryNo> barcodeDeliveryNos = GetBarcodeInformation(deliveryNo.getDeliveryNo()); + barcodeInformationService.SaveBarcodeInformation(barcodeDeliveryNos, deliveryNo.getDeliveryNo()); + + deliveryNoticeService.callPdaReceiptBtn("閫佽揣鍗曠鏀禰BTNOK[PL017[" + deliveryNo.getDeliveryNo(), ""); } - XkyDetail detail = getDetail(deliveryNo.getDeliveryNo()); - deliveryNoticeService.saveDeliveryNotice(detail); - List<BarcodeDeliveryNo> barcodeDeliveryNos = GetBarcodeInformation(deliveryNo.getDeliveryNo()); - barcodeInformationService.SaveBarcodeInformation(barcodeDeliveryNos, deliveryNo.getDeliveryNo()); } catch (IOException e) { throw new RuntimeException(e); } }); } + private void remove(XkyEntity deliveryNo) { + LambdaUpdateWrapper<DeliveryNotice> deliveryNoticeWrapper = new LambdaUpdateWrapper<>(); + + deliveryNoticeWrapper.eq(DeliveryNotice::getDeliveryNo, deliveryNo.getDeliveryNo()); + + DeliveryNotice one = deliveryNoticeService.getOne(deliveryNoticeWrapper, false); + + if (deliveryNoticeService.remove(deliveryNoticeWrapper)) { + + LambdaUpdateWrapper<DeliveryNoticeDetail> updateWrapper = new LambdaUpdateWrapper<>(); + + updateWrapper.eq(DeliveryNoticeDetail::getPid, one.getId()); + + deliveryNoticeDetailService.remove(updateWrapper); + + LambdaUpdateWrapper<TblBarcodeInformation> updateWrapper1 = new LambdaUpdateWrapper<>(); + + updateWrapper1.eq(TblBarcodeInformation::getDeliveryNo, deliveryNo.getDeliveryNo()); + + barcodeInformationService.remove(updateWrapper1); + + LambdaQueryWrapper<MesInvItemArn> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(MesInvItemArn::getPaperBillNo, deliveryNo.getDeliveryNo()); + + MesInvItemArn mesInvItemArn = mesInvItemArnService.getOne(wrapper, false); + + mesInvItemArnService.remove(wrapper); + + if (mesInvItemArn != null) { + LambdaUpdateWrapper<MesInvItemArnDetail> updateWrapper2 = new LambdaUpdateWrapper<>(); + + updateWrapper2.eq(MesInvItemArnDetail::getMid, mesInvItemArn.getId()); + mesInvItemArnDetailService.remove(updateWrapper2); + + LambdaUpdateWrapper<MesInvItemBarcodes> updateWrapper3 = new LambdaUpdateWrapper<>(); + + updateWrapper3.eq(MesInvItemBarcodes::getBillNo, mesInvItemArn.getBillNo()); + mesInvItemBarcodesService.remove(updateWrapper3); + + mesQaItemsDetect01Service.removeQa(mesInvItemArn.getBillNo()); + } + } + } + private XkyDetail getDetail(String deliveryNo) throws IOException { XkyCommonParam param = XkyCommonParam.GetInit(); -- Gitblit v1.9.3