mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-22 03:55:17 +08:00
比较订单分账记录
This commit is contained in:
@@ -143,5 +143,13 @@ public interface OrderSplitRecordService {
|
||||
* 根据订单号查询订单分账记录
|
||||
*/
|
||||
List<OrderSplitRecord> queryOrderSplitRecordByOrderCode(String orderCode);
|
||||
|
||||
/**
|
||||
* 比较订单分账记录
|
||||
* @param generatedOrderSplitRecordList 生成的订单分账记录
|
||||
* @param queryOrderSplitRecordList 查询的订单分账记录
|
||||
* @return 订单分账记录是否一致 true一致 false不一致
|
||||
*/
|
||||
boolean compareOrderSplitRecord(List<OrderSplitRecord> generatedOrderSplitRecordList, List<OrderSplitRecord> queryOrderSplitRecordList);
|
||||
}
|
||||
|
||||
|
||||
@@ -5843,14 +5843,19 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
|
||||
|
||||
// 获取计算出来的订单分账记录
|
||||
OrderInfoDetailVO orderInfoDetailVO = getOrderInfoDetailVO(orderCode);
|
||||
List<OrderSplitRecord> orderSplitRecords = orderSplitRecordService.generatedOrderSplitRecordList(param, paymentConfirmInfo, splitDataList, orderInfoDetailVO);
|
||||
logger.info("realTimeOrderSplit-订单:{}, 获取计算出来的订单分账记录:{}", orderCode, JSON.toJSONString(orderSplitRecords));
|
||||
|
||||
List<OrderSplitRecord> generatedOrderSplitRecordList = orderSplitRecordService.generatedOrderSplitRecordList(param, paymentConfirmInfo, splitDataList, orderInfoDetailVO);
|
||||
logger.info("realTimeOrderSplit-订单:{}, 获取计算出来的订单分账记录:{}", orderCode, JSON.toJSONString(generatedOrderSplitRecordList));
|
||||
// 查询数据库中该订单的分账记录
|
||||
List<OrderSplitRecord> splitRecordInfoVOS = orderSplitRecordService.queryOrderSplitRecordByOrderCode(orderCode);
|
||||
logger.info("realTimeOrderSplit-订单:{}, 数据库中的订单分账记录:{}", orderCode, JSON.toJSONString(splitRecordInfoVOS));
|
||||
|
||||
// 对比分账记录
|
||||
List<OrderSplitRecord> queryOrderSplitRecordList = orderSplitRecordService.queryOrderSplitRecordByOrderCode(orderCode);
|
||||
logger.info("realTimeOrderSplit-订单:{}, 数据库中的订单分账记录:{}", orderCode, JSON.toJSONString(queryOrderSplitRecordList));
|
||||
|
||||
// 对比分账记录 判断是否一致 不一致则保存 否则不保存 true-一致 false-不一致
|
||||
boolean bool = orderSplitRecordService.compareOrderSplitRecord(generatedOrderSplitRecordList, queryOrderSplitRecordList);
|
||||
if (!bool) {
|
||||
// 保存orderSplitRecords到数据库
|
||||
orderSplitRecordService.batchInsert(generatedOrderSplitRecordList);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -60,6 +60,9 @@ public class OrderSplitRecordServiceImpl implements OrderSplitRecordService {
|
||||
|
||||
@Override
|
||||
public int batchInsert(List<OrderSplitRecord> list) {
|
||||
if (CollectionUtils.isEmpty(list)) {
|
||||
return 0;
|
||||
}
|
||||
return orderSplitRecordMapper.batchInsert(list);
|
||||
}
|
||||
|
||||
@@ -770,6 +773,24 @@ public class OrderSplitRecordServiceImpl implements OrderSplitRecordService {
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 对比生成的分账记录和查询的分账记录是否一致
|
||||
* @return true:一致; false:不一致
|
||||
*/
|
||||
public boolean compareOrderSplitRecord(List<OrderSplitRecord> generatedOrderSplitRecordList, List<OrderSplitRecord> queryOrderSplitRecordList) {
|
||||
if (generatedOrderSplitRecordList.size() != queryOrderSplitRecordList.size()) {
|
||||
return false;
|
||||
}
|
||||
// generatedOrderSplitRecordList转为map, key为adapayMemberId, value为分账记录
|
||||
Map<String, OrderSplitRecord> generatedMap = generatedOrderSplitRecordList.stream()
|
||||
.collect(Collectors.toMap(OrderSplitRecord::getAdapayMemberId, v -> v));
|
||||
|
||||
// queryOrderSplitRecordList转为map, key为adapayMemberId, value为分账记录
|
||||
Map<String, OrderSplitRecord> queryMap = queryOrderSplitRecordList.stream()
|
||||
.collect(Collectors.toMap(OrderSplitRecord::getAdapayMemberId, v -> v));
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user