Ejemplo n.º 1
0
        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));
        }