public DyeingJoViewModel(Order order, decimal quantity, PurchaseOrder po, string grnRefNo, GRNReciept reciept, bool jobOrderIssued, JobOrder parentJo)
        {
            this.Order = order;
            JO = new DyeingJO();
            JO.Order = order;
            JO.QuoteDate = order.OrderDate;
            JO.JODate = DBResources.Instance.GetServerTime();
            JO.PurchaseOrder = po;
            JO.GRNRefNo = grnRefNo;

            JO.GRNReciept = reciept;
            JO.JobOrder = parentJo;
            JO.JoNo = "D" + (DBResources.Instance.Context.DyeingJOes.Count() + 1).ToString();

            JO.Add();
        }
        public CreateNewPurchaseOrderViewModel(Order order, PurchaseOrder po) : this(order)
        {
            PurchaseOrder = po;

            //Only for PO generated from GRN failed quantity
            if (PurchaseOrder.ProductMaterialItems.Count == 0)
            {
                if (PurchaseOrder.OrderedItems.Count != 0)
                {
                    foreach (OrderedItem item in PurchaseOrder.OrderedItems)
                    {
                        item.PropertyChanged -= item_PropertyChanged;
                        item.PropertyChanged += item_PropertyChanged;

                        TotalPOValue += item.ItemCostInItemCurrency;
                    }
                }
            }
        }
        public void SetOrder(Order order, PurchaseOrder po)
        {
            this.Order = order;
            ViewModel = new CreateNewPurchaseOrderViewModel(order, po);

            if (po.Approval == null)
            {
                btnChooseItems.Visibility = System.Windows.Visibility.Collapsed;
                poCurrencySelection.IsEnabled = false;
            }
            else if (po.Approval.IsApproved == null)
            {
                SetUIAccesibility(PurchaseOrderState.Generated);                
            }
            else if (po.Approval.IsApproved.Value == true)
            {
                SetUIAccesibility(PurchaseOrderState.Approved);
            }
            else
            {
                SetUIAccesibility(PurchaseOrderState.Rejeted);
            }
        }
 public PoGrnSummaryViewModel(PurchaseOrder purchaseOrder)
 {
     this.PurchaseOrder = purchaseOrder;
     Receipts = new ObservableCollection<GRNReciept>();
 }
 public void CreateNewJo(Order order, decimal quantity, PurchaseOrder po, string grnRefNo, GRNReciept receipt, bool jobOrderIssued, JobOrder parentJo)
 {
     ViewModel = new DyeingJoViewModel(order, quantity, po, grnRefNo, receipt, jobOrderIssued,parentJo);
     //budgetVsActualControl.Initialize(receipt.OrderedItem, parentJo);
 }
示例#6
0
        private bool GeneratePurchaseOrder(PurchaseOrder po, string filePath)
        {
            try
            {
                string supplierInformation = GetSupplierInformation(po.Company);
                string purchaseOrderNumber = GetPurchaseOrderNumber(po.Company);
                string quoteNumber = GetQuoteNumber();
                string quoteDate = GetQuoteDate(po.PurchaseOrderDate);

                purchaseOrderReportControl.SetParameters(supplierInformation, purchaseOrderNumber, po.PurchaseOrderDate.Value.ToShortDateString(), quoteNumber, quoteDate,
                                                        po.PriceTerms,
                                                        po.Freigt,
                                                        po.PaymentTerms,
                                                        po.DeliveryDate,
                                                        po.QualitySpecifications,
                                                        po.QuantityAllowance);
                purchaseOrderReportControl.CreateReportAsPDF(po.PurchaseOrderID, filePath);
            }
            catch (Exception e)
            {
                System.Windows.MessageBox.Show(e.Message);
                return false;
            }

            return true;

        }
示例#7
0
        public PurchaseOrder CreateNewPurchaseOrder(Order order, Company supplier, string purchseOrderNumber)
        {
            PurchaseOrder newPO = new PurchaseOrder();
            newPO.PurchaseOrderNumber = purchseOrderNumber;
            newPO.SupplierID = supplier.CompanyID;
            newPO.OrderID = order.OrderID;
            newPO.PurchaseOrderStatusID = 1;

            OrderManagerDBEntities newManager = new OrderManagerDBEntities();
            newManager.PurchaseOrders.Add(newPO);
            newManager.SaveChanges();
            newManager.Dispose();

            newPO = GetPurchaseOrder(purchseOrderNumber);

            return newPO;
        }
        private void generateNewPO_Click(object sender, RoutedEventArgs e)
        {
            Button btnGeneratePo = sender as Button;

            Company Supplier = null;
            if (btnGeneratePo != null && btnGeneratePo.Tag != null)
            {
                Supplier = btnGeneratePo.Tag as Company;
            }

            if (Supplier != null)
            {
                PurchaseOrder newPurchaseOrder = new PurchaseOrder();
                newPurchaseOrder.PurchaseOrderNumber = Constants.GetPurchaseOrderNumber(ViewModel.SelectedGRNReceipt.OrderedItem.PurchaseOrder.Company, ViewModel.SelectedGRNReceipt.OrderedItem.PurchaseOrder.Order);
                newPurchaseOrder.PurchaseOrderDate = DBResources.Instance.GetServerTime();
                newPurchaseOrder.PurchaseOrderStatusID = 1;
                newPurchaseOrder.Company = Supplier;
                newPurchaseOrder.TermsAndConditions = ViewModel.SelectedGRNReceipt.OrderedItem.PurchaseOrder.TermsAndConditions;

                OrderedItem newOrderedItem = ViewModel.OrderedItem.Clone() as OrderedItem;
                newOrderedItem.OrderedQuantity = ViewModel.SelectedGRNReceipt.QualityFailedQuantityWrapper;
                newOrderedItem.CostWrapper = ViewModel.SelectedGRNReceipt.OrderedItem.CostWrapper;
                newOrderedItem.TaxPerUnitWrapper = ViewModel.SelectedGRNReceipt.OrderedItem.TaxPerUnitWrapper;
                newOrderedItem.PurchaseOrder = newPurchaseOrder;
                
                newPurchaseOrder.OrderedItems.Add(newOrderedItem);

                ViewModel.SelectedGRNReceipt.SpawnedNewPurchaseOrder = true;
                ViewModel.SelectedGRNReceipt.PurchaseOrder = newPurchaseOrder;

                CreatePOWindow poWindow = new CreatePOWindow();
                poWindow.SetOrder(ViewModel.Order, newPurchaseOrder);

                if (poWindow.ShowDialog() == true)
                {
                    ViewModel.SelectedGRNReceipt.RefreshUIEnablers();
                }
            }
            else
            {
                InformUser("Please select the supplier to generate new purchase order");
            }

        }
 public void CreateNewJo(Order order, decimal quantity, PurchaseOrder po, string grnRefNo, GRNReciept receipt, bool jobOrderIssued, JobOrder parentJo)
 {
     ViewModel = new CompactingJoViewModel(order, quantity, po, grnRefNo, receipt, jobOrderIssued, parentJo);
 }
 public void SetOrder(Order order, PurchaseOrder po)
 {
     poEditControl.SetOrder(order, po);
 }
 public PurchaseOrderPDFGenerator(PurchaseOrder purchaseOrder)
 {
     purchaseOrderReportControl = new Reports.PurchaseOrderReportControl();
     PurchaseOrder = purchaseOrder;
 }