public HttpResponseMessage Delete(dynamic DynamicClass) { string Input = JsonConvert.SerializeObject(DynamicClass); dynamic data = JObject.Parse(Input); string idUsuario = data.IdUsuario; if (idUsuario == null) { idUsuario = "0"; } string instId = data.InstId; string titulo = data.Titulo; string fechaInicio = data.FechaInicio; string fechaTermino = data.FechaTermino; HttpResponseMessage httpResponse = new HttpResponseMessage(); try { VCFramework.Entidad.Calendario calendario = new VCFramework.Entidad.Calendario(); List <VCFramework.Entidad.Calendario> calendarios = VCFramework.NegocioMySQL.Calendario.ObtenerCalendarioPorInstId(int.Parse(instId)); calendario = calendarios.Find(p => p.Titulo == titulo && p.FechaInicio == Convert.ToDateTime(fechaInicio) && p.FechaTermino == Convert.ToDateTime(fechaTermino)); if (calendario != null && calendario.Id > 0) { calendario.Eliminado = 1; VCFramework.NegocioMySQL.Calendario.Modificar(calendario); } httpResponse = new HttpResponseMessage(HttpStatusCode.OK); String JSON = JsonConvert.SerializeObject(calendario); httpResponse.Content = new StringContent(JSON); httpResponse.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue(VCFramework.NegocioMySQL.Utiles.JSON_DOCTYPE); } catch (Exception ex) { httpResponse = new HttpResponseMessage(HttpStatusCode.ExpectationFailed); throw ex; } return(httpResponse); }
public HttpResponseMessage Put(dynamic DynamicClass) { string Input = JsonConvert.SerializeObject(DynamicClass); dynamic data = JObject.Parse(Input); string idUsuario = data.IdUsuario; if (idUsuario == null) { idUsuario = "0"; } string instId = data.InstId; string titulo = data.Titulo; string fechaInicio = data.FechaInicio; string fechaTermino = data.FechaTermino; string esNuevo = data.EsNuevo; HttpResponseMessage httpResponse = new HttpResponseMessage(); //buscamos el evento con todos los parametros para ver si es nuevo o antiguo bool nuevoRegistro = Convert.ToBoolean(esNuevo); int idNuevo = 0; try { VCFramework.Entidad.Calendario calendario = new VCFramework.Entidad.Calendario(); System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("es-CL"); //si es nuevo registro se inserta y no se realiza busqueda if (nuevoRegistro) { calendario.Asunto = titulo; calendario.Descripcion = titulo; calendario.Detalle = titulo; calendario.Eliminado = 0; calendario.Etiqueta = 1; calendario.FechaInicio = DateTime.Parse(fechaInicio, culture); calendario.FechaTermino = DateTime.Parse(fechaTermino, culture); //calendario.FechaTermino = Convert.ToDateTime(fechaTermino); calendario.InstId = int.Parse(instId); calendario.Status = 1; calendario.Tipo = 1; calendario.Titulo = titulo; calendario.Ubicacion = ""; calendario.Url = ""; //insertar idNuevo = VCFramework.NegocioMySQL.Calendario.Insertar(calendario); calendario.Id = idNuevo; } else { List <VCFramework.Entidad.Calendario> calendarios = VCFramework.NegocioMySQL.Calendario.ObtenerCalendarioPorInstId(int.Parse(instId)); calendario = calendarios.Find(p => p.FechaInicio == Convert.ToDateTime(fechaInicio) && p.FechaTermino == Convert.ToDateTime(fechaTermino)); if (calendario != null && calendario.Id > 0) { calendario.Asunto = titulo; calendario.Descripcion = titulo; calendario.Detalle = titulo; calendario.Titulo = titulo; VCFramework.NegocioMySQL.Calendario.Modificar(calendario); } } httpResponse = new HttpResponseMessage(HttpStatusCode.OK); String JSON = JsonConvert.SerializeObject(calendario); httpResponse.Content = new StringContent(JSON); httpResponse.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue(VCFramework.NegocioMySQL.Utiles.JSON_DOCTYPE); } catch (Exception ex) { httpResponse = new HttpResponseMessage(HttpStatusCode.ExpectationFailed); throw ex; } return(httpResponse); }