private void GenerateSubsectorFaecalColiformSummaryStatDocument(Document document) { Body body = new Body(); Paragraph paragraph = new Paragraph(); Run run = new Run(); Table table = new Table(); TableRow tableRow = new TableRow(); TableCell tableCell = new TableCell(); //string URL = ""; TVItemService tvItemService = new TVItemService(_TaskRunnerBaseService._BWObj.appTaskModel.Language, _TaskRunnerBaseService._User); TVItemStatService tvItemStatService = new TVItemStatService(_TaskRunnerBaseService._BWObj.appTaskModel.Language, _TaskRunnerBaseService._User); TVItemModel tvItemModelSubsector = tvItemService.GetTVItemModelWithTVItemIDDB(_TaskRunnerBaseService._BWObj.appTaskModel.TVItemID); if (!string.IsNullOrWhiteSpace(tvItemModelSubsector.Error)) { paragraph = DocxBase.AddParagraph(body); DocxBase.AddRunWithCurrentParagraphStyle(paragraph, tvItemModelSubsector.Error); } //tvItemStatService.SetTVItemStatForTVItemIDAndParentsTVItemID(tvItemModelSubsector.TVItemID); DocxBase.CurrentParagraphStyle = ParagraphStyleEnum.Caption; DocxBase.CurrentJustificationValue = JustificationValues.Center; paragraph = DocxBase.AddParagraph(body); DocxBase.CurrentFontSize = 36; string TableTitle = DocxServiceSubsectorFCSummaryStatRes.Table + "1A-1." + DocxServiceSubsectorFCSummaryStatRes.SummaryStatOfFCDensitiesMPNPer100 + " " + DocxServiceSubsectorFCSummaryStatRes.For + " " + tvItemModelSubsector.TVText; run = DocxBase.AddRunWithCurrentFontStyle(paragraph, TableTitle); DocxBase.CurrentTableStyle = TableStyleEnum.ListTable7Colorful_Accent5; table = DocxBase.AddTableStyle(body); tableRow = DocxBase.AddTableRow(table); List <string> ColumnTitleList = new List <string>() { DocxServiceSubsectorFCSummaryStatRes.Station, DocxServiceSubsectorFCSummaryStatRes.Samples, DocxServiceSubsectorFCSummaryStatRes.Period, DocxServiceSubsectorFCSummaryStatRes.MinFC, DocxServiceSubsectorFCSummaryStatRes.MaxFC, DocxServiceSubsectorFCSummaryStatRes.GMean, DocxServiceSubsectorFCSummaryStatRes.Median, DocxServiceSubsectorFCSummaryStatRes.P90, DocxServiceSubsectorFCSummaryStatRes.PercBigger43, }; // Doing Cell Title foreach (string cellTitle in ColumnTitleList) { tableCell = DocxBase.AddTableCell(tableRow); paragraph = DocxBase.AddTableCellParagraph(tableCell); run = DocxBase.AddRunWithCurrentParagraphStyle(paragraph, cellTitle); } List <TVItemModel> tvItemModelMWQMList = tvItemService.GetChildrenTVItemModelListWithTVItemIDAndTVTypeDB(tvItemModelSubsector.TVItemID, TVTypeEnum.MWQMSite); foreach (TVItemModel tvItemModelMWQM in tvItemModelMWQMList) { TVItemMoreInfoMWQMSiteModel tvItemMoreInfoMWQMSiteModel = new TVItemMoreInfoMWQMSiteModel(); tvItemMoreInfoMWQMSiteModel = tvItemService.GetTVItemMoreInfoMWQMSiteTVItemIDDB(tvItemModelMWQM.TVItemID, 30); if (tvItemMoreInfoMWQMSiteModel.StatMaxYear > DateTime.Now.Year - 6) { tableRow = DocxBase.AddTableRow(table); // Doing Station tableCell = DocxBase.AddTableCell(tableRow); paragraph = DocxBase.AddTableCellParagraph(tableCell); run = DocxBase.AddRunWithCurrentParagraphStyle(paragraph, tvItemModelMWQM.TVText); // Doing Samples tableCell = DocxBase.AddTableCell(tableRow); paragraph = DocxBase.AddTableCellParagraph(tableCell); string SampCountTxt = (tvItemMoreInfoMWQMSiteModel.SampCount == null ? "" : tvItemMoreInfoMWQMSiteModel.SampCount.ToString()); run = DocxBase.AddRunWithCurrentParagraphStyle(paragraph, SampCountTxt); // Doing Period tableCell = DocxBase.AddTableCell(tableRow); paragraph = DocxBase.AddTableCellParagraph(tableCell); string StatMinMaxYearTxt = tvItemMoreInfoMWQMSiteModel.StatMinYear.ToString() + "-" + tvItemMoreInfoMWQMSiteModel.StatMaxYear.ToString(); run = DocxBase.AddRunWithCurrentParagraphStyle(paragraph, StatMinMaxYearTxt); // Doing MinFC tableCell = DocxBase.AddTableCell(tableRow); paragraph = DocxBase.AddTableCellParagraph(tableCell); string MinFCTxt = (tvItemMoreInfoMWQMSiteModel.MinFC == null ? "" : ((float)tvItemMoreInfoMWQMSiteModel.MinFC).ToString("F0")); if (MinFCTxt == "1") { MinFCTxt = "< 2"; } run = DocxBase.AddRunWithCurrentParagraphStyle(paragraph, MinFCTxt); // Doing MaxFC tableCell = DocxBase.AddTableCell(tableRow); paragraph = DocxBase.AddTableCellParagraph(tableCell); string MaxFCTxt = (tvItemMoreInfoMWQMSiteModel.MaxFC == null ? "" : ((float)tvItemMoreInfoMWQMSiteModel.MaxFC).ToString("F0")); if (MaxFCTxt == "1") { MaxFCTxt = "< 2"; } run = DocxBase.AddRunWithCurrentParagraphStyle(paragraph, MaxFCTxt); // Doing GMean tableCell = DocxBase.AddTableCell(tableRow); paragraph = DocxBase.AddTableCellParagraph(tableCell); string GMeanTxt = (tvItemMoreInfoMWQMSiteModel.GeoMean == null ? "" : ((float)tvItemMoreInfoMWQMSiteModel.GeoMean).ToString("F0")); if (tvItemMoreInfoMWQMSiteModel.GeoMean > 14) { int?TempFS = (int)DocxBase.CurrentFontSize; DocxBase.CurrentHighlightColorValue = HighlightColorValues.Yellow; DocxBase.CurrentFontSize = 22; run = DocxBase.AddRunWithCurrentFontStyle(paragraph, GMeanTxt); DocxBase.CurrentHighlightColorValue = HighlightColorValues.None; DocxBase.CurrentFontSize = TempFS; } else { run = DocxBase.AddRunWithCurrentParagraphStyle(paragraph, GMeanTxt); } // Doing Median tableCell = DocxBase.AddTableCell(tableRow); paragraph = DocxBase.AddTableCellParagraph(tableCell); string MedianTxt = (tvItemMoreInfoMWQMSiteModel.Median == null ? "" : ((float)tvItemMoreInfoMWQMSiteModel.Median).ToString("F0")); if (tvItemMoreInfoMWQMSiteModel.Median > 14) { int?TempFS = (int)DocxBase.CurrentFontSize; DocxBase.CurrentHighlightColorValue = HighlightColorValues.Yellow; DocxBase.CurrentFontSize = 22; run = DocxBase.AddRunWithCurrentFontStyle(paragraph, MedianTxt); DocxBase.CurrentHighlightColorValue = HighlightColorValues.None; DocxBase.CurrentFontSize = TempFS; } else { run = DocxBase.AddRunWithCurrentParagraphStyle(paragraph, MedianTxt); } // Doing P90 tableCell = DocxBase.AddTableCell(tableRow); paragraph = DocxBase.AddTableCellParagraph(tableCell); string P90Txt = (tvItemMoreInfoMWQMSiteModel.P90 == null ? "" : ((float)tvItemMoreInfoMWQMSiteModel.P90).ToString("F0")); if (tvItemMoreInfoMWQMSiteModel.P90 > 43) { int?TempFS = (int)DocxBase.CurrentFontSize; DocxBase.CurrentHighlightColorValue = HighlightColorValues.Yellow; DocxBase.CurrentFontSize = 22; run = DocxBase.AddRunWithCurrentFontStyle(paragraph, P90Txt); DocxBase.CurrentHighlightColorValue = HighlightColorValues.None; DocxBase.CurrentFontSize = TempFS; } else { run = DocxBase.AddRunWithCurrentParagraphStyle(paragraph, P90Txt); } // Doing % > 43 tableCell = DocxBase.AddTableCell(tableRow); paragraph = DocxBase.AddTableCellParagraph(tableCell); string PercOver43Txt = (tvItemMoreInfoMWQMSiteModel.PercOver43 == null ? "" : ((float)tvItemMoreInfoMWQMSiteModel.PercOver43).ToString("F0")); if (tvItemMoreInfoMWQMSiteModel.PercOver43 > 10) { int?TempFS = (int)DocxBase.CurrentFontSize; DocxBase.CurrentHighlightColorValue = HighlightColorValues.Yellow; DocxBase.CurrentFontSize = 22; run = DocxBase.AddRunWithCurrentFontStyle(paragraph, PercOver43Txt); DocxBase.CurrentHighlightColorValue = HighlightColorValues.None; DocxBase.CurrentFontSize = TempFS; } else { run = DocxBase.AddRunWithCurrentParagraphStyle(paragraph, PercOver43Txt); } } } DocxBase.CurrentParagraphStyle = ParagraphStyleEnum.Quote; paragraph = DocxBase.AddParagraph(body); string NoteTxt = DocxServiceSubsectorFCSummaryStatRes.Note + " : " + DocxServiceSubsectorFCSummaryStatRes.TheFollowingValuesHaveBeenShaded + " : " + DocxServiceSubsectorFCSummaryStatRes.GeometricMeanBigger14 + ", " + DocxServiceSubsectorFCSummaryStatRes.MedianBigger14 + ", " + DocxServiceSubsectorFCSummaryStatRes.PercBigger43More10Perc + ", " + DocxServiceSubsectorFCSummaryStatRes.Perc90Bigger43; DocxBase.AddRunWithCurrentParagraphStyle(paragraph, NoteTxt); DocxBase.AddSectionProp(body); document.Append(body); }