public ClimateSiteModel GetClimateSiteModelExistDB(ClimateSiteModel climateSiteModel) { ClimateSiteModel climateSiteModelRet = (from c in db.ClimateSites where c.ClimateSiteName == climateSiteModel.ClimateSiteName && c.Province == climateSiteModel.Province && c.ECDBID == climateSiteModel.ECDBID && c.ClimateID == climateSiteModel.ClimateID select new ClimateSiteModel { Error = "", ClimateSiteID = c.ClimateSiteID, DBCommand = (DBCommandEnum)c.DBCommand, ClimateSiteTVItemID = c.ClimateSiteTVItemID, ClimateID = c.ClimateID, ClimateSiteName = c.ClimateSiteName, DailyEndDate_Local = c.DailyEndDate_Local, DailyNow = c.DailyNow, DailyStartDate_Local = c.DailyStartDate_Local, ECDBID = c.ECDBID, Elevation_m = c.Elevation_m, File_desc = c.File_desc, HourlyEndDate_Local = c.HourlyEndDate_Local, HourlyNow = c.HourlyNow, HourlyStartDate_Local = c.HourlyStartDate_Local, IsQuebecSite = c.IsQuebecSite, IsCoCoRaHS = c.IsCoCoRaHS, MonthlyEndDate_Local = c.MonthlyEndDate_Local, MonthlyNow = c.MonthlyNow, MonthlyStartDate_Local = c.MonthlyStartDate_Local, Province = c.Province, TCID = c.TCID, TimeOffset_hour = c.TimeOffset_hour, WMOID = c.WMOID, LastUpdateDate_UTC = c.LastUpdateDate_UTC, LastUpdateContactTVItemID = c.LastUpdateContactTVItemID, }).FirstOrDefault <ClimateSiteModel>(); if (climateSiteModelRet == null) { return(ReturnError(string.Format(ServiceRes.CouldNotFind_With_Equal_, ServiceRes.ClimateSite, ServiceRes.ClimateSiteName + "," + ServiceRes.Province + "," + ServiceRes.ECDBID + "," + ServiceRes.ClimateID, climateSiteModel.ClimateSiteName + "," + climateSiteModel.Province + "," + climateSiteModel.ECDBID.ToString() + "," + climateSiteModel.ClimateID.ToString()))); } return(climateSiteModelRet); }
// Post public ClimateSiteModel PostAddClimateSiteDB(ClimateSiteModel climateSiteModel) { string retStr = ClimateSiteModelOK(climateSiteModel); if (!string.IsNullOrWhiteSpace(retStr)) { return(ReturnError(retStr)); } ContactOK contactOK = IsContactOK(); if (!string.IsNullOrEmpty(contactOK.Error)) { return(ReturnError(contactOK.Error)); } TVItemModel tvItemModelExist = _TVItemService.GetTVItemModelWithTVItemIDDB(climateSiteModel.ClimateSiteTVItemID); if (!string.IsNullOrWhiteSpace(tvItemModelExist.Error)) { return(ReturnError(tvItemModelExist.Error)); } ClimateSite climateSiteNew = new ClimateSite(); retStr = FillClimateSite(climateSiteNew, climateSiteModel, contactOK); if (!string.IsNullOrWhiteSpace(retStr)) { return(ReturnError(retStr)); } using (TransactionScope ts = new TransactionScope()) { db.ClimateSites.Add(climateSiteNew); retStr = DoAddChanges(); if (!string.IsNullOrWhiteSpace(retStr)) { return(ReturnError(retStr)); } LogModel logModel = _LogService.PostAddLogForObj("ClimateSites", climateSiteNew.ClimateSiteID, LogCommandEnum.Add, climateSiteNew); if (!string.IsNullOrWhiteSpace(logModel.Error)) { return(ReturnError(logModel.Error)); } ts.Complete(); } return(GetClimateSiteModelWithClimateSiteIDDB(climateSiteNew.ClimateSiteID)); }
// Fill public string FillClimateSite(ClimateSite climateSiteNew, ClimateSiteModel climateSiteModel, ContactOK contactOK) { climateSiteNew.DBCommand = (int)climateSiteModel.DBCommand; climateSiteNew.ClimateSiteTVItemID = climateSiteModel.ClimateSiteTVItemID; climateSiteNew.ClimateID = climateSiteModel.ClimateID; climateSiteNew.ClimateSiteName = climateSiteModel.ClimateSiteName; climateSiteNew.DailyEndDate_Local = climateSiteModel.DailyEndDate_Local; climateSiteNew.DailyNow = climateSiteModel.DailyNow; climateSiteNew.DailyStartDate_Local = climateSiteModel.DailyStartDate_Local; climateSiteNew.ECDBID = climateSiteModel.ECDBID; climateSiteNew.Elevation_m = climateSiteModel.Elevation_m; climateSiteNew.File_desc = climateSiteModel.File_desc; climateSiteNew.HourlyEndDate_Local = climateSiteModel.HourlyEndDate_Local; climateSiteNew.HourlyNow = climateSiteModel.HourlyNow; climateSiteNew.HourlyStartDate_Local = climateSiteModel.HourlyStartDate_Local; climateSiteNew.IsQuebecSite = climateSiteModel.IsQuebecSite; climateSiteNew.IsCoCoRaHS = climateSiteModel.IsCoCoRaHS; climateSiteNew.MonthlyEndDate_Local = climateSiteModel.MonthlyEndDate_Local; climateSiteNew.MonthlyNow = climateSiteModel.MonthlyNow; climateSiteNew.MonthlyStartDate_Local = climateSiteModel.MonthlyStartDate_Local; climateSiteNew.Province = climateSiteModel.Province; climateSiteNew.TCID = climateSiteModel.TCID; climateSiteNew.TimeOffset_hour = climateSiteModel.TimeOffset_hour; climateSiteNew.WMOID = climateSiteModel.WMOID; climateSiteNew.LastUpdateDate_UTC = DateTime.UtcNow; if (contactOK == null) { climateSiteNew.LastUpdateContactTVItemID = 2; } else { climateSiteNew.LastUpdateContactTVItemID = contactOK.ContactTVItemID; } return(""); }
// Check public string ClimateSiteModelOK(ClimateSiteModel climateSiteModel) { string retStr = FieldCheckNotZeroInt(climateSiteModel.ClimateSiteTVItemID, ServiceRes.ClimateSiteTVItemID); if (!string.IsNullOrWhiteSpace(retStr)) { return(retStr); } retStr = FieldCheckNotNullAndMinMaxLengthString(climateSiteModel.ClimateSiteName, ServiceRes.ClimateSiteName, 2, 100); if (!string.IsNullOrWhiteSpace(retStr)) { return(retStr); } // Commented out because the CoCoRaHS site do not have ECDBID // //retStr = FieldCheckNotZeroInt(climateSiteModel.ECDBID, ServiceRes.ECDBID); //if (!string.IsNullOrWhiteSpace(retStr)) //{ // return retStr; //} retStr = FieldCheckNotNullAndMinMaxLengthString(climateSiteModel.Province, ServiceRes.Province, 2, 4); if (!string.IsNullOrWhiteSpace(retStr)) { return(retStr); } List <string> ProvinceList = new List <string>() { "BC", "NB", "NL", "NS", "PE", "QC", "WA", "ME" }; string ProvinceListTxt = ""; foreach (string s in ProvinceList) { ProvinceListTxt += "," + s; } ProvinceListTxt = ProvinceListTxt.Substring(1); if (!ProvinceList.Contains(climateSiteModel.Province)) { return(string.Format(ServiceRes.ProvinceNotCorrectNeedToBeOneOf_Its_, ProvinceListTxt.ToString(), climateSiteModel.Province)); } retStr = FieldCheckIfNotNullWithinRangeDouble(climateSiteModel.Elevation_m, ServiceRes.Elevation_m, 0, 10000); if (!string.IsNullOrWhiteSpace(retStr)) { return(retStr); } retStr = FieldCheckIfNotNullMaxLengthString(climateSiteModel.ClimateID, ServiceRes.ClimateID, 10); if (!string.IsNullOrWhiteSpace(retStr)) { return(retStr); } retStr = FieldCheckIfNotNullWithinRangeInt(climateSiteModel.WMOID, ServiceRes.WMOID, 10000, 99999); if (!string.IsNullOrWhiteSpace(retStr)) { return(retStr); } retStr = FieldCheckIfNotNullMaxLengthString(climateSiteModel.TCID, ServiceRes.TCID, 3); if (!string.IsNullOrWhiteSpace(retStr)) { return(retStr); } retStr = FieldCheckIfNotNullWithinRangeDouble(climateSiteModel.TimeOffset_hour, ServiceRes.TimeOffset_hour, -8, -3); if (!string.IsNullOrWhiteSpace(retStr)) { return(retStr); } retStr = FieldCheckIfNotNullMaxLengthString(climateSiteModel.File_desc, ServiceRes.File_desc, 50); if (!string.IsNullOrWhiteSpace(retStr)) { return(retStr); } if (climateSiteModel.HourlyStartDate_Local != null && climateSiteModel.HourlyEndDate_Local != null) { if (climateSiteModel.HourlyEndDate_Local < climateSiteModel.HourlyStartDate_Local) { return(string.Format(ServiceRes._IsBiggerOrEqualTo_, ServiceRes.HourlyStartDate_Local, ServiceRes.HourlyEndDate_Local)); } } if (climateSiteModel.DailyStartDate_Local != null && climateSiteModel.DailyEndDate_Local != null) { if (climateSiteModel.DailyEndDate_Local < climateSiteModel.DailyStartDate_Local) { return(string.Format(ServiceRes._IsBiggerOrEqualTo_, ServiceRes.DailyStartDate_Local, ServiceRes.DailyEndDate_Local)); } } if (climateSiteModel.MonthlyStartDate_Local != null && climateSiteModel.MonthlyEndDate_Local != null) { if (climateSiteModel.MonthlyEndDate_Local < climateSiteModel.MonthlyStartDate_Local) { return(string.Format(ServiceRes._IsBiggerOrEqualTo_, ServiceRes.MonthlyStartDate_Local, ServiceRes.MonthlyEndDate_Local)); } } retStr = _BaseEnumService.DBCommandOK(climateSiteModel.DBCommand); if (!string.IsNullOrWhiteSpace(retStr)) { return(retStr); } return(""); }
public ClimateSiteModel PostUpdateClimateSiteDB(ClimateSiteModel climateSiteModel) { string retStr = ClimateSiteModelOK(climateSiteModel); if (!string.IsNullOrEmpty(retStr)) { return(ReturnError(retStr)); } ContactOK contactOK = IsContactOK(); if (!string.IsNullOrEmpty(contactOK.Error)) { return(ReturnError(contactOK.Error)); } ClimateSite climateSiteToUpdate = GetClimateSiteWithClimateSiteIDDB(climateSiteModel.ClimateSiteID); if (climateSiteToUpdate == null) { return(ReturnError(string.Format(ServiceRes.CouldNotFind_ToUpdate, ServiceRes.ClimateSite))); } retStr = FillClimateSite(climateSiteToUpdate, climateSiteModel, contactOK); if (!string.IsNullOrWhiteSpace(retStr)) { return(ReturnError(retStr)); } using (TransactionScope ts = new TransactionScope()) { retStr = DoUpdateChanges(); if (!string.IsNullOrWhiteSpace(retStr)) { return(ReturnError(retStr)); } LogModel logModel = _LogService.PostAddLogForObj("ClimateSites", climateSiteToUpdate.ClimateSiteID, LogCommandEnum.Change, climateSiteToUpdate); if (!string.IsNullOrWhiteSpace(logModel.Error)) { return(ReturnError(logModel.Error)); } foreach (LanguageEnum Lang in LanguageListAllowable) { if (Lang == LanguageRequest) { TVItemLanguageModel tvItemLanguageModelToUpdate = _TVItemService._TVItemLanguageService.GetTVItemLanguageModelWithTVItemIDAndLanguageDB(climateSiteToUpdate.ClimateSiteTVItemID, Lang); if (!string.IsNullOrWhiteSpace(tvItemLanguageModelToUpdate.Error)) { return(ReturnError(tvItemLanguageModelToUpdate.Error)); } tvItemLanguageModelToUpdate.TVText = CreateTVText(climateSiteModel); if (string.IsNullOrWhiteSpace(tvItemLanguageModelToUpdate.TVText)) { return(ReturnError(string.Format(ServiceRes._IsRequired, ServiceRes.TVText))); } TVItemLanguageModel tvItemLanguageModel = _TVItemService._TVItemLanguageService.PostUpdateTVItemLanguageDB(tvItemLanguageModelToUpdate); if (!string.IsNullOrWhiteSpace(tvItemLanguageModel.Error)) { return(ReturnError(tvItemLanguageModel.Error)); } } } ts.Complete(); } return(GetClimateSiteModelWithClimateSiteIDDB(climateSiteToUpdate.ClimateSiteID)); }
// Helper public string CreateTVText(ClimateSiteModel climateSiteModel) { string retStr = climateSiteModel.ClimateSiteName + (climateSiteModel.ClimateID == null ? "" : ("(" + climateSiteModel.ClimateID + ")")); return(retStr); }
private bool GenerateHTMLSUBSECTOR_MWQM_SITES_SALINITY_TABLE(StringBuilder sbTemp) { List <string> Letters = new List <string>() { "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t" }; List <int> ClimateSiteUsedList = new List <int>(); int Percent = 10; string NotUsed = ""; _TaskRunnerBaseService.SendPercentToDB(_TaskRunnerBaseService._BWObj.appTaskModel.AppTaskID, Percent); _TaskRunnerBaseService.SendStatusTextToDB(_TaskRunnerBaseService.GetTextLanguageFormat1List("Creating_", ReportGenerateObjectsKeywordEnum.SUBSECTOR_MWQM_SITES_SALINITY_TABLE.ToString())); List <string> ParamValueList = Parameters.Split("|||".ToCharArray(), StringSplitOptions.RemoveEmptyEntries).ToList(); // TVItemID and Year already loaded TVItemModel tvItemModelSubsector = _TVItemService.GetTVItemModelWithTVItemIDDB(TVItemID); if (!string.IsNullOrWhiteSpace(tvItemModelSubsector.Error)) { NotUsed = string.Format(TaskRunnerServiceRes.CouldNotFind_With_Equal_, TaskRunnerServiceRes.TVItem, TaskRunnerServiceRes.TVItemID, TVItemID.ToString()); _TaskRunnerBaseService._BWObj.TextLanguageList = _TaskRunnerBaseService.GetTextLanguageFormat3List("CouldNotFind_With_Equal_", TaskRunnerServiceRes.TVItem, TaskRunnerServiceRes.TVItemID, TVItemID.ToString()); return(false); } string ServerPath = _TVFileService.GetServerFilePath(tvItemModelSubsector.TVItemID); List <TVItemModel> tvItemModelListMWQMSites = _TVItemService.GetChildrenTVItemModelListWithTVItemIDAndTVTypeDB(tvItemModelSubsector.TVItemID, TVTypeEnum.MWQMSite).Where(c => c.IsActive == true).ToList(); List <MWQMSiteModel> mwqmSiteModelList = _MWQMSiteService.GetMWQMSiteModelListWithSubsectorTVItemIDDB(TVItemID); List <MWQMRunModel> mwqmRunModelList = _MWQMRunService.GetMWQMRunModelListWithSubsectorTVItemIDDB(TVItemID); List <MWQMSampleModel> mwqmSampleModelList = _MWQMSampleService.GetMWQMSampleModelListWithSubsectorTVItemIDDB(TVItemID); List <UseOfSiteModel> useOfSiteModelList = _UseOfSiteService.GetUseOfSiteModelListWithSubsectorTVItemIDDB(TVItemID).Where(c => c.TVType == TVTypeEnum.ClimateSite).OrderBy(c => c.Ordinal).ToList(); List <ClimateSiteModel> climateSiteModelList = new List <ClimateSiteModel>(); List <ClimateDataValueModel> climateDataValueModelList = new List <ClimateDataValueModel>(); foreach (UseOfSiteModel useOfSiteModel in useOfSiteModelList) { ClimateSiteModel climateSiteModel = _ClimateSiteService.GetClimateSiteModelWithClimateSiteTVItemIDDB(useOfSiteModel.SiteTVItemID); if (climateSiteModel != null) { climateSiteModelList.Add(climateSiteModel); List <ClimateDataValueModel> climateDataValueModelOneSiteList = _ClimateDataValueService.GetClimateDataValueModelWithClimateSiteIDDB(climateSiteModel.ClimateSiteID); climateDataValueModelList = climateDataValueModelList.Concat(climateDataValueModelOneSiteList).ToList(); } } //climateSiteModelList = climateSiteModelList.OrderBy(c => c.ClimateSiteName).ToList(); List <MWQMSiteModel> mwqmSiteModelList2 = (from s in mwqmSiteModelList from t in tvItemModelListMWQMSites where s.MWQMSiteTVItemID == t.TVItemID && t.IsActive == true orderby s.MWQMSiteTVText select s).ToList(); int skip = 0; int take = 15; bool HasData = true; //int countRun = 0; int TableCount = 0; while (HasData) { Percent += 10; if (Percent > 100) { Percent = 100; } _TaskRunnerBaseService.SendPercentToDB(_TaskRunnerBaseService._BWObj.appTaskModel.AppTaskID, Percent); //countRun += 1; //if (countRun > 2) //{ // break; //} List <MWQMRunModel> mwqmRunModelList2 = (from r in mwqmRunModelList from s in mwqmSiteModelList2 from sa in mwqmSampleModelList where sa.MWQMRunTVItemID == r.MWQMRunTVItemID && sa.MWQMSiteTVItemID == s.MWQMSiteTVItemID && r.RunSampleType == SampleTypeEnum.Routine && r.DateTime_Local.Year <= Year orderby r.DateTime_Local descending select r).Distinct().Skip(skip).Take(take).ToList(); bool HasGreen = false; foreach (MWQMRunModel mwqmRunModel in mwqmRunModelList2) { if (RunSiteInfoList.Where(c => c.RunTVItemID == mwqmRunModel.MWQMRunTVItemID).Any()) { HasGreen = true; } } if (mwqmRunModelList2.Count > 0 && HasGreen) { TableCount += 1; bool hasNoData = false; bool hasNotUsed = false; sbTemp.AppendLine($@"|||TableCaption| { TaskRunnerServiceRes.Salinity } #{TableCount}|||"); sbTemp.AppendLine($@" <table class=""FCSalTempDataTableClass"">"); sbTemp.AppendLine($@" <tr>"); sbTemp.AppendLine($@" <th class=""rightBottomBorder"">{ TaskRunnerServiceRes.Site }</th>"); foreach (MWQMRunModel mwqmRunModel in mwqmRunModelList2) { bool runUsed = RunSiteInfoList.Where(c => c.RunTVItemID == mwqmRunModel.MWQMRunTVItemID).Any() ? true : false; if (runUsed) { // sbTemp.AppendLine($@" <th class=""bottomBorderGreentext"">{ mwqmRunModel.DateTime_Local.ToString("yyyy") }<br />{ mwqmRunModel.DateTime_Local.ToString("MMM") }<br />{ mwqmRunModel.DateTime_Local.ToString("dd") }</th>"); //} //else //{ sbTemp.AppendLine($@" <th class=""bottomBorder"">{ mwqmRunModel.DateTime_Local.ToString("yyyy") }<br />{ mwqmRunModel.DateTime_Local.ToString("MMM") }<br />{ mwqmRunModel.DateTime_Local.ToString("dd") }</th>"); } } sbTemp.AppendLine($@" </tr>"); foreach (MWQMSiteModel mwqmSiteModel in mwqmSiteModelList2) { string siteNameWithoutZeros = mwqmSiteModel.MWQMSiteTVText.Trim(); while (true) { if (siteNameWithoutZeros.StartsWith("0")) { siteNameWithoutZeros = siteNameWithoutZeros.Substring(1); } else { break; } } sbTemp.AppendLine($@" <tr>"); sbTemp.AppendLine($@" <td class=""rightBorder"">{ siteNameWithoutZeros }</td>"); foreach (MWQMRunModel mwqmRunModel in mwqmRunModelList2) { bool runUsed = RunSiteInfoList.Where(c => c.RunTVItemID == mwqmRunModel.MWQMRunTVItemID).Any() ? true : false; bool siteUsed = RunSiteInfoList.Where(c => c.RunTVItemID == mwqmRunModel.MWQMRunTVItemID && c.SiteTVItemID == mwqmSiteModel.MWQMSiteTVItemID).Any() ? true : false; float?value = (float?)(from s in mwqmSampleModelList where s.MWQMRunTVItemID == mwqmRunModel.MWQMRunTVItemID && s.MWQMSiteTVItemID == mwqmSiteModel.MWQMSiteTVItemID select s.Salinity_PPT).FirstOrDefault(); string valueStr = value != null ? (((float)value).ToString("F1")) : "--"; //if (showTextGreen) //{ // sbTemp.AppendLine($@" <td class=""textGreen"">{ valueStr }</td>"); //} //else //{ // sbTemp.AppendLine($@" <td>{ valueStr }</td>"); //} if (runUsed) { if (siteUsed) { sbTemp.AppendLine($@" <td>{ valueStr }</td>"); if (valueStr == "--") { hasNoData = true; } } else { if (valueStr == "--") { sbTemp.AppendLine($@" <td>{ valueStr }</td>"); hasNoData = true; } else { sbTemp.AppendLine($@" <td>NU</td>"); hasNotUsed = true; } } } } sbTemp.AppendLine($@" </tr>"); } sbTemp.AppendLine($@" <tr>"); sbTemp.AppendLine($@" <td class=""topRightBorder"">{ TaskRunnerServiceRes.StartTide }<br />{ TaskRunnerServiceRes.EndTide }</td>"); foreach (MWQMRunModel mwqmRunModel in mwqmRunModelList2) { bool runUsed = RunSiteInfoList.Where(c => c.RunTVItemID == mwqmRunModel.MWQMRunTVItemID).Any() ? true : false; if (runUsed) { string StartTide = GetTideInitial(mwqmRunModel.Tide_Start); string EndTide = GetTideInitial(mwqmRunModel.Tide_End); sbTemp.AppendLine($@" <td class=""topRightBorder"">{ StartTide }<br />{ EndTide }</td>"); } } sbTemp.AppendLine($@" </tr>"); sbTemp.AppendLine($@" <tr>"); sbTemp.AppendLine($@" <td class=""topRightBorder"">{ TaskRunnerServiceRes.Rain }(mm)<br />{ TaskRunnerServiceRes.Minus1Day }<br />{ TaskRunnerServiceRes.Minus2Day }<br />{ TaskRunnerServiceRes.Minus3Day }<br />{ TaskRunnerServiceRes.Minus4Day }<br />{ TaskRunnerServiceRes.Minus5Day }</td>"); foreach (MWQMRunModel mwqmRunModel in mwqmRunModelList2) { bool runUsed = RunSiteInfoList.Where(c => c.RunTVItemID == mwqmRunModel.MWQMRunTVItemID).Any() ? true : false; if (runUsed) { string sup1 = ""; string sup2 = ""; string sup3 = ""; string sup4 = ""; string sup5 = ""; DateTime Date1 = mwqmRunModel.DateTime_Local.AddDays(-1); DateTime Date2 = mwqmRunModel.DateTime_Local.AddDays(-2); DateTime Date3 = mwqmRunModel.DateTime_Local.AddDays(-3); DateTime Date4 = mwqmRunModel.DateTime_Local.AddDays(-4); DateTime Date5 = mwqmRunModel.DateTime_Local.AddDays(-5); // RainDay1 for (int i = 0, count = climateSiteModelList.Count; i < count; i++) { if ((from c in climateDataValueModelList where c.DateTime_Local.Year == Date1.Year && c.DateTime_Local.Month == Date1.Month && c.DateTime_Local.Day == Date1.Day && c.TotalPrecip_mm_cm != null && mwqmRunModel.RainDay1_mm != null && c.TotalPrecip_mm_cm == mwqmRunModel.RainDay1_mm && c.ClimateSiteID == climateSiteModelList[i].ClimateSiteID select c).Any()) { sup1 = Letters[i]; if (!ClimateSiteUsedList.Contains(i)) { ClimateSiteUsedList.Add(i); } break; } } // RainDay2 for (int i = 0, count = climateSiteModelList.Count; i < count; i++) { if ((from c in climateDataValueModelList where c.DateTime_Local.Year == Date2.Year && c.DateTime_Local.Month == Date2.Month && c.DateTime_Local.Day == Date2.Day && c.TotalPrecip_mm_cm != null && mwqmRunModel.RainDay2_mm != null && c.TotalPrecip_mm_cm == mwqmRunModel.RainDay2_mm && c.ClimateSiteID == climateSiteModelList[i].ClimateSiteID select c).Any()) { sup2 = Letters[i]; if (!ClimateSiteUsedList.Contains(i)) { ClimateSiteUsedList.Add(i); } break; } } // RainDay3 for (int i = 0, count = climateSiteModelList.Count; i < count; i++) { if ((from c in climateDataValueModelList where c.DateTime_Local.Year == Date3.Year && c.DateTime_Local.Month == Date3.Month && c.DateTime_Local.Day == Date3.Day && c.TotalPrecip_mm_cm != null && mwqmRunModel.RainDay3_mm != null && c.TotalPrecip_mm_cm == mwqmRunModel.RainDay3_mm && c.ClimateSiteID == climateSiteModelList[i].ClimateSiteID select c).Any()) { sup3 = Letters[i]; if (!ClimateSiteUsedList.Contains(i)) { ClimateSiteUsedList.Add(i); } break; } } // RainDay4 for (int i = 0, count = climateSiteModelList.Count; i < count; i++) { if ((from c in climateDataValueModelList where c.DateTime_Local.Year == Date4.Year && c.DateTime_Local.Month == Date4.Month && c.DateTime_Local.Day == Date4.Day && c.TotalPrecip_mm_cm != null && mwqmRunModel.RainDay4_mm != null && c.TotalPrecip_mm_cm == mwqmRunModel.RainDay4_mm && c.ClimateSiteID == climateSiteModelList[i].ClimateSiteID select c).Any()) { sup4 = Letters[i]; if (!ClimateSiteUsedList.Contains(i)) { ClimateSiteUsedList.Add(i); } break; } } // RainDay5 for (int i = 0, count = climateSiteModelList.Count; i < count; i++) { if ((from c in climateDataValueModelList where c.DateTime_Local.Year == Date5.Year && c.DateTime_Local.Month == Date5.Month && c.DateTime_Local.Day == Date5.Day && c.TotalPrecip_mm_cm != null && mwqmRunModel.RainDay5_mm != null && c.TotalPrecip_mm_cm == mwqmRunModel.RainDay5_mm && c.ClimateSiteID == climateSiteModelList[i].ClimateSiteID select c).Any()) { sup5 = Letters[i]; if (!ClimateSiteUsedList.Contains(i)) { ClimateSiteUsedList.Add(i); } break; } } string RainDay1 = mwqmRunModel.RainDay1_mm != null ? ((double)mwqmRunModel.RainDay1_mm).ToString("F0") : "--"; string RainDay2 = mwqmRunModel.RainDay2_mm != null ? ((double)mwqmRunModel.RainDay2_mm).ToString("F0") : "--"; string RainDay3 = mwqmRunModel.RainDay3_mm != null ? ((double)mwqmRunModel.RainDay3_mm).ToString("F0") : "--"; string RainDay4 = mwqmRunModel.RainDay4_mm != null ? ((double)mwqmRunModel.RainDay4_mm).ToString("F0") : "--"; string RainDay5 = mwqmRunModel.RainDay5_mm != null ? ((double)mwqmRunModel.RainDay5_mm).ToString("F0") : "--"; sbTemp.AppendLine($@" <td class=""topRightBorder""> <br />{ RainDay1 }<sup>{ sup1 }</sup><br />{ RainDay2 }<sup>{ sup2 }</sup><br />{ RainDay3 }<sup>{ sup3 }</sup><br />{ RainDay4 }<sup>{ sup4 }</sup><br />{ RainDay5 }<sup>{ sup5 }</sup></td>"); } } sbTemp.AppendLine($@" </tr>"); sbTemp.AppendLine($@" </table>"); //sbTemp.AppendLine($@" <p><span class=""textGreen"">({ TaskRunnerServiceRes.DataUsedForStatistics })</span>"); sbTemp.AppendLine($@" <p><span>"); if (hasNoData) { sbTemp.AppendLine($@" -- ({TaskRunnerServiceRes.NoData})</span>"); } if (hasNotUsed) { sbTemp.AppendLine($@" NU ({TaskRunnerServiceRes.NotUsed})"); } sbTemp.AppendLine($@" </span>"); sbTemp.AppendLine($@" <span> { TaskRunnerServiceRes.ClimateSite }</span>: "); foreach (int i in ClimateSiteUsedList) { sbTemp.Append($@" <span>{ Letters[i] } - { climateSiteModelList[i].ClimateSiteName }<span> "); } sbTemp.AppendLine($@" </p>"); sbTemp.AppendLine(@"<p>|||PAGE_BREAK|||</p>"); skip += take; } else { HasData = false; } } _TaskRunnerBaseService.SendPercentToDB(_TaskRunnerBaseService._BWObj.appTaskModel.AppTaskID, 80); return(true); }