添加项目文件。
This commit is contained in:
46
QYZH.InteractiveMagazine.Models/Common/BusinessException.cs
Normal file
46
QYZH.InteractiveMagazine.Models/Common/BusinessException.cs
Normal file
@ -0,0 +1,46 @@
|
||||
namespace QYZH.InteractiveMagazine.Models.Common;
|
||||
|
||||
/// <summary>
|
||||
/// 业务异常类
|
||||
/// </summary>
|
||||
public class BusinessException : Exception
|
||||
{
|
||||
/// <summary>
|
||||
/// 错误码
|
||||
/// </summary>
|
||||
public int Code { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 无参构造函数
|
||||
/// </summary>
|
||||
public BusinessException() : base()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 构造函数
|
||||
/// </summary>
|
||||
/// <param name="message">异常消息</param>
|
||||
public BusinessException(string message) : base(message)
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 构造函数
|
||||
/// </summary>
|
||||
/// <param name="message">异常消息</param>
|
||||
/// <param name="code">错误码</param>
|
||||
public BusinessException(string message, int code) : base(message)
|
||||
{
|
||||
Code = code;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 构造函数
|
||||
/// </summary>
|
||||
/// <param name="message">异常消息</param>
|
||||
/// <param name="innerException">内部异常</param>
|
||||
public BusinessException(string message, Exception innerException) : base(message, innerException)
|
||||
{
|
||||
}
|
||||
}
|
||||
55
QYZH.InteractiveMagazine.Models/Dto/BaseResponse.cs
Normal file
55
QYZH.InteractiveMagazine.Models/Dto/BaseResponse.cs
Normal file
@ -0,0 +1,55 @@
|
||||
namespace QYZH.InteractiveMagazine.Models.Dto;
|
||||
|
||||
/// <summary>
|
||||
/// 统一响应模型
|
||||
/// </summary>
|
||||
/// <typeparam name="T">数据类型</typeparam>
|
||||
public class BaseResponse<T>
|
||||
{
|
||||
/// <summary>
|
||||
/// 状态码
|
||||
/// </summary>
|
||||
public int Code { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 提示信息
|
||||
/// </summary>
|
||||
public string? Message { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据
|
||||
/// </summary>
|
||||
public T? Data { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 成功响应
|
||||
/// </summary>
|
||||
/// <param name="data">数据</param>
|
||||
/// <param name="message">提示信息</param>
|
||||
/// <returns>统一响应对象</returns>
|
||||
public static BaseResponse<T> Success(T data, string message = "操作成功")
|
||||
{
|
||||
return new BaseResponse<T>
|
||||
{
|
||||
Code = 200,
|
||||
Message = message,
|
||||
Data = data
|
||||
};
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 失败响应
|
||||
/// </summary>
|
||||
/// <param name="message">提示信息</param>
|
||||
/// <param name="code">状态码</param>
|
||||
/// <returns>统一响应对象</returns>
|
||||
public static BaseResponse<T> Fail(string message, int code = 500)
|
||||
{
|
||||
return new BaseResponse<T>
|
||||
{
|
||||
Code = code,
|
||||
Message = message,
|
||||
Data = default
|
||||
};
|
||||
}
|
||||
}
|
||||
33
QYZH.InteractiveMagazine.Models/Dto/PageListModel.cs
Normal file
33
QYZH.InteractiveMagazine.Models/Dto/PageListModel.cs
Normal file
@ -0,0 +1,33 @@
|
||||
namespace QYZH.InteractiveMagazine.Models.Dto;
|
||||
|
||||
/// <summary>
|
||||
/// 分页输出
|
||||
/// </summary>
|
||||
/// <typeparam name="T">数据类型</typeparam>
|
||||
public class PageListModel<T>
|
||||
{
|
||||
/// <summary>
|
||||
/// 页码
|
||||
/// </summary>
|
||||
public int PageIndex { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 每页条数
|
||||
/// </summary>
|
||||
public int PageSize { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 总记录数
|
||||
/// </summary>
|
||||
public long TotalCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 总页数
|
||||
/// </summary>
|
||||
public int TotalPages => PageSize > 0 ? (int)Math.Ceiling((double)TotalCount / PageSize) : 0;
|
||||
|
||||
/// <summary>
|
||||
/// 数据列表
|
||||
/// </summary>
|
||||
public List<T>? List { get; set; }
|
||||
}
|
||||
27
QYZH.InteractiveMagazine.Models/Dto/PageQueryModel.cs
Normal file
27
QYZH.InteractiveMagazine.Models/Dto/PageQueryModel.cs
Normal file
@ -0,0 +1,27 @@
|
||||
namespace QYZH.InteractiveMagazine.Models.Dto;
|
||||
|
||||
/// <summary>
|
||||
/// 分页查询输入
|
||||
/// </summary>
|
||||
public class PageQueryModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 页码,默认1
|
||||
/// </summary>
|
||||
public int PageIndex { get; set; } = 1;
|
||||
|
||||
/// <summary>
|
||||
/// 每页条数,默认10
|
||||
/// </summary>
|
||||
public int PageSize { get; set; } = 10;
|
||||
|
||||
/// <summary>
|
||||
/// 排序字段
|
||||
/// </summary>
|
||||
public string? SortField { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 排序方式(asc/desc)
|
||||
/// </summary>
|
||||
public string? SortOrder { get; set; }
|
||||
}
|
||||
43
QYZH.InteractiveMagazine.Models/Entity/BaseEntity.cs
Normal file
43
QYZH.InteractiveMagazine.Models/Entity/BaseEntity.cs
Normal file
@ -0,0 +1,43 @@
|
||||
using SqlSugar;
|
||||
|
||||
namespace QYZH.InteractiveMagazine.Models.Entity;
|
||||
|
||||
/// <summary>
|
||||
/// 基础实体类
|
||||
/// </summary>
|
||||
public abstract class BaseEntity
|
||||
{
|
||||
/// <summary>
|
||||
/// 主键Id
|
||||
/// </summary>
|
||||
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否已删除
|
||||
/// </summary>
|
||||
[SugarColumn(IsIgnore = false)]
|
||||
public bool IsDeleted { get; set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// 创建人
|
||||
/// </summary>
|
||||
[SugarColumn(Length = 50)]
|
||||
public string? CreatedBy { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
public DateTime CreatedTime { get; set; } = DateTime.Now;
|
||||
|
||||
/// <summary>
|
||||
/// 更新人
|
||||
/// </summary>
|
||||
[SugarColumn(Length = 50)]
|
||||
public string? UpdatedBy { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
public DateTime UpdatedTime { get; set; } = DateTime.Now;
|
||||
}
|
||||
@ -0,0 +1,13 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="SqlSugarCore" Version="5.1.4.166" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
27
QYZH.InteractiveMagazine.Models/Settings/JwtSettings.cs
Normal file
27
QYZH.InteractiveMagazine.Models/Settings/JwtSettings.cs
Normal file
@ -0,0 +1,27 @@
|
||||
namespace QYZH.InteractiveMagazine.Models.Settings;
|
||||
|
||||
/// <summary>
|
||||
/// JWT配置
|
||||
/// </summary>
|
||||
public class JwtSettings
|
||||
{
|
||||
/// <summary>
|
||||
/// 颁发者
|
||||
/// </summary>
|
||||
public string? Issuer { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 接收者
|
||||
/// </summary>
|
||||
public string? Audience { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 密钥
|
||||
/// </summary>
|
||||
public string? SecretKey { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 过期时间(分钟)
|
||||
/// </summary>
|
||||
public int ExpiryMinutes { get; set; }
|
||||
}
|
||||
32
QYZH.InteractiveMagazine.Models/Settings/RabbitMQSettings.cs
Normal file
32
QYZH.InteractiveMagazine.Models/Settings/RabbitMQSettings.cs
Normal file
@ -0,0 +1,32 @@
|
||||
namespace QYZH.InteractiveMagazine.Models.Settings;
|
||||
|
||||
/// <summary>
|
||||
/// RabbitMQ配置
|
||||
/// </summary>
|
||||
public class RabbitMQSettings
|
||||
{
|
||||
/// <summary>
|
||||
/// 主机地址
|
||||
/// </summary>
|
||||
public string? HostName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 端口
|
||||
/// </summary>
|
||||
public int Port { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户名
|
||||
/// </summary>
|
||||
public string? UserName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 密码
|
||||
/// </summary>
|
||||
public string? Password { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 虚拟主机
|
||||
/// </summary>
|
||||
public string? VirtualHost { get; set; }
|
||||
}
|
||||
17
QYZH.InteractiveMagazine.Models/Settings/RedisSettings.cs
Normal file
17
QYZH.InteractiveMagazine.Models/Settings/RedisSettings.cs
Normal file
@ -0,0 +1,17 @@
|
||||
namespace QYZH.InteractiveMagazine.Models.Settings;
|
||||
|
||||
/// <summary>
|
||||
/// Redis配置
|
||||
/// </summary>
|
||||
public class RedisSettings
|
||||
{
|
||||
/// <summary>
|
||||
/// 连接字符串
|
||||
/// </summary>
|
||||
public string? ConnectionString { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 实例名称
|
||||
/// </summary>
|
||||
public string? InstanceName { get; set; }
|
||||
}
|
||||
17
QYZH.InteractiveMagazine.Models/Settings/WeChatSettings.cs
Normal file
17
QYZH.InteractiveMagazine.Models/Settings/WeChatSettings.cs
Normal file
@ -0,0 +1,17 @@
|
||||
namespace QYZH.InteractiveMagazine.Models.Settings;
|
||||
|
||||
/// <summary>
|
||||
/// 微信小程序配置
|
||||
/// </summary>
|
||||
public class WeChatSettings
|
||||
{
|
||||
/// <summary>
|
||||
/// 应用Id
|
||||
/// </summary>
|
||||
public string? AppId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 应用密钥
|
||||
/// </summary>
|
||||
public string? AppSecret { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user