From db88b87df461820152d68d3d55a28f30c2da83e6 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 20 九月 2019 17:54:42 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div --- fanli/src/main/java/com/yeshi/fanli/util/taobao/DaTaoKeUtil.java | 75 ++++++++++++++++++++++++++++++++++++- 1 files changed, 72 insertions(+), 3 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/taobao/DaTaoKeUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/taobao/DaTaoKeUtil.java index a93d81d..c8e606b 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/taobao/DaTaoKeUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/taobao/DaTaoKeUtil.java @@ -5,6 +5,7 @@ import java.math.BigDecimal; import java.net.URLEncoder; import java.util.ArrayList; +import java.util.Calendar; import java.util.Iterator; import java.util.List; @@ -18,6 +19,7 @@ import org.jsoup.select.Elements; import com.yeshi.fanli.dto.dataoke.DingDongQiangDTO; +import com.yeshi.fanli.dto.dataoke.DingDongTime; import com.yeshi.fanli.entity.bus.clazz.GoodsClass; import com.yeshi.fanli.entity.taobao.TaoBaoCoupon; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; @@ -374,7 +376,7 @@ List<DingDongQiangDTO> list = new ArrayList<>(); Document doc = null; try { - doc = Jsoup.connect("http://www.dataoke.com/ddq").get(); + doc = Jsoup.connect("http://www.dataoke.com/ddq").userAgent("").get(); } catch (IOException e1) { e1.printStackTrace(); } @@ -395,9 +397,11 @@ for (Iterator<String> its = dataJson.keys(); its.hasNext();) { String key = its.next(); JSONArray array = dataJson.optJSONArray(key); - List<DaTaoKeDetail> detailList = new ArrayList<>(); + List<DaTaoKeDetailV2> detailList = new ArrayList<>(); for (int n = 0; n < array.size(); n++) { - detailList.add(new DaTaoKeDetail(array.optJSONObject(n).optLong("id"))); + DaTaoKeDetailV2 v2 = new DaTaoKeDetailV2(); + v2.setId(array.optJSONObject(n).optLong("id")); + detailList.add(v2); } list.add(new DingDongQiangDTO(key, detailList)); } @@ -575,4 +579,69 @@ return detail; } + public static List<String> getDingDongQiangTime() { + + // 鑾峰彇褰撳墠鐨勫皬鏃舵暟 + DingDongTime[] times = new DingDongTime[] { new DingDongTime("0", "00:00"), new DingDongTime("8", "08:00"), + new DingDongTime("10", "10:00"), new DingDongTime("13", "13:00"), new DingDongTime("15", "15:00"), + new DingDongTime("17", "17:00"), new DingDongTime("19", "19:00"), new DingDongTime("20", "20:00"), + new DingDongTime("21", "21:00") }; + Calendar nowDate = Calendar.getInstance(); + Calendar preDate = Calendar.getInstance(); + preDate.setTimeInMillis(nowDate.getTimeInMillis() - 24 * 60 * 60 * 1000L); + + Calendar nextDate = Calendar.getInstance(); + nextDate.setTimeInMillis(nowDate.getTimeInMillis() + 24 * 60 * 60 * 1000L); + + String preDay = (preDate.get(Calendar.DAY_OF_MONTH) + "").length() < 2 + ? "0" + preDate.get(Calendar.DAY_OF_MONTH) : preDate.get(Calendar.DAY_OF_MONTH) + ""; + String nextDay = (nextDate.get(Calendar.DAY_OF_MONTH) + "").length() < 2 + ? "0" + nextDate.get(Calendar.DAY_OF_MONTH) : nextDate.get(Calendar.DAY_OF_MONTH) + ""; + String nowDay = (nowDate.get(Calendar.DAY_OF_MONTH) + "").length() < 2 + ? "0" + nowDate.get(Calendar.DAY_OF_MONTH) : nowDate.get(Calendar.DAY_OF_MONTH) + ""; + + int hour = nowDate.get(Calendar.HOUR_OF_DAY); + int pos = 0; + for (int i = 0; i < times.length - 1; i++) { + if (hour >= Integer.parseInt(times[i].getKey()) && hour < Integer.parseInt(times[i + 1].getKey())) { + pos = i; + break; + } + } + + List<DingDongTime> list = new ArrayList<>(); + + for (int i = 5; i >= 0; i--) { + int p = pos - i < 0 ? (times.length + pos - i) : pos - i; + DingDongTime itemData = new DingDongTime(times[p].getKey(), times[p].getValue()); + if (pos - i < 0) + itemData.setTime( + preDay + "" + (itemData.getKey().length() < 2 ? ("0" + itemData.getKey()) : itemData.getKey())); + else + itemData.setTime( + nowDay + "" + (itemData.getKey().length() < 2 ? ("0" + itemData.getKey()) : itemData.getKey())); + list.add(itemData); + } + + if (pos + 1 < times.length) + for (int i = pos + 1; i < times.length; i++) { + DingDongTime itemData = new DingDongTime(times[i].getKey(), times[i].getValue()); + itemData.setTime( + nowDay + "" + (itemData.getKey().length() < 2 ? ("0" + itemData.getKey()) : itemData.getKey())); + list.add(itemData); + } + + if (times.length - (pos + 1) < 2) { + DingDongTime itemData = new DingDongTime(times[0].getKey(), times[0].getValue()); + itemData.setTime( + nextDay + "" + (itemData.getKey().length() < 2 ? ("0" + itemData.getKey()) : itemData.getKey())); + list.add(itemData); + } + + List<String> finalTimeList = new ArrayList<>(); + for (DingDongTime time : list) + finalTimeList.add(time.getTime()); + return finalTimeList; + } + } -- Gitblit v1.8.0