1显示最新一条物流信息和展示完整物流轨迹 2优化订单48小时或72小时过滤逻辑
This commit is contained in:
1 parent
f3fa093709
commit
db6774dbda
12 files changed
+749
-33
No files matched your search
@@ -0,0 +1,134 @@
|
||||
using _29WxOrderWpf.BaseWindows;
|
||||
using _29WxOrderWpf.Commands;
|
||||
using AllBase;
|
||||
using AllBase.Model.DBModel;
|
||||
using AllBase.Model.MvvmBaseClasses;
|
||||
using AllBase.Model.Result;
|
||||
using NaiBa.Util.Extension;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Threading;
|
||||
using Work;
|
||||
using Work._29Tools.BLL;
|
||||
using Work._29Tools.Forms.ShopForms;
|
||||
using Work.BaseForms;
|
||||
|
||||
namespace _29WxOrderWpf.ViewModels
|
||||
|
||||
{
|
||||
/// <summary>
|
||||
/// 更改运单号ViewModel
|
||||
/// </summary>
|
||||
public class EWaybillPathViewModel : PropertyNotifyObject
|
||||
{
|
||||
public oms_wei_order_info Order
|
||||
{
|
||||
get { return this.GetValue(x => x.Order); }
|
||||
set { this.SetValue(x => x.Order, value); }
|
||||
}
|
||||
public string OrderId
|
||||
{
|
||||
get { return this.GetValue(x => x.OrderId); }
|
||||
set { this.SetValue(x => x.OrderId, value); }
|
||||
}
|
||||
public string ExpressName
|
||||
{
|
||||
get { return this.GetValue(x => x.ExpressName); }
|
||||
set { this.SetValue(x => x.ExpressName, value); }
|
||||
}
|
||||
public string WaybillId
|
||||
{
|
||||
get { return this.GetValue(x => x.WaybillId); }
|
||||
set { this.SetValue(x => x.WaybillId, value); }
|
||||
}
|
||||
public bool IsGetWaybillPath
|
||||
{
|
||||
get { return this.GetValue(x => x.IsGetWaybillPath); }
|
||||
set { this.SetValue(x => x.IsGetWaybillPath, value); }
|
||||
}
|
||||
|
||||
public ObservableCollection<oms_wei_ewaybill_path> WaybillPathInfos
|
||||
{
|
||||
get { return this.GetValue(x => x.WaybillPathInfos); }
|
||||
set { this.SetValue(x => x.WaybillPathInfos, value); }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 请求关闭窗口
|
||||
/// </summary>
|
||||
public event Action RequestClose;
|
||||
|
||||
#region 命令
|
||||
|
||||
public ICommand GetEWaybillPathCommand { get; }
|
||||
|
||||
#endregion
|
||||
private volatile bool _isWindowLoaded = false;
|
||||
|
||||
public EWaybillPathViewModel(oms_wei_order_info _order, string _waybillId, string _expressName)
|
||||
{
|
||||
Order = _order;
|
||||
OrderId = Order?.order_id;
|
||||
ExpressName = _expressName;
|
||||
WaybillId = _waybillId;
|
||||
IsGetWaybillPath = false;
|
||||
|
||||
GetEWaybillPathCommand = new DelegateCommand(GetEWaybillPath);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 窗口加载完成时调用
|
||||
/// </summary>
|
||||
public void Start()
|
||||
{
|
||||
_isWindowLoaded = true;
|
||||
|
||||
GetEWaybillPath();
|
||||
}
|
||||
/// <summary>
|
||||
/// 窗口关闭时调用,停止后台任务
|
||||
/// </summary>
|
||||
public void Stop()
|
||||
{
|
||||
_isWindowLoaded = false;
|
||||
}
|
||||
|
||||
public void GetEWaybillPath()
|
||||
{
|
||||
string orderId = Order.order_id;
|
||||
ShopLoginInfo shop = Order.Shop;
|
||||
Task.Run(async () =>
|
||||
{
|
||||
IsGetWaybillPath = true;
|
||||
|
||||
var url = BaseClass.Build29WxObjString("order/wx_get_erp_ewaybill_path_list");
|
||||
//var url = BaseClass.Build29WxObjString("order/wx_get_erp_ewaybill_path_latest_list");
|
||||
var data = UserLogin.GetSignaturex();
|
||||
//data += "&erp_order_id_in=" + order_id;
|
||||
data += "&waybill_id_in=" + WaybillId;
|
||||
var html = GetHtml.PostUtf8(url, data);
|
||||
if (string.IsNullOrEmpty(html) || !html.Contains("\"code\":200"))
|
||||
html = GetHtml.PostUtf8(url, data);
|
||||
|
||||
if (!html.Contains("\"code\":200"))
|
||||
{
|
||||
BaseMsgWindow.ShowError("查询失败请重试");
|
||||
return;
|
||||
}
|
||||
|
||||
this.WaybillPathInfos = new ObservableCollection<oms_wei_ewaybill_path>(
|
||||
JsonHelper.DeserializeJsonToList<oms_wei_ewaybill_path>(JObject.Parse(html)["data"].ParseToString()).OrderByDescending(p => p.update_time).ToList());
|
||||
|
||||
IsGetWaybillPath = false;
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user