skyouc
16 小时以前 09fcde0c99664feb8aaa4d31d4abe096c2d096b9
组托档历史功能优化
单据加入历史单功能优化
2个文件已修改
47 ■■■■■ 已修改文件
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AsnOrderLogSchedule.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/PakinSchedules.java 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AsnOrderLogSchedule.java
@@ -142,7 +142,7 @@
                    log.error(e.getMessage());
                }
            }
            if (order.getType().equals(OrderType.ORDER_OUT.type) &&  order.getReportOnce() >= 4) {
//            if (order.getType().equals(OrderType.ORDER_OUT.type) &&  order.getReportOnce() >= 4) {
                AsnOrderLog one = asnOrderLogService.getOne(new LambdaQueryWrapper<AsnOrderLog>().eq(AsnOrderLog::getCode, order.getCode()), false);
                if (Objects.isNull(one)) {
                    AsnOrderLog orderLog = new AsnOrderLog();
@@ -233,7 +233,7 @@
//                if (!this.asnOrderService.removeById(order.getId())) {
//                    throw new CoolException("原单据删除失败!!");
//                }
            }
//            }
        }
    }
}
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/PakinSchedules.java
@@ -13,8 +13,7 @@
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
@Component
@@ -67,24 +66,40 @@
                throw new CoolException("组拖明细为空!!");
            }
            List<String> pkinItems = pakinItems.stream().map(WaitPakinItem::getAsnCode).collect(Collectors.toList());
            pkinItems.forEach(item -> {
                List<WkOrderItem> wkOrders = asnOrderItemService.list(new LambdaQueryWrapper<WkOrderItem>().eq(WkOrderItem::getOrderCode, item));
                if (wkOrders.isEmpty()) {
                    throw new CoolException("数据错误,原单据不存在或已丢失!!");
                }
                Double sum = wkOrders.stream().mapToDouble(WkOrderItem::getAnfme).sum();
                List<WaitPakinItem> waitPakinItems = waitPakinItemService.list(new LambdaQueryWrapper<WaitPakinItem>().eq(WaitPakinItem::getAsnCode, item));
                if (waitPakinItems.isEmpty()) {
                    throw new CoolException("数据错误,组托明细不存在!!");
                }
                Double sum1 = waitPakinItems.stream().mapToDouble(WaitPakinItem::getAnfme).sum();
                if (sum.compareTo(sum1) == 0) {
                    if (!asnOrderService.update(new LambdaUpdateWrapper<WkOrder>()
                            .eq(WkOrder::getCode, item)
                            .set(WkOrder::getExceStatus, AsnExceStatus.ASN_EXCE_STATUS_TASK_DONE.val))) {
                        throw new CoolException("单据修改失败!!");
                Set<Long> orderIds = wkOrders.stream().map(WkOrderItem::getOrderId).collect(Collectors.toSet());
                orderIds.forEach(itemId -> {
                    WkOrder wkOrder = asnOrderService.getById(itemId);
                    if (Objects.isNull(wkOrder)) {
                        throw new CoolException("数据错误,原单据不存在或已丢失!!");
                    }
                }
                    if (wkOrder.getAnfme().compareTo(wkOrder.getQty()) == 0) {
                        if (!asnOrderService.update(new LambdaUpdateWrapper<WkOrder>()
                                .eq(WkOrder::getId, itemId)
                                .set(WkOrder::getExceStatus, AsnExceStatus.ASN_EXCE_STATUS_TASK_DONE.val))) {
                            throw new CoolException("单据修改失败!!");
                        }
                    }
                });
//                Double sum = wkOrders.stream().mapToDouble(WkOrderItem::getAnfme).sum();
//                List<WaitPakinItem> waitPakinItems = waitPakinItemService.list(new LambdaQueryWrapper<WaitPakinItem>().eq(WaitPakinItem::getAsnCode, item));
//                if (waitPakinItems.isEmpty()) {
//                    throw new CoolException("数据错误,组托明细不存在!!");
//                }
//                Double sum1 = waitPakinItems.stream().mapToDouble(WaitPakinItem::getAnfme).sum();
//                if (sum.compareTo(sum1) == 0) {
//                    if (!asnOrderService.update(new LambdaUpdateWrapper<WkOrder>()
//                            .eq(WkOrder::getCode, item)
//                            .set(WkOrder::getExceStatus, AsnExceStatus.ASN_EXCE_STATUS_TASK_DONE.val))) {
//                        throw new CoolException("单据修改失败!!");
//                    }
//                }
            });
            List<WaitPakinItemLog> itemLogs = new ArrayList<>();