Commit ba555eef by ping.wu

支付查询mq迁移,去掉分发器sdk

parent 53cea7d7
......@@ -23,17 +23,17 @@
<artifactId>xxl-job-core</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>com.freemud.sdk.api.assortment</groupId>
<artifactId>assortment-orderdistributor-sdk</artifactId>
<version>3.5.6.RELEASE</version>
<exclusions>
<exclusion>
<groupId>cn.freemud</groupId>
<artifactId>ordercenter-sdk</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- <dependency>-->
<!-- <groupId>com.freemud.sdk.api.assortment</groupId>-->
<!-- <artifactId>assortment-orderdistributor-sdk</artifactId>-->
<!-- <version>3.5.6.RELEASE</version>-->
<!-- <exclusions>-->
<!-- <exclusion>-->
<!-- <groupId>cn.freemud</groupId>-->
<!-- <artifactId>ordercenter-sdk</artifactId>-->
<!-- </exclusion>-->
<!-- </exclusions>-->
<!-- </dependency>-->
<dependency>
<groupId>com.freemud.application.service.sdk</groupId>
......
package cn.freemud.amp.config;
import com.freemud.application.sdk.api.config.TopicExchangeConfig;
import org.springframework.amqp.core.*;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.Map;
@Component
public class DlPaymentMqConfig {
public static final String OPEN_STORE_PAYMENT_QUERY_DL_QUEUE = "open_store_payment_query_dl_queue";
public static final String OPEN_STORE_PAYMENT_QUERY_DL_KEY = "open_store_payment_query_dl_key";
public static final String OPEN_STORE_PAYMENT_QUERY_QUEUE = "open_store_payment_query_queue";
public static final String OPEN_STORE_PAYMENT_QUERY_KEY = "open_store_payment_query_key";
/**
* 写入RabbitMQ使用的默认队列
*
* @return
*/
@Bean("paymentQueueName")
public Queue paymentChangeQueue() {
return QueueBuilder.durable(OPEN_STORE_PAYMENT_QUERY_QUEUE).build();
}
/**
* 绑定消息队列
*
* @param queue 消息队列
* @param topicExchange RabbitMQ Fanout Exchange
* @return 消息队列绑定
*/
@Bean("bindingPaymentQueueChange")
Binding bindingPaymentChange(@Qualifier("paymentQueueName") Queue queue, @Qualifier("orderPushTopicExchange") Exchange topicExchange) {
return BindingBuilder.bind(queue).to(topicExchange).with(OPEN_STORE_PAYMENT_QUERY_KEY).noargs();
}
@Bean("paymentChangeDlQueue")
public Queue paymentChangeDlQueue() {
Map<String, Object> delayQueueParams = new HashMap<>(2);
// DLX,dead letter发送到的exchange
delayQueueParams.put("x-dead-letter-exchange", TopicExchangeConfig.EXCHANGE_NAME);
// dead letter携带的routing key
delayQueueParams.put("x-dead-letter-routing-key", OPEN_STORE_PAYMENT_QUERY_KEY);
//时间
//delayQueueParams.put("x-message-ttl", 20*1000);
return QueueBuilder.durable(OPEN_STORE_PAYMENT_QUERY_DL_QUEUE).withArguments(delayQueueParams).build();
}
@Bean("bindingPaymentDlChange")
Binding bindingPaymentDlChange(@Qualifier("paymentChangeDlQueue") Queue queue, @Qualifier("orderPushTopicExchange") Exchange topicExchange) {
Map<String, Object> args = new HashMap<>(2);
args.put("x-dead-letter-exchange", TopicExchangeConfig.EXCHANGE_NAME);
args.put("x-dead-letter-routing-key", OPEN_STORE_PAYMENT_QUERY_KEY);
return BindingBuilder.bind(queue).to(topicExchange).with(OPEN_STORE_PAYMENT_QUERY_DL_KEY).and(args);
}
}
package cn.freemud.entities.dto.pay;
import lombok.Data;
@Data
public class PaymentMqMessageDto {
/**
* ( 非码交易流水号 fmID)
*/
private String fmId;
/**
* 订单号
*/
private String orderId;
/**
* 商户号
*/
private String partnerId;
/**
* 门店号
*/
private String storeId;
private String trackingNo;
/**
* 支付渠道
*/
private Integer payChannelType;
}
package cn.freemud.service;
import com.freemud.sdk.api.assortment.orderdistributor.request.DisRequest;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Title: ${FILE_NAME}
* @Package com.freemud.mail.core
* @Description: $MQ分发器服务接口
* @author: aiqi.gong
* @date: 2019/3/21 18:37
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
public interface OrderDistributeMQService {
/**
* 消息分发
* @param disRequest 消息体
*/
void messageDistribute(DisRequest disRequest);
}
//package cn.freemud.service;
//
//
//import com.freemud.sdk.api.assortment.orderdistributor.request.DisRequest;
//
///**
// * All rights Reserved, Designed By www.freemud.cn
// *
// * @version V1.0
// * @Title: ${FILE_NAME}
// * @Package com.freemud.mail.core
// * @Description: $MQ分发器服务接口
// * @author: aiqi.gong
// * @date: 2019/3/21 18:37
// * @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
// * 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
// */
//public interface OrderDistributeMQService {
//
// /**
// * 消息分发
// * @param disRequest 消息体
// */
// void messageDistribute(DisRequest disRequest);
//
//}
......@@ -30,6 +30,7 @@ import cn.freemud.entities.dto.QueryOrdersResponseDto.DataBean.OrderBean;
import cn.freemud.entities.dto.delivery.*;
import cn.freemud.entities.dto.order.CreateOrderOperateDto;
import cn.freemud.entities.dto.order.CreatePrepayRequestDto;
import cn.freemud.entities.dto.pay.PaymentMqMessageDto;
import cn.freemud.entities.dto.product.AttributeValue;
import cn.freemud.entities.dto.product.GroupDetail;
import cn.freemud.entities.dto.product.ProductAttributeGroup;
......@@ -104,8 +105,6 @@ import cn.freemud.service.mccafe.CouponClientService;
import cn.freemud.service.mccafe.MCCafeOrderCenterSdkService;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService;
import com.freemud.sdk.api.assortment.order.vo.ProductGroupVo;
import com.freemud.sdk.api.assortment.orderdistributor.entity.dto.PaymentMqMessageDto;
import com.freemud.sdk.api.assortment.orderdistributor.service.PaymentQueueService;
import com.freemud.sdk.api.assortment.payment.request.UnifiedOrderRequest;
import com.freemud.sdk.api.assortment.payment.response.OrderRefundResponse;
import com.freemud.sdk.api.assortment.payment.response.UnifiedOrderResponse;
......
......@@ -16,6 +16,7 @@ import cn.freemud.entities.dto.*;
import cn.freemud.entities.dto.PayAccessResponse;
import cn.freemud.entities.dto.ecology.VirtualBindStoreResponse;
import cn.freemud.entities.dto.ecology.VirtualStoreRequest;
import cn.freemud.entities.dto.pay.PaymentMqMessageDto;
import cn.freemud.entities.dto.product.AttributeValue;
import cn.freemud.entities.dto.product.GroupDetail;
import cn.freemud.entities.dto.product.ProductAttributeGroup;
......@@ -72,8 +73,6 @@ import com.freemud.sdk.api.assortment.order.response.order.*;
import com.freemud.sdk.api.assortment.order.response.payment.OrderPayResponse;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService;
import com.freemud.sdk.api.assortment.order.vo.ProductGroupVo;
import com.freemud.sdk.api.assortment.orderdistributor.entity.dto.PaymentMqMessageDto;
import com.freemud.sdk.api.assortment.orderdistributor.service.PaymentQueueService;
import com.freemud.sdk.api.assortment.payment.request.UnifiedOrderRequest;
import com.freemud.sdk.api.assortment.payment.response.OrderRefundResponse;
import com.freemud.sdk.api.assortment.payment.response.UnifiedOrderResponse;
......
......@@ -31,35 +31,21 @@ import cn.freemud.entities.dto.activity.PayGiftCheckAndJoinResponseObj;
import cn.freemud.entities.dto.activity.PayGitCheckAndJoinRequestDto;
import cn.freemud.entities.dto.delivery.*;
import cn.freemud.entities.dto.ecology.SendMessageRequest;
import cn.freemud.entities.dto.ecology.SendMessageResponse;
import cn.freemud.entities.dto.ecology.SubscribeMessageRequest;
import cn.freemud.entities.dto.ecology.SendMessageRequest;
import cn.freemud.entities.dto.order.CreateOrderOperateDto;
import cn.freemud.entities.dto.order.CreatePrepayRequestDto;
import cn.freemud.entities.dto.order.FacePayRequestDto;
import cn.freemud.entities.dto.order.FacePayResponseDto;
import cn.freemud.entities.dto.pay.CombPayResponse;
import cn.freemud.entities.dto.pay.MultiPaymentRespDto;
import cn.freemud.entities.dto.pay.MultiQueryRequest;
import cn.freemud.entities.dto.pay.MultiQueryRespDto;
import cn.freemud.entities.dto.promotion.*;
import cn.freemud.entities.dto.pay.*;
import cn.freemud.entities.dto.product.AttributeValue;
import cn.freemud.entities.dto.product.GroupDetail;
import cn.freemud.entities.dto.product.ProductAttributeGroup;
import cn.freemud.entities.dto.product.ProductGroup;
import cn.freemud.entities.dto.promotion.QueryHistoryGroupVO;
import cn.freemud.entities.dto.shoppingCart.CollageOrderDto;
import cn.freemud.entities.dto.shoppingCart.NewShoppingCartClearDto;
import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto;
import cn.freemud.entities.vo.*;
import cn.freemud.enums.*;
import cn.freemud.enums.AfterSalesOrderCreateEventEnum;
import cn.freemud.enums.OrderChannelType;
import cn.freemud.enums.PayRefundStatus;
import cn.freemud.enums.PayStatus;
import cn.freemud.enums.QueryOrderStatus;
import cn.freemud.enums.RefundStatus;
import cn.freemud.enums.ResponseResult;
import cn.freemud.enums.OrderType;
import cn.freemud.interceptor.ServiceException;
import cn.freemud.management.entities.dto.request.BatchOrderRefundV2Request;
import cn.freemud.management.entities.dto.response.activity.GroupWorkRefundResponse;
......@@ -92,10 +78,6 @@ import com.freemud.api.assortment.datamanager.meal.MealCacheManager;
import com.freemud.application.sdk.api.constant.ResponseConstant;
import com.freemud.application.sdk.api.constant.ResponseResultEnum;
import com.freemud.application.sdk.api.couponcenter.offline.service.OfflineCouponSdkService;
//import com.freemud.application.sdk.api.deliverycenter.service.DeliveryService;
//import com.freemud.application.sdk.api.deliverycenter.response.DeliveryInfoDto;
//import com.freemud.application.sdk.api.deliverycenter.response.DeliveryResponseDto;
//import com.freemud.application.sdk.api.deliverycenter.service.DeliveryService;
import com.freemud.application.sdk.api.log.ApiLog;
import com.freemud.application.sdk.api.log.ErrorLog;
import com.freemud.application.sdk.api.log.LogThreadLocal;
......@@ -103,11 +85,7 @@ import com.freemud.application.sdk.api.ordercenter.entities.PayItem;
import com.freemud.application.sdk.api.ordercenter.enums.AfterSalesType;
import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType;
import com.freemud.application.sdk.api.ordercenter.enums.PayChannelType;
import com.freemud.application.sdk.api.ordercenter.enums.*;
import com.freemud.application.sdk.api.ordercenter.request.OrderConditionsReq;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtendedReq;
import com.freemud.application.sdk.api.ordercenter.request.SdkUpdateAbnormalState;
import com.freemud.application.sdk.api.ordercenter.enums.RefundModeEnum;
import com.freemud.application.sdk.api.ordercenter.request.*;
import com.freemud.application.sdk.api.ordercenter.request.carpark.ParkingOrderCreateReq;
import com.freemud.application.sdk.api.ordercenter.response.BaseDownLoadResponse;
......@@ -149,8 +127,6 @@ import com.freemud.sdk.api.assortment.order.response.order.*;
import com.freemud.sdk.api.assortment.order.response.payment.OrderPayResponse;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService;
import com.freemud.sdk.api.assortment.order.vo.ProductGroupVo;
import com.freemud.sdk.api.assortment.orderdistributor.entity.dto.PaymentMqMessageDto;
import com.freemud.sdk.api.assortment.orderdistributor.service.PaymentQueueService;
import com.freemud.sdk.api.assortment.payment.request.UnifiedOrderRequest;
import com.freemud.sdk.api.assortment.payment.response.OrderRefundResponse;
import com.freemud.sdk.api.assortment.payment.response.UnifiedOrderResponse;
......@@ -181,6 +157,7 @@ import java.util.function.Function;
import java.util.stream.Collectors;
import static cn.freemud.constant.OrderRefundConstant.ALLOW_REFUND;
@Slf4j
@Service
public class OrderServiceImpl implements Orderservice {
......
package cn.freemud.service.impl;
import cn.freemud.amp.config.DlPaymentMqConfig;
import cn.freemud.amqp.Header;
import cn.freemud.amqp.MQMessage;
import cn.freemud.entities.dto.pay.PaymentMqMessageDto;
import com.alibaba.fastjson.JSON;
import com.freemud.application.sdk.api.config.TopicExchangeConfig;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.core.MessageProperties;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Component
public class PaymentQueueService {
@Autowired
private RabbitTemplate restTemplate;
public void paymentCallback(PaymentMqMessageDto dto){
MQMessage<PaymentMqMessageDto> mqMessage = new MQMessage<PaymentMqMessageDto>();
mqMessage.setBody(dto);
Integer ttl = 20 * 1000;
Header header=new Header();
header.setKey("1");
mqMessage.setHeader(header);
byte[] notifyMsgBytes = JSON.toJSONString(mqMessage).getBytes();
MessageProperties messageProperties = new MessageProperties();
messageProperties.setExpiration(ttl.toString());
messageProperties.setContentType(MessageProperties.CONTENT_TYPE_JSON);
Message delmessage = new Message(notifyMsgBytes, messageProperties);
// logger.info("restTemplate.convertAndSend:"+dto);
restTemplate.convertAndSend(TopicExchangeConfig.EXCHANGE_NAME, DlPaymentMqConfig.OPEN_STORE_PAYMENT_QUERY_DL_KEY, delmessage);
}
}
......@@ -15,6 +15,7 @@ import cn.freemud.entities.dto.SvcComPayResponseDto;
import cn.freemud.entities.dto.order.CreateOrderOperateDto;
import cn.freemud.entities.dto.order.CreatePrepayRequestDto;
import cn.freemud.entities.dto.pay.CombPayResponse;
import cn.freemud.entities.dto.pay.PaymentMqMessageDto;
import cn.freemud.entities.dto.shoppingCart.ActivityDiscountsDto;
import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto;
import cn.freemud.entities.vo.*;
......@@ -23,6 +24,7 @@ import cn.freemud.interceptor.ServiceException;
import cn.freemud.redis.RedisCache;
import cn.freemud.service.CheckOrderUniversal;
import cn.freemud.service.OrderAdapterService;
import cn.freemud.service.impl.PaymentQueueService;
import cn.freemud.service.thirdparty.ComPayClient;
import cn.freemud.service.thirdparty.SvcComPayClient;
import cn.freemud.service.universal.factory.CreateOrderServiceFactory;
......@@ -83,8 +85,6 @@ import com.freemud.sdk.api.assortment.order.response.order.CreateOrderResponse;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse;
import com.freemud.sdk.api.assortment.order.response.payment.OrderPayResponse;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService;
import com.freemud.sdk.api.assortment.orderdistributor.entity.dto.PaymentMqMessageDto;
import com.freemud.sdk.api.assortment.orderdistributor.service.PaymentQueueService;
import com.freemud.sdk.api.assortment.payment.request.UnifiedOrderRequest;
import com.freemud.sdk.api.assortment.payment.response.UnifiedOrderResponse;
import com.freemud.sdk.api.assortment.payment.service.StandardPaymentService;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment