public async Task <JsonResult> CreateAccount(UserModel model)
        {
            _logger.Information($"CreateAccount : { JsonConvert.SerializeObject(model)}");

            ResponseViewModel responseResult = new ResponseViewModel();

            try
            {
                bool isExists = _aspNetUsersService.IsExistUserByUserName(model.PhoneNumber);
                if (isExists)
                {
                    responseResult.IsOk           = false;
                    responseResult.Message        = string.Format("{0} 手機號碼已註冊", model.PhoneNumber);
                    responseResult.Data           = model;
                    responseResult.HttpStatusCode = HttpStatusCode.BadRequest;
                    _logger.Information($"Company_Create_Success : { JsonConvert.SerializeObject(responseResult)}");
                    return(Json(responseResult, JsonRequestBehavior.DenyGet));
                }
                else
                {
                    IdentityResult result = await _repository.RegisterUser(model);

                    if (result.Succeeded)
                    {
                        responseResult.IsOk           = true;
                        responseResult.HttpStatusCode = HttpStatusCode.OK;
                    }
                    else
                    {
                        responseResult.IsOk = false;
                    }
                }
            }
            catch (Exception ex)
            {
                _logger.Information($"CreateAccount exception: { JsonConvert.SerializeObject(ex)}");
                responseResult.IsOk           = false;
                responseResult.Exception      = ex;
                responseResult.HttpStatusCode = HttpStatusCode.InternalServerError;
                throw ex;
            }
            return(Json(responseResult, JsonRequestBehavior.DenyGet));
        }