|
|
package com.yoho.unions.server.service.impl;
|
|
|
|
|
|
import com.yoho.core.common.utils.JsonUtil;
|
|
|
import com.yoho.unions.common.utils.HttpUtils;
|
|
|
import com.yoho.unions.dal.IUserOrdersDAO;
|
|
|
import com.yoho.unions.server.service.IOrderPushService;
|
|
|
import com.yoho.unions.vo.OrderInfo;
|
|
|
import com.yoho.unions.vo.OrdersGood;
|
|
|
import org.apache.commons.collections.CollectionUtils;
|
|
|
import org.apache.commons.lang3.tuple.Pair;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
|
|
|
/**
|
|
|
* Created by mingdan.ge on 2019/11/25.
|
|
|
*/
|
|
|
@Service
|
|
|
public class ChineseANS2SImpl implements IOrderPushService {
|
|
|
|
|
|
static Logger logger = LoggerFactory.getLogger(ChineseANS2SImpl.class);
|
|
|
static final String preUrl = "https://www.chinesean.com/affiliate/tracking3.do?pId=19865";
|
|
|
|
|
|
@Autowired
|
|
|
private IUserOrdersDAO userOrdersDAO;
|
|
|
|
|
|
@Override
|
|
|
public void pushOrder(List<OrderInfo> orderInfos){
|
|
|
orderInfos.forEach(o->{
|
|
|
//https://www.chinesean.com/affiliate/tracking3.do?pId=PROGRAMID&tracking=REFID&cpa=&cpl=&cps=AMOUNT,TIERID&txId=TXID
|
|
|
BigDecimal amount = new BigDecimal(0);
|
|
|
if (CollectionUtils.isNotEmpty(o.getOrdersGoods())) {
|
|
|
logger.info("ChineseANS2SImpl.pushOrder test,order is {}.",JsonUtil.objectToJSON(o.getOrdersGoods()));
|
|
|
for(OrdersGood g:o.getOrdersGoods()){
|
|
|
amount.add(g.getRealPayFee());
|
|
|
logger.info("ChineseANS2SImpl.pushOrder test,order is {},amount is {}.",JsonUtil.objectToJSON(g),amount);
|
|
|
}
|
|
|
}
|
|
|
String url=preUrl+"&tracking="+o.getParentOrderCode()+"cpa=&cpl=&cps="+amount+",TIERID"+"&txId="+o.getUnionData();
|
|
|
Pair<Integer, String> pair = HttpUtils.httpGet(url);
|
|
|
if (pair.getLeft() != 200) {
|
|
|
logger.error("ChineseANS2SImpl.pushOrder error,url is ,result is {},pair is {},order is {}.",url,pair, JsonUtil.objectToJSON(o));
|
|
|
}else {
|
|
|
logger.info("ChineseANS2SImpl.pushOrder end,url is ,result is {},pair is {},order is {}.",url,pair,JsonUtil.objectToJSON(o));
|
|
|
//批量更新推送成功的订单状态为1
|
|
|
List<String> pushedCodes = new ArrayList<>();
|
|
|
pushedCodes.add(o.getParentOrderCode());
|
|
|
//批量更新推送成功的订单状态为1
|
|
|
userOrdersDAO.batchUpdatePush(pushedCodes);
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
} |
...
|
...
|
|