public async Task <IActionResult> CreateUser([FromBody] UserRequestVM requestVm, CancellationToken ct)
        {
            var             password = Constant.AlphanumericCaps.RandomPassword(Constant.DefaultPasswordLength);
            ApplicationUser user     = requestVm.ConvertAdd();
            var             result   = await UserApplication.CreateAsync(user, password, false, base.UseDefaultLanguage);//TODO: need to modified zeeshan

            // Checking if user was created
            if (result.Succeeded)
            {
                await UserApplication.AddToRolesAsync(user, requestVm.Roles, ct);

                Employee employee = new Employee
                {
                    UserTypeId = requestVm.UserTypeId,
                    EmployeeId = user.UserId
                };

                await EmployeeApplication.Add(employee);

                return(Ok(user.UserId));
            }
            else
            {
                return(BadRequest(user.UserId));
            }
        }