Beispiel #1
0
        public void DomicilioSave(DomicilioModel modelo, int idEmpresa)
        {
            if (modelo == null)
            {
                throw new BaseException("Debe asignar un domicilio a la empresa externa.");
            }
            var entidad = Mapper.Map <DomicilioModel, Domicilio>(modelo);

            if (entidad == null)
            {
                entidad = new Domicilio();
            }
            if (modelo.IdCalle > 0)
            {
                var calle = DaoProvider.GetDaoCalle().GetById(modelo.IdCalle);
                entidad.Calle     = calle;
                entidad.TipoCalle = calle.TipoCalle;
            }
            entidad.Altura       = modelo.Altura;
            entidad.Piso         = modelo.Piso;
            entidad.Departamento = modelo.Departamento;
            entidad.Torre        = modelo.Torre;

            var localidad = DaoProvider.GetDaoLocalidad().GetById(modelo.IdLocalidad);

            entidad.Localidad = localidad;
            entidad.Provincia = localidad.Provincia;
            entidad.DepartamentoProvincial = localidad.DepartamentoProvincial;
            entidad.Barrio    = DaoProvider.GetDaoBarrio().GetById(modelo.IdBarrio);
            entidad.Origen    = OrigenEnum.T_DO_EMP_EXTERNA;
            entidad.EntidadId = idEmpresa.ToString();
            DaoProvider.GetDaoDomicilio().Save(entidad);
        }
Beispiel #2
0
        private void GuardarAgente(AgenteModel model)
        {
            DomicilioModel domicilio = null;

            if (model.Persona != null && model.Persona.Domicilio != null)
            {
                domicilio = model.Persona.Domicilio;
                model.Persona.Domicilio = null;
            }
            if (model.Id == 0)
            {
                model = Rule.AgenteSave(model);
            }
            else
            {
                model = Rule.AgenteUpdate(model, ListaVinculos);
            }
            if (domicilio != null && model.Persona.Id.HasValue)
            {
                ServiceLocator.Current.GetInstance <IDomicilioRules>().DomicilioPersonaFisicaSaveOUpdate(
                    domicilio,
                    model.Persona.Id.Value,
                    OrigenEnum.T_PER_FISICA);
            }
            Agente = model;
        }
Beispiel #3
0
        public override void EditarPost(EmpresaExternaModel model)
        {
            DomicilioModel domicilio = null;

            domicilio = model.Domicilio;
            var empresa = Rule.EmpresaExternaUpdateOrSave(model);

            if (domicilio != null)
            {
                Rule.DomicilioSave(domicilio, empresa.Id);
            }
        }
Beispiel #4
0
        public override void RegistrarPost(EmpresaExternaModel model)
        {
            DomicilioModel domicilio          = null;
            bool           domicilioReferente = false;
            bool           domicilioPJ        = false;

            if (model.Domicilio == null && (model.AsignarDomiPersonaF == false) && (model.AsignarDomiPersonaJ == false))
            {
                throw new ApplicationException("es necesario asignar un domicilio a la empresa externa");
            }

            if (model.Domicilio != null)
            {
                domicilio = model.Domicilio;
            }

            else if (model.AsignarDomiPersonaF && model.Referente.Domicilio != null)
            {
                domicilio = model.Referente.Domicilio;
                model.Referente.Domicilio = null;
                domicilioReferente        = true;
            }
            else if (model.AsignarDomiPersonaJ && model.PersonaJuridica.Domicilio != null)
            {
                domicilio = model.PersonaJuridica.Domicilio;
                model.PersonaJuridica.Domicilio = null;
                domicilioPJ = true;
            }

            var empresa = Rule.EmpresaExternaSave(model);

            Rule.DomicilioSave(domicilio, empresa.Id);
            if (domicilioReferente && empresa.Referente.Id.HasValue)
            {
                Rule.DomicilioSave(domicilio, empresa.Referente.Id.Value);
            }
            if (domicilioPJ && empresa.PersonaJuridica.Id.HasValue)
            {
                Rule.DomicilioSave(domicilio, empresa.PersonaJuridica.Id.Value);
            }
        }