/// <summary> /// Save transfers data /// </summary> public void DoSaveCSV(object sender, EventArgs e) { CultureInfo csvCulture = CultureResolver.ResolveCsvCulture(Request); CSVFormatter csvformat = new CSVFormatter(csvCulture); bool ConfidentialityAffected = WasteTransfers.IsAffectedByConfidentiality(SearchFilter); // Create Header Dictionary <string, string> header = CsvHeaderBuilder.GetWasteTransfersSearchHeader( SearchFilter, ConfidentialityAffected); IEnumerable <WasteTransfers.TransboundaryHazardousWasteData> wastedata = WasteTransfers.GetTransboundaryHazardousWasteData( SearchFilter, ConfidentialityAffected); Response.WriteUtf8FileHeader("EPRTR_Waste_Transfers_Transboundary_Hazardous"); // dump to file string topheader = csvformat.CreateHeader(header); string wasteHeader = csvformat.GetWasteHeader(); Response.Write(topheader + wasteHeader); foreach (var v in wastedata) { string row = csvformat.GetWasteRow(v); Response.Write(row); } Response.End(); }
private void toggleExpanded(int rowindex) { List <WasteTransfers.AreaTreeListRow> data = ViewState[RESULT] as List <WasteTransfers.AreaTreeListRow>; WasteTransfers.AreaTreeListRow row = data[rowindex]; //toggle expansion row.IsExpanded = !row.IsExpanded; //get data from database, if not already loaded if (row.HasChildren && row.IsExpanded && !data.Any(r => r.Level == row.Level + 1 && r.ParentCode == row.Code)) { if (row.Level == 0) { var subareas = WasteTransfers.GetSubAreas(SearchFilter, new List <string> { row.CountryCode }); addToResult(subareas); } } this.lvWasteTransferArea.DataSource = data; this.lvWasteTransferArea.DataBind(); // notify that content has changed (print) if (ContentChanged != null) { ContentChanged.Invoke(null, EventArgs.Empty); } }
public double WasteTransfersTestA() { DateTime testStartTime; DateTime testEndTime; TimeSpan testDelta; WasteTransferSearchFilter filter = new WasteTransferSearchFilter(); filter.AreaFilter = new AreaFilter(); filter.AreaFilter.AreaGroupID = 1; filter.AreaFilter.CountryID = -1; filter.AreaFilter.RegionID = -1; filter.MapFilter = new MapFilter(); filter.MapFilter.SqlWhere = "((((ReportingYear) = 2007) And ((((((((((((((((((((((((((((((((LOV_CountryID) = 15) Or ((LOV_CountryID) = 22)) Or ((LOV_CountryID) = 34)) Or ((LOV_CountryID) = 57)) Or ((LOV_CountryID) = 58)) Or ((LOV_CountryID) = 59)) Or ((LOV_CountryID) = 68)) Or ((LOV_CountryID) = 73)) Or ((LOV_CountryID) = 74)) Or ((LOV_CountryID) = 81)) Or ((LOV_CountryID) = 85)) Or ((LOV_CountryID) = 100)) Or ((LOV_CountryID) = 101)) Or ((LOV_CountryID) = 106)) Or ((LOV_CountryID) = 109)) Or ((LOV_CountryID) = 122)) Or ((LOV_CountryID) = 127)) Or ((LOV_CountryID) = 128)) Or ((LOV_CountryID) = 129)) Or ((LOV_CountryID) = 137)) Or ((LOV_CountryID) = 156)) Or ((LOV_CountryID) = 166)) Or ((LOV_CountryID) = 177)) Or ((LOV_CountryID) = 178)) Or ((LOV_CountryID) = 182)) Or ((LOV_CountryID) = 201)) Or ((LOV_CountryID) = 202)) Or ((LOV_CountryID) = 207)) Or ((LOV_CountryID) = 213)) Or ((LOV_CountryID) = 214)) Or ((LOV_CountryID) = 234))) And (((QuantityTotalNONHW IS NOT NULL) Or (QuantityTotalHWIC IS NOT NULL)) Or (QuantityTotalHWOC IS NOT NULL)))"; filter.WasteTypeFilter = new WasteTypeFilter(); filter.WasteTypeFilter.HazardousWasteCountry = true; filter.WasteTypeFilter.HazardousWasteTransboundary = true; filter.WasteTypeFilter.NonHazardousWaste = true; filter.YearFilter = new YearFilter(); filter.YearFilter.Year = 2007; testStartTime = DateTime.Now; IEnumerable <Summary.WasteTransfersRow> actual = WasteTransfers.GetWasteTransfers(filter); testEndTime = DateTime.Now; testDelta = testEndTime - testStartTime; return(testDelta.TotalSeconds); }
/// <summary> /// Search, fill data into summery /// </summary> public void Populate(WasteTransferSearchFilter filter, string countryCode) { WasteTransferSearchFilter = filter; CountryCode = countryCode; ConfidentialityAffected = WasteTransfers.IsHazardousWasteAffectedByConfidentiality(filter, CountryCode); //Only determine once and store in viewstate showContent(Sheets.WasteReceiverDetails.Treaters.ToString()); }
private WasteTransfers.FacilityCountObject getFacilityCounts(WasteTransferSearchFilter filter) { if (FacilityCounts == null) { FacilityCounts = WasteTransfers.GetFacilityCounts(filter); } return(FacilityCounts); }
// ---------------------------------------------------------------------------------- // WasteTransfers // ---------------------------------------------------------------------------------- #region WasteTransfers /// <summary> /// get waste transfers /// </summary> public static IEnumerable <Summary.WasteSummaryTreeListRow> GetWasteTransfers(IndustrialActivitySearchFilter filter) { // Result is the same as for wastetransfer, without the filtering on wastetype WasteTransferSearchFilter filterWaste = FilterConverter.ConvertToWasteTransferSearchFilter(filter); IEnumerable <Summary.WasteSummaryTreeListRow> wastes = WasteTransfers.GetWasteTransfers(filterWaste); filter.Count = filterWaste.Count; return(wastes); }
/// <summary> /// Update flash graph /// </summary> /// <param name="filter"></param> /// <param name="value">Chart data</param> /// <param name="chartLabel">Passed to flash charts.</param> private void updateGraph(WasteTransferSearchFilter filter, WasteTypeFilter.Type wasteType) { List <WasteTransfers.AreaComparison> result = null; string chartLabel = String.Empty; if (wasteType.Equals(WasteTypeFilter.Type.NonHazardous)) // Non Hazardous waste { if (ViewState[DATA_NONHW] != null) { result = ViewState[DATA_NONHW] as List <WasteTransfers.AreaComparison>; } else { result = WasteTransfers.GetAreaComparison(filter, WasteTypeFilter.Type.NonHazardous); translateArea(filter.AreaFilter, result); ViewState[DATA_NONHW] = result; } chartLabel = Resources.GetGlobal("Common", "NoHazardouswaste"); } else if (wasteType.Equals(WasteTypeFilter.Type.HazardousCountry)) // hazardous within country (Hazardous waste, domestic) { if (ViewState[DATA_HWIC] != null) { result = ViewState[DATA_HWIC] as List <WasteTransfers.AreaComparison>; } else { result = WasteTransfers.GetAreaComparison(filter, WasteTypeFilter.Type.HazardousCountry); translateArea(filter.AreaFilter, result); ViewState[DATA_HWIC] = result; } chartLabel = Resources.GetGlobal("Common", "HazardouswasteWithinCountry"); } else if (wasteType.Equals(WasteTypeFilter.Type.HazardousTransboundary)) // Hazardous waste, transboundary { if (ViewState[DATA_HWOC] != null) { result = ViewState[DATA_HWOC] as List <WasteTransfers.AreaComparison>; } else { result = WasteTransfers.GetAreaComparison(filter, WasteTypeFilter.Type.HazardousTransboundary); translateArea(filter.AreaFilter, result); ViewState[DATA_HWOC] = result; } chartLabel = Resources.GetGlobal("Common", "HazardouswasteTransboundary"); } //add flash AddFlashCharts(result, chartLabel); }
/// <summary> /// Search, fill data into summery /// </summary> public void Populate(WasteTransferSearchFilter filter) { SearchFilter = filter; ConfidentialityAffected = WasteTransfers.IsAffectedByConfidentiality(filter); //Only determine once and store in viewstate //default show summary showContent(Sheets.WasteTransfers.Summary.ToString()); // remove these sheet links if Hazardous Transboundary waste is NOT selected by the user bool linkVisibility = filter.WasteTypeFilter.HazardousWasteTransboundary; this.ucSheetLinks.ToggleLink(Sheets.WasteTransfers.HazReceivers.ToString(), linkVisibility); this.ucSheetLinks.ToggleLink(Sheets.WasteTransfers.HazTransboundary.ToString(), linkVisibility); }
public void DoSaveCSV(object sender, EventArgs e) { try { CultureInfo csvCulture = CultureResolver.ResolveCsvCulture(Request); CSVFormatter csvformat = new CSVFormatter(csvCulture); // Create Header var filter = SearchFilter; bool isConfidentialityAffected = WasteTransfers.IsAffectedByConfidentiality(filter); var tempFilter = filter.Clone() as WasteTransferSearchFilter; tempFilter.WasteTypeFilter = new WasteTypeFilter(SelectedWasteType); Dictionary <string, string> header = EPRTR.HeaderBuilders.CsvHeaderBuilder.GetWasteTransfersSearchHeader( tempFilter, isConfidentialityAffected); // Create Body var facilities = WasteTransfers.GetFacilityListCSV(tempFilter); // dump to file string topheader = csvformat.CreateHeader(header); string facilityHeader = csvformat.GetWasteTransfersFacilityHeader(); string url = Request.Url.AbsoluteUri; url = url.Substring(0, url.LastIndexOf("/") + 1); Response.WriteUtf8FileHeader("EPRTR_Waste_Transfers_Facility_List"); Response.Write(topheader + facilityHeader); foreach (var item in facilities) { item.Url = String.Format("{0}/PopupFacilityDetails.aspx?FacilityReportId={1}", url, item.FacilityReportId); string row = csvformat.GetWasteTransfersFacilityRow(item); Response.Write(row); } Response.End(); } catch { } }
public void Populate(WasteTransferSearchFilter filter) { SearchFilter = filter; List <WasteTransfers.TransboundaryHazardousWasteData> data = WasteTransfers.GetTransboundaryHazardousWasteData(filter, true).ToList(); if (data.Count() != 0) { //add flex control string swfFile = EPRTR.Charts.ChartsUtils.WasteTransferBubbleChart; EPRTR.Charts.ChartsUtils.ChartClientScript(swfFile, data, this.wasteTransferTransboundHazardousPanel, this.UniqueID.ToString()); } else { this.NoDataReturned.Visible = true; } }
// --------------------------------------------------------------------------------------------------- // Count method // --------------------------------------------------------------------------------------------------- #region count /// <summary> /// Returns the number of facilities corresponding to the filter, per waste type /// Overloaded with TimeSeries filter for ease of use. /// </summary> public static QueryLayer.WasteTransfers.FacilityCountObject GetCountFacilities(WasteTransferTimeSeriesFilter tsFilter) { // conversion removes all year span information var filter = FilterConverter.ConvertToWasteTransferSearchFilter(tsFilter); ParameterExpression param = Expression.Parameter(typeof(WASTETRANSFER_TREATMENT), "s"); Expression exp = LinqExpressionBuilder.GetLinqExpressionWasteTransferSearch(filter, param, true); // Exclude EPER reporting years Expression prop = Expression.Property(param, "ReportingYear"); Expression val = Expression.Constant(2007); Expression yearExp = Expression.GreaterThanOrEqual(prop, val); exp = Expression.AndAlso(yearExp, exp); Expression <Func <WASTETRANSFER_TREATMENT, bool> > lambda = Expression.Lambda <Func <WASTETRANSFER_TREATMENT, bool> >(exp, param); return(WasteTransfers.GetFacilityCounts(lambda)); }
/// <summary> /// Fill tables with data /// </summary> public void Populate(WasteTransferSearchFilter filter, bool hasConfidentialInformation) { SearchFilter = filter; if (hasConfidentialInformation) { this.litConfidentialityExplanation1.Text = CMSTextCache.CMSText("Common", "ConfidentialityExplanationWT1"); this.litConfidentialityExplanation2.Text = CMSTextCache.CMSText("Common", "ConfidentialityExplanationWT2"); this.lvWasteConfidentialityFacilities.DataSource = WasteTransfers.GetCountConfidentialFacilities(filter);; this.lvWasteConfidentialityFacilities.DataBind(); this.lvWasteConfidentialityReason.DataSource = WasteTransfers.GetWasteConfidentialReason(filter).OrderBy(w => w.WasteTypeCode, new WasteTypeComparer()).ThenBy(w => w.ReasonCode); this.lvWasteConfidentialityReason.DataBind(); } divConfidentialityInformation.Visible = hasConfidentialInformation; divNoConfidentialityInformation.Visible = !hasConfidentialInformation; }
public static void ShowWastePieCharts(IEnumerable <Summary.WasteSummaryTreeListRow> data, Panel chartPanel, string uniqueId) { List <Summary.WastePieChart> nonhazardous = WasteTransfers.GetPieChartNonHazardous(data); List <Summary.WastePieChart> hazardous = WasteTransfers.GetPieChartHazardous(data); // update chart if data is present bool hasCount = nonhazardous.Count != 0 || hazardous.Count != 0; bool hasValues = hazardous.Sum(x => x.Percent) > 0.0 || nonhazardous.Sum(x => x.Percent) > 0.0; if (hasCount && hasValues) { // translate data for first (left) piechart foreach (var v in nonhazardous) { v.Id = v.Text; v.Text = Resources.GetGlobal("WasteTransfers", v.Text); } // translate data for second (right) piechart foreach (var v in hazardous) { v.Id = v.Text; v.Text = Resources.GetGlobal("WasteTransfers", v.Text); } string sNoHazardouswaste = Resources.GetGlobal("Common", "NoHazardouswaste"); string sHazardousWwaste = Resources.GetGlobal("Common", "HazardousWwaste"); string[] labels = { sNoHazardouswaste, sHazardousWwaste }; // add piechart if we have any data chartPanel.Visible = true; string swfFile = EPRTR.Charts.ChartsUtils.IndustrialActivityPieChart; EPRTR.Charts.ChartsUtils.ChartClientScript(swfFile, nonhazardous, hazardous, chartPanel, uniqueId, labels); } else { chartPanel.Visible = false; } }
public void Populate(WasteTransferSearchFilter filter, bool hasConfidentialInformation, string countryCode) { if (hasConfidentialInformation) { this.litConfidentialityExplanation1.Text = CMSTextCache.CMSText("Common", "ConfidentialityExplanationWTRecievers1"); this.litConfidentialityExplanation2.Text = CMSTextCache.CMSText("Common", "ConfidentialityExplanationWTRecievers2"); // Bind reporting data (first translate) List <WasteTransfers.HazardousWasteConfidential> dataReporting = WasteTransfers.GetHazardousWasteConfidentialReporting(filter, countryCode); this.lvWasteTransHazReceiversReporting.DataSource = dataReporting; this.lvWasteTransHazReceiversReporting.DataBind(); // Bind reason data this.lvWasteTransHazReceiversReason.DataSource = WasteTransfers.GetHazardousWasteConfidentialReason(filter, countryCode); this.lvWasteTransHazReceiversReason.DataBind(); } divConfidentialityInformation.Visible = hasConfidentialInformation; divNoConfidentialityInformation.Visible = !hasConfidentialInformation; }
/// <summary> /// Waste confidential facilities wrapper /// </summary> public static List <WasteTransfers.FacilityCountObject> GetWasteConfidentialFacilities(IndustrialActivitySearchFilter filter) { WasteTransferSearchFilter filterWaste = FilterConverter.ConvertToWasteTransferSearchFilter(filter); return(WasteTransfers.GetCountConfidentialFacilities(filterWaste)); }
/// <summary> /// Save transfers data /// </summary> public void DoSaveCSV(object sender, EventArgs e) { CultureInfo csvCulture = CultureResolver.ResolveCsvCulture(Request); CSVFormatter csvformat = new CSVFormatter(csvCulture); // Create Header var filter = SearchFilter; bool isConfidentialityAffected = WasteTransfers.IsAffectedByConfidentiality(filter); Dictionary <string, string> header = EPRTR.HeaderBuilders.CsvHeaderBuilder.GetWasteTransfersSearchHeader( filter, isConfidentialityAffected); // Create Body var rows = WasteTransfers.GetActivityTree(filter); // dump to file string topheader = csvformat.CreateHeader(header); string[] colHeaderRows = csvformat.GetWasteTransferActivityColHeaderRows(filter); Response.WriteUtf8FileHeader("EPRTR_Waste_Transfers_Activity_List"); Response.Write(topheader + colHeaderRows[0] + colHeaderRows[1] + colHeaderRows[2]); //all rows but total foreach (var item in rows.Where(r => r.Code != ActivityTreeListRow.CODE_TOTAL)) { string row = csvformat.GetWasteTransferActivityRow(item, filter); Response.Write(row); } //write total row var totalRow = rows.SingleOrDefault(r => r.Code == ActivityTreeListRow.CODE_TOTAL); if (totalRow == null) { //find all rows on topLevel. if only one, use this as total row var toplevelRows = rows.Where(r => r.Level == 0); if (toplevelRows != null && toplevelRows.Count() == 1) { totalRow = toplevelRows.Single(); } } //write total row if any is found if (totalRow != null) { Response.Write(Environment.NewLine); Response.Write(csvformat.AddText(Resources.GetGlobal("Common", "Total"))); Response.Write(Environment.NewLine); string[] totalColHeaderRows = csvformat.GetWasteTransferActivityColHeaderRows(filter); Response.Write(totalColHeaderRows[0] + totalColHeaderRows[1]); string row = csvformat.GetWasteTransferActivityRow(totalRow, filter); Response.Write(row); } Response.End(); }
/// <summary> /// Waste reason facilities wrapper /// </summary> public static IEnumerable <WasteTransfers.WasteConfidentialReason> GetWasteConfidentialReason(IndustrialActivitySearchFilter filter) { WasteTransferSearchFilter filterWaste = FilterConverter.ConvertToWasteTransferSearchFilter(filter); return(WasteTransfers.GetWasteConfidentialReason(filterWaste)); }
/// <summary> /// return true if confidentiality might effect waste result /// </summary> public static bool IsWasteAffectedByConfidentiality(IndustrialActivitySearchFilter filter) { WasteTransferSearchFilter filterWaste = FilterConverter.ConvertToWasteTransferSearchFilter(filter); return(WasteTransfers.IsAffectedByConfidentiality(filterWaste)); }