diff --git a/Yi.Furion.Rbac/Yi.Framework.Infrastructure/AspNetCore/StratUrlsExtensions.cs b/Yi.Furion.Rbac/Yi.Framework.Infrastructure/AspNetCore/StratUrlsExtensions.cs new file mode 100644 index 00000000..bd267c99 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Infrastructure/AspNetCore/StratUrlsExtensions.cs @@ -0,0 +1,19 @@ +using Microsoft.AspNetCore.Hosting; +using Microsoft.Extensions.Configuration; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Yi.Framework.Infrastructure.AspNetCore +{ + public static class StratUrlsExtensions + { + public static IWebHostBuilder UseStartUrlsServer(this IWebHostBuilder hostBuilder, IConfiguration configuration, string option = "StartUrl") + { + return hostBuilder.UseUrls(configuration.GetValue(option)); + } + + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/DictionaryConst.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/DictionaryConst.cs new file mode 100644 index 00000000..7aa2c416 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/DictionaryConst.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Yi.Framework.Module.DictionaryManager +{ + /// + /// 常量定义 + /// + + public class DictionaryConst + { + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/DictionaryService.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/DictionaryService.cs new file mode 100644 index 00000000..380c4cc3 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/DictionaryService.cs @@ -0,0 +1,50 @@ +using Furion.DependencyInjection; +using Furion.DynamicApiController; +using Microsoft.AspNetCore.Mvc; +using SqlSugar; +using Yi.Framework.Infrastructure.Ddd.Dtos; +using Yi.Framework.Infrastructure.Ddd.Services; +using Yi.Framework.Module.DictionaryManager.Dtos.Dictionary; +using Yi.Framework.Module.DictionaryManager.Entities; + +namespace Yi.Framework.Module.DictionaryManager +{ + /// + /// Dictionary服务实现 + /// + public class DictionaryService : CrudAppService, + IDictionaryService,IDynamicApiController,ITransient + { + /// + /// 查询 + /// + + public override async Task> GetListAsync(DictionaryGetListInputVo input) + { + RefAsync total = 0; + var entities = await _DbQueryable.WhereIF(input.DictType is not null, x => x.DictType == input.DictType) + .WhereIF(input.DictLabel is not null, x => x.DictLabel!.Contains(input.DictLabel!)) + .WhereIF(input.State is not null, x => x.State == input.State) + .ToPageListAsync(input.PageNum, input.PageSize, total); + return new PagedResultDto + { + Total = total, + Items = await MapToGetListOutputDtosAsync(entities) + }; + } + + + /// + /// 根据字典类型获取字典列表 + /// + /// + /// + [Route("/api/dictionary/dic-type/{dicType}")] + public async Task> GetDicType([FromRoute] string dicType) + { + var entities = await _repository.GetListAsync(u => u.DictType == dicType && u.State == true); + var result = await MapToGetListOutputDtosAsync(entities); + return result; + } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/DictionaryTypeConst.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/DictionaryTypeConst.cs new file mode 100644 index 00000000..0389552e --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/DictionaryTypeConst.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Yi.Framework.Module.DictionaryManager +{ + /// + /// 常量定义 + /// + + public class DictionaryTypeConst + { + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/DictionaryTypeService.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/DictionaryTypeService.cs new file mode 100644 index 00000000..c334fb43 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/DictionaryTypeService.cs @@ -0,0 +1,37 @@ +using Furion.DependencyInjection; +using Furion.DynamicApiController; +using SqlSugar; +using Yi.Framework.Infrastructure.Ddd.Dtos; +using Yi.Framework.Infrastructure.Ddd.Services; +using Yi.Framework.Module.DictionaryManager.Dtos.DictionaryType; +using Yi.Framework.Module.DictionaryManager.Entities; + +namespace Yi.Framework.Module.DictionaryManager +{ + /// + /// DictionaryType服务实现 + /// + public class DictionaryTypeService : CrudAppService, + IDictionaryTypeService, IDynamicApiController, ITransient + { + + + public async override Task> GetListAsync(DictionaryTypeGetListInputVo input) + { + + RefAsync total = 0; + var entities = await _DbQueryable.WhereIF(input.DictName is not null, x => x.DictName.Contains(input.DictName!)) + .WhereIF(input.DictType is not null, x => x.DictType!.Contains(input.DictType!)) + .WhereIF(input.State is not null, x => x.State == input.State) + .WhereIF(input.StartTime is not null && input.EndTime is not null, x => x.CreationTime >= input.StartTime && x.CreationTime <= input.EndTime) + .ToPageListAsync(input.PageNum, input.PageSize, total); + + return new PagedResultDto + { + Total = total, + Items = await MapToGetListOutputDtosAsync(entities) + }; + } + + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryCreateInputVo.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryCreateInputVo.cs new file mode 100644 index 00000000..af4ffdb2 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryCreateInputVo.cs @@ -0,0 +1,27 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Yi.Framework.Module.DictionaryManager.Dtos.Dictionary +{ + /// + /// Dictionary输入创建对象 + /// + public class DictionaryCreateInputVo + { + public long Id { get; set; } + public DateTime CreationTime { get; set; } = DateTime.Now; + public long? CreatorId { get; set; } + public string? Remark { get; set; } + public string? ListClass { get; set; } + public string? CssClass { get; set; } + public string DictType { get; set; } = string.Empty; + public string? DictLabel { get; set; } + public string DictValue { get; set; } = string.Empty; + public bool IsDefault { get; set; } + + public bool State { get; set; } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryGetListInputVo.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryGetListInputVo.cs new file mode 100644 index 00000000..bf0b2635 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryGetListInputVo.cs @@ -0,0 +1,11 @@ +using Yi.Framework.Infrastructure.Ddd.Dtos; + +namespace Yi.Framework.Module.DictionaryManager.Dtos.Dictionary +{ + public class DictionaryGetListInputVo : PagedAndSortedResultRequestDto + { + public string? DictType { get; set; } + public string? DictLabel { get; set; } + public bool? State { get; set; } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryGetListOutputDto.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryGetListOutputDto.cs new file mode 100644 index 00000000..e8144abf --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryGetListOutputDto.cs @@ -0,0 +1,19 @@ +using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; + +namespace Yi.Framework.Module.DictionaryManager.Dtos.Dictionary +{ + public class DictionaryGetListOutputDto : IEntityDto + { + public long Id { get; set; } + public DateTime CreationTime { get; set; } = DateTime.Now; + public long? CreatorId { get; set; } + public string? Remark { get; set; } + public string? ListClass { get; set; } + public string? CssClass { get; set; } + public string DictType { get; set; } = string.Empty; + public string? DictLabel { get; set; } + public string DictValue { get; set; } = string.Empty; + public bool IsDefault { get; set; } + public bool State { get; set; } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryGetOutputDto.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryGetOutputDto.cs new file mode 100644 index 00000000..0cebc834 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryGetOutputDto.cs @@ -0,0 +1,20 @@ +using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; + +namespace Yi.Framework.Module.DictionaryManager.Dtos.Dictionary +{ + public class DictionaryGetOutputDto : IEntityDto + { + public long Id { get; set; } + public DateTime CreationTime { get; set; } = DateTime.Now; + public long? CreatorId { get; set; } + public string? Remark { get; set; } + public string? ListClass { get; set; } + public string? CssClass { get; set; } + public string DictType { get; set; } = string.Empty; + public string? DictLabel { get; set; } + public string DictValue { get; set; } = string.Empty; + public bool IsDefault { get; set; } + + public bool State { get; set; } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryUpdateInputVo.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryUpdateInputVo.cs new file mode 100644 index 00000000..0a70fd25 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/Dictionary/DictionaryUpdateInputVo.cs @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Yi.Framework.Module.DictionaryManager.Dtos.Dictionary +{ + public class DictionaryUpdateInputVo + { + public long Id { get; set; } + public DateTime CreationTime { get; set; } = DateTime.Now; + public long? CreatorId { get; set; } + public string? Remark { get; set; } + public string? ListClass { get; set; } + public string? CssClass { get; set; } + public string DictType { get; set; } = string.Empty; + public string? DictLabel { get; set; } + public string DictValue { get; set; } = string.Empty; + public bool IsDefault { get; set; } + + public bool State { get; set; } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeCreateInputVo.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeCreateInputVo.cs new file mode 100644 index 00000000..f46000e4 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeCreateInputVo.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Yi.Framework.Module.DictionaryManager.Dtos.DictionaryType +{ + /// + /// DictionaryType输入创建对象 + /// + public class DictionaryTypeCreateInputVo + { + public long Id { get; set; } + public DateTime CreationTime { get; set; } = DateTime.Now; + public long? CreatorId { get; set; } + public string DictName { get; set; } = string.Empty; + public string DictType { get; set; } = string.Empty; + public string? Remark { get; set; } + + public bool State { get; set; } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeGetListInputVo.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeGetListInputVo.cs new file mode 100644 index 00000000..bb656301 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeGetListInputVo.cs @@ -0,0 +1,13 @@ +using Yi.Framework.Infrastructure.Ddd.Dtos; + +namespace Yi.Framework.Module.DictionaryManager.Dtos.DictionaryType +{ + public class DictionaryTypeGetListInputVo : PagedAllResultRequestDto + { + public string? DictName { get; set; } + public string? DictType { get; set; } + public string? Remark { get; set; } + + public bool? State { get; set; } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeGetListOutputDto.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeGetListOutputDto.cs new file mode 100644 index 00000000..0e51e551 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeGetListOutputDto.cs @@ -0,0 +1,16 @@ +using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; + +namespace Yi.Framework.Module.DictionaryManager.Dtos.DictionaryType +{ + public class DictionaryTypeGetListOutputDto : IEntityDto + { + public long Id { get; set; } + public DateTime CreationTime { get; set; } = DateTime.Now; + public long? CreatorId { get; set; } + public string DictName { get; set; } = string.Empty; + public string DictType { get; set; } = string.Empty; + public string? Remark { get; set; } + + public bool State { get; set; } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeGetOutputDto.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeGetOutputDto.cs new file mode 100644 index 00000000..693342f6 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeGetOutputDto.cs @@ -0,0 +1,16 @@ +using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; + +namespace Yi.Framework.Module.DictionaryManager.Dtos.DictionaryType +{ + public class DictionaryTypeGetOutputDto : IEntityDto + { + public long Id { get; set; } + public DateTime CreationTime { get; set; } = DateTime.Now; + public long? CreatorId { get; set; } + public string DictName { get; set; } = string.Empty; + public string DictType { get; set; } = string.Empty; + public string? Remark { get; set; } + + public bool State { get; set; } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeUpdateInputVo.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeUpdateInputVo.cs new file mode 100644 index 00000000..7470ef57 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Dtos/DictionaryType/DictionaryTypeUpdateInputVo.cs @@ -0,0 +1,13 @@ +namespace Yi.Framework.Module.DictionaryManager.Dtos.DictionaryType +{ + public class DictionaryTypeUpdateInputVo + { + public long Id { get; set; } + public DateTime CreationTime { get; set; } = DateTime.Now; + public long? CreatorId { get; set; } + public string DictName { get; set; } = string.Empty; + public string DictType { get; set; } = string.Empty; + public string? Remark { get; set; } + public bool State { get; set; } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Entities/DictionaryEntity.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Entities/DictionaryEntity.cs new file mode 100644 index 00000000..dfba464e --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Entities/DictionaryEntity.cs @@ -0,0 +1,71 @@ +using SqlSugar; +using Yi.Framework.Infrastructure.Data.Auditing; +using Yi.Framework.Infrastructure.Data.Entities; +using Yi.Framework.Infrastructure.Ddd.Entities; + +namespace Yi.Framework.Module.DictionaryManager.Entities +{ + [SugarTable("Dictionary")] + public class DictionaryEntity : AuditedObject, IEntity, ISoftDelete, IOrderNum, IState + { + /// + /// 主键 + /// + [SugarColumn(IsPrimaryKey = true)] + public long Id { get; set; } + + + /// + /// 逻辑删除 + /// + public bool IsDeleted { get; set; } + + /// + /// 排序 + /// + public int OrderNum { get; set; } = 0; + + /// + /// 状态 + /// + public bool State { get; set; } = true; + + /// + /// 描述 + /// + [SugarColumn(ColumnName = "Remark")] + public string? Remark { get; set; } + /// + /// tag类型 + /// + [SugarColumn(ColumnName = "ListClass")] + public string? ListClass { get; set; } + /// + /// tagClass + /// + [SugarColumn(ColumnName = "CssClass")] + public string? CssClass { get; set; } + + /// + /// 字典类型 + /// + [SugarColumn(ColumnName = "DictType")] + public string DictType { get; set; } = string.Empty; + /// + /// 字典标签 + /// + [SugarColumn(ColumnName = "DictLabel")] + public string? DictLabel { get; set; } + /// + /// 字典值 + /// + [SugarColumn(ColumnName = "DictValue")] + public string DictValue { get; set; } = string.Empty; + /// + /// 是否为该类型的默认值 + /// + [SugarColumn(ColumnName = "IsDefault")] + public bool IsDefault { get; set; } + + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Entities/DictionaryTypeEntity.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Entities/DictionaryTypeEntity.cs new file mode 100644 index 00000000..19997d0a --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/Entities/DictionaryTypeEntity.cs @@ -0,0 +1,50 @@ +using SqlSugar; +using Yi.Framework.Infrastructure.Data.Auditing; +using Yi.Framework.Infrastructure.Data.Entities; +using Yi.Framework.Infrastructure.Ddd.Entities; + +namespace Yi.Framework.Module.DictionaryManager.Entities +{ + [SugarTable("DictionaryType")] + public class DictionaryTypeEntity : AuditedObject, IEntity, ISoftDelete, IOrderNum + { + /// + /// 主键 + /// + [SugarColumn(IsPrimaryKey = true)] + public long Id { get; set; } + + /// + /// 逻辑删除 + /// + public bool IsDeleted { get; set; } + + /// + /// 排序 + /// + public int OrderNum { get; set; } = 0; + + + /// + /// 状态 + /// + public bool? State { get; set; } = true; + + /// + /// 字典名称 + /// + [SugarColumn(ColumnName = "DictName")] + public string DictName { get; set; } = string.Empty; + /// + /// 字典类型 + /// + [SugarColumn(ColumnName = "DictType")] + public string DictType { get; set; } = string.Empty; + + /// + /// 描述 + /// + [SugarColumn(ColumnName = "Remark")] + public string? Remark { get; set; } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/IDictionaryService.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/IDictionaryService.cs new file mode 100644 index 00000000..6e6ab248 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/IDictionaryService.cs @@ -0,0 +1,13 @@ +using Yi.Framework.Infrastructure.Ddd.Services.Abstract; +using Yi.Framework.Module.DictionaryManager.Dtos.Dictionary; + +namespace Yi.Framework.Module.DictionaryManager +{ + /// + /// Dictionary服务抽象 + /// + public interface IDictionaryService : ICrudAppService + { + + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/IDictionaryTypeService.cs b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/IDictionaryTypeService.cs new file mode 100644 index 00000000..eb104857 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/DictionaryManager/IDictionaryTypeService.cs @@ -0,0 +1,13 @@ +using Yi.Framework.Infrastructure.Ddd.Services.Abstract; +using Yi.Framework.Module.DictionaryManager.Dtos.DictionaryType; + +namespace Yi.Framework.Module.DictionaryManager +{ + /// + /// DictionaryType服务抽象 + /// + public interface IDictionaryTypeService : ICrudAppService + { + + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/FileManager/FileEntity.cs b/Yi.Furion.Rbac/Yi.Framework.Module/FileManager/FileEntity.cs new file mode 100644 index 00000000..46941edd --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/FileManager/FileEntity.cs @@ -0,0 +1,43 @@ +using SqlSugar; +using Yi.Framework.Infrastructure.Data.Auditing; +using Yi.Framework.Infrastructure.Ddd.Entities; + +namespace Yi.Framework.Module.FileManager +{ + /// + /// 文件表 + /// + [SugarTable("File")] + public class FileEntity : IEntity, IAuditedObject + { + [SugarColumn(ColumnName = "Id", IsPrimaryKey = true)] + public long Id { get; set; } + /// + /// 文件类型 + /// + [SugarColumn(ColumnName = "FileContentType")] + public string? FileContentType { get; set; } + /// + /// 文件大小 + /// + [SugarColumn(ColumnName = "FileSize")] + public decimal FileSize { get; set; } + /// + /// 文件名 + /// + [SugarColumn(ColumnName = "FileName")] + public string FileName { get; set; } + /// + /// 文件路径 + /// + [SugarColumn(ColumnName = "FilePath")] + public string FilePath { get; set; } + + public DateTime CreationTime { get; set; } + public long? CreatorId { get; set; } + + public long? LastModifierId { get; set; } + + public DateTime? LastModificationTime { get; set; } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/FileManager/FileGetListOutputDto.cs b/Yi.Furion.Rbac/Yi.Framework.Module/FileManager/FileGetListOutputDto.cs new file mode 100644 index 00000000..356da40e --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/FileManager/FileGetListOutputDto.cs @@ -0,0 +1,9 @@ +using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; + +namespace Yi.Framework.Module.FileManager +{ + public class FileGetListOutputDto : IEntityDto + { + public long Id { get; set; } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/FileManager/FileService.cs b/Yi.Furion.Rbac/Yi.Framework.Module/FileManager/FileService.cs new file mode 100644 index 00000000..8d4fd57d --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/FileManager/FileService.cs @@ -0,0 +1,143 @@ +using Furion.DependencyInjection; +using Furion.DynamicApiController; +using Mapster; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; +using Yi.Framework.Infrastructure.AspNetCore; +using Yi.Framework.Infrastructure.Const; +using Yi.Framework.Infrastructure.Ddd.Repositories; +using Yi.Framework.Infrastructure.Ddd.Services; +using Yi.Framework.Infrastructure.Enums; +using Yi.Framework.Infrastructure.Helper; +using Yi.Framework.Module.ImageSharp; + +namespace Yi.Framework.Module.FileManager +{ + /// + /// 文件处理 + /// + public class FileService : ApplicationService, IFileService, IDynamicApiController, ITransient + { + private readonly IRepository _repository; + private readonly ImageSharpManager _imageSharpManager; + private readonly HttpContext _httpContext; + public FileService(IRepository repository, ImageSharpManager imageSharpManager, IHttpContextAccessor httpContextAccessor + ) + { + _repository = repository; + _imageSharpManager = imageSharpManager; + if (httpContextAccessor.HttpContext is null) + { + throw new ApplicationException("HttpContext为空"); + } + _httpContext = httpContextAccessor.HttpContext; + } + + /// + /// 下载文件,是否缩略图 + /// + /// + [Route("/api/file/{code}/{isThumbnail?}")] + public async Task Get([FromRoute] long code, [FromRoute] bool? isThumbnail) + { + var file = await _repository.GetByIdAsync(code); + if (file is null) + { + return new NotFoundResult(); + } + + var path = file.FilePath; + //如果为缩略图,需要修改路径 + if (isThumbnail is true) + { + path = $"{PathConst.wwwroot}/{FileTypeEnum.Thumbnail}/{file.Id}{Path.GetExtension(file.FileName)}"; + } + //路径为: 文件路径/文件id+文件扩展名 + + if (!File.Exists(path)) + { + return new NotFoundResult(); + } + + var steam = await File.ReadAllBytesAsync(path); + + //设置附件下载,下载名称 + _httpContext.FileAttachmentHandle(file.FileName); + return new FileContentResult(steam, file.FileContentType ?? @"text/plain"); + } + + /// + /// 上传文件 + /// + /// + public async Task> Post([FromForm] IFormFileCollection file) + { + if (file.Count() == 0) + { + throw new ArgumentException("文件上传为空!"); + } + //批量插入 + List entities = new(); + + foreach (var f in file) + { + FileEntity data = new(); + data.Id = SnowflakeHelper.NextId; + data.FileSize = (decimal)f.Length / 1024; + data.FileName = f.FileName; + + + data.FileContentType = MimeHelper.GetMimeMapping(f.FileName); + + + var type = MimeHelper.GetFileType(f.FileName); + + //落盘文件,文件名为雪花id+自己的扩展名 + string filename = data.Id.ToString() + Path.GetExtension(f.FileName); + string typePath = $"{PathConst.wwwroot}/{type}"; + if (!Directory.Exists(typePath)) + { + Directory.CreateDirectory(typePath); + } + + var filePath = Path.Combine(typePath, filename); + data.FilePath = filePath; + + + //生成文件 + using (var stream = new FileStream(filePath, FileMode.CreateNew, FileAccess.ReadWrite)) + { + await f.CopyToAsync(stream); + + //如果是图片类型,还需要生成缩略图,当然,如果图片很小,直接复制过去即可 + if (FileTypeEnum.Image.Equals(type)) + { + string thumbnailPath = $"{PathConst.wwwroot}/{FileTypeEnum.Thumbnail}"; + if (!Directory.Exists(thumbnailPath)) + { + Directory.CreateDirectory(thumbnailPath); + } + string thumbnailFilePath = Path.Combine(thumbnailPath, filename); + try + { + _imageSharpManager.ImageCompress(f.FileName, f.OpenReadStream(), thumbnailFilePath); + } + catch + { + var result = new byte[stream.Length]; + await stream.ReadAsync(result, 0, result.Length); + await File.WriteAllBytesAsync(thumbnailFilePath, result); + } + } + + + }; + entities.Add(data); + } + await _repository.InsertRangeAsync(entities); + return entities.Adapt>(); + + + } + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/FileManager/IFileService.cs b/Yi.Furion.Rbac/Yi.Framework.Module/FileManager/IFileService.cs new file mode 100644 index 00000000..5040db92 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Framework.Module/FileManager/IFileService.cs @@ -0,0 +1,6 @@ +namespace Yi.Framework.Module.FileManager +{ + public interface IFileService + { + } +} diff --git a/Yi.Furion.Rbac/Yi.Framework.Module/Yi.Framework.Module.csproj b/Yi.Furion.Rbac/Yi.Framework.Module/Yi.Framework.Module.csproj index 10eb138b..57991a1d 100644 --- a/Yi.Furion.Rbac/Yi.Framework.Module/Yi.Framework.Module.csproj +++ b/Yi.Furion.Rbac/Yi.Framework.Module/Yi.Framework.Module.csproj @@ -29,5 +29,9 @@ + + + + diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/GlobalUsings.cs b/Yi.Furion.Rbac/Yi.Furion.Application/GlobalUsings.cs similarity index 100% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/GlobalUsings.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/GlobalUsings.cs diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Domain/AccountManager.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Domain/AccountManager.cs similarity index 95% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Domain/AccountManager.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Domain/AccountManager.cs index a61972fa..cf2a73dd 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Domain/AccountManager.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Domain/AccountManager.cs @@ -2,17 +2,17 @@ using Yi.Framework.Infrastructure.Ddd.Repositories; using Yi.Framework.Infrastructure.Exceptions; using Yi.Framework.Infrastructure.Helper; -using Yi.Furion.Rbac.Core.ConstClasses; -using Yi.Furion.Rbac.Core.Dtos; -using Yi.Furion.Rbac.Core.Entities; +using Yi.Furion.Core.Rbac.ConstClasses; +using Yi.Furion.Core.Rbac.Dtos; +using Yi.Furion.Core.Rbac.Entities; -namespace Yi.Furion.Rbac.Application.System.Domain +namespace Yi.Furion.Application.Rbac.Domain { /// /// 用户领域服务 /// - public class AccountManager:ITransient + public class AccountManager : ITransient { private readonly IRepository _repository; public AccountManager(IRepository repository) diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Domain/RoleManager.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Domain/RoleManager.cs similarity index 91% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Domain/RoleManager.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Domain/RoleManager.cs index 53fda996..b7e46ca5 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Domain/RoleManager.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Domain/RoleManager.cs @@ -1,10 +1,10 @@ using Yi.Framework.Infrastructure.Ddd.Repositories; using Yi.Framework.Infrastructure.Helper; -using Yi.Furion.Rbac.Core.Entities; +using Yi.Furion.Core.Rbac.Entities; -namespace Yi.Furion.Rbac.Application.System.Domain +namespace Yi.Furion.Application.Rbac.Domain { - public class RoleManager:ITransient + public class RoleManager : ITransient { private IRepository _repository; private IRepository _roleMenuRepository; diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Domain/UserManager.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Domain/UserManager.cs similarity index 95% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Domain/UserManager.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Domain/UserManager.cs index 2ae244fa..1daa800c 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Domain/UserManager.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Domain/UserManager.cs @@ -1,10 +1,10 @@ using Yi.Framework.Infrastructure.Ddd.Repositories; using Yi.Framework.Infrastructure.Helper; -using Yi.Furion.Rbac.Core.Entities; +using Yi.Furion.Core.Rbac.Entities; -namespace Yi.Furion.Rbac.Application.System.Domain +namespace Yi.Furion.Application.Rbac.Domain { - public class UserManager:ITransient + public class UserManager : ITransient { private readonly IRepository _repository; private readonly IRepository _repositoryUserRole; diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/CaptchaImageDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/CaptchaImageDto.cs similarity index 84% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/CaptchaImageDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/CaptchaImageDto.cs index e6dc2cc5..c3f7bedb 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/CaptchaImageDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/CaptchaImageDto.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Application.System.Dtos.Account +namespace Yi.Furion.Application.Rbac.Dtos.Account { public class CaptchaImageDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/LoginInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/LoginInputVo.cs similarity index 86% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/LoginInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/LoginInputVo.cs index ef9a7eb1..e2cea0ce 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/LoginInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/LoginInputVo.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Application.System.Dtos.Account +namespace Yi.Furion.Application.Rbac.Dtos.Account { public class LoginInputVo { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/PhoneCaptchaImageDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/PhoneCaptchaImageDto.cs similarity index 79% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/PhoneCaptchaImageDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/PhoneCaptchaImageDto.cs index 0882c629..677476d3 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/PhoneCaptchaImageDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/PhoneCaptchaImageDto.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Application.System.Dtos.Account +namespace Yi.Furion.Application.Rbac.Dtos.Account { public class PhoneCaptchaImageDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/RegisterDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/RegisterDto.cs similarity index 93% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/RegisterDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/RegisterDto.cs index 3a73ce0b..65119146 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/RegisterDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/RegisterDto.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Application.System.Dtos.Account +namespace Yi.Furion.Application.Rbac.Dtos.Account { public class RegisterDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/RestPasswordDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/RestPasswordDto.cs similarity index 79% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/RestPasswordDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/RestPasswordDto.cs index 81b836b5..3a806e86 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/RestPasswordDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/RestPasswordDto.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Application.System.Dtos.Account +namespace Yi.Furion.Application.Rbac.Dtos.Account { public class RestPasswordDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/UpdateIconDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/UpdateIconDto.cs similarity index 78% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/UpdateIconDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/UpdateIconDto.cs index 44158ecd..abaed5f4 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/UpdateIconDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/UpdateIconDto.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Application.System.Dtos.Account +namespace Yi.Furion.Application.Rbac.Dtos.Account { public class UpdateIconDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/UpdatePasswordDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/UpdatePasswordDto.cs similarity index 83% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/UpdatePasswordDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/UpdatePasswordDto.cs index 6c5a0394..cf3404e8 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Account/UpdatePasswordDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Account/UpdatePasswordDto.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Application.System.Dtos.Account +namespace Yi.Furion.Application.Rbac.Dtos.Account { public class UpdatePasswordDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptCreateInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptCreateInputVo.cs similarity index 92% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptCreateInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptCreateInputVo.cs index b202b5e6..896f8fd5 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptCreateInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptCreateInputVo.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Application.System.Dtos.Dept +namespace Yi.Furion.Application.Rbac.Dtos.Dept { /// /// Dept输入创建对象 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptGetListInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptGetListInputVo.cs similarity index 86% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptGetListInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptGetListInputVo.cs index 237c9781..f367104f 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptGetListInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptGetListInputVo.cs @@ -1,6 +1,6 @@ using Yi.Framework.Infrastructure.Ddd.Dtos; -namespace Yi.Furion.Rbac.Application.System.Dtos.Dept +namespace Yi.Furion.Application.Rbac.Dtos.Dept { public class DeptGetListInputVo : PagedAllResultRequestDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptGetListOutputDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptGetListOutputDto.cs similarity index 91% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptGetListOutputDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptGetListOutputDto.cs index 8f0fa31b..2d6800a5 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptGetListOutputDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptGetListOutputDto.cs @@ -1,6 +1,6 @@ using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; -namespace Yi.Furion.Rbac.Application.System.Dtos.Dept +namespace Yi.Furion.Application.Rbac.Dtos.Dept { public class DeptGetListOutputDto : IEntityDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptGetOutputDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptGetOutputDto.cs similarity index 90% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptGetOutputDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptGetOutputDto.cs index b05d552d..a2a8306a 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptGetOutputDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptGetOutputDto.cs @@ -1,6 +1,6 @@ using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; -namespace Yi.Furion.Rbac.Application.System.Dtos.Dept +namespace Yi.Furion.Application.Rbac.Dtos.Dept { public class DeptGetOutputDto : IEntityDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptUpdateInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptUpdateInputVo.cs similarity index 91% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptUpdateInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptUpdateInputVo.cs index a0035f9c..76c247fa 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Dept/DeptUpdateInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Dept/DeptUpdateInputVo.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Application.System.Dtos.Dept +namespace Yi.Furion.Application.Rbac.Dtos.Dept { public class DeptUpdateInputVo { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuCreateInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuCreateInputVo.cs similarity index 90% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuCreateInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuCreateInputVo.cs index 2da087a2..a23fe324 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuCreateInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuCreateInputVo.cs @@ -1,6 +1,6 @@ -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Application.System.Dtos.Menu +namespace Yi.Furion.Application.Rbac.Dtos.Menu { /// /// Menu输入创建对象 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuGetListInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuGetListInputVo.cs similarity index 80% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuGetListInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuGetListInputVo.cs index dbc90525..0b0af8b2 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuGetListInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuGetListInputVo.cs @@ -1,6 +1,6 @@ using Yi.Framework.Infrastructure.Ddd.Dtos; -namespace Yi.Furion.Rbac.Application.System.Dtos.Menu +namespace Yi.Furion.Application.Rbac.Dtos.Menu { public class MenuGetListInputVo : PagedAndSortedResultRequestDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuGetListOutputDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuGetListOutputDto.cs similarity index 91% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuGetListOutputDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuGetListOutputDto.cs index be61837e..93094d19 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuGetListOutputDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuGetListOutputDto.cs @@ -1,7 +1,7 @@ using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Application.System.Dtos.Menu +namespace Yi.Furion.Application.Rbac.Dtos.Menu { public class MenuGetListOutputDto : IEntityDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuGetOutputDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuGetOutputDto.cs similarity index 91% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuGetOutputDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuGetOutputDto.cs index 57da99e7..a5fc5fc6 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuGetOutputDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuGetOutputDto.cs @@ -1,7 +1,7 @@ using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Application.System.Dtos.Menu +namespace Yi.Furion.Application.Rbac.Dtos.Menu { public class MenuGetOutputDto : IEntityDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuUpdateInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuUpdateInputVo.cs similarity index 90% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuUpdateInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuUpdateInputVo.cs index 230a6fb4..b8bd7ec0 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Menu/MenuUpdateInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Menu/MenuUpdateInputVo.cs @@ -1,6 +1,6 @@ -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Application.System.Dtos.Menu +namespace Yi.Furion.Application.Rbac.Dtos.Menu { public class MenuUpdateInputVo { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostCreateInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostCreateInputVo.cs similarity index 91% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostCreateInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostCreateInputVo.cs index d702306f..3007a5db 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostCreateInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostCreateInputVo.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Application.System.Dtos.Post +namespace Yi.Furion.Application.Rbac.Dtos.Post { /// /// Post输入创建对象 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostGetListInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostGetListInputVo.cs similarity index 84% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostGetListInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostGetListInputVo.cs index 5eaff4f2..8a058a84 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostGetListInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostGetListInputVo.cs @@ -1,6 +1,6 @@ using Yi.Framework.Infrastructure.Ddd.Dtos; -namespace Yi.Furion.Rbac.Application.System.Dtos.Post +namespace Yi.Furion.Application.Rbac.Dtos.Post { public class PostGetListInputVo : PagedAndSortedResultRequestDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostGetListOutputDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostGetListOutputDto.cs similarity index 89% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostGetListOutputDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostGetListOutputDto.cs index 45431490..f230c7ff 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostGetListOutputDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostGetListOutputDto.cs @@ -1,6 +1,6 @@ using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; -namespace Yi.Furion.Rbac.Application.System.Dtos.Post +namespace Yi.Furion.Application.Rbac.Dtos.Post { public class PostGetListOutputDto : IEntityDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostGetOutputDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostGetOutputDto.cs similarity index 90% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostGetOutputDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostGetOutputDto.cs index 67d140bd..84ebd8ae 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostGetOutputDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostGetOutputDto.cs @@ -1,6 +1,6 @@ using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; -namespace Yi.Furion.Rbac.Application.System.Dtos.Post +namespace Yi.Furion.Application.Rbac.Dtos.Post { public class PostGetOutputDto : IEntityDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostUpdateInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostUpdateInputVo.cs similarity index 88% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostUpdateInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostUpdateInputVo.cs index 8293c0cc..281c4269 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Post/PostUpdateInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Post/PostUpdateInputVo.cs @@ -1,4 +1,4 @@ -namespace Yi.Furion.Rbac.Application.System.Dtos.Post +namespace Yi.Furion.Application.Rbac.Dtos.Post { public class PostUpdateInputVo { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleCreateInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleCreateInputVo.cs similarity index 84% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleCreateInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleCreateInputVo.cs index c79196f7..a1c5ce50 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleCreateInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleCreateInputVo.cs @@ -1,6 +1,6 @@ -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Application.System.Dtos.Role +namespace Yi.Furion.Application.Rbac.Dtos.Role { /// /// Role输入创建对象 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleGetListInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleGetListInputVo.cs similarity index 82% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleGetListInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleGetListInputVo.cs index cc1ee90e..5c2024f2 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleGetListInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleGetListInputVo.cs @@ -1,6 +1,6 @@ using Yi.Framework.Infrastructure.Ddd.Dtos; -namespace Yi.Furion.Rbac.Application.System.Dtos.Role +namespace Yi.Furion.Application.Rbac.Dtos.Role { public class RoleGetListInputVo : PagedAllResultRequestDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleGetListOutputDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleGetListOutputDto.cs similarity index 85% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleGetListOutputDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleGetListOutputDto.cs index 9495d183..83400198 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleGetListOutputDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleGetListOutputDto.cs @@ -1,7 +1,7 @@ using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Application.System.Dtos.Role +namespace Yi.Furion.Application.Rbac.Dtos.Role { public class RoleGetListOutputDto : IEntityDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleGetOutputDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleGetOutputDto.cs similarity index 85% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleGetOutputDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleGetOutputDto.cs index 93104a9a..f2a1a324 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleGetOutputDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleGetOutputDto.cs @@ -1,7 +1,7 @@ using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Application.System.Dtos.Role +namespace Yi.Furion.Application.Rbac.Dtos.Role { public class RoleGetOutputDto : IEntityDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleUpdateInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleUpdateInputVo.cs similarity index 82% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleUpdateInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleUpdateInputVo.cs index 3365bdf3..2128d3c9 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/Role/RoleUpdateInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/Role/RoleUpdateInputVo.cs @@ -1,6 +1,6 @@ -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Application.System.Dtos.Role +namespace Yi.Furion.Application.Rbac.Dtos.Role { public class RoleUpdateInputVo { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/ProfileUpdateInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/ProfileUpdateInputVo.cs similarity index 81% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/ProfileUpdateInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/ProfileUpdateInputVo.cs index f3e7cb8a..51b5dae2 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/ProfileUpdateInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/ProfileUpdateInputVo.cs @@ -1,6 +1,6 @@ -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Application.System.Dtos.User +namespace Yi.Furion.Application.Rbac.Dtos.User { public class ProfileUpdateInputVo { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserCreateInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserCreateInputVo.cs similarity index 90% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserCreateInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserCreateInputVo.cs index e8e112fb..f5b44ac7 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserCreateInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserCreateInputVo.cs @@ -1,6 +1,6 @@ -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Application.System.Dtos.User +namespace Yi.Furion.Application.Rbac.Dtos.User { /// /// User输入创建对象 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserGetListInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserGetListInputVo.cs similarity index 87% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserGetListInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserGetListInputVo.cs index a19cb23b..db6ff6d3 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserGetListInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserGetListInputVo.cs @@ -1,6 +1,6 @@ using Yi.Framework.Infrastructure.Ddd.Dtos; -namespace Yi.Furion.Rbac.Application.System.Dtos.User +namespace Yi.Furion.Application.Rbac.Dtos.User { public class UserGetListInputVo : PagedAllResultRequestDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserGetListOutputDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserGetListOutputDto.cs similarity index 91% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserGetListOutputDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserGetListOutputDto.cs index 45c49083..f4d31db8 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserGetListOutputDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserGetListOutputDto.cs @@ -1,7 +1,7 @@ using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Application.System.Dtos.User +namespace Yi.Furion.Application.Rbac.Dtos.User { public class UserGetListOutputDto : IEntityDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserGetOutputDto.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserGetOutputDto.cs similarity index 80% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserGetOutputDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserGetOutputDto.cs index bf1f7e6b..ace03d42 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserGetOutputDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserGetOutputDto.cs @@ -1,10 +1,10 @@ using Yi.Framework.Infrastructure.Ddd.Dtos.Abstract; -using Yi.Furion.Rbac.Application.System.Dtos.Dept; -using Yi.Furion.Rbac.Application.System.Dtos.Post; -using Yi.Furion.Rbac.Application.System.Dtos.Role; -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Application.Rbac.Dtos.Dept; +using Yi.Furion.Application.Rbac.Dtos.Post; +using Yi.Furion.Application.Rbac.Dtos.Role; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Application.System.Dtos.User +namespace Yi.Furion.Application.Rbac.Dtos.User { public class UserGetOutputDto : IEntityDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserUpdateInputVo.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserUpdateInputVo.cs similarity index 89% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserUpdateInputVo.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserUpdateInputVo.cs index 423ab831..7f06cff1 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Dtos/User/UserUpdateInputVo.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Dtos/User/UserUpdateInputVo.cs @@ -1,6 +1,6 @@ -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Application.System.Dtos.User +namespace Yi.Furion.Application.Rbac.Dtos.User { public class UserUpdateInputVo { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Event/LoginEventHandler.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Event/LoginEventHandler.cs similarity index 89% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Event/LoginEventHandler.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Event/LoginEventHandler.cs index 65ac38c4..7fc20512 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Event/LoginEventHandler.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Event/LoginEventHandler.cs @@ -4,16 +4,16 @@ using UAParser; using Yi.Framework.Infrastructure.AspNetCore; using Yi.Framework.Infrastructure.Ddd.Repositories; using Yi.Framework.Infrastructure.Helper; -using Yi.Furion.Rbac.Core.Entities; -using Yi.Furion.Rbac.Core.Etos; +using Yi.Furion.Core.Rbac.Entities; +using Yi.Furion.Core.Rbac.Etos; -namespace Yi.Furion.Rbac.Application.System.Event +namespace Yi.Furion.Application.Rbac.Event { - public class LoginEventHandler : IEventSubscriber,ISingleton + public class LoginEventHandler : IEventSubscriber, ISingleton { private readonly IRepository _loginLogRepository; private readonly IHttpContextAccessor _httpContextAccessor; - private HttpContext _httpContext=> _httpContextAccessor.HttpContext; + private HttpContext _httpContext => _httpContextAccessor.HttpContext; public LoginEventHandler(IRepository loginLogRepository, IHttpContextAccessor httpContextAccessor) { _loginLogRepository = loginLogRepository; @@ -22,7 +22,7 @@ namespace Yi.Furion.Rbac.Application.System.Event //[EventSubscribe(nameof(LoginEventSource))] public Task HandlerAsync(EventHandlerExecutingContext context) { - var eventData=(LoginEventArgs)context.Source.Payload; + var eventData = (LoginEventArgs)context.Source.Payload; var loginLogEntity = GetLoginLogInfo(_httpContext); loginLogEntity.Id = SnowflakeHelper.NextId; loginLogEntity.LogMsg = eventData.UserName + "登录系统"; diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IDeptService.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IDeptService.cs similarity index 73% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IDeptService.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IDeptService.cs index 1d7ea8e4..150a1102 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IDeptService.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IDeptService.cs @@ -1,7 +1,7 @@ using Yi.Framework.Infrastructure.Ddd.Services.Abstract; -using Yi.Furion.Rbac.Application.System.Dtos.Dept; +using Yi.Furion.Application.Rbac.Dtos.Dept; -namespace Yi.Furion.Rbac.Application.System.Services +namespace Yi.Furion.Application.Rbac.Services { /// /// Dept服务抽象 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IMenuService.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IMenuService.cs similarity index 73% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IMenuService.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IMenuService.cs index 5a91d470..77f4c1b4 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IMenuService.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IMenuService.cs @@ -1,7 +1,7 @@ using Yi.Framework.Infrastructure.Ddd.Services.Abstract; -using Yi.Furion.Rbac.Application.System.Dtos.Menu; +using Yi.Furion.Application.Rbac.Dtos.Menu; -namespace Yi.Furion.Rbac.Application.System.Services +namespace Yi.Furion.Application.Rbac.Services { /// /// Menu服务抽象 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IPostService.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IPostService.cs similarity index 73% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IPostService.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IPostService.cs index bc896083..e28dfb17 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IPostService.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IPostService.cs @@ -1,7 +1,7 @@ using Yi.Framework.Infrastructure.Ddd.Services.Abstract; -using Yi.Furion.Rbac.Application.System.Dtos.Post; +using Yi.Furion.Application.Rbac.Dtos.Post; -namespace Yi.Furion.Rbac.Application.System.Services +namespace Yi.Furion.Application.Rbac.Services { /// /// Post服务抽象 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IRoleService.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IRoleService.cs similarity index 73% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IRoleService.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IRoleService.cs index e06003e0..2bae6837 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IRoleService.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IRoleService.cs @@ -1,7 +1,7 @@ using Yi.Framework.Infrastructure.Ddd.Services.Abstract; -using Yi.Furion.Rbac.Application.System.Dtos.Role; +using Yi.Furion.Application.Rbac.Dtos.Role; -namespace Yi.Furion.Rbac.Application.System.Services +namespace Yi.Furion.Application.Rbac.Services { /// /// Role服务抽象 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IUserService.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IUserService.cs similarity index 73% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IUserService.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IUserService.cs index 90c72f29..90577e5a 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/IUserService.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/IUserService.cs @@ -1,7 +1,7 @@ using Yi.Framework.Infrastructure.Ddd.Services.Abstract; -using Yi.Furion.Rbac.Application.System.Dtos.User; +using Yi.Furion.Application.Rbac.Dtos.User; -namespace Yi.Furion.Rbac.Application.System.Services +namespace Yi.Furion.Application.Rbac.Services { /// /// User服务抽象 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/AccountService.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/AccountService.cs similarity index 92% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/AccountService.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/AccountService.cs index d7d89ba1..d3666190 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/AccountService.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/AccountService.cs @@ -9,15 +9,15 @@ using Yi.Framework.Infrastructure.Ddd.Services; using Yi.Framework.Infrastructure.Exceptions; using Yi.Framework.Module.ImageSharp.HeiCaptcha; using Yi.Framework.Module.Sms.Aliyun; -using Yi.Furion.Rbac.Application.System.Domain; -using Yi.Furion.Rbac.Application.System.Dtos.Account; -using Yi.Furion.Rbac.Core.ConstClasses; -using Yi.Furion.Rbac.Core.Dtos; -using Yi.Furion.Rbac.Core.Entities; -using Yi.Furion.Rbac.Core.Etos; -using Yi.Furion.Rbac.Sqlsugar.Core.Repositories; +using Yi.Furion.Application.Rbac.Domain; +using Yi.Furion.Application.Rbac.Dtos.Account; +using Yi.Furion.Core.Rbac.ConstClasses; +using Yi.Furion.Core.Rbac.Dtos; +using Yi.Furion.Core.Rbac.Entities; +using Yi.Furion.Core.Rbac.Etos; +using Yi.Furion.Sqlsugar.Core.Repositories; -namespace Yi.Furion.Rbac.Application.System.Services.Impl +namespace Yi.Furion.Application.Rbac.Services.Impl { public class AccountService : ApplicationService, ITransient, IDynamicApiController { @@ -251,16 +251,16 @@ namespace Yi.Furion.Rbac.Application.System.Services.Impl throw new UserFriendlyException("用户已存在,注册失败"); } - var newUser = new UserEntity(input.UserName, input.Password, input.Phone); + var newUser = new UserEntity(input.UserName, input.Password, input.Phone); - var entity = await _userRepository.InsertReturnEntityAsync(newUser); - //赋上一个初始角色 - var roleRepository = _roleRepository; - var role = await roleRepository.GetFirstAsync(x => x.RoleCode == UserConst.GuestRoleCode); - if (role is not null) - { - await _userManager.GiveUserSetRoleAsync(new List { entity.Id }, new List { role.Id }); - } + var entity = await _userRepository.InsertReturnEntityAsync(newUser); + //赋上一个初始角色 + var roleRepository = _roleRepository; + var role = await roleRepository.GetFirstAsync(x => x.RoleCode == UserConst.GuestRoleCode); + if (role is not null) + { + await _userManager.GiveUserSetRoleAsync(new List { entity.Id }, new List { role.Id }); + } return true; } diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/DeptService.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/DeptService.cs similarity index 92% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/DeptService.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/DeptService.cs index 04b25458..79149062 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/DeptService.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/DeptService.cs @@ -1,10 +1,10 @@ using SqlSugar; using Yi.Framework.Infrastructure.Ddd.Dtos; using Yi.Framework.Infrastructure.Ddd.Services; -using Yi.Furion.Rbac.Application.System.Dtos.Dept; -using Yi.Furion.Rbac.Core.Entities; +using Yi.Furion.Application.Rbac.Dtos.Dept; +using Yi.Furion.Core.Rbac.Entities; -namespace Yi.Furion.Rbac.Application.System.Services.Impl +namespace Yi.Furion.Application.Rbac.Services.Impl { /// /// Dept服务实现 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/MenuService.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/MenuService.cs similarity index 90% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/MenuService.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/MenuService.cs index e4dbaca4..f7fda4f1 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/MenuService.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/MenuService.cs @@ -1,10 +1,11 @@ using SqlSugar; using Yi.Framework.Infrastructure.Ddd.Dtos; using Yi.Framework.Infrastructure.Ddd.Services; -using Yi.Furion.Rbac.Application.System.Dtos.Menu; -using Yi.Furion.Rbac.Core.Entities; +using Yi.Furion.Application.Rbac.Dtos.Menu; +using Yi.Furion.Application.Rbac.Services; +using Yi.Furion.Core.Rbac.Entities; -namespace Yi.Furion.Rbac.Application.System.Services.Impl +namespace Yi.Furion.Application.Rbac.Services.Impl { /// /// Menu服务实现 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/PostService.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/PostService.cs similarity index 87% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/PostService.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/PostService.cs index 58efb681..d1e164f3 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/PostService.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/PostService.cs @@ -1,10 +1,10 @@ using SqlSugar; using Yi.Framework.Infrastructure.Ddd.Dtos; using Yi.Framework.Infrastructure.Ddd.Services; -using Yi.Furion.Rbac.Application.System.Dtos.Post; -using Yi.Furion.Rbac.Core.Entities; +using Yi.Furion.Application.Rbac.Dtos.Post; +using Yi.Furion.Core.Rbac.Entities; -namespace Yi.Furion.Rbac.Application.System.Services.Impl +namespace Yi.Furion.Application.Rbac.Services.Impl { /// /// Post服务实现 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/RoleService.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/RoleService.cs similarity index 77% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/RoleService.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/RoleService.cs index 5f0ecdcc..93e2800d 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/RoleService.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/RoleService.cs @@ -1,11 +1,11 @@ using SqlSugar; using Yi.Framework.Infrastructure.Ddd.Dtos; using Yi.Framework.Infrastructure.Ddd.Services; -using Yi.Furion.Rbac.Application.System.Domain; -using Yi.Furion.Rbac.Application.System.Dtos.Role; -using Yi.Furion.Rbac.Core.Entities; +using Yi.Furion.Application.Rbac.Domain; +using Yi.Furion.Application.Rbac.Dtos.Role; +using Yi.Furion.Core.Rbac.Entities; -namespace Yi.Furion.Rbac.Application.System.Services.Impl +namespace Yi.Furion.Application.Rbac.Services.Impl { /// /// Role服务实现 @@ -14,8 +14,8 @@ namespace Yi.Furion.Rbac.Application.System.Services.Impl IRoleService, ITransient, IDynamicApiController { public RoleService(RoleManager roleManager) => - (_roleManager) = - (roleManager); + _roleManager = + roleManager; private RoleManager _roleManager { get; set; } @@ -45,10 +45,10 @@ namespace Yi.Furion.Rbac.Application.System.Services.Impl RoleGetOutputDto outputDto; //using (var uow = _unitOfWorkManager.CreateContext()) //{ - var entity = await MapToEntityAsync(input); - await _repository.InsertAsync(entity); - outputDto = await MapToGetOutputDtoAsync(entity); - await _roleManager.GiveRoleSetMenuAsync(new List { entity.Id }, input.MenuIds); + var entity = await MapToEntityAsync(input); + await _repository.InsertAsync(entity); + outputDto = await MapToGetOutputDtoAsync(entity); + await _roleManager.GiveRoleSetMenuAsync(new List { entity.Id }, input.MenuIds); // uow.Commit(); //} @@ -67,13 +67,13 @@ namespace Yi.Furion.Rbac.Application.System.Services.Impl var dto = new RoleGetOutputDto(); //using (var uow = _unitOfWorkManager.CreateContext()) //{ - var entity = await _repository.GetByIdAsync(id); - await MapToEntityAsync(input, entity); - await _repository.UpdateAsync(entity); + var entity = await _repository.GetByIdAsync(id); + await MapToEntityAsync(input, entity); + await _repository.UpdateAsync(entity); - await _roleManager.GiveRoleSetMenuAsync(new List { id }, input.MenuIds); + await _roleManager.GiveRoleSetMenuAsync(new List { id }, input.MenuIds); - dto = await MapToGetOutputDtoAsync(entity); + dto = await MapToGetOutputDtoAsync(entity); // uow.Commit(); //} return dto; diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/UserService.cs b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/UserService.cs similarity index 86% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/UserService.cs rename to Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/UserService.cs index e90f676b..5c08f00e 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/System/Services/Impl/UserService.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Rbac/Services/Impl/UserService.cs @@ -4,13 +4,13 @@ using Yi.Framework.Infrastructure.Ddd.Dtos; using Yi.Framework.Infrastructure.Ddd.Services; using Yi.Framework.Infrastructure.Exceptions; using Yi.Framework.Module.OperLogManager; -using Yi.Furion.Rbac.Application.System.Domain; -using Yi.Furion.Rbac.Application.System.Dtos.User; -using Yi.Furion.Rbac.Core.ConstClasses; -using Yi.Furion.Rbac.Core.Entities; -using Yi.Furion.Rbac.Sqlsugar.Core.Repositories; +using Yi.Furion.Application.Rbac.Domain; +using Yi.Furion.Application.Rbac.Dtos.User; +using Yi.Furion.Core.Rbac.ConstClasses; +using Yi.Furion.Core.Rbac.Entities; +using Yi.Furion.Sqlsugar.Core.Repositories; -namespace Yi.Furion.Rbac.Application.System.Services.Impl +namespace Yi.Furion.Application.Rbac.Services.Impl { /// /// User服务实现 @@ -21,13 +21,13 @@ namespace Yi.Furion.Rbac.Application.System.Services.Impl public UserService(UserManager userManager, IUserRepository userRepository, ICurrentUser currentUser) => - (_userManager, _userRepository, _currentUser) = + (_userManager, _userRepository, _currentUser) = (userManager, userRepository, currentUser); private UserManager _userManager { get; set; } private IUserRepository _userRepository { get; set; } - + private ICurrentUser _currentUser { get; set; } /// @@ -89,13 +89,13 @@ namespace Yi.Furion.Rbac.Application.System.Services.Impl //using (var uow = _unitOfWorkManager.CreateContext()) //{ - var returnEntity = await _repository.InsertReturnEntityAsync(entities); - await _userManager.GiveUserSetRoleAsync(new List { returnEntity.Id }, input.RoleIds); - await _userManager.GiveUserSetPostAsync(new List { returnEntity.Id }, input.PostIds); - //uow.Commit(); + var returnEntity = await _repository.InsertReturnEntityAsync(entities); + await _userManager.GiveUserSetRoleAsync(new List { returnEntity.Id }, input.RoleIds); + await _userManager.GiveUserSetPostAsync(new List { returnEntity.Id }, input.PostIds); + //uow.Commit(); - var result = await MapToGetOutputDtoAsync(returnEntity); - return result; + var result = await MapToGetOutputDtoAsync(returnEntity); + return result; //} } /// @@ -135,9 +135,9 @@ namespace Yi.Furion.Rbac.Application.System.Services.Impl await MapToEntityAsync(input, entity); //using (var uow = _unitOfWorkManager.CreateContext()) //{ - var res1 = await _repository.UpdateAsync(entity); - await _userManager.GiveUserSetRoleAsync(new List { id }, input.RoleIds); - await _userManager.GiveUserSetPostAsync(new List { id }, input.PostIds); + var res1 = await _repository.UpdateAsync(entity); + await _userManager.GiveUserSetRoleAsync(new List { id }, input.RoleIds); + await _userManager.GiveUserSetPostAsync(new List { id }, input.PostIds); // uow.Commit(); //} return await MapToGetOutputDtoAsync(entity); diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/Yi.Furion.Rbac.Application.csproj b/Yi.Furion.Rbac/Yi.Furion.Application/Yi.Furion.Application.csproj similarity index 71% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/Yi.Furion.Rbac.Application.csproj rename to Yi.Furion.Rbac/Yi.Furion.Application/Yi.Furion.Application.csproj index 337d0f8e..1c25e675 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/Yi.Furion.Rbac.Application.csproj +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Yi.Furion.Application.csproj @@ -4,7 +4,7 @@ net6.0 1701;1702;1591 - Yi.Furion.Rbac.Application.xml + Yi.Furion.Application.xml enable @@ -12,7 +12,7 @@ - + @@ -24,11 +24,11 @@ - + - + diff --git a/Yi.Furion.Rbac/Yi.Furion.Application/Yi.Furion.Application.xml b/Yi.Furion.Rbac/Yi.Furion.Application/Yi.Furion.Application.xml new file mode 100644 index 00000000..6dea7636 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Furion.Application/Yi.Furion.Application.xml @@ -0,0 +1,364 @@ + + + + Yi.Furion.Application + + + + + 用户领域服务 + + + + + 登录效验 + + + + + + + + + 判断账户合法存在 + + + + + + + + 令牌转换 + + + + + + + 更新密码 + + + + + + + + + + 重置密码 + + + + + + + + 给角色设置菜单 + + + + + + + + 给用户设置角色 + + + + + + + + 给用户设置岗位 + + + + + + + + 账号 + + + + + 密码 + + + + + 唯一标识码 + + + + + 电话 + + + + + 验证码 + + + + + Dept输入创建对象 + + + + + Menu输入创建对象 + + + + + Post输入创建对象 + + + + + Role输入创建对象 + + + + + User输入创建对象 + + + + + 获取客户端信息 + + + + + + + 记录用户登陆信息 + + + + + + + Dept服务抽象 + + + + + Menu服务抽象 + + + + + 效验图片登录验证码,无需和账号绑定 + + + + + 效验电话验证码,需要与电话号码绑定 + + + + + 登录 + + + + + + + 生成验证码 + + + + + + 验证电话号码 + + + + + + 注册 手机验证码 + + + + + + 注册,需要验证码通过 + + + + + + + 查询已登录的账户信息 + + + + + + + 获取当前登录用户的前端路由 + + + + + + 退出登录 + + + + + + 更新密码 + + + + + + + 重置密码 + + + + + + + + 更新头像 + + + + + + + Dept服务实现 + + + + + 通过角色id查询该角色全部部门 + + + + + + 多查 + + + + + + + Menu服务实现 + + + + + 查询当前角色的菜单 + + + + + + + Post服务实现 + + + + + Role服务实现 + + + + + 添加角色 + + + + + + + 修改角色 + + + + + + + + 更新状态 + + + + + + + + User服务实现 + + + + + 查询用户 + + + + + + + 添加用户 + + + + + + + + 单查 + + + + + + + 更新用户 + + + + + + + + 更新个人中心 + + + + + + + 更新状态 + + + + + + + + Post服务抽象 + + + + + Role服务抽象 + + + + + User服务抽象 + + + + diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/Yi.Furion.Rbac.Application.xml b/Yi.Furion.Rbac/Yi.Furion.Application/Yi.Furion.Rbac.Application.xml similarity index 100% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/Yi.Furion.Rbac.Application.xml rename to Yi.Furion.Rbac/Yi.Furion.Application/Yi.Furion.Rbac.Application.xml diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Application/applicationsettings.json b/Yi.Furion.Rbac/Yi.Furion.Application/applicationsettings.json similarity index 100% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Application/applicationsettings.json rename to Yi.Furion.Rbac/Yi.Furion.Application/applicationsettings.json diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/DeptConst.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/DeptConst.cs similarity index 83% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/DeptConst.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/DeptConst.cs index 3de7965e..6572561a 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/DeptConst.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/DeptConst.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Core.ConstClasses +namespace Yi.Furion.Core.Rbac.ConstClasses { /// /// 常量定义 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/MenuConst.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/MenuConst.cs similarity index 83% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/MenuConst.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/MenuConst.cs index f305b444..01a79614 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/MenuConst.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/MenuConst.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Core.ConstClasses +namespace Yi.Furion.Core.Rbac.ConstClasses { /// /// 常量定义 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/PostConst.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/PostConst.cs similarity index 83% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/PostConst.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/PostConst.cs index dbda92ab..4faa9f0c 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/PostConst.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/PostConst.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Core.ConstClasses +namespace Yi.Furion.Core.Rbac.ConstClasses { /// /// 常量定义 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/RoleConst.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/RoleConst.cs similarity index 83% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/RoleConst.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/RoleConst.cs index ed7c16da..59743899 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/RoleConst.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/RoleConst.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Core.ConstClasses +namespace Yi.Furion.Core.Rbac.ConstClasses { /// /// 常量定义 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/UserConst.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/UserConst.cs similarity index 96% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/UserConst.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/UserConst.cs index 342f9433..ac8909d8 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/ConstClasses/UserConst.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/ConstClasses/UserConst.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Core.ConstClasses +namespace Yi.Furion.Core.Rbac.ConstClasses { /// /// 常量定义 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Dtos/UserRoleMenuDto.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Dtos/UserRoleMenuDto.cs similarity index 84% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Dtos/UserRoleMenuDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Dtos/UserRoleMenuDto.cs index 760fe062..e81ed7a1 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Dtos/UserRoleMenuDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Dtos/UserRoleMenuDto.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; -using Yi.Furion.Rbac.Core.Entities; +using Yi.Furion.Core.Rbac.Entities; -namespace Yi.Furion.Rbac.Core.Dtos +namespace Yi.Furion.Core.Rbac.Dtos { public class UserRoleMenuDto { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Dtos/Vue3RouterDto.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Dtos/Vue3RouterDto.cs similarity index 96% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Dtos/Vue3RouterDto.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Dtos/Vue3RouterDto.cs index 30232f76..09acbe9b 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Dtos/Vue3RouterDto.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Dtos/Vue3RouterDto.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; using static Yi.Framework.Infrastructure.Helper.TreeHelper; -namespace Yi.Furion.Rbac.Core.Dtos +namespace Yi.Furion.Core.Rbac.Dtos { public class Vue3RouterDto : ITreeModel { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/DeptEntity.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/DeptEntity.cs similarity index 98% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/DeptEntity.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/DeptEntity.cs index 476af71d..3feaae8c 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/DeptEntity.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/DeptEntity.cs @@ -7,7 +7,7 @@ using Yi.Framework.Infrastructure.Data.Auditing; using Yi.Framework.Infrastructure.Data.Entities; using Yi.Framework.Infrastructure.Ddd.Entities; -namespace Yi.Furion.Rbac.Core.Entities +namespace Yi.Furion.Core.Rbac.Entities { /// /// 部门表 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/LoginLogEntity.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/LoginLogEntity.cs similarity index 97% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/LoginLogEntity.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/LoginLogEntity.cs index 0d2f4131..df7ebecb 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/LoginLogEntity.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/LoginLogEntity.cs @@ -3,7 +3,7 @@ using SqlSugar; using Yi.Framework.Infrastructure.Data.Auditing; using Yi.Framework.Infrastructure.Ddd.Entities; -namespace Yi.Furion.Rbac.Core.Entities +namespace Yi.Furion.Core.Rbac.Entities { [SugarTable("LoginLog")] public class LoginLogEntity : IEntity, ICreationAuditedObject diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/MenuEntity.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/MenuEntity.cs similarity index 98% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/MenuEntity.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/MenuEntity.cs index 6178e877..ab3c4b94 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/MenuEntity.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/MenuEntity.cs @@ -6,10 +6,10 @@ using Yi.Framework.Infrastructure.Data.Auditing; using Yi.Framework.Infrastructure.Data.Entities; using Yi.Framework.Infrastructure.Ddd.Entities; using Yi.Framework.Infrastructure.Helper; -using Yi.Furion.Rbac.Core.Dtos; -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.Dtos; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Core.Entities +namespace Yi.Furion.Core.Rbac.Entities { /// /// 菜单表 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/PostEntity.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/PostEntity.cs similarity index 97% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/PostEntity.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/PostEntity.cs index 12fe278e..5e2d5426 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/PostEntity.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/PostEntity.cs @@ -4,7 +4,7 @@ using Yi.Framework.Infrastructure.Data.Auditing; using Yi.Framework.Infrastructure.Data.Entities; using Yi.Framework.Infrastructure.Ddd.Entities; -namespace Yi.Furion.Rbac.Core.Entities +namespace Yi.Furion.Core.Rbac.Entities { /// /// 岗位表 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/RoleDeptEntity.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/RoleDeptEntity.cs similarity index 94% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/RoleDeptEntity.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/RoleDeptEntity.cs index c0c91c08..74ac3899 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/RoleDeptEntity.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/RoleDeptEntity.cs @@ -5,7 +5,7 @@ using System.Text.Json.Serialization; using SqlSugar; using Yi.Framework.Infrastructure.Ddd.Entities; -namespace Yi.Furion.Rbac.Core.Entities; +namespace Yi.Furion.Core.Rbac.Entities; /// /// 角色部门关系表 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/RoleEntity.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/RoleEntity.cs similarity index 96% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/RoleEntity.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/RoleEntity.cs index 3f720ccf..c25c3338 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/RoleEntity.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/RoleEntity.cs @@ -4,9 +4,9 @@ using SqlSugar; using Yi.Framework.Infrastructure.Data.Auditing; using Yi.Framework.Infrastructure.Data.Entities; using Yi.Framework.Infrastructure.Ddd.Entities; -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Core.Entities +namespace Yi.Furion.Core.Rbac.Entities { /// /// 角色表 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/RoleMenuEntity.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/RoleMenuEntity.cs similarity index 94% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/RoleMenuEntity.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/RoleMenuEntity.cs index 3d54087e..72e6bbec 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/RoleMenuEntity.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/RoleMenuEntity.cs @@ -5,7 +5,7 @@ using System.Text.Json.Serialization; using SqlSugar; using Yi.Framework.Infrastructure.Ddd.Entities; -namespace Yi.Furion.Rbac.Core.Entities; +namespace Yi.Furion.Core.Rbac.Entities; /// /// 角色菜单关系表 /// diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/UserEntity.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/UserEntity.cs similarity index 98% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/UserEntity.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/UserEntity.cs index 4a6fd793..4d236978 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/UserEntity.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/UserEntity.cs @@ -5,9 +5,9 @@ using Yi.Framework.Infrastructure.Data.Auditing; using Yi.Framework.Infrastructure.Data.Entities; using Yi.Framework.Infrastructure.Ddd.Entities; using Yi.Framework.Infrastructure.Helper; -using Yi.Furion.Rbac.Core.EnumClasses; +using Yi.Furion.Core.Rbac.EnumClasses; -namespace Yi.Furion.Rbac.Core.Entities +namespace Yi.Furion.Core.Rbac.Entities { /// /// 用户表 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/UserPostEntity.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/UserPostEntity.cs similarity index 94% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/UserPostEntity.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/UserPostEntity.cs index 824ef6e0..c60ed9d6 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/UserPostEntity.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/UserPostEntity.cs @@ -5,7 +5,7 @@ using System.Text.Json.Serialization; using SqlSugar; using Yi.Framework.Infrastructure.Ddd.Entities; -namespace Yi.Furion.Rbac.Core.Entities; +namespace Yi.Furion.Core.Rbac.Entities; /// /// 用户岗位表 /// diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/UserRoleEntity.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/UserRoleEntity.cs similarity index 94% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/UserRoleEntity.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/UserRoleEntity.cs index 61268da6..ab802cb5 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Entities/UserRoleEntity.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Entities/UserRoleEntity.cs @@ -4,7 +4,7 @@ using System.Linq; using SqlSugar; using Yi.Framework.Infrastructure.Ddd.Entities; -namespace Yi.Furion.Rbac.Core.Entities +namespace Yi.Furion.Core.Rbac.Entities { /// /// 用户角色关系表 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/EnumClasses/DataScopeEnum.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/EnumClasses/DataScopeEnum.cs similarity index 86% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/EnumClasses/DataScopeEnum.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/EnumClasses/DataScopeEnum.cs index 177ac330..e94fe330 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/EnumClasses/DataScopeEnum.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/EnumClasses/DataScopeEnum.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Core.EnumClasses +namespace Yi.Furion.Core.Rbac.EnumClasses { public enum DataScopeEnum { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/EnumClasses/MenuTypeEnum.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/EnumClasses/MenuTypeEnum.cs similarity index 85% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/EnumClasses/MenuTypeEnum.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/EnumClasses/MenuTypeEnum.cs index 4dc05504..01bfc36a 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/EnumClasses/MenuTypeEnum.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/EnumClasses/MenuTypeEnum.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Core.EnumClasses +namespace Yi.Furion.Core.Rbac.EnumClasses { public enum MenuTypeEnum { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/EnumClasses/SexEnum.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/EnumClasses/SexEnum.cs similarity index 91% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/EnumClasses/SexEnum.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/EnumClasses/SexEnum.cs index cb751853..3d26968b 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/EnumClasses/SexEnum.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/EnumClasses/SexEnum.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Core.EnumClasses +namespace Yi.Furion.Core.Rbac.EnumClasses { /// /// 性别 diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Etos/LoginEventSource.cs b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Etos/LoginEventSource.cs similarity index 95% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Etos/LoginEventSource.cs rename to Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Etos/LoginEventSource.cs index 388e487c..cf683e5d 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Etos/LoginEventSource.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Rbac/Etos/LoginEventSource.cs @@ -6,7 +6,7 @@ using System.Threading; using System.Threading.Tasks; using Furion.EventBus; -namespace Yi.Furion.Rbac.Core.Etos +namespace Yi.Furion.Core.Rbac.Etos { public class LoginEventSource : IEventSource { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Yi.Furion.Rbac.Core.csproj b/Yi.Furion.Rbac/Yi.Furion.Core/Yi.Furion.Core.csproj similarity index 72% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Yi.Furion.Rbac.Core.csproj rename to Yi.Furion.Rbac/Yi.Furion.Core/Yi.Furion.Core.csproj index c03b3a97..37355df0 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Yi.Furion.Rbac.Core.csproj +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Yi.Furion.Core.csproj @@ -4,13 +4,13 @@ net6.0 1701;1702;1591 - Yi.Furion.Rbac.Core.xml + Yi.Furion.Core.xml - + @@ -27,4 +27,10 @@ + + + + + + diff --git a/Yi.Furion.Rbac/Yi.Furion.Core/Yi.Furion.Core.xml b/Yi.Furion.Rbac/Yi.Furion.Core/Yi.Furion.Core.xml new file mode 100644 index 00000000..1e6878bb --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Furion.Core/Yi.Furion.Core.xml @@ -0,0 +1,622 @@ + + + + Yi.Furion.Core + + + + + 常量定义 + + + + + 常量定义 + + + + + 常量定义 + + + + + 常量定义 + + + + + 常量定义 + + + + + 部门表 + + + + + 主键 + + + + + 逻辑删除 + + + + + 创建时间 + + + + + 创建者 + + + + + 最后修改者 + + + + + 最后修改时间 + + + + + 排序 + + + + + 状态 + + + + + 部门名称 + + + + + 部门编码 + + + + + 负责人 + + + + + 父级id + + + + + 描述 + + + + + 登录用户 + + + + + 登录地点 + + + + + 登录Ip + + + + + 浏览器 + + + + + 操作系统 + + + + + 登录信息 + + + + + 菜单表 + + + + + 主键 + + + + + 逻辑删除 + + + + + 创建时间 + + + + + 创建者 + + + + + 最后修改者 + + + + + 最后修改时间 + + + + + 排序 + + + + + 状态 + + + + + 菜单名 + + + + + + + + + + + + + + + + + + + + 菜单图标 + + + + + 菜单组件路由 + + + + + 是否为外部链接 + + + + + 是否缓存 + + + + + 是否显示 + + + + + 描述 + + + + + 组件路径 + + + + + 路由参数 + + + + + 实体扩展 + + + + + 构建vue3路由 + + + + + + + 岗位表 + + + + + 主键 + + + + + 逻辑删除 + + + + + 创建时间 + + + + + 创建者 + + + + + 最后修改者 + + + + + 最后修改时间 + + + + + 排序 + + + + + 状态 + + + + + 岗位编码 + + + + + 岗位名称 + + + + + 描述 + + + + + 角色部门关系表 + + + + + 主键 + + + + + 角色id + + + + + 部门id + + + + + 角色表 + + + + + 主键 + + + + + 逻辑删除 + + + + + 创建时间 + + + + + 创建者 + + + + + 最后修改者 + + + + + 最后修改时间 + + + + + 排序 + + + + + 角色名 + + + + + 角色编码 + + + + + 描述 + + + + + 角色数据范围 + + + + + 状态 + + + + + 角色菜单关系表 + + + + + 主键 + + + + + + + + + + + + + + + 用户表 + + + + + 主键 + + + + + 逻辑删除 + + + + + 姓名 + + + + + 年龄 + + + + + 用户名 + + + + + 密码 + + + + + 加密盐值 + + + + + 头像 + + + + + 昵称 + + + + + 邮箱 + + + + + Ip + + + + + 地址 + + + + + 电话 + + + + + 简介 + + + + + 备注 + + + + + 性别 + + + + + 部门id + + + + + 创建时间 + + + + + 创建者 + + + + + 最后修改者 + + + + + 最后修改时间 + + + + + 排序 + + + + + 状态 + + + + + 角色 + + + + + 岗位 + + + + + 部门 + + + + + 构建密码,MD5盐值加密 + + + + + 判断密码和加密后的密码是否相同 + + + + + + + 用户岗位表 + + + + + 主键 + + + + + 用户id + + + + + 岗位id + + + + + 用户角色关系表 + + + + + 主键 + + + + + 角色id + + + + + 用户id + + + + + 性别 + + + + + 男性 + + + + + 女性 + + + + + 未知 + + + + diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Yi.Furion.Rbac.Core.xml b/Yi.Furion.Rbac/Yi.Furion.Core/Yi.Furion.Rbac.Core.xml similarity index 100% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Core/Yi.Furion.Rbac.Core.xml rename to Yi.Furion.Rbac/Yi.Furion.Core/Yi.Furion.Rbac.Core.xml diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/Program.cs b/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/Program.cs deleted file mode 100644 index 65ae4851..00000000 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/Program.cs +++ /dev/null @@ -1 +0,0 @@ -Serve.Run(RunOptions.Default.WithArgs(args)); diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.EntityFramework.Core/Repositories/IUserRepository.cs b/Yi.Furion.Rbac/Yi.Furion.Sqlsugar.Core/Repositories/IUserRepository.cs similarity index 76% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.EntityFramework.Core/Repositories/IUserRepository.cs rename to Yi.Furion.Rbac/Yi.Furion.Sqlsugar.Core/Repositories/IUserRepository.cs index fab6ae56..70c66889 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.EntityFramework.Core/Repositories/IUserRepository.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Sqlsugar.Core/Repositories/IUserRepository.cs @@ -1,9 +1,9 @@ using System.Threading.Tasks; using Yi.Framework.Infrastructure.Ddd.Repositories; -using Yi.Furion.Rbac.Core.Dtos; -using Yi.Furion.Rbac.Core.Entities; +using Yi.Furion.Core.Rbac.Dtos; +using Yi.Furion.Core.Rbac.Entities; -namespace Yi.Furion.Rbac.Sqlsugar.Core.Repositories +namespace Yi.Furion.Sqlsugar.Core.Repositories { public interface IUserRepository : IRepository { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.EntityFramework.Core/Repositories/Impl/UserRepository.cs b/Yi.Furion.Rbac/Yi.Furion.Sqlsugar.Core/Repositories/Impl/UserRepository.cs similarity index 94% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.EntityFramework.Core/Repositories/Impl/UserRepository.cs rename to Yi.Furion.Rbac/Yi.Furion.Sqlsugar.Core/Repositories/Impl/UserRepository.cs index 37535e60..371d317f 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.EntityFramework.Core/Repositories/Impl/UserRepository.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Sqlsugar.Core/Repositories/Impl/UserRepository.cs @@ -5,11 +5,11 @@ using System.Threading.Tasks; using Furion.DependencyInjection; using SqlSugar; using Yi.Framework.Infrastructure.Sqlsugar.Repositories; -using Yi.Furion.Rbac.Core.ConstClasses; -using Yi.Furion.Rbac.Core.Dtos; -using Yi.Furion.Rbac.Core.Entities; +using Yi.Furion.Core.Rbac.ConstClasses; +using Yi.Furion.Core.Rbac.Dtos; +using Yi.Furion.Core.Rbac.Entities; -namespace Yi.Furion.Rbac.Sqlsugar.Core.Repositories.Impl +namespace Yi.Furion.Sqlsugar.Core.Repositories.Impl { public class UserRepository : SqlsugarRepository, IUserRepository, ITransient { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.EntityFramework.Core/Startup.cs b/Yi.Furion.Rbac/Yi.Furion.Sqlsugar.Core/Startup.cs similarity index 90% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.EntityFramework.Core/Startup.cs rename to Yi.Furion.Rbac/Yi.Furion.Sqlsugar.Core/Startup.cs index 36fe5822..88b00a31 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.EntityFramework.Core/Startup.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Sqlsugar.Core/Startup.cs @@ -1,7 +1,7 @@ using Furion; using Microsoft.Extensions.DependencyInjection; -namespace Yi.Furion.Rbac.Sqlsugar.Core; +namespace Yi.Furion.Sqlsugar.Core; public class Startup : AppStartup { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.EntityFramework.Core/Yi.Furion.Rbac.Sqlsugar.Core.csproj b/Yi.Furion.Rbac/Yi.Furion.Sqlsugar.Core/Yi.Furion.Sqlsugar.Core.csproj similarity index 65% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.EntityFramework.Core/Yi.Furion.Rbac.Sqlsugar.Core.csproj rename to Yi.Furion.Rbac/Yi.Furion.Sqlsugar.Core/Yi.Furion.Sqlsugar.Core.csproj index 91bfbb7b..3304a5d4 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.EntityFramework.Core/Yi.Furion.Rbac.Sqlsugar.Core.csproj +++ b/Yi.Furion.Rbac/Yi.Furion.Sqlsugar.Core/Yi.Furion.Sqlsugar.Core.csproj @@ -8,7 +8,7 @@ - + diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Core/Handlers/JwtHandler.cs b/Yi.Furion.Rbac/Yi.Furion.Web.Core/Handlers/JwtHandler.cs similarity index 91% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Core/Handlers/JwtHandler.cs rename to Yi.Furion.Rbac/Yi.Furion.Web.Core/Handlers/JwtHandler.cs index c4730e56..25205237 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Core/Handlers/JwtHandler.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Web.Core/Handlers/JwtHandler.cs @@ -3,7 +3,7 @@ using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using System.Threading.Tasks; -namespace Yi.Furion.Rbac.Web.Core.Handlers; +namespace Yi.Furion.Web.Core.Handlers; public class JwtHandler : AppAuthorizeHandler { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Core/Startup.cs b/Yi.Furion.Rbac/Yi.Furion.Web.Core/Startup.cs similarity index 92% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Core/Startup.cs rename to Yi.Furion.Rbac/Yi.Furion.Web.Core/Startup.cs index f61a982f..b051f7d5 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Core/Startup.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Web.Core/Startup.cs @@ -3,9 +3,9 @@ using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; -using Yi.Furion.Rbac.Web.Core.Handlers; +using Yi.Furion.Web.Core.Handlers; -namespace Yi.Furion.Rbac.Web.Core; +namespace Yi.Furion.Web.Core; public class Startup : AppStartup { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Core/Yi.Furion.Rbac.Web.Core.xml b/Yi.Furion.Rbac/Yi.Furion.Web.Core/Yi.Furion.Rbac.Web.Core.xml similarity index 100% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Core/Yi.Furion.Rbac.Web.Core.xml rename to Yi.Furion.Rbac/Yi.Furion.Web.Core/Yi.Furion.Rbac.Web.Core.xml diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Core/Yi.Furion.Rbac.Web.Core.csproj b/Yi.Furion.Rbac/Yi.Furion.Web.Core/Yi.Furion.Web.Core.csproj similarity index 50% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Core/Yi.Furion.Rbac.Web.Core.csproj rename to Yi.Furion.Rbac/Yi.Furion.Web.Core/Yi.Furion.Web.Core.csproj index a571c1f4..87969a06 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Core/Yi.Furion.Rbac.Web.Core.csproj +++ b/Yi.Furion.Rbac/Yi.Furion.Web.Core/Yi.Furion.Web.Core.csproj @@ -4,17 +4,17 @@ net6.0 1701;1702;1591 - Yi.Furion.Rbac.Web.Core.xml + Yi.Furion.Web.Core.xml - + - + diff --git a/Yi.Furion.Rbac/Yi.Furion.Web.Core/Yi.Furion.Web.Core.xml b/Yi.Furion.Rbac/Yi.Furion.Web.Core/Yi.Furion.Web.Core.xml new file mode 100644 index 00000000..b1536825 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Furion.Web.Core/Yi.Furion.Web.Core.xml @@ -0,0 +1,8 @@ + + + + Yi.Furion.Web.Core + + + + diff --git a/Yi.Furion.Rbac/Yi.Furion.Web.Entry/Program.cs b/Yi.Furion.Rbac/Yi.Furion.Web.Entry/Program.cs new file mode 100644 index 00000000..450393b2 --- /dev/null +++ b/Yi.Furion.Rbac/Yi.Furion.Web.Entry/Program.cs @@ -0,0 +1,8 @@ +using Yi.Framework.Infrastructure.AspNetCore; + +Serve.Run(RunOptions.Default.WithArgs(args) +.ConfigureBuilder(x => +{ + x.WebHost.UseStartUrlsServer(x.Configuration); +} +)); diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/Properties/launchSettings.json b/Yi.Furion.Rbac/Yi.Furion.Web.Entry/Properties/launchSettings.json similarity index 61% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/Properties/launchSettings.json rename to Yi.Furion.Rbac/Yi.Furion.Web.Entry/Properties/launchSettings.json index 8e44dcd1..a7fab821 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/Properties/launchSettings.json +++ b/Yi.Furion.Rbac/Yi.Furion.Web.Entry/Properties/launchSettings.json @@ -9,20 +9,12 @@ } }, "profiles": { - "IIS Express": { - "commandName": "IISExpress", - "launchBrowser": true, - "launchUrl": "", - "environmentVariables": { - "ASPNETCORE_ENVIRONMENT": "Development" - } - }, - "Yi.Furion.Rbac.Web.Entry": { + "Yi.Furion.Web.Entry": { "commandName": "Project", "dotnetRunMessages": true, "launchBrowser": true, "launchUrl": "", - "applicationUrl": "https://localhost:5001;http://localhost:5000", + "applicationUrl": "http://localhost:19001", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" } diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/SingleFilePublish.cs b/Yi.Furion.Rbac/Yi.Furion.Web.Entry/SingleFilePublish.cs similarity index 92% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/SingleFilePublish.cs rename to Yi.Furion.Rbac/Yi.Furion.Web.Entry/SingleFilePublish.cs index a5b93a83..e34ffe45 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/SingleFilePublish.cs +++ b/Yi.Furion.Rbac/Yi.Furion.Web.Entry/SingleFilePublish.cs @@ -1,7 +1,7 @@ using Furion; using System.Reflection; -namespace Yi.Furion.Rbac.Web.Entry; +namespace Yi.Furion.Web.Entry; public class SingleFilePublish : ISingleFilePublish { diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/Yi.Furion.Rbac.Web.Entry.csproj b/Yi.Furion.Rbac/Yi.Furion.Web.Entry/Yi.Furion.Web.Entry.csproj similarity index 91% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/Yi.Furion.Rbac.Web.Entry.csproj rename to Yi.Furion.Rbac/Yi.Furion.Web.Entry/Yi.Furion.Web.Entry.csproj index c3746b18..ebc419a5 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/Yi.Furion.Rbac.Web.Entry.csproj +++ b/Yi.Furion.Rbac/Yi.Furion.Web.Entry/Yi.Furion.Web.Entry.csproj @@ -21,7 +21,7 @@ - + diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/appsettings.json b/Yi.Furion.Rbac/Yi.Furion.Web.Entry/appsettings.json similarity index 97% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/appsettings.json rename to Yi.Furion.Rbac/Yi.Furion.Web.Entry/appsettings.json index 23430b19..b7787575 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/appsettings.json +++ b/Yi.Furion.Rbac/Yi.Furion.Web.Entry/appsettings.json @@ -8,6 +8,9 @@ } }, "AllowedHosts": "*", + + "StartUrl": "http://*:19001", + //数据库类型列表 "DbList": [ "Sqlite", "Mysql", "Sqlserver", "Oracle" ], diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/ip2region.db b/Yi.Furion.Rbac/Yi.Furion.Web.Entry/ip2region.db similarity index 100% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/ip2region.db rename to Yi.Furion.Rbac/Yi.Furion.Web.Entry/ip2region.db diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/yi-sqlsugar-dev.db b/Yi.Furion.Rbac/Yi.Furion.Web.Entry/yi-sqlsugar-dev.db similarity index 100% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.Web.Entry/yi-sqlsugar-dev.db rename to Yi.Furion.Rbac/Yi.Furion.Web.Entry/yi-sqlsugar-dev.db diff --git a/Yi.Furion.Rbac/Yi.Furion.Rbac.sln b/Yi.Furion.Rbac/Yi.Furion.sln similarity index 72% rename from Yi.Furion.Rbac/Yi.Furion.Rbac.sln rename to Yi.Furion.Rbac/Yi.Furion.sln index e8b3a527..8fd8996a 100644 --- a/Yi.Furion.Rbac/Yi.Furion.Rbac.sln +++ b/Yi.Furion.Rbac/Yi.Furion.sln @@ -3,19 +3,21 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 17 VisualStudioVersion = 17.4.33213.308 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Yi.Furion.Rbac.Application", "Yi.Furion.Rbac.Application\Yi.Furion.Rbac.Application.csproj", "{AB699EE9-43A8-46F2-A855-04A26DE63372}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Yi.Furion.Application", "Yi.Furion.Application\Yi.Furion.Application.csproj", "{AB699EE9-43A8-46F2-A855-04A26DE63372}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Yi.Furion.Rbac.Sqlsugar.Core", "Yi.Furion.Rbac.EntityFramework.Core\Yi.Furion.Rbac.Sqlsugar.Core.csproj", "{4BD77E5C-138D-4F2D-B709-F9020F306AF3}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Yi.Furion.Sqlsugar.Core", "Yi.Furion.Sqlsugar.Core\Yi.Furion.Sqlsugar.Core.csproj", "{4BD77E5C-138D-4F2D-B709-F9020F306AF3}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Yi.Furion.Rbac.Web.Core", "Yi.Furion.Rbac.Web.Core\Yi.Furion.Rbac.Web.Core.csproj", "{9D14BB78-DA2A-4040-B9DB-5A515B599181}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Yi.Furion.Web.Core", "Yi.Furion.Web.Core\Yi.Furion.Web.Core.csproj", "{9D14BB78-DA2A-4040-B9DB-5A515B599181}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Yi.Furion.Rbac.Core", "Yi.Furion.Rbac.Core\Yi.Furion.Rbac.Core.csproj", "{4FB30091-15C7-4FD9-AB7D-266814F360F5}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Yi.Furion.Core", "Yi.Furion.Core\Yi.Furion.Core.csproj", "{4FB30091-15C7-4FD9-AB7D-266814F360F5}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Yi.Furion.Rbac.Web.Entry", "Yi.Furion.Rbac.Web.Entry\Yi.Furion.Rbac.Web.Entry.csproj", "{C8D99F52-EDC7-411F-8300-6DB14BF59E8C}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Yi.Furion.Web.Entry", "Yi.Furion.Web.Entry\Yi.Furion.Web.Entry.csproj", "{C8D99F52-EDC7-411F-8300-6DB14BF59E8C}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Yi.Framework.Infrastructure", "Yi.Framework.Infrastructure\Yi.Framework.Infrastructure.csproj", "{15F8DEB8-8A78-4DED-B588-4CFB2BCA14C9}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Yi.Framework.Module", "Yi.Framework.Module\Yi.Framework.Module.csproj", "{C0D8C819-CBAA-47AF-A9CF-EA26B3A3D41E}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Yi.Framework.Module", "Yi.Framework.Module\Yi.Framework.Module.csproj", "{C0D8C819-CBAA-47AF-A9CF-EA26B3A3D41E}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "framework", "framework", "{9A8AB3CF-D8D4-4D38-BAB7-C37A43FE447C}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -55,6 +57,10 @@ Global GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {15F8DEB8-8A78-4DED-B588-4CFB2BCA14C9} = {9A8AB3CF-D8D4-4D38-BAB7-C37A43FE447C} + {C0D8C819-CBAA-47AF-A9CF-EA26B3A3D41E} = {9A8AB3CF-D8D4-4D38-BAB7-C37A43FE447C} + EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {B2073C2C-0FD3-452B-8047-8134D68E12CE} EndGlobalSection