...
|
...
|
@@ -3,6 +3,7 @@ package com.yohoufo.order.mq.consumer; |
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.yoho.core.rabbitmq.YhConsumer;
|
|
|
import com.yoho.error.exception.ServiceException;
|
|
|
import com.yohoufo.order.config.UfoBuyerOrderConfigReader;
|
|
|
import com.yohoufo.order.event.BuyerConfirmEvent;
|
|
|
import com.yohoufo.order.model.request.OrderRequest;
|
|
|
import com.yohoufo.order.mq.TopicConstants;
|
...
|
...
|
@@ -16,13 +17,16 @@ import org.springframework.stereotype.Component; |
|
|
* Created by chenchao on 2018/9/30.
|
|
|
*/
|
|
|
@Component
|
|
|
public class BuyerOrderConfirmDelayMsgConsumer implements YhConsumer {
|
|
|
public class BuyerOrderConfirmDelayMsgConsumer extends JsonObjectMessageConsumer<BuyerConfirmEvent> {
|
|
|
|
|
|
final Logger logger = LoggerUtils.getMqConsumerLogger();
|
|
|
|
|
|
@Autowired
|
|
|
IBuyerOrderService buyerOrderService;
|
|
|
|
|
|
@Autowired
|
|
|
UfoBuyerOrderConfigReader ufoBuyerOrderConfigReader;
|
|
|
|
|
|
public String getMessageTopic() {
|
|
|
|
|
|
return TopicConstants.BUYER_ORDER_AUTO_CONFIRM;
|
...
|
...
|
@@ -30,23 +34,19 @@ public class BuyerOrderConfirmDelayMsgConsumer implements YhConsumer { |
|
|
|
|
|
|
|
|
@Override
|
|
|
public void handleMessage(Object o) throws Exception {
|
|
|
logger.info("topic {}, msg {} ", getMessageTopic(), o);
|
|
|
|
|
|
BuyerConfirmEvent buyerConfirmEvent = JSONObject.parseObject(o.toString(), BuyerConfirmEvent.class);
|
|
|
Integer buyerUid = buyerConfirmEvent.getUid();
|
|
|
Long orderCode = buyerConfirmEvent.getOrderCode();
|
|
|
public String getTopic() {
|
|
|
return TopicConstants.BUYER_ORDER_AUTO_CONFIRM;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public void handle(BuyerConfirmEvent message) {
|
|
|
Integer buyerUid = message.getUid();
|
|
|
Long orderCode = message.getOrderCode();
|
|
|
OrderRequest req = OrderRequest.builder().uid(buyerUid).orderCode(orderCode).build();
|
|
|
try {
|
|
|
if (ufoBuyerOrderConfigReader.autoConfirm()) {
|
|
|
buyerOrderService.confirm(req);
|
|
|
logger.info("topic {}, msg {} finish", getMessageTopic(), o);
|
|
|
} catch (ServiceException e) {
|
|
|
logger.info("topic {}, msg {} service exception {}", getMessageTopic(), o, e.getMessage());
|
|
|
} catch (Exception e) {
|
|
|
logger.info("topic {}, msg {} exception", getMessageTopic(), o, e);
|
|
|
throw e;
|
|
|
} else {
|
|
|
logger.info("{}, auto confirm is non open", orderCode);
|
|
|
}
|
|
|
|
|
|
}
|
|
|
} |
...
|
...
|
|