Commit a94253f0 by 周晓航

Merge branch 'KA-华莱士抽奖跳转百世新增接口' into qa

parents 4e27db46 8fed97e7
...@@ -180,7 +180,7 @@ public class OrderAdapterServiceImpl { ...@@ -180,7 +180,7 @@ public class OrderAdapterServiceImpl {
@Autowired @Autowired
private SvcTransactionClient svcTransactionClient; private SvcTransactionClient svcTransactionClient;
@Autowired @Autowired
private EcologyProgramApplicationClient ecologyProgramApplicationClient; private EcologyProgramApplicationClient ecologyProgramApplicationClient;
@Autowired @Autowired
private EmailAlertService emailAlertService; private EmailAlertService emailAlertService;
@Autowired @Autowired
...@@ -359,7 +359,7 @@ public class OrderAdapterServiceImpl { ...@@ -359,7 +359,7 @@ public class OrderAdapterServiceImpl {
request.setReason("处理订单已关闭,支付未及时回调"); request.setReason("处理订单已关闭,支付未及时回调");
request.setOperator("order-application-service"); request.setOperator("order-application-service");
// 直接退款就行, 其他的资产已经被退回 // 直接退款就行, 其他的资产已经被退回
paymentHandle.getCommonPayRefundResponse(request,orderBean); paymentHandle.getCommonPayRefundResponse(request, orderBean);
return orderAdapter.sendPaySuccessNoticeMessage(); return orderAdapter.sendPaySuccessNoticeMessage();
} }
// 支付成功处理 // 支付成功处理
...@@ -420,7 +420,7 @@ public class OrderAdapterServiceImpl { ...@@ -420,7 +420,7 @@ public class OrderAdapterServiceImpl {
sendSvcPayInfoToSvcTransaction(message.getSvcPayItems(), orderBean.getCompanyId(), orderBean.getOid(), orderBean.getUserId(), orderBean.getShopId()); sendSvcPayInfoToSvcTransaction(message.getSvcPayItems(), orderBean.getCompanyId(), orderBean.getOid(), orderBean.getUserId(), orderBean.getShopId());
} }
//爱马哥低碳活动 活动结束即可删除此代码,大概2022-09月结束 //爱马哥低碳活动 活动结束即可删除此代码,大概2022-09月结束
sendLowCarbonToWeixin(message,orderBean); sendLowCarbonToWeixin(message, orderBean);
return result; return result;
} catch (Exception e) { } catch (Exception e) {
throw e; throw e;
...@@ -518,11 +518,12 @@ public class OrderAdapterServiceImpl { ...@@ -518,11 +518,12 @@ public class OrderAdapterServiceImpl {
/** /**
* 微信低碳活动上报,活动结束即可删除 * 微信低碳活动上报,活动结束即可删除
*
* @param message * @param message
* @param orderBean * @param orderBean
*/ */
private void sendLowCarbonToWeixin(PaysuccessNoticeMessage message,OrderBeanV1 orderBean){ private void sendLowCarbonToWeixin(PaysuccessNoticeMessage message, OrderBeanV1 orderBean) {
ApiLog.printLog("sendLowCarbonToWeixin",message,orderBean,null); ApiLog.printLog("sendLowCarbonToWeixin", message, orderBean, null);
BaseResponse response = null; BaseResponse response = null;
try { try {
// 微商城订单处理 因为没有appid // 微商城订单处理 因为没有appid
...@@ -552,23 +553,24 @@ public class OrderAdapterServiceImpl { ...@@ -552,23 +553,24 @@ public class OrderAdapterServiceImpl {
request.setMiniAppId(orderBean.getAppId()); request.setMiniAppId(orderBean.getAppId());
response = ecologyProgramApplicationClient.reportActivityBehaviors(request); response = ecologyProgramApplicationClient.reportActivityBehaviors(request);
if (!Objects.equals(response.getCode(), "100")) { if (!Objects.equals(response.getCode(), "100")) {
if(!Objects.equals(response.getMessage(), "用户未参加或已退出该活动")){//用户未报名活动的过滤掉 if (!Objects.equals(response.getMessage(), "用户未参加或已退出该活动")) {//用户未报名活动的过滤掉
emailAlertService.sendEmailAlert("低碳活动上报失败", String.format("request:%s \r\nresponse:%s \r\norderNo:%s", JSONObject.toJSONString(request), JSONObject.toJSONString(response), orderBean.getOid())); emailAlertService.sendEmailAlert("低碳活动上报失败", String.format("request:%s \r\nresponse:%s \r\norderNo:%s", JSONObject.toJSONString(request), JSONObject.toJSONString(response), orderBean.getOid()));
} }
ApiLog.printLog("sendLowCarbonToWeixin error "+orderBean.getOid(), message,request,response); ApiLog.printLog("sendLowCarbonToWeixin error " + orderBean.getOid(), message, request, response);
} }
} }
}catch (Exception e){ } catch (Exception e) {
emailAlertService.sendEmailAlert("低碳活动上报异常", String.format("request:%s \r\nresponse:%s \r\norderNo:%s", JSONObject.toJSONString(message), JSONObject.toJSONString(response),orderBean.getOid())); emailAlertService.sendEmailAlert("低碳活动上报异常", String.format("request:%s \r\nresponse:%s \r\norderNo:%s", JSONObject.toJSONString(message), JSONObject.toJSONString(response), orderBean.getOid()));
ErrorLog.printErrorLog("sendLowCarbonToWeixin exception","/ecology/micro-program/low-carbon-action/activities/behaviors-report",orderBean,e); ErrorLog.printErrorLog("sendLowCarbonToWeixin exception", "/ecology/micro-program/low-carbon-action/activities/behaviors-report", orderBean, e);
} }
} }
private String getActivityId(String partnerId){
private String getActivityId(String partnerId) {
String[] partnerArr = weixinPayActivity.split(","); String[] partnerArr = weixinPayActivity.split(",");
if(partnerArr != null && partnerArr.length >0){ if (partnerArr != null && partnerArr.length > 0) {
for(String partnerStr : partnerArr){ for (String partnerStr : partnerArr) {
String[] arr = partnerStr.split("@"); String[] arr = partnerStr.split("@");
if(Objects.equals(arr[0],partnerId)){ if (Objects.equals(arr[0], partnerId)) {
return arr[1]; return arr[1];
} }
} }
...@@ -576,23 +578,23 @@ public class OrderAdapterServiceImpl { ...@@ -576,23 +578,23 @@ public class OrderAdapterServiceImpl {
return null; return null;
} }
private boolean isGoodInActivity(String partnerId,List<ProductBeanV1> productList){ private boolean isGoodInActivity(String partnerId, List<ProductBeanV1> productList) {
List<String> partnerList = Arrays.asList(weixinPayGoods.split(",")); List<String> partnerList = Arrays.asList(weixinPayGoods.split(","));
if(CollectionUtils.isNotEmpty(partnerList) && CollectionUtils.isNotEmpty(productList)){ if (CollectionUtils.isNotEmpty(partnerList) && CollectionUtils.isNotEmpty(productList)) {
return productList.stream().anyMatch(productBeanV1 -> { return productList.stream().anyMatch(productBeanV1 -> {
boolean mainProduct = partnerList.contains(partnerId+"@"+(StringUtils.isBlank(productBeanV1.getSpecification())?productBeanV1.getProductId():productBeanV1.getSpecification())); boolean mainProduct = partnerList.contains(partnerId + "@" + (StringUtils.isBlank(productBeanV1.getSpecification()) ? productBeanV1.getProductId() : productBeanV1.getSpecification()));
if(mainProduct){ if (mainProduct) {
return true; return true;
} }
if(CollectionUtils.isNotEmpty(productBeanV1.getSendProduct())){ if (CollectionUtils.isNotEmpty(productBeanV1.getSendProduct())) {
boolean sendProduct = productBeanV1.getSendProduct().stream().anyMatch(send->partnerList.contains(partnerId+"@"+(StringUtils.isBlank(send.getSpecification())?send.getProductId():send.getSpecification()))); boolean sendProduct = productBeanV1.getSendProduct().stream().anyMatch(send -> partnerList.contains(partnerId + "@" + (StringUtils.isBlank(send.getSpecification()) ? send.getProductId() : send.getSpecification())));
if(sendProduct){ if (sendProduct) {
return true; return true;
} }
} }
if(CollectionUtils.isNotEmpty(productBeanV1.getComboProduct())){ if (CollectionUtils.isNotEmpty(productBeanV1.getComboProduct())) {
boolean comboProduct = productBeanV1.getComboProduct().stream().anyMatch(combo->partnerList.contains(partnerId+"@"+(StringUtils.isBlank(combo.getSpecification())?combo.getProductId():combo.getSpecification()))); boolean comboProduct = productBeanV1.getComboProduct().stream().anyMatch(combo -> partnerList.contains(partnerId + "@" + (StringUtils.isBlank(combo.getSpecification()) ? combo.getProductId() : combo.getSpecification())));
if(comboProduct){ if (comboProduct) {
return true; return true;
} }
} }
...@@ -606,6 +608,7 @@ public class OrderAdapterServiceImpl { ...@@ -606,6 +608,7 @@ public class OrderAdapterServiceImpl {
/** /**
* 华莱士临时需求, * 华莱士临时需求,
*
* @param request * @param request
* @return * @return
*/ */
...@@ -631,7 +634,7 @@ public class OrderAdapterServiceImpl { ...@@ -631,7 +634,7 @@ public class OrderAdapterServiceImpl {
} }
// step1 调用敬轩, 是否能参加活动 // step1 调用敬轩, 是否能参加活动
OrderBeanV1 orderBeanV1 = orderCenterSdkAdapter.convent2NEWOrderInfo(orderInfoReqs); OrderBeanV1 orderBeanV1 = orderCenterSdkAdapter.convent2NEWOrderInfo(orderInfoReqs);
skip = this.canJoinActivity(orderInfoReqs.getPartnerId(), orderBeanV1.getProductList(), orderBeanV1.getSettlementAmount().intValue()); skip = this.canJoinActivity(orderBeanV1);
if (skip) { if (skip) {
try { try {
// stpe2 调用光兴, 是否成功 +1 // stpe2 调用光兴, 是否成功 +1
...@@ -653,31 +656,42 @@ public class OrderAdapterServiceImpl { ...@@ -653,31 +656,42 @@ public class OrderAdapterServiceImpl {
return ResponseUtil.success(respVo); return ResponseUtil.success(respVo);
} }
private boolean canJoinActivity(String partnerId,List<ProductBeanV1> productList,Integer payAmount){ private boolean canJoinActivity(OrderBeanV1 orderBeanV1) {
String partnerId = orderBeanV1.getCompanyId();
List<ProductBeanV1> productList = orderBeanV1.getProductList();
Integer payAmount = orderBeanV1.getSettlementAmount().intValue();
List<String> partnerList = Arrays.asList(baishiActivityPartner.split(",")); List<String> partnerList = Arrays.asList(baishiActivityPartner.split(","));
if(!partnerList.contains(partnerId)){ // 订单类型限制
if (orderBeanV1.getBizType().compareTo(BizTypeEnum.ORDINARY.getBizType()) != 0) {
return false;
}
if (orderBeanV1.getMarketingType().compareTo(MarketTypeEnum.ORDER.getIndex().byteValue()) != 0) {
return false;
}
if (!partnerList.contains(partnerId)) {
return false; return false;
} }
if(payAmount >= baishiActivityAmount){ if (payAmount >= baishiActivityAmount) {
return true; return true;
} }
List<String> goodsList = Arrays.asList(baishiActivityGood.split(",")); List<String> goodsList = Arrays.asList(baishiActivityGood.split(","));
if(CollectionUtils.isNotEmpty(goodsList) && CollectionUtils.isNotEmpty(productList)){ if (CollectionUtils.isNotEmpty(goodsList) && CollectionUtils.isNotEmpty(productList)) {
return productList.stream().anyMatch(productBeanV1 -> { return productList.stream().anyMatch(productBeanV1 -> {
boolean mainProduct = goodsList.contains(StringUtils.isBlank(productBeanV1.getSpecification())?productBeanV1.getProductId():productBeanV1.getSpecification()); boolean mainProduct = goodsList.contains(StringUtils.isBlank(productBeanV1.getSpecification()) ? productBeanV1.getProductId() : productBeanV1.getSpecification());
if(mainProduct){ if (mainProduct) {
return true; return true;
} }
if(CollectionUtils.isNotEmpty(productBeanV1.getSendProduct())){ if (CollectionUtils.isNotEmpty(productBeanV1.getSendProduct())) {
boolean sendProduct = productBeanV1.getSendProduct().stream().anyMatch(send->goodsList.contains(StringUtils.isBlank(send.getSpecification())?send.getProductId():send.getSpecification())); boolean sendProduct = productBeanV1.getSendProduct().stream().anyMatch(send -> goodsList.contains(StringUtils.isBlank(send.getSpecification()) ? send.getProductId() : send.getSpecification()));
if(sendProduct){ if (sendProduct) {
return true; return true;
} }
} }
if(CollectionUtils.isNotEmpty(productBeanV1.getComboProduct())){ if (CollectionUtils.isNotEmpty(productBeanV1.getComboProduct())) {
boolean comboProduct = productBeanV1.getComboProduct().stream().anyMatch(combo->goodsList.contains(StringUtils.isBlank(combo.getSpecification())?combo.getProductId():combo.getSpecification())); boolean comboProduct = productBeanV1.getComboProduct().stream().anyMatch(combo -> goodsList.contains(StringUtils.isBlank(combo.getSpecification()) ? combo.getProductId() : combo.getSpecification()));
if(comboProduct){ if (comboProduct) {
return true; return true;
} }
} }
......
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