/// <summary> /// Dará de alta un nuevo demandante en el sistema. - /demandante /// </summary> /// <param name="demandante">Tipo de dato complejo para representar los datos de un demandante</param> /// <returns>MultipleDemandantePost</returns> public IHttpActionResult Post([FromBody] ServiciosRest.Demandantes.Models.Demandante demandante) { // TODO: implement Post - route: demandante/demandante // var result = new MultipleDemandantePost(); /* === DATOS DEMANDANTE === * dni: string * pass?: string * nombre: string * apellidos: string * direccion: string * poblacion: string * telefono: string * email: string * fecha_nacimiento: string * fecha_renovacion?: string * iban: string * situacion_laboral: boolean * edad: integer * titulos: string * experiencia: integer * === FIN DATOS DEMANDANTE === */ // return Ok(result); MultipleDemandantePost resp = new MultipleDemandantePost(); MySqlConnection connection = null; try { connection = new MySqlConnection("host=localhost; port=3306; user=usuario; password=; database=mtis_final"); connection.Open(); MySqlCommand command = new MySqlCommand(); resp.ResponseDemandante = new ResponseDemandante(); resp.ErrorDemandante = new ErrorDemandante(); resp.ResponseDemandante.Estado = false; command.Connection = connection; command.CommandText = "INSERT INTO demandante " + "(dni, pass, nombre, apellidos, direccion, poblacion, telefono, email, fecha_nacimiento, fecha_renovacion, iban, situacion_laboral, edad, titulos, experiencia) " + "VALUES(@dni, @pass, @nombre, @apellidos, @direccion, @poblacion, @telefono, @email, @fecha_nacimiento, @fecha_renovacion, @iban, @situacion_laboral, @edad, @titulos, @experiencia)"; command.Prepare(); command.Parameters.AddWithValue("@dni", demandante.Dni); command.Parameters.AddWithValue("@pass", demandante.Pass); command.Parameters.AddWithValue("@nombre", demandante.Nombre); command.Parameters.AddWithValue("@apellidos", demandante.Apellidos); command.Parameters.AddWithValue("@direccion", demandante.Direccion); command.Parameters.AddWithValue("@poblacion", demandante.Poblacion); command.Parameters.AddWithValue("@telefono", demandante.Telefono); command.Parameters.AddWithValue("@email", demandante.Email); command.Parameters.AddWithValue("@fecha_nacimiento", demandante.Fecha_nacimiento); command.Parameters.AddWithValue("@fecha_renovacion", demandante.Fecha_renovacion); command.Parameters.AddWithValue("@iban", demandante.Iban); command.Parameters.AddWithValue("@situacion_laboral", demandante.Situacion_laboral.CompareTo("true") == 0); command.Parameters.AddWithValue("@edad", demandante.Edad); command.Parameters.AddWithValue("@titulos", demandante.Titulos); command.Parameters.AddWithValue("@experiencia", demandante.Experiencia); if (command.ExecuteNonQuery() > 0) { resp.ResponseDemandante.Estado = true; resp.ResponseDemandante.Mensaje = "El demandante ha sido dado de alta correctamente"; connection.Close(); return(Content(HttpStatusCode.Created, resp.ResponseDemandante)); } else { resp.ErrorDemandante.Codigo = 409; resp.ErrorDemandante.Mensaje = "Hay un conflicto, el demandante ya está dado de alta en el sistema"; connection.Close(); return(Content(HttpStatusCode.Conflict, resp.ErrorDemandante)); } } catch (Exception e) { connection.Close(); if (e.Message.Contains("Duplicate entry")) { resp.ErrorDemandante.Codigo = 409; resp.ErrorDemandante.Mensaje = "Hay un conflicto, el demandante ya está dado de alta en el sistema"; return(Content(HttpStatusCode.Conflict, resp.ErrorDemandante)); } return(InternalServerError());// Content(System.Net.HttpStatusCode.InternalServerError); } finally { if (connection != null) { connection.Close(); } } }
public virtual IHttpActionResult PostBase([FromBody] ServiciosRest.Demandantes.Models.Demandante demandante) { // Do not modify this code return(((IDemandanteController)this).Post(demandante)); }