namespace MiaoYu.Core.CodeGenerator.Services; /// /// 代码生成服务 /// public interface ICodeGenerationService : IScopedDependency { /// /// 生成上下文集合 /// /// PagingView GetGenContextDtos(int page, int size, GenFormDto search); /// /// 获取表字段集合 /// /// /// 数据库标识(可选) /// GenDbTableDto GetGenContextDtoByTableName(string tableName, string? databaseKey = null); /// /// 根据 lowCodeTable 填充路径 /// /// /// LowCodeTable FillPathByLowCodeTable(LowCodeTable lowCodeTable); /// /// 获取代码生成上下文 /// /// /// GenDbTableDto GetGenContextDto(GenFormDto genFormDto); /// /// 生成 model /// /// /// Task GenModelAsync(GenFormDto genFormDto); /// /// 生成 service /// /// /// Task GenServiceAsync(GenFormDto genFormDto); /// /// 生成 controller /// /// /// Task GenControllerAsync(GenFormDto genFormDto); /// /// 生成 serviceJs /// /// /// Task GenServiceJsAsync(GenFormDto genFormDto); /// /// 生成 Index /// /// /// Task GenIndexAsync(GenFormDto genFormDto); /// /// 生成 Info /// /// /// Task GenInfoAsync(GenFormDto genFormDto); /// /// 获取代码 /// /// /// Task GetCodeByTypeAndTableNameAsync(GenFormDto genFormDto); /// /// 下载 /// /// /// Task<(byte[] codeBytes, string contentType, string fileName)> DownloadAsync(GenFormDto genFormDto); /// /// 根据类型下载类型下所有的代码 /// /// /// Task<(byte[] codeBytes, string contentType, string fileName)> DownloadAllAsync(GenFormDto genFormDto); /// /// 创建所有代码文件 /// /// /// Task CreateAllCodeFilesAsync(GenFormDto genFormDto); /// /// 创建数据字典文件 excel /// /// (byte[] excel, string dataBase) CreateDataDictionary(); /// /// 代码生成自动导入项目 /// /// /// Task AutoImprotProjectAsync(GenFormDto genFormDto); /// /// 获取所有数据库列表 /// /// List GetAllDataSources(); }