Example #1
0
        public IHttpActionResult GetProfileInfo(UsernameAndPasswordDto userData)
        {
            var courier    = _courierService.GetCourierWithUsernameAndPassword(userData);
            var courierDto = courier.MapTo <CourierDto>();

            courierDto.IsSameImei = courier.Imei == userData.Imei;
            courierDto.Contacts   = _contactService.ListAll().OrderBy(o => o.Name).Select(o => o.MapTo <ContactDto>()).ToList();
            return(Ok(courierDto));
        }
Example #2
0
        public Courier GetCourierWithUsernameAndPassword(UsernameAndPasswordDto userInfo)
        {
            var hashedPassword = PasswordHelper.HashString(userInfo.Password, userInfo.Username);
            var courier        =
                _courierRepository.FirstOrDefault(
                    o => o.User.UserName == userInfo.Username && o.User.Password == hashedPassword);

            if (courier != null)
            {
                if (String.IsNullOrEmpty(courier.Imei) || courier.Imei.Equals(userInfo.Imei))
                {
                    courier.Imei   = userInfo.Imei;
                    courier.Status = (int)StatusCourier.Online;
                    _courierRepository.Update(courier);
                    //add system event
                    _systemEventRepository.Add(EventMessage.CourierLogin, new Dictionary <EventMessageParam, string> {
                        { EventMessageParam.Courier, courier.User.FullName }
                    });
                    _courierRepository.Commit();
                }
            }
            return(courier);
        }