Exemple #1
0
        private tblMove GetOrCreateOldContextOrder(InventoryShipmentOrder order, bool createdNew, out bool commitNewContext)
        {
            commitNewContext = false;

            if (createdNew || order.MoveNum == null)
            {
                commitNewContext = true;

                var tblMove = new tblMove
                {
                    MoveNum             = (order.MoveNum = GetNextMoveNum(order.DateCreated.Year)).Value,
                    TTypeID             = (int)order.OrderType.ToTransType(),
                    EntryDate           = DateTime.UtcNow.ConvertUTCToLocal(),
                    tblMoveOrderDetails = new EntityCollection <tblMoveOrderDetail>(),
                    tblMoveDetails      = new EntityCollection <tblMoveDetail>(),
                    Status = (int?)tblOrderStatus.Scheduled
                };
                OldContext.tblMoves.AddObject(tblMove);

                return(tblMove);
            }

            return(OldContext.tblMoves
                   .Where(m => m.MoveNum == order.MoveNum.Value)
                   .Select(m => new
            {
                move = m,
                m.tblMoveOrderDetails,
                m.tblMoveDetails
            })
                   .ToList()
                   .Select(m => m.move).Single());
        }
        public static void SetOrderShipment(InventoryShipmentOrder newOrder, tblMove oldOrder)
        {
            oldOrder.PalletOR        = (decimal?)newOrder.ShipmentInformation.PalletWeight;
            oldOrder.PalletQty       = newOrder.ShipmentInformation.PalletQuantity;
            oldOrder.FreightBillType = newOrder.ShipmentInformation.FreightBillType;
            oldOrder.ShipVia         = newOrder.ShipmentInformation.ShipmentMethod;
            oldOrder.Driver          = newOrder.ShipmentInformation.DriverName;
            oldOrder.Carrier         = newOrder.ShipmentInformation.CarrierName;
            oldOrder.TrlNbr          = newOrder.ShipmentInformation.TrailerLicenseNumber;
            oldOrder.ContSeal        = newOrder.ShipmentInformation.ContainerSeal;
            oldOrder.InternalNotes   = newOrder.ShipmentInformation.InternalNotes;
            oldOrder.ExternalNotes   = newOrder.ShipmentInformation.ExternalNotes;
            oldOrder.SpclInstr       = newOrder.ShipmentInformation.SpecialInstructions;

            oldOrder.PONbr    = newOrder.PurchaseOrderNumber;
            oldOrder.DateRecd = newOrder.DateReceived;
            oldOrder.From     = newOrder.RequestedBy;
            oldOrder.TakenBy  = newOrder.TakenBy;

            oldOrder.DelDueDate   = newOrder.ShipmentInformation.RequiredDeliveryDate;
            oldOrder.SchdShipDate = newOrder.ShipmentInformation.ShipmentDate;
            oldOrder.Date         = newOrder.ShipmentInformation.ShipmentDate;

            oldOrder.CCompany = newOrder.ShipmentInformation.ShipFrom.Name;
            //oldOrder.CPhone = newOrder.ShipmentInformation.ShipFrom.Phone;
            //oldOrder.CEmail = newOrder.ShipmentInformation.ShipFrom.EMail;
            //oldOrder.CFax = newOrder.ShipmentInformation.ShipFrom.Fax;
            oldOrder.CAddress1 = newOrder.ShipmentInformation.ShipFrom.Address.AddressLine1;
            oldOrder.CAddress2 = newOrder.ShipmentInformation.ShipFrom.Address.AddressLine2;
            oldOrder.CAddress3 = newOrder.ShipmentInformation.ShipFrom.Address.AddressLine3;
            oldOrder.CCity     = newOrder.ShipmentInformation.ShipFrom.Address.City;
            oldOrder.CState    = newOrder.ShipmentInformation.ShipFrom.Address.State;
            oldOrder.CZip      = newOrder.ShipmentInformation.ShipFrom.Address.PostalCode;
            oldOrder.CCountry  = newOrder.ShipmentInformation.ShipFrom.Address.Country;

            oldOrder.SCompany = newOrder.ShipmentInformation.ShipTo.Name;
            oldOrder.SPhone   = newOrder.ShipmentInformation.ShipTo.Phone;
            //oldOrder.SEmail = newOrder.ShipmentInformation.ShipTo.EMail;
            //oldOrder.SFax = newOrder.ShipmentInformation.ShipTo.Fax;
            oldOrder.SAddress1 = newOrder.ShipmentInformation.ShipTo.Address.AddressLine1;
            oldOrder.SAddress2 = newOrder.ShipmentInformation.ShipTo.Address.AddressLine2;
            oldOrder.SAddress3 = newOrder.ShipmentInformation.ShipTo.Address.AddressLine3;
            oldOrder.SCity     = newOrder.ShipmentInformation.ShipTo.Address.City;
            oldOrder.SState    = newOrder.ShipmentInformation.ShipTo.Address.State;
            oldOrder.SZip      = newOrder.ShipmentInformation.ShipTo.Address.PostalCode;
            oldOrder.SCountry  = newOrder.ShipmentInformation.ShipTo.Address.Country;

            oldOrder.Company  = newOrder.ShipmentInformation.FreightBill.Name;
            oldOrder.Phone    = newOrder.ShipmentInformation.FreightBill.Phone;
            oldOrder.Email    = newOrder.ShipmentInformation.FreightBill.EMail;
            oldOrder.Fax      = newOrder.ShipmentInformation.FreightBill.Fax;
            oldOrder.Address1 = newOrder.ShipmentInformation.FreightBill.Address.AddressLine1;
            oldOrder.Address2 = newOrder.ShipmentInformation.FreightBill.Address.AddressLine2;
            oldOrder.Address3 = newOrder.ShipmentInformation.FreightBill.Address.AddressLine3;
            oldOrder.City     = newOrder.ShipmentInformation.FreightBill.Address.City;
            oldOrder.State    = newOrder.ShipmentInformation.FreightBill.Address.State;
            oldOrder.Zip      = newOrder.ShipmentInformation.FreightBill.Address.PostalCode;
            oldOrder.Country  = newOrder.ShipmentInformation.FreightBill.Address.Country;
        }
Exemple #3
0
        private void SetPickedInventory(InventoryShipmentOrder newOrder, tblMove oldOrder, ref bool commitNewContext)
        {
            var MDetail            = OldContext.tblMoveDetails.Any() ? OldContext.tblMoveDetails.Max(m => m.MDetail).AddSeconds(1) : DateTime.UtcNow.ConvertUTCToLocal();
            var oldDetailsToRemove = oldOrder.tblMoveDetails.ToList();

            foreach (var newItem in newOrder.PickedInventory.Items)
            {
                var oldItem = oldDetailsToRemove.FirstOrDefault(d => d.MDetail == newItem.DetailID) ?? oldDetailsToRemove.FirstOrDefault();
                if (oldItem == null)
                {
                    oldItem = new tblMoveDetail
                    {
                        MDetail = MDetail
                    };
                    OldContext.tblMoveDetails.AddObject(oldItem);
                    MDetail = MDetail.AddSeconds(1);
                }
                else
                {
                    oldDetailsToRemove.Remove(oldItem);
                }

                oldItem.MoveNum         = newOrder.MoveNum.Value;
                oldItem.Lot             = LotNumberParser.BuildLotNumber(newItem);
                oldItem.TTypeID         = (int?)newOrder.OrderType.ToTransType();
                oldItem.PkgID           = OldContextHelper.GetPackaging(newItem.PackagingProduct).PkgID;
                oldItem.Quantity        = newItem.Quantity;
                oldItem.NetWgt          = (decimal?)newItem.PackagingProduct.Weight;
                oldItem.TtlWgt          = (decimal?)(newItem.Quantity * newItem.PackagingProduct.Weight);
                oldItem.LocID           = newItem.FromLocation.LocID.Value;
                oldItem.Move2           = newItem.CurrentLocation.LocID.Value;
                oldItem.TrtmtID         = OldContextHelper.GetTreatment(newItem).TrtmtID;
                oldItem.EmployeeID      = newOrder.PickedInventory.EmployeeId;
                oldItem.CustProductCode = newItem.CustomerProductCode;
                oldItem.CustLot         = newItem.CustomerLotCode;

                if (newItem.DetailID != oldItem.MDetail)
                {
                    commitNewContext = true;
                    newItem.DetailID = oldItem.MDetail;
                }
            }

            foreach (var o in oldDetailsToRemove)
            {
                OldContext.tblMoveDetails.DeleteObject(o);
            }
        }
Exemple #4
0
        private void SetPickOrder(InventoryShipmentOrder newOrder, tblMove oldOrder)
        {
            var MOrderDetail       = OldContext.tblMoveOrderDetails.Any() ? OldContext.tblMoveOrderDetails.Max(m => m.MOrderDetail).AddSeconds(1) : DateTime.UtcNow.ConvertUTCToLocal();
            var oldDetailsToRemove = oldOrder.tblMoveOrderDetails.ToList();

            foreach (var newItem in newOrder.InventoryPickOrder.Items)
            {
                var oldItem = oldDetailsToRemove.FirstOrDefault();
                if (oldItem == null)
                {
                    oldItem = new tblMoveOrderDetail
                    {
                        MOrderDetail = MOrderDetail
                    };
                    OldContext.tblMoveOrderDetails.AddObject(oldItem);
                    MOrderDetail = MOrderDetail.AddSeconds(1);
                }
                else
                {
                    oldDetailsToRemove.Remove(oldItem);
                }

                oldItem.MoveNum  = newOrder.MoveNum.Value;
                oldItem.Quantity = newItem.Quantity;
                oldItem.ProdID   = OldContextHelper.GetProduct(newItem.Product.ProductCode).ProdID;
                oldItem.PkgID    = OldContextHelper.GetPackaging(newItem.PackagingProduct).PkgID;
                oldItem.NetWgt   = (decimal?)newItem.PackagingProduct.Weight;
                oldItem.TtlWgt   = (decimal?)(newItem.PackagingProduct.Weight * newItem.Quantity);
                oldItem.TrtmtID  = OldContextHelper.GetTreatment(newItem).TrtmtID;

                oldItem.EmployeeID      = null;
                oldItem.CustProductCode = newItem.CustomerProductCode;
                oldItem.CustLot         = newItem.CustomerLotCode;
                oldItem.CustomerID      = newItem.Customer != null ? newItem.Customer.Company.Name : null;
            }

            foreach (var o in oldDetailsToRemove)
            {
                OldContext.tblMoveOrderDetails.DeleteObject(o);
            }
        }