|
@@ -11,12 +11,14 @@ import com.qs.mp.admin.service.ITicketBoxService;
|
|
import com.qs.mp.admin.service.ITicketService;
|
|
import com.qs.mp.admin.service.ITicketService;
|
|
import com.qs.mp.channel.domain.ChannelUserRel;
|
|
import com.qs.mp.channel.domain.ChannelUserRel;
|
|
import com.qs.mp.channel.service.IChannelUserRelService;
|
|
import com.qs.mp.channel.service.IChannelUserRelService;
|
|
|
|
+import com.qs.mp.common.enums.MqTopicType;
|
|
import com.qs.mp.common.enums.TicketBoxStatusEnum;
|
|
import com.qs.mp.common.enums.TicketBoxStatusEnum;
|
|
import com.qs.mp.common.enums.TicketStatusEnum;
|
|
import com.qs.mp.common.enums.TicketStatusEnum;
|
|
import com.qs.mp.common.enums.TicketTypeEnum;
|
|
import com.qs.mp.common.enums.TicketTypeEnum;
|
|
import com.qs.mp.common.enums.UserCouponStatusEnum;
|
|
import com.qs.mp.common.enums.UserCouponStatusEnum;
|
|
import com.qs.mp.common.enums.UserTicketOrderStatusEnum;
|
|
import com.qs.mp.common.enums.UserTicketOrderStatusEnum;
|
|
import com.qs.mp.common.exception.ServiceException;
|
|
import com.qs.mp.common.exception.ServiceException;
|
|
|
|
+import com.qs.mp.common.pulsar.PulsarClientService;
|
|
import com.qs.mp.common.utils.LogUtil;
|
|
import com.qs.mp.common.utils.LogUtil;
|
|
import com.qs.mp.common.utils.RSAUtil;
|
|
import com.qs.mp.common.utils.RSAUtil;
|
|
import com.qs.mp.common.utils.StringUtils;
|
|
import com.qs.mp.common.utils.StringUtils;
|
|
@@ -34,6 +36,8 @@ import com.qs.mp.user.service.IUserTicketOrderService;
|
|
import java.util.Arrays;
|
|
import java.util.Arrays;
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
|
+import org.apache.pulsar.client.api.PulsarClient;
|
|
|
|
+import org.apache.pulsar.client.api.PulsarClientException;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
import org.slf4j.LoggerFactory;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -70,6 +74,9 @@ public class UserTicketOrderServiceImpl extends
|
|
@Autowired
|
|
@Autowired
|
|
private ITicketService ticketService;
|
|
private ITicketService ticketService;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private PulsarClientService pulsarClientService;
|
|
|
|
+
|
|
@Autowired
|
|
@Autowired
|
|
private BizIdGenerator bizIdGenerator;
|
|
private BizIdGenerator bizIdGenerator;
|
|
|
|
|
|
@@ -245,6 +252,7 @@ public class UserTicketOrderServiceImpl extends
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
|
+ @Transactional
|
|
public boolean paySuccess(PayOrder payOrder) {
|
|
public boolean paySuccess(PayOrder payOrder) {
|
|
UserTicketOrder ticketOrder = getById(payOrder.getBizId());
|
|
UserTicketOrder ticketOrder = getById(payOrder.getBizId());
|
|
if (null == ticketOrder || ticketOrder.getStatus() != UserTicketOrderStatusEnum.NOT_PAY) {
|
|
if (null == ticketOrder || ticketOrder.getStatus() != UserTicketOrderStatusEnum.NOT_PAY) {
|
|
@@ -279,6 +287,13 @@ public class UserTicketOrderServiceImpl extends
|
|
ticketOrder.setStatus(UserTicketOrderStatusEnum.FINISHED);
|
|
ticketOrder.setStatus(UserTicketOrderStatusEnum.FINISHED);
|
|
boolean updateRst = updateById(ticketOrder);
|
|
boolean updateRst = updateById(ticketOrder);
|
|
Assert.isTrue(updateRst, "支付回调用户购票订单处理,更新订单状态失败,orderId:" + ticketOrder.getOrderId());
|
|
Assert.isTrue(updateRst, "支付回调用户购票订单处理,更新订单状态失败,orderId:" + ticketOrder.getOrderId());
|
|
|
|
+
|
|
|
|
+ try {
|
|
|
|
+ pulsarClientService.producer(MqTopicType.ticket_pay, ticketOrder.getOrderId());
|
|
|
|
+ } catch (PulsarClientException e) {
|
|
|
|
+ LogUtil.error(logger, e, "盲票支付成功,发送异步消息失败. {0}", JSONObject.toJSONString(ticketOrder));
|
|
|
|
+ }
|
|
|
|
+
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|
|
}
|
|
}
|