qihang-ecom-erp-open/pdd-api/src/main/java/com/qihang/pdd/controller/AjaxOrderPddController.java

991 lines
59 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.qihang.pdd.controller;
import com.pdd.pop.sdk.common.util.JsonUtil;
import com.pdd.pop.sdk.http.PopClient;
import com.pdd.pop.sdk.http.PopHttpClient;
import com.pdd.pop.sdk.http.api.pop.request.PddOrderListGetRequest;
import com.pdd.pop.sdk.http.api.pop.response.PddOrderListGetResponse;
import com.qihang.common.common.ApiResult;
import com.qihang.common.enums.EnumShopType;
import com.qihang.common.enums.HttpStatus;
import com.qihang.pdd.domain.SysPlatform;
import com.qihang.pdd.service.SysPlatformService;
import com.qihang.pdd.service.SysShopService;
import lombok.AllArgsConstructor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
@AllArgsConstructor
@RequestMapping("/order")
@RestController
public class AjaxOrderPddController {
private static Logger log = LoggerFactory.getLogger(AjaxOrderPddController.class);
// @Autowired
// private ServerConfig serverConfig;
private final SysShopService shopService;
private final SysPlatformService platformService;
// @Autowired
// private IPddOrderService pddOrderService;
/**
* 接口拉取订单
*
* @param reqData
* @param
* @return
* @throws Exception
*/
@RequestMapping(value = "/pull_order", method = RequestMethod.POST)
public ApiResult<Object> getOrderList(@RequestBody OpenApiRequest reqData)
throws Exception {
Integer updType = reqData.getUpdType();//更新类型0拉取新订单1更新订单
String startDate = reqData.getStartDate();//reqData.getString("startTime");
String endDate = reqData.getEndDate();//reqData.getString("endTime");
var shop = shopService.selectShopById(reqData.getShopId());
if(shop == null) return ApiResult.build(HttpStatus.PARAMS_ERROR, "店铺不存在!");
if (shop.getType() != EnumShopType.PDD.getIndex()) {
return ApiResult.build(HttpStatus.PARAMS_ERROR, "参数错误店铺不是PDD店铺");
}
SysPlatform platform = platformService.selectById(EnumShopType.PDD.getIndex());
if(!StringUtils.hasText(platform.getAppKey())) {
return ApiResult.build(HttpStatus.PARAMS_ERROR, "平台配置错误没有找到AppKey");
}
if(!StringUtils.hasText(platform.getAppSecret())) {
return ApiResult.build(HttpStatus.PARAMS_ERROR, "第三方平台配置错误没有找到AppSercet");
}
// if(!StringUtils.hasText(platform.getRedirectUri())) {
// return ApiResult.build(HttpStatus.PARAMS_ERROR, "第三方平台配置错误没有找到RedirectUri");
// }
// if(!StringUtils.hasText(platform.getServerUrl())) {
// return ApiResult.build(HttpStatus.PARAMS_ERROR, "第三方平台配置错误没有找到ServerUrl");
// }
// String appKey = shop.getAppKey();
// String appSercet = shop.getAppSercet();
// if(!StringUtils.hasText(appKey) || !StringUtils.hasText(appSercet)) return new ApiResult<>(EnumResultVo.Fail.getIndex(), "参数错误请设置appkey和serecet");
// String clientId = DataConfigObject.getInstance().getPddClientId();
// String clientSecret = DataConfigObject.getInstance().getPddClientSecret();
// var shop = shopService.getShop(shopId);
// var settingEntity = thirdSettingService.getEntity(shop.getType());
ShopApiParams params = new ShopApiParams();
params.setAppKey(platform.getAppKey());
params.setAppSecret(platform.getAppSecret());
params.setAccessToken(shop.getAccessToken());
params.setTokenRequestUrl("http://localhost:3000/pdd_api2/oauth");
params.setApiRequestUrl(shop.getApiRequestUrl());
String accessToken = params.getAccessToken();
if(!StringUtils.hasText(accessToken)) {
return ApiResult.build(HttpStatus.PARAMS_ERROR, "参数错误accessToken为空");
}
// if(!StringUtils.hasText(accessToken)) return new ApiResult<>(EnumResultVo.TokenFail.getIndex(), "参数错误accessToken为空",params);
// 获取店铺信息,判断店铺是否一致
var shopResult = PddApiUtils.getShopInfo(params.getAppKey(), params.getAppSecret(), accessToken);
if (shopResult.getCode() != HttpStatus.SUCCESS)
return ApiResult.build(shopResult.getCode(), shopResult.getMsg(),params);
if (shopResult.getData().getMallId().longValue() != shop.getSellerId().longValue()) {
return ApiResult.build(HttpStatus.UNAUTHORIZED, "该店铺不是授权店铺",params);
}
ApiResult<ErpSalesPullCountResp> result = null;// 返回结果
Long endTime = System.currentTimeMillis() / 1000;// 订单更新结束时间(默认值)
Long startTime = endTime - 60 * 60 * 24 + 10;// 订单更新开始时间(默认值)
// 查询上次更新时间
/*String startTime_ = orderPddService.getPddUpTodate(shopId);
if (!StringUtils.isEmpty(startTime_))
startTime = DateUtil.dateTimeToStamp(startTime_).longValue();*/
// if (!StringUtils.isEmpty(startDate)) {
// // 选择了开始日期,从开始时间直接循环更新到结束时间,如果选择的时间大于数据库订单最后的时间,那么就用数据库的订单时间
// Long startTimeTmp = DateUtil.dateTimeToStamp(startDate).longValue();
// if (startTimeTmp < startTime)
// startTime = startTimeTmp;
//
// // 如果选择的结束时间不为空,就用选择的时间
// if (!StringUtils.isEmpty(endDate))
// endTime = DateUtil.dateTimeToStamp(endDate).longValue();
// }
/*
* if (StringUtils.isEmpty(startDate)) { //没有选择开始日期 var pullOrderLog =
* salesOrderService.getErpOrderPullLogByShopId(shopId, 1); if (pullOrderLog !=
* null) { startTime = pullOrderLog.getEndTime() - 60 * 10; } else { return new
* ApiResult<>(EnumResultVo.ParamsError.getIndex(), "请选择开始拉取时间"); } } else {
* //选择了开始日期,从开始时间直接循环更新到结束时间 startTime =
* DateUtil.dateToStamp(startDate).longValue(); if
* (StringUtils.isEmpty(endDate)) endTime = System.currentTimeMillis() / 1000;
* else endTime = DateUtil.dateTimeToStamp(endDate + " 23:59:00").longValue(); }
*/
long kaishidaojiesu = endTime - startTime;
long forSize = (kaishidaojiesu % (60 * 60 * 24) == 0) ? kaishidaojiesu / (60 * 60 * 24)
: kaishidaojiesu / (60 * 60 * 24) + 1;// 计算需要循环的次数
// log.info("开始循环更新拼多多订单。开始时间:" + DateUtil.unixTimeStampToDate(startTime) + "结束时间:" + DateUtil.unixTimeStampToDate(endTime) + "总共循环" + forSize);
int updCount = 0;
int insertCount = 0;
int failCount = 0;
// int pageIndex = 1;
int pageSize = 100;
for (int i = 0; i < forSize; i++) {
Long startTime1 = startTime + i * 60 * 60 * 24;
Long endTime1 = startTime1 + 60 * 60 * 24;
if (endTime1 > endTime)
endTime1 = endTime;
int pageIndex = 1;
result = this.pullPddOrder(params.getAppKey(),params.getAppSecret(), accessToken, pageIndex, pageSize, startTime1, endTime1, shop.getSellerId());
pageIndex++;
// log.info("开始循环" + i + "。开始时间:" + DateUtil.unixTimeStampToDate(startTime1) + "结束时间:" + DateUtil.unixTimeStampToDate(endTime1) + "。");
// log.info("开始更新第"+pageIndex+"页");
if (result.getCode() == 0) {
updCount += result.getData().getUpdCount();
insertCount += result.getData().getAddCount();
failCount += result.getData().getFailCount();
// log.info("查询到数据:"+result.getData().getTotalRecords());
} else if (result.getCode() > 0)
return ApiResult.build(result.getCode(), result.getMsg());
// 计算总页数
int totalPage = (result.getData().getTotalRecords() % pageSize == 0)
? result.getData().getTotalRecords() / pageSize
: (result.getData().getTotalRecords() / pageSize) + 1;
log.info("开始循环" + i + "。查询到" + result.getData().getTotalRecords() + "条数据,总共:" + totalPage + "");
// while (pageIndex <= totalPage) {
//
// // log.info("开始更新第"+pageIndex+"页");
// // log.info("查询到数据:"+result.getData().getTotalRecords());
// result = this.pullPddOrder(appKey, appSercet, accessToken, pageIndex, pageSize, startTime1, endTime1, shopId);
// if (result.getCode() == 0) {
// updCount += result.getData().getUpdCount();
// insertCount += result.getData().getAddCount();
// failCount += result.getData().getFailCount();
// }
// pageIndex++;
// }
// pageIndex = 1;
}
// ErpSalesPullCountResp resp = new ErpSalesPullCountResp();// 返回结果
// resp.setStartTime(DateUtil.unixTimeStampToDate(startTime));
// resp.setEndTime(DateUtil.unixTimeStampToDate(endTime));
// resp.setAddCount(insertCount);
// resp.setFailCount(failCount);
// resp.setUpdCount(updCount);
// log.info("更新完成,结果:" + JsonUtil.transferToJson(resp));
/*
* try { //添加更新日志 salesOrderService.addErpSalesPullOrderLog(startTime, endTime,
* shopId, result.getData().getAddCount(), result.getData().getFailCount(),
* result.getData().getUpdCount(), updType); } catch (Exception e) {
* log.info("添加更新日志错误"); }
*/
if (result.getCode() == 0)
return ApiResult.build(HttpStatus.SUCCESS, "SUCCESS");
else
return ApiResult.build(result.getCode(), result.getMsg());
}
/**
* 拉取拼多多接口订单
*
* @param pageNo
* @param pageSize
* @param startTime
* @param endTime
* @param shopId
* @return
* @throws Exception
*/
private ApiResult<ErpSalesPullCountResp> pullPddOrder( String clientId,String clientSecret,String accessToken,Integer pageNo, Integer pageSize, Long startTime, Long endTime, Long shopId) throws Exception {
PopClient client = new PopHttpClient(clientId, clientSecret);
// 调取拼多多接口 pdd.order.list.get 订单列表查询接口(根据成交时间)
PddOrderListGetRequest pddOrderListGetRequest = new PddOrderListGetRequest();
pddOrderListGetRequest.setOrderStatus(5);// 发货状态1待发货2已发货待签收3已签收 5全部
pddOrderListGetRequest.setRefundStatus(5);// 售后状态 1无售后或售后关闭2售后处理中3退款中4 退款成功 5全部
// 开始时间 结束时间不能超过24小时
pddOrderListGetRequest.setStartConfirmAt(startTime);
pddOrderListGetRequest.setEndConfirmAt(endTime);
pddOrderListGetRequest.setPage(pageNo);
pddOrderListGetRequest.setPageSize(pageSize);
ErpSalesPullCountResp resp = new ErpSalesPullCountResp();
resp.setStartTime("2024-03-03 00:00:00");
resp.setEndTime("2024-03-13 23:00:00");
Integer addCount = 0, updCount = 0, failCount = 0;
log.info("开始更新第" + pageNo + "页。。。。。。。");
PddOrderListGetResponse pddOrderListGetResponse = client.syncInvoke(pddOrderListGetRequest, accessToken);
if (pddOrderListGetResponse.getErrorResponse() != null) {
if (pddOrderListGetResponse.getErrorResponse().getErrorCode().intValue() == 10019) {
return ApiResult.build(HttpStatus.UNAUTHORIZED, "Token过期");
} else
return ApiResult.build(HttpStatus.ERROR,
"接口调用失败:" + pddOrderListGetResponse.getErrorResponse().getErrorMsg());
} else {
// 获取到了数据
log.info("" + pageNo + "页。获取到" + pddOrderListGetResponse.getOrderListGetResponse().getOrderList().size()
+ "条数据");
if (pddOrderListGetResponse.getOrderListGetResponse().getTotalCount() > 0) {
for (var item : pddOrderListGetResponse.getOrderListGetResponse().getOrderList()) {
// if(item.getOrderSn().equals("210629-025663970220736")){
// String s= item.getOrderSn();
// }
/*PddOrder pddEntity = new PddOrder();
pddEntity.setBuyer_memo(item.getBuyerMemo());
pddEntity.setCapital_free_discount(item.getCapitalFreeDiscount());
pddEntity.setCity(item.getCity());
pddEntity.setConfirm_status(item.getConfirmStatus());
pddEntity.setConfirm_time(item.getConfirmTime());
pddEntity.setCountry(item.getCountry());
pddEntity.setCreated_time(item.getCreatedTime());
pddEntity.setDiscount_amount(item.getDiscountAmount());
pddEntity.setFree_sf(item.getFreeSf());
pddEntity.setGoods_amount(item.getGoodsAmount());
pddEntity.setGroup_status(item.getGroupStatus());
pddEntity.setIs_lucky_flag(item.getIsLuckyFlag());
pddEntity.setOrderSn(item.getOrderSn());
pddEntity.setOrder_status(item.getOrderStatus());// 订单发货状态1待发货2已发货待签收3已签收 0异常
pddEntity.setPay_amount(item.getPayAmount());
pddEntity.setPay_no(item.getPayNo());
pddEntity.setPay_time(item.getPayTime());
pddEntity.setPay_type(item.getPayType());
pddEntity.setPlatform_discount(item.getPlatformDiscount());
pddEntity.setPostage(item.getPostage());
pddEntity.setProvince(item.getProvince());
pddEntity.setReceive_time(item.getReceiveTime());
pddEntity.setLast_ship_time(item.getLastShipTime());
pddEntity.setReceiver_name(item.getReceiverName());
pddEntity.setReceiver_phone(item.getReceiverPhone());
pddEntity.setAddress(item.getAddress());
pddEntity.setNameKey(extractIndex(item.getReceiverName()));
pddEntity.setPhoneKey(extractIndex(item.getReceiverPhone()));
pddEntity.setAddressKey(extractIndex(item.getAddress()));
pddEntity.setRefund_status(item.getRefundStatus());// 订单售后状态1无售后或售后关闭2售后处理中3退款中4退款成功0异常
pddEntity.setAfter_sales_status(item.getAfterSalesStatus());// 售后状态 0无售后 2买家申请退款待商家处理
// 3退货退款待商家处理 4商家同意退款退款中
// 5平台同意退款退款中 6驳回退款待买家处理
// 7已同意退货退款,待用户发货 8平台处理中 9平台拒绝退款退款关闭
// 10退款成功 11买家撤销 12买家逾期未处理退款失败
// 13买家逾期超过有效期 14换货补寄待商家处理
// 15换货补寄待用户处理 16换货补寄成功 17换货补寄失败
// 18换货补寄待用户确认完成 21待商家同意维修 22待用户确认发货
// 24维修关闭 25维修成功 27待用户确认收货
// 31已同意拒收退款待用户拒收 32补寄待商家发货
pddEntity.setRemark(item.getRemark());
pddEntity.setSeller_discount(item.getSellerDiscount());
pddEntity.setShipping_time(item.getShippingTime());
pddEntity.setTown(item.getTown());
pddEntity.setTracking_number(item.getTrackingNumber());
pddEntity.setTradeType(item.getTradeType());
pddEntity.setUpdated_at(item.getUpdatedAt());
pddEntity.setOrderConfirmTime(DateUtil.strToLongGo(item.getConfirmTime()));
List<PddOrderItem> items = new ArrayList<>();
// items
for (var it : item.getItemList()) {
PddOrderItem pddItem = new PddOrderItem();
pddItem.setGoodsImg(it.getGoodsImg());
pddItem.setGoodsName(it.getGoodsName());
pddItem.setGoodsNum(it.getOuterGoodsId());
pddItem.setGoodsPrice(it.getGoodsPrice());
pddItem.setGoodsSpec(it.getGoodsSpec());
pddItem.setGoodsSpecNum(it.getOuterId());
pddItem.setQuantity(it.getGoodsCount());
items.add(pddItem);
}
pddEntity.setItems(items);
// 开始写入数据库
var result = orderPddService.insertOrder(pddEntity, shopId);
// log.info("订单处理:" +
// item.getOrderSn()+"【结果:"+result.getCode()+"】"+result.getMsg());
if (result.getCode() == EnumResultVo.Exist.getIndex()) {
updCount += 1;
} else if (result.getCode() == EnumResultVo.SUCCESS.getIndex()) {
addCount += 1;
} else {
failCount += 1;
}*/
resp.setAddCount(addCount);
resp.setUpdCount(updCount);
resp.setFailCount(failCount);
}
resp.setTotalRecords(pddOrderListGetResponse.getOrderListGetResponse().getTotalCount());
} else
resp.setTotalRecords(0);
}
return ApiResult.build(HttpStatus.SUCCESS, "SUCCESS", resp);
}
// /**
// * 更新订单状态(根据订单号)
// *
// * @param reqData
// * @param req
// * @return
// * @throws Exception
// */
// @RequestMapping(value = "/pull_order_status", method = RequestMethod.POST)
// public ApiResult<ErpSalesPullCountResp> updOrderStatus(@RequestBody DataRow reqData, HttpServletRequest req)
// throws Exception {
// // String startDate = reqData.getString("startTime");
// // String endDate = reqData.getString("endTime");
// log.info("开始接口更新订单状态");
// Integer shopId = reqData.getInt("shopId");// 拼多多shopId
// String orderS = reqData.getString("orderS");//
//
// ApiResult<ErpSalesPullCountResp> result = null;// 返回结果
//
// String clientId = DataConfigObject.getInstance().getPddClientId();
// String clientSecret = DataConfigObject.getInstance().getPddClientSecret();
// var shop = shopService.getShop(shopId);
// // var settingEntity = thirdSettingService.getEntity(shop.getType());
//
// String accessToken = shop.getSessionKey();// settingEntity.getAccess_token();
// PopClient client = new PopHttpClient(clientId, clientSecret);
//
// PddOrderStatusGetRequest request = new PddOrderStatusGetRequest();
// request.setOrderSns(orderS);
// PddOrderStatusGetResponse response = client.syncInvoke(request, accessToken);
// // System.out.println(JsonUtil.transferToJson(response));
// // 更新订单状态
// if (response.getErrorResponse() != null) {
// if (response.getErrorResponse().getErrorCode().intValue() == 10019) {
// return new ApiResult<>(EnumResultVo.TokenFail.getIndex(), "Token过期");
// } else
// return new ApiResult<>(EnumResultVo.SystemException.getIndex(),
// "接口调用失败:" + response.getErrorResponse().getErrorMsg());
// } else {
// // 获取到了数据
// if (response.getOrderStatusGetResponse().getOrderStatusList().size() > 0) {
// for (var item : response.getOrderStatusGetResponse().getOrderStatusList()) {
// orderPddService.updPddOrderStatus(item.getOrderSn(), item.getOrderStatus(), item.getRefundStatus());
// log.info("更新订单状态:" + JsonUtil.transferToJson(item));
// }
// }
//
// log.info("更新订单状态 完成");
// return new ApiResult<>(EnumResultVo.SUCCESS.getIndex(), "SUCCESS");
//
// }
// }
//
// @RequestMapping(value = "/pull_order_status_all", method = RequestMethod.POST)
// public ApiResult<ErpSalesPullCountResp> updOrderStatusAll(@RequestBody DataRow reqData, HttpServletRequest req)
// throws Exception {
// log.info("开始接口更新订单状态ALL");
// Integer shopId = reqData.getInt("shopId");// 拼多多shopId
// var shop = shopService.getShop(shopId);
// String clientId = DataConfigObject.getInstance().getPddClientId();
// String clientSecret = DataConfigObject.getInstance().getPddClientSecret();
// // 获取店铺信息,判断店铺是否一致
// var shopResult = PddApiUtils.getShopInfo(clientId, clientSecret, shop.getSessionKey());
// if (shopResult.getCode() != EnumResultVo.SUCCESS.getIndex())
// return new ApiResult<>(shopResult.getCode(), shopResult.getMsg());
//
// if (shopResult.getData().getMallId().longValue() != shop.getSellerUserId().longValue()) {
// return new ApiResult<>(EnumResultVo.TokenFail.getIndex(), "该店铺不是授权店铺");
// }
//
// String orderStatus = reqData.getString("orderStatus");
// String refundStatusStr = reqData.getString("refundStatus");
// Integer status = null;
// Integer refundStatus = null;
// if (!StringUtils.isEmpty(orderStatus)) {
// try {
// status = Integer.parseInt(orderStatus);
// } catch (Exception e) {
// }
// }
// if (!StringUtils.isEmpty(refundStatusStr)) {
// try {
// refundStatus = Integer.parseInt(refundStatusStr);
// } catch (Exception e) {
// }
// }
//
// Integer pageIndex = 1;
// Integer pageSize = 50;
//
// // 查询订单
// var result = orderPddService.getOrderListByStatus(pageIndex, pageSize, shopId, status, refundStatus);
// log.info("查询到" + result.getTotalPage() + "页需要更新,总共" + result.getTotalSize() + "条记录");
//
// String orderS = "";
// for (var o : result.getList()) {
// orderS += o.getOrderSn() + ",";
// }
// log.info("开始更新第1页");
// upd(shopId, orderS);
//
// while (result.isHasNextPage()) {
// pageIndex++;
// log.info("开始更新第" + pageIndex + "页");
// result = orderPddService.getOrderListByStatus(pageIndex, pageSize, shopId, status, refundStatus);
//
// String orderS1 = "";
// for (var o : result.getList()) {
// orderS1 += o.getOrderSn() + ",";
// }
// upd(shopId, orderS1);
// }
// log.info("已更新" + pageIndex + "页,总计:" + result.getTotalSize() + "条,更新完成");
// return new ApiResult<>(EnumResultVo.SUCCESS.getIndex(), "SUCCESS");
// }
// private ApiResult<String> upd(Integer shopId, String orderS) throws Exception {
// String clientId = DataConfigObject.getInstance().getPddClientId();
// String clientSecret = DataConfigObject.getInstance().getPddClientSecret();
// var shop = shopService.getShop(shopId);
// // var settingEntity = thirdSettingService.getEntity(shop.getType());
//
// String accessToken = shop.getSessionKey();// settingEntity.getAccess_token();
// PopClient client = new PopHttpClient(clientId, clientSecret);
//
// PddOrderStatusGetRequest request = new PddOrderStatusGetRequest();
// request.setOrderSns(orderS);
// PddOrderStatusGetResponse response = client.syncInvoke(request, accessToken);
// // System.out.println(JsonUtil.transferToJson(response));
// // 更新订单状态
// if (response.getErrorResponse() != null) {
// if (response.getErrorResponse().getErrorCode().intValue() == 10019) {
// return new ApiResult<>(EnumResultVo.TokenFail.getIndex(), "Token过期");
// } else
// return new ApiResult<>(EnumResultVo.SystemException.getIndex(),
// "接口调用失败:" + response.getErrorResponse().getErrorMsg());
// } else {
// // 获取到了数据
// if (response.getOrderStatusGetResponse().getOrderStatusList().size() > 0) {
// for (var item : response.getOrderStatusGetResponse().getOrderStatusList()) {
// orderPddService.updPddOrderStatus(item.getOrderSn(), item.getOrderStatus(), item.getRefundStatus());
// log.info("更新订单状态:" + JsonUtil.transferToJson(item));
// }
// }
//
// log.info("更新订单状态 完成");
// return new ApiResult<>(EnumResultVo.SUCCESS.getIndex(), "SUCCESS");
//
// }
// }
// /**
// * 重复打印
// *
// * @param reqData
// * @return
// * @throws Exception
// */
// @RequestMapping(value = "/pdd_order_repeat_print", method = RequestMethod.POST)
// public ApiResult<String> pdd_order_repeat_print(@RequestBody DataRow reqData) throws Exception {
// if (StringUtils.isEmpty(reqData.get("printName")))
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(), "请选择打印机");
// var orders = orderPddService.getPrintOrderRepeat(reqData.getString("orderNo"));
// if (orders.size() == 0)
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(), "订单物流打印信息不存在");
// Integer total = 0;
// StringBuilder sb = new StringBuilder("");
// for (var order : orders) {
// total += order.getQuantity();
// sb.append(order.getGoodsSpecNum());
// sb.append("(" + order.getGoodsSpec() + ")");
// sb.append(order.getQuantity()).append("件");
// sb.append("[" + order.getLocationNumber() + "]").append("\\n");
// }
// var shop = shopService.getShop(orders.get(0).getShopId());
// StringBuilder remark = new StringBuilder("【" + shop.getNickName() + "】").append("订单:").append(orders.size())
// .append("商品:").append(total).append("件").append("\\n");
//
// if (!StringUtils.isEmpty(orders.get(0).getEncryptedData())) {
// // templateUrl=EnumPddPrintCompany.getValueByName(orders.get(0).getTrackingCompany());
// remark.append(sb.toString()).append("备注:").append(orders.get(0).getRemark());
// String taskId = orders.get(0).getTrackingNumber() + "_" + OrderNumberUtils.getOrderIdByTime();
// StringBuilder printStr = new StringBuilder(
// "{\"ERPId\":303379400,\"cmd\":\"print\",\"requestID\":\"90E06437\",\"task\":{\"documents\":[{\"contents\":[{\"addData\":{\"sender\":{\"address\":{\"city\":\"东莞市\",\"detail\":\"聚新二路42号华衣云商科技\",\"district\":\"大朗镇\",\"province\":\"广东省\"},\"mobile\":\"13018605585\",\"name\":\"杨辉\"}},");
// printStr.append("\"encryptedData\": \"").append(orders.get(0).getEncryptedData()).append("\",");
// printStr.append("\"signature\": \"").append(orders.get(0).getSignature()).append("\",");
// printStr.append(
// "\"templateUrl\":\"http://pinduoduoimg.yangkeduo.com/print_template/2019-08-01/4f0d85f35ca5729ad7df47314c990c31.xml\",\"userid\":\"593374804\",\"ver\":\"3\"},");
// // printStr.append("\"templateUrl\":
// // \"").append("https://commfile.pddpic.com/galerie-go/logistics/9238dbb5-1c4e-445e-bac6-45a6832b4e47.xml").append("\",\"userid\":\"593374804\",\"ver\":\"3\"},");
// printStr.append("{\"data\":{\"height\":120,\"list\":[{\"fontSize\":29,\"height\":120,\"left\":2.08,");
// printStr.append("\"text\": \"").append(remark.toString()).append("\",");
// printStr.append(
// "\"top\":10,\"width\":600}],\"waterdata\":{\"text\":\"\"},\"width\":560},\"templateURL\":\"http://pinduoduoimg.yangkeduo.com/logistics/2019-07-14/5d7e8b5969d954539fcfba3268bbeb3a.xml\"}],");
// // printStr.append("\"top\":10,\"width\":413.52}],\"waterdata\":{\"text\":\"\"},\"width\":560},\"templateURL\":\"").append("https://commfile.pddpic.com/galerie-go/logistics/9238dbb5-1c4e-445e-bac6-45a6832b4e47.xml").append("\"}],");
// printStr.append("\"documentID\": \"").append(taskId).append("\"}],");
// printStr.append("\"notifyType\": [\"print\"],\"preview\": false,\"previewType\": \"image\",");
// printStr.append("\"printer\": \"").append(reqData.getString("printName")).append("\",");
// printStr.append("\"taskID\": \"").append(taskId).append("\"},");
// printStr.append("\"version\": \"1.0\"}");
// return new ApiResult<>(EnumResultVo.SUCCESS.getIndex(), "成功", printStr.toString());
// }
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(), "没有原始打单数据");
//
// }
//
// @RequestMapping(value = "/pdd_order_print", method = RequestMethod.POST)
// public ApiResult<String> pdd_order_print(@RequestBody DataRow reqData) throws Exception {
// if (StringUtils.isEmpty(reqData.get("printName")))
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(), "请选择打印机");
// var orders = orderPddService.getPrintOrderRepeatNumber(reqData.getString("trackingNumber"));
// if (orders.size() == 0)
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(), "订单物流打印信息不存在");
// Integer total = 0;
// StringBuilder sb = new StringBuilder("");
// for (var order : orders) {
// total += order.getQuantity();
// sb.append(order.getGoodsSpecNum());
// sb.append("(" + order.getGoodsSpec() + ")");
// sb.append(order.getQuantity()).append("件,");
// sb.append("[" + order.getLocationNumber() + "]").append("\\n");
// }
// var shop = shopService.getShop(orders.get(0).getShopId());
// StringBuilder remark = new StringBuilder("【" + shop.getNickName() + "】").append("订单:").append(orders.size())
// .append("商品:").append(total).append("件").append("\\n");
//
// if (!StringUtils.isEmpty(orders.get(0).getEncryptedData())) {
// // String
// // templateUrl=EnumPddPrintCompany.getValueByName(orders.get(0).getTrackingCompany());
// remark.append(sb.toString()).append("备注:").append(orders.get(0).getRemark());
// String taskId = orders.get(0).getTrackingNumber() + "_" + OrderNumberUtils.getOrderIdByTime();
// StringBuilder printStr = new StringBuilder(
// "{\"ERPId\":303379400,\"cmd\":\"print\",\"requestID\":\"90E06437\",\"task\":{\"documents\":[{\"contents\":[{\"addData\":{\"sender\":{\"address\":{\"city\":\"东莞市\",\"detail\":\"聚新二路42号华衣云商科技\",\"district\":\"大朗镇\",\"province\":\"广东省\"},\"mobile\":\"13018605585\",\"name\":\"杨辉\"}},");
// printStr.append("\"encryptedData\": \"").append(orders.get(0).getEncryptedData()).append("\",");
// printStr.append("\"signature\": \"").append(orders.get(0).getSignature()).append("\",");
// printStr.append(
// "\"templateUrl\":\"http://pinduoduoimg.yangkeduo.com/print_template/2019-08-01/4f0d85f35ca5729ad7df47314c990c31.xml\",\"userid\":\"593374804\",\"ver\":\"3\"},");
// // printStr.append("\"templateUrl\":
// // \"").append("http://pinduoduoimg.yangkeduo.com/print_template/2019-08-01/4f0d85f35ca5729ad7df47314c990c31.xml").append("\",\"userid\":\"593374804\",\"ver\":\"3\"},");
// printStr.append("{\"data\":{\"height\":120,\"list\":[{\"fontSize\":29,\"height\":120,\"left\":2.08,");
// printStr.append("\"text\": \"").append(remark.toString()).append("\",");
// printStr.append(
// "\"top\":10,\"width\":600}],\"waterdata\":{\"text\":\"\"},\"width\":560},\"templateURL\":\"http://pinduoduoimg.yangkeduo.com/logistics/2019-07-14/5d7e8b5969d954539fcfba3268bbeb3a.xml\"}],");
// // printStr.append("\"top\":10,\"width\":413.52}],\"waterdata\":{\"text\":\"\"},\"width\":560},\"templateURL\":\"").append("http://pinduoduoimg.yangkeduo.com/print_template/2019-08-01/4f0d85f35ca5729ad7df47314c990c31.xml").append("\"}],");
// printStr.append("\"documentID\": \"").append(taskId).append("\"}],");
// printStr.append("\"notifyType\": [\"print\"],\"preview\": false,\"previewType\": \"image\",");
// printStr.append("\"printer\": \"").append(reqData.getString("printName")).append("\",");
// printStr.append("\"taskID\": \"").append(taskId).append("\"},");
// printStr.append("\"version\": \"1.0\"}");
// for (var order : orders) {
// orderPddService.updPddOrderResult(order.getOrderId(), "打印成功", 1, DateUtil.getCurrentDateTime());
// }
// return new ApiResult<>(EnumResultVo.SUCCESS.getIndex(), "成功", printStr.toString());
// }
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(), "没有原始打单数据");
//
// }
//
// @RequestMapping(value = "/pdd_order_print_code", method = RequestMethod.POST)
// public ApiResult<String> testPddPrint(@RequestBody DataRow reqData) throws Exception {
// if (StringUtils.isEmpty(reqData.get("company")))
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(), "请选择快递公司");
//
// String clientId = DataConfigObject.getInstance().getPddClientId();
// String clientSecret = DataConfigObject.getInstance().getPddClientSecret();
//
// PopClient client = new PopHttpClient(clientId, clientSecret);
// // 使用东方概念旗舰店授权打单所有要用东方概念旗舰店accessToken获取电子面单
// /*
// * var dfgnShop = shopService.getShop(5); //检查获取单号的token是否过期 String accessToken5
// * = dfgnShop.getSessionKey(); PddOrderStatusGetRequest request5 = new
// * PddOrderStatusGetRequest(); request5.setOrderSns("");
// * PddOrderStatusGetResponse response5 = client.syncInvoke(request5,
// * accessToken5);
// *
// * if (response5.getErrorResponse() != null &&
// * response5.getErrorResponse().getErrorCode() ==10019) { return new
// * ApiResult<>(EnumResultVo.TokenFail.getIndex(),"东方符号店铺token过期","5"); }
// *
// * var checkTokenResult =
// * PddApiUtils.getShopInfo(clientId,clientSecret,accessToken5);
// * if(checkTokenResult.getData().getMallId().longValue() != 593374804L){ return
// * new ApiResult<>(EnumResultVo.TokenFail.getIndex(),"东方符号店铺token过期","5"); }
// */
// Integer shopId = reqData.getInt("shopId");
// var shop = shopService.getShop(shopId);
// synchronized (this) {
// var orders = (ArrayList) reqData.getObject("orders");
// for (var orderSn : orders) {
// // 查询需要打印的订单
// var printOrderRes = orderPddService.getPrintOrderList(String.valueOf(orderSn),
// reqData.getInt("isHebing"), reqData.getString("goodsNum"));
// if (printOrderRes.getCode() > 0) {
// log.info("订单不符号打印条件:" + printOrderRes.getMsg());
// continue;
// }
// var orderList = printOrderRes.getData().getOrders();
// System.out.println("订单数:" + orderList.size());
// String accessToken = shop.getSessionKey();// settingEntity.getAccess_token();
// PddOrderStatusGetRequest request = new PddOrderStatusGetRequest();
//
// StringBuilder orderSns = new StringBuilder();
// for (var order : orderList) {
// orderSns.append(order.getOrderSn()).append(",");
// }
// request.setOrderSns(orderSns.toString());
//
// PddOrderStatusGetResponse response = client.syncInvoke(request, accessToken);
//
// // 检查订单状态是否存在退款
// if (response.getErrorResponse() != null) {
// if (response.getErrorResponse().getErrorCode() == 10019) {
// return new ApiResult<>(EnumResultVo.TokenFail.getIndex(), "token过期", shopId.toString());
// } else {
// log.error("拼多多订单打印接口请求错误:" + orderSns.toString() + response.getErrorResponse().getErrorMsg());
// continue;
// }
// }
//
// for (var o : response.getOrderStatusGetResponse().getOrderStatusList()) {
// if (o.getOrderStatus().intValue() != 1 || o.getRefundStatus().intValue() != 1) {
// orderPddService.updPddOrderStatus(o.getOrderSn(), o.getOrderStatus(), o.getRefundStatus());
// continue;
// }
// }
//
// String encryptedData = "";
// String signature = "";
// String billCode = "";
// var printRes = getPddPrint(orderList, reqData.getString("company"));
// if (!StringUtils.isEmpty(printRes.getJSONObject("error"))) {
// orderList.forEach(o -> orderPddService.updPddOrderResult(o.getOrderId(),
// printRes.getJSONObject("error").getString("sub_msg"), 0, null));
// continue;
// }
// if (!StringUtils.isEmpty(printRes.getString("waybill_code"))) {
// encryptedData = printRes.getString("encryptedData");
// signature = printRes.getString("signature");
// billCode = printRes.getString("waybill_code");
// // 3.更新库存确认到仓库
// for (var o : orderList) {
// String company = EnumPddPrintCompany.getName(reqData.getString("company"));
// var result = orderPddService.updPddOrderPrint(o, company, billCode, encryptedData, signature);
// log.info("拼多多订单:" + o.getOrderSn() + "物流:" + billCode + "结果:" + result.getMsg());
// }
// }
// }
// return new ApiResult<>(EnumResultVo.SUCCESS.getIndex(), "订单取号完成");
// }
//
// }
//
// public JSONObject getPddPrint(List<OrderViewModel> orders, String company) throws Exception {
// String clientId = DataConfigObject.getInstance().getPddClientId();
// String clientSecret = DataConfigObject.getInstance().getPddClientSecret();
//
// PopClient client = new PopHttpClient(clientId, clientSecret);
// var order = orders.get(0);
// var dfgnShop = shopService.getShop(order.getShopId());// 固定使用东方概念旗舰店accessToken
// String accessToken = dfgnShop.getSessionKey();// thirdSettingService.getEntity(5).getAccess_token();
//
// PddWaybillGetRequest request = new PddWaybillGetRequest();
//
// PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequest paramWaybillCloudPrintApplyNewRequest = new PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequest();
// paramWaybillCloudPrintApplyNewRequest.setNeedEncrypt(false);
//
// PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestSender sender = new PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestSender();
//
// PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestSenderAddress address = new PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestSenderAddress();
//
// address.setProvince("广东省");
// address.setCity("东莞市");
// address.setDistrict("大朗镇");
// // 百货店地址
// if(order.getShopId()==18){
// address.setDetail(company.equals("JTSD") ? "聚新2路42号" : "聚新二路42号华衣云商科技");
// }
// // 东方店地址
// if(order.getShopId()==5){
// address.setDetail("聚新二路42号华衣云商科技");
// }
//
// sender.setAddress(address);
// sender.setMobile("15920623872");
// sender.setName("胡生");
// sender.setPhone("15920623872");
//
// paramWaybillCloudPrintApplyNewRequest.setSender(sender);
// List<PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItem> tradeOrderInfoDtos = new ArrayList<>();
//
// PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItem item = new PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItem();
// // item.setLogisticsServices("{ "SVC-COD": { "value": "200" } }");
// item.setObjectId("str");
//
// PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItemOrderInfo orderInfo = new PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItemOrderInfo();
// orderInfo.setOrderChannelsType("PDD");
// List<String> tradeOrderList = new ArrayList<String>();
// orders.forEach(i -> tradeOrderList.add(i.getOrderSn()));
// // tradeOrderList.add(order.getOrderSn());
// orderInfo.setTradeOrderList(tradeOrderList);
// item.setOrderInfo(orderInfo);
//
// PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItemPackageInfo packageInfo = new PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItemPackageInfo();
// packageInfo.setGoodsDescription("str");
// packageInfo.setId("str");
// List<PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItemPackageInfoItemsItem> items = new ArrayList<>();
//
// PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItemPackageInfoItemsItem item1 = new PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItemPackageInfoItemsItem();
// item1.setCount(1);
// item1.setName("衣服");
// items.add(item1);
// packageInfo.setItems(items);
// packageInfo.setPackagingDescription("");
// packageInfo.setTotalPackagesCount(0);
// packageInfo.setVolume(0L);
// packageInfo.setWeight(0L);
// item.setPackageInfo(packageInfo);
//
// PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItemRecipient recipient = new PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItemRecipient();
//
// PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItemRecipientAddress address1 = new PddWaybillGetRequest.ParamWaybillCloudPrintApplyNewRequestTradeOrderInfoDtosItemRecipientAddress();
// address1.setCountry("中国");
// address1.setProvince(order.getProvince());
// address1.setCity(order.getCity());
// address1.setDistrict(order.getTown());
// address1.setDetail(order.getAddress());
// // address.setTown();
// recipient.setAddress(address1);
// recipient.setMobile(order.getReceiverPhone());
// recipient.setName(order.getReceiverName());
// recipient.setPhone(order.getReceiverPhone());
// item.setRecipient(recipient);
// item.setTemplateUrl(EnumPddPrintCompany.getValue(company));
// item.setUserId(0L);
// tradeOrderInfoDtos.add(item);
// paramWaybillCloudPrintApplyNewRequest.setTradeOrderInfoDtos(tradeOrderInfoDtos);
// paramWaybillCloudPrintApplyNewRequest.setWpCode(company);
// request.setParamWaybillCloudPrintApplyNewRequest(paramWaybillCloudPrintApplyNewRequest);
// try {
// JSONObject resObj = new JSONObject();
//
// // log.info(JsonUtil.transferToJson(request));
//
// PddWaybillGetResponse response = client.syncInvoke(request, accessToken);
// String jsonStr = JsonUtil.transferToJson(response);
// var res = JSONObject.parseObject(jsonStr);
// if (!StringUtils.isEmpty(res.getJSONObject("error_response"))) {
// resObj.put("error", res.getJSONObject("error_response"));
// return resObj;
// }
// // log.info("获取面单密文结果:"+res);
// var resObjs = res.getJSONObject("pdd_waybill_get_response").getJSONArray("modules");
// for (int i = 0; i < resObjs.size(); i++) {
// resObj = JSONObject.parseObject(resObjs.getJSONObject(i).getString("print_data"));
// resObj.put("waybill_code", resObjs.getJSONObject(i).getString("waybill_code"));
// }
// // String
// // resJsonStr="{\"pdd_waybill_get_response\":{\"modules\":[{\"object_id\":\"str\",\"print_data\":\"{\\\"encryptedData\\\":\\\"a67d4819d0cd21554e9437e0bc2caa629864b0effd1aec65833023f78e93733ca9eec3468dc487b24682b9d64f176ca6bb3f602c2b383571c725bae8ff84957579b574f231f3f4bff51447906ce0566b74210e61bb9379a1ad3647cd9c5648fc1e2a627dde855be135aeadb4dffd020554bf84a05f39d50f49bf8875895fc79ec23933bbf375987929f129b6bd30521b8259c104e564a45b5d2c4d3ccd45aa9dae43e27c34c91c6be269d3028ff1f579a866bed94696a9d697851edb30ee8411975486bc993fee8c4cad2525e0e33638978c8fcb8dea75a1d05d2b586ff0174bc18a3a0680e0ae48d73444fc440fb55f7b2a0485f4d2d7396601ba9ea295d895023b4d2299cb87cca5be2a147bc62f078e716dcce4f563215d8098b6eefe7df465c05a88f80098f6175441f711f5ca193c60b61435c58c5d32fa6a39b9b8a3699c4411dca8921be94ba5fd5de113a76c34eb0bad6fcbbfcfe4eacd400a1ff63e51d603c8aaada8969165607d149c0e6bcf724924fcacc9248818a219719e2c46199ced5ada6f6b42a2c3555fddcfe2fb5309cae5dca4a0c5d389ecee8bcf66062ff3aa7c09ee6aa9ebfa86139a7a4adce21cceb4729e0a448f762f6d5b379790093943651240f93932eb106d25341df44bb4dfb2e9b5ed3c827a6c063585cf2fbd9b5886886efea7ac89fb734130da262a22b282c8a8bbddc2d79fcd35814e3fa24c3538dac9bbdb096054263f7f2541191c0b1aa5207f8be1ae1292aea443d3fabf1fb837b58758738eebe494941af774ace3ac436420fc4c15b41b97c5553c1483ecfb87c3691e80f0d30e75d4339bc7e5d9de6ccf3e65d1008ba61d6803b0e8b874ab353ccb368536cc35b4ddde1f43d509ee8146ffd6b7a4841299dba4512af7b533a44fcabce1224c91ca9785659abf2f5f4f8dd2ccc6c264f7ed25587ab5b023ae2089e748bdf34eca6948198d366e879863b41cfe558bd0ce9f6c5361c1ea29d905e5e73b42f945e573cd9b519f17629fa8134a8dd4cdfd48aac911ea2140ece7269d71e8230ab6fff4ab9f08771f849cf3eb3a34f41743fd7b4f3e5532c6fc98a38cd63f7a48750d056fd25fad54f31ce2e8c3f4a679baf83f18202280c8069fe3c5c942cc5d95412b9ca707c62c0ba3c19f88bd4c518a6bdfda6670cf84a7ab6b23d4a8bb996fc9c6d8dc65318a82e5e637eb2aa2a91e3a146f01fecb2d02f6e768c90f72296d56563e9cf1e7d6d377ffcd7817c00d9db2e5abc93e515b23218e92df1f23e774580caee71824adfcc4a7d3c36f9113954f03eb84b7acecee2eb77d38935af1ec1ff0f7a5c965616166a5d9f427b5f5d497f83dfe67acb745f1e887e9c2af61f79fa802293e18a7d6a1f4666ff4913249f708623d5b619e7824c199474395b26cc26613b74d00a653ec4d3bcb580629a1716610a5341242ffbc10b176cddd186aa336f9cbe3fbaa2e9904c52c9e92da89f36539aba33e8883dd4b2b0792b8c93ec80508fb476d96fa689c3171135a3c03ee17c5e7f20387b2948bc4b9c371c1bbe57f4efa3b75054d77e191bcb8339c61c7d4efac045455da183eed3e331ec26fcc60e768f5\\\",\\\"signature\\\":\\\"g/C/uwNK5sTXC07e9z4KGoykKqoEuAL/txQtIGKCM6UMBkY1WmTpM43T8ylaoq0nsa3pEQBoWuu1QreS7kUAXU8egugpr8PMGnVg5plrDkAa/zaOAV+8q8xv3dR/7vU/VBmCWcR3z3dmlRBXNomyW6KNmXTeH1vh3tQPtPllho4=\\\",\\\"templateUrl\\\":\\\"https://file-link.pinduoduo.com/jtsd_one\\\",\\\"ver\\\":\\\"3\\\"}\",\"waybill_code\":\"JT5049988959708\"}]}}";
// /*
// * var resObjs=
// * JSONObject.parseObject(resJsonStr).getJSONObject("pdd_waybill_get_response").
// * getJSONArray("modules"); for(int i=0;i<resObjs.size();i++) { resObj =
// * JSONObject.parseObject(resObjs.getJSONObject(i).getString("print_data"));
// * resObj.put("waybill_code",resObjs.getJSONObject(i).getString("waybill_code"))
// * ; }
// */
// return resObj;
// } catch (Exception e) {
// return null;
// }
// }
//
// @RequestMapping(value = "/pdd_order_print_select_hebing", method = RequestMethod.POST)
// public ApiResult<String> pdd_order_print_select_hebing(@RequestBody DataRow reqData) throws Exception {
// if (StringUtils.isEmpty(reqData.get("company")))
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(), "请选择快递公司");
// var orders = (ArrayList) reqData.getObject("orders");
// if (orders.isEmpty())
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(), "请选择需要发货的订单");
//
// String clientId = DataConfigObject.getInstance().getPddClientId();
// String clientSecret = DataConfigObject.getInstance().getPddClientSecret();
//
// PopClient client = new PopHttpClient(clientId, clientSecret);
// // 检查获取单号的token是否过期
///* var dfgnShop = shopService.getShop(5);
// String accessToken5 = dfgnShop.getSessionKey();
// PddOrderStatusGetRequest request5 = new PddOrderStatusGetRequest();
// request5.setOrderSns("");
// PddOrderStatusGetResponse response5 = client.syncInvoke(request5, accessToken5);
//
// if (response5.getErrorResponse() != null && response5.getErrorResponse().getErrorCode() == 10019) {
// return new ApiResult<>(EnumResultVo.TokenFail.getIndex(), "东方符号店铺token过期", "5");
// }
//
// var checkTokenResult = PddApiUtils.getShopInfo(clientId, clientSecret, accessToken5);
// if (checkTokenResult.getData().getMallId().longValue() != 593374804L) {
// return new ApiResult<>(EnumResultVo.TokenFail.getIndex(), "东方符号店铺token过期", "5");
// }*/
//
// Integer shopId = reqData.getInt("shopId");
// var shop = shopService.getShop(shopId);
//
// var printOrders = orderPddService.getPrintOrderSelectList(orders);
//
// String accessToken = shop.getSessionKey();// settingEntity.getAccess_token();
// PddOrderStatusGetRequest request = new PddOrderStatusGetRequest();
//
// StringBuilder orderSns = new StringBuilder();
// for (var order : printOrders.getData()) {
// orderSns.append(order.getOrderSn()).append(",");
// }
// request.setOrderSns(orderSns.toString());
//
// PddOrderStatusGetResponse response = client.syncInvoke(request, accessToken);
//
// // 检查订单状态是否存在退款
// if (response.getErrorResponse() != null) {
// if (response.getErrorResponse().getErrorCode() == 10019) {
// return new ApiResult<>(EnumResultVo.TokenFail.getIndex(), "token过期", shopId.toString());
// } else {
// return new ApiResult<>(EnumResultVo.Fail.getIndex(),
// "拼多多接口请求错误" + response.getErrorResponse().getErrorMsg());
// }
// }
//
// for (var o : response.getOrderStatusGetResponse().getOrderStatusList()) {
// if (o.getOrderStatus().intValue() != 1 || o.getRefundStatus().intValue() != 1) {
// orderPddService.updPddOrderStatus(o.getOrderSn(), o.getOrderStatus(), o.getRefundStatus());
// return new ApiResult<>(EnumResultVo.SystemException.getIndex(), orderSns.toString() + "订单状态已发货或已申请退款");
// }
// }
//
// var checkRes = orderPddService.checkPrint(printOrders.getData());
//
// if (checkRes.getCode() > 0)
// return new ApiResult<>(checkRes.getCode(), checkRes.getMsg());
// // 取电子面单号
// var printRes = getPddPrint(printOrders.getData(), reqData.getString("company"));
// if (!StringUtils.isEmpty(printRes.getJSONObject("error"))) {
// printOrders.getData().forEach(o -> orderPddService.updPddOrderResult(o.getOrderId(),
// printRes.getJSONObject("error").getString("sub_msg"), 0, null));
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(),
// orderSns.toString() + printRes.getJSONObject("error").getString("sub_msg"));
// }
// String billCode = "";
// String encryptedData = "";
// String signature = "";
// if (!StringUtils.isEmpty(printRes.getString("waybill_code"))) {
// billCode = printRes.getString("waybill_code");
// encryptedData = printRes.getString("encryptedData");
// signature = printRes.getString("signature");
// // 3.更新库存确认到仓库
// for (var o : printOrders.getData()) {
// var result = orderPddService.updPddOrderPrint(o,
// EnumPddPrintCompany.getName(reqData.getString("company")), billCode, encryptedData, signature);
// log.info("拼多多订单:" + o.getOrderSn() + "物流:" + billCode + "结果:" + result.getMsg());
// }
// }
// return new ApiResult<>(EnumResultVo.SUCCESS.getIndex(), "订单取号完成");
// }
//
// @RequestMapping(value = "/pdd_order_send", method = RequestMethod.POST)
// public ApiResult<String> pdd_order_send(@RequestBody DataRow reqData) throws Exception {
// String clientId = DataConfigObject.getInstance().getPddClientId();
// String clientSecret = DataConfigObject.getInstance().getPddClientSecret();
// var shop = shopService.getShop(reqData.getInt("shopId"));
//
// PopClient client = new PopHttpClient(clientId, clientSecret);
//
// String accessToken = shop.getSessionKey();
// // 获取店铺信息,判断店铺是否一致
// var shopResult = PddApiUtils.getShopInfo(clientId, clientSecret, accessToken);
// if (shopResult.getCode() != EnumResultVo.SUCCESS.getIndex())
// return new ApiResult<>(shopResult.getCode(), shopResult.getMsg());
//
// if (shopResult.getData().getMallId().longValue() != shop.getSellerUserId().longValue()) {
// return new ApiResult<>(EnumResultVo.TokenFail.getIndex(), "该店铺不是授权店铺");
// }
//
// var orders = (ArrayList) reqData.getObject("orders");
// if (orders.isEmpty())
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(), "请选择需要发货的订单");
// for (var orderNo : orders) {
// var order = orderPddService.getOrder((String) orderNo);
// PddLogisticsOnlineSendRequest request = new PddLogisticsOnlineSendRequest();
// request.setLogisticsId(orderPddService.getPddLogisticsCompanyId(order.getTracking_company()).longValue());// 快递公司编号
// request.setOrderSn(order.getOrderSn());// 订单编号
// request.setTrackingNumber(order.getTracking_number());// 快递公司单号
// PddLogisticsOnlineSendResponse response = client.syncInvoke(request, accessToken);
// if (!StringUtils.isEmpty(response.getErrorResponse())) {
// orderPddService.updPddOrderResult(order.getId(), response.getErrorResponse().getErrorMsg(), 1, null);
// continue;
// }
// if (response.getLogisticsOnlineSendResponse().getIsSuccess()) {
// var result = orderPddService.orderSend(order);
// log.info("PDD订单发货" + result.getMsg());
// }
// }
// return new ApiResult<>(EnumResultVo.SUCCESS.getIndex(), "成功");
// }
//
// /**
// * 回收单号
// *
// * @param reqData
// * @return
// */
// @RequestMapping(value = "/pdd_cancel_print", method = RequestMethod.POST)
// public ApiResult<String> pdd_cancel_print(@RequestBody DataRow reqData) {
// String clientId = DataConfigObject.getInstance().getPddClientId();
// String clientSecret = DataConfigObject.getInstance().getPddClientSecret();
// PopClient client = new PopHttpClient(clientId, clientSecret);
// // 固定使用东方概念旗舰店accessToken
// var dfgnShop = shopService.getShop(18);
// String accessToken = dfgnShop.getSessionKey();
// var orders = orderPddService.getPrintOrderRepeat(reqData.getString("orderNo"));
// try {
// // 取消电子面单
// PddWaybillCancelRequest request = new PddWaybillCancelRequest();
// request.setWaybillCode(orders.get(0).getTrackingNumber());
// request.setWpCode(EnumPddPrintCompany.getIndexByName(orders.get(0).getTrackingCompany()));
// PddWaybillCancelResponse response = client.syncInvoke(request, accessToken);
// String jsonStr = JsonUtil.transferToJson(response);
// var res = JSONObject.parseObject(jsonStr);
// if (!StringUtils.isEmpty(res.getJSONObject("error_response"))) {
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(),
// res.getJSONObject("error_response").getString("sub_msg"));
// }
// if (!StringUtils.isEmpty(res.getJSONObject("pdd_waybill_cancel_response"))) {
// if (res.getJSONObject("pdd_waybill_cancel_response").getBoolean("cancel_result")) {
// for (var order : orders) {
// orderPddService.cancelOrderPrint(order.getOrderId());
// }
// return new ApiResult<>(EnumResultVo.SUCCESS.getIndex(), "成功");
// } else
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(), "取消电子面单失败");
// }
// } catch (Exception e) {
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(), "系统异常");
// }
// return new ApiResult<>(EnumResultVo.ParamsError.getIndex(), "取消电子面单失败");
//
// }
//
}