public Response <recibo> actualizarRecibo(recibo obj) { Response <recibo> result = new Response <recibo>(); result.code = 1; result.message = "Ocurrio un error en base datos al tratar de actualizar el recibo"; result.data = new recibo(); if (obj.nombre == null || obj.nombre == "" || obj.pais == null || obj.pais == "" || obj.evento.Equals(null) || obj.opcion.Equals(null) || obj.valor.Equals(null) || obj.cantidad.Equals(null) || obj.total.Equals(null)) { result.code = -1; result.message = "Los datos: nombre, pais, opcion, precio, cantidad y total no pueden ser datos vacios, favor de verificar"; result.data = new recibo(); return(result); } try { //Se inicia la transaccion using (var trans = new System.Transactions.TransactionScope()) { using (var db = new EntitiesRecibo()) { //se busca el registro a actualizar SAG01_RECIBO regActual = (from c in db.SAG01_RECIBO where c.RECIBO == obj.idrecibo && c.ESTADO_REGISTRO == "A" select c).FirstOrDefault(); if (regActual == null) { result.code = 1; result.message = "No existe el recibo indicado"; return(result); } regActual.NOMBRE = obj.nombre; regActual.CANTIDAD = obj.cantidad; regActual.VALOR = obj.valor; regActual.DETALLE = obj.detalle; regActual.EVENTO = obj.evento; regActual.OPCION = obj.opcion; regActual.PAIS = obj.pais; regActual.USUARIO_MODIFICACION = usuario; regActual.FECHA_MODIFICACION = fecha; //se Actualiza la informacion del Recibo int res = db.SaveChanges(); if (res <= 0) { System.Transactions.Transaction.Current.Rollback(); result.code = 2; result.message = "No fue posible Actualizar los datos del Recibo"; return(result); } } //Se hace commit de los cambios trans.Complete(); result.code = 0; result.message = "Se Actualizo el Recibo de forma Exitosa"; return(result); } } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una excepcion al tratar de Actualizar el Recibo"; result.messageError = ex.ToString(); return(result); } }
public Response <recibo> anularRecibo(decimal rec) { Response <recibo> result = new Response <recibo>(); result.code = 1; result.message = "Ocurrio un error en Base de datos al tratar de Anular"; result.data = new recibo(); try { using (var trans = new System.Transactions.TransactionScope()) { using (var db = new EntitiesRecibo()) { //se busca el registro a actualizar SAG01_RECIBO regActual = (from c in db.SAG01_RECIBO where c.RECIBO == rec select c).FirstOrDefault(); if (regActual == null) { result.code = 1; result.message = "No existe el recibo indicado"; return(result); } if (regActual.ESTADO_REGISTRO != "A") { result.code = 1; result.message = "El Recibo ya se encuentra Anulado"; return(result); } regActual.ESTADO_REGISTRO = "N"; regActual.USUARIO_MODIFICACION = usuario; regActual.FECHA_MODIFICACION = fecha; //se Actualiza la informacion del Recibo int res = db.SaveChanges(); if (res <= 0) { System.Transactions.Transaction.Current.Rollback(); result.code = 2; result.message = "No fue posible Anular el Recibo"; return(result); } } //Se hace commit de los cambios trans.Complete(); result.code = 0; result.message = "Se Anulo el Recibo de forma Exitosa"; return(result); } } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una excepcion al tratar de Anular el Recibo"; result.messageError = ex.ToString(); return(result); } }
public Response <recibo> nuevoRecibo(recibo obj) { Response <recibo> result = new Response <recibo>(); result.code = 1; result.message = "Ocurrio un Error a nivel de Base de Datos al tratar de Guardar el Recibo"; result.data = new recibo(); if (obj.nombre == null || obj.nombre == "" || obj.pais_.idpais == null || obj.pais_.idpais == "" || obj.opcion_.opcion.Equals(null) || obj.valor.Equals(null) || obj.cantidad.Equals(null) || obj.total.Equals(null)) { result.code = -1; result.message = "Los datos: nombre, pais, opcion, precio, cantidad y total no pueden ser datos vacios, favor de verificar"; result.data = new recibo(); return(result); } try { //Se inicia la transaccion using (var tra = new System.Transactions.TransactionScope()) { using (var db = new EntitiesRecibo()) { //se obtiene el correlativo de la llave primaria SAG01_RECIBO de la tabla SAG01_CORRELATIVO var correlativo = (from c in db.SAG01_CORRELATIVO where c.CORRELATIVO == 1 && c.ESTADO_REGISTRO == "A" select c).SingleOrDefault(); if (correlativo == null) { result.code = 1; result.message = "No fue posible generar el Recibo"; return(result); } //Se guarda el registro del Recibo en la tabla SAG01_RECIBO SAG01_RECIBO re = new SAG01_RECIBO() { RECIBO = (int)correlativo.CORRELATIVO_DISPONIBLE, NOMBRE = obj.nombre, CANTIDAD = obj.cantidad, VALOR = obj.valor, TOTAL = obj.total, DETALLE = obj.detalle, EVENTO = obj.opcion_.evento, OPCION = obj.opcion_.opcion, PAIS = obj.pais_.idpais, ESTADO_REGISTRO = "A", USUARIO_CREACION = usuario, FECHA_CREACION = fecha }; db.SAG01_RECIBO.Add(re); correlativo.CORRELATIVO_DISPONIBLE++; int res = db.SaveChanges(); if (res <= 0) { System.Transactions.Transaction.Current.Rollback(); result.code = 2; result.message = "No fue posible generar el Recibo"; return(result); } correlativo.CORRELATIVO_DISPONIBLE--; result.data.idrecibo = (decimal)correlativo.CORRELATIVO_DISPONIBLE; } //Se hace commit de los cambios tra.Complete(); result.code = 0; result.message = "Se registro el Recibo de forma Exitosa"; return(result); } } catch (Exception ex) { result.code = -1; result.message = "Ocurrio una excepcion al tratar de registrar el Recibo"; result.messageError = ex.ToString(); return(result); } }