private void RefreshData()
        {
            IPurchaseQuotationListRepository purchaseRepository = new PurchaseQuotationListRepository();

            this.DateFormat   = purchaseRepository.GetDateFormat();
            this.ShowAllCount = purchaseRepository.GetAllPurQuotation().Count();
            GetOptionsandTaxValues();
            this.JsonData = purchaseRepository.GetLastSelectionData(Convert.ToInt32(ScreenId.PurchaseQuotationList));
            this.PurchaseQuotationList    = purchaseRepository.GetAllPurQuotationJson(this.JsonData, this.IncludingGSTTrue).OrderBy(e => e.SupplierName).ToList();
            this.ShowSelectedCount        = this.PurchaseQuotationList.Count();
            this.PurchaseQuotationListcmb = purchaseRepository.GetAllPurQuotation().OrderBy(x => x.SupplierName).ToList();
            this.PurchaseQuotationListSup = this.PurchaseQuotationList.GroupBy(x => x.SupplierName).Select(y => y.First()).OrderBy(x => x.SupplierName).Distinct().ToList();

            this.YearRange = purchaseRepository.GetYearRange().ToList();
            //changedateformat(this.PurchaseQuotationList);
            changeNumberformat(this.PurchaseQuotationList);
            changeNumberformat(this.PurchaseQuotationListcmb);
            this.PurchaseQuotationListQno = purchaseRepository.GetAllPurQuotation().OrderBy(e => e.SortQuotationNo).ToList();
            DefaultList = this.PurchaseQuotationListcmb;
            FullPQList  = this.PurchaseQuotationListcmb;
            //this.ShowAllCount = this.PurchaseQuotationListcmb.Count();
            SetDefaultSearchSelection(this.JsonData);
            var    Updateddate = this.PurchaseQuotationListcmb.Max(x => x.CreatedDateList);
            string date        = this.DateFormat as string;

            this.LastUpdateDate  = Convert.ToDateTime(Updateddate).ToString(date);
            TotalQuotationAmount = Convert.ToString(PurchaseQuotationList.Sum(e => e.QAmount));
            //this.GetData(this.SelectedSearchSupplier);
        }
        void ShowAll(object param)
        {
            this.YearmonthQuartTrue = false; //added after client feedback
            this.StartEndDateTrue   = false; //added after client feedback

            this.PurchaseQuotationList    = FullPQList;
            this.PurchaseQuotationListcmb = FullPQList;
            if (this.ShowAllTrue == false)
            {
                this.ShowSelectedCount = this.PurchaseQuotationList.Count();
            }
            else
            {
                this.ShowSelectedCount = 0;
            }
            this.SelectedSearchEndDate   = null;
            this.SelectedSearchMonth     = null;
            this.SelectedSearchQuarter   = null;
            this.SelectedSearchYear      = null;
            this.SelectedSearchStartDate = null;
            this.SelectedSearchEndDate   = null;

            //commented and added on 23 may 2017
            this.PurchaseQuotationList    = FullPQList.ToList();
            this.PurchaseQuotationListSup = this.PurchaseQuotationList.GroupBy(x => x.SupplierName).Select(y => y.First()).OrderBy(x => x.SupplierName).Distinct().ToList();
            this.PurchaseQuotationListQno = PurchaseQuotationList.OrderBy(e => e.SortQuotationNo).ToList();
            //if (this.IncludingGSTTrue == true)
            //    this.PurchaseQuotationList = FullPQList.Where(x => x.ExcIncGST == true).ToList();
            //else
            //    this.PurchaseQuotationList = FullPQList.Where(x => x.ExcIncGST == false).ToList();
            Mouse.OverrideCursor = Cursors.Wait;
            Search(null);
            Mouse.OverrideCursor = null;
        }
        void Search(object param)
        {
            if (Count != 0)
            {
                SearchValues = new List <SearchEntity>();
                //this.ShowSelectedTrue = true;
                //this.ShowAllTrue = false;
                if (this.SelectedSearchYear != null || this.SelectedSearchYear == string.Empty)
                {
                    SearchEntity value = new SearchEntity();
                    value.FieldName  = "Year";
                    value.FieldValue = this.SelectedSearchYear;
                    SearchValues.Add(value);
                    var year = Convert.ToInt32(this.SelectedSearchYear);
                    //DefaultList = FullPQList.Where(x => x.CreatedDate.Value.Year == year).ToList();
                    //if (this.IncludingGSTTrue == true)
                    //    this.PurchaseQuotationListInternal = DefaultList.Where(x => x.ExcIncGST == true).ToList();
                    //else
                    //    this.PurchaseQuotationListInternal = DefaultList.Where(x => x.ExcIncGST == false).ToList();
                    //this.PurchaseQuotationListcmb = DefaultList;
                }
                if (this.SelectedSearchQuarter != null || this.SelectedSearchQuarter == string.Empty)
                {
                    SearchEntity value = new SearchEntity();
                    value.FieldName  = "Quarter";
                    value.FieldValue = this.SelectedSearchQuarter;
                    int month1;
                    int month2;
                    int month3;
                    if (Convert.ToInt32(this.SelectedSearchQuarter) == 1)
                    {
                        month1 = 1;
                        month2 = 2;
                        month3 = 3;
                    }
                    else if (Convert.ToInt32(this.SelectedSearchQuarter) == 2)
                    {
                        month1 = 4;
                        month2 = 5;
                        month3 = 6;
                    }
                    else if (Convert.ToInt32(this.SelectedSearchQuarter) == 3)
                    {
                        month1 = 7;
                        month2 = 8;
                        month3 = 9;
                    }
                    else
                    {
                        month1 = 10;
                        month2 = 11;
                        month3 = 12;
                    }
                    //DefaultList = FullPQList.Where(x => x.CreatedDate.Value.Month == month1 || x.CreatedDate.Value.Month == month2 || x.CreatedDate.Value.Month == month3).ToList();
                    //if (this.IncludingGSTTrue == true)
                    //    this.PurchaseQuotationListInternal = DefaultList.Where(x => x.ExcIncGST == true).ToList();
                    //else
                    //    this.PurchaseQuotationListInternal = DefaultList.Where(x => x.ExcIncGST == false).ToList();
                    //this.PurchaseQuotationListcmb = DefaultList;
                    SearchValues.Add(value);
                }
                if (this.SelectedSearchMonth != null || this.SelectedSearchMonth == string.Empty)
                {
                    SearchEntity value = new SearchEntity();
                    value.FieldName  = "Month";
                    value.FieldValue = this.SelectedSearchMonth;
                    SearchValues.Add(value);
                    var month = Convert.ToInt32(this.SelectedSearchMonth);
                    //DefaultList = FullPQList.Where(x => x.CreatedDate.Value.Month == month).ToList();
                    //if (this.IncludingGSTTrue == true)
                    //    this.PurchaseQuotationListInternal = DefaultList.Where(x => x.ExcIncGST == true).ToList();
                    //else
                    //    this.PurchaseQuotationListInternal = DefaultList.Where(x => x.ExcIncGST == false).ToList();
                    //this.PurchaseQuotationListcmb = DefaultList;
                }
                if (this.SelectedSearchStartDate != null && this.SelectedSearchEndDate != null)
                {
                    SearchEntity value = new SearchEntity();
                    value.FieldName  = "StartDate";
                    value.FieldValue = this.SelectedSearchStartDate.ToString();
                    value.FieldValue = string.Format("{0:MMM/dd/yyyy}", this.SelectedSearchStartDate);
                    SearchValues.Add(value);
                    //string[] value = new string[2];
                    SearchEntity value1 = new SearchEntity();
                    value1.FieldName = "EndDate";
                    //value1.FieldValue = this.SelectedSearchEndDate.ToString();
                    value1.FieldValue = string.Format("{0:MMM/dd/yyyy}", this.SelectedSearchEndDate);

                    //DefaultList = FullPQList.Where(x => x.CreatedDate > this.SelectedSearchStartDate && x.CreatedDate < this.SelectedSearchEndDate).ToList();
                    //if (this.IncludingGSTTrue == true)
                    //    this.PurchaseQuotationListInternal = DefaultList.Where(x => x.ExcIncGST == true).ToList();
                    //else
                    //    this.PurchaseQuotationListInternal = DefaultList.Where(x => x.ExcIncGST == false).ToList();
                    //this.PurchaseQuotationListcmb = DefaultList;
                    SearchValues.Add(value);
                    SearchValues.Add(value1);
                }
                //if (this.SelectedSearchEndDate != null || this.SelectedSearchEndDate == string.Empty)
                //{
                //    string[] value = new string[2];
                //    value[0] = "EndDate";
                //    value[1] = this.SelectedSearchEndDate;
                //    SearchValues.Add(value);
                //}

                //this.PurchaseQuotationList = this.PurchaseQuotationListInternal;
                jsonSearch    = JsonConvert.SerializeObject(SearchValues);
                this.JsonData = jsonSearch;

                IPurchaseQuotationListRepository purchaseRepository = new PurchaseQuotationListRepository();
                var results = purchaseRepository.SaveSearchJson(jsonSearch, Convert.ToInt32(ScreenId.PurchaseQuotationList), "Purhcase_Quotation_List");
                if (Count != 0)
                {
                    this.PurchaseQuotationList = purchaseRepository.GetAllPurQuotationJson(jsonSearch, this.IncludingGSTTrue);
                    //changedateformat(this.PurchaseQuotationList);
                    changeNumberformat(this.PurchaseQuotationList);
                }

                this.PurchaseQuotationListcmb = this.PurchaseQuotationList.OrderBy(e => e.SupplierName).ToList();
                this.PurchaseQuotationListSup = this.PurchaseQuotationList.GroupBy(x => x.SupplierName).Select(y => y.First()).OrderBy(x => x.SupplierName).Distinct().ToList();
                this.PurchaseQuotationListQno = PurchaseQuotationList.OrderBy(e => e.SortQuotationNo).ToList();
                if (this.ShowAllTrue == true)
                {
                    this.ShowSelectedCount = 0;
                }
                else
                {
                    this.ShowSelectedCount = this.PurchaseQuotationList.Count();
                }
                DefaultList = this.PurchaseQuotationListcmb;

                TotalQuotationAmount = Convert.ToString(this.PurchaseQuotationList.Sum(e => e.QAmount));
            }
        }