public IActionResult ValidateCurrentUserByPassword(string id)
        {
            ValidateSession();
            var result = "";

            try
            {
                if (id != null)
                {
                    var currentUserName = sessionData.UserName;
                    var userData        = new App_UserPoco();
                    var isUserValid     = _userLogic.IsCredentialsValid(currentUserName, id, out userData);
                    if (isUserValid)
                    {
                        result = "true";
                    }
                    else
                    {
                        result = "";
                    }
                }
            }
            catch (Exception ex)
            {
            }

            return(Json(result));
        }
        public IActionResult Add([FromBody] dynamic userData)
        {
            ValidateSession();
            var result = "";

            try
            {
                if (userData != null)
                {
                    App_UserPoco userPoco         = JsonConvert.DeserializeObject <App_UserPoco>(JsonConvert.SerializeObject(userData[0]));
                    var          profileImageInfo = Convert.ToString(userData[1]);

                    if (userPoco.Id < 1 && userPoco.UserName.Trim() != string.Empty && userPoco.Password != string.Empty)
                    {
                        if (profileImageInfo != null && profileImageInfo != "" && profileImageInfo.Contains(","))
                        {
                            var base64String = profileImageInfo.Split(",")[1];
                            if (!string.IsNullOrEmpty(base64String))
                            {
                                userPoco.ProfilePicture = Convert.FromBase64String(base64String);
                            }
                        }

                        userPoco.CreatedBy = sessionData.UserId;
                        result             = _userLogic.Add(userPoco).Id.ToString();
                    }
                }
            }
            catch (Exception ex)
            {
            }

            return(Json(result));
        }
        public IActionResult Update([FromBody] dynamic userData)
        {
            ValidateSession();
            var result = "";

            try
            {
                if (userData != null)
                {
                    App_UserPoco userPoco         = JsonConvert.DeserializeObject <App_UserPoco>(JsonConvert.SerializeObject(userData[0]));
                    var          profileImageInfo = Convert.ToString(userData[1]);

                    if (userPoco.Id > 0 && userPoco.UserName.Trim() != string.Empty)
                    {
                        var user = _userLogic.GetSingleById(userPoco.Id);

                        user.EmployeeId   = userPoco.EmployeeId;
                        user.FirstName    = userPoco.FirstName;
                        user.LastName     = userPoco.LastName;
                        user.GroupId      = userPoco.GroupId;
                        user.BranchId     = userPoco.BranchId;
                        user.EmailAddress = userPoco.EmailAddress;
                        user.Address      = userPoco.Address;
                        user.CityId       = userPoco.CityId;
                        user.ProvinceId   = userPoco.ProvinceId;
                        user.CountryId    = userPoco.CountryId;
                        user.PhoneNumber  = userPoco.PhoneNumber;

                        if (profileImageInfo != null && profileImageInfo != "")
                        {
                            var base64String = profileImageInfo.Split(",")[1];
                            if (!string.IsNullOrEmpty(base64String))
                            {
                                user.ProfilePicture = Convert.FromBase64String(base64String);
                            }
                        }

                        user.IsInitialPasswordChanged = userPoco.IsInitialPasswordChanged;
                        user.IsActive = userPoco.IsActive;

                        var poco = _userLogic.Update(user);
                        result = poco.Id.ToString();
                    }
                }
            }
            catch (Exception ex)
            {
            }

            return(Json(result));
        }
        public IActionResult UpdatePassword([FromBody] dynamic passwordData)
        {
            ValidateSession();
            var result = "";

            try
            {
                if (passwordData != null)
                {
                    var passData    = JsonConvert.SerializeObject(passwordData[0]);
                    var newPass     = (JObject.Parse(passData)["newPass"]).ToString();
                    var currentPass = (JObject.Parse(passData)["currentPass"]).ToString();

                    if (currentPass.ToString() != null)
                    {
                        var userData    = new App_UserPoco();
                        var isUserValid = _userLogic.IsCredentialsValid(sessionData.UserName, currentPass, out userData);
                        if (isUserValid)
                        {
                            userData.Password = newPass;
                            _userLogic.UpdatePassword(userData);

                            result = "true";
                        }
                        else
                        {
                            result = "";
                        }
                    }
                }
            }
            catch (Exception ex)
            {
            }

            return(Json(result));
        }