1订单统计时区问题修复 2退货订单逻辑50% 3其他一些功能小改动
This commit is contained in:
1 parent
342a66f940
commit
24cf1dba7b
11 files changed
+121
-89
No files matched your search
@@ -450,7 +450,13 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
|
||||
{
|
||||
BaseMsgWindow.ShowAnimateMessage("订单扩展信息查询失败 " + BaseRegex.GetStringJson(ref html, "msg"), "Error", 5);
|
||||
}
|
||||
existOrderExtList = JsonHelper.DeserializeJsonToList<order_item_ext>(JsonHelper.JObjectParse(html)["data"].ParseToString());
|
||||
try
|
||||
{
|
||||
existOrderExtList = JsonHelper.DeserializeJsonToList<order_item_ext>(JsonHelper.JObjectParse(html)["data"].ParseToString());
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
}
|
||||
return existOrderExtList;
|
||||
}
|
||||
@@ -998,14 +1004,14 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
|
||||
{
|
||||
if (order.UpdateDateTime < dateStart.SelectedDate.Value)
|
||||
return true;
|
||||
if (chkEndDate.IsChecked == true && order.UpdateDateTime > dateEnd.SelectedDate.Value)
|
||||
if (chkEndDate.IsChecked == true && order.UpdateDateTime > dateEnd.SelectedDate.Value.AddDays(1))
|
||||
return true;
|
||||
}
|
||||
if (tb.Text == "成交时间")
|
||||
{
|
||||
if (order.CreateDateTime < dateStart.SelectedDate.Value)
|
||||
return true;
|
||||
if (chkEndDate.IsChecked == true && order.CreateDateTime > dateEnd.SelectedDate.Value)
|
||||
if (chkEndDate.IsChecked == true && order.CreateDateTime > dateEnd.SelectedDate.Value.AddDays(1))
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -709,7 +709,7 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
|
||||
url = "https://mobile.yangkeduo.com/index.html";
|
||||
else
|
||||
url = "https://mobile.yangkeduo.com/order.html?order_sn=" + outOrderId + "&page_from=1&main_orders=1&is_tester=1&refer_page_name=my_order" +
|
||||
"&refer_page_id=10032_" + BaseClass.ConvertDateTimeLong(DateTime.Now) + "_" + Randomx.GetWordNumber(10) + "&refer_page_sn=10032";
|
||||
"&refer_page_id=10032_" + BaseClass.DateTimeToTimestampMilliseconds(DateTime.Now) + "_" + Randomx.GetWordNumber(10) + "&refer_page_sn=10032";
|
||||
}
|
||||
|
||||
var orderItem = this.DataContext as oms_wei_order_item_info;
|
||||
@@ -769,7 +769,7 @@ namespace _29WxOrderWpf.Ctrls.OrderCtrls
|
||||
url = "https://mobile.yangkeduo.com/index.html";
|
||||
else
|
||||
url = "https://mobile.yangkeduo.com/order.html?order_sn=" + outOrderId + "&page_from=1&main_orders=1&is_tester=1&refer_page_name=my_order" +
|
||||
"&refer_page_id=10032_" + BaseClass.ConvertDateTimeLong(DateTime.Now) + "_" + Randomx.GetWordNumber(10) + "&refer_page_sn=10032";
|
||||
"&refer_page_id=10032_" + BaseClass.DateTimeToTimestampMilliseconds(DateTime.Now) + "_" + Randomx.GetWordNumber(10) + "&refer_page_sn=10032";
|
||||
}
|
||||
|
||||
var orderItem = this.DataContext as oms_wei_order_item_info;
|
||||
|
||||
@@ -359,7 +359,8 @@ namespace _29WxOrderWpf.Ctrls.Statistics.Models
|
||||
{
|
||||
long milliseconds = (long)reader.Value;
|
||||
// Unix 纪元:1970-01-01 UTC
|
||||
DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
|
||||
//DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
|
||||
DateTime epoch = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
|
||||
if (milliseconds.ToString().Length == 13)
|
||||
{
|
||||
return epoch.AddMilliseconds(milliseconds);
|
||||
@@ -373,7 +374,8 @@ namespace _29WxOrderWpf.Ctrls.Statistics.Models
|
||||
{
|
||||
if (long.TryParse((string)reader.Value, out long milliseconds))
|
||||
{
|
||||
DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
|
||||
//DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
|
||||
DateTime epoch = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
|
||||
if (milliseconds.ToString().Length == 13)
|
||||
{
|
||||
return epoch.AddMilliseconds(milliseconds);
|
||||
@@ -388,7 +390,8 @@ namespace _29WxOrderWpf.Ctrls.Statistics.Models
|
||||
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
|
||||
{
|
||||
// 序列化时转回时间戳
|
||||
DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
|
||||
//DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
|
||||
DateTime epoch = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
|
||||
long milliseconds = (long)((DateTime)value - epoch).TotalMilliseconds;
|
||||
writer.WriteValue(milliseconds);
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
xmlns:local="clr-namespace:_29WxOrderWpf.Windows.OrderWindows"
|
||||
xmlns:userctrls="clr-namespace:_29WxOrderWpf.UserControls" xmlns:buyerctrls="clr-namespace:_29WxOrderWpf.Ctrls.BuyerCtrls"
|
||||
mc:Ignorable="d" Style="{StaticResource BaseNoneBorderWindowStyle}"
|
||||
Title="创建退货单" Height="650" Width="843" ResizeMode="NoResize" Loaded="TransitAfterSaleWindow_Loaded">
|
||||
Title="创建退货单" Height="650" Width="900" ResizeMode="NoResize" Loaded="TransitAfterSaleWindow_Loaded">
|
||||
<Grid Background="Transparent" x:Name="mainGrid" Margin="2">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="50"></RowDefinition>
|
||||
|
||||
@@ -62,21 +62,11 @@ namespace _29WxOrderWpf.Windows.OrderWindows
|
||||
this.cmbExpressName.Items.Add("其他快递");
|
||||
|
||||
if (OrderItem != null)
|
||||
{
|
||||
//if (OrderItem.ItemTransitOrderAfterSale != null)
|
||||
//{
|
||||
// btnAdd.IsEnabled = false;
|
||||
|
||||
// this.txtUser.Text = OrderItem.ItemTransitOrderAfterSale.recipient_name;
|
||||
// this.txtMobile.Text = OrderItem.ItemTransitOrderAfterSale.recipient_phone;
|
||||
// this.txtDetailAddress.Text = OrderItem.ItemTransitOrderAfterSale.refund_detail_address;
|
||||
// this.txtProvince.Text = OrderItem.ItemTransitOrderAfterSale.refund_province;
|
||||
// this.txtCity.Text = OrderItem.ItemTransitOrderAfterSale.refund_city;
|
||||
// this.txtCounty.Text = OrderItem.ItemTransitOrderAfterSale.refund_county;
|
||||
//}
|
||||
|
||||
{
|
||||
// 上海仓默认发货地址
|
||||
txtSendUser.Text = "29供应链";
|
||||
// 随机用户名
|
||||
txtSendUser.Text = TransitWaybillHelper.LastName[Randomx.GetId(TransitWaybillHelper.LastName.Count)] + (Randomx.GetId(2) == 1 ? "先生" : "女士");
|
||||
// 固定手机号及地址
|
||||
txtSendMobile.Text = "13024622251";
|
||||
txtSendProvince.Text = "上海市";
|
||||
txtSendCity.Text = "上海市";
|
||||
@@ -89,7 +79,6 @@ namespace _29WxOrderWpf.Windows.OrderWindows
|
||||
txtSpuId.Text = OrderItem.product_id.ParseToString();
|
||||
txtSpecName.Text = OrderItem.sku_attr_str;
|
||||
|
||||
|
||||
txtWaybillId.Text = OrderItem.ItemRefund?.return_waybill_id;
|
||||
foreach (var cmbItem in cmbExpressName.Items)
|
||||
{
|
||||
@@ -98,8 +87,6 @@ namespace _29WxOrderWpf.Windows.OrderWindows
|
||||
cmbExpressName.SelectedItem = cmbItem;
|
||||
}
|
||||
}
|
||||
//cmbExpressName.SelectedItem =
|
||||
|
||||
|
||||
if (OrderItem.PddBuyerAfterSale != null)
|
||||
{
|
||||
@@ -111,39 +98,54 @@ namespace _29WxOrderWpf.Windows.OrderWindows
|
||||
|
||||
private void btnAdd_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (OrderItem?.ItemTransitOrder?.warehouse_status != 0 && OrderItem?.ItemTransitOrder?.warehouse_status != 1)
|
||||
if (OrderItem?.ItemTransitOrder?.warehouse_status != 2)
|
||||
{
|
||||
BaseMsgWindow.ShowError("当前订单仓库状态不支持售后,请联系买家直接退回总店!");
|
||||
BaseMsgWindow.ShowError("当前订单仓库状态不支持创建退货订单!");
|
||||
return;
|
||||
}
|
||||
|
||||
//http://localhost:8088/oms-api/external_procurement/createReturnPackage
|
||||
//{
|
||||
// "orderNo": "3737011320735026432",
|
||||
// "orderCode": "4600000167202606117621000767",
|
||||
// "refundProvince": "安徽省",
|
||||
// "refundCity": "合肥市",
|
||||
// "refundCounty": "瑶海区",
|
||||
// "refundDetailAddress": "某街道 1”,
|
||||
// "recipientName": "张三",
|
||||
// "recipientPhone": "13800138000"
|
||||
//} post(json)请求方式,如果使用客户端账户扣款增加一个参数account_user
|
||||
JObject jObj = new JObject();
|
||||
|
||||
JObject data = new JObject();
|
||||
data["orderNo"] = OrderItem.order_id;
|
||||
data["orderCode"] = OrderItem.ItemTransitOrder?.order_code;
|
||||
data["refundProvince"] = txtProvince.Text.Trim();
|
||||
data["refundCity"] = txtCity.Text.Trim();
|
||||
data["refundCounty"] = txtCounty.Text.Trim();
|
||||
data["refundDetailAddress"] = txtDetailAddress.Text.Trim();
|
||||
data["recipientName"] = txtUser.Text.Trim();
|
||||
data["recipientPhone"] = txtMobile.Text.Trim();
|
||||
data["account_user"] = BaseClass.UserName;
|
||||
data["accountUser"] = BaseClass.UserName;
|
||||
//data["platform"] = "WEISHOP";
|
||||
var getTransitAfterSaleUrl = "https://po.e57.cn/prod-api/api/oms-api/external_procurement/createReturnPackage";
|
||||
var getTransitAfterSaleStr = JsonHelper.SerializeObject(data);
|
||||
var getTransitAfterSaleRst = HttpResponseWXBLL.e57PostResponse(getTransitAfterSaleUrl, getTransitAfterSaleStr, "");
|
||||
jObj["orderCodeSource"] = OrderItem.order_id;
|
||||
jObj["logisticsCode"] = cmbExpressName.SelectedItem.ParseToString();
|
||||
jObj["logisticsExpressNo"] = txtWaybillId.Text.Trim();
|
||||
jObj["platform"] = "OTHER";
|
||||
jObj["shopName"] = OrderItem.ItemOrder?.shop_name;
|
||||
jObj["senderName"] = txtSendUser.Text.Trim();
|
||||
jObj["senderPhone"] = txtSendMobile.Text.Trim();
|
||||
jObj["senderProvince"] = txtSendProvince.Text.Trim();
|
||||
jObj["senderCity"] = txtSendCity.Text.Trim();
|
||||
jObj["senderArea"] = txtSendCounty.Text.Trim();
|
||||
jObj["senderAddress"] = txtSendDetailAddress.Text.Trim();
|
||||
jObj["receiverName"] = txtUser.Text.Trim();
|
||||
jObj["receiverPhone"] = txtMobile.Text.Trim();
|
||||
jObj["receiverProvince"] = txtProvince.Text.Trim();
|
||||
jObj["receiverCity"] = txtCity.Text.Trim();
|
||||
jObj["receiverArea"] = txtCounty.Text.Trim();
|
||||
jObj["receiverAddress"] = txtDetailAddress.Text.Trim();
|
||||
jObj["orderCreateTime"] = (OrderItem.ItemOrder?.CreateDateTime).ParseToString();
|
||||
jObj["userAccount"] = BaseClass.UserName;
|
||||
jObj["platformCode"] = "WEISHOP";
|
||||
jObj["afterSaleNo"] = OrderItem.ItemRefund?.after_sale_order_id;
|
||||
jObj["platformOrderNo"] = OrderItem.order_id;
|
||||
jObj["firstWeightFee"] = OrderItem.ItemTransitOrder.postage;
|
||||
|
||||
JObject jItemObj = new JObject();
|
||||
jItemObj["spuCode"] = OrderItem.product_id.ParseToString();
|
||||
jItemObj["spuName"] = OrderItem.title;
|
||||
jItemObj["skuCode"] = OrderItem.sku_id.ParseToString();
|
||||
jItemObj["specInfo"] = OrderItem.sku_attr_str;
|
||||
jItemObj["skuUrl"] = OrderItem.thumb_img;
|
||||
jItemObj["picUrl"] = OrderItem.thumb_img;
|
||||
jItemObj["returnQuantity"] = OrderItem.sku_cnt;
|
||||
jObj["orderDetailsList"] = new JArray();
|
||||
(jObj["orderDetailsList"] as JArray).Add(jItemObj);
|
||||
|
||||
|
||||
|
||||
var createReturnOrderUrl = "https://po.e57.cn/prod-api/api/oms-api/api/distribution/returns/addReturnOrder";
|
||||
var createReturnOrderStr = JsonHelper.SerializeObject(jObj);
|
||||
var getTransitAfterSaleRst = HttpResponseWXBLL.e57PostResponse(createReturnOrderUrl, createReturnOrderStr, "");
|
||||
if (!getTransitAfterSaleRst.ParseToString().Contains("<code>200</code>") && !getTransitAfterSaleRst.ParseToString().Contains("<code>0</code>"))
|
||||
{
|
||||
string msg = BaseRegex.GetStringXml(ref getTransitAfterSaleRst, "msg");
|
||||
|
||||
@@ -177,7 +177,7 @@
|
||||
<Compile Include="Model\DBModel\order_pdd_buyer_order.cs" />
|
||||
<Compile Include="Model\DBModel\TransitWarehouseParam.cs" />
|
||||
<Compile Include="Model\DBModel\user_payment_record.cs" />
|
||||
<Compile Include="Model\DBModel\WaybillHelper.cs" />
|
||||
<Compile Include="Model\DBModel\TransitWaybillHelper.cs" />
|
||||
<Compile Include="Model\Division\Division.cs" />
|
||||
<Compile Include="Model\Division\PddDivision.cs" />
|
||||
<Compile Include="Model\Result\PddBuyerAfterSaleLiteInfo.cs" />
|
||||
|
||||
@@ -32,7 +32,7 @@ namespace AllBase
|
||||
/// 版本ID
|
||||
/// </summary>
|
||||
|
||||
public static int VersionCount = 212;
|
||||
public static int VersionCount = 213;
|
||||
|
||||
public static string ServerUrl { get; set; } = "http://1.13.195.131:9000";
|
||||
public static string DebugUrl { get; set; } = "http://localhost:9000";
|
||||
@@ -630,9 +630,10 @@ namespace AllBase
|
||||
/// <param name="time"></param>
|
||||
/// <returns></returns>
|
||||
public static long ConvertDateTimeLong(DateTime time)
|
||||
{
|
||||
TimeSpan ts = time - new DateTime(1970, 1, 1, 0, 0, 0, 0);
|
||||
return Convert.ToInt64(ts.TotalMilliseconds);
|
||||
{
|
||||
//TimeSpan ts = time - new DateTime(1970, 1, 1, 0, 0, 0, 0);
|
||||
TimeSpan ts = time - TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
|
||||
return Convert.ToInt64(ts.TotalMilliseconds);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace AllBase.Model.DBModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 中转仓地址/联系电话随机生成帮助类
|
||||
/// </summary>
|
||||
public class TransitWaybillHelper
|
||||
{
|
||||
//中国移动:134、135、136、137、138、139、147、150、151、152、157、158、159、172、178、182、183、184、187、188、195、197、198。
|
||||
//中国联通:130、131、132、145、155、156、166、175、176、185、186、196。其中145号段主要用于上网卡。
|
||||
//中国电信:133、149、153、173、177、180、181、189、190、191、193、199。
|
||||
//中国广电:192。作为第四大运营商,其号段于2022年开始放号。
|
||||
public static List<int> MobileHead { get; set; } = new List<int>()
|
||||
{
|
||||
134, 135, 136, 137, 138, 139, 147, 150, 151, 152, 157, 158, 159, 172, 178, 182, 183, 184, 187, 188, 195, 197, 198,
|
||||
130, 131, 132, 155, 156, 166, 175, 176, 185, 186, 196,
|
||||
133, 149, 153, 173, 177, 180, 181, 189, 190, 191, 193, 199,
|
||||
};
|
||||
|
||||
public static List<string> LastName { get; set; } = new List<string>()
|
||||
{
|
||||
"赵", "钱", "孙", "李", "周", "吴", "郑", "王", "冯", "陈", "沈", "杨", "朱", "许", "何", "张",
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -1,27 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace AllBase.Model.DBModel
|
||||
{
|
||||
public class WaybillHelper
|
||||
{
|
||||
//中国移动:134、135、136、137、138、139、147、150、151、152、157、158、159、172、178、182、183、184、187、188、195、197、198。
|
||||
//中国联通:130、131、132、145、155、156、166、175、176、185、186、196。其中145号段主要用于上网卡。
|
||||
//中国电信:133、149、153、173、177、180、181、189、190、191、193、199。
|
||||
//中国广电:192。作为第四大运营商,其号段于2022年开始放号。
|
||||
public static List<int> MobileHead { get; set; } = new List<int>()
|
||||
{
|
||||
134, 135, 136, 137, 138, 139, 147, 150, 151, 152, 157, 158, 159, 172, 178, 182, 183, 184, 187, 188, 195, 197, 198,
|
||||
130, 131, 132, 155, 156, 166, 175, 176, 185, 186, 196,
|
||||
133, 149, 153, 173, 177, 180, 181, 189, 190, 191, 193, 199,
|
||||
};
|
||||
|
||||
public static List<string> LastName { get; set; } = new List<string>()
|
||||
{
|
||||
"赵", "钱", "孙", "李", "周", "吴", "郑", "王", "冯", "陈", "沈", "杨", "朱", "许", "何", "张",
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -78,6 +78,23 @@ namespace AllBase.Model.DBModel
|
||||
/// 中转出库时间
|
||||
/// </summary>
|
||||
public DateTime? outbound_time { get; set; }
|
||||
public int has_reject { get; set; }
|
||||
/// <summary>
|
||||
/// 是否有退货: 0=无,1=有
|
||||
/// </summary>
|
||||
public int? has_return { get; set; }
|
||||
/// <summary>
|
||||
/// 订单初始金额(单位:分)
|
||||
/// </summary>
|
||||
public int? postage { get; set; }
|
||||
/// <summary>
|
||||
/// 重试取号是否成功:0=未尝试 1=成功 2=失败
|
||||
/// </summary>
|
||||
public int? retry_acquire_success { get; set; }
|
||||
/// <summary>
|
||||
/// 超重费用,单位:分
|
||||
/// </summary>
|
||||
public int? over_weight_fee { get; set; }
|
||||
|
||||
public int has_reject { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -327,8 +327,8 @@ namespace TemuKJD.ToolForms
|
||||
jObj["city_id"] = transitWarehouse.city_id;
|
||||
jObj["district_id"] = transitWarehouse.district_id;
|
||||
jObj["address"] = transitWarehouse.TransDetailAddress + Randomx.GetId(1, 35) + Randomx.GetId(1, 9).ToString().PadLeft(2, '0') + "室" + txtSourceCode.Text;
|
||||
jObj["mobile"] = WaybillHelper.MobileHead[Randomx.GetId(WaybillHelper.MobileHead.Count)] + Randomx.GetNumber(8);
|
||||
jObj["name"] = WaybillHelper.LastName[Randomx.GetId(WaybillHelper.LastName.Count)] + (Randomx.GetId(2) == 1 ? "先生" : "女士");
|
||||
jObj["mobile"] = TransitWaybillHelper.MobileHead[Randomx.GetId(TransitWaybillHelper.MobileHead.Count)] + Randomx.GetNumber(8);
|
||||
jObj["name"] = TransitWaybillHelper.LastName[Randomx.GetId(TransitWaybillHelper.LastName.Count)] + (Randomx.GetId(2) == 1 ? "先生" : "女士");
|
||||
postData = JsonHelper.SerializeObject(jObj);
|
||||
request.PostData.Elements[0].Bytes = System.Text.Encoding.UTF8.GetBytes(postData);
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user