mirror of
http://git.coreshop.cn/jianweie/coreshoppro.git
synced 2025-12-06 18:13:26 +08:00
【新增】快递物流查询接口新增v2版本,实现v1与v2版本切换使用。
This commit is contained in:
@@ -612,6 +612,10 @@ namespace CoreCms.Net.Configuration
|
||||
/// <summary>
|
||||
/// 易源接口授权key
|
||||
/// </summary>
|
||||
public const string ShowApiLogisticsVersion = "showApiLogisticsVersion";
|
||||
/// <summary>
|
||||
/// 易源接口授权key
|
||||
/// </summary>
|
||||
public const string ShowApiAppid = "showApiAppid";
|
||||
/// <summary>
|
||||
/// 易源接口授权密钥
|
||||
|
||||
@@ -204,6 +204,7 @@ namespace CoreCms.Net.Configuration
|
||||
//客服ID
|
||||
di.Add(SystemSettingConstVars.EntId, new DictionaryKeyValues() { sKey = "客服ID", sValue = "" });
|
||||
//易源接口授权
|
||||
di.Add(SystemSettingConstVars.ShowApiLogisticsVersion, new DictionaryKeyValues() { sKey = "物流接口版本", sValue = "1" });
|
||||
di.Add(SystemSettingConstVars.ShowApiAppid, new DictionaryKeyValues() { sKey = "AppId", sValue = "" });
|
||||
di.Add(SystemSettingConstVars.ShowApiSecret, new DictionaryKeyValues() { sKey = "授权Secret", sValue = "" });
|
||||
|
||||
|
||||
@@ -10449,56 +10449,241 @@
|
||||
内容:【XXXXXXX公司】 派件中 派件人: 滕XX 电话 13787XXXXX 如有疑问,请联系:XXXXX-XXXXX
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResult">
|
||||
<member name="T:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResultV1">
|
||||
<summary>
|
||||
查询货运公司列表返回实体数据
|
||||
查询货运公司列表返回实体数据V1
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResult.showapi_res_error">
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResultV1.showapi_res_error">
|
||||
<summary>
|
||||
错误说明
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResult.showapi_res_code">
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResultV1.showapi_res_code">
|
||||
<summary>
|
||||
状态码
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResult.showapi_res_id">
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResultV1.showapi_res_id">
|
||||
<summary>
|
||||
返回资源序列
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResult.showapi_res_body">
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResultV1.showapi_res_body">
|
||||
<summary>
|
||||
返回资源主体
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResult">
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.Express_listItem.img_url">
|
||||
<summary>
|
||||
查询货运公司列表返回实体数据
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResult.showapi_res_error">
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.Express_listItem.phone">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.Express_listItem.exp_name">
|
||||
<summary>
|
||||
顺丰速运
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.Express_listItem.com">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.Express_listItem.url">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.Express_listItem.note">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.Showapi_res_body.ret_code">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.Showapi_res_body.express_list">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.Showapi_res_body.msg">
|
||||
<summary>
|
||||
查询成功!
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResultV2.showapi_res_error">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResultV2.showapi_res_code">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResultV2.showapi_res_id">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressCompanyListResultV2.showapi_res_body">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResultV1">
|
||||
<summary>
|
||||
查询物流轨迹返回值V1
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResultV1.showapi_res_error">
|
||||
<summary>
|
||||
错误说明
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResult.showapi_res_code">
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResultV1.showapi_res_code">
|
||||
<summary>
|
||||
状态码
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResult.showapi_res_id">
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResultV1.showapi_res_id">
|
||||
<summary>
|
||||
返回资源序列
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResult.showapi_res_body">
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResultV1.showapi_res_body">
|
||||
<summary>
|
||||
返回资源主体
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResultV2.showapi_res_error">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResultV2.showapi_fee_num">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResultV2.showapi_res_code">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResultV2.showapi_res_id">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ShowApiGetExpressPollResultV2.showapi_res_body">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.PollDataV2.time">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.PollDataV2.location">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.PollDataV2.status">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.PollDataV2.address">
|
||||
<summary>
|
||||
浙江省-台州市
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.PollDataV2.context">
|
||||
<summary>
|
||||
【台州市】已离开 浙江台州分拨交付中心;发往 山东潍坊分拨交付中心
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.delivery_time">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.nu">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.logo">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.original_com">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.com">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.tel">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.data">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.msg">
|
||||
<summary>
|
||||
查询成功
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.possible_exp_list">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.ret_code">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.showapi_inner_fee_num">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.update_time">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.query_num">
|
||||
<summary>
|
||||
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:CoreCms.Net.Model.ViewModels.Api.ExpressPollResBodyV2.com_name">
|
||||
<summary>
|
||||
韵达速递
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:CoreCms.Net.Model.ViewModels.Basics.DbTableInfoTree">
|
||||
<summary>
|
||||
代码生成器下拉数据列表实体
|
||||
|
||||
@@ -12,12 +12,12 @@ using System.Collections.Generic;
|
||||
|
||||
namespace CoreCms.Net.Model.ViewModels.Api
|
||||
{
|
||||
#region 查询货运公司列表返回实体数据
|
||||
#region 查询货运公司列表返回实体数据V1
|
||||
|
||||
/// <summary>
|
||||
/// 查询货运公司列表返回实体数据
|
||||
/// 查询货运公司列表返回实体数据V1
|
||||
/// </summary>
|
||||
public class ShowApiGetExpressCompanyListResult
|
||||
public class ShowApiGetExpressCompanyListResultV1
|
||||
{
|
||||
/// <summary>
|
||||
/// 错误说明
|
||||
@@ -88,12 +88,79 @@ namespace CoreCms.Net.Model.ViewModels.Api
|
||||
|
||||
#endregion 查询物流信息
|
||||
|
||||
#region MyRegion
|
||||
#region 查询货运公司列表返回实体数据V2
|
||||
public class Express_listItem
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string img_url { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string phone { get; set; }
|
||||
/// <summary>
|
||||
/// 顺丰速运
|
||||
/// </summary>
|
||||
public string exp_name { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string com { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string url { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string note { get; set; }
|
||||
}
|
||||
|
||||
public class Showapi_res_body
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int ret_code { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public List<Express_listItem> express_list { get; set; }
|
||||
/// <summary>
|
||||
/// 查询成功!
|
||||
/// </summary>
|
||||
public string msg { get; set; }
|
||||
}
|
||||
|
||||
public class ShowApiGetExpressCompanyListResultV2
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string showapi_res_error { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int showapi_res_code { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string showapi_res_id { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public Showapi_res_body showapi_res_body { get; set; }
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 查询物流轨迹返回值V1
|
||||
|
||||
/// <summary>
|
||||
/// 查询货运公司列表返回实体数据
|
||||
/// 查询物流轨迹返回值V1
|
||||
/// </summary>
|
||||
public class ShowApiGetExpressPollResult
|
||||
public class ShowApiGetExpressPollResultV1
|
||||
{
|
||||
/// <summary>
|
||||
/// 错误说明
|
||||
@@ -113,11 +180,11 @@ namespace CoreCms.Net.Model.ViewModels.Api
|
||||
/// <summary>
|
||||
/// 返回资源主体
|
||||
/// </summary>
|
||||
public ExpressPollResBody showapi_res_body { get; set; }
|
||||
public ExpressPollResBodyV1 showapi_res_body { get; set; }
|
||||
}
|
||||
|
||||
|
||||
public class ExpressPollResBody
|
||||
public class ExpressPollResBodyV1
|
||||
{
|
||||
public long update { get; set; }
|
||||
public string upgrade_info { get; set; }
|
||||
@@ -127,7 +194,7 @@ namespace CoreCms.Net.Model.ViewModels.Api
|
||||
public int status { get; set; }
|
||||
public int fee_num { get; set; }
|
||||
public string tel { get; set; }
|
||||
public List<PollData> data { get; set; }
|
||||
public List<PollDataV1> data { get; set; }
|
||||
|
||||
public string expSpellName { get; set; }
|
||||
public string msg { get; set; }
|
||||
@@ -139,11 +206,127 @@ namespace CoreCms.Net.Model.ViewModels.Api
|
||||
public List<object> possibleExpList { get; set; }
|
||||
}
|
||||
|
||||
public class PollData
|
||||
public class PollDataV1
|
||||
{
|
||||
public string time { get; set; }
|
||||
public string context { get; set; }
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 查询物流轨迹返回值V2
|
||||
|
||||
|
||||
public class ShowApiGetExpressPollResultV2
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string showapi_res_error { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int showapi_fee_num { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int showapi_res_code { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string showapi_res_id { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public ExpressPollResBodyV2 showapi_res_body { get; set; }
|
||||
}
|
||||
|
||||
|
||||
public class PollDataV2
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string time { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string location { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int status { get; set; }
|
||||
/// <summary>
|
||||
/// 浙江省-台州市
|
||||
/// </summary>
|
||||
public string address { get; set; }
|
||||
/// <summary>
|
||||
/// 【台州市】已离开 浙江台州分拨交付中心;发往 山东潍坊分拨交付中心
|
||||
/// </summary>
|
||||
public string context { get; set; }
|
||||
}
|
||||
|
||||
public class ExpressPollResBodyV2
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string delivery_time { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string nu { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string logo { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string original_com { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string com { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string tel { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public List<PollDataV2>? data { get; set; }
|
||||
/// <summary>
|
||||
/// 查询成功
|
||||
/// </summary>
|
||||
public string msg { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public List<string>? possible_exp_list { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int ret_code { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int showapi_inner_fee_num { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string update_time { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int query_num { get; set; }
|
||||
/// <summary>
|
||||
/// 韵达速递
|
||||
/// </summary>
|
||||
public string com_name { get; set; }
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
}
|
||||
@@ -21,6 +21,7 @@ using CoreCms.Net.Model.ViewModels.UI;
|
||||
using CoreCms.Net.Utility.Helper;
|
||||
using Flurl.Http;
|
||||
using Newtonsoft.Json;
|
||||
using SqlSugar.Extensions;
|
||||
|
||||
|
||||
namespace CoreCms.Net.Services
|
||||
@@ -72,6 +73,7 @@ namespace CoreCms.Net.Services
|
||||
var jm = new AdminUiCallBack();
|
||||
|
||||
var allConfigs = await _settingServices.GetConfigDictionaries();
|
||||
var showApiLogisticsVersion = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.ShowApiLogisticsVersion).ObjToInt(1);
|
||||
var showApiAppid = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.ShowApiAppid);
|
||||
var showApiSecret = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.ShowApiSecret);
|
||||
var shopMobile = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.ShopMobile);
|
||||
@@ -82,69 +84,123 @@ namespace CoreCms.Net.Services
|
||||
var signStr = "maxSize" + maxSize + "showapi_appid" + showApiAppid + "showapi_timestamp" + showApiTimesTamp + showApiSecret;
|
||||
var md5Sign = CommonHelper.Md5For32(signStr).ToLower();
|
||||
|
||||
var url = "https://route.showapi.com/64-20?expName=&maxSize=1500&page=&showapi_appid=" + showApiAppid +
|
||||
"&showapi_timestamp=" + showApiTimesTamp + "&showapi_sign=" + md5Sign;
|
||||
|
||||
|
||||
|
||||
var result = await url.PostAsync().ReceiveJson<ShowApiGetExpressCompanyListResult>();
|
||||
|
||||
|
||||
|
||||
|
||||
if (result.showapi_res_code == 0)
|
||||
string url;
|
||||
if (showApiLogisticsVersion == 1)
|
||||
{
|
||||
if (result.showapi_res_body != null && result.showapi_res_body.ret_code == 0 && result.showapi_res_body.expressList != null && result.showapi_res_body.expressList.Count > 0)
|
||||
url = "https://route.showapi.com/64-20?expName=&maxSize=1500&page=&showapi_appid=" + showApiAppid + "&showapi_timestamp=" + showApiTimesTamp + "&showapi_sign=" + md5Sign;
|
||||
|
||||
var result = await url.PostAsync().ReceiveJson<ShowApiGetExpressCompanyListResultV1>();
|
||||
|
||||
if (result.showapi_res_code == 0)
|
||||
{
|
||||
var list = new List<CoreCmsLogistics>();
|
||||
|
||||
|
||||
var systemLogistics = SystemSettingDictionary.GetSystemLogistics();
|
||||
systemLogistics.ForEach(p =>
|
||||
if (result.showapi_res_body != null && result.showapi_res_body.ret_code == 0 && result.showapi_res_body.expressList != null && result.showapi_res_body.expressList.Count > 0)
|
||||
{
|
||||
var logistics = new CoreCmsLogistics();
|
||||
logistics.logiCode = p.sKey;
|
||||
logistics.logiName = p.sDescription;
|
||||
logistics.imgUrl = "";
|
||||
logistics.phone = shopMobile;
|
||||
logistics.url = "";
|
||||
logistics.sort = -1;
|
||||
logistics.isDelete = false;
|
||||
var list = new List<CoreCmsLogistics>();
|
||||
|
||||
list.Add(logistics);
|
||||
});
|
||||
|
||||
var systemLogistics = SystemSettingDictionary.GetSystemLogistics();
|
||||
systemLogistics.ForEach(p =>
|
||||
{
|
||||
var logistics = new CoreCmsLogistics();
|
||||
logistics.logiCode = p.sKey;
|
||||
logistics.logiName = p.sDescription;
|
||||
logistics.imgUrl = "";
|
||||
logistics.phone = shopMobile;
|
||||
logistics.url = "";
|
||||
logistics.sort = -1;
|
||||
logistics.isDelete = false;
|
||||
|
||||
var count = 0;
|
||||
result.showapi_res_body.expressList.ForEach(p =>
|
||||
list.Add(logistics);
|
||||
});
|
||||
|
||||
var count = 0;
|
||||
result.showapi_res_body.expressList.ForEach(p =>
|
||||
{
|
||||
var logistics = new CoreCmsLogistics();
|
||||
logistics.logiCode = p.simpleName;
|
||||
logistics.logiName = p.expName;
|
||||
logistics.imgUrl = p.imgUrl;
|
||||
logistics.phone = p.phone;
|
||||
logistics.url = p.url;
|
||||
logistics.sort = count * 5;
|
||||
logistics.isDelete = false;
|
||||
|
||||
list.Add(logistics);
|
||||
count++;
|
||||
});
|
||||
await _dal.DeleteAsync(p => p.id > 0);
|
||||
var bl = await _dal.InsertAsync(list) > 0;
|
||||
jm.code = bl ? 0 : 1;
|
||||
jm.msg = bl ? "数据刷新成功" : "数据刷新失败";
|
||||
}
|
||||
else
|
||||
{
|
||||
var logistics = new CoreCmsLogistics();
|
||||
logistics.logiCode = p.simpleName;
|
||||
logistics.logiName = p.expName;
|
||||
logistics.imgUrl = p.imgUrl;
|
||||
logistics.phone = p.phone;
|
||||
logistics.url = p.url;
|
||||
logistics.sort = count * 5;
|
||||
logistics.isDelete = false;
|
||||
|
||||
list.Add(logistics);
|
||||
count++;
|
||||
});
|
||||
await _dal.DeleteAsync(p => p.id > 0);
|
||||
var bl = await _dal.InsertAsync(list) > 0;
|
||||
jm.code = bl ? 0 : 1;
|
||||
jm.msg = bl ? "数据刷新成功" : "数据刷新失败";
|
||||
jm.msg = "接口获取数据失败";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
jm.msg = "接口获取数据失败";
|
||||
jm.msg = result.showapi_res_error;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
jm.msg = result.showapi_res_error;
|
||||
url = "https://route.showapi.com/2650-5?expName=&maxSize=1500&page=&showapi_appid=" + showApiAppid + "&showapi_timestamp=" + showApiTimesTamp + "&showapi_sign=" + md5Sign;
|
||||
|
||||
var result = await url.PostAsync().ReceiveJson<ShowApiGetExpressCompanyListResultV2>();
|
||||
|
||||
if (result.showapi_res_code == 0)
|
||||
{
|
||||
if (result.showapi_res_body != null && result.showapi_res_body.ret_code == 0 && result.showapi_res_body.express_list != null && result.showapi_res_body.express_list.Count > 0)
|
||||
{
|
||||
var list = new List<CoreCmsLogistics>();
|
||||
|
||||
var systemLogistics = SystemSettingDictionary.GetSystemLogistics();
|
||||
systemLogistics.ForEach(p =>
|
||||
{
|
||||
var logistics = new CoreCmsLogistics();
|
||||
logistics.logiCode = p.sKey;
|
||||
logistics.logiName = p.sDescription;
|
||||
logistics.imgUrl = "";
|
||||
logistics.phone = shopMobile;
|
||||
logistics.url = "";
|
||||
logistics.sort = -1;
|
||||
logistics.isDelete = false;
|
||||
|
||||
list.Add(logistics);
|
||||
});
|
||||
|
||||
var count = 0;
|
||||
result.showapi_res_body.express_list.ForEach(p =>
|
||||
{
|
||||
var logistics = new CoreCmsLogistics();
|
||||
logistics.logiCode = p.com;
|
||||
logistics.logiName = p.exp_name;
|
||||
logistics.imgUrl = p.img_url;
|
||||
logistics.phone = p.phone;
|
||||
logistics.url = p.url;
|
||||
logistics.sort = count * 5;
|
||||
logistics.isDelete = false;
|
||||
|
||||
list.Add(logistics);
|
||||
count++;
|
||||
});
|
||||
await _dal.DeleteAsync(p => p.id > 0);
|
||||
var bl = await _dal.InsertAsync(list) > 0;
|
||||
jm.code = bl ? 0 : 1;
|
||||
jm.msg = bl ? "数据刷新成功" : "数据刷新失败";
|
||||
}
|
||||
else
|
||||
{
|
||||
jm.msg = "接口获取数据失败";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
jm.msg = result.showapi_res_error;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return jm;
|
||||
}
|
||||
|
||||
@@ -177,8 +233,8 @@ namespace CoreCms.Net.Services
|
||||
return jm;
|
||||
}
|
||||
|
||||
|
||||
var allConfigs = await _settingServices.GetConfigDictionaries();
|
||||
var showApiLogisticsVersion = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.ShowApiLogisticsVersion).ObjToInt(1);
|
||||
var showApiAppid = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.ShowApiAppid);
|
||||
var showApiSecret = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.ShowApiSecret);
|
||||
|
||||
@@ -187,70 +243,165 @@ namespace CoreCms.Net.Services
|
||||
var signStr = "com" + com + "nu" + number + "phone" + phone + "showapi_appid" + showApiAppid + "showapi_timestamp" + showApiTimesTamp + showApiSecret;
|
||||
var md5Sign = CommonHelper.Md5For32(signStr).ToLower();
|
||||
|
||||
var url = "https://route.showapi.com/64-19?com=" + com + "&nu=" + number + "&phone=" + phone + "&showapi_appid=" + showApiAppid +
|
||||
"&showapi_timestamp=" + showApiTimesTamp + "&showapi_sign=" + md5Sign;
|
||||
|
||||
|
||||
var result = await url.PostAsync().ReceiveJson<ShowApiGetExpressPollResult>();
|
||||
|
||||
|
||||
if (result.showapi_res_code != 0)
|
||||
string url;
|
||||
if (showApiLogisticsVersion == 1)
|
||||
{
|
||||
jm.status = false;
|
||||
jm.msg = result.showapi_res_error;
|
||||
url = "https://route.showapi.com/64-19?com=" + com + "&nu=" + number + "&phone=" + phone + "&showapi_appid=" + showApiAppid + "&showapi_timestamp=" + showApiTimesTamp + "&showapi_sign=" + md5Sign;
|
||||
var result = await url.PostAsync().ReceiveJson<ShowApiGetExpressPollResultV1>();
|
||||
if (result.showapi_res_code != 0)
|
||||
{
|
||||
jm.status = false;
|
||||
jm.msg = result.showapi_res_error;
|
||||
}
|
||||
else
|
||||
{
|
||||
jm = GetLogiInfo(1, result.showapi_res_code, result.showapi_res_body);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
switch (result.showapi_res_body.ret_code)
|
||||
url = "https://route.showapi.com/2650-3?com=" + com + "&nu=" + number + "&phone=" + phone + "&showapi_appid=" + showApiAppid + "&showapi_timestamp=" + showApiTimesTamp + "&showapi_sign=" + md5Sign;
|
||||
var result = await url.PostAsync().ReceiveJson<ShowApiGetExpressPollResultV2>();
|
||||
if (result.showapi_res_code != 0)
|
||||
{
|
||||
case 0:
|
||||
jm.status = true;
|
||||
jm.msg = "查询成功";
|
||||
jm.data = result.showapi_res_body;
|
||||
break;
|
||||
case 1:
|
||||
jm.status = false;
|
||||
jm.msg = "输入参数错误";
|
||||
jm.data = result.showapi_res_body;
|
||||
break;
|
||||
case 2:
|
||||
jm.status = false;
|
||||
jm.msg = "查不到物流信息";
|
||||
jm.data = result.showapi_res_body;
|
||||
break;
|
||||
case 3:
|
||||
jm.status = false;
|
||||
jm.msg = "单号不符合规则";
|
||||
jm.data = result.showapi_res_body;
|
||||
break;
|
||||
case 4:
|
||||
jm.status = false;
|
||||
jm.msg = "快递公司编码不符合规则";
|
||||
jm.data = result.showapi_res_body;
|
||||
break;
|
||||
case 5:
|
||||
jm.status = false;
|
||||
jm.msg = "快递查询渠道异常";
|
||||
jm.data = result.showapi_res_body;
|
||||
break;
|
||||
case 6:
|
||||
jm.status = false;
|
||||
jm.msg = " auto时未查到单号对应的快递公司,请指定快递公司编码";
|
||||
jm.data = result.showapi_res_body;
|
||||
break;
|
||||
case 7:
|
||||
jm.status = false;
|
||||
jm.msg = "单号与手机号不匹配";
|
||||
jm.data = result.showapi_res_body;
|
||||
break;
|
||||
default:
|
||||
jm.status = false;
|
||||
jm.msg = "接口调用失败";
|
||||
jm.data = result.showapi_res_body;
|
||||
break;
|
||||
jm.status = false;
|
||||
jm.msg = result.showapi_res_error;
|
||||
}
|
||||
else
|
||||
{
|
||||
jm = GetLogiInfo(1, result.showapi_res_code, result.showapi_res_body);
|
||||
}
|
||||
}
|
||||
return jm;
|
||||
}
|
||||
|
||||
//根据状态反馈提示信息
|
||||
private WebApiCallBack GetLogiInfo(int version, int retCode, object showapiResBody)
|
||||
{
|
||||
var jm = new WebApiCallBack();
|
||||
|
||||
if (retCode == 0)
|
||||
{
|
||||
jm.status = true;
|
||||
jm.msg = "查询成功";
|
||||
jm.data = showapiResBody;
|
||||
}
|
||||
else if (retCode == 1)
|
||||
{
|
||||
jm.status = false;
|
||||
jm.msg = "输入参数错误";
|
||||
jm.data = showapiResBody;
|
||||
}
|
||||
else if (retCode == 2)
|
||||
{
|
||||
jm.status = false;
|
||||
jm.msg = "查不到物流信息";
|
||||
jm.data = showapiResBody;
|
||||
}
|
||||
else if (retCode == 3)
|
||||
{
|
||||
jm.status = false;
|
||||
jm.msg = "单号不符合规则";
|
||||
jm.data = showapiResBody;
|
||||
}
|
||||
else if (retCode == 4)
|
||||
{
|
||||
jm.status = false;
|
||||
jm.msg = "快递公司编码不符合规则";
|
||||
jm.data = showapiResBody;
|
||||
}
|
||||
else if (retCode == 5)
|
||||
{
|
||||
jm.status = false;
|
||||
jm.msg = "快递查询渠道异常";
|
||||
jm.data = showapiResBody;
|
||||
}
|
||||
else if (retCode == 6)
|
||||
{
|
||||
jm.status = false;
|
||||
jm.msg = " auto时未查到单号对应的快递公司,请指定快递公司编码";
|
||||
jm.data = showapiResBody;
|
||||
}
|
||||
else if (retCode == 7)
|
||||
{
|
||||
jm.status = false;
|
||||
jm.msg = "单号与手机号不匹配";
|
||||
jm.data = showapiResBody;
|
||||
}
|
||||
else if (version == 2)
|
||||
{
|
||||
jm.status = true;
|
||||
|
||||
switch (retCode)
|
||||
{
|
||||
//101 揽件
|
||||
//102 在途中
|
||||
//103 派送中
|
||||
//104 已签收(完结状态)
|
||||
//105 用户拒签
|
||||
//106 疑难件
|
||||
//107 无效单(完结状态)
|
||||
//108 超时单
|
||||
//109 签收失败
|
||||
//110 退回
|
||||
//111 转投
|
||||
//112 待签
|
||||
//113 邮件回收
|
||||
case 101:
|
||||
jm.msg = "揽件";
|
||||
break;
|
||||
case 102:
|
||||
jm.msg = "在途中";
|
||||
break;
|
||||
case 103:
|
||||
jm.msg = "派送中";
|
||||
break;
|
||||
case 104:
|
||||
jm.msg = "已签收(完结状态)";
|
||||
break;
|
||||
case 105:
|
||||
jm.msg = "用户拒签";
|
||||
break;
|
||||
case 106:
|
||||
jm.msg = "疑难件";
|
||||
break;
|
||||
case 107:
|
||||
jm.msg = "无效单(完结状态)";
|
||||
break;
|
||||
case 108:
|
||||
jm.msg = "超时单";
|
||||
break;
|
||||
case 109:
|
||||
jm.msg = "签收失败";
|
||||
break;
|
||||
case 110:
|
||||
jm.msg = "退回";
|
||||
break;
|
||||
case 111:
|
||||
jm.msg = "转投";
|
||||
break;
|
||||
case 112:
|
||||
jm.msg = "待签";
|
||||
break;
|
||||
case 113:
|
||||
jm.msg = "邮件回收";
|
||||
break;
|
||||
default:
|
||||
jm.status = false;
|
||||
jm.msg = "未知状态";
|
||||
break;
|
||||
}
|
||||
jm.data = showapiResBody;
|
||||
}
|
||||
else
|
||||
{
|
||||
jm.status = false;
|
||||
jm.msg = "接口调用失败";
|
||||
jm.data = showapiResBody;
|
||||
}
|
||||
|
||||
return jm;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -186,14 +186,14 @@ namespace CoreCms.Net.Web.Admin.Controllers
|
||||
|
||||
#endregion
|
||||
|
||||
#region 拉取数据更新============================================================
|
||||
#region 拉取数据更新快递公司============================================================
|
||||
|
||||
// POST: Api/CoreCmsLogistics/DoDelete/10
|
||||
/// <summary>
|
||||
/// 拉取数据更新
|
||||
/// 拉取数据更新快递公司
|
||||
/// </summary>
|
||||
[HttpPost]
|
||||
[Description("单选删除")]
|
||||
[Description("拉取数据更新")]
|
||||
public async Task<AdminUiCallBack> DoUpdateCompany()
|
||||
{
|
||||
var jm = await _coreCmsLogisticsServices.DoUpdateCompany();
|
||||
|
||||
@@ -3470,7 +3470,7 @@
|
||||
</member>
|
||||
<member name="M:CoreCms.Net.Web.Admin.Controllers.CoreCmsLogisticsController.DoUpdateCompany">
|
||||
<summary>
|
||||
拉取数据更新
|
||||
拉取数据更新快递公司
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:CoreCms.Net.Web.Admin.Controllers.CoreCmsNoticeController">
|
||||
|
||||
@@ -983,6 +983,14 @@
|
||||
</div>
|
||||
|
||||
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;"> <legend>易源接口</legend></fieldset>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">{{d.data.configs['showApiLogisticsVersion']['sKey']}}:</label>
|
||||
<div class="layui-input-inline layui-inline-5">
|
||||
<input type="radio" lay-filter="showApiLogisticsVersion" name="showApiLogisticsVersion" value="1" title="v1" {{d.data.configs['showApiLogisticsVersion']['sValue']==="1" ? 'checked':''}}>
|
||||
<input type="radio" lay-filter="showApiLogisticsVersion" name="showApiLogisticsVersion" value="2" title="v2" {{d.data.configs['showApiLogisticsVersion']['sValue']==="2" ? 'checked':''}}>
|
||||
</div>
|
||||
<div class="layui-form-mid layui-word-aux">v1地址:【https://www.showapi.com/apiGateway/view/64】 v2地址:【https://www.showapi.com/apiGateway/view/2650】</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">{{d.data.configs['showApiAppid']['sKey']}}:</label>
|
||||
<div class="layui-input-inline layui-inline-5">
|
||||
|
||||
Reference in New Issue
Block a user