示例#1
0
 /// <summary>
 /// Agrega un vehiculo nuevo a la base de datos, verificando que no exista uno previamente.
 /// <seealso cref="BuscarCliente(string)"/>
 /// </summary>
 /// <param name="lcl"></param>
 public bool Create()
 {
     try
     {
         /*Intenta buscar el vehiculo asociado al rut del cliente que se desea agregar.*/
         var vehiculo = bbdd.Vehiculo.Where(x => x.Patente == Patente).SingleOrDefault();
         if (vehiculo != null)
         {
             /*En caso de que lo encuentre, levanta una excepción*/
             throw new Exception("Error! Ya existe un vehiculo con esa patente.");
         }
         /*No se encontró el rut del cliente, por lo que el cliente no existe.*/
         else
         {
             /*Agregamos el cliente*/
             BeLifeDatos.Vehiculo veh = new BeLifeDatos.Vehiculo();
             CommonBC.Syncronize(this, veh);
             bbdd.Vehiculo.Add(veh);
             bbdd.SaveChanges();
             return(true);
         }
     }
     catch (Exception ex)
     {
         /*En caso de encontrar alguna excepción, la imprime en consola y se la envía al WPF para controlar el mensaje*/
         Console.Write(ex);
         throw ex;
     }
 }
示例#2
0
        /// <summary>
        /// Actualiza un cliente con el rut dado
        /// Modifica sus valores con los valores del nuevo cliente (modifica todo menos el rut)
        /// </summary>
        public bool Update()
        {
            try
            {
                /*Busca cliente con el rut entregado*/
                var vehiculo = bbdd.Vehiculo.Where(x => x.Patente == Patente).SingleOrDefault();
                if (vehiculo != null)
                {
                    /*En caso de que el cliente no sea null, es decir, que lo haya encontrado, lo actualizamos y guardamos cambios.*/
                    CommonBC.Syncronize(this, vehiculo);
                    bbdd.SaveChanges();
                    return(true);
                }
                else
                {
                    /*En caso de no encontrar un cliente con el rut asociado, enviamos una excepción*/
                    throw new Exception("No se ha encontrado una patente coincidente.");
                }
            }
            catch (Exception ex)
            {
                /*En caso de encontrar alguna excepción, la imprime en consola y se la envía al WPF para controlar el mensaje*/
                Console.Write(ex);
                return(false);

                throw ex;
            }
        }
示例#3
0
        /// <summary>
        /// Busca un vehiculo que coincida con la patente entregada como parametro.
        /// En caso de ser encontrado, crea una nueva instancia Vehiculo de la librería de clases, y la retorna.
        /// </summary>
        /// <returns>this</returns>
        public Vehiculo Read()
        {
            try
            {
                /*Busca vehiculo con la patente entregada*/
                var vehiculo = bbdd.Vehiculo.Where(x => x.Patente == Patente).SingleOrDefault();

                /*Si el cliente es distinto a null, significa que se encontró, por lo que creamos un nuevo cliente de la
                 * librería de clases para retornar.*/
                if (vehiculo != null)
                {
                    CommonBC.Syncronize(vehiculo, this);
                    return(this);
                }
                else
                {
                    throw new Exception("No se ha encontrado un vehiculo con la patente asociada.");
                }
            }
            catch (Exception ex)
            {
                /*En caso de encontrar alguna excepción, la imprime en consola y se la envía al WPF para controlar el mensaje*/
                Console.Write(ex);
                throw ex;
            }
        }
示例#4
0
        public bool Delete()
        {
            try
            {
                /*Buscamos un contrato al rut*/
                var contrato = bbdd.Contrato.Where(x => x.Numero == Numero).SingleOrDefault();
                /*Si lo encuentra lo elimina*/
                if (contrato != null)
                {
                    this.Termino          = DateTime.Now;
                    this.FechaFinVigencia = DateTime.Now;
                    this.EstaVigente      = false;
                    CommonBC.Syncronize(this, contrato);
                    bbdd.SaveChanges();
                    return(true);
                }
                else
                {
                    /*Si no lo encuentra, levanta una excepción.*/
                    throw new Exception("Error! No se ha encontrado un numero que coinicida con algún contrato");
                }
            }
            catch (Exception ex)
            {
                /*En caso de encontrar alguna excepción, la imprime en consola y se la envía al WPF para controlar el mensaje*/
                Console.Write(ex);
                return(false);

                throw ex;
            }
        }
示例#5
0
        public bool Update()
        {
            try
            {
                /*Busca contrato con el numero entregado*/
                var contrato = bbdd.Contrato.Where(x => x.Numero == Numero).SingleOrDefault();
                if (contrato != null)
                {
                    /*En caso de que el contrato no sea null, es decir, que lo haya encontrado, lo actualizamos y guardamos cambios.*/
                    CommonBC.Syncronize(this, contrato);
                    bbdd.SaveChanges();
                    return(true);
                }
                else
                {
                    /*En caso de no encontrar un contrato con el numero asociado, enviamos una excepción*/
                    throw new Exception();
                }
            }
            catch (Exception ex)
            {
                /*En caso de encontrar alguna excepción, la imprime en consola y se la envía al WPF para controlar el mensaje*/
                Console.Write(ex);
                return(false);

                throw ex;
            }
        }
示例#6
0
        public Contrato Read()
        {
            try
            {
                /*Busca cliente con el rut entregado*/
                var contrato = bbdd.Contrato.Where(x => x.Numero == Numero).SingleOrDefault();

                /*Si el cliente es distinto a null, significa que se encontró, por lo que creamos un nuevo cliente de la
                 * librería de clases para retornar.*/
                if (contrato != null)
                {
                    CommonBC.Syncronize(contrato, this);
                    return(this);
                }
                else
                {
                    throw new Exception("Error! No se ha podido encontrar el contrato con el numero asociado.");
                }
            }
            catch (Exception ex)
            {
                /*En caso de encontrar alguna excepción, la imprime en consola y se la envía al WPF para controlar el mensaje*/
                Console.Write(ex);
                throw ex;
            }
        }
示例#7
0
 public Sexo BuscarSexo()
 {
     try
     {
         Sexo sex  = new Sexo();
         var  sexo = bbdd.Sexo.Where(x => x.Id == IdSexo);
         CommonBC.Syncronize(sexo, sex);
         return(sex);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
示例#8
0
 public EstadoCivil BuscarEstadoCivil()
 {
     try
     {
         EstadoCivil ec           = new EstadoCivil();
         var         estadoCivils = bbdd.EstadoCivil.Where(x => x.Id == IdEstadoCivil);
         CommonBC.Syncronize(estadoCivils, ec);
         return(ec);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
示例#9
0
        public Plan ReadByName()
        {
            var plan = bbdd.Plan.First(x => x.Nombre == Nombre);

            if (plan != null)
            {
                CommonBC.Syncronize(plan, this);
                return(this);
            }
            else
            {
                throw new Exception("Error! No se ha podido leer el plan correctamente.");
            }
        }
示例#10
0
        private static List <MarcaModeloVehiculo> SyncList(List <BeLifeDatos.MarcaModeloVehiculo> listaDatos)
        {
            List <MarcaModeloVehiculo> list = new List <MarcaModeloVehiculo>();


            foreach (var x in listaDatos)
            {
                MarcaModeloVehiculo MarcaModeloVehiculo = new MarcaModeloVehiculo();
                CommonBC.Syncronize(x, MarcaModeloVehiculo);
                list.Add(MarcaModeloVehiculo);
            }

            return(list);
        }
示例#11
0
        /// <summary>
        /// Buscamos todos los clientes de la base de datos con el sexo asociado y los convertimos a entidades
        /// </summary>
        /// <returns></returns>
        public List <Comuna> ReadAllByRegion(List <RegionComuna> listaregionescomunas)
        {
            List <Comuna> list      = new List <Comuna>();
            Comuna        comunalib = new Comuna();

            foreach (var y in listaregionescomunas)
            {
                var comuna = bbdd.Comuna.Where(x => x.Id == y.IdComuna).SingleOrDefault();
                CommonBC.Syncronize(comuna, comunalib);
                list.Add(comunalib);
            }

            return(list);
        }
示例#12
0
        /// <summary>
        /// Metodo para convertir una lista de contexto a lista legible por las librerias.
        /// </summary>
        /// <param name="listaDatos"></param>
        /// <returns></returns>
        private static List <Vehiculo> SyncList(List <BeLifeDatos.Vehiculo> listaDatos)
        {
            /*Creamos una lista de clientes*/
            List <Vehiculo> list = new List <Vehiculo>();

            /*Por cada elemento de la lista de clientes del contexto realizamos una sincronización y los agregamos a la lista de Clientes*/
            foreach (var x in listaDatos)
            {
                Vehiculo vehiculo = new Vehiculo();
                CommonBC.Syncronize(x, vehiculo);
                list.Add(vehiculo);
            }

            return(list);
        }
示例#13
0
        private static List <MarcaVehiculo> SyncList(List <BeLifeDatos.MarcaVehiculo> listaDatos)
        {
            /*Creamos una lista de EstadoCivils*/
            List <MarcaVehiculo> list = new List <MarcaVehiculo>();

            /*Por cada elemento de la lista de EstadoCivils del contexto realizamos una sincronización y los agregamos a la lista de EstadoCivils*/
            foreach (var x in listaDatos)
            {
                MarcaVehiculo MarcaVehiculo = new MarcaVehiculo();
                CommonBC.Syncronize(x, MarcaVehiculo);
                list.Add(MarcaVehiculo);
            }

            return(list);
        }
示例#14
0
        /// <summary>
        /// Metodo para convertir una lista de contexto a lista legible por las librerias.
        /// </summary>
        /// <param name="listaDatos"></param>
        /// <returns></returns>
        private static List <RegionComuna> SyncList(List <BeLifeDatos.RegionComuna> listaDatos)
        {
            /*Creamos una lista de Regiones*/
            List <RegionComuna> list = new List <RegionComuna>();

            /*Por cada elemento de la lista de Regiones del contexto realizamos una sincronización y los agregamos a la lista de Regiones*/
            foreach (var x in listaDatos)
            {
                RegionComuna regioncomuna = new RegionComuna();
                CommonBC.Syncronize(x, regioncomuna);
                list.Add(regioncomuna);
            }

            return(list);
        }
示例#15
0
        /// <summary>
        /// Metodo para convertir una lista de contexto a lista legible por las librerias.
        /// </summary>
        /// <param name="listaDatos"></param>
        /// <returns></returns>
        private static List <TipoContrato> SyncList(List <BeLifeDatos.TipoContrato> listaDatos)
        {
            /*Creamos una lista de TipoContratos*/
            List <TipoContrato> list = new List <TipoContrato>();

            /*Por cada elemento de la lista de TipoContratos del contexto realizamos una sincronización y los agregamos a la lista de TipoContratos*/
            foreach (var x in listaDatos)
            {
                TipoContrato TipoContrato = new TipoContrato();
                CommonBC.Syncronize(x, TipoContrato);
                list.Add(TipoContrato);
            }

            return(list);
        }
示例#16
0
        private List <Plan> SyncList(List <BeLifeDatos.Plan> listaDatos)
        {
            /*Creamos una lista de planes*/
            List <Plan> list = new List <Plan>();

            /*Por cada elemento de la lista de planes del contexto realizamos una sincronización y los agregamos a la lista de Planes*/
            foreach (var x in listaDatos)
            {
                Plan Plan = new Plan();
                CommonBC.Syncronize(x, Plan);
                list.Add(Plan);
            }

            return(list);
        }
示例#17
0
        /// <summary>
        /// Metodo para convertir una lista de contexto a lista legible por las librerias.
        /// </summary>
        /// <param name="listaDatos"></param>
        /// <returns></returns>
        private static List <Sexo> SyncList(List <BeLifeDatos.Sexo> listaDatos)
        {
            /*Creamos una lista de Sexos*/
            List <Sexo> list = new List <Sexo>();

            /*Por cada elemento de la lista de Sexos del contexto realizamos una sincronización y los agregamos a la lista de Sexos*/
            foreach (var x in listaDatos)
            {
                Sexo Sexo = new Sexo();
                CommonBC.Syncronize(x, Sexo);
                list.Add(Sexo);
            }

            return(list);
        }
示例#18
0
        /// <summary>
        /// Metodo para convertir una lista de contexto a lista legible por las librerias.
        /// </summary>
        /// <param name="listaDatos"></param>
        /// <returns></returns>
        private static List <Cliente> SyncList(List <BeLifeDatos.Cliente> listaDatos)
        {
            /*Creamos una lista de clientes*/
            List <Cliente> list = new List <Cliente>();

            /*Por cada elemento de la lista de clientes del contexto realizamos una sincronización y los agregamos a la lista de Clientes*/
            foreach (var x in listaDatos)
            {
                Cliente Cliente = new Cliente();
                CommonBC.Syncronize(x, Cliente);
                list.Add(Cliente);
            }

            return(list);
        }
示例#19
0
        /// <summary>
        /// Metodo para convertir una lista de contexto a lista legible por las librerias.
        /// </summary>
        /// <param name="listaDatos"></param>
        /// <returns></returns>
        private static List <EstadoCivil> SyncList(List <BeLifeDatos.EstadoCivil> listaDatos)
        {
            /*Creamos una lista de EstadoCivils*/
            List <EstadoCivil> list = new List <EstadoCivil>();

            /*Por cada elemento de la lista de EstadoCivils del contexto realizamos una sincronización y los agregamos a la lista de EstadoCivils*/
            foreach (var x in listaDatos)
            {
                EstadoCivil EstadoCivil = new EstadoCivil();
                CommonBC.Syncronize(x, EstadoCivil);
                list.Add(EstadoCivil);
            }

            return(list);
        }
示例#20
0
        /// <summary>
        /// Creamos el nuevo contrato dentro de la base de datos.
        /// Verifica que el contrato no exista, según su numero de contrato.
        /// </summary>
        /// <returns></returns>
        public bool Create()
        {
            try
            {
                /* Intenta buscar el ccontrato asociado al numero de contrato que se desea agregar.*/
                var contrato = bbdd.Contrato.Where(x => x.Numero == Numero).SingleOrDefault();
                if (contrato != null)
                {
                    /* En caso de que lo encuentre, levanta una excepción */
                    throw new Exception("Error! Ya existe un contrato con ese numero.");
                }
                /* No se encontró el numero del contrato, por lo que el contrato no existe.*/
                else
                {
                    /* Agregamos el contrato*/
                    BeLifeDatos.Contrato con = new BeLifeDatos.Contrato();

                    con.RutCliente          = this.Titular.Rut;
                    con.CodigoPlan          = this.PlanAsociado.Id;
                    con.Cliente             = bbdd.Cliente.FirstOrDefault(r => r.Rut == this.Titular.Rut);
                    con.Plan                = bbdd.Plan.FirstOrDefault(p => p.Id == this.PlanAsociado.Id);
                    con.FechaCreacion       = this.FechaCreacion;
                    con.FechaInicioVigencia = this.FechaInicioVigencia;
                    con.FechaFinVigencia    = this.FechaFinVigencia;
                    CommonBC.Syncronize(this, con);

                    bbdd.Contrato.Add(con);
                    bbdd.SaveChanges();
                    return(true);
                }
            }

            catch (Exception ex)
            {
                /* En caso de encontrar alguna excepción, la imprime en consola y se la envía al WPF para controlar el mensaje*/
                Console.Write(ex.InnerException);
                return(false);
            }
        }