예제 #1
0
        public Persona FindPersonabyRFC(string rfc)
        {
            Persona wsPersona;

            if (Convert.ToBoolean(_catalogoRepository.GetGlobalParam((int)globalParam.WSSiseAvailable)))
            {
                Integration.WsAsegurado ws = new Integration.WsAsegurado();
                wsPersona = ws.ConsultarPersona(rfc);
            }
            else
            {
                wsPersona = null;
            }

            if (wsPersona == null)
            {
                return(null);
            }

            IUnitOfWork unitOfWork = _personaRepository.UnitOfWork as IUnitOfWork;

            Persona entPersona = _personaRepository.GetPersonabyRFC(rfc);

            if (entPersona == null)
            {
                wsPersona.PersonaID = _personaRepository.LastPersonaID() + 1;
                _personaRepository.Add(wsPersona);
            }
            else
            {
                entPersona.Nombres      = wsPersona.Nombres;
                entPersona.Apellido1    = wsPersona.Apellido1;
                entPersona.Apellido2    = wsPersona.Apellido2;
                entPersona.RazonSocial  = wsPersona.RazonSocial;
                entPersona.SISEcod_Aseg = wsPersona.SISEcod_Aseg;
                _personaRepository.Modify(entPersona);
            }

            unitOfWork.Commit();

            return(wsPersona);

            //return new Persona() { RFC = "ABCD010101ABC", Nombres = "Prueba", Apellido1 = "Apellido 1", Apellido2 = "Apellido 2", PersonaID = 27 };
        }