Commit 7a87ca18 by zhiheng.zhang

Merge remote-tracking branch 'origin/master'

parents 004e0d7f 41ef2235
...@@ -35,6 +35,11 @@ public class OrderCallBackConfig { ...@@ -35,6 +35,11 @@ public class OrderCallBackConfig {
public static final String INVOICE_QUEUE = "invoice-report-queue"; public static final String INVOICE_QUEUE = "invoice-report-queue";
public static final String INVOICE_ROUTE_KEY = "invoice-report-queue-routing-key"; public static final String INVOICE_ROUTE_KEY = "invoice-report-queue-routing-key";
// 腾讯有数上报 & 门店营业开店记录 发送到 ordercenter-order组的 mq中
public static final String SEND_YOUSHU_REPORT_QUEUE_ROUTING_KEY="send-youshu-report-queue-routing-key";
public static final String SEND_YOUSHU_REPORT_QUEUE="send-youshu-report-queue";
/** /**
* 定义基于Fanout 的Exchange。 * 定义基于Fanout 的Exchange。
* 基于这个代码,也可以非常方便的定义其他的Exchange类型。 * 基于这个代码,也可以非常方便的定义其他的Exchange类型。
...@@ -114,4 +119,18 @@ public class OrderCallBackConfig { ...@@ -114,4 +119,18 @@ public class OrderCallBackConfig {
Binding bindingInvoiceQueue(@Qualifier("invoiceQueue") Queue invoiceQueue,@Qualifier("invoiceExchange") Exchange invoiceExchange) { Binding bindingInvoiceQueue(@Qualifier("invoiceQueue") Queue invoiceQueue,@Qualifier("invoiceExchange") Exchange invoiceExchange) {
return BindingBuilder.bind(invoiceQueue).to(invoiceExchange).with(INVOICE_ROUTE_KEY).noargs(); return BindingBuilder.bind(invoiceQueue).to(invoiceExchange).with(INVOICE_ROUTE_KEY).noargs();
} }
/**
* 有数上报/ 支付门店 queue 绑定
* @return
*/
@Bean(name = "sendWechatReportQueue")
public Queue sendWechatReportQueue() {
return QueueBuilder.durable(SEND_YOUSHU_REPORT_QUEUE).build();
}
@Bean
Binding bindingSendWechatReportQueue(@Qualifier("sendWechatReportQueue") Queue sendWechatReportQueue, @Qualifier("topicExchange") Exchange topicExchange) {
return BindingBuilder.bind(sendWechatReportQueue).to(topicExchange).with(SEND_YOUSHU_REPORT_QUEUE_ROUTING_KEY).noargs();
}
} }
...@@ -96,6 +96,8 @@ public class OrderCallBackMQService { ...@@ -96,6 +96,8 @@ public class OrderCallBackMQService {
}else{ }else{
revert(body); revert(body);
} }
// 有数订单数据上报 & 每日下单门店统计
sendYoushuReportMQ(body);
} }
/** /**
...@@ -336,4 +338,26 @@ public class OrderCallBackMQService { ...@@ -336,4 +338,26 @@ public class OrderCallBackMQService {
return false; return false;
} }
/**
* 有数上报MQ
* @param body
*/
private void sendYoushuReportMQ(OrderCallBackRequestVo body) {
try {
if (Objects.isNull(body) || StringUtils.isEmpty(body.getContent())) {
return;
}
logger.info("send youshu report MQ orderCode:{} body:{} ", body.getOrderCode(), body);
// 正常变化 订单正向操作 fisherman 检查下
if (body.getOperateType() == 1 && "1".equals(body.getMsgType())) {
Header header = new Header(MQAction.UPDATE.getAction(), "call-back-service-api",
OrderCallBackConfig.SEND_YOUSHU_REPORT_QUEUE_ROUTING_KEY, OrderCallBackConfig.SEND_YOUSHU_REPORT_QUEUE);
MQMessage<OrderCallBackRequestVo> message = new MQMessage<>(header, body);
mqService.convertAndSend(OrderCallBackConfig.TOPIC_EXCHANGE_NAME, OrderCallBackConfig.SEND_YOUSHU_REPORT_QUEUE_ROUTING_KEY, message);
}
}catch (Exception e){
logger.info("send youshu report MQ ERROR :{}", JSON.toJSONString(e));
}
}
} }
...@@ -15,6 +15,7 @@ import org.springframework.util.CollectionUtils; ...@@ -15,6 +15,7 @@ import org.springframework.util.CollectionUtils;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import java.util.concurrent.TimeUnit;
/** /**
* @author : xh.Z * @author : xh.Z
...@@ -38,7 +39,8 @@ public class OrderReportJobHandler { ...@@ -38,7 +39,8 @@ public class OrderReportJobHandler {
public void sendYesterDayStoreMsg() { public void sendYesterDayStoreMsg() {
String date = getYesterdayString(pattern_yyyy_MM_dd); String date = getYesterdayString(pattern_yyyy_MM_dd);
BoundHashOperations<String, String, Set<String>> boundHashOperations = redisCache.getRedisTemplate().boundHashOps(RedisKeyConstant.KGD_NO_ORDER_STORE_DATE + date); String key = RedisKeyConstant.KGD_NO_ORDER_STORE_DATE + date;
BoundHashOperations<String, String, Set<String>> boundHashOperations = redisCache.getRedisTemplate().boundHashOps(key);
Map<String, Set<String>> entries = boundHashOperations.entries(); Map<String, Set<String>> entries = boundHashOperations.entries();
LogUtil.info("下单门店记录推送 entries", entries, null); LogUtil.info("下单门店记录推送 entries", entries, null);
if (!CollectionUtils.isEmpty(entries)) { if (!CollectionUtils.isEmpty(entries)) {
...@@ -55,7 +57,8 @@ public class OrderReportJobHandler { ...@@ -55,7 +57,8 @@ public class OrderReportJobHandler {
.build(); .build();
BaseResponse baseResponse = storeBackstageClient.pushOrderStore(pushOrderStoreDto); BaseResponse baseResponse = storeBackstageClient.pushOrderStore(pushOrderStoreDto);
LogUtil.info("上报门店支付情况", JSON.toJSONString(pushOrderStoreDto), JSON.toJSONString(baseResponse)); LogUtil.info("上报门店支付情况", JSON.toJSONString(pushOrderStoreDto), JSON.toJSONString(baseResponse));
// fisherman 数据推送之后的 redis 缓存数据 是否清理 暂时没需求 // 数据推送之后的 redis 缓存数据 清理
redisCache.updateTTL(key, 1, TimeUnit.DAYS);
} catch (Exception e) { } catch (Exception e) {
LogUtil.error("上报门店支付情况 error", null, JSON.toJSONString(e)); LogUtil.error("上报门店支付情况 error", null, JSON.toJSONString(e));
} }
......
...@@ -166,19 +166,19 @@ public class SpellGroupOrderServiceImpl implements SpellGroupOrderService { ...@@ -166,19 +166,19 @@ public class SpellGroupOrderServiceImpl implements SpellGroupOrderService {
} }
createSpellGroupOrderDto.setCalculationDiscount(activityCalculationDiscountResponseDto.getResult()); createSpellGroupOrderDto.setCalculationDiscount(activityCalculationDiscountResponseDto.getResult());
/*转换request->查询快递费用信息->转换dto*/ /*转换request->查询快递费用信息->转换dto*/
QueryDeliveryTemplateRequest queryDeliveryTemplateRequest = spellGroupOrderAdapter.convertToQueryDeliveryTemplateRequest(createSpellGroupOrderDto); // QueryDeliveryTemplateRequest queryDeliveryTemplateRequest = spellGroupOrderAdapter.convertToQueryDeliveryTemplateRequest(createSpellGroupOrderDto);
QueryDeliveryTemplateResponse queryDeliveryTemplateResponse = spellGroupOrderDataManager.queryDeliveryTemplate(queryDeliveryTemplateRequest); // QueryDeliveryTemplateResponse queryDeliveryTemplateResponse = spellGroupOrderDataManager.queryDeliveryTemplate(queryDeliveryTemplateRequest);
if(queryDeliveryTemplateResponse == null ){ // if(queryDeliveryTemplateResponse == null ){
return ResponseUtil.error(ResponseResult.SPELL_GROUP_QUERY_DELIVERYTEMPLATE_ERROR); // return ResponseUtil.error(ResponseResult.SPELL_GROUP_QUERY_DELIVERYTEMPLATE_ERROR);
} // }
createSpellGroupOrderDto.setDeliveryTemplateInfo(queryDeliveryTemplateResponse.getData()); // createSpellGroupOrderDto.setDeliveryTemplateInfo(queryDeliveryTemplateResponse.getData());
QueryDeliveryTemplateResponse.DeliveryTemplateInfoVo deliveryTemplateInfoVo = new QueryDeliveryTemplateResponse.DeliveryTemplateInfoVo();
deliveryTemplateInfoVo.setFreight(1L);
deliveryTemplateInfoVo.setIsDispatchFree(false);
createSpellGroupOrderDto.setDeliveryTemplateInfo(deliveryTemplateInfoVo);
// QueryDeliveryTemplateResponse.DeliveryTemplateInfoVo deliveryTemplateInfoVo = new QueryDeliveryTemplateResponse.DeliveryTemplateInfoVo();
// deliveryTemplateInfoVo.setFreight(1L);
// deliveryTemplateInfoVo.setIsDispatchFree(false);
// createSpellGroupOrderDto.setDeliveryTemplateInfo(deliveryTemplateInfoVo);
// createSpellGroupOrderDto.setDeliveryTemplateInfo(deliveryTemplateInfoVo);
/*createSpellGroupOrderDto转换为订单Request信息*/ /*createSpellGroupOrderDto转换为订单Request信息*/
com.freemud.application.sdk.api.ordercenter.request.create.CreateOrderRequest createOrderRequest = spellGroupOrderAdapter.convertToCreateOrderRequest(createSpellGroupOrderDto, userLoginInfoDto); com.freemud.application.sdk.api.ordercenter.request.create.CreateOrderRequest createOrderRequest = spellGroupOrderAdapter.convertToCreateOrderRequest(createSpellGroupOrderDto, userLoginInfoDto);
com.freemud.application.sdk.api.ordercenter.response.BaseResponse<OrderInfoReqs> response = orderSdkService.createOrder(createOrderRequest, trackingNo); com.freemud.application.sdk.api.ordercenter.response.BaseResponse<OrderInfoReqs> response = orderSdkService.createOrder(createOrderRequest, trackingNo);
...@@ -203,17 +203,17 @@ public class SpellGroupOrderServiceImpl implements SpellGroupOrderService { ...@@ -203,17 +203,17 @@ public class SpellGroupOrderServiceImpl implements SpellGroupOrderService {
*/ */
@Override @Override
public BaseResponse queryDeliveryAmount(QueryDeliveryTemplateRequest request) { public BaseResponse queryDeliveryAmount(QueryDeliveryTemplateRequest request) {
QueryDeliveryTemplateResponse queryDeliveryTemplateResponse = spellGroupOrderDataManager.queryDeliveryTemplate(request); // QueryDeliveryTemplateResponse queryDeliveryTemplateResponse = spellGroupOrderDataManager.queryDeliveryTemplate(request);
if(queryDeliveryTemplateResponse == null){ // if(queryDeliveryTemplateResponse == null){
return ResponseUtil.error(ResponseResult.SPELL_GROUP_QUERY_DELIVERYTEMPLATE_ERROR); // return ResponseUtil.error(ResponseResult.SPELL_GROUP_QUERY_DELIVERYTEMPLATE_ERROR);
} // }
QueryDeliveryTemplateResponse.DeliveryTemplateInfoVo deliveryTemplateInfoVo = queryDeliveryTemplateResponse.getData(); // QueryDeliveryTemplateResponse.DeliveryTemplateInfoVo deliveryTemplateInfoVo = queryDeliveryTemplateResponse.getData();
if(deliveryTemplateInfoVo.getIsDispatchFree() == true){ // if(deliveryTemplateInfoVo.getIsDispatchFree() == true){
deliveryTemplateInfoVo.setFreight((long) 0); // deliveryTemplateInfoVo.setFreight((long) 0);
} // }
// QueryDeliveryTemplateResponse.DeliveryTemplateInfoVo deliveryTemplateInfoVo = new QueryDeliveryTemplateResponse.DeliveryTemplateInfoVo(); QueryDeliveryTemplateResponse.DeliveryTemplateInfoVo deliveryTemplateInfoVo = new QueryDeliveryTemplateResponse.DeliveryTemplateInfoVo();
// deliveryTemplateInfoVo.setFreight(1L); deliveryTemplateInfoVo.setFreight(1L);
// deliveryTemplateInfoVo.setIsDispatchFree(false); deliveryTemplateInfoVo.setIsDispatchFree(false);
return ResponseUtil.success(deliveryTemplateInfoVo); return ResponseUtil.success(deliveryTemplateInfoVo);
} }
......
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