public Response <Evento> InsertEvento(Evento obj) { Response <Evento> result = new Response <Evento>(); result.code = -1; result.message = "Ocurrio un Error en BD al tratar de realizar una transacción"; result.data = new Evento(); result.totalRecords = 0; if (obj.nombre_evento == null || obj.nombre_evento == "" || obj.fecha_inicio == null || obj.fecha_inicio == "" || obj.fecha_fin == null || obj.fecha_fin == "" || obj.usuario == null || obj.usuario == "") { result.code = -1; result.data = new Evento(); result.message = "Favor de verificar los campos requeridos, no es valido guardar datos vacios"; return(result); } try { using (var db = new EntitiesEvento()) { StringBuilder sqlInsert = new StringBuilder(); sqlInsert.Append(" insert into evento "); sqlInsert.Append(" (id_evento, "); sqlInsert.Append(" nombre_evento, "); sqlInsert.Append(" fecha_inicio, "); sqlInsert.Append(" fecha_fin, "); sqlInsert.Append(" estado_registro, "); sqlInsert.Append(" usuario_creacion, "); sqlInsert.Append(" fecha_creacion) "); sqlInsert.Append(" values( "); sqlInsert.Append(" (select correlativo_disponible from correlativo where id_correlativo = 2 and estado_registro = 'A'), "); sqlInsert.Append(" upper(:nombre_evento), "); sqlInsert.Append(" :fecha_inicio, "); sqlInsert.Append(" :fecha_fin, "); sqlInsert.Append(" 'A', "); sqlInsert.Append(" upper(:usuario_creacion), "); sqlInsert.Append(" sysdate) "); var resp = db.Database.ExecuteSqlCommand(sqlInsert.ToString(), new object[] { obj.nombre_evento, obj.fecha_inicio, obj.fecha_fin, obj.usuario }); db.SaveChanges(); } result.code = 0; result.message = "Se ha registrado el Evento de forma exitosa"; return(result); } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una excepcion al intentar registrar un Evento" + ex.ToString(); result.messageError = ex.ToString(); return(result); } }
public Response <InscripcionOpcion> ActualizarOpcionInscripcion(InscripcionOpcion obj) { Response <InscripcionOpcion> result = new Response <InscripcionOpcion>(); result.code = -1; result.message = "Ocurrio un error en base de datos al tratar de modificar la opcion de la inscripción"; result.data = new InscripcionOpcion(); DateTime fechalimite = Convert.ToDateTime(ConfigurationManager.AppSettings["FechaLimite"].ToString()); try { using (var db = new EntitiesEvento()) { string newEstado = ""; StringBuilder strUpEs = new StringBuilder(); strUpEs.Append(" update inscripcion_opcion "); strUpEs.Append(" set estado_registro = :estado_registro "); strUpEs.Append(" where id_participante = :id_participante "); strUpEs.Append(" and id_evento = :id_evento "); strUpEs.Append(" and id_opcion = :id_opcion "); if (obj.es_transporte == "S" && (fechalimite < DateTime.Today) && obj.estador.estado == "A") { result.code = -1; result.message = "No es posible quitar el transporte, la fecha limite fue el " + fechalimite.ToString(); return(result); } if (obj.estador.estado == "A") { newEstado = "B"; } else { newEstado = "A"; } var resp = db.Database.ExecuteSqlCommand(strUpEs.ToString(), new object[] { newEstado, obj.id_participante, obj.id_evento, obj.id_opcion }); db.SaveChanges(); } result.code = 0; result.message = "Se actualizo el estado correctamente"; return(result); } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una excepción al tratar de actualizar el estado de la opcion de inscripcion"; result.messageError = ex.ToString(); return(result); } }
public Response <Evento> UpdateEvento(Evento obj) { Response <Evento> result = new Response <Evento>(); result.code = -1; result.message = "Ocurrio un Error en BD al tratar de realizar una transacción"; result.data = new Evento(); if (obj.nombre_evento == null || obj.nombre_evento == "" || obj.fecha_inicio == null || obj.fecha_inicio == "" || obj.fecha_fin == null || obj.fecha_fin == "" || obj.estado_registro == null || obj.estado_registro == "" || obj.usuario == null || obj.usuario == "") { result.code = -1; result.data = new Evento(); result.message = "Favor de verificar los campos requeridos, no es permitido Actualizar estos datos vacios"; return(result); } try { using (var db = new EntitiesEvento()) { StringBuilder strUpdate = new StringBuilder(); strUpdate.Append(" UPDATE evento "); strUpdate.Append(" SET nombre_evento = upper(:nombre), "); strUpdate.Append(" fecha_inicio =:fechaini, "); strUpdate.Append(" fecha_fin =:fechafin, "); strUpdate.Append(" estado_registro =upper(:estado), "); strUpdate.Append(" usuario_modificacion=upper(:usuario), "); strUpdate.Append(" fecha_modificacion =sysdate "); strUpdate.Append(" WHERE id_evento = :id "); var resp = db.Database.ExecuteSqlCommand(strUpdate.ToString(), new object[] { obj.nombre_evento, obj.fecha_inicio, obj.fecha_fin, obj.estado_registro, obj.usuario, obj.id_evento }); db.SaveChanges(); } result.code = 0; result.message = "Se ha Actualizado el Registro de Evento de forma exitosa"; return(result); } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una Excepcion al intentar actualizar el Evento"; result.messageError = ex.ToString(); return(result); } }
public Response <OpcionEvento> InsertarOpcionEvento(OpcionEvento obj) { Response <OpcionEvento> result = new Response <OpcionEvento>(); result.code = -1; result.message = "Ocurrio un error en Base de datos al intentar registrar Opcion"; result.data = new OpcionEvento(); result.totalRecords = 0; if (obj.evento.Equals(null) || obj.descripcion == null || obj.descripcion == "" || obj.precio.Equals(null) || obj.usuario == null || obj.usuario == "") { result.code = -1; result.data = new OpcionEvento(); result.message = "Favor de Verificar los campos requeridos, no es valido guardar datos vacios"; return(result); } try { using (var db = new EntitiesEvento()) { StringBuilder strInsert = new StringBuilder(); strInsert.Append(" insert into opcion_evento "); strInsert.Append(" (id_opcion,id_evento,descripcion,precio,estado_registro,usuario_creacion,fecha_creacion) "); strInsert.Append(" values( "); strInsert.Append(" (select correlativo_disponible from correlativo where id_correlativo = 3 and estado_registro = 'A'), "); strInsert.Append(" :id_evento, "); strInsert.Append(" upper(:descripcion), "); strInsert.Append(" :precio, "); strInsert.Append(" 'A', "); strInsert.Append(" upper(:usuario), "); strInsert.Append(" sysdate) "); var resp = db.Database.ExecuteSqlCommand(strInsert.ToString(), new object[] { obj.evento, obj.descripcion, obj.precio, obj.usuario }); db.SaveChanges(); } result.code = 0; result.message = "Se ha registrado la Opcion del Evento de forma Exitosa"; return(result); } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una excepcion al intentar registrar la Opcion del Evento"; result.messageError = ex.ToString(); return(result); } }
public Response <Inscripcion> InsertarInscripcion(Inscripcion obj) { Response <Inscripcion> result = new Response <Inscripcion>(); result.code = -1; result.message = "Ocurrio un error en base de datos al tratar de realizar la inscripcion"; result.data = new Inscripcion(); if (obj.id_evento.Equals(null) || obj.id_evento == 0 || obj.id_participante.Equals(null) || obj.usuario == null || obj.usuario == "") { result.code = -1; result.data = new Inscripcion(); result.message = "Favor de verificar los campos requeridos, no es valido guardar datos vacios"; return(result); } try { using (var db = new EntitiesEvento()) { StringBuilder strIns = new StringBuilder(); strIns.Append(" insert into inscripcion "); strIns.Append(" (id_evento,id_participante,fecha_inscripcion, estado_registro, usuario_creacion, fecha_creacion) "); strIns.Append(" values( "); strIns.Append(" :id_evento, "); strIns.Append(" :id_participante, "); strIns.Append(" sysdate, "); strIns.Append(" 'A', "); strIns.Append(" upper(:usuario), "); strIns.Append(" sysdate) "); var resp = db.Database.ExecuteSqlCommand(strIns.ToString(), new object[] { obj.id_evento, obj.id_participante, obj.usuario }); db.SaveChanges(); } result.code = 0; result.message = "Se ha Inscrito el Participante de forma correcta"; return(result); } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una excepcion al tratar de Inscribir al Participante"; result.messageError = ex.ToString(); return(result); } }
public Response <BusInscripcion> ModificarBus(BusInscripcion bu) { Response <BusInscripcion> result = new Response <BusInscripcion>(); result.code = -1; result.message = "Ocurrio un error en Base de Datos al tratar de Modificar el Bus"; result.data = new BusInscripcion(); if (bu.no_bus_new.Equals(null) || bu.no_bus_new == 0 || bu.usuario == null || bu.usuario == "") { result.code = -1; result.data = new BusInscripcion(); result.message = "Favor de verificar los campos de Bus y Usuario. Se requieren estos campos para Modificar el Bus"; return(result); } try { using (var db = new EntitiesEvento()) { StringBuilder updBus = new StringBuilder(); updBus.Append(" "); updBus.Append(" update bus_inscripcion "); updBus.Append(" set no_bus =:no_bus_new, id_bus =:id_bus_new, usuario_modificacion =:usuario, fecha_modificacion = sysdate "); updBus.Append(" where id_bus = :id_bus "); updBus.Append(" and id_participante = :id_participante "); updBus.Append(" and id_evento = :id_evento "); var resp = db.Database.ExecuteSqlCommand(updBus.ToString(), new object[] { bu.no_bus_new, bu.id_bus_new, bu.usuario, bu.id_bus, bu.id_participante, bu.id_evento }); db.SaveChanges(); } result.code = 0; result.message = "Se ha modificado el Bus del Participante exitosamente..."; return(result); } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una excepcion al tratar de Modificar el Bus al Participante"; result.messageError = ex.ToString(); return(result); } }
public Response <Participante> ActualizarParticipante(Participante pa) { Response <Participante> result = new Response <Participante>(); result.code = -1; result.message = "Ocurrio un error en base de datos al intentar actualizar el participante"; result.data = new Participante(); if (pa.nombre == null || pa.nombre == "" || pa.apellido == null || pa.apellido == "" || pa.usuario == null || pa.usuario == "") { result.code = -1; result.message = "Favor de verificar los datos, no es permitido registrar datos vacios"; result.data = new Participante(); return(result); } try { using (var db = new EntitiesEvento()) { StringBuilder strUpd = new StringBuilder(); strUpd.Append(_actualizarParticipante); var resp = db.Database.ExecuteSqlCommand(strUpd.ToString(), new object[] { pa.nombre, pa.apellido, pa.telefono, pa.genero_.genero, pa.talla, pa.estado_.estado, pa.usuario, pa.id }); db.SaveChanges(); } result.code = 0; result.message = "Se Actualizaron los datos del Participante de forma exitosa"; return(result); } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una excepcion al tratar de actualizar los datos: " + ex.ToString(); result.messageError = ex.ToString(); return(result); } }
public Response <OpcionEvento> ActualizarOpcionEvento(OpcionEvento obj) { Response <OpcionEvento> result = new Response <OpcionEvento>(); result.code = -1; result.message = "Ocurrio un error en base de datos al tratar de actualizar el registro"; result.data = new OpcionEvento(); if (obj.descripcion == null || obj.descripcion == "" || obj.usuario == null || obj.usuario == "") { result.code = -1; result.data = new OpcionEvento(); result.message = "Favor de verificar los campos requeridos, no es permitido Actualizar estos datos vacios"; return(result); } try { using (var db = new EntitiesEvento()) { StringBuilder strUpdate = new StringBuilder(); strUpdate.Append(" update opcion_evento "); strUpdate.Append(" set descripcion = upper(:descripcion), "); strUpdate.Append(" precio = :precio, "); strUpdate.Append(" usuario_modificacion = upper(:usuario), "); strUpdate.Append(" fecha_modificacion = sysdate "); strUpdate.Append(" where id_opcion = :id_opcion "); var resp = db.Database.ExecuteSqlCommand(strUpdate.ToString(), new object[] { obj.descripcion, obj.precio, obj.usuario, obj.id }); db.SaveChanges(); } result.code = 0; result.message = "Se ha Actualizado el Registro de Opcion de Evento de forma exitosa"; return(result); } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una Excepcion al intentar actualizar la Opcion de Evento"; result.messageError = ex.ToString(); return(result); } }
public Response <BusInscripcion> AsignarBusParticipante(BusInscripcion pa) { Response <BusInscripcion> result = new Response <BusInscripcion>(); result.code = -1; result.message = "Ocurrio un error En Base de Datos al tratar de Asignar el Bus"; result.data = new BusInscripcion(); if (pa.no_bus.Equals(null) || pa.no_bus == 0 || pa.usuario == null || pa.usuario == "") { result.code = -1; result.data = new BusInscripcion(); result.message = "Favor de verificar los campos de Bus y Usuario. Se requieren estos campos para Asignar el Bus"; return(result); } try { using (var db = new EntitiesEvento()) { StringBuilder strVal = new StringBuilder(); strVal.Append(" select disponible "); strVal.Append(" from bus_evento "); strVal.Append(" where id_evento =:id_evento "); strVal.Append(" and id_bus =:id_bus "); var val = db.Database.SqlQuery <Bus>(strVal.ToString(), new object[] { pa.id_evento, pa.id_bus }).SingleOrDefault <Bus>(); if (val.disponible == 0) { result.code = -1; result.message = "No es posible Asignar en este Bus ya que todos los ascientos estan Ocupados, Revise Disponibilidad en otro Bus"; result.data = new BusInscripcion(); return(result); } StringBuilder insBus = new StringBuilder(); insBus.Append(" insert into bus_inscripcion(id_bus, id_participante, id_evento, no_bus, estado_registro, usuario_creacion, fecha_creacion) "); insBus.Append(" values( "); insBus.Append(" :id_bus, "); insBus.Append(" :id_participante, "); insBus.Append(" :id_evento, "); insBus.Append(" :no_bus, "); insBus.Append(" 'A', "); insBus.Append(" upper(:usuario), "); insBus.Append(" sysdate) "); var resp = db.Database.ExecuteSqlCommand(insBus.ToString(), new object[] { pa.id_bus, pa.id_participante, pa.id_evento, pa.no_bus, pa.usuario }); db.SaveChanges(); } result.code = 0; result.message = "Se ha realizado la Asignacion de Bus de forma Exitosa"; return(result); } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una excepcion al tratar de Asignar Bus al Participante"; result.messageError = ex.ToString(); return(result); } }
public Response <Movimiento> AbonarSaldo(Movimiento obj) { Response <Movimiento> result = new Response <Movimiento>(); result.code = -1; result.message = "Ocurrio un error en base de datos al tratar de Realizar el Pago"; result.data = new Movimiento(); if (obj.tipo_pago.Equals(null) || obj.valor.Equals(null) || obj.valor == 0 || obj.usuario == null || obj.usuario == "") { result.code = -1; result.message = "Favor de revisar los valores Tipo de pago, Valor del pago o Usuario de Gestion que no sean vacios o tengan un valor de 0"; result.data = new Movimiento(); return(result); } if (obj.saldo_pendiente == 0) { result.code = -1; result.message = "Para este Evento ya no es permito realizar Cobros ya que tiene Pagado el Monto total del Evento"; result.data = new Movimiento(); return(result); } if ((obj.monto_abonado + obj.valor) > obj.monto_total_evento) { result.code = -1; result.message = "Favor de verificar el monto a cobrar ya que excede al monto total del Evento, el monto valido a cobrar es Q " + obj.saldo_pendiente.ToString(); result.data = new Movimiento(); return(result); } try { using (var db = new EntitiesEvento()) { StringBuilder strVal = new StringBuilder(); strVal.Append(" select nvl(tieneopcion.estado_registro,'N') estado_registro, estaasignado.tienebus "); strVal.Append(" from ( "); strVal.Append(" select io.id_participante, io.id_evento, nvl(io.estado_registro,'N')estado_registro "); strVal.Append(" from opcion_evento oe, inscripcion_opcion io "); strVal.Append(" where oe.id_evento = io.id_evento "); strVal.Append(" and oe.id_opcion = io.id_opcion "); strVal.Append(" and oe.es_transporte = 'S' "); strVal.Append(" and io.id_evento = :id_evento "); strVal.Append(" and io.id_participante = :id_participante) tieneopcion, "); strVal.Append(" ( "); strVal.Append(" select ins.id_participante, ins.id_evento, nvl(count(bi.id_bus),0)tienebus "); strVal.Append(" from inscripcion ins, bus_inscripcion bi "); strVal.Append(" where ins.id_evento = bi.id_evento(+) "); strVal.Append(" and ins.id_participante = bi.id_participante(+) "); strVal.Append(" and ins.id_evento = :id_evento "); strVal.Append(" and ins.id_participante = :id_participante "); strVal.Append(" group by ins.id_participante, ins.id_evento) estaasignado "); strVal.Append(" where tieneopcion.id_participante(+) = estaasignado.id_participante "); strVal.Append(" and tieneopcion.id_evento (+)= estaasignado.id_evento "); var resultado = db.Database.SqlQuery <BusAsignacion>(strVal.ToString(), new object[] { obj.id_evento, obj.id_participante, obj.id_evento, obj.id_participante }).SingleOrDefault <BusAsignacion>(); if (resultado.tienebus == 0 && resultado.estado_registro == "A") { result.code = -1; result.message = "Antes de realizar el cobro, favor de proceder a la asignacion del Bus. Gracias"; result.data = new Movimiento(); return(result); } StringBuilder strIns = new StringBuilder(); strIns.Append(" insert into movimientos "); strIns.Append(" (id_movimiento,id_participante,id_evento, tipo_mov, tipo_pago, descripcion, valor, fecha_movimiento, usuario_creacion, fecha_creacion) "); strIns.Append(" values( "); strIns.Append(" (select correlativo_disponible from correlativo where id_correlativo = 7 and estado_registro = 'A'), "); strIns.Append(" :id_participante, "); strIns.Append(" :id_evento, "); strIns.Append(" 'AB', "); strIns.Append(" :tipo_pago, "); strIns.Append(" 'Pago al Evento '|| (select ev.nombre_evento from evento ev where id_evento = :id_evento), "); strIns.Append(" :valor, "); strIns.Append(" sysdate, "); strIns.Append(" upper(:usuario), "); strIns.Append(" sysdate) "); var resp = db.Database.ExecuteSqlCommand(strIns.ToString(), new object[] { obj.id_participante, obj.id_evento, obj.tipo_pago, obj.id_evento, obj.valor, obj.usuario }); db.SaveChanges(); } result.code = 0; result.message = "Se ha registrado el abono de forma existosa"; return(result); } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una excepcion al tratar de registrar el abono"; result.messageError = ex.ToString(); return(result); } }
public Response <Movimiento> GenerarNotaDeCredito(Movimiento obj) { Response <Movimiento> result = new Response <Movimiento>(); result.code = -1; result.message = "Ocurrio un Error en Base de Datos al tratar de Generar la Nota de Crédito"; result.data = new Movimiento(); if (obj.tipo_pago.Equals(null) || obj.valor.Equals(null) || obj.valor == 0 || obj.usuario == null || obj.usuario == "") { result.code = -1; result.message = "Favor de revisar los valores Tipo de pago, Valor del pago o Usuario de Gestion que no sean vacios o tengan un valor de 0"; result.data = new Movimiento(); return(result); } try { using (var db = new EntitiesEvento()) { StringBuilder strVal = new StringBuilder(); //strVal.Append(" select sum(valor) monto_abonado "); //strVal.Append(" from movimientos "); //strVal.Append(" where tipo_mov = 'AB' "); //strVal.Append(" and id_evento = :id_evento "); //strVal.Append(" and id_participante = :id_participante "); strVal.Append(" select (abono.abonos-cargo.cargos) monto_abonado "); strVal.Append(" from( "); strVal.Append(" select ins.id_participante, ins.id_evento, nvl(sum(mov.valor),0) abonos "); strVal.Append(" from movimientos mov, inscripcion ins "); strVal.Append(" where mov.id_evento(+) = ins.id_evento "); strVal.Append(" and mov.id_participante(+) = ins.id_participante "); strVal.Append(" and mov.tipo_mov(+) = 'AB' "); strVal.Append(" and ins.id_evento = :id_evento "); strVal.Append(" and ins.id_participante = :id_participante "); strVal.Append(" group by ins.id_evento, ins.id_participante) abono, "); strVal.Append(" ( "); strVal.Append(" select ins.id_participante, ins.id_evento, nvl(sum(mov.valor),0) cargos "); strVal.Append(" from movimientos mov, inscripcion ins "); strVal.Append(" where mov.id_evento(+) = ins.id_evento "); strVal.Append(" and mov.id_participante(+) = ins.id_participante "); strVal.Append(" and mov.tipo_mov(+) = 'CR' "); strVal.Append(" and ins.id_evento = :id_evento "); strVal.Append(" and ins.id_participante = :id_participante "); strVal.Append(" group by ins.id_evento, ins.id_participante) cargo "); strVal.Append(" where abono.id_participante = cargo.id_participante(+) "); strVal.Append(" and abono.id_evento = cargo.id_evento(+) "); var valida = db.Database.SqlQuery <Movimiento>(strVal.ToString(), new object[] { obj.id_evento, obj.id_participante, obj.id_evento, obj.id_participante, }).SingleOrDefault <Movimiento>(); if (valida.monto_abonado == 0) { result.code = -1; result.message = "No es posible generar Nota de Crédito ya que no posee ningun Saldo Abonado para este Evento"; result.data = new Movimiento(); return(result); } if (obj.valor > valida.monto_abonado) { result.code = -1; result.message = "El Valor por el cual desea realizar la Nota de Crédito excede al Valor Abonado para este Evento, verifique el Saldo Abonado"; result.data = new Movimiento(); return(result); } StringBuilder strIns = new StringBuilder(); strIns.Append(" insert into movimientos "); strIns.Append(" (id_movimiento,id_participante,id_evento, tipo_mov, tipo_pago, descripcion, valor, fecha_movimiento, usuario_creacion, fecha_creacion) "); strIns.Append(" values( "); strIns.Append(" (select correlativo_disponible from correlativo where id_correlativo = 7 and estado_registro = 'A'), "); strIns.Append(" :id_participante, "); strIns.Append(" :id_evento, "); strIns.Append(" 'CR', "); strIns.Append(" :tipo_pago, "); strIns.Append(" 'Nota de Crédito que Afecta al Evento: '|| (select ev.nombre_evento from evento ev where ev.id_evento = :id_evento), "); strIns.Append(" :valor, "); strIns.Append(" sysdate, "); strIns.Append(" upper(:usuario), "); strIns.Append(" sysdate) "); var resp = db.Database.ExecuteSqlCommand(strIns.ToString(), new object[] { obj.id_participante, obj.id_evento, obj.tipo_pago, obj.id_evento, obj.valor, obj.usuario }); db.SaveChanges(); } result.code = 0; result.message = "Se ha generado la Nota de Crédito de forma existosa"; return(result); } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una excepcion al tratar de registrar la Nota de Crédito"; result.messageError = ex.ToString(); return(result); } }