Exemplo n.º 1
0
        public PurchaseOrderViewModel(IRegionManager regionManager, IEventAggregator eventAggregator)
        {
            Mouse.OverrideCursor = Cursors.Wait;
            this.regionManager   = regionManager;
            this.eventAggregator = eventAggregator;
            //ConvertToPOCommand = new RelayCommand(ConvertToPurchaseOrder, CanConvertToPO);
            ConvertToPICommand = new RelayCommand(ConvertToPurchaseInvoice, CanConvertToPI);
            SaveCommand        = new RelayCommand(SavePurchaseOrder, CanSave);
            SupplierSelectionChangedCommand = new RelayCommand(OnSupplierChange);
            NewPOCommand             = new RelayCommand(OnNewPO);
            DuplicateCommand         = new RelayCommand(OnDuplicatePO, CanDuplicate);
            IncludeTaxCheckedCommand = new RelayCommand(OnIncludeTax);
            ExcludeTaxCheckedCommand = new RelayCommand(OnExcludeTax);
            DeleteCommand            = new RelayCommand(OnDeletePO, CanDeletePO);
            NavigateToClientCommand  = new RelayCommand(NavigatetoSupplier, CanNavigate);
            PayDepositCommand        = new RelayCommand(PayDeposit, CanSave);

            PurchaseOrderEntity = new PurchaseOrderEntity();
            PODetailsEntity     = new ObservableCollection <DataGridViewModel>();


            int  minHeight   = 300;
            int  headerRows  = 339;//180+40+30+10;
            var  height      = System.Windows.SystemParameters.PrimaryScreenHeight - headerRows - 85;
            bool validHeight = int.TryParse(height.ToString(), out minHeight);

            this.POFormGridHeight = minHeight;

            #region getting Options details
            GetOptionsData();
            #endregion

            AllFieldsEnabled  = true;
            AllFieldsReadonly = false;
            this.OrderDate    = DateTime.Now.Date;
            this.DeliveryDate = DateTime.Now.Date;

            LoadSupplierBackground();
            //ProductList = pandsRepository.GetAllPandS().OrderBy(e => e.PSName);
            //ProductAndServices = new ObservableCollection<PandSDetailsModel>(ProductList);
            ProductList        = pandsRepository.GetPandSComboList();
            ProductAndServices = new ObservableCollection <PandSListModel>(ProductList).OrderBy(x => x.PSName).ToObservable();
            if (!String.IsNullOrEmpty(SharedValues.NewClick))
            {
                if (SharedValues.NewClick != "New")
                {
                    SupplierEnabled = false;//added on 23may2017
                    GetPurchaseOrder(SharedValues.NewClick);
                }
                else if (SharedValues.NewClick == "New")
                {
                    SupplierEnabled = true;//added on 23may2017
                    GetNewPO();
                }
            }
            Mouse.OverrideCursor = null;
        }
Exemplo n.º 2
0
        /// <summary>
        /// This method is used to get new PO
        /// </summary>
        public void GetNewPO()
        {
            VisibilityForImage = Visibility.Collapsed;
            IsNew = true;
            ID    = 0;
            SelectedSupplierID = 0;
            BillToAddress      = string.Empty;
            ShipToAddress      = string.Empty;
            //ValidForDays = 0;
            OrderNo             = GenerateNewOrderNo();
            TermsAndConditions  = TandC;
            OrderDate           = DateTime.Now.Date;
            DeliveryDate        = DateTime.Now.Date;
            TotalBeforeTax      = 0;
            TotalTax            = 0;
            TotalAfterTax       = 0;
            TotalBeforeTaxStr   = Convert.ToString(0);
            TotalTaxStr         = Convert.ToString(0);
            TotalAfterTaxStr    = Convert.ToString(0);
            POErrors            = string.Empty;
            AllFieldsEnabled    = true;
            AllFieldsReadonly   = false;
            SupplierEnabled     = true;// added on 23 may 2017
            PurchaseOrderEntity = new PurchaseOrderEntity();
            PODetailsEntity.Clear();

            LstSuppliers       = supplierRepository.GetAllSupplier().Where(s => s.IsInActive != "Y").ToList();
            ProductAndServices = ProductAndServices.OrderBy(x => x.PSName).Where(x => x.IsInActive == "N").ToObservable();
            // PODetailsEntity = new ObservableCollection<DataGridViewModel>();
            var row = new DataGridViewModel(ProductList.Where(x => x.IsInActive == "N").ToList());

            //row.PQQty = 1;
            //row.PQDiscount = 0;

            //row.GSTRate = TaxRate;
            //row.GSTRateStr = Convert.ToString(TaxRate) + "%";
            PODetailsEntity.Add(row);
            OnPropertyChanged("PODetailsEntity");
            var  lstOptions = pandsRepository.GetOptionDetails();
            bool?tax        = lstOptions.ShowAmountIncGST;

            if (tax == true)
            {
                ExcludingTax = false;
                IncludingTax = true;
            }
            else
            {
                IncludingTax = false;
                ExcludingTax = true;
            }
        }
Exemplo n.º 3
0
        public PurchaseOrderForm GetDataIntoModel()
        {
            PurchaseOrderForm POForm = new PurchaseOrderForm();

            POForm.OrderDetails = new List <PurchaseOrderDetailEntity>();
            PurchaseOrderEntity model = new PurchaseOrderEntity();

            model.OrderNo        = this.OrderNo;
            model.OrderDate      = this.OrderDate;
            model.TotalBeforeTax = this.TotalBeforeTax;
            model.TotalTax       = this.TotalTax;
            model.TotalAfterTax  = this.TotalAfterTax;
            //model.ValidForDays = this.ValidForDays;
            model.DeliveryDate = this.DeliveryDate;
            model.SupplierID   = this.SelectedSupplierID;

            model.TermsAndConditions = this.TermsAndConditions;
            if (ExcludingTax == true)
            {
                model.ExcIncGST = false;
            }
            else
            {
                model.ExcIncGST = true;
            }

            POForm.Order = model;

            foreach (var item in PODetailsEntity)
            {
                PurchaseOrderDetailEntity pqEntity = new PurchaseOrderDetailEntity();
                pqEntity.PONo       = Convert.ToString(item.SelectedPSID);
                pqEntity.PandSCode  = item.PandSCode;
                pqEntity.PandSName  = item.PandSName;
                pqEntity.POQty      = item.PQQty;
                pqEntity.POPrice    = item.PQPrice;
                pqEntity.PODiscount = item.PQDiscount;
                pqEntity.GSTRate    = item.GSTRate;
                pqEntity.GSTRateStr = Convert.ToString(item.GSTRate) + "%";
                pqEntity.POAmount   = item.PQAmount;
                if (item.SelectedPSID != null && Convert.ToInt32(item.SelectedPSID) > 0)
                {
                    POForm.OrderDetails.Add(pqEntity);
                }
            }
            return(POForm);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Gets all purchase orders.
        /// </summary>
        /// <returns>Get All Purchase Orders</returns>
        public IEnumerable <PurchaseOrderEntity> GetAllPurchaseOrders()
        {
            IList <PurchaseOrderEntity> result            = new List <PurchaseOrderEntity>();
            IPurchaseOrderBL            purchaseOrderBL   = new PurchaseOrderBL();
            List <PurchaseOrder>        purchaseOrderList = purchaseOrderBL.GetAllPurchaseOrder();

            foreach (PurchaseOrder source in purchaseOrderList)
            {
                PurchaseOrderEntity target = new PurchaseOrderEntity();
                target.PurchaseOrderID = source.PurchaseOrderID;
                target.Vendor          = source.Vendor;
                target.TotalPurchase   = source.Total_Purchase;
                target.AveragePurchase = source.Average_Purchase;
                target.MinimumPurchase = source.Minimum_Purchase;
                target.MaximumPurchase = source.Maximum_Purchase;
                result.Add(target);
            }
            return(result);
        }