Commit 49d839d5 by ping.wu

订阅消息修改

parent 13c65a89
package cn.freemud.management.entities.dto.request.order;
import lombok.Data;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: cn.freemud.service.impl.calculate CalculateCenter
* @Description: TDO 描述....
* @author:
* @date:
* @Copyright: www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
public class CalculateCenter {
/**
* { "type": 1, "grayList": "2495", "enable": true }
*/
/**
* 1 增量,2,全量
*/
private Integer type;
/**
* 商户
*/
private String grayList;
/**
* 是否启用
*/
private Boolean enable;
}
package cn.freemud.management.service; package cn.freemud.management.service;
import cn.freemud.management.adapter.MessagePushAdapter; import cn.freemud.management.adapter.MessagePushAdapter;
import cn.freemud.management.entities.dto.request.order.CalculateCenter;
import cn.freemud.management.enums.DeliveryStatus; import cn.freemud.management.enums.DeliveryStatus;
import cn.freemud.management.enums.OperateType; import cn.freemud.management.enums.OperateType;
import cn.freemud.management.enums.OrderSource; import cn.freemud.management.enums.OrderSource;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.base.BaseResponse; import com.freemud.application.sdk.api.base.BaseResponse;
import com.freemud.application.sdk.api.constant.ResponseResultEnum; import com.freemud.application.sdk.api.constant.ResponseResultEnum;
...@@ -25,8 +27,11 @@ import org.apache.commons.lang.ObjectUtils; ...@@ -25,8 +27,11 @@ import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.Arrays;
@Service @Service
public class OrderBaseService { public class OrderBaseService {
...@@ -43,6 +48,9 @@ public class OrderBaseService { ...@@ -43,6 +48,9 @@ public class OrderBaseService {
@Qualifier("messageTemplatePushOrderService") @Qualifier("messageTemplatePushOrderService")
private IMessageTemplatePushService<MessagePushOrderTemplateRequest> messageTemplatePushService; private IMessageTemplatePushService<MessagePushOrderTemplateRequest> messageTemplatePushService;
@Value("${saas.order.message.push}")
private String pushConfig;
public QueryOrdersResponse.DataBean.OrderBean getByOrderCode(String orderCode) { public QueryOrdersResponse.DataBean.OrderBean getByOrderCode(String orderCode) {
BaseQueryOrderRequest queryRequest = new BaseQueryOrderRequest(); BaseQueryOrderRequest queryRequest = new BaseQueryOrderRequest();
queryRequest.setOrderId(orderCode); queryRequest.setOrderId(orderCode);
...@@ -62,6 +70,11 @@ public class OrderBaseService { ...@@ -62,6 +70,11 @@ public class OrderBaseService {
} catch (Exception e) { } catch (Exception e) {
ErrorLog.printErrorLog("sendMessageCenterError", "", pushMessageNoticeDto1, e); ErrorLog.printErrorLog("sendMessageCenterError", "", pushMessageNoticeDto1, e);
} }
//订阅消息改造,走订单回调order-call-back-queue,迁移成功代码删除
if(!grayPush(orderBean.getCompanyId(),orderBean.getShopId(),pushConfig)){
return;
}
//发送微信模板消息 //发送微信模板消息
if (orderBean.getExtInfo() != null && !(OrderSource.SAAS.getSource().equals(orderBean.getSource()) || OrderSource.ALIPAY.getSource().equals(orderBean.getSource()))) { if (orderBean.getExtInfo() != null && !(OrderSource.SAAS.getSource().equals(orderBean.getSource()) || OrderSource.ALIPAY.getSource().equals(orderBean.getSource()))) {
return; return;
...@@ -79,7 +92,6 @@ public class OrderBaseService { ...@@ -79,7 +92,6 @@ public class OrderBaseService {
ErrorLog.printErrorLog("sendTemplateMsgError", "", messageTemplateRequest, e); ErrorLog.printErrorLog("sendTemplateMsgError", "", messageTemplateRequest, e);
} }
} }
/** /**
...@@ -117,4 +129,31 @@ public class OrderBaseService { ...@@ -117,4 +129,31 @@ public class OrderBaseService {
updateDeliveryInfoByIdRequest.setRemark("创建运单成功"); updateDeliveryInfoByIdRequest.setRemark("创建运单成功");
orderCenterSdkService.updateDeliveryInfoById(updateDeliveryInfoByIdRequest); orderCenterSdkService.updateDeliveryInfoById(updateDeliveryInfoByIdRequest);
} }
public boolean grayPush(String partnerId, String storeId,String config) {
if (StringUtils.isBlank(config)) return false;
CalculateCenter center = JSON.parseObject(config, CalculateCenter.class);
Boolean enable = false;
if (!center.getEnable()) return false;
switch (center.getType()) {
case 2:
enable = true;
break;
case 1: {
//商户+门店级别
String real = partnerId.concat(storeId);
if (Arrays.asList(center.getGrayList().split(",")).contains(real)) {
enable = true;
}
//商户级别
else if (Arrays.asList(center.getGrayList().split(",")).contains(partnerId)) {
enable = true;
}
}
}
if (center.getEnable() && enable) {
enable = true;
}
return enable;
}
} }
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