public async Task <byte[]> GetReport(string Type, string basepath, CustomClearanceBIZSearchDTO arg) { var helper = new ReportHelper(); var datasource = new Telerik.Reporting.ObjectDataSource(); arg.gmsDashboardSearchFilter.pageNo = 0; datasource.DataSource = helper.GetGMSReleaseReportData(arg); Telerik.Reporting.Report instanceReport; var settings = new System.Xml.XmlReaderSettings(); settings.IgnoreWhitespace = true; var path = basepath + "/Report/GMSStatusReport.trdx"; using (System.Xml.XmlReader xmlReader = System.Xml.XmlReader.Create(path, settings)) { var xmlSerializer = new Telerik.Reporting.XmlSerialization.ReportXmlSerializer(); instanceReport = (Telerik.Reporting.Report)xmlSerializer.Deserialize(xmlReader); } Telerik.Reporting.Table tbl = instanceReport.Items.Find("table1", true)[0] as Telerik.Reporting.Table; tbl.DataSource = datasource; DateTime frmdate; if (DateTime.TryParseExact(arg.gmsDashboardSearchFilter.fromDT, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out frmdate)) { instanceReport.ReportParameters["FromDate"].Value = frmdate.ToString("dd/MM/yyyy"); } else { instanceReport.ReportParameters["FromDate"].Value = string.Empty; } DateTime todate; if (DateTime.TryParseExact(arg.gmsDashboardSearchFilter.toDT, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out todate)) { instanceReport.ReportParameters["ToDate"].Value = todate.ToString("dd/MM/yyyy"); } else { instanceReport.ReportParameters["ToDate"].Value = string.Empty; } //instanceReport.ReportParameters.Add("ToDate", parameters[1]); Telerik.Reporting.Processing.ReportProcessor reportProcessor = new Telerik.Reporting.Processing.ReportProcessor(); Telerik.Reporting.Processing.RenderingResult result = reportProcessor.RenderReport(Type, new InstanceReportSource { ReportDocument = instanceReport }, null); byte[] contents = result.DocumentBytes; return(contents); }
//public List<GMSContainerStatusResponse> GetGMSReleaseReportData(string x) public List <GMSContainerStatusResponse> GetGMSReleaseReportData(CustomClearanceBIZSearchDTO arg) { ITokenContainer tokenContainer = new TokenContainer(); string urls = string.Empty; GMSStatRootResponse responseFromWS = new GMSStatRootResponse(); try { string reference = "api/Customs/Dashboard/SearchContainerReleaseReport"; string url = InternetService_URLS + reference; //CustomClearanceBIZSearchDTO arg = new CustomClearanceBIZSearchDTO(); //arg.gmsDashboardSearchFilter = new GMSDashboardSearchFilter(); //arg.gmsDashboardSearchFilter.pageNo = 1; //arg.gmsDashboardSearchFilter.pageSize = 100; //arg.gmsDashboardSearchFilter.toDT = "2018-11-02 00:00:00"; //urls = url + "?centerCode=" + centerCode + "&jobNumber=" + jobNumber + "&eLACode=" + eLACode; HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url); webRequest.ContentType = "application/json"; webRequest.Method = "POST"; webRequest.Headers.Add("Authorization", "Bearer " + tokenContainer.ApiToken); webRequest.Accept = "application/json"; using (var streamWriter = new StreamWriter(webRequest.GetRequestStream())) { string json = JsonConvert.SerializeObject(arg); streamWriter.Write(json); streamWriter.Flush(); streamWriter.Close(); } using (WebResponse response = webRequest.GetResponse()) { using (StreamReader rd = new StreamReader(response.GetResponseStream())) { var obj = rd.ReadToEnd(); responseFromWS = JsonConvert.DeserializeObject <GMSStatRootResponse>(obj); } } } catch (Exception ex) { throw ex; } List <GMSContainerStatusResponse> result = new List <GMSContainerStatusResponse>(responseFromWS.ServiceResponse.Content); //List<Exemptions> Exemptionss = new List<Exemptions>(responseFromWS.FirstOrDefault().Data); //Exemptionss.Add(Exemptions.FirstOrDefault()); return(result); }