//CreateNewDeliverer
        public bool CreateNewDeliverer(DelivererDto delivererDto)
        {
            Deliverer toAdd = Mapper.Map <Deliverer>(delivererDto);

            _delivererRepository.Add(toAdd);

            bool result = _delivererRepository.Save();

            return(result);
        }
        //UpdateDeliverer
        public bool UpdateDeliverer(DelivererDto delivererDto)
        {
            var delivererinDb = _delivererRepository.Get(x => x.Id == delivererDto.Id).First();

            if (delivererinDb != null)
            {
                Deliverer deliverer = Mapper.Map <Deliverer>(delivererDto);
                _delivererRepository.Update(deliverer);
                return(_delivererRepository.Save());
            }
            return(false);
        }
        public IActionResult Add([FromBody] DelivererDto deliverer)
        {
            Deliverer toAdd = Mapper.Map <Deliverer>(deliverer);

            _delivererRepository.Add(toAdd);

            bool result = _delivererRepository.Save();

            if (!result)
            {
                return(new StatusCodeResult(400));
            }
            return(Ok(Mapper.Map <DelivererDto>(toAdd)));
        }
Example #4
0
        public DelivererDto SignUp(DelivererVM delivererVM)
        {
            try
            {
                var delivererDto = new DelivererDto()
                {
                    FirstName    = delivererVM.FirstName,
                    LastName     = delivererVM.LastName,
                    MobileNumber = delivererVM.MobileNumber,
                    ProfileImage = delivererVM.ProfileImage,
                    NIC          = delivererVM.NIC,
                    VehicleNo    = delivererVM.VehicleNo,
                    VehicleType  = delivererVM.VehicleType,
                    Rating       = 0.0
                };

                using (TransactionScope scope = new TransactionScope())
                {
                    Login login = Mapper.Map <Login>(delivererVM.LoginVM);
                    login.Password = Encrypt(login.Password, key);
                    _loginRepository.Add(login);
                    _loginRepository.Save();

                    Login loginId = _loginRepository.Get(x => x.Email == login.Email).FirstOrDefault();
                    delivererDto.LoginId = loginId.Id;

                    Deliverer deliverer = Mapper.Map <Deliverer>(delivererDto);
                    _delivererRepository.Add(deliverer);
                    _delivererRepository.Save();

                    Location location = new Location()
                    {
                        DelivererId = deliverer.Id,
                    };
                    _locationRepository.Add(location);
                    _locationRepository.Save();

                    delivererDto.Token = Authentication(delivererDto.Id, delivererDto.Token);
                    scope.Complete();
                }
                return(delivererDto);
            }
            catch (Exception ex)
            {
                Console.WriteLine(new Exception(ex.Message));
            }
            return(null);
        }