Ejemplo n.º 1
0
        public IActionResult Update([FromBody] AddressDto addressDto)
        {
            if (addressDto == null)
            {
                return(BadRequest("Null address"));
            }

            try
            {
                // map dto to entity
                Address address = _mapper.Map <Address>(addressDto);
                if (address == null)
                {
                    return(BadRequest("Null address"));
                }

                Address         addressToUpdate = _personUnit.AddressRepository.Get(address.AddressId);
                BinnacleAddress binnacleAddress = _mapper.Map <BinnacleAddress>(addressToUpdate);
                binnacleAddress.CreationDate = DatetimeBo.CurrentDateTime();
                _personUnit.BinnacleAddressRepository.Insert(binnacleAddress);
                _personUnit.AddressRepository.Update(address);
                _personUnit.SaveChanges();
                return(Ok(address));
            }
            catch (AppException ex)
            {
                // return error message if there was an exception
                return(BadRequest(ex.Message));
            }
        }
Ejemplo n.º 2
0
        public Person Create(Person person, string password)
        {
            // validation
            if (string.IsNullOrWhiteSpace(password))
            {
                throw new AppException("Password is required");
            }

            if (_context.Person.Any(x => x.Email == person.Email))
            {
                throw new AppException("Email " + person.Email + " is already taken");
            }

            if (_context.Person.Any(x => x.MobilePhone == person.MobilePhone))
            {
                throw new AppException("MobilePhone " + person.MobilePhone + " is already taken");
            }

            byte[] passwordHash, passwordSalt;
            CreatePasswordHash(password, out passwordHash, out passwordSalt);

            person.PasswordHash = passwordHash;
            person.PasswordSalt = passwordSalt;

            person.CreatedDate = DatetimeBo.CurrentDateTime();
            person.Deleted     = false;

            Insert(person);
            return(person);
        }
Ejemplo n.º 3
0
        public void Delete(int id)
        {
            Address entityToUpdate = _context.Address.Find(id);

            entityToUpdate.Deleted    = true;
            entityToUpdate.UpdateDate = DatetimeBo.CurrentDateTime();
            _context.Entry <Address>(entityToUpdate).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
            _context.Address.Attach(entityToUpdate);
        }
Ejemplo n.º 4
0
        public void Update(Person personParam, string password = null)
        {
            Person person = _context.Person.Find(personParam.PersonId);

            if (person == null)
            {
                throw new AppException("Person not found");
            }

            if (personParam.Email != person.Email)
            {
                // email has changed so check if the new username is already taken
                if (_context.Person.Any(x => x.Email == personParam.Email))
                {
                    throw new AppException("Email " + personParam.Email + " is already taken");
                }
            }

            if (personParam.MobilePhone != person.MobilePhone)
            {
                // mobile phone has changed so check if the new username is already taken
                if (_context.Person.Any(x => x.MobilePhone == personParam.MobilePhone))
                {
                    throw new AppException("MobilePhone " + personParam.MobilePhone + " is already taken");
                }
            }
            //habilitar hasta que sea necesario
            //user.Name = userParam.Name;
            //user.MaternalSurname = userParam.MaternalSurname;
            //user.PaternalSurname = userParam.PaternalSurname;
            //user.Birthdate = userParam.Birthdate;
            //user.TypeUserId = userParam.TypeUserId;
            //user.TypePersonId = userParam.TypePersonId;
            //user.GenderId = userParam.GenderId;

            // update user properties
            person.MobilePhone = personParam.MobilePhone;
            person.HomePhone   = personParam.HomePhone;
            person.UpdateDate  = DatetimeBo.CurrentDateTime();
            person.Email       = personParam.Email;

            // update password if it was entered
            if (!string.IsNullOrWhiteSpace(password))
            {
                byte[] passwordHash, passwordSalt;
                CreatePasswordHash(password, out passwordHash, out passwordSalt);

                person.PasswordHash = passwordHash;
                person.PasswordSalt = passwordSalt;
            }

            Update(person);
        }
Ejemplo n.º 5
0
        public void Delete(int id)
        {
            Person entityToDelete = _context.Person.Find(id);

            if (entityToDelete == null)
            {
                return;
            }
            entityToDelete.Deleted    = true;
            entityToDelete.UpdateDate = DatetimeBo.CurrentDateTime();
            Update(entityToDelete);
        }
Ejemplo n.º 6
0
        public Address Update(Address entityToUpdate)
        {
            Address address = _context.Address.Find(entityToUpdate.AddressId);

            if (address == null)
            {
                throw new Exception("The entity was not found");
            }
            address.CountryId      = entityToUpdate.CountryId;
            address.StateId        = entityToUpdate.StateId;
            address.MunicipalityId = entityToUpdate.MunicipalityId;
            address.ColonyId       = entityToUpdate.ColonyId;
            address.Street         = entityToUpdate.Street;
            address.PostalCode     = entityToUpdate.PostalCode;
            address.OutdoorNumber  = entityToUpdate.OutdoorNumber;
            address.InteriorNumber = entityToUpdate.InteriorNumber;
            address.UpdateDate     = DatetimeBo.CurrentDateTime();
            //_context.Address.Attach(address);
            _context.Entry <Address>(address).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
            _context.Address.Update(address);
            return(address);
        }
Ejemplo n.º 7
0
        public IActionResult Update([FromBody] PersonDto personDto)
        {
            // map dto to entity
            var person = _mapper.Map <Person>(personDto);

            try
            {
                if (person.Address != null && person.Address.Count() > 0)
                {
                    person.Address.ToList().ForEach(x =>
                    {
                        x.Deleted = false;
                    });

                    BinnacleAddress binnacleAddress = new BinnacleAddress();
                    Address         addressToUpdate = new Address();
                    foreach (Address item in person.Address)
                    {
                        addressToUpdate = _personUnit.AddressRepository.Get(item.AddressId);
                        binnacleAddress = new BinnacleAddress();
                        binnacleAddress = _mapper.Map <BinnacleAddress>(addressToUpdate);
                        binnacleAddress.CreationDate = DatetimeBo.CurrentDateTime();
                        _personUnit.BinnacleAddressRepository.Insert(binnacleAddress);
                        _personUnit.AddressRepository.Update(item);
                    }
                }

                // save
                _personUnit.PersonRepository.Update(person, personDto.Password);
                _personUnit.SaveChanges();
                return(Ok(person));
            }
            catch (AppException ex)
            {
                // return error message if there was an exception
                return(BadRequest(ex.Message));
            }
        }
Ejemplo n.º 8
0
        public IActionResult Register([FromBody] PersonDto personDto)
        {
            // map dto to entity
            var person = _mapper.Map <Person>(personDto);

            try
            {
                if (person.TypeUserId == _appSettings.TypeUserAffiate)
                {
                    string code = "234234235";
                    person.Affiliate = new Affiliate()
                    {
                        CodeAffiliate = code,//Genera codigo
                        PersonId      = person.PersonId,
                        CreationDate  = DatetimeBo.CurrentDateTime(),
                        Deleted       = false
                    };
                }
                if (person.Address != null)
                {
                    person.Address.ToList().ForEach(x =>
                    {
                        x.Deleted = false;
                    });
                }
                // save
                _personUnit.PersonRepository.Create(person, personDto.Password);
                _personUnit.SaveChanges();
                return(Ok(person));
            }
            catch (AppException ex)
            {
                // return error message if there was an exception
                return(BadRequest(ex.Message));
            }
        }