public StaffRequestModel Update(StaffRequestModel staffRequestModel, string username)
        {
            //var result = this._staffRepository.GetSingle(s => s.Id == staffRequestModel.Id);
            //var user = this._appUserRepository.GetSingle(s => s.UserId == result.UserId);
            //if (this._appUserRepository.Contains(s => s.UserName == staffRequestModel.Username))
            //{
            //    if (staffRequestModel.Username == user.UserName)
            //    {
            //        if (staffRequestModel.Lock == false && result.Lock == true && user.Lock == false)
            //        {
            //            throw new Exception("This user is already in use. Please try another use");
            //        }
            //        else
            //        {
            //            result.FirstName = staffRequestModel.FirstName;
            //            result.LastName = staffRequestModel.LastName;
            //            result.Sex = staffRequestModel.Sex;
            //            result.BirthDate = staffRequestModel.BirthDate;
            //            result.Address = staffRequestModel.Address;
            //            result.PhoneNumber = staffRequestModel.PhoneNumber;
            //            result.UpdatedDate = DateTime.Now;
            //            result.Lock = staffRequestModel.Lock;
            //            result.CreatedUser = username;
            //            user.Lock = result.Lock;
            //            this._appUserRepository.Update(user);
            //            this._staffRepository.Update(result);
            //        }
            //    }
            //}
            //else
            //{

            //}
            return(staffRequestModel);
        }
        public StaffRequestModel CreateNewStaff(StaffRequestModel staffRequestModel, string username)
        {
            Staff result;
            var   user = this._appUserRepository.GetSingle(s => s.UserName.Trim() == staffRequestModel.Username);

            if (user != null)
            {
                result = this._staffRepository.Add(new Staff
                {
                    FirstName   = staffRequestModel.FirstName,
                    LastName    = staffRequestModel.LastName,
                    Sex         = staffRequestModel.Sex,
                    BirthDate   = staffRequestModel.BirthDate,
                    PhoneNumber = staffRequestModel.PhoneNumber,
                    Address     = staffRequestModel.Address,
                    CreatedDate = DateTime.Now,
                    UpdatedDate = DateTime.Now,
                    Lock        = true,
                    CreatedUser = username,
                    UserId      = user.UserId
                });
            }
            else
            {
                user = this._appUserRepository.Add(new AppUser
                {
                    UserName = staffRequestModel.Username,
                    PassWord = IdentytiHelper.HashPassword(staffRequestModel.Password),
                    RoleId   = staffRequestModel.RoleId
                });
                result = this._staffRepository.Add(new Staff
                {
                    FirstName   = staffRequestModel.FirstName,
                    LastName    = staffRequestModel.LastName,
                    Sex         = staffRequestModel.Sex,
                    BirthDate   = staffRequestModel.BirthDate,
                    PhoneNumber = staffRequestModel.PhoneNumber,
                    Address     = staffRequestModel.Address,
                    CreatedDate = DateTime.Now,
                    UpdatedDate = DateTime.Now,
                    Lock        = true,
                    CreatedUser = username,
                    UserId      = user.UserId
                });
            }
            this._staffRepository.Commit();
            staffRequestModel.Id = result.Id;
            return(staffRequestModel);
        }
Exemple #3
0
        public async Task <List <SearchStaffResponse> > GetExaminer(StaffRequestModel model)
        {
            string apiURL   = APIConstants.BaseUri + APIConstants.SearchStaffUri;
            object username = "";

            try
            {
                username = Application.Current.Properties["UserName"];
            }
            catch (Exception ex)
            {
            }

            object userID = "";

            try
            {
                userID = Application.Current.Properties["UserID"];
            }
            catch (Exception ex)
            {
            }
            try
            {
                httpClient.DefaultRequestHeaders.Clear();
                httpClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", _tokenservice.GetTokenResposne().Token);
                string jsonData = JsonConvert.SerializeObject(model);
                var    postData = new StringContent(jsonData, UnicodeEncoding.UTF8, "application/json");
                var    response = await httpClient.PostAsync(apiURL, postData);

                if (response.StatusCode == System.Net.HttpStatusCode.OK)
                {
                    Analytics.TrackEvent("API Requests", new Dictionary <string, string>
                    {
                        { "RequestURI:", apiURL },
                        { "StatusCode:", response.StatusCode + "" },
                        { "User Name:", username + "" },
                        { "User ID:", userID + "" }
                    });

                    var result = await response.Content.ReadAsStringAsync();

                    var searchStaffResponse = JsonConvert.DeserializeObject <List <SearchStaffResponse> >(result);
                    if (searchStaffResponse != null)
                    {
                        return(searchStaffResponse);
                    }
                }
                else
                {
                    Analytics.TrackEvent("API Requests", new Dictionary <string, string>
                    {
                        { "RequestURI:", apiURL },
                        { "StatusCode:", response.StatusCode + "" },
                        { "User Name:", username + "" },
                        { "User ID:", userID + "" }
                    });
                }

                return(null);
            }
            catch (Exception ex)
            {
                Crashes.TrackError(ex, new Dictionary <string, string>
                {
                    { "StackTrace", ex.StackTrace },
                    { "Error Message", ex.Message },
                    { "RequestURI:", apiURL },
                    { "UserName:"******"" },
                    { "UserID:", userID + "" }
                });
                System.Diagnostics.Debug.WriteLine(ex.StackTrace);
                return(null);
            }
        }