266 lines
11 KiB
C#
266 lines
11 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using System.Linq;
|
||
using System.Text;
|
||
using System.Windows.Forms;
|
||
using AllBase;
|
||
using Work.Model;
|
||
|
||
namespace Work
|
||
{
|
||
public class ExpressSet
|
||
{
|
||
public static bool AutoAdd1408Room = false;
|
||
public static Dictionary<string, string> ExpressList = new Dictionary<string, string>();
|
||
public static Dictionary<string, string> ExpressBuyList = new Dictionary<string, string>();
|
||
public static Dictionary<string, string> ExpressBuyList_MTY = new Dictionary<string, string>();
|
||
public static Dictionary<string, GiftExp> GiftExpressBuyList = new Dictionary<string, GiftExp>();//礼品网礼品单
|
||
public static Dictionary<string, string> GiftExpressEmtyBuyList = new Dictionary<string, string>();//礼品网快递单
|
||
|
||
public string DeleteId = "";
|
||
public int Id = 0;
|
||
public ExpressBase Express;
|
||
public ExpressSet(string deleteId)
|
||
{
|
||
DeleteId = deleteId;
|
||
}
|
||
public ExpressSet(int deleteId)
|
||
{
|
||
Id = deleteId;
|
||
}
|
||
|
||
public ExpressSet(ExpressBase express)
|
||
{
|
||
Express = express;
|
||
}
|
||
|
||
public static void Ini()
|
||
{
|
||
ExpressList.Add("申通速递", "1");
|
||
ExpressList.Add("申通快递", "1");
|
||
ExpressList.Add("百世快递", "3");
|
||
ExpressList.Add("顺丰快递", "44");
|
||
ExpressList.Add("圆通快递", "85");
|
||
ExpressList.Add("中通快递", "115");
|
||
ExpressList.Add("全峰快递", "116");
|
||
ExpressList.Add("优速快递", "117");
|
||
ExpressList.Add("邮政EMS", "118");
|
||
ExpressList.Add("EMS", "118");
|
||
ExpressList.Add("百世快运", "229");
|
||
ExpressList.Add("天天快递", "119");
|
||
ExpressList.Add("京东配送", "120");
|
||
ExpressList.Add("韵达快递", "121");
|
||
ExpressList.Add("宅急送快递", "129");
|
||
ExpressList.Add("德邦快递", "131");
|
||
ExpressList.Add("邮政快递包裹", "132");
|
||
ExpressList.Add("亚马逊物流", "156");
|
||
//ExpressList.Add("中邮速递", "211");
|
||
ExpressList.Add("EMS-国际件", "213");
|
||
ExpressList.Add("中铁物流", "214");
|
||
ExpressList.Add("日日顺物流", "227");
|
||
ExpressList.Add("苏宁快递", "228");
|
||
ExpressList.Add("德邦物流", "230");
|
||
ExpressList.Add("邮政标准快递", "324");
|
||
ExpressList.Add("邮政国际包裹", "325");
|
||
ExpressList.Add("中铁快运", "332");
|
||
ExpressList.Add("赛澳递", "89");
|
||
ExpressList.Add("晟邦物流", "90");
|
||
ExpressList.Add("快捷快递", "122");
|
||
ExpressList.Add("国通快递", "124");
|
||
ExpressList.Add("如风达", "130");
|
||
//ExpressList.Add("龙邦快递", "133");
|
||
//ExpressList.Add("龙邦速递", "133");
|
||
ExpressList.Add("亚风速递", "317");
|
||
ExpressList.Add("远成快运", "205");
|
||
ExpressList.Add("壹米滴答快运", "348");
|
||
ExpressList.Add("京广速递", "281");
|
||
ExpressList.Add("承诺达特快", "351");
|
||
ExpressList.Add("加运美", "275");
|
||
ExpressList.Add("安迅物流", "352");
|
||
ExpressList.Add("中通快运", "343");
|
||
ExpressList.Add("速尔快递", "155");
|
||
ExpressList.Add("顺丰快运", "372");
|
||
ExpressList.Add("极兔速递", "384");
|
||
ExpressList.Add("韵达快运", "344");
|
||
|
||
////ExpressBuyList.Add("国通快递(0.55元)", "66");
|
||
////ExpressBuyList.Add("韵达快递-电子(0.5元)", "30");
|
||
////ExpressBuyList.Add("亚风速递-电子(0.5元)", "109");
|
||
////ExpressBuyList.Add("京广速递(0.60元)", "94");
|
||
//ExpressBuyList.Add("安迅物流-电子(0.60元)", "115");
|
||
//ExpressBuyList.Add("天天快递-电子(0.65元)", "127");
|
||
////ExpressBuyList.Add("圆通快递-电子(0.90元)", "106");
|
||
//ExpressBuyList.Add("申通快递-电子(0.75元)", "113");
|
||
//ExpressBuyList.Add("中通快运-电子(0.75元)", "123");
|
||
////ExpressBuyList.Add("申通快递(0.75元)", "72");
|
||
////ExpressBuyList.Add("京广速递-电子(0.8元)", "116");
|
||
|
||
//ExpressBuyList.Add("百世快递-电子(0.5元)", "117");
|
||
//ExpressBuyList.Add("远成快运(0.95元)", "88");
|
||
//ExpressBuyList.Add("龙邦速递(0.95元)", "68");
|
||
//ExpressBuyList.Add("亚风速递(1.00元)", "69");
|
||
//ExpressBuyList.Add("优速快递(0.85元)", "85");
|
||
|
||
|
||
////ExpressBuyList_MTY.Add("国通快递--拼多多专用(0.5元)", "53");
|
||
//ExpressBuyList_MTY.Add("圆通快递--电子面单(0.55元)", "56");
|
||
//ExpressBuyList_MTY.Add("承诺达特快--电子面单(0.55元)", "57");
|
||
////ExpressBuyList_MTY.Add("亚风速递--拼多多专用(0.65元)", "28");
|
||
//ExpressBuyList_MTY.Add("加运美--拼多多专用(0.5元)", "54");
|
||
//ExpressBuyList_MTY.Add("申通快递--拼多多专用(0.7元)", "52");
|
||
//ExpressBuyList_MTY.Add("百世快递--拼多多专用(0.9元)", "34");
|
||
//ExpressBuyList_MTY.Add("中通快递--拼多多专用(0.9元)", "49");
|
||
//ExpressBuyList_MTY.Add("百世快递--电子面单(1.05元))", "51");
|
||
//从服务端获取猫头鹰快递
|
||
if (!BaseClass.IsXiaoNaiNiu)
|
||
{
|
||
IniMtyExp();
|
||
}
|
||
|
||
|
||
}
|
||
|
||
public static void IniMtyExp()
|
||
{
|
||
if (ExpressBuyList_MTY.Count > 0)
|
||
return;
|
||
string url = BaseClass.BuildObjString("empty_bag&act=get");
|
||
StringBuilder s = new StringBuilder();
|
||
s.Append("&" + UserLogin.GetSignaturex());
|
||
string html = GetHtml.PostUtf8(url, s.ToString());
|
||
html = GetHtml.UrlDecode(html);
|
||
var expArr = BaseRegex.GetMatchRegex(ref html, "{\"name\":\"[\\S\\s]+?\",\"price\":\"\\([\\S\\s]+?\\)\",\"value\":\"[\\d]+?\"}");
|
||
for (int i = 0; i < expArr.Count; i++)
|
||
{
|
||
var item = expArr[i].ToString();
|
||
string expName = BaseRegex.GetStringJson(ref item, "name");
|
||
string price = BaseRegex.GetStringJson(ref item, "price");
|
||
string val = BaseRegex.GetStringJson(ref item, "value");
|
||
string keyStr = expName + price;
|
||
if (ExpressBuyList_MTY.ContainsKey(keyStr))
|
||
{
|
||
continue;
|
||
}
|
||
ExpressBuyList_MTY.Add(keyStr, val);
|
||
}
|
||
}
|
||
|
||
public static string Add(string expressName, string expressNo, string name, string mobile, string address)
|
||
{
|
||
if (string.IsNullOrEmpty(expressName) || string.IsNullOrEmpty(expressNo) || string.IsNullOrEmpty(name) ||
|
||
string.IsNullOrEmpty(mobile) || string.IsNullOrEmpty(address) || !ExpressList.ContainsKey(expressName))
|
||
{
|
||
return "请填写完整的信息";
|
||
}
|
||
if (AutoAdd1408Room && !address.Contains("1408") && !address.Contains("95278"))
|
||
address += "95278"; //"1408";
|
||
string expressId = ExpressList[expressName];
|
||
StringBuilder s = new StringBuilder();
|
||
s.Append("&express_id=" + expressId);
|
||
s.Append("&express_no=" + expressNo);
|
||
s.Append("&express_name=" + expressName);
|
||
s.Append("&name=" + name);
|
||
s.Append("&mobile=" + mobile);
|
||
s.Append("&address=" + address);
|
||
string data = UserLogin.GetSignaturex() + s;
|
||
string url = BaseClass.BuildObjString("express&act=add");
|
||
string html = GetHtml.PostUtf8(url, data);
|
||
if (string.IsNullOrEmpty(html))
|
||
{
|
||
return "提交异常,请检查网络";
|
||
}
|
||
if (html == "had")
|
||
{
|
||
return "已经存在";
|
||
}
|
||
if (html == "ok")
|
||
{
|
||
ExpressBase e = new ExpressBase();
|
||
e.address = address;
|
||
e.express_id = expressId;
|
||
e.express_name = expressName;
|
||
e.express_no = expressNo;
|
||
e.mobile = mobile;
|
||
e.name = name;
|
||
e.use_times = 0;
|
||
e.buy_type = 1;
|
||
CollectionClass.ExpressList.Add(e);
|
||
CollectionClass.ExpressTempList.Add(e);
|
||
return "";
|
||
}
|
||
return "链接异常";
|
||
}
|
||
|
||
public static string path;
|
||
public static void Input()
|
||
{
|
||
string[] file = FileBase.ReadAllLines(path, Encoding.Default);
|
||
Input(file);
|
||
}
|
||
|
||
public static void Input(string[] file)
|
||
{
|
||
string message = "";
|
||
for (int i = 0; i < file.Length; i++)
|
||
{
|
||
if (string.IsNullOrEmpty(file[i]))
|
||
continue;
|
||
string[] l = file[i].Replace(",", ",").Split(',');
|
||
if (l.Length != 5)
|
||
continue;
|
||
string expressName = l[0], expressNo = l[1], name = l[2], mobile = l[3], address = l[4];
|
||
string msg = Add(expressName, expressNo, name, mobile, address);
|
||
if (!string.IsNullOrEmpty(msg))
|
||
message += "单号:" + expressNo + " 添加失败:" + msg;
|
||
}
|
||
if (!string.IsNullOrEmpty(message))
|
||
MessageBox.Show(message, "提示");
|
||
}
|
||
|
||
public void Delete()
|
||
{
|
||
Delete(DeleteId);
|
||
}
|
||
|
||
public string Delete(string no)
|
||
{
|
||
StringBuilder s = new StringBuilder();
|
||
s.Append("&express_no=" + no);
|
||
s.Append("&id=" + Id);
|
||
string data = UserLogin.GetSignaturex() + s;
|
||
string url = BaseClass.BuildObjString("express&act=delete");
|
||
string html = GetHtml.PostUtf8(url, data);
|
||
if (string.IsNullOrEmpty(html) || html != "ok")
|
||
{
|
||
return "提交异常,请检查网络";
|
||
}
|
||
return "";
|
||
}
|
||
|
||
|
||
public void Update()
|
||
{
|
||
StringBuilder s = new StringBuilder();
|
||
s.Append("&name=" + Express.name);
|
||
s.Append("&mobile=" + Express.mobile);
|
||
s.Append("&address=" + GetHtml.UrlEncodeUtf8(Express.address));
|
||
s.Append("&id=" + Express.id);
|
||
string data = UserLogin.GetSignaturex() + s;
|
||
string url = BaseClass.BuildObjString("express&act=update");
|
||
string html = GetHtml.PostUtf8(url, data);
|
||
if (string.IsNullOrEmpty(html) || html != "ok")
|
||
{
|
||
MessageBox.Show("提交异常,请检查网络");
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
public class GiftExp
|
||
{
|
||
public string storeId { get; set; }
|
||
|
||
public string kdId { get; set; }
|
||
}
|
||
}
|