Example #1
0
        /// <summary>
        /// Este metodo se encarga de mapear manualmente losd atos entre objetos del dominio y objetos de la viewmodel
        /// </summary>
        /// <param name="familiaresVM">recibe una entidad del tipo viewmodel</param>
        /// <returns>regresa una entidad del tipo familiaresdomainmodel</returns>
        private FamiliaresDomainModel MapperObject(FamiliaresVM familiaresVM)
        {
            FamiliaresDomainModel familiaresDomainModel = new FamiliaresDomainModel();

            familiaresDomainModel.PadreDomainModel              = new FamiliarDomainModel();
            familiaresDomainModel.PadreDomainModel.IdPersonal   = familiaresVM.PadreVM.IdPersonal;
            familiaresDomainModel.PadreDomainModel.IdParentesco = familiaresVM.PadreVM.IdParentesco;
            familiaresDomainModel.PadreDomainModel.StrNombre    = familiaresVM.PadreVM.StrNombre;
            familiaresDomainModel.PadreDomainModel.StrOcupacion = familiaresVM.PadreVM.StrOcupacion;
            familiaresDomainModel.PadreDomainModel.StrDomicilio = familiaresVM.PadreVM.StrDomicilio;
            familiaresDomainModel.PadreDomainModel.IntEdad      = familiaresVM.PadreVM.IntEdad;
            familiaresDomainModel.PadreDomainModel.BitVive      = familiaresVM.PadreVM.BitVive;

            familiaresDomainModel.MadreDomainModel              = new FamiliarDomainModel();
            familiaresDomainModel.MadreDomainModel.IdPersonal   = familiaresVM.MadreVM.IdPersonal;
            familiaresDomainModel.MadreDomainModel.IdParentesco = familiaresVM.MadreVM.IdParentesco;
            familiaresDomainModel.MadreDomainModel.StrNombre    = familiaresVM.MadreVM.StrNombre;
            familiaresDomainModel.MadreDomainModel.StrOcupacion = familiaresVM.MadreVM.StrOcupacion;
            familiaresDomainModel.MadreDomainModel.StrDomicilio = familiaresVM.MadreVM.StrDomicilio;
            familiaresDomainModel.MadreDomainModel.IntEdad      = familiaresVM.MadreVM.IntEdad;
            familiaresDomainModel.MadreDomainModel.BitVive      = familiaresVM.MadreVM.BitVive;

            familiaresDomainModel.ParejaDomainModel              = new FamiliarDomainModel();
            familiaresDomainModel.ParejaDomainModel.IdPersonal   = familiaresVM.ParejaVM.IdPersonal;
            familiaresDomainModel.ParejaDomainModel.IdParentesco = familiaresVM.ParejaVM.IdParentesco;
            familiaresDomainModel.ParejaDomainModel.StrNombre    = familiaresVM.ParejaVM.StrNombre;
            familiaresDomainModel.ParejaDomainModel.StrOcupacion = familiaresVM.ParejaVM.StrOcupacion;
            familiaresDomainModel.ParejaDomainModel.StrDomicilio = familiaresVM.ParejaVM.StrDomicilio;
            familiaresDomainModel.ParejaDomainModel.IntEdad      = familiaresVM.ParejaVM.IntEdad;
            familiaresDomainModel.ParejaDomainModel.BitVive      = familiaresVM.ParejaVM.BitVive;
            return(familiaresDomainModel);
        }
        /// <summary>
        /// Este metodo se encarga de insertar todos los familiares del personal
        /// </summary>
        /// <param name="familiaresDM">recibe como parametro la entidad familiaresDM</param>
        /// <returns>regresa una respuesta del tipo boolean </returns>
        public bool AddFamiliares(FamiliaresDomainModel familiaresDM)
        {
            bool               respuesta  = false;
            string             resultado  = string.Empty;
            List <catFamiliar> familiares = new List <catFamiliar>();
            //inserciĆ³n de familair padre
            catFamiliar catFamiliarPadre = new catFamiliar();

            catFamiliarPadre.idParentesco = familiaresDM.PadreDomainModel.IdParentesco;
            catFamiliarPadre.idPersonal   = familiaresDM.PadreDomainModel.IdPersonal;
            catFamiliarPadre.strNombre    = familiaresDM.PadreDomainModel.StrNombre;
            catFamiliarPadre.strOcupacion = familiaresDM.PadreDomainModel.StrOcupacion;
            catFamiliarPadre.strDomicilio = familiaresDM.PadreDomainModel.StrDomicilio;
            catFamiliarPadre.intEdad      = familiaresDM.PadreDomainModel.IntEdad;
            catFamiliarPadre.bitVive      = familiaresDM.PadreDomainModel.BitVive;
            familiares.Add(catFamiliarPadre);

            catFamiliar catFamiliarMadre = new catFamiliar();

            catFamiliarMadre.idPersonal   = familiaresDM.MadreDomainModel.IdPersonal;
            catFamiliarMadre.idParentesco = familiaresDM.MadreDomainModel.IdParentesco;
            catFamiliarMadre.strNombre    = familiaresDM.MadreDomainModel.StrNombre;
            catFamiliarMadre.strOcupacion = familiaresDM.MadreDomainModel.StrOcupacion;
            catFamiliarMadre.strDomicilio = familiaresDM.MadreDomainModel.StrDomicilio;
            catFamiliarMadre.intEdad      = familiaresDM.MadreDomainModel.IntEdad;
            catFamiliarMadre.bitVive      = familiaresDM.MadreDomainModel.BitVive;
            familiares.Add(catFamiliarMadre);

            catFamiliar catFamiliarPareja = new catFamiliar();

            catFamiliarPareja.idPersonal   = familiaresDM.ParejaDomainModel.IdPersonal;
            catFamiliarPareja.idParentesco = familiaresDM.ParejaDomainModel.IdParentesco;
            catFamiliarPareja.strNombre    = familiaresDM.ParejaDomainModel.StrNombre;
            catFamiliarPareja.strOcupacion = familiaresDM.ParejaDomainModel.StrOcupacion;
            catFamiliarPareja.strDomicilio = familiaresDM.ParejaDomainModel.StrDomicilio;
            catFamiliarPareja.intEdad      = familiaresDM.ParejaDomainModel.IntEdad;
            catFamiliarPareja.bitVive      = familiaresDM.ParejaDomainModel.BitVive;
            familiares.Add(catFamiliarPareja);


            foreach (catFamiliar familiar in familiares)
            {
                Expression <Func <catFamiliar, bool> > predicado = p => p.idParentesco == familiar.idParentesco || p.idParentesco == familiar.idParentesco || p.idParentesco == familiar.idParentesco;
                if (familiarRepository.SingleOrDefault(predicado) == null)
                {
                    if (familiar.idParentesco > 1)
                    {
                        familiarRepository.Insert(familiar);
                    }
                }
            }
            resultado = "Se insertaron correctamente los valores";
            respuesta = true;
            return(respuesta);
        }