oying-system/src/main/java/com/oying/modules/hwc/service/impl/CallbackServiceImpl.java
@@ -61,7 +61,7 @@ PayStateEnum stateEnum = PayStateEnum.NOTPAY; if ("0".equals(map.get("pay_result"))) { stateEnum = PayStateEnum.SUCCESS; orderService.paySuccess(order); orderService.operationLog(order); } orderService.updatePayStatus(map.get("out_trade_no"), stateEnum, map.get("pay_info"), map.get("time_end")); // 处理成功 oying-system/src/main/java/com/oying/modules/sh/service/OrderService.java
@@ -47,7 +47,7 @@ OrderResponse getByOrderNum(String orderNum); void paySuccess(OrderResponse order); void operationLog(OrderResponse order); void updatePayStatus(String outTradeNo, PayStateEnum stateEnum, String payInfo, String timeEnd); oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderOperationLogServiceImpl.java
@@ -4,6 +4,8 @@ import com.oying.modules.sh.domain.Order; import com.oying.modules.sh.domain.OrderAddressSnapshot; import com.oying.modules.sh.domain.OrderOperationLog; import com.oying.modules.sh.domain.vo.OrderResponse; import com.oying.modules.sh.mapper.OrderMapper; import com.oying.utils.*; import com.oying.utils.enums.OrderStatusEnum; import lombok.RequiredArgsConstructor; @@ -33,6 +35,7 @@ public class OrderOperationLogServiceImpl extends ServiceImpl<OrderOperationLogMapper, OrderOperationLog> implements OrderOperationLogService { private final OrderOperationLogMapper orderOperationLogMapper; private final OrderMapper orderMapper; @Override public PageResult<OrderOperationLog> queryAll(OrderOperationLogQueryCriteria criteria, Page<Object> page) { @@ -58,9 +61,9 @@ @Override @Transactional(rollbackFor = Exception.class) public void create(Order order, OrderAddressSnapshot addressSnapshot) { Map<String, Object> map = new LinkedHashMap<>(); map.put("order", order); map.put("address", addressSnapshot); OrderResponse response = new OrderResponse(); response.setOrder(order); response.setAddress(addressSnapshot); String username = SecurityUtils.getCurrentUsername(); Timestamp time = new Timestamp(System.currentTimeMillis()); OrderOperationLog resources = new OrderOperationLog(); @@ -70,7 +73,7 @@ resources.setOperation(OrderStatusEnum.ZERO.getKey()); resources.setOperationDescribe(OrderStatusEnum.ZERO.getValue()); resources.setRemark(username + ":" + time + ">" + OrderStatusEnum.ZERO.getValue() + ":" + order.getOrderNum()); resources.setSnapshotData(JSON.toJSONString(map)); resources.setSnapshotData(JSON.toJSONString(response)); resources.setOperationTime(time); } oying-system/src/main/java/com/oying/modules/sh/service/impl/OrderServiceImpl.java
@@ -245,7 +245,7 @@ @Override @Transactional(rollbackFor = Exception.class) public void paySuccess(OrderResponse order) { public void operationLog(OrderResponse order) { orderMapper.updateOrderStatus(order.getOrder().getOrderNum(), OrderStatusEnum.TWO.getKey(), OrderStatusEnum.TWO.getValue()); } @@ -262,16 +262,16 @@ if (order == null) { throw new BadRequestException("订单不存在"); } if (!order.getPayState().equals(PayStateEnum.NOTPAY.getKey())) { throw new BadRequestException(PayStateEnum.getValue(order.getPayState())); } PayTypeEnum anEnum = PayTypeEnum.find(order.getPayType()); switch (anEnum) { case HWC: case HWC2: JSONObject object = swiftPassService.query(orderNum, anEnum); if (object.getString("trade_state").equals(PayStateEnum.SUCCESS.getKey())) { throw new BadRequestException("订单已支付"); } if (object.getString("trade_state").equals(PayStateEnum.CLOSED.getKey())) { throw new BadRequestException("订单已关闭"); if (object.getString("trade_state").equals(PayStateEnum.NOTPAY.getKey())) { throw new BadRequestException(PayStateEnum.getValue(order.getPayState())); } swiftPassService.closeOrder(orderNum, anEnum); break;