优化售后单命名规则 产品入库时删除原商品详情内容节约空间
This commit is contained in:
1 parent
257262517b
commit
381332b7c8
19 files changed
+636
-49
No files matched your search
@@ -220,8 +220,8 @@
|
||||
<Compile Include="Model\Result\PDDResult\ApiPddGoodsCatRuleInfo.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PDDActivityResult\ActivityListProdInfo.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PDDActivityResult\ActEnrollV3GoodsRuleInfo.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PddBuyerAfterSaleInfoLite.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PddBuyerOrderInfoLite.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PddBuyerAfterSaleLiteInfo.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PddBuyerOrderLiteInfo.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PddCatInfo.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PddClientInfo.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PDDFrontProductInfo2.cs" />
|
||||
|
||||
@@ -27,7 +27,7 @@ namespace AllBase
|
||||
/// <summary>
|
||||
/// 版本ID
|
||||
/// </summary>
|
||||
public static int VersionCount = 1190;
|
||||
public static int VersionCount = 1191;
|
||||
public static string MainPath = "29wx";
|
||||
//public static string MainPath = "29wx";
|
||||
//public static string MainPath = "29pdd";
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using NaiBa.Util.Extension;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
@@ -8,6 +9,7 @@ namespace AllBase.Model.Result.PDDResult
|
||||
{
|
||||
public class PDDProductInfo
|
||||
{
|
||||
public bool no_source_json { get { return string.IsNullOrEmpty(source_json.ParseToString()); } set { } }
|
||||
public PDDProductDetailInfo detail { get; set; }
|
||||
public PDDSizeSpecInfo size { get; set; }
|
||||
public PDDProductDecorationInfo decoration { get; set; }
|
||||
|
||||
+1
-1
@@ -7,7 +7,7 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace AllBase.Model.Result.PDDResult
|
||||
{
|
||||
public class PddBuyerAfterSaleInfoLite
|
||||
public class PddBuyerAfterSaleLiteInfo
|
||||
{
|
||||
public string buyerId { get; set; } // 买手Id
|
||||
public string buyerName { get; set; } // 买手名称
|
||||
+2
-1
@@ -7,7 +7,7 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace AllBase.Model.Result.PDDResult
|
||||
{
|
||||
public class PddBuyerOrderInfoLite
|
||||
public class PddBuyerOrderLiteInfo
|
||||
{
|
||||
//平台快递编码 微信快递名称 PDD
|
||||
//EMS EMS 邮政快递包裹
|
||||
@@ -128,6 +128,7 @@ namespace AllBase.Model.Result.PDDResult
|
||||
{
|
||||
public order_hint order_hint { get; set; }
|
||||
}
|
||||
|
||||
public class order_hint
|
||||
{
|
||||
public string type { get; set; } // "express_info",
|
||||
@@ -958,6 +958,25 @@ namespace KJD_Web.BLL.BXX
|
||||
mySql.Close();
|
||||
}
|
||||
}
|
||||
if (prod.product_json.Contains("\"source_json\"") && !prod.product_json.Contains("\"source_json\":null"))
|
||||
{
|
||||
mySql = new MysqlUtils(conn);
|
||||
try
|
||||
{
|
||||
JObject jObj = JsonUtils.JObjectParse(prod.product_json);
|
||||
jObj["source_json"] = null;
|
||||
var newProdJson = JsonUtils.SerializeObject(jObj);
|
||||
sql = "update bxx.product set product_json=@product_json where spu_id='" + prod.spu_id + "'";
|
||||
paramLst = new List<MySqlParameter>();
|
||||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "product_json", Value = newProdJson, });
|
||||
mySql.ExecuteNonQuery(sql, paramLst.ToArray());
|
||||
prod.product_json = newProdJson;
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
mySql.Close();
|
||||
}
|
||||
}
|
||||
if (!string.IsNullOrEmpty(get_select_count))
|
||||
{
|
||||
|
||||
@@ -140,5 +140,78 @@ namespace KJD_Web.BLL
|
||||
}
|
||||
return "{\"code\":19999,\"msg\":\"未知错误\"}";
|
||||
}
|
||||
|
||||
|
||||
public string GetWxFindOrderUpdate(string inputData)
|
||||
{
|
||||
//string time1 = Encryption(time);
|
||||
//return "time=" + time + "&code=" + time1 + "&NbCodeVersion=1" + "&version=" + BaseClass.VersionCount
|
||||
|
||||
if (!string.IsNullOrEmpty(inputData))
|
||||
{
|
||||
var time = 0;
|
||||
int.TryParse(RegexUtils.GetStringQuery(ref inputData, "time"), out time);
|
||||
string time1 = RegexUtils.GetStringQuery(ref inputData, "code");
|
||||
if (time1 != EncrypUtil.Encryption(time))
|
||||
return "{\"code\":50000,\"msg\":\"校验失败\"}";
|
||||
|
||||
var path = RegexUtils.GetStringQuery(ref inputData, "path");
|
||||
|
||||
var version = RegexUtils.GetStringQuery(ref inputData, "version").ParseToInt();
|
||||
var serverVersion = System.Configuration.ConfigurationManager.ConnectionStrings["UpdateVersion"].ConnectionString;
|
||||
var UpdateFileNewUrl = System.Configuration.ConfigurationManager.ConnectionStrings["UpdateWxFindOrderUrl"].ConnectionString;
|
||||
var UpdateExe = System.Configuration.ConfigurationManager.ConnectionStrings["UpdateExe"].ConnectionString;
|
||||
var UpdateExeChk = System.Configuration.ConfigurationManager.ConnectionStrings["UpdateExeChk"].ConnectionString;
|
||||
var LowVersion = System.Configuration.ConfigurationManager.ConnectionStrings["WxFindOrderLowVersion"].ConnectionString;
|
||||
|
||||
if (version > LowVersion.ParseToInt())
|
||||
{
|
||||
//if (path != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
var fileDir = System.Configuration.ConfigurationManager.ConnectionStrings["UpdateWxFindOrderFileDir"].ConnectionString;
|
||||
//if (path == "29wx")
|
||||
{
|
||||
var file = Directory.GetFiles(fileDir);
|
||||
var versionTmp = 0;
|
||||
foreach (var f in file)
|
||||
{
|
||||
var v = Path.GetFileName(f).Replace("WxFindOrderUpdate", "").Replace(".zip", "").ParseToInt();
|
||||
if (v > versionTmp && v <= serverVersion.ParseToInt())
|
||||
{
|
||||
versionTmp = v;
|
||||
}
|
||||
}
|
||||
if (versionTmp > 0)
|
||||
{
|
||||
serverVersion = versionTmp.ToString();
|
||||
return "{\"code\":200,\"msg\":\"success\",\"next_version\":" + serverVersion + ",\"exe_check\":\"" + UpdateExeChk +
|
||||
"\",\"exe_address\":\"" + UpdateExe + "\",\"file_address\":\"" + UpdateFileNewUrl + "WxFindOrderUpdate" + serverVersion + ".zip\"}";
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
//return "{\"code\":500,\"msg\":\"升级文件查询失败\"}";
|
||||
}
|
||||
}
|
||||
|
||||
if (serverVersion.ParseToInt() > 1159)
|
||||
serverVersion = 1159.ToString();
|
||||
return "{\"code\":200,\"msg\":\"success\",\"next_version\":" + serverVersion + ",\"exe_check\":\"" + UpdateExeChk +
|
||||
"\",\"exe_address\":\"" + UpdateExe + "\",\"file_address\":\"" + UpdateFileNewUrl + "WxFindOrderUpdate" + serverVersion + ".zip\"}";
|
||||
}
|
||||
else if (version > 0)
|
||||
{
|
||||
return "{\"code\":501,\"msg\":\"版本过低已无法直接升级,请联系管理员获取最新安装包\"}";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "{\"code\":502,\"msg\":\"get update version failed\"}";
|
||||
}
|
||||
}
|
||||
return "{\"code\":19999,\"msg\":\"未知错误\"}";
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
using KJD_Web.Model.WxModel;
|
||||
using KJD_Web.Utils;
|
||||
using MySql.Data.MySqlClient;
|
||||
using NaiBa.Util.Extension;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
@@ -425,5 +426,360 @@ namespace KJD_Web.BLL.WXXD
|
||||
}
|
||||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 微信添加修改采购映射商品(含sku映射和)
|
||||
/// </summary>
|
||||
/// <param name="inputData"></param>
|
||||
/// <returns></returns>
|
||||
public string WXAddMdyBuyProdMap(string inputData)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(inputData))
|
||||
{
|
||||
if (!WXUserManage.GetSign(inputData))
|
||||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||||
|
||||
// 软件用户名
|
||||
string spu_code = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "spu_code"))?.Replace("'", "\\'");
|
||||
string sku_code = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "sku_code"))?.Replace("'", "\\'");
|
||||
string user_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "main_user_name"))?.Replace("'", "\\'");
|
||||
string map_url = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "map_url"))?.Replace("'", "\\'");
|
||||
string map_goods_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "map_goods_name"))?.Replace("'", "\\'");
|
||||
string map_spec_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "map_spec_name"))?.Replace("'", "\\'");
|
||||
string map_goods_id = RegexUtils.GetStringQuery(ref inputData, "map_goods_id")?.Replace("'", "\\'");
|
||||
string map_sku_id = RegexUtils.GetStringQuery(ref inputData, "map_sku_id")?.Replace("'", "\\'");
|
||||
string map_send_address = RegexUtils.GetStringQuery(ref inputData, "map_send_address")?.Replace("'", "\\'");
|
||||
string transit_warehouse_id = RegexUtils.GetStringQuery(ref inputData, "transit_warehouse_id")?.Replace("'", "\\'");
|
||||
|
||||
if (string.IsNullOrEmpty(spu_code) || string.IsNullOrEmpty(sku_code))
|
||||
return "{\"code\":500,\"msg\":\"缺少系统商品或SKU编号\"}";
|
||||
if (string.IsNullOrEmpty(user_name))
|
||||
return "{\"code\":500,\"msg\":\"缺少用户名\"}";
|
||||
if (string.IsNullOrEmpty(map_url) && (string.IsNullOrEmpty(map_goods_id) || string.IsNullOrEmpty(map_sku_id)))
|
||||
return "{\"code\":500,\"msg\":\"缺少采购商品信息\"}";
|
||||
if (string.IsNullOrEmpty(transit_warehouse_id))
|
||||
return "{\"code\":500,\"msg\":\"缺少中转仓信息\"}";
|
||||
|
||||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||||
MysqlUtils mySql = new MysqlUtils(conn);
|
||||
|
||||
string sql = "SELECT 1 FROM `bxx`.`product_buy_map` where user_name='" + user_name + "' AND spu_code='" + spu_code + "' AND sku_code='" + sku_code + "'";
|
||||
string where = "";
|
||||
sql += where;
|
||||
var exist = mySql.ExecuteFirstInt(sql);
|
||||
if (!mySql.Message.IsNullOrEmpty())
|
||||
{
|
||||
mySql.Close();
|
||||
return "{\"code\":501,\"msg\":\"" + mySql.Message + "\"}";
|
||||
}
|
||||
|
||||
if (exist == 0)
|
||||
{
|
||||
sql = " INSERT INTO `bxx`.`product_buy_map` (user_name,spu_code,sku_code,map_url,map_goods_name,map_spec_name,map_goods_id,map_sku_id,map_send_address,transit_warehouse_id)" +
|
||||
" VALUES (@user_name,@spu_code,@sku_code,@map_url,@map_goods_name,@map_spec_name,@map_goods_id,@map_sku_id,@map_send_address,@transit_warehouse_id);";
|
||||
}
|
||||
else
|
||||
{
|
||||
sql = "UPDATE `bxx`.`product_buy_map` SET ";
|
||||
if (map_url != null)
|
||||
sql += " map_url=@map_url,";
|
||||
if (map_goods_name != null)
|
||||
sql += " map_goods_name=@map_goods_name,";
|
||||
if (map_spec_name != null)
|
||||
sql += " map_spec_name=@map_spec_name,";
|
||||
if (map_goods_id != null)
|
||||
sql += " map_goods_id=@map_goods_id,";
|
||||
if (map_sku_id != null)
|
||||
sql += " map_sku_id=@map_sku_id,";
|
||||
if (map_send_address != null)
|
||||
sql += " map_send_address=@map_send_address,";
|
||||
if (transit_warehouse_id != null)
|
||||
sql += " transit_warehouse_id=@transit_warehouse_id,";
|
||||
sql = sql.TrimEnd(',');
|
||||
sql += " WHERE user_name=@user_name and spu_code=@spu_code and sku_code=@sku_code;";
|
||||
}
|
||||
|
||||
List<MySqlParameter> paramLst = new List<MySqlParameter>();
|
||||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "user_name", Value = user_name, });
|
||||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "spu_code", Value = spu_code, });
|
||||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "sku_code", Value = sku_code, });
|
||||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_url", Value = map_url, });
|
||||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_goods_name", Value = map_goods_name, });
|
||||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_spec_name", Value = map_spec_name, });
|
||||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_goods_id", Value = map_goods_id, });
|
||||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_sku_id", Value = map_sku_id, });
|
||||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "map_send_address", Value = map_send_address, });
|
||||
paramLst.Add(new MySqlParameter() { DbType = DbType.String, ParameterName = "transit_warehouse_id", Value = transit_warehouse_id, });
|
||||
mySql.ExecuteNonQuery(sql, paramLst.ToArray());
|
||||
mySql.Close();
|
||||
if (string.IsNullOrEmpty(mySql.Message))
|
||||
{
|
||||
return "{\"code\":200,\"msg\":\"success\",\"data\":\"\"}";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "{\"code\":50003,\"msg\":\"" + mySql.Message + "\",\"data\":\"\"}";
|
||||
}
|
||||
}
|
||||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 微信获取采购映射商品
|
||||
/// </summary>
|
||||
/// <param name="inputData"></param>
|
||||
/// <returns></returns>
|
||||
public string WXGetBuyPordMap(string inputData)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(inputData))
|
||||
{
|
||||
if (!WXUserManage.GetSign(inputData))
|
||||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||||
var timeCalc = DateTime.Now;
|
||||
|
||||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200);
|
||||
string spu_codes = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "spu_codes"))?.Replace("'", "\\'");
|
||||
string sku_codes = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "sku_codes"))?.Replace("'", "\\'");
|
||||
string user_name = RegexUtils.GetStringQuery(ref inputData, "main_user_name")?.Replace("'", "\\'");
|
||||
string not_count = RegexUtils.GetStringQuery(ref inputData, "not_count")?.Replace("'", "\\'");
|
||||
if (string.IsNullOrEmpty(spu_codes))
|
||||
return "{\"code\":500,\"msg\":\"商品编码不能为空\"}";
|
||||
if (string.IsNullOrEmpty(user_name))
|
||||
return "{\"code\":500,\"msg\":\"用户名不能为空\"}";
|
||||
|
||||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||||
MysqlUtils mySql = new MysqlUtils(conn);
|
||||
|
||||
string sql = "";
|
||||
var count = -1;
|
||||
|
||||
sql = "SELECT COUNT(*) FROM `bxx`.`product_buy_map` WHERE 1=1";
|
||||
string where = "";
|
||||
if (spu_codes != null)
|
||||
where += " and spu_code IN ('" + spu_codes.Replace(",", "','") + "')";
|
||||
if (sku_codes != null)
|
||||
where += " and sku_code IN ('" + sku_codes.Replace(",", "','") + "')";
|
||||
if (user_name != null)
|
||||
where += " and user_name='" + user_name + "'";
|
||||
sql += where;
|
||||
sql += ";";
|
||||
|
||||
if (not_count == "false")
|
||||
count = mySql.ExecuteRowCount(sql);
|
||||
|
||||
DataTable dt;
|
||||
if (count == 0)
|
||||
{
|
||||
dt = new DataTable();
|
||||
}
|
||||
else
|
||||
{
|
||||
sql = "SELECT * FROM `bxx`.`product_buy_map` WHERE 1=1";
|
||||
sql += where;
|
||||
sql += " order by id desc limit " + Math.Max(0, page - 1) * page_size + "," + page_size + ";";
|
||||
dt = mySql.ExecuteDataTable(sql);
|
||||
}
|
||||
mySql.Close();
|
||||
|
||||
if (dt != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
List<WXBuyMapInfo> WXBuyMapInfoLst = new List<WXBuyMapInfo>();
|
||||
foreach (DataRow row in dt.Rows)
|
||||
{
|
||||
WXBuyMapInfoLst.Add(new WXBuyMapInfo()
|
||||
{
|
||||
id = row["id"].ParseToInt(),
|
||||
user_name = row["user_name"].ParseToString(),
|
||||
spu_code = row["spu_code"].ParseToString(),
|
||||
sku_code = row["sku_code"].ParseToString(),
|
||||
map_url = row["map_url"].ParseToString(),
|
||||
map_goods_name = row["map_goods_name"].ParseToString(),
|
||||
map_spec_name = row["map_spec_name"].ParseToString(),
|
||||
map_goods_id = row["map_goods_id"].ParseToString(),
|
||||
map_sku_id = row["map_sku_id"].ParseToString(),
|
||||
map_send_address = row["map_send_address"].ParseToString(),
|
||||
transit_warehouse_id = row["transit_warehouse_id"].ParseToString(),
|
||||
add_time = Convert.ToDateTime(row["add_time"]),
|
||||
mdy_time = Convert.ToDateTime(row["mdy_time"]),
|
||||
});
|
||||
}
|
||||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||||
var data = JsonUtils.SerializeObjectToString(WXBuyMapInfoLst, jsonSetting);
|
||||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||||
}
|
||||
}
|
||||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取中转仓订单信息
|
||||
/// </summary>
|
||||
/// <param name="inputData"></param>
|
||||
/// <returns></returns>
|
||||
public string WXGetTransitOrder(string inputData)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(inputData))
|
||||
{
|
||||
if (!WXUserManage.GetSign(inputData))
|
||||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||||
var timeCalc = DateTime.Now;
|
||||
|
||||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200);
|
||||
string order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_no"))?.Replace("'", "\\'");
|
||||
string order_sku_id = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "order_sku_id"))?.Replace("'", "\\'");
|
||||
string out_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_order_no"))?.Replace("'", "\\'");
|
||||
string not_count = RegexUtils.GetStringQuery(ref inputData, "not_count")?.Replace("'", "\\'");
|
||||
if (string.IsNullOrEmpty(order_no) && string.IsNullOrEmpty(out_order_no) && string.IsNullOrEmpty(order_sku_id))
|
||||
return "{\"code\":500,\"msg\":\"商品查询信息不能为空\"}";
|
||||
|
||||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||||
MysqlUtils mySql = new MysqlUtils(conn);
|
||||
|
||||
string sql = "";
|
||||
var count = -1;
|
||||
|
||||
sql = "SELECT COUNT(*) FROM `erp`.`oms_wei_external_procurement_log` WHERE 1=1";
|
||||
string where = "";
|
||||
if (order_no != null)
|
||||
where += " and order_no IN ('" + order_no.Replace(",", "','") + "')";
|
||||
if (order_sku_id != null)
|
||||
where += " and order_sku_id IN ('" + order_sku_id.Replace(",", "','") + "')";
|
||||
if (out_order_no != null)
|
||||
where += " and out_order_no IN ('" + out_order_no.Replace(",", "','") + "')";
|
||||
sql += where;
|
||||
sql += ";";
|
||||
|
||||
if (not_count == "false")
|
||||
count = mySql.ExecuteRowCount(sql);
|
||||
|
||||
DataTable dt;
|
||||
if (count == 0)
|
||||
{
|
||||
dt = new DataTable();
|
||||
}
|
||||
else
|
||||
{
|
||||
sql = "SELECT * FROM `erp`.`oms_wei_external_procurement_log` WHERE 1=1";
|
||||
sql += where;
|
||||
sql += " order by id desc limit " + Math.Max(0, page - 1) * page_size + "," + page_size + ";";
|
||||
dt = mySql.ExecuteDataTable(sql);
|
||||
}
|
||||
mySql.Close();
|
||||
|
||||
if (dt != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
List<oms_wei_external_procurement_log> oms_wei_external_procurement_log_list = new List<oms_wei_external_procurement_log>();
|
||||
foreach (DataRow row in dt.Rows)
|
||||
{
|
||||
oms_wei_external_procurement_log_list.Add(new oms_wei_external_procurement_log()
|
||||
{
|
||||
id = row["id"].ParseToInt(),
|
||||
buyer_account = row["buyer_account"].ParseToString(),
|
||||
order_no = row["order_no"].ParseToString(),
|
||||
order_sku_id = row["order_sku_id"].ParseToString(),
|
||||
out_amount = row["out_amount"].ParseToNullableInt(),
|
||||
out_order_no = row["out_order_no"].ParseToString(),
|
||||
purchaser_note = row["purchaser_note"].ParseToString(),
|
||||
created_time = row["created_time"].ParseToString().ParseToDateTime(),
|
||||
express_1_company = row["express_1_company"].ParseToString(),
|
||||
express_1_waybill = row["express_1_waybill"].ParseToString(),
|
||||
express_2_company = row["express_2_company"].ParseToString(),
|
||||
express_2_waybill = row["express_2_waybill"].ParseToString(),
|
||||
order_code = row["order_code"].ParseToString(),
|
||||
order_platform_code = row["order_platform_code"].ParseToString(),
|
||||
pickup_time = row["pickup_time"].ParseToString().ParseToDateTime(),
|
||||
platform = row["platform"].ParseToString(),
|
||||
pre_allocated_order_no = row["pre_allocated_order_no"].ParseToNullableInt(),
|
||||
raw_message = row["raw_message"].ParseToString(),
|
||||
refund_status = row["refund_status"].ParseToString(),
|
||||
transfer_warehouse_status = row["transfer_warehouse_status"].ParseToNullableInt(),
|
||||
updated_time = row["updated_time"].ParseToString().ParseToDateTime(),
|
||||
});
|
||||
}
|
||||
JsonSerializerSettings jsonSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
|
||||
var data = JsonUtils.SerializeObjectToString(oms_wei_external_procurement_log_list, jsonSetting);
|
||||
var seconds = (DateTime.Now - timeCalc).TotalSeconds.ToString("0.000");
|
||||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + ",\"seconds\":" + seconds + "}";
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||||
}
|
||||
}
|
||||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改中转仓订单信息,临时补救
|
||||
/// </summary>
|
||||
/// <param name="inputData"></param>
|
||||
/// <returns></returns>
|
||||
public string WXUpdateErpOrderExpress(string inputData)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(inputData))
|
||||
{
|
||||
if (!WXUserManage.GetSign(inputData))
|
||||
return "{\"code\":999,\"msg\":\"校验失败\"}";
|
||||
var timeCalc = DateTime.Now;
|
||||
|
||||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(200);
|
||||
string out_order_no = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "out_order_no"))?.Replace("'", "\\'");
|
||||
string express_1_company = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "express_1_company"))?.Replace("'", "\\'");
|
||||
string express_1_waybill = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "express_1_waybil"))?.Replace("'", "\\'");
|
||||
if (string.IsNullOrEmpty(out_order_no))
|
||||
return "{\"code\":500,\"msg\":\"订单外部ID信息不能为空\"}";
|
||||
if (string.IsNullOrEmpty(express_1_company))
|
||||
return "{\"code\":500,\"msg\":\"物流公司不能为空\"}";
|
||||
if (string.IsNullOrEmpty(express_1_waybill))
|
||||
return "{\"code\":500,\"msg\":\"物流单号不能为空\"}";
|
||||
|
||||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||||
MysqlUtils mySql = new MysqlUtils(conn);
|
||||
|
||||
string sql = "";
|
||||
var count = -1;
|
||||
|
||||
sql = " update `erp`.`oms_wei_external_procurement_log` ";
|
||||
sql += " set express_1_company='" + express_1_company + "',";
|
||||
sql += " express_1_waybill='" + express_1_waybill + "',";
|
||||
sql = sql.TrimEnd(',');
|
||||
sql += " where out_order_no = '" + out_order_no + "';";
|
||||
|
||||
count = mySql.ExecuteAffectedRows(sql);
|
||||
mySql.Close();
|
||||
|
||||
if (!string.IsNullOrEmpty(mySql.Message))
|
||||
{
|
||||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"affected_rows\":" + count + "}";
|
||||
}
|
||||
return "{\"code\":200,\"msg\":\"success\",\"affected_rows\":" + count + "}";
|
||||
}
|
||||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -130,6 +130,7 @@
|
||||
<Compile Include="Model\PddModel\PDDProductPropertyInfo.cs" />
|
||||
<Compile Include="Model\ShopModel\JSTListProductSkuInfo.cs" />
|
||||
<Compile Include="Model\WXAddressInfo.cs" />
|
||||
<Compile Include="Model\WxModel\oms_wei_external_procurement_log.cs" />
|
||||
<Compile Include="Model\WxModel\oms_wei_order.cs" />
|
||||
<Compile Include="Model\WxModel\oms_wei_order_item.cs" />
|
||||
<Compile Include="Model\WxModel\oms_wei_refund.cs" />
|
||||
|
||||
@@ -14,4 +14,27 @@ namespace KJD_Web.Model.WxModel
|
||||
public DateTime add_time { get; set; }
|
||||
public DateTime mdy_time { get; set; }
|
||||
}
|
||||
|
||||
public class WXBuyMapInfo
|
||||
{
|
||||
public long id { get; set; }
|
||||
public string user_name { get; set; }
|
||||
public string spu_code { get; set; }
|
||||
public string sku_code { get; set; }
|
||||
public string map_url { get; set; }
|
||||
public string map_goods_name { get; set; }
|
||||
/// <summary>
|
||||
/// sku规格名称
|
||||
/// </summary>
|
||||
public string map_spec_name { get; set; }
|
||||
public string map_goods_id { get; set; }
|
||||
public string map_sku_id { get; set; }
|
||||
/// <summary>
|
||||
/// 发货地(省,市)
|
||||
/// </summary>
|
||||
public string map_send_address { get; set; }
|
||||
public string transit_warehouse_id { get; set; }
|
||||
public DateTime add_time { get; set; }
|
||||
public DateTime mdy_time { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
|
||||
namespace KJD_Web.Model.WxModel
|
||||
{
|
||||
public class oms_wei_external_procurement_log
|
||||
{
|
||||
public long id { get; set; }
|
||||
public string out_order_no { get; set; }
|
||||
public string order_no { get; set; }
|
||||
public string order_sku_id { get; set; }
|
||||
public string buyer_account { get; set; }
|
||||
public int? out_amount { get; set; }
|
||||
public string purchaser_note { get; set; }
|
||||
public string express_1_company { get; set; }
|
||||
public string express_1_waybill { get; set; }
|
||||
public string express_2_company { get; set; }
|
||||
public string express_2_waybill { get; set; }
|
||||
public string refund_status { get; set; }
|
||||
public DateTime pickup_time { get; set; }
|
||||
/// <summary>
|
||||
/// 中转仓状态:0 未使用,1 已创建,2 创建失败
|
||||
/// </summary>
|
||||
public int? transfer_warehouse_status { get; set; }
|
||||
public string raw_message { get; set; }
|
||||
public DateTime created_time { get; set; }
|
||||
public DateTime updated_time { get; set; }
|
||||
public string platform { get; set; }
|
||||
public string order_platform_code { get; set; }
|
||||
public string order_code { get; set; }
|
||||
/// <summary>
|
||||
/// 1正常取号 2提前取号
|
||||
/// </summary>
|
||||
public int? pre_allocated_order_no { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -78,5 +78,17 @@ namespace KJD_Web
|
||||
Context.Response.Write(result);
|
||||
Context.Response.End();
|
||||
}
|
||||
|
||||
[WebMethod]
|
||||
public void get_wx_finder_order_update()
|
||||
{
|
||||
var jsontext = GetRequestJsonString();
|
||||
|
||||
var result = jsontext;
|
||||
result = new UpdateManage().GetWxFindOrderUpdate(jsontext);
|
||||
|
||||
Context.Response.Write(result);
|
||||
Context.Response.End();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -87,5 +87,59 @@ namespace KJD_Web
|
||||
Context.Response.Write(result);
|
||||
Context.Response.End();
|
||||
}
|
||||
|
||||
|
||||
[WebMethod]
|
||||
public void wx_add_mdy_buy_prod_map()
|
||||
{
|
||||
string jsontext = GetRequestJsonString();
|
||||
|
||||
var result = jsontext;
|
||||
result = new WXOrderManage().WXAddMdyBuyProdMap(jsontext);
|
||||
|
||||
Context.Response.Write(result);
|
||||
Context.Response.End();
|
||||
}
|
||||
[WebMethod]
|
||||
public void wx_get_buy_prod_map()
|
||||
{
|
||||
string jsontext = GetRequestJsonString();
|
||||
|
||||
var result = jsontext;
|
||||
result = new WXOrderManage().WXGetBuyPordMap(jsontext);
|
||||
|
||||
Context.Response.Write(result);
|
||||
Context.Response.End();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取中转仓订单信息
|
||||
/// </summary>
|
||||
[WebMethod]
|
||||
public void wx_get_transit_order()
|
||||
{
|
||||
string jsontext = GetRequestJsonString();
|
||||
|
||||
var result = jsontext;
|
||||
result = new WXOrderManage().WXGetTransitOrder(jsontext);
|
||||
|
||||
Context.Response.Write(result);
|
||||
Context.Response.End();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取中转仓订单信息
|
||||
/// </summary>
|
||||
[WebMethod]
|
||||
public void wx_update_erp_order_express()
|
||||
{
|
||||
string jsontext = GetRequestJsonString();
|
||||
|
||||
var result = jsontext;
|
||||
result = new WXOrderManage().WXUpdateErpOrderExpress(jsontext);
|
||||
|
||||
Context.Response.Write(result);
|
||||
Context.Response.End();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -20,6 +20,11 @@
|
||||
<add name="GetWXRecommendHotProdMinViewUv" connectionString="200"/>
|
||||
<add name="GetWXRecommendHotProdInterval" connectionString="3"/>
|
||||
<add name="IsKeepBase64UploadImgFile" connectionString="0"/>
|
||||
|
||||
<add name="UpdateWxFindOrderFileDir" connectionString="C:\inetpub\wwwroot\find_order_update"/>
|
||||
<add name="UpdateWxFindOrderUrl" connectionString="http://weidian.e57.cn/find_order_update/"/>
|
||||
<add name="WxFindOrderLimitVersion" connectionString="99"/>
|
||||
<add name="WxFindOrderLowVersion" connectionString="99"/>
|
||||
</connectionStrings>
|
||||
<!--
|
||||
有关 web.config 更改的说明,请参见 http://go.microsoft.com/fwlink/?LinkId=235367。
|
||||
|
||||
@@ -42,7 +42,8 @@ namespace TemuKJD.BLL
|
||||
KJDDBProduct dbProd = new KJDDBProduct() { size_json = "{}" };
|
||||
PDDProductInfo prodInfo = new PDDProductInfo()
|
||||
{
|
||||
source_json = JsonHelper.JObjectParse(outProdJson),
|
||||
//source_json = JsonHelper.JObjectParse(outProdJson),
|
||||
source_json = null,
|
||||
sale_count = frontProdInfo.goods.sold_quantity.ParseToString(),
|
||||
sale_count_text = frontProdInfo.goods.side_sales_tip,
|
||||
};
|
||||
@@ -423,7 +424,8 @@ namespace TemuKJD.BLL
|
||||
KJDDBProduct dbProd = new KJDDBProduct() { size_json = "{}" };
|
||||
PDDProductInfo prodInfo = new PDDProductInfo()
|
||||
{
|
||||
source_json = JsonHelper.JObjectParse(outProdJson),
|
||||
//source_json = JsonHelper.JObjectParse(outProdJson),
|
||||
source_json = null,
|
||||
sale_count = frontProdInfo.goods.sold_quantity.ParseToLong().ParseToString(),
|
||||
sale_count_text = frontProdInfo.goods.side_sales_tip,
|
||||
};
|
||||
|
||||
@@ -250,17 +250,17 @@ namespace TemuKJD.WXForms.AdminForms
|
||||
{
|
||||
// 三个参数第一个是物流公司名称
|
||||
var deliveryName = ExpressArr[0];
|
||||
var deliverId = PddBuyerOrderInfoLite.GetWxExpressNameToWxExpressCode(deliveryName);
|
||||
var deliverId = PddBuyerOrderLiteInfo.GetWxExpressNameToWxExpressCode(deliveryName);
|
||||
if (string.IsNullOrEmpty(deliverId))
|
||||
deliverId = PddBuyerOrderInfoLite.GetPddToWxExpressCompanyCode(deliveryName);
|
||||
deliverId = PddBuyerOrderLiteInfo.GetPddToWxExpressCompanyCode(deliveryName);
|
||||
|
||||
// 四个参数或则第一个不是物流公司名称的情况下,第一个是订单号,第二个是物流公司名称
|
||||
if (string.IsNullOrEmpty(deliverId))
|
||||
{
|
||||
deliveryName = ExpressArr[1];
|
||||
deliverId = PddBuyerOrderInfoLite.GetWxExpressNameToWxExpressCode(deliveryName);
|
||||
deliverId = PddBuyerOrderLiteInfo.GetWxExpressNameToWxExpressCode(deliveryName);
|
||||
if (string.IsNullOrEmpty(deliverId))
|
||||
deliverId = PddBuyerOrderInfoLite.GetPddToWxExpressCompanyCode(deliveryName);
|
||||
deliverId = PddBuyerOrderLiteInfo.GetPddToWxExpressCompanyCode(deliveryName);
|
||||
if (deliverId.IsNullOrEmpty())
|
||||
{
|
||||
errMsg += ", 运单信息不完整";
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
public partial class OtherBuyerOrderListForm : BaseForms.BaseGeneralForm
|
||||
{
|
||||
public static OtherBuyerOrderListForm Instance { get; set; } = null;
|
||||
ConcurrentList<PddBuyerOrderInfoLite> lstOtherBuyerOrderInfoLite { get; set; } = new ConcurrentList<PddBuyerOrderInfoLite>();
|
||||
ConcurrentList<PddBuyerOrderLiteInfo> lstOtherBuyerOrderInfoLite { get; set; } = new ConcurrentList<PddBuyerOrderLiteInfo>();
|
||||
bool isInitOrder = false;
|
||||
|
||||
public OtherBuyerOrderListForm()
|
||||
@@ -34,9 +34,9 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
|
||||
private void OtherBuyerOrderListForm_Load(object sender, EventArgs e)
|
||||
{
|
||||
lstOtherBuyerOrderInfoLite = NaiBa.Util.Helper.ConfigHelper.LoadConfig<ConcurrentList<PddBuyerOrderInfoLite>>("other_buyer_order_list");
|
||||
lstOtherBuyerOrderInfoLite = NaiBa.Util.Helper.ConfigHelper.LoadConfig<ConcurrentList<PddBuyerOrderLiteInfo>>("other_buyer_order_list");
|
||||
if (lstOtherBuyerOrderInfoLite == null)
|
||||
lstOtherBuyerOrderInfoLite = new ConcurrentList<PddBuyerOrderInfoLite>();
|
||||
lstOtherBuyerOrderInfoLite = new ConcurrentList<PddBuyerOrderLiteInfo>();
|
||||
lstOtherBuyerOrderInfoLite.RemoveAll(o => o.order_time < BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddMonths(-1)));
|
||||
|
||||
foreach (var buyer in lstOtherBuyerOrderInfoLite.Select(o => o.buyerName).Where(o => !o.IsNullOrEmpty()).Distinct().ToList())
|
||||
@@ -65,7 +65,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
//});
|
||||
}
|
||||
|
||||
void ShowOrder(PddBuyerOrderInfoLite order)
|
||||
void ShowOrder(PddBuyerOrderLiteInfo order)
|
||||
{
|
||||
if (order == null)
|
||||
return;
|
||||
@@ -162,7 +162,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
private void btnSendOrder_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
PddBuyerOrderInfoLite order = new PddBuyerOrderInfoLite();
|
||||
PddBuyerOrderLiteInfo order = new PddBuyerOrderLiteInfo();
|
||||
order.buyerName = cmbBuyerName.Text.Trim();
|
||||
order.order_amount = (txtOrderAmount.Text.Trim().ParseToDecimal() * 100).ParseToInt();
|
||||
order.order_sn = txtBuyerOrderSn.Text.Trim();
|
||||
@@ -198,13 +198,13 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
SendOrderE57(order, true);
|
||||
}
|
||||
|
||||
ConcurrentList<PddBuyerOrderInfoLite> tempWaitOrderLst = new ConcurrentList<PddBuyerOrderInfoLite>();
|
||||
ConcurrentList<PddBuyerOrderLiteInfo> tempWaitOrderLst = new ConcurrentList<PddBuyerOrderLiteInfo>();
|
||||
/// <summary>
|
||||
/// 调用e57接口更新web端订单数据信息
|
||||
/// </summary>
|
||||
/// <param name="order"></param>
|
||||
/// <param name="resetSendStatus">手动强制重置状态,一定重新发送</param>
|
||||
public void SendOrderE57(PddBuyerOrderInfoLite order, bool resetSendStatus = false)
|
||||
public void SendOrderE57(PddBuyerOrderLiteInfo order, bool resetSendStatus = false)
|
||||
{
|
||||
if (tempWaitOrderLst.Any(o => o.order_sn == order.order_sn))
|
||||
return;
|
||||
|
||||
@@ -44,8 +44,8 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
public static PDDBuyerOrderListForm Instance { get { if (instance == null || instance.IsDisposed || instance.Disposing) instance = new PDDBuyerOrderListForm(); return instance; } }
|
||||
ShopLoginInfo currentShop { get { return this.lblCurrentShop.Tag as ShopLoginInfo; } }
|
||||
//ConcurrentList<WxOrderInfoLite> lstWxOrderInfoLite { get; set; } = new ConcurrentList<WxOrderInfoLite>();
|
||||
ConcurrentList<PddBuyerOrderInfoLite> lstPddBuyerOrderInfoLite { get; set; } = new ConcurrentList<PddBuyerOrderInfoLite>();
|
||||
ConcurrentList<PddBuyerAfterSaleInfoLite> lstPddBuyerAfterSaleInfoLite { get; set; } = new ConcurrentList<PddBuyerAfterSaleInfoLite>();
|
||||
ConcurrentList<PddBuyerOrderLiteInfo> lstPddBuyerOrderInfoLite { get; set; } = new ConcurrentList<PddBuyerOrderLiteInfo>();
|
||||
ConcurrentList<PddBuyerAfterSaleLiteInfo> lstPddBuyerAfterSaleInfoLite { get; set; } = new ConcurrentList<PddBuyerAfterSaleLiteInfo>();
|
||||
public CancellationTokenSource cancellationTokenSource { get; set; } = new CancellationTokenSource();
|
||||
//public ChromiumWebBrowser cefWebBrowser = null;
|
||||
public BuyerOrderConfig buyerOrderConfig = new BuyerOrderConfig();
|
||||
@@ -55,7 +55,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
bool isInitOrder = false;
|
||||
bool isInitAfterSale = false;
|
||||
bool isInitBuyer = false;
|
||||
bool isReadOrder = false;
|
||||
bool isReadBuyerOrder = false;
|
||||
|
||||
public PDDBuyerOrderListForm()
|
||||
{
|
||||
@@ -81,16 +81,16 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
this.chkPause.Checked = buyerOrderConfig.IsPause;
|
||||
this.chkAutoAfterSale.Checked = buyerOrderConfig.IsAutoAfterSale;
|
||||
|
||||
lstPddBuyerOrderInfoLite = NaiBa.Util.Helper.ConfigHelper.LoadConfig<ConcurrentList<PddBuyerOrderInfoLite>>("pdd_buyer_order_list");
|
||||
lstPddBuyerOrderInfoLite = NaiBa.Util.Helper.ConfigHelper.LoadConfig<ConcurrentList<PddBuyerOrderLiteInfo>>("pdd_buyer_order_list");
|
||||
if (lstPddBuyerOrderInfoLite == null)
|
||||
lstPddBuyerOrderInfoLite = NaiBa.Util.Helper.ConfigHelper.LoadConfig<ConcurrentList<PddBuyerOrderInfoLite>>("pdd_buyer_order");
|
||||
lstPddBuyerOrderInfoLite = NaiBa.Util.Helper.ConfigHelper.LoadConfig<ConcurrentList<PddBuyerOrderLiteInfo>>("pdd_buyer_order");
|
||||
if (lstPddBuyerOrderInfoLite == null)
|
||||
lstPddBuyerOrderInfoLite = new ConcurrentList<PddBuyerOrderInfoLite>();
|
||||
lstPddBuyerOrderInfoLite = new ConcurrentList<PddBuyerOrderLiteInfo>();
|
||||
lstPddBuyerOrderInfoLite.RemoveAll(o => o.order_time < BaseClass.DateTimeToTimestampSeconds(DateTime.Now.AddMonths(-1)));
|
||||
|
||||
lstPddBuyerAfterSaleInfoLite = NaiBa.Util.Helper.ConfigHelper.LoadConfig<ConcurrentList<PddBuyerAfterSaleInfoLite>>("pdd_buyer_after_sale_list");
|
||||
lstPddBuyerAfterSaleInfoLite = NaiBa.Util.Helper.ConfigHelper.LoadConfig<ConcurrentList<PddBuyerAfterSaleLiteInfo>>("pdd_buyer_after_sale_list");
|
||||
if (lstPddBuyerAfterSaleInfoLite == null)
|
||||
lstPddBuyerAfterSaleInfoLite = new ConcurrentList<PddBuyerAfterSaleInfoLite>();
|
||||
lstPddBuyerAfterSaleInfoLite = new ConcurrentList<PddBuyerAfterSaleLiteInfo>();
|
||||
lstPddBuyerAfterSaleInfoLite.RemoveAll(o => o.orderDate < DateTime.Now.AddMonths(-1).ToString("yyMMdd").ParseToInt());
|
||||
|
||||
GetBuyer();
|
||||
@@ -116,7 +116,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
while(true)
|
||||
{
|
||||
Thread.Sleep(500);
|
||||
if (isReadOrder || isInitBuyer || isInitOrder || isInitAfterSale)
|
||||
if (isReadBuyerOrder || isInitBuyer || isInitOrder || isInitAfterSale)
|
||||
{
|
||||
Invoke(new Action(() => { pictureBox1.Visible = true; }));
|
||||
}
|
||||
@@ -175,7 +175,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
//});
|
||||
}
|
||||
|
||||
void ShowOrder(PddBuyerOrderInfoLite order)
|
||||
void ShowOrder(PddBuyerOrderLiteInfo order)
|
||||
{
|
||||
if (order == null)
|
||||
return;
|
||||
@@ -268,7 +268,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
}
|
||||
}
|
||||
|
||||
void ShowAfterSale(PddBuyerAfterSaleInfoLite afterSale)
|
||||
void ShowAfterSale(PddBuyerAfterSaleLiteInfo afterSale)
|
||||
{
|
||||
if (afterSale == null)
|
||||
return;
|
||||
@@ -559,14 +559,14 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
lblMsg.Text = buyer.buyer_name + " 正在获取订单列表 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
||||
}));
|
||||
|
||||
var list = JsonHelper.DeserializeJsonToList<PddBuyerOrderInfoLite>(JsonHelper.JObjectParse(data)["orders"].ParseToString());
|
||||
var list = JsonHelper.DeserializeJsonToList<PddBuyerOrderLiteInfo>(JsonHelper.JObjectParse(data)["orders"].ParseToString());
|
||||
foreach (var o in list)
|
||||
{
|
||||
o.buyerId = buyer.buyer_id;
|
||||
o.buyerName = buyer.buyer_name;
|
||||
o.outExpressCompanyMsg = o.extra_info.order_hint?.message; // todo 此处转换
|
||||
|
||||
PddBuyerOrderInfoLite order = null;
|
||||
PddBuyerOrderLiteInfo order = null;
|
||||
if (!this.lstPddBuyerOrderInfoLite.Any(or => or.order_sn == o.order_sn))
|
||||
{
|
||||
order = o;
|
||||
@@ -649,7 +649,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
lblMsg.Text = buyer.buyer_name + " 正在获取售后列表 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
||||
}));
|
||||
|
||||
var list = JsonHelper.DeserializeJsonToList<PddBuyerAfterSaleInfoLite>(JsonHelper.JObjectParse(data)["result"]["listItemVOList"].ParseToString());
|
||||
var list = JsonHelper.DeserializeJsonToList<PddBuyerAfterSaleLiteInfo>(JsonHelper.JObjectParse(data)["result"]["listItemVOList"].ParseToString());
|
||||
foreach (var af in list)
|
||||
{
|
||||
if (af.orderSn == "260414-035525772830257")
|
||||
@@ -661,7 +661,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
af.buyerName = buyer.buyer_name;
|
||||
|
||||
bool isUpdate = false;
|
||||
PddBuyerAfterSaleInfoLite afterSale = null;
|
||||
PddBuyerAfterSaleLiteInfo afterSale = null;
|
||||
if (!this.lstPddBuyerAfterSaleInfoLite.Any(or => or.afterSalesId == af.afterSalesId))
|
||||
{
|
||||
isUpdate = true;
|
||||
@@ -671,10 +671,10 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
else
|
||||
{
|
||||
afterSale = this.lstPddBuyerAfterSaleInfoLite.FirstOrDefault(aft => aft.afterSalesId == af.afterSalesId);
|
||||
var afterSaleTmp = JsonHelper.DeserializeJsonToObject<PddBuyerAfterSaleInfoLite>(JsonHelper.SerializeObject(afterSale));
|
||||
var afterSaleTmp = JsonHelper.DeserializeJsonToObject<PddBuyerAfterSaleLiteInfo>(JsonHelper.SerializeObject(afterSale));
|
||||
afterSaleTmp.sendStatus = "";
|
||||
afterSaleTmp.listItemMallVO = new ListItemMallVO();
|
||||
var afTmp = JsonHelper.DeserializeJsonToObject<PddBuyerAfterSaleInfoLite>(JsonHelper.SerializeObject(af));
|
||||
var afTmp = JsonHelper.DeserializeJsonToObject<PddBuyerAfterSaleLiteInfo>(JsonHelper.SerializeObject(af));
|
||||
afTmp.listItemMallVO = new ListItemMallVO();
|
||||
//"{\"buyerId\":\"9303896321\",\"buyerName\":\"吴镇强\",\"sendStatus\":\"\",\"orderSn\":\"260419-166104962590257\",\"orderDate\":260419,\"afterSalesId\":20379701953346,\"listItemExtraVO\":{\"navToDetailPageUrl\":\"/complaints_new_detail.html?after_sales_id=20379701953346&order_sn=260419-166104962590257\"},\"listItemMallVO\":{\"mallName\":\"喜悦时光婚礼屋\",\"mallLogo\":\"http://t16img.yangkeduo.com/pdd_ims/img_check/v2/F3E6FF9A2BE40120200112155401880/9632a275dd974e9aa2e138cde6d0adf9.png\",\"mallTagLink\":null,\"pddRoute\":\"mall_page.html?mall_id=938572084&msn=zjdvupyguflkhtcgugbw3hbdpm_axbuy&_sop_rcto=YWLr7xLhO9bbI6L9S-r6ALQbTuXTx_3fIjo\"},\"listItemStatusVO\":{\"statusText\":\"待用户发货\"},\"listItemGoodsVO\":{\"goodsImage\":\"https://img.pddpic.com/mms-material-img/2026-03-21/005e0aa1-ad62-4db3-8018-00490ddc0a82.jpeg\",\"goodsName\":\"2026高级可折叠蚊帐家用卧室懒人免安装加高加厚加密学生宿舍蚊帐\",\"spec\":\"免安装/可折叠/网眼加密【可爱粉】+固定器,适用双人1.8m床【190*160*80】\",\"goodsPrice\":1890,\"goodsNumber\":1,\"richTextList\":null},\"listItemAmountVO\":{\"orderAmountTitle\":\"实付:\",\"orderAmount\":1890,\"payLaterAmountTitle\":null,\"payLaterAmount\":null,\"refundAmountTitle\":\"退款金额:\",\"refundAmount\":1890,\"refundAmountText\":null,\"useCoupon\":false}}"
|
||||
//"{\"buyerId\":\"9303896321\",\"buyerName\":\"吴镇强\",\"sendStatus\":\"\",\"orderSn\":\"260419-166104962590257\",\"orderDate\":260419,\"afterSalesId\":20379701953346,\"listItemExtraVO\":{\"navToDetailPageUrl\":\"/complaints_new_detail.html?after_sales_id=20379701953346&order_sn=260419-166104962590257\"},\"listItemMallVO\":{\"mallName\":\"喜悦时光婚礼屋\",\"mallLogo\":\"http://t16img.yangkeduo.com/pdd_ims/img_check/v2/F3E6FF9A2BE40120200112155401880/9632a275dd974e9aa2e138cde6d0adf9.png\",\"mallTagLink\":null,\"pddRoute\":\"mall_page.html?mall_id=938572084&msn=zjdvupyguflkhtcgugbw3hbdpm_axbuy&_sop_rcto=YWKCoxwbKDHFAaL9S-r6ALQbTuXTx_3fIjo\"},\"listItemStatusVO\":{\"statusText\":\"待用户发货\"},\"listItemGoodsVO\":{\"goodsImage\":\"https://img.pddpic.com/mms-material-img/2026-03-21/005e0aa1-ad62-4db3-8018-00490ddc0a82.jpeg\",\"goodsName\":\"2026高级可折叠蚊帐家用卧室懒人免安装加高加厚加密学生宿舍蚊帐\",\"spec\":\"免安装/可折叠/网眼加密【可爱粉】+固定器,适用双人1.8m床【190*160*80】\",\"goodsPrice\":1890,\"goodsNumber\":1,\"richTextList\":null},\"listItemAmountVO\":{\"orderAmountTitle\":\"实付:\",\"orderAmount\":1890,\"payLaterAmountTitle\":null,\"payLaterAmount\":null,\"refundAmountTitle\":\"退款金额:\",\"refundAmount\":1890,\"refundAmountText\":null,\"useCoupon\":false}}"
|
||||
@@ -894,7 +894,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
GetPddOrder();
|
||||
MakeWxToPddAfterSales();
|
||||
}
|
||||
if (isReadOrder)
|
||||
if (isReadBuyerOrder)
|
||||
{
|
||||
nextGetOrderTime = DateTime.Now.AddMinutes(25);
|
||||
}
|
||||
@@ -910,7 +910,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
|
||||
void GetPddOrder()
|
||||
{
|
||||
isReadOrder = true;
|
||||
isReadBuyerOrder = true;
|
||||
|
||||
if (cancellationTokenSource != null)
|
||||
cancellationTokenSource.Cancel();
|
||||
@@ -1159,7 +1159,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
}
|
||||
Thread.Sleep(Randomx.GetId(6000, 8000));
|
||||
}
|
||||
isReadOrder = false;
|
||||
isReadBuyerOrder = false;
|
||||
|
||||
Invoke(new Action(() => { WxTalkForm.instance.TitleText = "订单读取已结束,等待下次读取"; }));
|
||||
}, cancellationTokenSource.Token);
|
||||
@@ -1513,13 +1513,13 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
}
|
||||
}
|
||||
|
||||
ConcurrentList<PddBuyerOrderInfoLite> tempWaitOrderLst = new ConcurrentList<PddBuyerOrderInfoLite>();
|
||||
ConcurrentList<PddBuyerOrderLiteInfo> tempWaitOrderLst { get; set; } = new ConcurrentList<PddBuyerOrderLiteInfo>();
|
||||
/// <summary>
|
||||
/// 调用e57接口更新web端订单数据信息
|
||||
/// </summary>
|
||||
/// <param name="order"></param>
|
||||
/// <param name="resetSendStatus">手动强制重置状态,一定重新发送</param>
|
||||
public void SendOrderE57(PddBuyerOrderInfoLite order, bool resetSendStatus = false)
|
||||
public void SendOrderE57(PddBuyerOrderLiteInfo order, bool resetSendStatus = false)
|
||||
{
|
||||
//if (resetSendStatus == true)
|
||||
//{
|
||||
@@ -1668,7 +1668,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
{
|
||||
Task.Run(() =>
|
||||
{
|
||||
while (isReadOrder)
|
||||
while (isReadBuyerOrder)
|
||||
{
|
||||
Thread.Sleep(500);
|
||||
//break;
|
||||
@@ -1726,7 +1726,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
}
|
||||
|
||||
// 通过服务端读取微信售后并触发拼多多售后或显示提示供买手手动退货
|
||||
public string MakeWxToPddAfterSale(PddBuyerOrderInfoLite order)
|
||||
public string MakeWxToPddAfterSale(PddBuyerOrderLiteInfo order)
|
||||
{
|
||||
//if (isReadOrder)
|
||||
//{
|
||||
@@ -1774,11 +1774,12 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
{
|
||||
ShowOrder(order);
|
||||
}));
|
||||
PddBuyerAfterSaleInfoLite afterSale = new PddBuyerAfterSaleInfoLite();
|
||||
PddBuyerAfterSaleLiteInfo afterSale = new PddBuyerAfterSaleLiteInfo();
|
||||
afterSale.listItemStatusVO = new ListItemStatusVO();
|
||||
afterSale.listItemStatusVO.statusText = "退款成功";
|
||||
afterSale.listItemExtraVO = new ListItemExtraVO();
|
||||
afterSale.listItemExtraVO.navToDetailPageUrl = "&order_sn=" + txtForceSendAfterSale.Text.Trim();
|
||||
//afterSale.listItemExtraVO.navToDetailPageUrl = "&order_sn=" + txtForceSendAfterSale.Text.Trim();
|
||||
afterSale.listItemExtraVO.navToDetailPageUrl = "&order_sn=" + order.order_sn;
|
||||
SendAfterSaleE57(afterSale, true);
|
||||
return "{\"success\":true,\"msg\":\"操作成功\"}";
|
||||
}
|
||||
@@ -1792,7 +1793,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
}
|
||||
|
||||
// 向服务端更新售后退货信息更新状态
|
||||
public void SendAfterSaleE57(PddBuyerAfterSaleInfoLite afterSale, bool resetSendStatus = false, bool isManualSendNoRecordCancelOrder = false)
|
||||
public void SendAfterSaleE57(PddBuyerAfterSaleLiteInfo afterSale, bool resetSendStatus = false, bool isManualSendNoRecordCancelOrder = false)
|
||||
{
|
||||
if (resetSendStatus)
|
||||
afterSale.sendStatus = "";
|
||||
@@ -2010,7 +2011,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
{
|
||||
var orderId = txtForceSendAfterSale.Text.Trim();
|
||||
|
||||
PddBuyerAfterSaleInfoLite afterSale = new PddBuyerAfterSaleInfoLite();
|
||||
PddBuyerAfterSaleLiteInfo afterSale = new PddBuyerAfterSaleLiteInfo();
|
||||
afterSale.listItemStatusVO = new ListItemStatusVO();
|
||||
afterSale.listItemStatusVO.statusText = "退款成功";
|
||||
afterSale.listItemExtraVO = new ListItemExtraVO();
|
||||
@@ -2042,7 +2043,7 @@ namespace TemuKJD.WXForms.TalkForms
|
||||
return;
|
||||
}
|
||||
|
||||
PddBuyerAfterSaleInfoLite afterSale = new PddBuyerAfterSaleInfoLite();
|
||||
PddBuyerAfterSaleLiteInfo afterSale = new PddBuyerAfterSaleLiteInfo();
|
||||
afterSale.listItemStatusVO = new ListItemStatusVO();
|
||||
afterSale.listItemStatusVO.statusText = "退款成功";
|
||||
afterSale.listItemExtraVO = new ListItemExtraVO();
|
||||
|
||||
@@ -354,7 +354,7 @@ offCountPara,false;offProductPara,100;IrregularitiesPara,true;noNeerPara,true;no
|
||||
|
||||
string arguments = "-" + fileName + "\r\n" + BaseClass.VersionCount + "\r\n" + newVersion + "\r\n" + updateFileAddress;
|
||||
|
||||
File.WriteAllText(System.Environment.CurrentDirectory + "\\UpdateConfig.ini", arguments);
|
||||
//File.WriteAllText(System.Environment.CurrentDirectory + "\\UpdateConfig.ini", arguments);
|
||||
|
||||
Process.Start(updatefilepath, arguments);
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user