diff --git a/BBWY.Client/APIServices/QiKu/PackTaskService.cs b/BBWY.Client/APIServices/QiKu/PackTaskService.cs index cb9813b6..f6133700 100644 --- a/BBWY.Client/APIServices/QiKu/PackTaskService.cs +++ b/BBWY.Client/APIServices/QiKu/PackTaskService.cs @@ -56,7 +56,7 @@ namespace BBWY.Client.APIServices ShopId = globalContext.User.Shop.ShopId.ToString() }, null, HttpMethod.Post); } - public ApiResponse GetWareHouseList(string WayBillNo = null, string SourceExpressName = null, int? isWorry = null, string departmentName = null, string skuId = null, string taskId = null, + public ApiResponse GetWareHouseList(string WayBillNo = null, string SourceExpressName = null, string departmentName = null, string skuId = null, string taskId = null, TaskState? TaskState = null, string ShopName = null, @@ -74,7 +74,6 @@ namespace BBWY.Client.APIServices } return SendRequest(globalContext.QKApiHost, "api/PackTask/SearchTaskList", new { - IsWorry = isWorry, DepartmentName = departmentName, SkuId = skuId, TaskId = taskId, @@ -143,16 +142,6 @@ namespace BBWY.Client.APIServices , null, HttpMethod.Post); } - public ApiResponse UpdateTaskStatus(long id, int taskStatus, string orderId) - { - return SendRequest(globalContext.QKApiHost, "api/PackTask/UpdatePackTaskStatus", new - { - id, - taskStatus, - orderId - } - , null, HttpMethod.Post); - } @@ -304,13 +293,13 @@ namespace BBWY.Client.APIServices /// /// /// - public ApiResponse SearchOverTimeTaskList(string ShopId, DateTime? StartTime, DateTime? EndTime, OverTimeTaskType? TaskState, int? PageIndex, int? PageSize) + public ApiResponse SearchOverTimeTaskList(string ShopId, DateTime? StartTime, DateTime? EndTime, OverTimeTaskType? OverTimeTaskType, int? PageIndex, int? PageSize=20) { return SendRequest(globalContext.QKApiHost, $"api/PackTask/SearchOverTimeTaskList", new { ShopId, StartTime, EndTime, - TaskState, + OverTimeTaskType, PageIndex, PageSize }, null, HttpMethod.Post); diff --git a/BBWY.Client/APIServices/QiKu/SealBoxService.cs b/BBWY.Client/APIServices/QiKu/SealBoxService.cs index 3596fec7..8febd8d2 100644 --- a/BBWY.Client/APIServices/QiKu/SealBoxService.cs +++ b/BBWY.Client/APIServices/QiKu/SealBoxService.cs @@ -263,5 +263,22 @@ namespace BBWY.Client.APIServices return SendRequest(globalContext.QKApiHost, $"api/SealBox/GetWareTransportCounts", null, null, HttpMethod.Post); } + + public ApiResponse GetWareWaitCompletedList(string shopId, int? PageIndex, int? PageSize) + { + return SendRequest(globalContext.QKApiHost, $"api/SealBox/GetWareWaitCompletedList", + new { + shopId, + PageIndex, + PageSize + + }, null, HttpMethod.Post); + } + + public ApiResponse WareCompetedWaitCompleted(long sealBoxId) + { + return SendRequest(globalContext.QKApiHost, $"api/SealBox/WareCompetedWaitCompleted?sealBoxId={sealBoxId}", + null, null, HttpMethod.Post); + } } } diff --git a/BBWY.Client/Helpers/OverTimeHelper.cs b/BBWY.Client/Helpers/OverTimeHelper.cs new file mode 100644 index 00000000..f8341f78 --- /dev/null +++ b/BBWY.Client/Helpers/OverTimeHelper.cs @@ -0,0 +1,41 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace BBWY.Client.Helpers +{ + public class OverTimeHelper + { + + public static string GetTimeString(TimeSpan timespan) + { + if (timespan.TotalMilliseconds > 0) + { + if (timespan.Days > 0) + { + return $"{timespan.Days}天{timespan.Hours}小时{timespan.Minutes}分"; + } + + if (timespan.Hours > 0) + { + return $"{timespan.Hours}小时{timespan.Minutes}分"; + } + return $"{timespan.Minutes}分钟"; + } + else + { + if (-timespan.Days > 0) + { + return $"{-timespan.Days}天{-timespan.Hours}小时{-timespan.Minutes}分"; + } + + if (-timespan.Hours > 0) + { + return $"{-timespan.Hours}小时{-timespan.Minutes}分"; + } + return $"{-timespan.Minutes}分钟"; + } + + } + } +} diff --git a/BBWY.Client/Models/APIModel/Request/CreateTaskRequest.cs b/BBWY.Client/Models/APIModel/Request/CreateTaskRequest.cs index de52bcb8..aa549940 100644 --- a/BBWY.Client/Models/APIModel/Request/CreateTaskRequest.cs +++ b/BBWY.Client/Models/APIModel/Request/CreateTaskRequest.cs @@ -98,7 +98,6 @@ namespace BBWY.Client.Models.APIModel.Request /// public int? CertificatePosition { get; set; } - //public Worry IsWorry { get; set; } public string OrderId { get; set; } public Platform Platform { get; set; } diff --git a/BBWY.Client/Models/APIModel/Response/PackTask/SearchOverTimeTaskResponse.cs b/BBWY.Client/Models/APIModel/Response/PackTask/SearchOverTimeTaskResponse.cs index 2fe207a3..5138e970 100644 --- a/BBWY.Client/Models/APIModel/Response/PackTask/SearchOverTimeTaskResponse.cs +++ b/BBWY.Client/Models/APIModel/Response/PackTask/SearchOverTimeTaskResponse.cs @@ -16,15 +16,15 @@ namespace BBWY.Client.Models.APIModel /// 超时日期 /// public DateTime OverTimeDate { get; set; } - /// - /// 任务信息(任务id 或者封箱id) - /// - public string TaskMessage { get; set; } + ///// + ///// 任务信息(任务id 或者封箱id) + ///// + //public string TaskMessage { get; set; } /// - /// 任务类型 + /// 超时任务类型 /// - public TaskState TaskState { get; set; } + public OverTimeTaskType? OverTimeTaskType { get; set; } /// /// 任务人 /// @@ -38,5 +38,19 @@ namespace BBWY.Client.Models.APIModel /// 备注 /// public string RemarkMessage { get; set; } + + /// + /// 任务类型(任务ID = 0,封箱ID = 1) + /// + public TaskMessageType TaskMessageType { get; set; } + /// + /// 任务id 或者 封箱id + /// + public long Id { get; set; } + + /// + /// 任务状态/或者封箱状态 + /// + public string TaskState { get; set; } } } diff --git a/BBWY.Client/Models/APIModel/Response/PackTask/SearchTaskListResponse.cs b/BBWY.Client/Models/APIModel/Response/PackTask/SearchTaskListResponse.cs index b09999ff..b669a320 100644 --- a/BBWY.Client/Models/APIModel/Response/PackTask/SearchTaskListResponse.cs +++ b/BBWY.Client/Models/APIModel/Response/PackTask/SearchTaskListResponse.cs @@ -149,10 +149,7 @@ namespace BBWY.Client.Models.APIModel /// 合格证数据 /// public CertificateModel[] Cers { get; set; } - /// - /// 是否加急 - /// - public int IsWorry { get; set; } + /// /// 品牌 @@ -161,10 +158,10 @@ namespace BBWY.Client.Models.APIModel public string OrderId { get; set; } - /// - ///分箱情况 - /// - public WareHourseDTO[] WareHourses { get; set; } + ///// + /////分箱情况 + ///// + //public WareHourseDTO[] WareHourses { get; set; } /// /// 地托编号 /// diff --git a/BBWY.Client/Models/APIModel/Response/PackTask/SearchWaitFallWareResponse.cs b/BBWY.Client/Models/APIModel/Response/PackTask/SearchWaitFallWareResponse.cs index b25cd46d..3e9f1bb6 100644 --- a/BBWY.Client/Models/APIModel/Response/PackTask/SearchWaitFallWareResponse.cs +++ b/BBWY.Client/Models/APIModel/Response/PackTask/SearchWaitFallWareResponse.cs @@ -73,9 +73,14 @@ namespace BBWY.Client.Models.APIModel /// 商品数量(封箱sku任务数总和) /// public int ProductCount { get; set; } + + /// + /// 提交采购单过期时间 + /// + public DateTime? SetPurchaseOrderOverTime { get; set; } } - public class WaitFallWareModel + public class WaitFallWareModel:NotifyObject { /// /// 仓库类型 @@ -129,6 +134,19 @@ namespace BBWY.Client.Models.APIModel /// 商品数量(封箱sku任务数总和) /// public int ProductCount { get; set; } + + /// + /// 提交采购单过期时间 + /// + public DateTime? SetPurchaseOrderOverTime { get; set; } + + private string fallWareRemainTime; + public string FallWareRemainTime { get => fallWareRemainTime; set { Set(ref fallWareRemainTime, value); } } + + private bool isFallWareOverTime; + public bool IsFallWareOverTime { get => isFallWareOverTime; set { Set(ref isFallWareOverTime, value); } } + + } public class BoxConfigureData { diff --git a/BBWY.Client/Models/APIModel/Response/SealBox/GetWareWaitCompletedResponse.cs b/BBWY.Client/Models/APIModel/Response/SealBox/GetWareWaitCompletedResponse.cs new file mode 100644 index 00000000..ea042f66 --- /dev/null +++ b/BBWY.Client/Models/APIModel/Response/SealBox/GetWareWaitCompletedResponse.cs @@ -0,0 +1,50 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace BBWY.Client.Models.APIModel +{ + public class GetWareWaitCompletedResponse + { + /// + /// 数量 + /// + public int TotalCount { get; set; } + + public List WareWaitCompleteds { get; set; } + } + + public class WareWaitCompleted:NotifyObject + { + public long SealBoxId { get; set; } + /// + /// 店铺Id + /// + public string ShopId { get; set; } + /// + /// 店铺名称 + /// + public string ShopName { get; set; } + /// + /// 仓库名 + /// + public string WareName { get; set; } + + /// + /// 团队名称 + /// + public string DepartmentName { get; set; } + + /// + /// 对接人(同团队下) + /// + public string AcceptUserNames { get; set; } + + + /// + /// sku列表 + /// + public List WaitTransportSkus { get; set; } + + } +} diff --git a/BBWY.Client/Models/BatchPurchase/BatchPublishTask.cs b/BBWY.Client/Models/BatchPurchase/BatchPublishTask.cs index 88ab69fe..e2070218 100644 --- a/BBWY.Client/Models/BatchPurchase/BatchPublishTask.cs +++ b/BBWY.Client/Models/BatchPurchase/BatchPublishTask.cs @@ -114,11 +114,11 @@ namespace BBWY.Client.Models /// 配件数 /// public int GoodsNumber { get => goodsNumber; set { Set(ref goodsNumber, value); } } - private Worry isWorry; - /// - /// 是否加急 - /// - public Worry IsWorry { get => isWorry; set { Set(ref isWorry, value); } } + //private Worry isWorry; + ///// + ///// 是否加急 + ///// + //public Worry IsWorry { get => isWorry; set { Set(ref isWorry, value); } } private Availability availability; /// diff --git a/BBWY.Client/Models/Enums.cs b/BBWY.Client/Models/Enums.cs index c637b9bb..9f5f5dbc 100644 --- a/BBWY.Client/Models/Enums.cs +++ b/BBWY.Client/Models/Enums.cs @@ -242,7 +242,7 @@ 已完成 = 6, 已取消 = 7, 待落仓 = 8, - 待完结 = 9, + //待完结 = 9, 商家自取 = 10, 待转运=11, 已超时=12 @@ -337,15 +337,14 @@ 否 = 0, 是 = 1 } - /// - /// 任务状态 - /// - public enum TaskStateType - { - 未完成 = 0, - 已完成 = 1 - - } + ///// + ///// 任务状态 + ///// + //public enum TaskStateType + //{ + // 未完成 = 0, + // 已完成 = 1 + //} /// /// 服务单状态 @@ -532,12 +531,17 @@ /// public enum OverTimeTaskType { - + 全部=0, 待验收 = 2,//已到货 待打包 = 3, 待封箱 = 4, 待落仓 = 8, 待转运 = 11, } + public enum TaskMessageType + { + 任务ID = 0, + 封箱ID=1 + } } diff --git a/BBWY.Client/Models/PackTask/PackTaskModel.cs b/BBWY.Client/Models/PackTask/PackTaskModel.cs index 9be54967..63bb718d 100644 --- a/BBWY.Client/Models/PackTask/PackTaskModel.cs +++ b/BBWY.Client/Models/PackTask/PackTaskModel.cs @@ -207,18 +207,8 @@ namespace BBWY.Client.Models public Availability Availability { get => availability; set { Set(ref availability, value); } } - private Worry isWorry; - /// - /// 是否加急 - /// - public Worry IsWorry { get => isWorry; set { Set(ref isWorry, value); } } - private TaskStateType taskStatus; - /// - /// 任务状态(未完成=0,已完成=1) - /// - public TaskStateType TaskStatus { get => taskStatus; set { Set(ref taskStatus, value); } } private TaskState taskState; @@ -265,7 +255,7 @@ namespace BBWY.Client.Models private string positionType; /// - /// 落仓(本地仓=0,云仓=1,京仓=2) + /// 落仓(商家仓=0,云仓=1,京仓=2,聚水潭=3) /// public string PositionType { get => positionType; set { Set(ref positionType, value); } } diff --git a/BBWY.Client/ViewModels/PackTask/CreatePackTaskViewModel.cs b/BBWY.Client/ViewModels/PackTask/CreatePackTaskViewModel.cs index 322fe04d..ca445be9 100644 --- a/BBWY.Client/ViewModels/PackTask/CreatePackTaskViewModel.cs +++ b/BBWY.Client/ViewModels/PackTask/CreatePackTaskViewModel.cs @@ -66,11 +66,7 @@ namespace BBWY.Client.ViewModels.PackTask private bool isLoading = false; public bool IsLoading { get => isLoading; set { Set(ref isLoading, value); } } - private Worry isWorry; - /// - /// 是否加急 - /// - public Worry IsWorry { get => isWorry; set { Set(ref isWorry, value); } } + private DelayTrigger delayTrigger; @@ -432,7 +428,7 @@ namespace BBWY.Client.ViewModels.PackTask SkuTitle = model.SkuTitle; GoodsNumber = model.GoodsNumber; Availability = model.Availability; - IsWorry = model.IsWorry; + if (string.IsNullOrEmpty(model.OrderId)) { @@ -505,16 +501,8 @@ namespace BBWY.Client.ViewModels.PackTask this.globalContext = globalContext; SetBarCodeCommand = new RelayCommand(SetBarCode); SetCertificateCommand = new RelayCommand(SetCertificate); - //SaveBarCodeCommand = new RelayCommand(SaveBarCode); - - //SetSpuCerCommand = new RelayCommand(SetSpuCer); - //SaveSpuCerCommand = new RelayCommand(SaveSpuCer); - //InseartCerCommand = new RelayCommand(InseartCer); - - //SaveCerCommand = new RelayCommand(SaveCer); BarLabelCheckCommand = new RelayCommand(BarLabelCheck); - //CerLabelCheckCommand = new RelayCommand(CerLabelCheck); - //SpuCerLabelCheckCommand = new RelayCommand(SpuCerLabelCheck); + LookBarCommand = new RelayCommand(LookBar); @@ -525,84 +513,7 @@ namespace BBWY.Client.ViewModels.PackTask BarLabelCheck(BarcodeLabelModel.精简模板);//默认精简模式 } - //private void InseartCer() - //{ - // if (IsSetSpuCertificate) - // { - // new TipsWindow("无可用模板").Show(); - // return; - // } - // CertificateModel = new CertificateModel() - // { - // //SpuId = SpuCertificateModel.SpuId, - // SkuId = SkuId, - // Brand = SpuCertificateModel.Brand, - // BrandName = SpuCertificateModel.BrandName, - // ExcuteStander = SpuCertificateModel.ExcuteStander, - // FactoryNumber = SpuCertificateModel.FactoryNumber, - // IsLogo = SpuCertificateModel.IsLogo, - // LabelModel = SpuCertificateModel.LabelModel, - // ProductAdress = SpuCertificateModel.ProductAdress, - // ProductNo = SpuCertificateModel.ProductNo, - // Shader = SpuCertificateModel.Shader, - // ProductShop = SpuCertificateModel.ProductShop, - // ApplyAge = SpuCertificateModel.ApplyAge, - // }; - //} - - //private void SetSpuCer() - //{ - - // if (SpuCertificateModel == null) - // { - // SpuCertificateModel = new CertificateModel(); - // SpuCertificateModel.ProductNo = ProductNo; - // SpuCertificateModel.Brand = Brand; - // SpuCertificateModel.SkuId = SkuId; - // } - // if (!string.IsNullOrEmpty(BrandName)) - // SpuCertificateModel.BrandName = BrandName; - // setSpuCerWindow = new SetSpuCerWindow(); - // setSpuCerWindow.Show(); - //} - - //private void SaveSpuCer() - //{ - // if (string.IsNullOrEmpty(SpuCertificateModel.ExcuteStander) - // || string.IsNullOrEmpty(SpuCertificateModel.BrandName) - // || string.IsNullOrEmpty(SpuCertificateModel.Brand) || string.IsNullOrEmpty(SpuCertificateModel.ProductShop) - // || string.IsNullOrEmpty(SpuCertificateModel.ProductAdress)) - // { - // new TipsWindow("参数出错!请重新填写!").Show(); - // return; - // } - // var resData = packTaskService.SaveSpuCer(new CerRequest - // { - // Brand = SpuCertificateModel.Brand, - // BrandName = SpuCertificateModel.BrandName, - // ProductNo = SpuCertificateModel.ProductNo, - // SpuId = SpuCertificateModel.SpuId, - // ExcuteStander = SpuCertificateModel.ExcuteStander, - // LabelModel = (int)SpuCertificateModel.LabelModel, - // FactoryNumber = SpuCertificateModel.FactoryNumber, - // IsLogo = SpuCertificateModel.IsLogo, - // ProductAdress = SpuCertificateModel.ProductAdress, - // ProductShop = SpuCertificateModel.ProductShop, - // Shader = SpuCertificateModel.Shader, - // SkuId = SpuCertificateModel.SkuId, - // ApplyAge = SpuCertificateModel.ApplyAge, - - - - // }); - // if (resData == null || !resData.Success) - // { - // IsSetSpuCertificate = false; - // return; - // } - // IsSetSpuCertificate = false; - // setSpuCerWindow.Close(); - //} + private void OnSearchIncreateKeyWordChanged(string key) { @@ -881,7 +792,7 @@ namespace BBWY.Client.ViewModels.PackTask SkuCount = SkuCount, UserId = AccepUserId, ShopId = globalContext.User.Shop.ShopId.ToString(), - //IsWorry = IsWorry + }; if (IsNeedBarCode == Need.需要) { diff --git a/BBWY.Client/ViewModels/PackTask/PublishTaskViewModel.cs b/BBWY.Client/ViewModels/PackTask/PublishTaskViewModel.cs index 9991e3a3..ae3f115b 100644 --- a/BBWY.Client/ViewModels/PackTask/PublishTaskViewModel.cs +++ b/BBWY.Client/ViewModels/PackTask/PublishTaskViewModel.cs @@ -118,11 +118,7 @@ namespace BBWY.Client.ViewModels.PackTask /// 配件数 /// public int GoodsNumber { get => goodsNumber; set { Set(ref goodsNumber, value); } } - private Worry isWorry; - /// - /// 是否加急 - /// - public Worry IsWorry { get => isWorry; set { Set(ref isWorry, value); } } + private Availability availability; /// @@ -630,7 +626,7 @@ namespace BBWY.Client.ViewModels.PackTask SkuTitle = model.SkuTitle; GoodsNumber = model.GoodsNumber; Availability = model.Availability; - IsWorry = model.IsWorry; + try { PositionType = model.PositionType.ToEnum();//多个仓库异常 @@ -729,9 +725,7 @@ namespace BBWY.Client.ViewModels.PackTask ShopId = globalContext.User.Shop.ShopId.ToString(), NeedBar = IsNeedBarCode == Need.需要, NeedCer = IsNeedCertificateModel == Need.需要 - - - //IsWorry = IsWorry + }; if (IsNeedBarCode == Need.需要) { diff --git a/BBWY.Client/ViewModels/PackTask/TaskListViewModel.cs b/BBWY.Client/ViewModels/PackTask/TaskListViewModel.cs index 948bd455..96b1d83c 100644 --- a/BBWY.Client/ViewModels/PackTask/TaskListViewModel.cs +++ b/BBWY.Client/ViewModels/PackTask/TaskListViewModel.cs @@ -44,6 +44,11 @@ namespace BBWY.Client.ViewModels.PackTask + private ObservableCollection waitCompletedList; + /// + /// 待完结列表 + /// + public ObservableCollection WaitCompletedList { get => waitCompletedList; set { Set(ref waitCompletedList, value); } } private string sealBoxWaitConfigureCount; /// @@ -202,26 +207,20 @@ namespace BBWY.Client.ViewModels.PackTask private SealBoxService sealBoxService; private PackTaskService packTaskService; - WorkProcessService workProcessService; - public int? taskStatus { get; set; } + private ObservableCollection packTaskList; /// /// 动态数据表 /// public ObservableCollection PackTaskList { get => packTaskList; set { Set(ref packTaskList, value); } } - - #endregion - public TaskListViewModel(PackTaskService packTaskService, GlobalContext globalContext, ProductService productService, ConsumableService consumableService, WorkProcessService workProcessService, IncreateServiceService increateServiceService, SealBoxService sealBoxService) + public TaskListViewModel(PackTaskService packTaskService, GlobalContext globalContext, SealBoxService sealBoxService) { this.globalContext = globalContext; - this.productService = productService; - this.consumableService = consumableService; - this.workProcessService = workProcessService; - this.increateServiceService = increateServiceService; + this.packTaskService = packTaskService; PackTaskList = new ObservableCollection();//初始化数据 @@ -229,7 +228,6 @@ namespace BBWY.Client.ViewModels.PackTask SetSealBoxConfigureTypeCommand = new RelayCommand(s => { - PageIndex = 1; SealBoxConfigureType = s; Task.Factory.StartNew(() => SearchTaskList()); }); @@ -237,7 +235,6 @@ namespace BBWY.Client.ViewModels.PackTask CreateTaskCommand = new RelayCommand(CreateTask); SearchTaskCommand = new RelayCommand(() => { - PageIndex = 1; Task.Factory.StartNew(() => SearchTaskList()); //手动点击查询订单 }); TaskPageIndexChangedCommand = new RelayCommand(p => @@ -457,8 +454,6 @@ namespace BBWY.Client.ViewModels.PackTask } - private ConsumableService consumableService; - private IncreateServiceService increateServiceService; public void ReflashTask()//刷新界面 @@ -467,7 +462,7 @@ namespace BBWY.Client.ViewModels.PackTask } private List waitSealBoxTaskStates = new List { - Models.TaskState.待落仓, Models.TaskState.待封箱 + Models.TaskState.待落仓, Models.TaskState.待封箱, Models.TaskState.待出库 };//配置封箱的任务状态范围 @@ -551,7 +546,7 @@ namespace BBWY.Client.ViewModels.PackTask QualityCompletionOverTime = item.QualityCompletionOverTime, PackCompletionOverTime = item.PackCompletionOverTime, ShopName = item.ShopName, - // IsWorry = (Worry)item.IsWorry, + }; if (!item.OrderId.IsNullOrEmpty() && !item.SkuId.IsNullOrEmpty())//加载物流信息 @@ -561,14 +556,8 @@ namespace BBWY.Client.ViewModels.PackTask { expressData.Data.ForEach(e => { e.ExpressState = ExpressOrderHelper.GetExpressStateName(e.ExpressState); - - }); - data.ExpressOrderList = expressData.Data; - - - } } if (item.BarCodeDTO != null && item.BarCodeDTO.Id > 0) @@ -599,100 +588,106 @@ namespace BBWY.Client.ViewModels.PackTask data.ReflashTask = ReflashTask; - App.Current.Dispatcher.BeginInvoke(new Action(() => + App.Current.Dispatcher.Invoke(new Action(() => { PackTaskList.Add(data); })); } - Thread.Sleep(500); + + + //任务状态为待验收 - var packtasks = PackTaskList.Where(p => p.TaskState == Models.TaskState.待验收 && p.QualityCompletionOverTime != null).ToList(); - if (packtasks.Count() > 0 && TaskState == Models.TaskState.待验收) + if (TaskState == Models.TaskState.待验收) { - //if (qualityOverTimeThread!=null) - //{ - // qualityOverTimeThread.Abort(); - //} - - qualityOverTimeThread = new Thread(() => + var packtasks = PackTaskList.Where(p => p.TaskState == Models.TaskState.待验收 && p.QualityCompletionOverTime != null).ToList(); + if (packtasks.Count() > 0) { - IsStartThread = true; - while (IsStartThread) + //if (qualityOverTimeThread!=null) + //{ + // qualityOverTimeThread.Abort(); + //} + + qualityOverTimeThread = new Thread(() => { - App.Current.Dispatcher.BeginInvoke(new Action(() => + IsStartThread = true; + while (IsStartThread) { - foreach (var item in packtasks) + App.Current.Dispatcher.BeginInvoke(new Action(() => { - var datetime = item.QualityCompletionOverTime.Value.Subtract(DateTime.Now); - if (datetime.TotalMilliseconds > 0) + foreach (var item in packtasks) { - item.IsQualityOverTime = false; - //item.QualityRemainTime = $"{datetime.Days}天{datetime.Hours}小时{datetime.Minutes}分{datetime.Seconds}秒"; - item.QualityRemainTime = $"{datetime.Days}天{datetime.Hours}小时{datetime.Minutes}分"; - } - else - { - item.IsQualityOverTime = true; - //item.QualityRemainTime = $"{-datetime.Days}天{-datetime.Hours}小时{-datetime.Minutes}分{-datetime.Seconds}秒"; - item.QualityRemainTime = $"{-datetime.Days}天{-datetime.Hours}小时{-datetime.Minutes}分"; - } + var datetime = item.QualityCompletionOverTime.Value.Subtract(DateTime.Now); + if (datetime.TotalMilliseconds > 0) + { + item.IsQualityOverTime = false; + //item.QualityRemainTime = $"{datetime.Days}天{datetime.Hours}小时{datetime.Minutes}分{datetime.Seconds}秒"; + item.QualityRemainTime = $"{datetime.Days}天{datetime.Hours}小时{datetime.Minutes}分"; + } + else + { + item.IsQualityOverTime = true; + //item.QualityRemainTime = $"{-datetime.Days}天{-datetime.Hours}小时{-datetime.Minutes}分{-datetime.Seconds}秒"; + item.QualityRemainTime = $"{-datetime.Days}天{-datetime.Hours}小时{-datetime.Minutes}分"; + } - } - })); - Thread.Sleep(1000); - } + } + })); + Thread.Sleep(1000); + } - }); - //任务倒计时数据 - qualityOverTimeThread.IsBackground = true; - qualityOverTimeThread.Start(); + }); + //任务倒计时数据 + qualityOverTimeThread.IsBackground = true; + qualityOverTimeThread.Start(); + } } - var packCompletedTasks = PackTaskList.Where(p => p.TaskState == Models.TaskState.待打包 && p.PackCompletionOverTime != null).ToList(); - if (packCompletedTasks.Count() > 0 && TaskState == Models.TaskState.待打包) - { - //if (packOverTimeThread!=null) - //{ - // packOverTimeThread.Abort(); - //} - packOverTimeThread = new Thread(() => + //任务状态为待打包 + if (TaskState == Models.TaskState.待打包) + { + var packCompletedTasks = PackTaskList.Where(p => p.TaskState == Models.TaskState.待打包 && p.PackCompletionOverTime != null).ToList(); + if (packCompletedTasks.Count() > 0) { - IsStartThread = true; - while (IsStartThread) + + packOverTimeThread = new Thread(() => { - App.Current.Dispatcher.BeginInvoke(new Action(() => + IsStartThread = true; + while (IsStartThread) { - foreach (var item in packCompletedTasks) + App.Current.Dispatcher.BeginInvoke(new Action(() => { - var datetime = item.PackCompletionOverTime.Value.Subtract(DateTime.Now); - if (datetime.TotalMilliseconds > 0) - { - item.IsPackOverTime = false; - item.PackRemainTime = $"{datetime.Days}天{datetime.Hours}小时{datetime.Minutes}分"; - } - else + foreach (var item in packCompletedTasks) { - item.IsPackOverTime = true; - item.PackRemainTime = $"{-datetime.Days}天{-datetime.Hours}小时{-datetime.Minutes}分"; - } + var datetime = item.PackCompletionOverTime.Value.Subtract(DateTime.Now); + if (datetime.TotalMilliseconds > 0) + { + item.IsPackOverTime = false; + item.PackRemainTime = $"{datetime.Days}天{datetime.Hours}小时{datetime.Minutes}分"; + } + else + { + item.IsPackOverTime = true; + item.PackRemainTime = $"{-datetime.Days}天{-datetime.Hours}小时{-datetime.Minutes}分"; + } - } - })); - Thread.Sleep(1000); - } + } + })); + Thread.Sleep(1000); + } - }); - //任务倒计时数据 - packOverTimeThread.IsBackground = true; - packOverTimeThread.Start(); + }); + //任务倒计时数据 + packOverTimeThread.IsBackground = true; + packOverTimeThread.Start(); + } } + - //任务状态为待打包 } @@ -844,20 +839,20 @@ namespace BBWY.Client.ViewModels.PackTask { System.Windows.MessageBox.Show(fallWareRes.Msg); IsLoading = false; return; } - App.Current.Dispatcher.BeginInvoke(new Action(() => + App.Current.Dispatcher.Invoke(new Action(() => { OrderCount = fallWareRes.Data.TotalCount; })); foreach (var item in fallWareRes.Data.FallWareConfiguredModels) { - App.Current.Dispatcher.BeginInvoke(new Action(() => + App.Current.Dispatcher.Invoke(new Action(() => { FallWareWaitConfigureList.Add(item); })); } - Thread.Sleep(100); + var fallWareTasks = FallWareWaitConfigureList.Where(p => p.SetPurchaseOrderOverTime != null).ToList(); if (fallWareTasks.Count() > 0 && TaskState == Models.TaskState.待落仓&& SealBoxConfigureType == SealBoxConfigureType.待配置) { @@ -941,6 +936,34 @@ namespace BBWY.Client.ViewModels.PackTask IsLoading = false; }); + + if (TaskState == Models.TaskState.待出库) + { + Task.Factory.StartNew(() => + { + WaitCompletedList = new ObservableCollection(); + var datas = sealBoxService.GetWareWaitCompletedList(globalContext.User.Shop.ShopId.ToString(), PageIndex, PageSize); + if (datas != null && datas.Data != null && datas.Success) + { + var dataModel = datas.Data; + OrderCount = dataModel.TotalCount; + foreach (var item in dataModel.WareWaitCompleteds) + { + App.Current.Dispatcher.BeginInvoke(new Action(() => + { + WaitCompletedList.Add(item); + })); + + } + } + else + { + if (datas != null) System.Windows.MessageBox.Show(datas.Msg); + } + IsLoadCount(); + IsLoading = false; + }); + } } @@ -948,7 +971,7 @@ namespace BBWY.Client.ViewModels.PackTask } GlobalContext globalContext; - ProductService productService; + private void IsLoadFallWareCount() { var res = sealBoxService.GetFallWareConfigureCounts(globalContext.User.Shop.ShopId.ToString()); @@ -994,10 +1017,7 @@ namespace BBWY.Client.ViewModels.PackTask public void ShowCertificateWindow() { } - /// - /// 筛选任务状态数据(根据TaskList数据) - /// - public void SelectTaskStatus() { } + #endregion private void OpenSkuDetail(object param) { diff --git a/BBWY.Client/ViewModels/PackTask/WareHouseListViewModel.cs b/BBWY.Client/ViewModels/PackTask/WareHouseListViewModel.cs index 0464db71..6e657193 100644 --- a/BBWY.Client/ViewModels/PackTask/WareHouseListViewModel.cs +++ b/BBWY.Client/ViewModels/PackTask/WareHouseListViewModel.cs @@ -27,6 +27,7 @@ using BBWY.Client.Models.FallWare; using WebSocketSharp; using System.Threading; using BBWY.Client.Helpers; +using System.Diagnostics.Eventing.Reader; namespace BBWY.Client.ViewModels.PackTask { @@ -44,11 +45,7 @@ namespace BBWY.Client.ViewModels.PackTask private DateTime endTime; public DateTime EndTime { get => endTime; set { Set(ref endTime, value); } } - private OverTimeTaskType overTimeTaskState; - /// - /// 任务类型(超时) - /// - public OverTimeTaskType OverTimeTaskState { get => overTimeTaskState; set { Set(ref overTimeTaskState, value); } } + public IList OverTimeTaskResponses { get; set; } @@ -60,13 +57,23 @@ namespace BBWY.Client.ViewModels.PackTask public ObservableCollection OverTimeTaskList { get => overTimeTaskList; set { Set(ref overTimeTaskList, value); } } private ObservableCollection overTimeTaskTypeList = new ObservableCollection { - OverTimeTaskType.待验收, OverTimeTaskType.待打包, OverTimeTaskType.待封箱, OverTimeTaskType.待落仓, OverTimeTaskType.待转运 + OverTimeTaskType.全部, OverTimeTaskType.待验收, OverTimeTaskType.待打包, OverTimeTaskType.待封箱, OverTimeTaskType.待落仓, OverTimeTaskType.待转运 }; /// ///超时任务类型 /// public ObservableCollection OverTimeTaskTypeList { get => overTimeTaskTypeList; set { Set(ref overTimeTaskTypeList, value); } } + private OverTimeTaskType overTimeTaskState = OverTimeTaskType.全部; + /// + /// 任务类型(超时) + /// + public OverTimeTaskType OverTimeTaskState { get => overTimeTaskState; set { Set(ref overTimeTaskState, value); } } + + + + + private string waitTransportJDWareCount; public string WaitTransportJDWareCount { get => waitTransportJDWareCount; set { Set(ref waitTransportJDWareCount, value); } } @@ -104,8 +111,11 @@ namespace BBWY.Client.ViewModels.PackTask public string fallWareConfiguredCount; public string FallWareConfiguredCount { get => fallWareConfiguredCount; set { Set(ref fallWareConfiguredCount, value); } } - - + private ObservableCollection waitCompletedList; + /// + /// 待完结列表 + /// + public ObservableCollection WaitCompletedList { get => waitCompletedList; set { Set(ref waitCompletedList, value); } } private ObservableCollection waitTransportList; /// /// 待转运列表 @@ -266,9 +276,6 @@ namespace BBWY.Client.ViewModels.PackTask public bool IsLoading { get => isLoading; set { Set(ref isLoading, value); } } - private int? IsWorry { get; set; } - public int? taskStatus { get; set; } - public string searchDepartment; public string SearchDepartment @@ -300,7 +307,6 @@ namespace BBWY.Client.ViewModels.PackTask this.sealBoxService = sealBoxService; this.packTaskService = packTaskService; - //Messenger.Default.Send(globalContext, "AcceptGlobalContext"); PackTaskList = new ObservableCollection();//初始化数据 @@ -308,8 +314,7 @@ namespace BBWY.Client.ViewModels.PackTask SearchTaskCommand = new RelayCommand(() => { - PageIndex = 1; - Task.Factory.StartNew(() => SearchTaskList()); //手动点击查询订单 + SearchTaskList(); //手动点击查询订单 }); TaskPageIndexChangedCommand = new RelayCommand(p => { @@ -321,8 +326,6 @@ namespace BBWY.Client.ViewModels.PackTask StartTime = DateTime.Now.Date; EndTime = DateTime.Now.Date; IsLoading = false; - SetTaskStatusCommand = new RelayCommand(SetTaskStatus); - TaskState = null; //加载数据 SelectWareType = WareType.云仓; @@ -338,10 +341,10 @@ namespace BBWY.Client.ViewModels.PackTask PositionState = PositionState.待落仓; SetSealBoxConfigureTypeCommand = new RelayCommand(s => { - PageIndex = 1; + SealBoxConfigureType = s; PositionState = s == SealBoxConfigureType.已配置 ? PositionState.已配置待落仓 : PositionState.待落仓; - Task.Factory.StartNew(() => SearchTaskList()); + SearchTaskList(); }); @@ -358,16 +361,39 @@ namespace BBWY.Client.ViewModels.PackTask SetWareTypeCommand = new RelayCommand(s => { - PageIndex = 1; + SelectWareType = s; - Task.Factory.StartNew(() => SearchTaskList()); + SearchTaskList(); }); CompeteWaitTransportCommand = new RelayCommand(CompeteWaitTransport); + CompeteWaitCompletedCommand = new RelayCommand(CompeteWaitCompleted); } + private void CompeteWaitCompleted(object obj) + { + var model = (WareWaitCompleted)obj; + + + if (System.Windows.MessageBox.Show("是否完成任务?", "提示", + MessageBoxButton.YesNo, + MessageBoxImage.Warning) != MessageBoxResult.Yes) + return; + var res = sealBoxService.WareCompetedWaitCompleted(model.SealBoxId); + if (res == null) + { + return; + } + if (!res.Success) + { + System.Windows.MessageBox.Show(res.Msg); + return; + } + Task.Factory.StartNew(() => SearchTaskList()); + } + private void CompeteWaitTransport(object obj) { var model = (WareWaitTransport)obj; @@ -562,9 +588,24 @@ namespace BBWY.Client.ViewModels.PackTask #region 事件绑定 + /// + /// 待完结 完成事件 + /// + public ICommand CompeteWaitCompletedCommand { get; set; } + /// + /// 待转运 完成事件 + /// public ICommand CompeteWaitTransportCommand { get; set; } + + /// + /// 设置仓库类型 + /// public ICommand SetWareTypeCommand { get; set; } + + /// + /// 查看箱唛配置 + /// public ICommand LookBoxConfigureCommand { get; set; } /// /// 待配置 /已配置 @@ -575,7 +616,7 @@ namespace BBWY.Client.ViewModels.PackTask public ICommand CompletedPackTaskCommand { get; set; } - public ICommand SetTaskStatusCommand { get; set; } + /// /// 打开图片链接 /// @@ -714,36 +755,31 @@ namespace BBWY.Client.ViewModels.PackTask } - public void SetTaskStatus(object obj) - { - var objList = (object[])obj; - - long taskId = (long)objList[0]; - - string orderId = (string)objList[1]; - ///修改完成 - var model = packTaskService.UpdateTaskStatus(taskId, 1, orderId); - if (model != null && model.Success) - SearchTaskList(); - - } + public void SetTaskState(TaskState? taskState) { - PageIndex = 1; + + TaskState = taskState; - SearchTaskList(); - + if (PageIndex == 1) + SearchTaskList(); + else + PageIndex = 1; } private bool IsStartThread = false; private Thread qualityOverTimeThread = null; private Thread packOverTimeThread = null; private Thread sealboxOverTimeThread = null; + private Thread fallwareOverTimeThread = null; + private Thread waitTransportOverTimeThread = null; /// /// 搜索任务列表 /// public void SearchTaskList() { + + PageSize = 10; IsStartThread = false; long? taskId = null; try @@ -757,12 +793,42 @@ namespace BBWY.Client.ViewModels.PackTask } IsLoading = true; - if (TaskState == Models.TaskState.已超时) + + + if (TaskState == Models.TaskState.待出库) { Task.Factory.StartNew(() => { - OverTimeTaskList = new ObservableCollection< OverTimeTaskResponse>(); - var datas = packTaskService.SearchOverTimeTaskList(null, StartTime,EndTime,OverTimeTaskState,PageIndex,PageSize); + WaitCompletedList = new ObservableCollection(); + var datas = sealBoxService.GetWareWaitCompletedList(null, PageIndex, PageSize); + if (datas != null && datas.Data != null && datas.Success) + { + var dataModel = datas.Data; + OrderCount = dataModel.TotalCount; + foreach (var item in dataModel.WareWaitCompleteds) + { + App.Current.Dispatcher.BeginInvoke(new Action(() => + { + WaitCompletedList.Add(item); + })); + + } + } + else + { + if (datas != null) System.Windows.MessageBox.Show(datas.Msg); + } + IsLoadCount(); + IsLoading = false; + }); + } + else if (TaskState == Models.TaskState.已超时) + { + PageSize = 20; + Task.Factory.StartNew(() => + { + OverTimeTaskList = new ObservableCollection(); + var datas = packTaskService.SearchOverTimeTaskList(null, StartTime, EndTime, OverTimeTaskState, PageIndex, PageSize); if (datas != null && datas.Data != null && datas.Success) { var dataModel = datas.Data; @@ -796,19 +862,19 @@ namespace BBWY.Client.ViewModels.PackTask OrderCount = dataModel.TotalCount; foreach (var item in dataModel.WareWaitTransports) { - App.Current.Dispatcher.BeginInvoke(new Action(() => + App.Current.Dispatcher.Invoke(new Action(() => { WaitTransportList.Add(item); })); } - Thread.Sleep(500); + var sealboxTasks = WaitTransportList.Where(p => p.TransportOverTime != null).ToList(); if (sealboxTasks.Count() > 0 && TaskState == Models.TaskState.待转运) { - sealboxOverTimeThread = new Thread(() => + waitTransportOverTimeThread = new Thread(() => { IsStartThread = true; while (IsStartThread) @@ -836,8 +902,8 @@ namespace BBWY.Client.ViewModels.PackTask }); //任务倒计时数据 - sealboxOverTimeThread.IsBackground = true; - sealboxOverTimeThread.Start(); + waitTransportOverTimeThread.IsBackground = true; + waitTransportOverTimeThread.Start(); } @@ -880,11 +946,54 @@ namespace BBWY.Client.ViewModels.PackTask BoxConfigureData = item.BoxConfigureData, ProductCount = item.ProductCount, WareType = item.WareType, + SetPurchaseOrderOverTime=item.SetPurchaseOrderOverTime }); })); } + + var fallWareTasks = WaitFallWareList.Where(p => p.SetPurchaseOrderOverTime != null).ToList(); + if (fallWareTasks.Count() > 0 && TaskState == Models.TaskState.待落仓 && SealBoxConfigureType == SealBoxConfigureType.待配置) + { + //if (packOverTimeThread!=null) + //{ + // packOverTimeThread.Abort(); + //} + + fallwareOverTimeThread = new Thread(() => + { + IsStartThread = true; + while (IsStartThread) + { + App.Current.Dispatcher.BeginInvoke(new Action(() => + { + foreach (var item in fallWareTasks) + { + var datetime = item.SetPurchaseOrderOverTime.Value.Subtract(DateTime.Now); + if (datetime.TotalMilliseconds > 0) + { + item.IsFallWareOverTime = false; + item.FallWareRemainTime = $"{datetime.Hours}小时{datetime.Minutes}分"; + } + else + { + item.IsFallWareOverTime = true; + item.FallWareRemainTime = datetime.Days == 0 ? $"{-datetime.Hours}小时{-datetime.Minutes}分" : $"{-datetime.Days}天{-datetime.Hours}小时{-datetime.Minutes}分"; + } + + } + })); + Thread.Sleep(1000); + } + + }); + //任务倒计时数据 + fallwareOverTimeThread.IsBackground = true; + fallwareOverTimeThread.Start(); + + + } } else { @@ -913,7 +1022,7 @@ namespace BBWY.Client.ViewModels.PackTask foreach (var item in dataModel.WaitSealBoxModels) { - App.Current.Dispatcher.BeginInvoke(new Action(() => + App.Current.Dispatcher.Invoke(new Action(() => { WaitSealBoxModels.Add(new SealBoxModel { @@ -935,7 +1044,7 @@ namespace BBWY.Client.ViewModels.PackTask })); } - Thread.Sleep(500); + var sealboxTasks = WaitSealBoxModels.Where(p => p.SealBoxPackOverTime != null).ToList(); if (sealboxTasks.Count() > 0 && TaskState == Models.TaskState.待封箱) { @@ -1028,7 +1137,7 @@ namespace BBWY.Client.ViewModels.PackTask PackTaskList = new ObservableCollection();//初始化数据 - var datas = packTaskService.GetWareHouseList(SearchWayBillNo, SearchExpressName, IsWorry, SearchDepartment, SearchSkuId, SearchTaskId, this.TaskState, SearchShopName, + var datas = packTaskService.GetWareHouseList(SearchWayBillNo, SearchExpressName, SearchDepartment, SearchSkuId, SearchTaskId, this.TaskState, SearchShopName, PageIndex, PageSize); if (datas != null && datas.Data != null && datas.Success) { @@ -1122,99 +1231,104 @@ namespace BBWY.Client.ViewModels.PackTask data.PackUser = string.Join("\r\n", item.PackUserName); } - App.Current.Dispatcher.BeginInvoke(new Action(() => + App.Current.Dispatcher.Invoke(new Action(() => { PackTaskList.Add(data); })); } - Thread.Sleep(500); - //任务状态为待验收 - var packtasks = PackTaskList.Where(p => p.TaskState == Models.TaskState.待验收 && p.QualityCompletionOverTime != null).ToList(); - if (packtasks.Count() > 0 && TaskState == Models.TaskState.待验收) - { - //if (qualityOverTimeThread!=null) - //{ - // qualityOverTimeThread.Abort(); - //} + if (TaskState == Models.TaskState.待验收) + { qualityOverTimeThread = new Thread(() => { - IsStartThread = true; - while (IsStartThread) + + var packtasks = PackTaskList.Where(p => p.TaskState == Models.TaskState.待验收 && p.QualityCompletionOverTime != null).ToList(); + if (packtasks.Count() > 0) { - App.Current.Dispatcher.BeginInvoke(new Action(() => + IsStartThread = true; + while (IsStartThread) { - foreach (var item in packtasks) + App.Current.Dispatcher.BeginInvoke(new Action(() => { - var datetime = item.QualityCompletionOverTime.Value.Subtract(DateTime.Now); - if (datetime.TotalMilliseconds > 0) + foreach (var item in packtasks) { - item.IsQualityOverTime = false; - //item.QualityRemainTime = $"{datetime.Days}天{datetime.Hours}小时{datetime.Minutes}分{datetime.Seconds}秒"; - item.QualityRemainTime = $"{datetime.Days}天{datetime.Hours}小时{datetime.Minutes}分"; - } - else - { - item.IsQualityOverTime = true; - //item.QualityRemainTime = $"{-datetime.Days}天{-datetime.Hours}小时{-datetime.Minutes}分{-datetime.Seconds}秒"; - item.QualityRemainTime = $"{-datetime.Days}天{-datetime.Hours}小时{-datetime.Minutes}分"; - } + var datetime = item.QualityCompletionOverTime.Value.Subtract(DateTime.Now); + item.QualityRemainTime = OverTimeHelper.GetTimeString(datetime); + if (datetime.TotalMilliseconds > 0) + { + item.IsQualityOverTime = false; - } - })); - Thread.Sleep(1000); + } + else + { + item.IsQualityOverTime = true; + } + + } + })); + Thread.Sleep(1000); + } } + + + + + }); //任务倒计时数据 qualityOverTimeThread.IsBackground = true; qualityOverTimeThread.Start(); - - + //任务状态为待验收 + } - var packCompletedTasks = PackTaskList.Where(p => p.TaskState == Models.TaskState.待打包 && p.PackCompletionOverTime != null).ToList(); - if (packCompletedTasks.Count() > 0 && TaskState == Models.TaskState.待打包) + if (TaskState == Models.TaskState.待打包) { - //if (packOverTimeThread!=null) - //{ - // packOverTimeThread.Abort(); - //} - - packOverTimeThread = new Thread(() => + var packCompletedTasks = PackTaskList.Where(p => p.TaskState == Models.TaskState.待打包 && p.PackCompletionOverTime != null).ToList(); + if (packCompletedTasks.Count() > 0) { - IsStartThread = true; - while (IsStartThread) + //if (packOverTimeThread!=null) + //{ + // packOverTimeThread.Abort(); + //} + + packOverTimeThread = new Thread(() => { - App.Current.Dispatcher.BeginInvoke(new Action(() => + IsStartThread = true; + while (IsStartThread) { - foreach (var item in packCompletedTasks) + App.Current.Dispatcher.BeginInvoke(new Action(() => { - var datetime = item.PackCompletionOverTime.Value.Subtract(DateTime.Now); - if (datetime.TotalMilliseconds > 0) - { - item.IsPackOverTime = false; - item.PackRemainTime = $"{datetime.Days}天{datetime.Hours}小时{datetime.Minutes}分"; - } - else + foreach (var item in packCompletedTasks) { - item.IsPackOverTime = true; - item.PackRemainTime = $"{-datetime.Days}天{-datetime.Hours}小时{-datetime.Minutes}分"; - } + var datetime = item.PackCompletionOverTime.Value.Subtract(DateTime.Now); + if (datetime.TotalMilliseconds > 0) + { + item.IsPackOverTime = false; + item.PackRemainTime = datetime.Days == 0 ? $"{datetime.Hours}小时{datetime.Minutes}分" : $"{datetime.Days}天{datetime.Hours}小时{datetime.Minutes}分"; + } + else + { + item.IsPackOverTime = true; + item.PackRemainTime = datetime.Days == 0 ? $"{-datetime.Hours}小时{-datetime.Minutes}分" : $"{-datetime.Days}天{-datetime.Hours}小时{-datetime.Minutes}分"; + } - } - })); - Thread.Sleep(1000); - } + } + })); + Thread.Sleep(1000); + } - }); - //任务倒计时数据 - packOverTimeThread.IsBackground = true; - packOverTimeThread.Start(); + }); + //任务倒计时数据 + packOverTimeThread.IsBackground = true; + packOverTimeThread.Start(); + } } + //任务状态为待打包 diff --git a/BBWY.Client/Views/FallWare/SetJDWareBoxWindow2.xaml.cs b/BBWY.Client/Views/FallWare/SetJDWareBoxWindow2.xaml.cs index 4d6bb273..54587bf6 100644 --- a/BBWY.Client/Views/FallWare/SetJDWareBoxWindow2.xaml.cs +++ b/BBWY.Client/Views/FallWare/SetJDWareBoxWindow2.xaml.cs @@ -119,10 +119,32 @@ namespace BBWY.Client.Views.FallWare MessageBox.Show("采购单号不能为空"); return; } + + if (wareType == WareType.云仓 ) + { + if (!JDWareBoxModel.PurchaseOrder.ToUpper().StartsWith("CPL")) + { + MessageBox.Show("CLPS采购单号必须以CPL开头"); + return; + } + var number = JDWareBoxModel.PurchaseOrder.ToUpper().Substring(3); + + var result = long.TryParse(number, out long res); + + if (!result||number.Length!=13) + { + MessageBox.Show("CLPS采购单号必须以CPL开头,且后面为13位数字"); + return; + + } + + } + + Task.Factory.StartNew(() => { - var res = sealBoxService.SetFallWareConfigure(JDWareBoxModel.SealBoxId, JDWareBoxModel.ProductTitle, JDWareBoxModel.PurchaseOrder, JDWareBoxModel.PrewOrder, JDWareBoxModel.WaybillNo, null, null); + var res = sealBoxService.SetFallWareConfigure(JDWareBoxModel.SealBoxId, JDWareBoxModel.ProductTitle, JDWareBoxModel.PurchaseOrder.ToUpper(), JDWareBoxModel.PrewOrder, JDWareBoxModel.WaybillNo, null, null); if (!res.Success) { IsLoading = false; @@ -132,6 +154,7 @@ namespace BBWY.Client.Views.FallWare IsLoading = false; this.Dispatcher.Invoke(() => { + reflashWindow?.Invoke(); this.Close(); }); diff --git a/BBWY.Client/Views/FallWare/WaitFallWareControl.xaml b/BBWY.Client/Views/FallWare/WaitFallWareControl.xaml index acf9c0e9..bf3d47d6 100644 --- a/BBWY.Client/Views/FallWare/WaitFallWareControl.xaml +++ b/BBWY.Client/Views/FallWare/WaitFallWareControl.xaml @@ -36,14 +36,16 @@ + - - + + + @@ -122,6 +124,7 @@ + @@ -265,10 +268,30 @@ + + + + + + + + + + + + + + diff --git a/BBWY.Client/Views/PackTask/ServiceWindow.xaml b/BBWY.Client/Views/PackTask/ServiceWindow.xaml index d288ce9d..08786cc0 100644 --- a/BBWY.Client/Views/PackTask/ServiceWindow.xaml +++ b/BBWY.Client/Views/PackTask/ServiceWindow.xaml @@ -520,68 +520,49 @@ - - - - - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + - + - + - - + + - - - + + - + + + - - - - - - + diff --git a/BBWY.Client/Views/PackTask/ShopWaitCompletedControl.xaml b/BBWY.Client/Views/PackTask/ShopWaitCompletedControl.xaml new file mode 100644 index 00000000..1e6c1423 --- /dev/null +++ b/BBWY.Client/Views/PackTask/ShopWaitCompletedControl.xaml @@ -0,0 +1,301 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/BBWY.Client/Views/PackTask/ShopWaitCompletedControl.xaml.cs b/BBWY.Client/Views/PackTask/ShopWaitCompletedControl.xaml.cs new file mode 100644 index 00000000..55ecf121 --- /dev/null +++ b/BBWY.Client/Views/PackTask/ShopWaitCompletedControl.xaml.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace BBWY.Client.Views.PackTask +{ + /// + /// ShopWaitCompletedControl.xaml 的交互逻辑 + /// + public partial class ShopWaitCompletedControl : UserControl + { + public ShopWaitCompletedControl() + { + InitializeComponent(); + } + } +} diff --git a/BBWY.Client/Views/PackTask/ShopWaitPackageControl.xaml b/BBWY.Client/Views/PackTask/ShopWaitPackageControl.xaml index 65f9ab1d..9d346f7b 100644 --- a/BBWY.Client/Views/PackTask/ShopWaitPackageControl.xaml +++ b/BBWY.Client/Views/PackTask/ShopWaitPackageControl.xaml @@ -31,7 +31,7 @@ - + @@ -92,7 +92,7 @@ - + @@ -149,7 +149,7 @@ - + @@ -167,8 +167,8 @@ - - + + @@ -189,6 +189,7 @@ + @@ -196,7 +197,7 @@ + Margin=" 5,0,0,11"/> @@ -217,7 +218,7 @@ - + diff --git a/BBWY.Client/Views/PackTask/TaskList.xaml b/BBWY.Client/Views/PackTask/TaskList.xaml index 0bacb8ea..5b2158c1 100644 --- a/BBWY.Client/Views/PackTask/TaskList.xaml +++ b/BBWY.Client/Views/PackTask/TaskList.xaml @@ -169,7 +169,7 @@ @@ -180,6 +180,8 @@ + + - + @@ -88,7 +88,7 @@ - + @@ -127,7 +127,7 @@ - + @@ -140,15 +140,15 @@ - - + + @@ -177,7 +177,7 @@ + Margin=" 5,0,0,11"/> @@ -198,7 +198,7 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/BBWY.Client/Views/PackTask/WaitCompletedControl.xaml.cs b/BBWY.Client/Views/PackTask/WaitCompletedControl.xaml.cs new file mode 100644 index 00000000..da24e913 --- /dev/null +++ b/BBWY.Client/Views/PackTask/WaitCompletedControl.xaml.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace BBWY.Client.Views.PackTask +{ + /// + /// UserControl.xaml 的交互逻辑 + /// + public partial class WaitCompletedControl : UserControl + { + public WaitCompletedControl() + { + InitializeComponent(); + } + } +} diff --git a/BBWY.Client/Views/PackTask/WaitPackageControl.xaml b/BBWY.Client/Views/PackTask/WaitPackageControl.xaml index 69985972..21583003 100644 --- a/BBWY.Client/Views/PackTask/WaitPackageControl.xaml +++ b/BBWY.Client/Views/PackTask/WaitPackageControl.xaml @@ -33,7 +33,7 @@ - + @@ -93,7 +93,7 @@ - + @@ -162,7 +162,7 @@ - + @@ -182,8 +182,8 @@ - - + + @@ -212,7 +212,7 @@ + Margin=" 5,0,0,11"/> @@ -233,7 +233,7 @@ - + @@ -473,25 +473,6 @@ - - - - - - - - - - - - - - - - - diff --git a/BBWY.Client/Views/PackTask/WareHouseList.xaml b/BBWY.Client/Views/PackTask/WareHouseList.xaml index e8e915a7..89eaa3eb 100644 --- a/BBWY.Client/Views/PackTask/WareHouseList.xaml +++ b/BBWY.Client/Views/PackTask/WareHouseList.xaml @@ -205,12 +205,13 @@ - + + - + @@ -88,7 +88,7 @@ - + @@ -98,7 +98,6 @@ - @@ -109,7 +108,7 @@ CommandParameter="{Binding TaskId}" Margin=" 5,0,7,0"/> - - - - - - - @@ -161,7 +142,7 @@ - + @@ -180,8 +161,8 @@ - - + + @@ -210,7 +191,7 @@ + Margin=" 5,0,0,11"/> @@ -231,7 +212,7 @@ - + @@ -344,69 +325,7 @@ - + - - - - - @@ -451,21 +367,7 @@ - - - - - - - - - - + @@ -499,22 +401,7 @@ Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收|待打包:Visible:Collapsed}" /> - - - - - - - - - - - - - - + diff --git a/BBWY.Client/Views/QualityTask/ShopWaitQualityControl.xaml b/BBWY.Client/Views/QualityTask/ShopWaitQualityControl.xaml index fee9f4fb..5f2fadf3 100644 --- a/BBWY.Client/Views/QualityTask/ShopWaitQualityControl.xaml +++ b/BBWY.Client/Views/QualityTask/ShopWaitQualityControl.xaml @@ -31,7 +31,7 @@ - + @@ -90,7 +90,7 @@ - + @@ -147,7 +147,7 @@ - + @@ -165,8 +165,8 @@ - - + + @@ -187,6 +187,7 @@ + @@ -194,7 +195,7 @@ + Margin=" 5,0,0,11"/> @@ -215,7 +216,7 @@ - + diff --git a/BBWY.Client/Views/QualityTask/WaitQualityControl.xaml b/BBWY.Client/Views/QualityTask/WaitQualityControl.xaml index d320af3b..17b04a4a 100644 --- a/BBWY.Client/Views/QualityTask/WaitQualityControl.xaml +++ b/BBWY.Client/Views/QualityTask/WaitQualityControl.xaml @@ -31,7 +31,7 @@ - + @@ -90,7 +90,7 @@ - + @@ -154,7 +154,7 @@ - + @@ -172,8 +172,8 @@ - - + + @@ -194,6 +194,7 @@ + @@ -201,7 +202,7 @@ + Margin=" 5,0,0,11"/> @@ -219,10 +220,10 @@ - + - + @@ -503,22 +504,7 @@ Visibility="{Binding TaskState,Converter={StaticResource objConverter},ConverterParameter=待验收|待打包:Visible:Collapsed}" /> - - - - - - - - - - - - - - + diff --git a/BBWY.Client/Views/TaskOverTime/WareTaskOverTimeControl.xaml b/BBWY.Client/Views/TaskOverTime/WareTaskOverTimeControl.xaml index 6d11bbee..7a64bd4d 100644 --- a/BBWY.Client/Views/TaskOverTime/WareTaskOverTimeControl.xaml +++ b/BBWY.Client/Views/TaskOverTime/WareTaskOverTimeControl.xaml @@ -16,8 +16,7 @@ > - - + @@ -35,7 +34,7 @@ - + @@ -66,8 +65,9 @@ - - + + + @@ -76,9 +76,10 @@ - - - + + + + @@ -109,40 +110,50 @@ MinHeight="30"> - - + + + - + - + + + + + + + - + - + - + - + - + - + - +