/// <summary> /// Create a new Field /// </summary> /// <returns></returns> static public GlobalVars.ResultGeneric NewField(GlobalVars.Field field) { GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { ReturnCode = 0, Message = "", RecordsCount = 0, HttpStatusCode = "" }; try { logger.Trace("Entering into NewJobField Method ..."); // Chedck if given Job ID Field does exist result = SQLFunctionsJobs.ExistJobID(field.JobID); if (result.RecordsCount != 0) { // Check if Job's Field Name Exist result = ExistFieldName(field.JobID, field.CPFieldName); if (result.RecordsCount == 0) { // Create new Field using (ScanningDBContext DB = new ScanningDBContext()) { JobsFields New_Record = new JobsFields(); New_Record.CpfieldName = field.CPFieldName; New_Record.VfrfieldName = field.VFRFieldName; New_Record.KeyStrokeExcludeFlag = field.ExcludeFromKeystrokesCount.ToString(); New_Record.JobId = field.JobID; DB.JobsFields.Add(New_Record); DB.SaveChanges(); } result.Message = "NewJobField transaction completed successfully. One Record added."; } else { result.ReturnCode = -1; result.Message = "Field " + field.CPFieldName.Trim() + " for Job id " + field.JobID.ToString().Trim() + " already exist. NewJobField transaction will be ignored."; } } else { result.ReturnCode = -1; result.Message = "JobID " + field.JobID.ToString().Trim() + " does not exist. NewJobField transaction will be ignored."; } logger.Debug(result.Message); } catch (Exception e) { logger.Error("Error:" + e.Message + "\n" + "Exception: " + e.InnerException); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); } logger.Trace("Leaving NewJobField Method ..."); return(result); }
/// <summary> /// /// </summary> /// <returns></returns> static public GlobalVars.ResultGeneric NewProject(GlobalVars.Project project) { GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { ReturnCode = 0, Message = "", RecordsCount = 0, HttpStatusCode = "" }; try { logger.Trace("Entering into NewProject Method ..."); // Check if Customer Exist result = SQLFunctionsCustomers.ExistCustomerID(project.CustomerID); if (result.RecordsCount != 0) { // Check if Project Name Exist result = SQLFunctionsProjects.ExistProjectName(project.ProjectName); if (result.RecordsCount == 0) { // Create new Project using (ScanningDBContext DB = new ScanningDBContext()) { Projects New_Record = new Projects(); New_Record.ProjectName = project.ProjectName; New_Record.CustomerId = project.CustomerID; DB.Projects.Add(New_Record); DB.SaveChanges(); } result.Message = "NewProject transaction completed successfully. One Record added."; } else { result.ReturnCode = -1; result.Message = "Project " + project.ProjectName + " already exist. NewProject transaction will be ignore."; } } else { result.ReturnCode = -1; result.Message = "Customer ID " + project.CustomerID + " does not exist. NewProject transaction will be ignore."; } logger.Debug(result.Message); } catch (Exception e) { logger.Error("Error:" + e.Message + "\n" + "Exception: " + e.InnerException); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); } logger.Trace("Leaving NewProject Method ..."); return(result); }
/// <summary> /// /// </summary> /// <returns></returns> static public GlobalVars.ResultGeneric UpdateProject(GlobalVars.Project project) { GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { ReturnCode = 0, Message = "", RecordsCount = 0, HttpStatusCode = "" }; try { logger.Trace("Entering into UpdateProject Method ..."); using (ScanningDBContext DB = new ScanningDBContext()) { // Project Names must be unique in the Database. The Name could be change but it must be unique Projects Matching_Result = DB.Projects.FirstOrDefault(x => x.ProjectName == project.ProjectName); if (Matching_Result == null) { // Means --> this is a new name Matching_Result = DB.Projects.FirstOrDefault(x => x.ProjectId == project.ProjectID); if (Matching_Result != null) { Matching_Result.ProjectName = project.ProjectName; DB.SaveChanges(); result.Message = "UpdateCustomer transaction completed successfully. One Record Updated."; } else { // Means --> cannot update a Customer that does not exist result.ReturnCode = -1; result.Message = "Project " + project.ProjectName + " does not exist. UpdateProject transaction ignore."; } } else { // Means --> the name already exist result.ReturnCode = -1; result.Message = "Project " + project.ProjectName + " already exist. UpdateCustomer transaction ignore."; } } logger.Debug(result.Message); } catch (Exception e) { logger.Error("Error:" + e.Message + "\n" + "Exception: " + e.InnerException); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); } logger.Trace("Leaving UpdateProject Method ..."); return(result); }
/// <summary> /// /// </summary> /// <returns></returns> static public GlobalVars.ResultGeneric NewCustomer(GlobalVars.Customer customer) { GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { ReturnCode = 0, Message = "", RecordsCount = 0, HttpStatusCode = "" }; try { logger.Trace("Entering into NewCustomer Method ..."); // Check if Customer Exist result = ExistCustomerName(customer.CustomerName); if (result.RecordsCount == 0) { // Create new Customer using (ScanningDBContext DB = new ScanningDBContext()) { Customers New_Record = new Customers(); New_Record.CustomerName = customer.CustomerName; DB.Customers.Add(New_Record); DB.SaveChanges(); } result.Message = "NewCustomer transaction completed successfully. One Record added."; } else { result.ReturnCode = -1; result.Message = "Customer " + customer.CustomerName + " already exist. NewCustomer transaction ignore."; } logger.Debug(result.Message); } catch (Exception e) { logger.Error("Error:" + e.Message + "\n" + "Exception: " + e.InnerException); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); } logger.Trace("Leaving NewCustomer Method ..."); return(result); }
/// <summary> /// Remove Project and associated information from Database /// </summary> /// <param name="projectID"></param> static public GlobalVars.ResultGeneric DeleteProject(int projectID) { GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { ReturnCode = 0, Message = "", RecordsCount = 0, HttpStatusCode = "" }; try { logger.Trace("Entering into DeleteProject Method ..."); using (ScanningDBContext DB = new ScanningDBContext()) { Projects Matching_Result = DB.Projects.FirstOrDefault(x => x.ProjectId == projectID); if (Matching_Result != null) { DB.Projects.Remove(Matching_Result); DB.SaveChanges(); result.Message = "DeleteProject transaction completed successfully. One Record Deleted."; } else { result.ReturnCode = -1; result.Message = "Project ID" + projectID + " does not exist. DeleteProject transaction ignore."; } logger.Debug(result.Message); } } catch (Exception e) { logger.Error("Error:" + e.Message + "\n" + "Exception: " + e.InnerException); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); } logger.Trace("Leaving DeleteProject Method ..."); return(result); }
/// <summary> /// /// </summary> /// <returns></returns> static public GlobalVars.ResultGeneric ExistProjectID(int projectID) { List <GlobalVars.Project> projects = new List <GlobalVars.Project>(); GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { ReturnCode = 0, Message = "", RecordsCount = 0, HttpStatusCode = "" }; try { logger.Trace("Entering into ExistProjectID Method ..."); using (ScanningDBContext DB = new ScanningDBContext()) { var results = DB.Projects.Where(x => x.ProjectId == projectID); result.RecordsCount = results.Count(); if (results.Count() >= 1) { result.Message = "Project ID " + projectID + " already exist."; } else { result.Message = "Project ID " + projectID + " doest not exist."; } } logger.Debug(result.Message); } catch (Exception e) { logger.Error("Error:" + e.Message + "\n" + "Exception: " + e.InnerException); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); } logger.Trace("Leaving ExistProjectID Method ..."); return(result); }
/// <summary> /// /// </summary> /// <returns></returns> static public GlobalVars.ResultGeneric ExistFieldName(int jobID, string fieldName) { List <GlobalVars.Field> fields = new List <GlobalVars.Field>(); GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { ReturnCode = 0, Message = "", RecordsCount = 0, HttpStatusCode = "" }; try { logger.Trace("Entering into ExistJobFieldName Method ..."); using (ScanningDBContext DB = new ScanningDBContext()) { var results = DB.JobsFields.Where(x => x.JobId == jobID & x.CpfieldName == fieldName); result.RecordsCount = results.Count(); if (results.Count() >= 1) { result.Message = "Field Name" + fieldName + " for Job ID " + jobID + " already exist."; } else { result.Message = "Field Name" + fieldName + " for Job ID " + jobID + " doest not exist."; } } logger.Debug(result.Message); } catch (Exception e) { logger.Error("Error:" + e.Message + "\n" + "Exception: " + e.InnerException); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); } logger.Trace("Leaving ExistJobFieldName Method ..."); return(result); }
public ActionResult UpdateJobExportRules([FromBody] string exportRulesJS) { var watch = System.Diagnostics.Stopwatch.StartNew(); GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { Message = "", ReturnCode = 0, //ReturnValue = "" }; try { if (exportRulesJS == null) { Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "Missing argument exportRulesJS"; logger.Warn("UpdateJobExportRules API Request ends with a Fatal Error."); logger.Warn(result.Message); } else { GlobalVars.ExportRules exportRules = JsonConvert.DeserializeObject <GlobalVars.ExportRules>(exportRulesJS); logger.Info("UpdateJobExportRules API Request."); logger.Debug("Parameter:" + JsonConvert.SerializeObject(exportRulesJS, Formatting.Indented)); //Rules: // 1- Job ID not null if (exportRules.JobID == 0) { Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "You must provide a Valid Job ID."; logger.Warn("UpdateJobExportRules API Request ends with a Fatal Error."); logger.Warn(result.Message); } else { result = SQLFunctionsExportRules.UpdateExportRule(exportRules); switch (result.ReturnCode) { case 0: logger.Info("UpdateJobExportRules API Request was executed Successfully."); Response.StatusCode = (int)HttpStatusCode.OK; break; case -2: Response.StatusCode = (int)HttpStatusCode.InternalServerError; logger.Fatal("UpdateJobExportRules 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("UpdateJobExportRules 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 UpdateJobExportRules 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)); }
/// <summary> /// Send Email /// </summary> /// <returns> Return 0 if the email was sent successfully</returns> static public GlobalVars.ResultGeneric SendEmail(GlobalVars.EMAIL email) { GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { ReturnCode = 0, Message = "", RecordsCount = 0, HttpStatusCode = "" }; try { logger.Trace("Entering into SendEmail Method ..."); // Get SMTP Server Information GlobalVars.ResultSMTP resultSMTP = new GlobalVars.ResultSMTP(); resultSMTP = SQLFunctionsSMTP.GetSMTPInfo(); GlobalVars.SMTP smpt = new GlobalVars.SMTP(); smpt = resultSMTP.ReturnValue; MailMessage mail = new MailMessage(); SmtpClient client = new SmtpClient(); mail.From = new MailAddress(smpt.SenderEmailAddress, smpt.SenderName); //mail.To.Add(new MailAddress(email.RecipientsEmailAddress)); foreach (var address in email.RecipientsEmailAddress.Split(new[] { ";" }, StringSplitOptions.RemoveEmptyEntries)) { mail.To.Add(address); } mail.Subject = email.Subject; mail.Body = email.Body; mail.IsBodyHtml = true; if (email.HasAttachment) { mail.Attachments.Add(new Attachment(new MemoryStream(email.attachment), "Report.pdf")); } client.Port = smpt.PortNumber; client.Host = smpt.HostName; //client.DeliveryMethod = SmtpDeliveryMethod.Network; if (resultSMTP.ReturnValue.EnableSSLFlag) { client.UseDefaultCredentials = false; client.EnableSsl = true; client.Credentials = new System.Net.NetworkCredential(smpt.UserName, smpt.Password); } else { client.EnableSsl = false; client.UseDefaultCredentials = true; } logger.Trace(" Sender: " + smpt.SenderName); logger.Trace(" Recipients: " + email.RecipientsEmailAddress); logger.Trace(" Subject: " + email.Subject); client.Send(mail); logger.Trace("Eamil was sent sucessfully."); } catch (Exception e) { logger.Error("Error:" + e.Message + "\n" + "Exception: " + e.InnerException); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); } logger.Trace("Leaving SendEmail Method ..."); return(result); }
/// <summary> /// /// </summary> /// <returns></returns> static public GlobalVars.ResultGeneric UpdateField(GlobalVars.Field field) { GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { ReturnCode = 0, Message = "", RecordsCount = 0, HttpStatusCode = "" }; try { logger.Trace("Entering into UpdateField Method ..."); using (ScanningDBContext DB = new ScanningDBContext()) { // Chedck if record exist in the Database JobsFields Matching_Result = DB.JobsFields.FirstOrDefault(x => x.JobId == field.JobID & x.FieldId == field.FieldID); if (Matching_Result != null) { // Means that Field exist in the Database. // then, check if the field Name has changed Matching_Result = DB.JobsFields.FirstOrDefault(x => x.JobId == field.JobID & x.FieldId == field.FieldID & x.CpfieldName == field.CPFieldName); if (Matching_Result != null) { // Means that Field Name remain the same Matching_Result.VfrfieldName = field.VFRFieldName; Matching_Result.KeyStrokeExcludeFlag = field.ExcludeFromKeystrokesCount.ToString(); DB.SaveChanges(); result.Message = "UpdateField transaction completed successfully. One Record Updated."; } else { // Means that the Field Name has Changed, so check if t he name has already been taking by another field Matching_Result = DB.JobsFields.FirstOrDefault(x => x.JobId == field.JobID & x.FieldId != field.FieldID & x.CpfieldName == field.CPFieldName); if (Matching_Result == null) { // Means that Field Name has changed // Look for the record in the datbase so it can be updated Matching_Result = DB.JobsFields.FirstOrDefault(x => x.JobId == field.JobID & x.FieldId == field.FieldID); if (Matching_Result != null) { Matching_Result.CpfieldName = field.CPFieldName; Matching_Result.VfrfieldName = field.VFRFieldName; Matching_Result.KeyStrokeExcludeFlag = field.ExcludeFromKeystrokesCount.ToString(); DB.SaveChanges(); result.Message = "UpdateField transaction completed successfully. One Record Updated."; } } else { result.ReturnCode = -1; result.Message = "Field name " + field.CPFieldName.Trim() + " with Job ID " + field.JobID.ToString().Trim() + " already exists for this Job. UpdateField transaction ignore."; } } } else { // Means --> The field does not exist in the Database result.ReturnCode = -1; result.Message = "Field " + field.CPFieldName.Trim() + " with Job ID " + field.JobID.ToString().Trim() + " does not exist. UpdateField transaction ignore."; } } logger.Debug(result.Message); } catch (Exception e) { logger.Error("Error:" + e.Message + "\n" + "Exception: " + e.InnerException); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); } logger.Trace("Leaving UpdateField Method ..."); return(result); }
public ActionResult UpdateSMTP([FromBody] string smtpJS) { var watch = System.Diagnostics.Stopwatch.StartNew(); GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { Message = "", ReturnCode = 0, //ReturnValue = "" }; try { if (smtpJS == null) { Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "Missing argument smtpJS"; logger.Warn("UpdateSMTP API Request ends with a Fatal Error."); logger.Warn(result.Message); } else { GlobalVars.SMTP smtp = JsonConvert.DeserializeObject <GlobalVars.SMTP>(smtpJS); logger.Info("UpdateSMTP API Request."); logger.Debug("Parameter:" + JsonConvert.SerializeObject(smtp, Formatting.Indented)); //Rules: // 1- HostName not null // 2- PortNumber <> 0 // 3- EnableSslFlag not null // 3- If SSL is true --> UserName and Password not null // 4- Sender Email Address not null // 5- Sender Name could be empty if (!string.IsNullOrEmpty(smtp.HostName) & smtp.PortNumber != 0 & !string.IsNullOrEmpty(smtp.SenderEmailAddress) & !string.IsNullOrEmpty(smtp.EnableSSLFlag.ToString())) { if (smtp.EnableSSLFlag) { if (!string.IsNullOrEmpty(smtp.UserName) & !string.IsNullOrEmpty(smtp.Password)) { // Good to go } else { Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "When SSL Flag is true, you must provide no empty values for UserName and Password"; logger.Warn("UpdateSMTP API Request ends with a Fatal Error."); logger.Warn(result.Message); } } else { // Good to go } } else { Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "HostName, PortNumber, and SenderEmailAddress must have a value. HostName not null, PortNumber > 0, SenderEmailAddress not null, and EnableSslflag {true, false}"; logger.Warn("UpdateSMTP API Request ends with a Fatal Error."); logger.Warn(result.Message); } if (result.ReturnCode == 0) { result = SQLFunctionsSMTP.UpdateSMTP(smtp); switch (result.ReturnCode) { case 0: logger.Info("UpdateSMTP API Request was executed Successfully."); Response.StatusCode = (int)HttpStatusCode.OK; break; case -2: Response.StatusCode = (int)HttpStatusCode.InternalServerError; logger.Fatal("UpdateSMTP 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("UpdateSMTP 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 UpdateSMTP API"); //return Json(messaje); return(Content(messaje)); }
public ActionResult SendEmail([FromBody] string emailJS) { var watch = System.Diagnostics.Stopwatch.StartNew(); GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric(); try { logger.Info("SendEmail API Request."); if (emailJS == null) { Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "Missing argument emailJS"; logger.Warn("SendEmail API Request ends with a Fatal Error."); logger.Warn(result.Message); } else { GlobalVars.EMAIL email = JsonConvert.DeserializeObject <GlobalVars.EMAIL>(emailJS.ToString()); if (!string.IsNullOrWhiteSpace(email.RecipientsEmailAddress)) { result = SQLFunctionsSMTP.SendEmail(email); switch (result.ReturnCode) { case 0: logger.Info("SendEmail API Request was executed Successfully."); Response.StatusCode = (int)HttpStatusCode.OK; break; case -2: Response.StatusCode = (int)HttpStatusCode.InternalServerError; logger.Fatal("SendEmail 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 = "Missing argument recipients"; logger.Warn("SendEmail API Request ends with an Error."); logger.Warn(result.Message); } } } catch (Exception e) { logger.Fatal("SendEmail 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 SendEmail API."); //return Json(messaje); return(Content(messaje)); }
/// <summary> /// The Update Method creates a new records if it does not exist /// </summary> /// <returns></returns> static public GlobalVars.ResultGeneric UpdateVFRInfo(GlobalVars.VFR vfr) { GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { ReturnCode = 0, Message = "", RecordsCount = 0, HttpStatusCode = "" }; try { logger.Trace("Entering into UpdateVFRInfo Method ..."); using (ScanningDBContext DB = new ScanningDBContext()) { // Customer Names must be unique in the Database. The Name could be change but it must be unique Vfr Matching_Result = DB.Vfr.FirstOrDefault(x => x.JobId == vfr.JobID); Vfr record = new Vfr(); record.Cadiurl = vfr.CADIUrl; record.CaptureTemplate = vfr.CaptureTemplate; record.InstanceName = vfr.InstanceName; record.JobId = vfr.JobID; //record.SettingId = vfr.SettingID; record.Password = vfr.Password; record.UserName = vfr.UserName; record.RepositoryName = vfr.RepositoryName; record.QueryField = vfr.QueryField; if (Matching_Result == null) { DB.Vfr.Add(record); DB.SaveChanges(); result.Message = "There was not information associated to an VFR Server, so new records was created successfully."; } else { // Means --> table has a record and it will be updated Matching_Result.Cadiurl = vfr.CADIUrl; Matching_Result.CaptureTemplate = vfr.CaptureTemplate; Matching_Result.InstanceName = vfr.InstanceName; Matching_Result.JobId = vfr.JobID; //Matching_Result.SettingId = vfr.SettingID; Matching_Result.Password = vfr.Password; Matching_Result.UserName = vfr.UserName; Matching_Result.RepositoryName = vfr.RepositoryName; Matching_Result.QueryField = vfr.QueryField; DB.SaveChanges(); result.Message = "VFR Inforation was updated successfully."; } } logger.Debug(result.Message); } catch (Exception e) { logger.Error("Error:" + e.Message + "\n" + "Exception: " + e.InnerException); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); } logger.Trace("Leaving UpdateVFRInfo Method ..."); return(result); }
public ActionResult NewField([FromBody] string fieldJS) { var watch = System.Diagnostics.Stopwatch.StartNew(); GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { Message = "", ReturnCode = 0, //ReturnValue = "" }; try { if (fieldJS == null) { Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "Missing argument fieldJS"; logger.Warn("NewField API Request ends with an Error."); logger.Warn(result.Message); } else { GlobalVars.Field field = JsonConvert.DeserializeObject <GlobalVars.Field>(fieldJS); logger.Info("NewField API Request."); if (!string.IsNullOrEmpty(field.CPFieldName) & field.FieldID == 0) { logger.Debug("Parameter:" + JsonConvert.SerializeObject(field, Formatting.Indented)); result = SQLFunctionsFields.NewField(field); switch (result.ReturnCode) { case 0: logger.Info("NewField API Request was executed Successfully."); Response.StatusCode = (int)HttpStatusCode.OK; break; case -1: logger.Info("NewField API Request ends with a warning."); Response.StatusCode = (int)HttpStatusCode.OK; break; case -2: Response.StatusCode = (int)HttpStatusCode.InternalServerError; logger.Fatal("NewField 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 = "Field Name and/or Field ID value is not valid."; logger.Warn("NewField API Request ends with an Error."); logger.Warn(result.Message); } } } catch (Exception e) { logger.Fatal("NewField 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 NewField API"); //return Json(messaje); return(Content(messaje)); }
/// <summary> /// /// </summary> /// <returns></returns> static public GlobalVars.ResultGeneric NewUser(GlobalVars.User user) { GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { ReturnCode = 0, Message = "", RecordsCount = 0, HttpStatusCode = "" }; try { logger.Trace("Entering into NewUser Method ..."); // Check if User Exist result = ExistUserName(user.UserName); if (result.RecordsCount == 0) { // Create new User ... using (ScanningDBContext DB = new ScanningDBContext()) { Users New_Record = new Users(); New_Record.UserName = user.UserName; New_Record.Title = user.Title; New_Record.ActiveFlag = Convert.ToString(user.ActiveFlag); New_Record.Email = user.Email; DB.Users.Add(New_Record); DB.SaveChanges(); } // Get the user ID created above, so it can be useed in UserUI Functionality Table below GlobalVars.ResultUsers users = new GlobalVars.ResultUsers(); users = GetUserByName(user.UserName); // Add User Functionalities ... using (ScanningDBContext DB = new ScanningDBContext()) { UserUifunctionality New_Record = new UserUifunctionality(); foreach (GlobalVars.UIFunctionality functionlaity in user.UIFunctionality) { New_Record.FunctionalityId = functionlaity.FunctionalityID; New_Record.UserId = user.UserID; DB.UserUifunctionality.Add(New_Record); DB.SaveChanges(); } } result.Message = "NewUser transaction completed successfully. One Record added."; } else { result.ReturnCode = -1; result.Message = "User " + user.UserName + " already exist. NewUser transaction ignore."; } logger.Debug(result.Message); } catch (Exception e) { logger.Error("Error:" + e.Message + "\n" + "Exception: " + e.InnerException); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); } logger.Trace("Leaving NewUser Method ..."); return(result); }
public ActionResult DeleteField(int fieldID) { var watch = System.Diagnostics.Stopwatch.StartNew(); GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { Message = "", ReturnCode = 0, //ReturnValue = "" }; try { // Field ID is a Required Field if (fieldID == 0) { Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "Field ID is a required field."; logger.Warn(result.Message); } else { logger.Info("DeleteField API Request. Job ID: " + fieldID); result = SQLFunctionsFields.DeleteField(fieldID); switch (result.ReturnCode) { case 0: // DeleteJob ends successfully logger.Info("Field ID: " + fieldID + " was Deleted Successfully."); result.Message = "Field ID: " + fieldID + " was Deleted Successfully."; Response.StatusCode = (int)HttpStatusCode.OK; break; case -1: logger.Info("DeleteField API Request ends with a warning."); Response.StatusCode = (int)HttpStatusCode.OK; break; case -2: // DeleteProject ends with a Fatal error logger.Fatal("DeleteField 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("DeleteField API Request ends with a Fatal Error."); System.Diagnostics.Trace.WriteLineIf(true, "Error:" + e.Message + "\n" + "Exception: " + e.InnerException); 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 DeleteField API"); //return Json(messaje); return(Content(messaje)); }
/// <summary> /// /// </summary> /// <returns></returns> static public GlobalVars.ResultGeneric UpdateUser(GlobalVars.User user) { GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { ReturnCode = 0, Message = "", RecordsCount = 0, HttpStatusCode = "" }; try { logger.Trace("Entering into UpdateUser Method ..."); using (ScanningDBContext DB = new ScanningDBContext()) { // User Name must be unique in the Database. The Name could be change but it must be unique Users Matching_Result = DB.Users.FirstOrDefault(x => x.UserName == user.UserName); if (Matching_Result != null) { // Means --> this is a new name Matching_Result = DB.Users.FirstOrDefault(x => x.UserId == user.UserID); if (Matching_Result != null) { Matching_Result.UserName = user.UserName; Matching_Result.Email = user.Email; Matching_Result.ActiveFlag = Convert.ToString(user.ActiveFlag); Matching_Result.Title = user.Title; DB.SaveChanges(); // Update User UI Functionlaities // 1- Delete existing all existimg UI Functinalities for this user DB.UserUifunctionality.RemoveRange(DB.UserUifunctionality.Where(x => x.UserId == user.UserID)); DB.SaveChanges(); // 2- Add User Functionalities UserUifunctionality New_Record = new UserUifunctionality(); foreach (GlobalVars.UIFunctionality functionlaity in user.UIFunctionality) { New_Record.FunctionalityId = functionlaity.FunctionalityID; New_Record.UserId = user.UserID; DB.UserUifunctionality.Add(New_Record); DB.SaveChanges(); } result.Message = "UpdateUser transaction completed successfully. One Record Updated."; } else { // Means --> cannot update a Customer that does not exist result.ReturnCode = -1; result.Message = "User " + user.UserName + " does not exist. UpdateUser transaction ignore."; } } else { // Means --> the name already exist result.ReturnCode = -1; result.Message = "User " + user.UserName + " already exist. UpdateUser transaction ignore."; } } logger.Debug(result.Message); } catch (Exception e) { logger.Error("Error:" + e.Message + "\n" + "Exception: " + e.InnerException); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); } logger.Trace("Leaving UpdateUser Method ..."); return(result); }
/// <summary> /// /// </summary> /// <returns></returns> static public GlobalVars.ResultGeneric UpdateSMTP(GlobalVars.SMTP smtp) { GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { ReturnCode = 0, Message = "", RecordsCount = 0, HttpStatusCode = "" }; try { logger.Trace("Entering into UpdateSMTP Method ..."); using (ScanningDBContext DB = new ScanningDBContext()) { // Customer Names must be unique in the Database. The Name could be change but it must be unique Smtp Matching_Result = DB.Smtp.FirstOrDefault(); Smtp record = new Smtp(); record.HostName = smtp.HostName; record.PortNumber = smtp.PortNumber; record.SenderEmailAddress = smtp.SenderEmailAddress; record.SenderName = smtp.SenderName; record.UserName = smtp.UserName; record.Password = smtp.Password; record.EnableSslflag = smtp.EnableSSLFlag.ToString(); if (Matching_Result == null) { // DB.Smtp.Add(record); DB.Smtp.Add(record); DB.SaveChanges(); result.Message = "There was not information associated to an SMTP Server, so new records was created successfully."; } else { // Means --> table has a record and it will be updated Matching_Result.HostName = smtp.HostName; Matching_Result.PortNumber = smtp.PortNumber; Matching_Result.SenderEmailAddress = smtp.SenderEmailAddress; Matching_Result.SenderName = smtp.SenderName; Matching_Result.UserName = smtp.UserName; Matching_Result.Password = smtp.Password; Matching_Result.SenderName = record.SenderName; DB.SaveChanges(); result.Message = "SMTP Inforation was updated successfully."; } } logger.Debug(result.Message); } catch (Exception e) { logger.Error("Error:" + e.Message + "\n" + "Exception: " + e.InnerException); result.ReturnCode = -2; result.Message = e.Message; var baseException = e.GetBaseException(); result.Exception = baseException.ToString(); } logger.Trace("Leaving UpdateSMTP Method ..."); return(result); }
public ActionResult UpdateJobPageSize([FromBody] string jobPageSizeJS) { var watch = System.Diagnostics.Stopwatch.StartNew(); GlobalVars.ResultGeneric result = new GlobalVars.ResultGeneric() { Message = "", ReturnCode = 0, //ReturnValue = "" }; try { if (jobPageSizeJS == null) { Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "Missing argument fieldJS"; logger.Warn("UpdateJobPageSize API Request ends with an Error."); logger.Warn(result.Message); } else { GlobalVars.JobPageSize jobPageSize = JsonConvert.DeserializeObject <GlobalVars.JobPageSize>(jobPageSizeJS); logger.Info("UpdateJobPageSize API Request."); if (!string.IsNullOrEmpty(jobPageSize.CategoryName)) { if (jobPageSize.JobID == 0 || jobPageSize.High == 0 || jobPageSize.Width == 0) { // High and/or Width values can not be Zero Response.StatusCode = (int)HttpStatusCode.BadRequest; result.ReturnCode = -1; result.Message = "Job ID , High and/or Width values cannot be Zero."; logger.Warn("UpdateJobPageSize API Request ends with an Error."); logger.Warn(result.Message); } else { logger.Debug("Parameter:" + JsonConvert.SerializeObject(jobPageSize, Formatting.Indented)); result = SQLFunctionsJobs.UpdateJobPageSize(jobPageSize); switch (result.ReturnCode) { case 0: logger.Info("UpdateJobPageSize API Request was executed Successfully."); Response.StatusCode = (int)HttpStatusCode.OK; break; case -1: logger.Info("UpdateJobPageSize API Request ends with a warning."); Response.StatusCode = (int)HttpStatusCode.OK; break; case -2: Response.StatusCode = (int)HttpStatusCode.InternalServerError; logger.Fatal("UpdateJobPageSize 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 = "Category Name value is not valid."; logger.Warn("UpdateJobPageSize API Request ends with an Error."); logger.Warn(result.Message); } } } catch (Exception e) { logger.Fatal("UpdateJobPageSize 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 UpdateJobPageSize API"); //return Json(messaje); return(Content(messaje)); }