|
@@ -107,6 +107,72 @@ public class KwaixiaodianOrderCursorListServiceImpl implements IKwaixiaodianOrde
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
+ public void queryNowdayKWaiOrderList(String shopId, String cursor) {
|
|
|
+ try {
|
|
|
+ //2小时前 时间戳
|
|
|
+ Long beginTime = DateUtils.getTimeStamp(DateUtils.getHourTime(-2));
|
|
|
+ //当前时间
|
|
|
+ Long endTime = DateUtils.getTimeStamp(DateUtils.getTime());
|
|
|
+ KuaishouAccessToken token = accessTokenService.getKWaiAccessToken(shopId);
|
|
|
+ if (Check.isNull(token)) {
|
|
|
+ log.error("----kwaixiaodian当天获取订单列表,shopId:{} 没有token信息", shopId);
|
|
|
+ }
|
|
|
+
|
|
|
+ AccessTokenKsMerchantClient client = new AccessTokenKsMerchantClient(KuaiShouConstants.KFX_URL, token.getAppKey(), token.getSignSecret());
|
|
|
+ OpenOrderCursorListRequest request = new OpenOrderCursorListRequest();
|
|
|
+ request.setAccessToken(token.getAccessToken());
|
|
|
+ request.setApiMethodVersion(1L);
|
|
|
+
|
|
|
+ //订单状态,0未知 1 全部 2 待付款 3 待发货 4 待收货(已发货)5 已收货 6 交易成功订单 7 已关闭订单。若此API返回超时,请传入1后重试
|
|
|
+ request.setOrderViewStatus(1);
|
|
|
+ //每页请求数量 最多一页50条
|
|
|
+ request.setPageSize(50);
|
|
|
+ //1时间降序 2时间升序 默认降序
|
|
|
+ request.setSort(1);
|
|
|
+ //1按创建时间查找 2按更新时间查找 ;默认创建时间,值为1时只允许获取创建时间90天内的订单数据,值为2时仅允许获取更新时间90天内且创建时间240天内的订单数据
|
|
|
+ request.setQueryType(1);
|
|
|
+ //订单生成时间的开始时间,单位毫秒, 不能小于90天前,且需要小于结束时间
|
|
|
+ request.setBeginTime(beginTime);
|
|
|
+ //订单生成时间的截止时间,单位毫秒,与开始时间的时间范围不大于7天
|
|
|
+ request.setEndTime(endTime);
|
|
|
+ //分销类型 0-全部 1-普通订单 2-分销订单
|
|
|
+ request.setCpsType(0);
|
|
|
+ //游标内容 第一次传空串,之后传上一次的cursor返回值,若返回“nomore”则标识到底
|
|
|
+ request.setCursor(cursor);
|
|
|
+ OpenOrderCursorListResponse response = null;
|
|
|
+ try {
|
|
|
+ response = client.execute(request);
|
|
|
+ } catch (KsMerchantApiException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ JSONObject jsonObject = JSONObject.parseObject(GsonUtils.toJSON(response));
|
|
|
+ String code = jsonObject.getString("code");
|
|
|
+ if ("1".equals(code)) {
|
|
|
+ JSONObject data = jsonObject.getJSONObject("data");
|
|
|
+ cursor = data.getString("cursor");
|
|
|
+ JSONArray orderList = data.getJSONArray("orderList");
|
|
|
+ List<KwaixiaodianOrderCursorList> orderCursorList = new ArrayList<>();
|
|
|
+ for (int i = 0; i < orderList.size(); i++) {
|
|
|
+ JSONObject object = orderList.getJSONObject(i);
|
|
|
+ KwaixiaodianOrderCursorList order = new KwaixiaodianOrderCursorList(token, object);
|
|
|
+ orderCursorList.add(order);
|
|
|
+ }
|
|
|
+ if (Check.isNotNull(orderCursorList)) {
|
|
|
+ mapper.replaceBatchKWaixiaodianOrderCursorList(orderCursorList);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ log.error("===kwaixiaodian当天获取订单列表(open.order.cursor.list)失败,shopId:{},信息:{}", shopId, jsonObject.getString("error_msg"));
|
|
|
+ }
|
|
|
+ if (!"nomore".equals(cursor)) {
|
|
|
+ queryNowdayKWaiOrderList(shopId, cursor);
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error("===kwaixiaodian当天获取订单列表异常 querykwaiOrderList");
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
public void insertKWaiShopOrder(JSONObject eventJSon) {
|
|
|
JSONObject info = eventJSon.getJSONObject("info");
|
|
|
String openId = eventJSon.getString("openId");
|