|
@@ -873,7 +873,8 @@ public class HahaCallbackServiceImpl implements HahaCallbackService {
|
|
|
private void updateOrderFromCallback(Order order, String orderId, String activityId,
|
|
private void updateOrderFromCallback(Order order, String orderId, String activityId,
|
|
|
Object orderMoney, String orderDetail,
|
|
Object orderMoney, String orderDetail,
|
|
|
String orderName, String orderGoodsStr) {
|
|
String orderName, String orderGoodsStr) {
|
|
|
- // 不覆盖本地生成的订单号,哈哈的 order_id 仅作为字段记录
|
|
|
|
|
|
|
+ // 不覆盖本地订单号,哈哈 order_id 存入独立字段,用于后续 payStatus 同步
|
|
|
|
|
+ order.setHahaOrderId(orderId);
|
|
|
order.setActivityId(activityId);
|
|
order.setActivityId(activityId);
|
|
|
|
|
|
|
|
if (orderName != null && !orderName.isEmpty()) {
|
|
if (orderName != null && !orderName.isEmpty()) {
|
|
@@ -1498,9 +1499,12 @@ public class HahaCallbackServiceImpl implements HahaCallbackService {
|
|
|
*/
|
|
*/
|
|
|
private void syncPayStatusToHaha(Order order) {
|
|
private void syncPayStatusToHaha(Order order) {
|
|
|
try {
|
|
try {
|
|
|
- if (order.getOrderNo() != null && !order.getOrderNo().isEmpty()) {
|
|
|
|
|
- hahaClient.getOrderApi().setPayStatus(order.getOrderNo());
|
|
|
|
|
- log.info("支付状态已同步到哈哈平台 - orderNo: {}", order.getOrderNo());
|
|
|
|
|
|
|
+ // 优先使用哈哈平台自己的 orderId,没有则用本地 orderNo
|
|
|
|
|
+ String hahaRef = order.getHahaOrderId() != null && !order.getHahaOrderId().isEmpty()
|
|
|
|
|
+ ? order.getHahaOrderId() : order.getOrderNo();
|
|
|
|
|
+ if (hahaRef != null && !hahaRef.isEmpty()) {
|
|
|
|
|
+ hahaClient.getOrderApi().setPayStatus(hahaRef);
|
|
|
|
|
+ log.info("支付状态已同步到哈哈平台 - hahaRef: {}, localOrderNo: {}", hahaRef, order.getOrderNo());
|
|
|
}
|
|
}
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
log.error("同步支付状态到哈哈平台失败 - orderNo: {}", order.getOrderNo(), e);
|
|
log.error("同步支付状态到哈哈平台失败 - orderNo: {}", order.getOrderNo(), e);
|