public ActionResult GetReports() { // The following section is just a test for the reporting //GlobalVars.ResultGeneric rg = new GlobalVars.ResultGeneric(); // rg = SQLFunctionsReports.OverallBatchStatusReport(reportID); var watch = System.Diagnostics.Stopwatch.StartNew(); GlobalVars.ResultReports resultReport = new GlobalVars.ResultReports(); try { logger.Info("GetReports API Request."); resultReport = SQLFunctionsReports.GetReports(); switch (resultReport.ReturnCode) { case 0: logger.Info("GetReports API Request was executed Successfully."); Response.StatusCode = (int)HttpStatusCode.OK; break; case -2: Response.StatusCode = (int)HttpStatusCode.InternalServerError; logger.Fatal("GetReports API Request ends with a Fatal Error."); logger.Debug("Returned value:" + JsonConvert.SerializeObject(resultReport, Formatting.Indented)); Response.StatusCode = (int)HttpStatusCode.InternalServerError; break; } } catch (Exception e) { logger.Fatal("GetReports API Request ends with a Fatal Error."); resultReport.ReturnCode = -2; resultReport.Message = e.Message; var baseException = e.GetBaseException(); resultReport.Exception = baseException.ToString(); logger.Fatal("Returned value:" + JsonConvert.SerializeObject(resultReport, Formatting.Indented)); Response.StatusCode = (int)HttpStatusCode.InternalServerError; } Response.ContentType = "application/json"; watch.Stop(); var elapsedMs = watch.ElapsedMilliseconds; elapsedMs = elapsedMs / 1000; resultReport.ElapsedTime = elapsedMs.ToString(); logger.Debug("Returned value:" + JsonConvert.SerializeObject(resultReport, Formatting.Indented)); //var messaje = JsonConvert.SerializeObject(resultCustomers, Formatting.Indented); resultReport.HttpStatusCode = Response.StatusCode.ToString(); var messaje = JsonConvert.SerializeObject(resultReport, Formatting.Indented); logger.Info("Leaving GetReports API."); //return Json(messaje); return(Content(messaje)); }
public ActionResult GetReportsByCustomerName(string customerName) { var watch = System.Diagnostics.Stopwatch.StartNew(); GlobalVars.ResultReports resultReports = new GlobalVars.ResultReports(); try { logger.Info("GetReportsByCustomerName API Request."); if (string.IsNullOrEmpty(customerName)) { Response.StatusCode = (int)HttpStatusCode.BadRequest; resultReports.ReturnCode = -1; resultReports.Message = "Missing argument customerName"; logger.Warn("GetReportsByCustomerName API Request ends with an Error."); logger.Warn(resultReports.Message); } else { resultReports = SQLFunctionsReports.GetReportsByCustomerName(customerName); switch (resultReports.ReturnCode) { case 0: logger.Info("GetReportsByCustomerName API Request was executed Successfully."); Response.StatusCode = (int)HttpStatusCode.OK; break; case -2: Response.StatusCode = (int)HttpStatusCode.InternalServerError; logger.Fatal("GetReportsByCustomerName API Request ends with a Fatal Error."); logger.Debug("Returned value:" + JsonConvert.SerializeObject(resultReports, Formatting.Indented)); Response.StatusCode = (int)HttpStatusCode.InternalServerError; break; } } } catch (Exception e) { logger.Fatal("GetReportsByCustomerName API Request ends with a Fatal Error."); resultReports.ReturnCode = -2; resultReports.Message = e.Message; var baseException = e.GetBaseException(); resultReports.Exception = baseException.ToString(); logger.Fatal("Returned value:" + JsonConvert.SerializeObject(resultReports, Formatting.Indented)); Response.StatusCode = (int)HttpStatusCode.InternalServerError; } Response.ContentType = "application/json"; watch.Stop(); var elapsedMs = watch.ElapsedMilliseconds; elapsedMs = elapsedMs / 1000; resultReports.ElapsedTime = elapsedMs.ToString(); logger.Debug("Returned value:" + JsonConvert.SerializeObject(resultReports, Formatting.Indented)); //var messaje = JsonConvert.SerializeObject(resultCustomers, Formatting.Indented); resultReports.HttpStatusCode = Response.StatusCode.ToString(); var messaje = JsonConvert.SerializeObject(resultReports, Formatting.Indented); logger.Info("Leaving GetReportsByCustomerName API."); //return Json(messaje); return(Content(messaje)); }
public ActionResult UpdateReport([FromBody] string reportJS) { var watch = System.Diagnostics.Stopwatch.StartNew(); GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { Message = "", ReturnCode = 0, //ReturnValue = "" }; try { if (reportJS == null) { Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "Missing argument reportJS"; logger.Warn("UpdateReport API Request ends with a Fatal Error."); logger.Warn(result.Message); } else { GlobalVars.Report report = JsonConvert.DeserializeObject <GlobalVars.Report>(reportJS); logger.Info("UpdateReport API Request."); logger.Debug("Parameter:" + JsonConvert.SerializeObject(reportJS, Formatting.Indented)); //Rules: // 1- Template ID not null // 2- Customer ID 0 for System Reports. Any other number for Customer Report if (report.TemplateID == 0) { Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "You must provide a Valid Template ID."; logger.Warn("UpdateReport API Request ends with a Fatal Error."); logger.Warn(result.Message); } else { result = SQLFunctionsReports.UpdateReport(report); switch (result.ReturnCode) { case 0: logger.Info("UpdateReport API Request was executed Successfully."); Response.StatusCode = (int)HttpStatusCode.OK; break; case -2: Response.StatusCode = (int)HttpStatusCode.InternalServerError; logger.Fatal("UpdateReport API Request ends with a Fatal Error."); logger.Debug("Returned value:" + JsonConvert.SerializeObject(result, Formatting.Indented)); Response.StatusCode = (int)HttpStatusCode.InternalServerError; break; } } } } catch (Exception e) { logger.Fatal("UpdateReport API Request ends with a Fatal Error."); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); logger.Fatal("Returned value:" + JsonConvert.SerializeObject(result, Formatting.Indented)); Response.StatusCode = (int)HttpStatusCode.InternalServerError; } Response.ContentType = "application/json"; watch.Stop(); var elapsedMs = watch.ElapsedMilliseconds; elapsedMs = elapsedMs / 1000; result.ElapsedTime = elapsedMs.ToString(); result.HttpStatusCode = Response.StatusCode.ToString(); var messaje = JsonConvert.SerializeObject(result, Formatting.Indented); logger.Info("Leaving UpdateReport API"); //return Json(messaje); return(Content(messaje)); }
public ActionResult GenerateWorkOrderReport(string workOrders, Boolean sendEmail, Boolean attachPDF) { var watch = System.Diagnostics.Stopwatch.StartNew(); GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric(); try { logger.Info("GenerateWorkOrderReport API Request. Work Orders to include in the Report: " + workOrders); logger.Info(" Send Email: " + sendEmail.ToString()); logger.Info(" Attache Reports as PDF: " + attachPDF.ToString()); // CustomerID == 0 is a valid entry if (string.IsNullOrEmpty(workOrders)) { Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "Missing argument WorkOrders (String of Numbers separated by comma)"; logger.Warn("GenerateWorkOrderReport API Request ends with an Error."); logger.Warn(result.Message); } else { if (Convert.ToString(sendEmail) == "True" || Convert.ToString(sendEmail) == "False" || string.IsNullOrWhiteSpace(Convert.ToString(sendEmail))) { if (string.IsNullOrWhiteSpace(Convert.ToString(sendEmail))) { sendEmail = false; } result = SQLFunctionsReports.GenerateWorkOrdersReport(workOrders, sendEmail, attachPDF); switch (result.ReturnCode) { case 0: logger.Info("GenerateWorkOrderReport API Request was executed Successfully."); Response.StatusCode = (int)HttpStatusCode.OK; break; case -2: Response.StatusCode = (int)HttpStatusCode.InternalServerError; logger.Fatal("GenerateWorkOrderReport API Request ends with a Fatal Error."); logger.Debug("Returned value:" + JsonConvert.SerializeObject(result, Formatting.Indented)); Response.StatusCode = (int)HttpStatusCode.InternalServerError; break; } } else { Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "Invalid argument sendEmail. You must enter true/false."; logger.Warn("GenerateWorkOrderReport API Request ends with an Error."); logger.Warn(result.Message); } } } catch (Exception e) { logger.Fatal("GenerateWorkOrderReport API Request ends with a Fatal Error."); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); logger.Fatal("Returned value:" + JsonConvert.SerializeObject(result, Formatting.Indented)); Response.StatusCode = (int)HttpStatusCode.InternalServerError; } Response.ContentType = "application/json"; watch.Stop(); var elapsedMs = watch.ElapsedMilliseconds; elapsedMs = elapsedMs / 1000; result.ElapsedTime = elapsedMs.ToString(); logger.Debug("Returned value:" + JsonConvert.SerializeObject(result, Formatting.Indented)); //var messaje = JsonConvert.SerializeObject(resultCustomers, Formatting.Indented); result.HttpStatusCode = Response.StatusCode.ToString(); var messaje = JsonConvert.SerializeObject(result, Formatting.Indented); logger.Info("Leaving GenerateWorkOrderReport API."); //return Json(messaje); return(Content(messaje)); }