StudentManageSystem/Controllers/ConfigController.cs

(完整代码) 1KB

using System;
using System.Linq;
using System.Threading.Tasks;
using Auth.Jwt;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Logging;
using Student.DTO;
using StudentManageSystem.HttpApis;
using StudentManageSystem.ViewModels;
using yrjw.CommonToolsCore.Helper;
using yrjw.ORM.Chimp.Result;

namespace StudentManageSystem.Controllers
{
    public class ConfigController : Controller
    {
        private readonly ILogger<ConfigController> _logger;
        public readonly IConfigApi _configApi;

        public ConfigController(ILogger<ConfigController> logger, IConfigApi configApi)
        {
            _logger = logger;
            _configApi = configApi;
        }

        [HttpGet]
        [Authorize]
        public async Task<IActionResult> IndexAsync()
        {
            var model = new ConfigViewModel();
            var config = await _configApi.QueryAuthAsync();
            if (config.Success)
            {
                if (config.Data.Code.EqualsIgnoreCase("Auth"))
                {
                    model.AuthConfigData = config.Data.Value.ToJson<AuthConfigData>();
                }
            }
            return View(model);
        }

        [HttpPost]
        [Authorize]
        [ValidateAntiForgeryToken]
        public async Task<IActionResult> SaveAsync(ConfigViewModel model)
        {
            if (ModelState.IsValid)
            {
                var config = new ConfigDTO();
                config.Code = "Auth";
                config.Value = JsonHelper.SerializeJSON(model.AuthConfigData, true);
                IResultModel<ConfigDTO> result = await _configApi.UpdateAsync(config);
            }
            return View("Index", model);
        }
    }
}

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。