From 69bee82b81626b82b7f39f0e459e4f56b1699b51 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 13 三月 2019 12:02:16 +0800 Subject: [PATCH] 正式数据库修改 --- fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoOrderUtil.java | 237 +++++++++++++++++------------------------------------------ 1 files changed, 68 insertions(+), 169 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoOrderUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoOrderUtil.java index 894a4bd..2276c83 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoOrderUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoOrderUtil.java @@ -9,34 +9,27 @@ import java.util.HashMap; import java.util.List; import java.util.Map; - -import javax.annotation.PostConstruct; -import javax.annotation.Resource; +import java.util.concurrent.ConcurrentHashMap; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.methods.GetMethod; import org.springframework.stereotype.Component; +import org.yeshi.utils.HttpUtil; import com.yeshi.fanli.entity.bus.user.Order; import com.yeshi.fanli.entity.bus.user.OrderItem; import com.yeshi.fanli.entity.bus.user.UserInfo; -import com.yeshi.fanli.entity.taobao.PidOrder; +import com.yeshi.fanli.entity.order.CommonOrder; import com.yeshi.fanli.entity.taobao.TaoBaoOrder; import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig; import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder; import com.yeshi.fanli.exception.TaoBaoOrderException; import com.yeshi.fanli.log.LogHelper; -import com.yeshi.fanli.service.inter.config.ConfigService; -import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService; -import com.yeshi.fanli.service.inter.hongbao.HongBaoService; -import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce; -import com.yeshi.fanli.service.inter.order.OrderItemServcie; -import com.yeshi.fanli.service.inter.order.OrderService; +import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.MoneyBigDecimalUtil; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.TimeUtil; -import org.yeshi.utils.HttpUtil; import jxl.Sheet; import jxl.Workbook; @@ -45,40 +38,10 @@ @Component public class TaoBaoOrderUtil { - private final static String CACHENAME = "tbCookie"; - private static final String ORDERFAILURE = "璁㈠崟澶辨晥"; private static final String ORDERPAYMENT = "璁㈠崟浠樻"; private static final String ORDERSETTLEMENT = "璁㈠崟缁撶畻"; private static final String ORDERSUCCESS = "璁㈠崟鎴愬姛"; - - @Resource - private OrderService orderService; - @Resource - private HongBaoService hongBaoService; - @Resource - private ConfigService configService; - - @Resource - private OrderItemServcie orderItemServcie; - - @Resource - private HongBaoManageService hongBaoManageService; - - @Resource - private ThreeSaleSerivce threeSaleSerivce; - - private static TaoBaoOrderUtil taoBaoOrderUtil; - - @PostConstruct - public void init() { - taoBaoOrderUtil = this; - taoBaoOrderUtil.orderService = this.orderService; - taoBaoOrderUtil.hongBaoService = this.hongBaoService; - taoBaoOrderUtil.configService = this.configService; - taoBaoOrderUtil.hongBaoManageService = this.hongBaoManageService; - taoBaoOrderUtil.orderItemServcie = this.orderItemServcie; - } /** * 鑾峰彇娣樺疂鑱旂洘鐨凜ookie @@ -357,7 +320,7 @@ String startTimeStr = TimeUtil.getGernalTime(startTime, "yyyy-MM-dd"); String endTimeStr = TimeUtil.getGernalTime(endTime, "yyyy-MM-dd"); String url = String.format( - "http://pub.alimama.com/report/getNewTbkRefundPaymentDetails.json?spm=a219t.7664554.1998457203.105.49cc35d9eDSunp&refundType=1&searchType=3&DownloadID=DOWNLOAD_EXPORT_CPSPAYMENT_REFUND_OVERVIEW&startTime=%s&endTime=%s", + "http://pub.alimama.com/report/getNewTbkRefundPaymentDetails.json?spm=a219t.7664554.1998457203.105.49cc35d9eDSunp&refundType=1&searchType=1&DownloadID=DOWNLOAD_EXPORT_CPSPAYMENT_REFUND_OVERVIEW&startTime=%s&endTime=%s", startTimeStr, endTimeStr); Map<String, String> headers = new HashMap<>(); headers.put("User-Agent", @@ -372,13 +335,13 @@ list.addAll(getThirdWeiQuanOrders(cookies, startTime, endTime)); - if (list != null) - for (int i = 0; i < list.size(); i++) { - if (!list.get(i).getState().equalsIgnoreCase("缁存潈鎴愬姛")) { - list.remove(i); - i--; - } - } + // if (list != null) + // for (int i = 0; i < list.size(); i++) { + // if (!list.get(i).getState().equalsIgnoreCase("缁存潈鎴愬姛")) { + // list.remove(i); + // i--; + // } + // } return list; } @@ -594,24 +557,6 @@ } /** - * 瑙f瀽鍟嗗搧鍒嗕韩璁㈠崟 - * - * @param in - * @return - */ - public static List<PidOrder> parsePidOrder(InputStream in) { - List<TaoBaoOrder> orderList = parseOrder(in); - if (orderList != null && orderList.size() > 0) { - List<PidOrder> pidOrderList = new ArrayList<>(); - for (TaoBaoOrder order : orderList) { - pidOrderList.add(convertToPidOrder(order)); - } - return pidOrderList; - } - return new ArrayList<PidOrder>(); - } - - /** * 瑙f瀽缁存潈璁㈠崟 * * @param in @@ -646,13 +591,19 @@ orderRecord.setState(content); break; case 6:// - orderRecord.setJieSuanTime(content); + if (!StringUtil.isNullOrEmpty(content)) + orderRecord.setJieSuanTime( + new Date(TimeUtil.convertToTimeTemp(content, "yyyy-MM-dd HH:mm:ss"))); break; case 7:// - orderRecord.setWeiQuanTime(content); + if (!StringUtil.isNullOrEmpty(content)) + orderRecord.setWeiQuanTime( + new Date(TimeUtil.convertToTimeTemp(content, "yyyy-MM-dd HH:mm:ss"))); break; case 8:// - orderRecord.setWeiQuanFinishTime(content); + if (!StringUtil.isNullOrEmpty(content)) + orderRecord.setWeiQuanFinishTime( + new Date(TimeUtil.convertToTimeTemp(content, "yyyy-MM-dd HH:mm:ss"))); break; } } @@ -674,8 +625,15 @@ orderItem.setSettlementTime(0L); String createTime = tbo.getCreateTime(); orderItem.setCreateTime(TimeUtil.convertDateToTemp2(createTime)); - orderItem.setFanMoney(MoneyBigDecimalUtil.mul(rate.divide(BigDecimal.valueOf(100)), tbo.getEstimate())); - orderItem.setPayMoney(tbo.getPayment()); + if ("璁㈠崟缁撶畻".equalsIgnoreCase(tbo.getOrderState())) + orderItem.setFanMoney(MoneyBigDecimalUtil.mul(rate.divide(BigDecimal.valueOf(100)), tbo.geteIncome())); + else + orderItem.setFanMoney(MoneyBigDecimalUtil.mul(rate.divide(BigDecimal.valueOf(100)), tbo.getEstimate())); + if ("璁㈠崟缁撶畻".equalsIgnoreCase(tbo.getOrderState())) + orderItem.setPayMoney(tbo.getSettlement()); + else + orderItem.setPayMoney(tbo.getPayment()); + orderItem.setOrder(order); orderItem.setOrderId(tbo.getOrderId()); @@ -708,74 +666,6 @@ return orderItem; } - public static List<PidOrder> getPidOrderList(int day, TaoBaoUnionConfig config) { - String cookie1 = getTaoBaoCookie(config.getAccount()); - - LogHelper.cookieLog("璐﹀彿涓猴細" + config.getAccount() + ",cookie涓猴細" + cookie1); - - String[] cookies = new String[] { cookie1 }; - List<PidOrder> list = new ArrayList<PidOrder>(); - int i = 0; - for (String cookie : cookies) { - if (com.yeshi.fanli.util.StringUtil.isNullOrEmpty(cookie)) { - i++; - continue; - } - // 鍘熷涓�30 - String startTime = TimeUtil.getGernalTime(System.currentTimeMillis() - 1000 * 60 * 60 * 24L * day, - "yyyy-MM-dd"); - String endTime = TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd"); - - String url = String.format( - "http://pub.alimama.com/report/getTbkPaymentDetails.json?spm=a219t.7664554.1998457203.85.9pFBtK&queryType=1&payStatus=&DownloadID=DOWNLOAD_REPORT_INCOME_NEW&startTime=%s&endTime=%s", - startTime, endTime); - HttpClient client = new HttpClient(); - // client.getHostConfiguration().setProxy("192.168.1.200", 8888); - GetMethod gm = new GetMethod(url); - gm.setRequestHeader("Cookie", cookie); - gm.setRequestHeader("User-Agent", - "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36"); - InputStream inputStream = null; - try { - client.executeMethod(gm); - System.out.println(gm.getStatusCode()); - if (gm.getStatusCode() == 200) { - System.out.println(gm.getResponseHeader("Content-Type").getValue()); - if (!gm.getResponseHeader("Content-Type").getValue().contains("excel")) { - if (i == 0) { - reportCookieInvalid(config.getAccount()); - } - continue; - } - inputStream = gm.getResponseBodyAsStream(); - list.addAll(parsePidOrder(inputStream)); - - // String path = - // TaoBaoOrderUtil.class.getClassLoader().getResource("/").getPath(); - // String yyyyMMddHHmmss = - // TimeUtil.yyyyMMddHHmmss(System.currentTimeMillis()); - // FileUtils.copyInputStreamToFile(inputStream, new - // File(path+"/excel/"+yyyyMMddHHmmss+"."+"xls")); - } - } catch (HttpException e) { - e.printStackTrace(); - } catch (IOException e) { - e.printStackTrace(); - } finally { - i++; - if (inputStream != null) { - try { - inputStream.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - } - } - - return list; - } - /** * 灏嗘窐瀹濊鍗曟寜鐓ц鍗曞彿褰掔被 * @@ -783,41 +673,15 @@ * @return */ public static Map<String, List<TaoBaoOrder>> classifyTaoBaoOrderByOrderId(List<TaoBaoOrder> orderList) { - Map<String, List<TaoBaoOrder>> map = new HashMap<>(); + Map<String, List<TaoBaoOrder>> map = new ConcurrentHashMap<>(); for (TaoBaoOrder order : orderList) { if (map.get(order.getOrderId()) == null) map.put(order.getOrderId(), new ArrayList<>()); + // 璁剧疆鎺掑簭鍊硷紝浠�1寮�濮� + order.setOrderBy(map.get(order.getOrderId()).size() + 1); map.get(order.getOrderId()).add(order); } return map; - } - - /** - * 璁㈠崟杞崲 - * - * @param taoBaoOrder - * @return - */ - public static PidOrder convertToPidOrder(TaoBaoOrder taoBaoOrder) { - PidOrder pidOrder = new PidOrder(); - pidOrder.setOrderCreateTime(new Date(TimeUtil.convertDateToTemp2(taoBaoOrder.getCreateTime()))); - pidOrder.setGoodsTitle(taoBaoOrder.getTitle()); - pidOrder.setAuctionId(taoBaoOrder.getAuctionId()); - pidOrder.setGoodsNum(taoBaoOrder.getCount()); - pidOrder.setPrice(taoBaoOrder.getPrice()); - pidOrder.setState(taoBaoOrder.getOrderState()); - pidOrder.setOrderType(taoBaoOrder.getOrderType()); - pidOrder.setRate(taoBaoOrder.getiRatio()); - pidOrder.setPayMoney(taoBaoOrder.getPayment()); - pidOrder.setPreMoney(taoBaoOrder.getEstimate()); - pidOrder.setFinalMoney(taoBaoOrder.getSettlement()); - if (!StringUtil.isNullOrEmpty(taoBaoOrder.getSettlementTime())) - pidOrder.setBalanceTime(new Date(TimeUtil.convertDateToTemp2(taoBaoOrder.getSettlementTime()))); - pidOrder.setOrderId(taoBaoOrder.getOrderId()); - pidOrder.setTypeName(taoBaoOrder.getClassName()); - pidOrder.setSrcMediaId(taoBaoOrder.getSourceMediaId()); - pidOrder.setAdzoneId(taoBaoOrder.getAdPositionId()); - return pidOrder; } /** @@ -841,4 +705,39 @@ // TimeUtil.getGernalTime(balanceTime, "HH:mm:ss"); return TimeUtil.convertToTimeTemp(time, "yyyy-M-dd HH:mm:ss"); } + + public static CommonOrder convert(TaoBaoOrder taoBaoOrder) { + CommonOrder commonOrder = new CommonOrder(); + commonOrder.setCount(taoBaoOrder.getCount()); + commonOrder.setCreateTime(new Date()); + commonOrder.seteIncome(taoBaoOrder.geteIncome()); + commonOrder.setEstimate(taoBaoOrder.getEstimate()); + commonOrder.setOrderNo(taoBaoOrder.getOrderId()); + commonOrder.setPayment(taoBaoOrder.getPayment()); + commonOrder.setSettlement(taoBaoOrder.getSettlement()); + if (!StringUtil.isNullOrEmpty(taoBaoOrder.getSettlementTime())) + commonOrder.setSettleTime( + new Date(TimeUtil.convertToTimeTemp(taoBaoOrder.getSettlementTime(), "yyyy-MM-dd HH:mm:ss"))); + commonOrder.setSourcePosition(String.format("mm_%s_%s_%s", "124933865", taoBaoOrder.getSourceMediaId(), + taoBaoOrder.getAdPositionId())); + commonOrder.setSourceType(Constant.SOURCE_TYPE_TAOBAO); + int state = 0; + if ("璁㈠崟浠樻".equalsIgnoreCase(taoBaoOrder.getOrderState())) { + state = CommonOrder.STATE_FK; + } else if ("璁㈠崟鎴愬姛".equalsIgnoreCase(taoBaoOrder.getOrderState())) { + state = CommonOrder.STATE_FK; + } else if ("璁㈠崟澶辨晥".equalsIgnoreCase(taoBaoOrder.getOrderState())) { + state = CommonOrder.STATE_SX; + } else if ("璁㈠崟缁撶畻".equalsIgnoreCase(taoBaoOrder.getOrderState())) { + state = CommonOrder.STATE_JS; + } + commonOrder.setOrderBy(taoBaoOrder.getOrderBy()); + commonOrder.setState(state); + commonOrder.setThirdCreateTime( + new Date(TimeUtil.convertToTimeTemp(taoBaoOrder.getCreateTime(), "yyyy-MM-dd HH:mm:ss"))); + commonOrder.setUpdateTime(new Date()); + + return commonOrder; + + } } -- Gitblit v1.8.0