public async Task <JObject> BEDetails(string viewType, int?id)
        {
            switch (viewType)
            {
            case "be":
                if (id.HasValue)
                {
                    var beResult = await ApiThemeViewModel.Repository.GetSingleModelAsync(model => model.Id == id).ConfigureAwait(false);

                    beResult.Data.Specificulture = _lang;
                    beResult.Data.IsActived      = GlobalConfigurationService.Instance.GetLocalInt(SWCmsConstants.ConfigurationKeyword.ThemeId, _lang, 0) == beResult.Data.Id;
                    return(JObject.FromObject(beResult));
                }
                else
                {
                    var model = new SiocTheme()
                    {
                        Status = (int)SWStatus.Preview
                    };

                    RepositoryResponse <ApiThemeViewModel> result = new RepositoryResponse <ApiThemeViewModel>()
                    {
                        IsSucceed = true,
                        Data      = await ApiThemeViewModel.InitViewAsync(model)
                    };
                    result.Data.Specificulture = _lang;
                    return(JObject.FromObject(result));
                }

            default:
                if (id.HasValue)
                {
                    var beResult = await ApiThemeViewModel.Repository.GetSingleModelAsync(model => model.Id == id).ConfigureAwait(false);

                    beResult.Data.Specificulture = _lang;
                    beResult.Data.IsActived      = GlobalConfigurationService.Instance.GetLocalInt(SWCmsConstants.ConfigurationKeyword.ThemeId, _lang, 0) == beResult.Data.Id;
                    return(JObject.FromObject(beResult));
                }
                else
                {
                    var model = new SiocTheme();
                    RepositoryResponse <ApiThemeViewModel> result = new RepositoryResponse <ApiThemeViewModel>()
                    {
                        IsSucceed = true,
                        Data      = new ApiThemeViewModel(model)
                        {
                            Status = SWStatus.Preview
                        }
                    };
                    result.Data.Specificulture = _lang;
                    return(JObject.FromObject(result));
                }
            }
        }
        public async Task <RepositoryResponse <ApiThemeViewModel> > Save([FromBody] ApiThemeViewModel model)
        {
            if (model != null)
            {
                model.CreatedBy = User.Claims.ToList().Find(c => c.Type == "Username")?.Value;
                var result = await model.SaveModelAsync(true).ConfigureAwait(false);

                return(result);
            }
            return(new RepositoryResponse <ApiThemeViewModel>());
        }