ceshi
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
using LMS.Tools.Extensions;
|
||||
|
||||
namespace LMS.Repository.Models.DB
|
||||
{
|
||||
public class ApiEndpoints
|
||||
{
|
||||
|
||||
public string Id { get; set; }
|
||||
|
||||
public string HttpMethod { get; set; }
|
||||
|
||||
public string Path { get; set; }
|
||||
|
||||
public DateTime CreateTime { get; set; } = BeijingTimeExtension.GetBeijingTime();
|
||||
|
||||
public List<string> RequiredPermissionIds { get; set; }
|
||||
|
||||
public long CreatedId { get; set; }
|
||||
|
||||
public long UpdatedId { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
using static LMS.Common.Enums.MachineEnum;
|
||||
|
||||
namespace LMS.Repository.Models.DB
|
||||
{
|
||||
public class Machine
|
||||
{
|
||||
/// <summary>
|
||||
/// ID 主键
|
||||
/// </summary>
|
||||
public string Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 机器ID
|
||||
/// </summary>
|
||||
public string MachineId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
public DateTime UpdateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 停用时间
|
||||
/// </summary>
|
||||
public DateTime? DeactivationTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 状态(是否可用)
|
||||
/// </summary>
|
||||
public MachineStatus Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建者ID
|
||||
/// </summary>
|
||||
public long CreateId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新者ID
|
||||
/// </summary>
|
||||
public long UpdateId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 使用状态(试用,永久)
|
||||
/// </summary>
|
||||
public MachineUseStatus UseStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
public string? Remark { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 所属用户ID
|
||||
/// </summary>
|
||||
public required long UserID { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
using LMS.Common.Enums;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Text.Json;
|
||||
using static LMS.Common.Enums.PermissionEnum;
|
||||
|
||||
namespace LMS.Repository.Models.DB
|
||||
{
|
||||
/// <summary>
|
||||
/// 所有的权限集合
|
||||
/// </summary>
|
||||
public class Permission
|
||||
{
|
||||
/// <summary>
|
||||
/// 权限的ID
|
||||
/// </summary>
|
||||
public string Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户的ID
|
||||
/// </summary>
|
||||
public long? UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 机器码的ID(是ID,不是机器码)
|
||||
/// </summary>
|
||||
public string? MachineId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 角色ID
|
||||
/// </summary>
|
||||
public long? RoleId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限类型的ID(子权限)
|
||||
/// </summary>
|
||||
[Column(TypeName = "json")]
|
||||
public string PermissionTypeIds { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限对应的Code
|
||||
/// </summary>
|
||||
public string PermissionCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限类型
|
||||
/// </summary>
|
||||
public PType Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建人ID
|
||||
/// </summary>
|
||||
public long CreateUserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新人ID
|
||||
/// </summary>
|
||||
public long UpdateUserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
public DateTime UpdateTime { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
public string Remark { get; set; }
|
||||
|
||||
[NotMapped]
|
||||
public List<string> PermissionTypeIdsJson
|
||||
{
|
||||
get => JsonSerializer.Deserialize<List<string>>(PermissionTypeIds) ?? [];
|
||||
set => PermissionTypeIds = JsonSerializer.Serialize(value);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
using LMS.Common.Enums;
|
||||
using static LMS.Common.Enums.PermissionEnum;
|
||||
|
||||
namespace LMS.Repository.Models.DB
|
||||
{
|
||||
/// <summary>
|
||||
/// 存放权限的表
|
||||
/// </summary>
|
||||
public class PermissionType
|
||||
{
|
||||
/// <summary>
|
||||
/// 权限ID
|
||||
/// </summary>
|
||||
public string Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限的名字
|
||||
/// </summary>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 表示权限的代码
|
||||
/// </summary>
|
||||
public string Code { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限的分类(user和machine)
|
||||
/// </summary>
|
||||
public PermissionEnum.PermissionType Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建者ID
|
||||
/// </summary>
|
||||
public long CreateUserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新者ID
|
||||
/// </summary>
|
||||
public long UpdateUserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新权限的时间
|
||||
/// </summary>
|
||||
public DateTime UpdateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限的描述
|
||||
/// </summary>
|
||||
public string? Remark { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
namespace LMS.Repository.Models.DB
|
||||
{
|
||||
public class Prompt
|
||||
{
|
||||
/// <summary>
|
||||
/// ID
|
||||
/// </summary>
|
||||
public string Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 提示词预设的名称
|
||||
/// </summary>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 提示词的类型ID
|
||||
/// </summary>
|
||||
public string PromptTypeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 提示词的类型编码
|
||||
/// </summary>
|
||||
public string PromptTypeCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 提示词预设字符串
|
||||
/// </summary>
|
||||
public string PromptString { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 当前版本
|
||||
/// </summary>
|
||||
public int Version { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 状态
|
||||
/// </summary>
|
||||
public string Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 提示词的描述
|
||||
/// </summary>
|
||||
public string? Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建者
|
||||
/// </summary>
|
||||
public string CreateUserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新者
|
||||
/// </summary>
|
||||
public string UpdateUserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
public DateTime UpdateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
public string? Remark { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
namespace LMS.Repository.Models.DB
|
||||
{
|
||||
/// <summary>
|
||||
/// 提示词类型的库
|
||||
/// </summary>
|
||||
public class PromptType
|
||||
{
|
||||
/// <summary>
|
||||
/// ID
|
||||
/// </summary>
|
||||
public string Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 提示词类型编码
|
||||
/// </summary>
|
||||
public string Code { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 提示词类型名称
|
||||
/// </summary>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 提示词类型描述
|
||||
/// </summary>
|
||||
public string? Remark { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 提示词类型状态
|
||||
/// </summary>
|
||||
public string Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否删除
|
||||
/// </summary>
|
||||
public bool IsDeleted { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建用户ID
|
||||
/// </summary>
|
||||
public string CreateUserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新者ID
|
||||
/// </summary>
|
||||
public string UpdateUserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
public DateTime UpdateTime { get; set; }
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
namespace LMS.Repository.Models.DB
|
||||
{
|
||||
public class RefreshTokens
|
||||
{
|
||||
/// <summary>
|
||||
/// 主键 ID
|
||||
/// </summary>
|
||||
public required string Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户ID
|
||||
/// </summary>
|
||||
public required long UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Token
|
||||
/// </summary>
|
||||
public required string Token { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 到期时间
|
||||
/// </summary>
|
||||
public DateTime Expiration { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是不是失效
|
||||
/// </summary>
|
||||
public Boolean Revoked { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
public DateTime CreatedTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 上次校验IP
|
||||
/// </summary>
|
||||
public required string LastCheckIp { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 设备信息,浏览器信息等
|
||||
/// </summary>
|
||||
public required string DeviceInfo { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
using LMS.Tools.Extensions;
|
||||
using Microsoft.AspNetCore.Identity;
|
||||
|
||||
namespace LMS.Repository.Models.DB
|
||||
{
|
||||
public class Role : IdentityRole<long>
|
||||
{
|
||||
public long CreatedUserId { get; set; }
|
||||
|
||||
public long UpdatedUserId { get; set; }
|
||||
|
||||
public DateTime CreatedTime { get; set; }
|
||||
|
||||
public DateTime UpdatedTime { get; set; }
|
||||
|
||||
public string? Remark { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
using LMS.Tools.Extensions;
|
||||
|
||||
namespace LMS.Repository.DB
|
||||
{
|
||||
public class RsaKeys
|
||||
{
|
||||
/// <summary>
|
||||
/// ID 主键
|
||||
/// </summary>
|
||||
public required string Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 使用次数
|
||||
/// </summary>
|
||||
public int UseCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 公钥
|
||||
/// </summary>
|
||||
public required string PublicKey { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 加密后的私钥
|
||||
/// </summary>
|
||||
public required string EncryptedPrivateKey { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 加密私钥的随机字符串
|
||||
/// </summary>
|
||||
public required string EncryptionKey { get; set; } // 加密私钥的随机字符串
|
||||
|
||||
/// <summary>
|
||||
/// 加密私钥的随机IV
|
||||
/// </summary>
|
||||
public required string EncryptionIV { get; set; } // 加密私钥的随机字符串
|
||||
|
||||
/// <summary>
|
||||
/// Key的版本
|
||||
/// </summary>
|
||||
public int KeyVersion { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
public DateTime CreatedTime { get; set; } = BeijingTimeExtension.GetBeijingTime();
|
||||
|
||||
/// <summary>
|
||||
/// 上次使用的时间
|
||||
/// </summary>
|
||||
public DateTime? LastUsed { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 到期时间
|
||||
/// </summary>
|
||||
public DateTime ExpirationTime { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
using LMS.Repository.User;
|
||||
using Microsoft.AspNetCore.Identity;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Text.Json;
|
||||
|
||||
namespace LMS.Repository.Models.DB
|
||||
{
|
||||
public class User : IdentityUser<long>
|
||||
{
|
||||
[MaxLength(50)]
|
||||
public string NickName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 允许使用的机器码数量
|
||||
/// </summary>
|
||||
public long AllDeviceCount { get; set; } = 1;
|
||||
|
||||
/// <summary>
|
||||
/// 代理分成比例
|
||||
/// </summary>
|
||||
public double AgentPercent { get; set; } = 0.00;
|
||||
|
||||
/// <summary>
|
||||
/// 免费修改机器码次数
|
||||
/// </summary>
|
||||
public long FreeCount { get; set; } = 0;
|
||||
|
||||
/// <summary>
|
||||
/// 用户的一些简单的操作
|
||||
/// </summary>
|
||||
[Column(TypeName = "json")]
|
||||
public string? Options { get; set; } = "{}";
|
||||
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime CreatedDate { get; set; } = DateTime.Now;
|
||||
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime UpdatedDate { get; set; } = DateTime.Now;
|
||||
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime LastLoginDate { get; set; } = DateTime.Now;
|
||||
|
||||
public string? LastLoginIp { get; set; } = "";
|
||||
|
||||
public string? LastLoginDevice { get; set; } = "";
|
||||
|
||||
/// <summary>
|
||||
/// 上级ID
|
||||
/// </summary>
|
||||
public long? ParentId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 推广码
|
||||
/// </summary>
|
||||
public string AffiliateCode { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 实际使用的Options
|
||||
/// </summary>
|
||||
[NotMapped]
|
||||
public UserPrivateOptions OptionsJson
|
||||
{
|
||||
get => JsonSerializer.Deserialize<UserPrivateOptions>(Options ?? "{}") ?? new UserPrivateOptions();
|
||||
set => Options = JsonSerializer.Serialize(value);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
namespace LMS.Repository.Models.DB
|
||||
{
|
||||
public class UserRoles
|
||||
{
|
||||
|
||||
public required string RoleId { get; set; }
|
||||
|
||||
public required string UserId { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace LMS.Repository.DTO
|
||||
{
|
||||
public class CollectionResponse<T>
|
||||
{
|
||||
|
||||
public int Current { get; set; }
|
||||
|
||||
public int Total { get; set; }
|
||||
|
||||
public List<T> Collection { get; set; } = new List<T>();
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
using LMS.Repository.DTO.UserDto;
|
||||
using LMS.Repository.Models.DB;
|
||||
|
||||
namespace LMS.Repository.DTO
|
||||
{
|
||||
public class MachineDetailDto : Machine
|
||||
{
|
||||
public UserBaseDto? CreatedUser { get; set; }
|
||||
|
||||
public UserBaseDto? UpdatedUser { get; set; }
|
||||
|
||||
public UserBaseDto? OwnUser { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
using static LMS.Common.Enums.MachineEnum;
|
||||
|
||||
namespace LMS.Repository.DTO.MachineResponse
|
||||
{
|
||||
public class MachineDto
|
||||
{
|
||||
public class MachineStatusResponse
|
||||
{
|
||||
/// <summary>
|
||||
/// 机器状态
|
||||
/// </summary>
|
||||
public MachineStatus Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 到期时间
|
||||
/// </summary>
|
||||
public DateTime? DeactivationTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 机器码ID
|
||||
/// </summary>
|
||||
public string Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 机器码
|
||||
/// </summary>
|
||||
public string MachineId { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
using LMS.Repository.DTO.UserDto;
|
||||
|
||||
namespace LMS.Repository.DTO
|
||||
{
|
||||
public class RoleDto
|
||||
{
|
||||
public long Id { get; set; }
|
||||
|
||||
public string Name { get; set; } = string.Empty;
|
||||
|
||||
public UserBaseDto? CreatedUser { get; set; }
|
||||
|
||||
public UserBaseDto? UpdeatedUser { get; set; }
|
||||
|
||||
public DateTime CreatedTime { get; set; }
|
||||
|
||||
public DateTime UpdatedTime { get; set; }
|
||||
|
||||
public string Remark { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
namespace LMS.Repository.DTO;
|
||||
|
||||
public class SoftwareDao
|
||||
{
|
||||
public string Version { get; set; }
|
||||
|
||||
public string Author { get; set; }
|
||||
|
||||
public string Description { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
namespace LMS.Repository.DTO.UserDto;
|
||||
|
||||
public class UserAgentInfoDto
|
||||
{
|
||||
/// <summary>
|
||||
/// 用户ID
|
||||
/// </summary>
|
||||
public long UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户名称
|
||||
/// </summary>
|
||||
public string UserName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户昵称
|
||||
/// </summary>
|
||||
public string NickName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户的邀请码
|
||||
/// </summary>
|
||||
public string AffiliateCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户的代理分成比例
|
||||
/// </summary>
|
||||
public double AgentPercent { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 邀请人数
|
||||
/// </summary>
|
||||
public int AffiliateNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 邀请的VIP人数
|
||||
/// </summary>
|
||||
public int AffiliateVIPNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 邀请获取的金额
|
||||
/// </summary>
|
||||
public double AffiliateMoney { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
using LMS.Repository.User;
|
||||
|
||||
namespace LMS.Repository.DTO.UserDto;
|
||||
|
||||
public class UserBaseDto
|
||||
{
|
||||
public long Id { get; set; }
|
||||
|
||||
public string NickName { get; set; } = string.Empty;
|
||||
|
||||
public string UserName { get; set; } = string.Empty;
|
||||
|
||||
public string Email { get; set; } = string.Empty;
|
||||
|
||||
public string PhoneNumber { get; set; } = string.Empty;
|
||||
|
||||
public string Avatar { get; set; } = string.Empty;
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
namespace LMS.Repository.DTO.UserDto
|
||||
{
|
||||
public class UserCollectionDto : UserBaseDto
|
||||
{
|
||||
public List<string> RoleNames { get; set; } = [];
|
||||
|
||||
public DateTime CreatedDate { get; set; }
|
||||
|
||||
public DateTime LastLoginDate { get; set; }
|
||||
|
||||
public long ParentId { get; set; }
|
||||
|
||||
public string LastLoginIp { get; set; } = string.Empty;
|
||||
|
||||
public string LastLoginDevice { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
using LMS.Repository.User;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Text.Json;
|
||||
|
||||
namespace LMS.Repository.DTO.UserDto
|
||||
{
|
||||
public class UserDto : UserBaseDto
|
||||
{
|
||||
public List<string> RoleNames { get; set; } = [];
|
||||
|
||||
/// <summary>
|
||||
/// 允许使用的机器码数量
|
||||
/// </summary>
|
||||
public long AllDeviceCount { get; set; } = 1;
|
||||
|
||||
/// <summary>
|
||||
/// 代理分成比例
|
||||
/// </summary>
|
||||
public double AgentPercent { get; set; } = 0.00;
|
||||
|
||||
/// <summary>
|
||||
/// 免费修改机器码次数
|
||||
/// </summary>
|
||||
public long FreeCount { get; set; } = 0;
|
||||
|
||||
public DateTime CreatedDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 邀请码
|
||||
/// </summary>
|
||||
public string AffiliateCode { get; set; } = string.Empty;
|
||||
|
||||
public long ParentId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 放一些操作信息 不能频繁的修改数据库,使用的json格式存放
|
||||
/// </summary>
|
||||
public UserPrivateOptions Options { get; set; } = new UserPrivateOptions();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
namespace LMS.Repository.Model
|
||||
{
|
||||
public class OpenAI
|
||||
{
|
||||
public class RequestMessage
|
||||
{
|
||||
/// <summary>
|
||||
/// 请求的角色
|
||||
/// </summary>
|
||||
public string role { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 请求的消息
|
||||
/// </summary>
|
||||
public string content { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 请求失败,返回错误信息
|
||||
/// </summary>
|
||||
public class ErrorResponse
|
||||
{
|
||||
public string Error { get; set; }
|
||||
public string Message { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Folder Include="Prompt\" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Extensions.Identity.Stores" Version="8.0.8" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\LMS.Tools\LMS.Tools.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
@@ -0,0 +1,42 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using static LMS.Common.Enums.MachineEnum;
|
||||
|
||||
namespace LMS.Repository.Models.Machine
|
||||
{
|
||||
public class MachineModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 机器ID
|
||||
/// </summary>
|
||||
[Required]
|
||||
public string MachineId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 停用时间
|
||||
/// </summary>
|
||||
public DateTime? DeactivationTime { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 使用状态(试用,永久)
|
||||
/// </summary>
|
||||
[Required]
|
||||
public MachineUseStatus UseStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 当前机器的状态(激活,冻结)
|
||||
/// </summary>
|
||||
[Required]
|
||||
public MachineStatus Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
public string? Remark { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 所属用户ID
|
||||
/// </summary>
|
||||
public long? UserId { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using static LMS.Common.Enums.PermissionEnum;
|
||||
|
||||
namespace LMS.Repository.RequestModel.Permission
|
||||
{
|
||||
public class PermissionModel
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// 角色ID
|
||||
/// </summary>
|
||||
public long? RoleId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户的ID
|
||||
/// </summary>
|
||||
public long? UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 机器码的ID(是ID,不是机器码)
|
||||
/// </summary>
|
||||
public string? MachineId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限类型的ID(子权限)
|
||||
/// </summary>
|
||||
[Required]
|
||||
public List<string> PermissionTypeIds { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限对应的Code
|
||||
/// </summary>
|
||||
[Required]
|
||||
public string PermissionCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限类型
|
||||
/// </summary>
|
||||
[Required]
|
||||
public PType Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
public string? Remark { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
using static LMS.Common.Enums.PermissionEnum;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace LMS.Repository.Models.Promission
|
||||
{
|
||||
public class PermissionTypeModel
|
||||
{
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 权限的名字
|
||||
/// </summary>
|
||||
[Required]
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限的分类(user和machine)
|
||||
/// </summary>
|
||||
[Required]
|
||||
public PermissionType Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 表示权限的代码
|
||||
/// </summary>
|
||||
[Required]
|
||||
public string Code { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 权限的描述
|
||||
/// </summary>
|
||||
public string? Remark { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace LMS.Repository.RSAKey
|
||||
{
|
||||
public class RSAKeyGenerateModel
|
||||
{
|
||||
public string PublicKey { get; set; }
|
||||
|
||||
public string EncryptedPrivateKey { get; set; }
|
||||
|
||||
public string EncryptedKey { get; set; }
|
||||
|
||||
public string EncryptionIV { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace LMS.Repository.Role
|
||||
{
|
||||
public class RoleModel
|
||||
{
|
||||
[Required]
|
||||
public string Name { get; set; }
|
||||
|
||||
public string Remark { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
namespace LMS.Repository.Models.User
|
||||
{
|
||||
/// <summary>
|
||||
/// 用户登录的类型
|
||||
/// </summary>
|
||||
public enum LoginType
|
||||
{
|
||||
Username = 1, Email = 0,
|
||||
PhoneNumber = 2,
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 用户登录的实体类
|
||||
/// </summary>
|
||||
public class LoginModel
|
||||
{
|
||||
public string? UserName { get; set; }
|
||||
|
||||
public string? Email { get; set; }
|
||||
|
||||
public LoginType LoginType { get; set; } = 0;
|
||||
|
||||
public required string Password { get; set; }
|
||||
|
||||
public required string TokenId { get; set; }
|
||||
|
||||
public bool RememberMe { get; set; } = false;
|
||||
|
||||
public required string DeviceInfo { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace LMS.Repository.User
|
||||
{
|
||||
public class PublicKeyModel
|
||||
{
|
||||
public required string ClientPublicKey { get; set; }
|
||||
}
|
||||
|
||||
public class PublicKeyResponse
|
||||
{
|
||||
public required string Token { get; set; }
|
||||
public required string PublicKey { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
namespace LMS.Repository.Models.User
|
||||
{
|
||||
public class RefreshTokenModel
|
||||
{
|
||||
public string refreshToken { get; set; }
|
||||
public required long UserId { get; set; }
|
||||
|
||||
public required string DeviceInfo { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace LMS.Repository.Models.User
|
||||
{
|
||||
public class RegisterModel
|
||||
{
|
||||
[Required]
|
||||
public required string UserName { get; set; }
|
||||
public string? Email { get; set; }
|
||||
[Required]
|
||||
public required string Password { get; set; }
|
||||
[Required]
|
||||
public required string TokenId { get; set; }
|
||||
|
||||
[Required]
|
||||
public required string AffiliateCode { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
namespace LMS.Repository.User
|
||||
{
|
||||
public class UpdatedUserModel
|
||||
{
|
||||
public double? AgentPercent { get; set; }
|
||||
public int? AllDeviceCount { get; set; }
|
||||
public string? Email { get; set; }
|
||||
public int? FreeCount { get; set; }
|
||||
public string? NickName { get; set; }
|
||||
public string? UserName { get; set; }
|
||||
public string? PhoneNumber { get; set; }
|
||||
public List<string>? RoleNames { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace LMS.Repository.User;
|
||||
|
||||
public class UserPrivateOptions
|
||||
{
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user