private async Task ExecuteRefreshOrder()
        {
            try
            {
                int?erpid   = SelectedOrder?.ERPID;
                int?orderid = SelectedOrder?.OrderID;
                _suborderid = SelectedSubOrder?.SubOrderID;

                var orders = await _dbservicewms.GetHistOrdersDistinct(DateFrom.TimeStamp, DateTo.TimeStamp, -1);

                DataListOrder.Clear();
                foreach (var p in orders)
                {
                    DataListOrder.Add(new ReleaseOrderViewModel
                    {
                        ERPID       = p.ERPID,
                        ERPIDref    = p.ERPIDStokbar,
                        OrderID     = p.OrderID,
                        Destination = p.Destination,
                        ReleaseTime = p.ReleaseTime,
                        LastChange  = p.LastChange,
                        Portion     = $"{p.CountActive}/{p.CountAll} - {p.CountMoveDone}/{p.CountAll} - {p.CountFinished}/{p.CountAll}",
                        Status      = (EnumWMSOrderStatus)p.Status
                    });
                }
                foreach (var l in DataListOrder)
                {
                    l.Initialize(_warehouse);
                }
                Records = DataListOrder.Count();
                if (orderid != null)
                {
                    SelectedOrder = DataListOrder.FirstOrDefault(p => p.ERPID == erpid && p.OrderID == orderid);
                }
            }
            catch (Exception e)
            {
                _warehouse.AddEvent(Database.Event.EnumSeverity.Error, Database.Event.EnumType.Exception,
                                    string.Format("{0}.{1}: {2}", this.GetType().Name, (new StackTrace()).GetFrame(0).GetMethod().Name, e.Message));
            }
        }
Example #2
0
        private async Task ExecuteRefreshOrder()
        {
            try
            {
                var orders = await _dbservicewms.GetOrdersDistinct(DateTime.Now.AddDays(-1), DateTime.MaxValue, (int)EnumWMSOrderStatus.OnTargetPart);

                DataListOrder.Clear();
                foreach (var p in orders)
                {
                    DataListOrder.Add(new OrderViewModel
                    {
                        ID            = 0,
                        ERPID         = p.ERPID,
                        ERPIDRef      = p.ERPIDStokbar,
                        OrderID       = p.OrderID,
                        Destination   = p.Destination,
                        ReleaseTime   = p.ReleaseTime,
                        SubOrderID    = p.SubOrderID,
                        SubOrderERPID = p.SubOrderERPID,
                        SubOrderName  = p.SubOrderName,
                        SKUID         = null,
                        SKUBatch      = null,
                        SKUQty        = 0,
                        Status        = (EnumWMSOrderStatus)p.Status
                    });
                }
                foreach (var l in DataListOrder)
                {
                    l.Initialize(_warehouse);
                }
            }
            catch (Exception e)
            {
                _warehouse.AddEvent(Database.Event.EnumSeverity.Error, Database.Event.EnumType.Exception,
                                    string.Format("{0}.{1}: {2}", this.GetType().Name, (new StackTrace()).GetFrame(0).GetMethod().Name, e.Message));
            }
        }
Example #3
0
        private async Task ExecuteRefreshOrders()
        {
            try
            {
                int?erpid      = SelectedOrder?.ERPID;
                int?orderid    = SelectedOrder?.OrderID;
                int?ao_erpid   = ActiveOrder?.ERPID;
                int?ao_orderid = ActiveOrder?.OrderID;
                _suborderid = SelectedSubOrder?.ID;
                _commandid  = SelectedCommand?.WMSID;

                var ao = _dbservicewms.GetOrders((int)EnumWMSOrderStatus.Active, (int)EnumWMSOrderStatus.Active).FirstOrDefault();
                if (ao != null)
                {
                    ActiveOrder = new ReleaseOrderViewModel
                    {
                        ERPID       = ao.ERP_ID,
                        OrderID     = ao.OrderID,
                        TUID        = ao.TU_ID,
                        BoxID       = ao.Box_ID,
                        SKUID       = ao.SKU_ID,
                        SKUBatch    = ao.SKU_Batch,
                        Destination = ao.Destination,
                        ReleaseTime = ao.ReleaseTime,
                        Status      = (EnumWMSOrderStatus)ao.Status
                    }
                }
                ;
                else
                {
                    ActiveOrder = null;
                }
//                if(ao_erpid != ActiveOrder?.ERPID || ao_orderid != ActiveOrder?.OrderID)
//                    await ExecuteRefreshCommandWMS();

                var orders = await _dbservicewms.GetOrdersDistinct(DateTime.Now.AddSeconds(1), DateTime.Now, (int)EnumWMSOrderStatus.OnTargetPart);

                _donotrefreshsuborder = true;
                DataListOrder.Clear();
                foreach (var p in orders)
                {
                    DataListOrder.Add(new ReleaseOrderViewModel
                    {
                        ERPID       = p.ERPID,
                        OrderID     = p.OrderID,
                        TUID        = p.TUID,
                        BoxID       = p.BoxID,
                        SKUID       = p.SKUID,
                        SKUBatch    = p.SKUBatch,
                        Destination = p.Destination,
                        ReleaseTime = p.ReleaseTime,
                        LastChange  = p.LastChange,
                        Status      = (EnumWMSOrderStatus)p.Status
                    });
                }
                foreach (var l in DataListOrder)
                {
                    l.Initialize(_warehouse);
                }
                _donotrefreshsuborder = false;
                if (orderid != null)
                {
                    SelectedOrder = DataListOrder.FirstOrDefault(p => p.ERPID == erpid && p.OrderID == orderid);
                }
                else
                {
                    SelectedOrder = DataListOrder.FirstOrDefault();
                }
                if (SelectedOrder == null)
                {
                    await ExecuteRefreshSubOrder();
                }
            }
            catch (Exception e)
            {
                _warehouse.AddEvent(Database.Event.EnumSeverity.Error, Database.Event.EnumType.Exception,
                                    string.Format("{0}.{1}: {2}", this.GetType().Name, (new StackTrace()).GetFrame(0).GetMethod().Name, e.Message));
            }
        }