using MyCode.Project.Domain.Message.Request.JackYun; using MyCode.Project.Infrastructure.Common; using MyCode.Project.Infrastructure.Enumeration; using MyCode.Project.Infrastructure.Exceptions; using MyCode.Project.Infrastructure.JackYun; using System; using System.Collections.Generic; namespace MyCode.Project.Services.Implementation { public class JackYunService : ServiceBase , IJackYunService { /// /// 请求开放平台服务 /// /// 开放接口方法名 /// 开放接口版本号(null表示默认) /// 请求业务数据 /// OpenResponse返回对象 public JackyunResponse Call(string method, string version, BaseRequestBizData bizData) { //接口返回值 JackyunResponse response = null; //返回值字符串 string strResponse = null; try { //请求吉客云开放接口。 strResponse = JackyunOpenHttpUtils.Post(method, version, bizData); } catch (Exception ex) { response = new JackyunResponse(); response.onFail(ex.Message, "CLIENT_EXCEPTION"); return response; } return JsonHelper.ToObject(strResponse); } #region 订单查询 /// /// 订单查询 /// public string testTradeFullInfoGet() { int total = 1; OrderTradeFullInfoGetRequestBizData requestBizData = new OrderTradeFullInfoGetRequestBizData(); string value = "2025-06-15 00:00:00";// DateTime.Now.Date.AddDays(-5).ToString("yyyy-MM-dd HH:mm:ss") ; string value1 = "2025-06-20 00:00:00";//DateTime.Now.Date.ToString("yyyy-MM-dd HH:mm:ss"); requestBizData.StartModified = "";// DateTime.ParseExact(value, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.EndModified = ""; //DateTime.ParseExact(value1, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.TradeNo = ""; requestBizData.HasTotal = total; requestBizData.PageSize = 200; requestBizData.PageIndex = 0; requestBizData.Fields = "goodsDetail.barcode,tradeNo,orderNo,shopName,companyName,warehouseName,logisticName,mainPostid,goodsDetail.goodsNo,flagNames,columnExt,sourceAfterNo,goodsDetail.outerId,pickUpCode,expense.expenseFee,expense.expenseItemName,billDate,goodsPlatDiscountFee,goodsDetail.shareOrderDiscountFee,goodsDetail.shareOrderPlatDiscountFee,customizeGoodsColumn9,goodsDetail.goodsId,goodsDetail.sellCount,goodsDetail.needProcessCount,goodsDetail.baseUnitSellCount,goodsDetail.assessmentCost,goodsDetail.compassSourceContentTypem,sourceTradeNo,shopId,warehouseId,scrollId"; requestBizData.StartCreated = "";// DateTime.ParseExact(value, "yyyy -MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.EndCreated = "";// DateTime.ParseExact(value1, "yyyy -MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.StartAuditTime = "";// DateTime.ParseExact(value, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.EndAuditTime = "";// DateTime.ParseExact(value1, "yyyy -MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.StartConsignTime = value;// value;// DateTime.ParseExact(value, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.EndConsignTime = value1;// value1;// DateTime.ParseExact(value1, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); //requestBizData.TradeStatus = 1010; //requestBizData.TradeType = 1; requestBizData.SourceTradeNos = ""; requestBizData.ShopIds = null;// new long[] { 378761130654261100, 378761130654261100 }; string lggl = JsonHelper.ToJson(requestBizData); LogHelper.Info(lggl); JackyunResponse response = Call(EnumAttribute.GetAttribute(ApiEnum.TRADEFULLINFOGET).Value, "1.0", requestBizData); string ll = JsonHelper.ToJson(response); LogHelper.Info(ll); List trades = new List(); if (response.code == "200") { var orderjson= JsonHelper.ToJson(response.result); var list1 = JsonHelper.ToObject(orderjson); int pageIndex = 1; while (list1.data.trades !=null && list1.data.trades.Count>0) { trades.AddRange(list1.data.trades); requestBizData.PageIndex = pageIndex; pageIndex++; response = Call(EnumAttribute.GetAttribute(ApiEnum.TRADEFULLINFOGET).Value, "1.0", requestBizData); if (response.code == "200") { orderjson = JsonHelper.ToJson(response.result); list1 = JsonHelper.ToObject(orderjson); } } } if (trades.Count > 0) SetOrder(trades); return ll; } #endregion #region 订单查询 /// /// 订单查询 /// /// 截止日期 /// /// public List testTradeFullInfoGet(DateTime now ) { int total = 1; OrderTradeFullInfoGetRequestBizData requestBizData = new OrderTradeFullInfoGetRequestBizData(); //string value = "2025-06-15 00:00:00";// DateTime.Now.Date.AddDays(-5).ToString("yyyy-MM-dd HH:mm:ss") ; //string value1 = "2025-06-20 00:00:00";//DateTime.Now.Date.ToString("yyyy-MM-dd HH:mm:ss"); string value = now.Date.AddDays(-5).ToString("yyyy-MM-dd"); string value1 = now.Date.ToString("yyyy-MM-dd"); requestBizData.StartModified = "";// DateTime.ParseExact(value, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.EndModified = ""; //DateTime.ParseExact(value1, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.TradeNo = ""; requestBizData.HasTotal = total; requestBizData.PageSize = 200; requestBizData.PageIndex = 0; requestBizData.Fields = "goodsDetail.barcode,tradeNo,orderNo,shopName,companyName,warehouseName,logisticName,mainPostid,goodsDetail.goodsNo,flagNames,columnExt,sourceAfterNo,goodsDetail.outerId,pickUpCode,expense.expenseFee,expense.expenseItemName,billDate,goodsPlatDiscountFee,goodsDetail.shareOrderDiscountFee,goodsDetail.shareOrderPlatDiscountFee,customizeGoodsColumn9,goodsDetail.goodsId,goodsDetail.sellCount,goodsDetail.needProcessCount,goodsDetail.baseUnitSellCount,goodsDetail.assessmentCost,goodsDetail.compassSourceContentTypem,sourceTradeNo,shopId,warehouseId,scrollId"; requestBizData.StartCreated = "";// DateTime.ParseExact(value, "yyyy -MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.EndCreated = "";// DateTime.ParseExact(value1, "yyyy -MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.StartAuditTime = "";// DateTime.ParseExact(value, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.EndAuditTime = "";// DateTime.ParseExact(value1, "yyyy -MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.StartConsignTime = value;// value;// DateTime.ParseExact(value, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); requestBizData.EndConsignTime = value1;// value1;// DateTime.ParseExact(value1, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None); //requestBizData.TradeStatus = 1010; //requestBizData.TradeType = 1; requestBizData.SourceTradeNos = ""; requestBizData.ShopIds = null;// new long[] { 378761130654261100, 378761130654261100 }; string lggl = JsonHelper.ToJson(requestBizData); LogHelper.Info(lggl); JackyunResponse response = Call(EnumAttribute.GetAttribute(ApiEnum.TRADEFULLINFOGET).Value, "1.0", requestBizData); string ll = JsonHelper.ToJson(response); LogHelper.Info(ll); List trades = new List(); if (response.code == "200") { var orderjson = JsonHelper.ToJson(response.result); var list1 = JsonHelper.ToObject(orderjson); int pageIndex = 1; while (list1.data.trades != null && list1.data.trades.Count > 0) { trades.AddRange(list1.data.trades); requestBizData.PageIndex = pageIndex; pageIndex++; response = Call(EnumAttribute.GetAttribute(ApiEnum.TRADEFULLINFOGET).Value, "1.0", requestBizData); if (response.code == "200") { orderjson = JsonHelper.ToJson(response.result); list1 = JsonHelper.ToObject(orderjson); } } } else { string msg = response.msg; throw new BaseException(msg); } if (trades.Count > 0) SetOrder(trades); return trades; } #endregion } }