0% found this document useful (0 votes)
63 views

B2Pagepresenter B2Pagepresenter: Private Void Bool If Return New This This This If This This This

The method creates a B2 page by loading a model with contract and rate data and setting it as the data source for the blank B2 page user control. It retrieves various data like units, boards, seasons from the contract. It then loops through periods merging them with stay conditions to generate B2 page records with minimum stay values, and adds them to the list of B2 pages if the minimum stay is greater than 0. Finally it sets the B2 page control's data source to this list.

Uploaded by

olgutza_ivan
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
63 views

B2Pagepresenter B2Pagepresenter: Private Void Bool If Return New This This This If This This This

The method creates a B2 page by loading a model with contract and rate data and setting it as the data source for the blank B2 page user control. It retrieves various data like units, boards, seasons from the contract. It then loops through periods merging them with stay conditions to generate B2 page records with minimum stay values, and adds them to the list of B2 pages if the minimum stay is greater than 0. Finally it sets the B2 page control's data source to this list.

Uploaded by

olgutza_ivan
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

private void CreateB2Page(bool bFill) { if (!bFill) return; B2PagePresenter B2Presenter = new B2PagePresenter(); B2Presenter.LoadModel(this.CurrentContract(), this.basicRateList, this.htBoardingCodesFlex); if (B2Presenter.Model.BPages.

Count > 0) this.ucBlankTabContainer.SetTabColor(this.ucBlankTabContainer.B2Page, highLightColor); this.ucBlankTabContainer.ucBlankB2Page.DataSource = B2Presenter.Model; } ///////////////////////////////////////// MinimumStay //private void CreateB2PageOld(TPAExtension tpa, bool bFill) //{ // if (!bFill) // return; // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // this.ucBlankTabContainer.ucBlankB2Page.listOfB2Page = new BindingList<B2Page>(); BindingList<BasicRateApplyDim> blBasicRateDim = ContractLayoutHelper.CreateBasicRateList(this.CurrentContract()); DefaultPeriodBindingList pblPeriods = new DefaultPeriodBindingList(this.CurrentContract()); Release relMinimumStay = null; ReleaseList lstReleases = new ReleaseList(this.CurrentContract()); int iMinStayIndex = CollectionHelper.FindIndex<Release>(lstReleases, "ReleaseType", ReleaseType.MinStay); if (iMinStayIndex >= 0) relMinimumStay = lstReleases[iMinStayIndex]; BasicRateList arBasicRates = new BasicRateList(this.CurrentContract(), blBasicRateDim); Dictionary<string, string> dctUnitBoards = FillUnitBoards(arBasicRates); List<string> lstBoards = FillBoardList(); List<string> lstSeasons = FillSeasonList(pblPeriods); this.ucBlankTabContainer.ucBlankB2Page.FillUnits(dctUnitBoards); this.ucBlankTabContainer.ucBlankB2Page.FillBoards(lstBoards); this.ucBlankTabContainer.ucBlankB2Page.FillSeasons(lstSeasons); this.ucBlankTabContainer.ucBlankB2Page.dtContractStart = this.CurrentContract().TravelStartdate.GetValueOrDefault(); this.ucBlankTabContainer.ucBlankB2Page.dtContractEnd = this.CurrentContract().TravelEnddate.GetValueOrDefault(); if (this.CurrentContract().StayConditionLines.Count == 0) { this.ucBlankTabContainer.ucBlankB2Page.gcB2Page.DataSource = this.ucBlankTabContainer.ucBlankB2Page.listOfB2Page; return; } SortedList<DateTime, Object[]> sourcePeriods = CreateSourcePeriodsFromContractSeasons(); List<String> unitList = new List<String>(); if (IsStayConditionPerUnit("MinStay")) { foreach (BasicRate basicRate in arBasicRates) { unitList.Add(basicRate.SellingUnit.UnitCodeExternal); } } else

// // // // // // // //

{ unitList.Add("*"); } int iRow = 0; Hashtable hashDuplicates = new Hashtable(); foreach (String unitCode in unitList) { SortedList<DateTime, Object[]> periods2Merge = CreateStayConditionPeriodsFromContract(unitCode, "MinStay");

// //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // SortedList<DateTime, Object[]> list = MergeSeasons4(sourcePeriods, periods2Merge); // //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // //foreach (Object[] objPeriodNew in list.Values) // //{ // // foreach (Season season in this.CurrentContract().SubSeasons()) // // { // // Period period = (Period)objPeriodNew[0]; // // foreach (Period seasonPeriod in season.Periods) // // { // // if (period.StartDate.GetValueOrDefault() >= seasonPeriod.StartDate.GetValueOrDefault() && period.StartDate.GetValueOrDefault() <= seasonPeriod.EndDate.GetValueOrDefault()) // // objPeriodNew[1] = season; // // // // // // // // // // // // // // // // // // // } // } //} //foreach (Object[] objPeriodNew in list.Values) //{ // Period period = (Period)objPeriodNew[0]; // foreach (StayConditionLine stayConditionLine in this.CurrentContract().StayConditionLines) // { // if (period.StartDate.GetValueOrDefault() == stayConditionLine.StartDate.GetValueOrDefault()) // { // objPeriodNew[1] = stayConditionLine; // } // } //} //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ foreach (Object[] objPeriod in list.Values) { Period period = (Period)objPeriod[0];

// String strKey = unitCode + period.StartDate.GetValueOrDefault().ToString(GERMAN_DATE_LONG) + period.EndDate.GetValueOrDefault().ToString(GERMAN_DATE_LONG); // if (hashDuplicates.ContainsKey(strKey)) // continue; // // // // // // // hashDuplicates.Add(strKey, strKey); B2Page b2Page = new B2Page(iRow++); b2Page.HotelBEMVonAnreise = period.StartDate.GetValueOrDefault(); b2Page.HotelBEMBisAnreise = period.EndDate.GetValueOrDefault(); b2Page.HotelBEMZimmercode = unitCode; if (objPeriod[1] is StayConditionLine) // Exceptional Maximumstay {

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // //}

StayConditionLine stayCondition = (StayConditionLine)objPeriod[1]; //b2Page.HotelBEMVerpflegung = dctUnitBoards[b2Page.HotelBEMZimmercode]; b2Page.HotelBEMVerpflegung = "*"; uint days = RetrieveExceptionStayRestrictionForUnit(unitCode, stayCondition, 1); b2Page.HotelBEMTage = days; } else // default Season Maximum Stay { if (objPeriod[1] is int) { b2Page.HotelBEMVerpflegung = "*"; //b2Page.HotelBEMSaisonzeit = season.Code; b2Page.HotelBEMSaisonzeit = ""; // According to REWE always Blank b2Page.HotelBEMTage = ((uint)(int)objPeriod[1]); } else { Season season = (Season)objPeriod[1]; //b2Page.HotelBEMZimmercode = "*"; b2Page.HotelBEMVerpflegung = "*"; //b2Page.HotelBEMSaisonzeit = season.Code; b2Page.HotelBEMSaisonzeit = ""; // According to REWE always Blank foreach (StayConditionLine stayCondition in this.CurrentContract().StayConditionLines) { if (stayCondition.Season != null && stayCondition.Season.Code.Equals(season.Code)) { b2Page.HotelBEMTage = Convert.ToUInt32(stayCondition.MinStay.GetValueOrDefault()); break; } } } } // we need to find duplicates which are lost if we have two items with the same period StayConditionLine stayContition = FindExceptionalStayRestrictionByPeriod(period); if (stayContition != null && stayContition.MinStay.GetValueOrDefault() > 0) { b2Page.HotelBEMTage = Convert.ToUInt32(stayContition.MinStay.GetValueOrDefault()); } if (b2Page.HotelBEMTage > 0) { this.ucBlankTabContainer.ucBlankB2Page.listOfB2Page.Add(b2Page); } else iRow--; } } this.ucBlankTabContainer.ucBlankB2Page.dtContractStart = this.CurrentContract().TravelStartdate.GetValueOrDefault(); this.ucBlankTabContainer.ucBlankB2Page.dtContractEnd = this.CurrentContract().TravelEnddate.GetValueOrDefault(); this.ucBlankTabContainer.ucBlankB2Page.gcB2Page.DataSource = this.ucBlankTabContainer.ucBlankB2Page.listOfB2Page; if (this.ucBlankTabContainer.ucBlankB2Page.listOfB2Page.Count > 0) this.ucBlankTabContainer.SetTabColor(this.ucBlankTabContainer.B2Page, highLightColor);

You might also like