zhuyifan

fix(settlement): 修正订单详情构建逻辑中的SKU ID使用错误

- 在构建变更前订单详情时,使用原始订单详情的SKU ID替代当前订单详情的SKU ID
- 在构建加餐订单详情时,同样使用原始订单详情的SKU ID以确保一致性
- 确保在订单数量发生变化时,正确反映原始与变更后的订单明细
...@@ -881,10 +881,10 @@ public class SettlementServiceImpl implements SettlementService { ...@@ -881,10 +881,10 @@ public class SettlementServiceImpl implements SettlementService {
881 && addOriginalDetailMap.get(orderDetail.getId()).getCount() != orderDetail.getCount()) { 881 && addOriginalDetailMap.get(orderDetail.getId()).getCount() != orderDetail.getCount()) {
882 final var orderDetailBO = addOriginalDetailMap.get(orderDetail.getId()); 882 final var orderDetailBO = addOriginalDetailMap.get(orderDetail.getId());
883 SettlementDTO.SettlementOrderDetail beforeChange = buildSettlementOrderDetail( 883 SettlementDTO.SettlementOrderDetail beforeChange = buildSettlementOrderDetail(
884 - order, orderDetail.getMenuDetailId(), orderDetail.getSkuId(), orderDetailBO.getCount(), orderDetail.getPrice(), "订餐", menuName, customerName, hisCustomerNo, menuDetailMap, mealMap, skuMap); 884 + order, orderDetail.getMenuDetailId(), orderDetailBO.getSkuId(), orderDetailBO.getCount(), orderDetail.getPrice(), "订餐", menuName, customerName, hisCustomerNo, menuDetailMap, mealMap, skuMap);
885 classifyOrders.add(beforeChange); 885 classifyOrders.add(beforeChange);
886 SettlementDTO.SettlementOrderDetail afterChange = buildSettlementOrderDetail( 886 SettlementDTO.SettlementOrderDetail afterChange = buildSettlementOrderDetail(
887 - order, orderDetail.getMenuDetailId(), orderDetail.getSkuId(), orderDetail.getCount() - orderDetailBO.getCount(), orderDetail.getPrice(), "加餐", menuName, customerName, hisCustomerNo, menuDetailMap, mealMap, skuMap); 887 + order, orderDetail.getMenuDetailId(), orderDetailBO.getSkuId(), orderDetail.getCount() - orderDetailBO.getCount(), orderDetail.getPrice(), "加餐", menuName, customerName, hisCustomerNo, menuDetailMap, mealMap, skuMap);
888 classifyOrders.add(afterChange); 888 classifyOrders.add(afterChange);
889 } 889 }
890 890
......