示例#1
0
        public int Agregar()
        {
            int result = -1;

            try
            {
                using (var db = new ModeloContainer())
                {
                    //Guardando el abono
                    db.AbonoSet.Add(data);
                    result = db.SaveChanges();
                    //Actualizando el saldo
                    var saldo = db.Saldo_detalleSet.First(x => x.id_detalle == data.id_detalle);
                    saldo.Saldo -= data.Monto;
                    if (saldo.Saldo <= 0)
                    {
                        var det = db.DetalleSet.First(x => x.IdDetalle == data.id_detalle);
                        det.Cancelado = true;
                    }
                    result = db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
示例#2
0
        }//fin del metodo agregar

        /// <summary>
        /// metodo para modificar los datos de un socio
        /// </summary>
        /// <returns>retorna 1 si los datos se modificaron correctamente de lo contrario retorna -1</returns>
        public int modificar()
        {
            int result = -1;

            try
            {
                using (var db = new ModeloContainer())
                {
                    //Buscando a una persona con los datos especificados
                    var mod = (from u in db.SocioSet where u.Personas.Identificacion == so.Personas.Identificacion select u).First();

                    //cambio del valor de los atributos de un socio
                    mod.Personas.Identificacion = so.Personas.Identificacion;
                    mod.Personas.Nombres        = so.Personas.Nombres;
                    mod.Personas.Apellidos      = so.Personas.Apellidos;
                    mod.Personas.Direccion      = so.Personas.Direccion;
                    mod.Personas.Telefono       = so.Personas.Telefono;
                    mod.Personas.Correo         = so.Personas.Correo;
                    mod.Personas.Activo         = so.Personas.Activo;
                    result = db.SaveChanges();
                    //Actualizando el socio
                    var sociom = (from socio in db.SocioSet where socio.Id_socio == mod.Personas.Id_persona select socio).First();
                    sociom.FechaAsociacion = so.FechaAsociacion;
                    result += db.SaveChanges();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("error " + e.Message);
            }
            return(result);
        }//fin del metodo modificar
示例#3
0
        /// <summary>
        /// Permite anular una transaccion existente
        /// </summary>
        /// <returns>un numero mayor a 1 en caso satisfactorio, -1 en caso contrario</returns>
        public int anular()
        {
            int result = -1;

            using (var db = new ModeloContainer())
            {
                try
                {
                    /// Obteniendo la transaccion y el detalle
                    /// para ser anulados.
                    var temp = (from u in db.TransaccionSet
                                where u.IdTransaccion == tran.IdTransaccion && u.Activo
                                select u).First();
                    temp.Activo = false;
                    var gastos = (from item in db.DetalleSet where item.IdTransaccion.Equals(temp.IdTransaccion) select item);
                    foreach (var item in gastos)
                    {
                        item.Activo = false;
                    }
                    //Si es un abono la transaccion eliminamos el abono
                    foreach (var item in temp.Abono)
                    {
                        //Buscamos el saldo
                        var saldo = (from x in db.Saldo_detalleSet where x.id_detalle == item.id_detalle select x).First();
                        //Devolvemos el monto debitado
                        saldo.Saldo += item.Monto;
                        if (saldo.Detalle.Cancelado)
                        {
                            saldo.Detalle.Cancelado = false;
                        }
                    }
                    //Removemos el abono de la base de datos
                    //Buscamos un abono
                    if (temp.Abono.Count > 0)
                    {
                        db.AbonoSet.Remove(temp.Abono.First());
                    }
                    result = db.SaveChanges();
                    //REvisando si hay Creditos en la Factura
                    var list = temp.Egreso.Where(x => x.TipoDetalle == 2).ToList();
                    foreach (var item in list)
                    {
                        //Buscar el saldo
                        var saldo = db.Saldo_detalleSet.First(x => x.id_detalle.Equals(item.IdDetalle));
                        db.Saldo_detalleSet.Remove(saldo);
                    }
                    result = db.SaveChanges();
                }
                catch (Exception ex)
                {
                    throw new Exception("No se pudo Eliminar el elemento", ex);
                }
            }
            return(result);
        }
示例#4
0
 public int anular()
 {
     try
     {
         int result = -1;
         using (var db = new ModeloContainer())
         {
             //Buscando el abono
             var abono = db.AbonoSet.FirstOrDefault(x => x.Id_abono.Equals(data.Id_abono));
             if (abono != null)
             {
                 var transact = db.TransaccionSet.FirstOrDefault(x => x.IdTransaccion.Equals(abono.Id_transaccion));
                 //Marcamos como anulada
                 transact.Activo = false;
                 //Guardamos los cambios
                 result = db.SaveChanges();
             }
         }
         return(result);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
示例#5
0
        /// <summary>
        /// Permite agregar una nueva transaccion al modelo de datos
        /// </summary>
        /// <returns>1 si tuvo exito, -1 en caso contrario</returns>
        public int agregar()
        {
            int result = -1;

            using (var db = new ModeloContainer())
            {
                try
                {
                    var temp  = db.UsuariosSet.First(x => x.Id_usuario == tran.Id_usuario);
                    var temp1 = db.VehiculoSet.First(x => x.Id_Vehiculo == tran.Id_Vehiculo);
                    if (temp == null || temp1 == null)
                    {
                        throw new Exception("No existe el usuario o el vehiculo");
                    }
                    else
                    {
                        db.TransaccionSet.Add(tran);
                        result = db.SaveChanges();
                    }
                }
                catch (Exception ex)
                {
                    throw new Exception("No se pudo ingresar el elemento", ex);
                }
            }

            return(result);
        }
示例#6
0
        /// <summary>
        /// Permite modificar un Conductor existente
        /// </summary>
        /// <returns>Devuelve 1 en caso de haber ejecutado con exito, -1 en caso contrario</returns>
        public int modificar()
        {
            int result = -1;

            try
            {
                using (var db = new ModeloContainer())
                {
                    var mod = (from u in db.ConductorSet
                               where u.Id_conductor == chof.Id_conductor
                               select u).First();
                    //Cambio de nombres
                    //mod.Id_persona = user.Id_persona;
                    mod.Personas.Identificacion = chof.Personas.Identificacion;
                    mod.Personas.Nombres        = chof.Personas.Nombres;
                    mod.Personas.Apellidos      = chof.Personas.Apellidos;
                    mod.Personas.Telefono       = chof.Personas.Telefono;
                    mod.Personas.Correo         = chof.Personas.Correo;
                    mod.Personas.Direccion      = chof.Personas.Direccion;
                    mod.Licencia        = chof.Licencia;
                    mod.Personas.Activo = chof.Personas.Activo;
                    result = db.SaveChanges();
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(result);
        }
示例#7
0
        public int eliminar()
        {
            int result;

            try
            {
                using (var db = new ModeloContainer())
                {
                    //Buscando el vehiculo
                    var tmp = db.VehiculoSet.First(x => x.Id_Vehiculo == vehiculo.Id_Vehiculo);
                    if (tmp != null)
                    {
                        tmp.Activo = false;
                        result     = db.SaveChanges();
                    }
                    else
                    {
                        result = -1;
                    }
                }
            }
            catch (Exception)
            {
                result = -1;
                throw;
            }
            return(result);
        }
示例#8
0
        /// <summary>
        /// Modifica un vehiculo existente
        /// </summary>
        /// <returns>1 en caso de exito, -1 en caso contrario</returns>
        public int modificar()
        {
            int result = -1;

            try
            {
                using (var db = new ModeloContainer())
                {
                    var mod = (from v in db.VehiculoSet
                               where v.Id_Vehiculo == vehiculo.Id_Vehiculo
                               select v).First();

                    //mod.Id_Propietario = vehiculo.Id_Propietario;
                    mod.Placa  = vehiculo.Placa;
                    mod.Modelo = vehiculo.Modelo;
                    mod.Marca  = vehiculo.Marca;
                    result     = db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }

            return(result);
        }
示例#9
0
        public int Modificar()
        {
            int result = -1;

            try
            {
                using (var db = new ModeloContainer())
                {
                    var mod = (from u in db.UsuariosSet
                               where u.Personas.Identificacion == user.Personas.Identificacion && u.Personas.Activo
                               select u).First();
                    //Cambio de nombres
                    //mod.Id_persona = user.Id_persona;
                    var persona = (from p in db.PersonasSet
                                   where p.Id_persona == mod.Personas.Id_persona
                                   select p).First();
                    /* Datos de usuario */
                    mod.Id_tipo         = user.Id_tipo;
                    mod.Personas.Activo = user.Personas.Activo;
                    mod.Nickname        = user.Nickname;
                    mod.Clave           = user.Clave;
                    result = db.SaveChanges();
                    /* Datos de persona */
                    persona.Identificacion = user.Personas.Identificacion;
                    persona.Nombres        = user.Personas.Nombres;
                    persona.Apellidos      = user.Personas.Apellidos;
                    persona.Telefono       = user.Personas.Telefono;
                    persona.Correo         = user.Personas.Correo;
                    persona.Direccion      = user.Personas.Direccion;

                    result += db.SaveChanges();
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(result);
        }
示例#10
0
        /// <summary>
        /// metodo para agregar un socio
        /// </summary>
        /// <returns>retorna 1 en caso de ser agregado correctamente de lo contrario retorna -1</returns>
        public int agregar()
        {
            int result = -1;

            using (var db = new ModeloContainer())
            {
                try
                {
                    db.PersonasSet.Add(so.Personas);
                    db.SaveChanges();
                    so.Id_socio = (from item in db.PersonasSet orderby item.Id_persona descending select item).FirstOrDefault().Id_persona;

                    db.SocioSet.Add(so);
                    result = db.SaveChanges();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                return(result);
            }
        }//fin del metodo agregar
示例#11
0
        /// <summary>
        /// Permite agregar un nuevo conductor al modelo de datos
        /// </summary>
        /// <returns>Devuelve 1 en caso de haber ejecutado con exito, -1 en caso contrario</returns>
        public int agregar()
        {
            int result = -1;

            using (var db = new ModeloContainer())
            {
                try
                {
                    var temp  = db.PersonasSet.First(x => x.Identificacion == data.Identificacion && (x.Activo));
                    var temp1 = db.ConductorSet.First(x => x.Licencia == chof.Licencia);
                    if (temp != null && temp1 != null)
                    {
                        result = 0;
                    }
                    throw new Exception("Conductor Duplicado!");
                }
                catch (Exception)
                {
                    try
                    {
                        //Agregando Persona
                        db.PersonasSet.Add(chof.Personas);
                        db.SaveChanges();
                        //Obteniendo ID
                        chof.Id_conductor = (from item in db.PersonasSet orderby item.Id_persona descending select item).FirstOrDefault().Id_persona;
                        //Agregando Conductor
                        db.ConductorSet.Add(chof);
                        result = db.SaveChanges();
                    }
                    catch (Exception ex)
                    {
                        throw ex;
                    }
                }

                return(result);
            }
        }
示例#12
0
        /// <summary>
        /// Permite agregar un nuevo detalle de una transaccion especifica
        /// </summary>
        /// <returns>1 en caso de tener exito, -1 en caso contrario</returns>
        public int agregar()
        {
            int result = -1;

            using (var db = new ModeloContainer())
            {
                try
                {
                    var temp = db.TransaccionSet.First(x => x.IdTransaccion == det.IdTransaccion);
                    if (temp == null)
                    {
                        throw new Exception("El numero de transaccion ingresado no existe");
                    }
                    else
                    {
                        db.DetalleSet.Add(det);
                        result = db.SaveChanges();
                        if (det.TipoTransaccion == 2) //Si es credito
                        {
                            //Obtener el id del detalle agregado
                            int id  = (from item in db.DetalleSet orderby item.IdDetalle descending select item.IdDetalle).First();
                            var tmp = new Saldo_detalle {
                                id_detalle = id, Saldo = det.Cantidad, Detalle = det
                            };
                            db.Saldo_detalleSet.Add(tmp);
                            result = db.SaveChanges();
                        }
                    }
                }
                catch (Exception ex)
                {
                    result = -1;
                    throw new Exception("No se pudo ingresar el elemento", ex);
                }
            }
            return(result);
        }
示例#13
0
        public int agregar()
        {
            int result = -1;

            using (var db = new ModeloContainer())
            {
                try
                {
                    //Validar Existencias
                    var tmp  = db.UsuariosSet.First(x => x.Nickname == user.Nickname && user.Personas.Activo);
                    var tmp2 = db.PersonasSet.First(x => x.Identificacion == user.Personas.Identificacion && x.Activo);
                    if (tmp != null && tmp2 != null)
                    {
                        throw new Exception("Usuario Duplicado!");
                    }
                }
                catch (Exception)
                {
                    try
                    {
                        //Agregando el registro de persona
                        db.PersonasSet.Add(user.Personas);
                        db.SaveChanges();
                        //obteniendo el ultimo id agregado
                        user.Personas   = (from item in db.PersonasSet orderby item.Id_persona descending select item).FirstOrDefault();
                        user.Id_usuario = user.Personas.Id_persona;
                        db.UsuariosSet.Add(user);
                        result = db.SaveChanges();
                    }
                    catch (Exception e)
                    {
                        throw new Exception("No se pudo ingresar el elemento", e);
                    }
                }
            }
            return(result);
        }
示例#14
0
 public int agregar()
 {
     try
     {
         int result = -1;
         using (var db = new ModeloContainer())
         {
             db.TipoDetalleSet.Add(this.td);
             result = db.SaveChanges();
         }
         return(result);
     }
     catch (Exception ex)
     {
         throw new Exception("Error durante la insercion", ex.InnerException);
     }
 }
示例#15
0
 public int agregar()
 {
     try
     {
         int result = -1;
         using (var db = new ModeloContainer())
         {
             db.TipoUsuarioSet.Add(this.tipo);
             result = db.SaveChanges();
         }
         return(result);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
示例#16
0
        /// <summary>
        /// Agregar un vehiculo a la capa de datos
        /// </summary>
        /// <returns></returns>
        public int agregar()
        {
            int result = -1;

            using (var db = new ModeloContainer())
            {
                try
                {
                    //Verificar si no existe un vehiculo con la misma placa
                    db.VehiculoSet.Add(vehiculo);
                    result = db.SaveChanges();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }
            return(result);
        }
示例#17
0
        public int cambiarEstado()
        {
            int result = -1;

            try
            {
                using (var db = new ModeloContainer())
                {
                    var v = db.VehiculoSet.FirstOrDefault(x => x.Placa == this.vehiculo.Placa);
                    v.Activo = !v.Activo;
                    result   = db.SaveChanges();
                }
                return(result);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
示例#18
0
 public int eliminar()
 {
     try
     {
         int result = -1;
         using (var db = new ModeloContainer())
         {
             //Buscando el registro para eliminar
             var r = (from item in db.TipoDetalleSet where item.IdTipoDetalle.Equals(this.td.IdTipoDetalle) select item).FirstOrDefault();
             r.Activo = false;
             result   = db.SaveChanges();
         }
         return(result);
     }
     catch (Exception ex)
     {
         throw new Exception("Error durante la eliminacion de los datos", ex.InnerException);
     }
 }
示例#19
0
        /// <summary>
        /// Permite anular un detalle existente
        /// </summary>
        /// <returns>1 si tiene exito, -1 en caso contario</returns>
        public int anular()
        {
            int result = -1;

            using (var db = new ModeloContainer())
            {
                try
                {
                    var temp = (from u in db.DetalleSet where u.IdDetalle == det.IdDetalle select u).First();
                    temp.Activo = false;
                    db.SaveChanges();
                }
                catch (Exception ex)
                {
                    throw new Exception("No se pudo insertar el elemento", ex);
                }
            }
            return(result);
        }
示例#20
0
        public int Eliminar()
        {
            int result = -1;

            try
            {
                using (var db = new ModeloContainer())
                {
                    var eliminable = db.CarreraSet.FirstOrDefault(x => x.Id_carrera.Equals(carrera.Id_carrera));
                    eliminable.Activo = false;
                    result            = db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }
示例#21
0
        /// <summary>
        /// Permite la eliminacion logica de un elemento dentro de la base de datos
        /// </summary>
        /// <returns> 1 en caso de realizar la eliminacion, -1 en caso de error</returns>
        public int eliminar()
        {
            int result;

            try
            {
                using (var db = new ModeloContainer())
                {
                    var tmp = db.UsuariosSet.First(x => x.Personas.Identificacion.Equals(user.Personas.Identificacion) && x.Personas.Activo);
                    tmp.Personas.Activo = false;
                    result = db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                result = -1;
                throw new Exception("No se pudo eliminar el registro", ex);
            }
            return(result);
        }
示例#22
0
 public int modificar()
 {
     try
     {
         int cambios = -1;
         using (var db = new ModeloContainer())
         {
             //Obtener registro
             var registro = (from item in db.TipoDetalleSet where item.IdTipoDetalle.Equals(this.td.IdTipoDetalle) select item).FirstOrDefault();
             //Ingresar cambios
             registro.Descripcion = this.td.Descripcion;
             cambios = db.SaveChanges();
         }
         return(cambios);
     }
     catch (Exception ex)
     {
         throw new Exception("Error durante la actualizacion de los registros", ex.InnerException);
     }
 }
示例#23
0
        public int Agregar()
        {
            int result = -1;

            try
            {
                using (var db = new ModeloContainer())
                {
                    //Guardando transaccion
                    db.CarreraSet.Add(carrera);
                    result = db.SaveChanges();
                    if (result == -1)
                    {
                        throw new Exception("No se pudo ingresar la carrera");
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(result);
        }