/***********************************************************************
* Project: baifenBinfa
* ProjectName: 百分兵法管理系统
* Web: http://chuanyin.com
* Author:
* Email:
* CreateTime: 202403/02
* Description: 暂无
***********************************************************************/
using System;
using System.Collections.Generic;
using System.IdentityModel.Tokens.Jwt;
using System.Linq;
using System.Runtime.InteropServices;
using System.Security.Claims;
using System.Threading.Tasks;
using CoreCms.Net.Auth.OverWrite;
using CoreCms.Net.Auth.Policys;
using CoreCms.Net.Configuration;
using CoreCms.Net.IRepository;
using CoreCms.Net.IServices;
using CoreCms.Net.Model.Entities;
using CoreCms.Net.Model.FromBody;
using CoreCms.Net.Model.ViewModels.UI;
using CoreCms.Net.Utility.Extensions;
using CoreCms.Net.Utility.Helper;
using Microsoft.AspNetCore.Authentication.JwtBearer;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Net.Http.Headers;
namespace CoreCms.Net.Web.Admin.Controllers
{
///
/// 用户授权登录
///
[Route("api/[controller]/[action]")]
[AllowAnonymous]
public class LoginController : ControllerBase
{
private readonly PermissionRequirement _permissionRequirement;
private readonly IHttpContextAccessor _httpContextAccessor;
private readonly ISysUserServices _sysUserServices;
private readonly ISysRoleMenuServices _sysRoleMenuServices;
private readonly ISysLoginRecordRepository _sysLoginRecordRepository;
///
/// 构造函数注入
///
public LoginController(
PermissionRequirement permissionRequirement
, ISysUserServices sysUserServices
, ISysRoleMenuServices sysRoleMenuServices
, IHttpContextAccessor httpContextAccessor
, ISysLoginRecordRepository sysLoginRecordRepository
)
{
_permissionRequirement = permissionRequirement;
_sysUserServices = sysUserServices;
_sysRoleMenuServices = sysRoleMenuServices;
_httpContextAccessor = httpContextAccessor;
_sysLoginRecordRepository = sysLoginRecordRepository;
}
///
/// 获取JWT的授权
///
///
///
[HttpPost]
public async Task