public async Task <UserTrackingDto> CreateUserTrackingAsync(CreateUserTrackingDto input, IFormFile file)
        {
            try
            {
                if (!input.UserId.HasValue)
                {
                    input.UserId = AbpSession.UserId;
                }
                if (_userManager.IsAdminUser(AbpSession.UserId.Value))
                {
                    input.StatusId = _lookupAppService.GetAllStatus(null, null, StatusConst.Approved, null).Result.Items.First().Id;
                }
                else
                {
                    input.StatusId = _lookupAppService.GetAllStatus(null, null, StatusConst.UnApproved, null).Result.Items.First().Id;
                }

                var userTracking = ObjectMapper.Map <UserTracking>(input);
                userTracking.Id = await _userTrackingRepository.InsertAndGetIdAsync(userTracking);

                return(MapToEntityDto(userTracking));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public async Task <ActionResult> EditModal(int UserTrackingId)
        {
            var output = await _userTrackingAppService.GetUserTrackingForEdit(new EntityDto(UserTrackingId));

            var status = _lookupAppService.GetAllStatus((int)output.StatusId).Result.Items.First();
            var scale  = new Scale(_lookupAppService);

            try
            {
                var model = new EditUserTrackingModalViewModel
                {
                    MeasurementScale = scale,
                    UserTracking     = output,
                    IsReadOnly       = (status.StatusConst == StatusConst.Approved) ? true : false
                };

                if (_userManager.IsAdminUser(AbpSession.UserId.Value))
                {
                    model.UserList = _lookupAppService.GetUserComboboxItems().Result.Items.Select(p => p.ToSelectListItem()).ToList();
                    model.UserList.Find(x => x.Value == output.UserId.ToString()).Selected = true;
                    model.IsReadOnly = false;
                }
                return(PartialView("_EditModal", model));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }