liuying
2024-04-24 810452c0e9e3c678bd4ac14ed360d41c0d9b0229
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
#nullable enable
using Admin.NET.Core;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
 
namespace Admin.NET.Application
{
    /// <summary>
    /// Excel模板输出服务接口
    /// </summary>
    public interface ISysExcelTemplateService
    {
        /// <summary>
        /// 添加Excel模板
        /// </summary>
        /// <param name="input">Excel模板添加参数</param>
        /// <returns></returns>
        Task AddAsync(AddSysExcelTemplateInput input);
 
        /// <summary>
        /// 删除Excel模板
        /// </summary>
        /// <param name="input">Excel模板删除参数</param>
        /// <returns></returns>
        Task DeleteAsync(DeleteSysExcelTemplateInput input);
        
        /// <summary>
        /// 获取单个Excel模板
        /// </summary>
        /// <param name="input">Excel模板查询参数</param>
        /// <returns>Excel模板实例</returns>
        Task<SysExcelTemplateOutput?> GetAsync([FromQuery] QuerySysExcelTemplateInput input);
        
        /// <summary>
        /// 不分页查询所有Excel模板列表
        /// </summary>
        /// <param name="input">Excel模板查询参数</param>
        /// <returns>(Excel模板)实例列表</returns>
        Task<List<SysExcelTemplateOutput>> ListAsync([FromQuery] SysExcelTemplateInput input);
        
        /// <summary>
        /// 分页查询Excel模板列表
        /// </summary>
        /// <param name="input">Excel模板查询参数</param>
        /// <returns>(Excel模板)实例列表</returns>
        Task<PageResult<SysExcelTemplateOutput>> PageAsync([FromQuery] SysExcelTemplateSearch input);
 
        /// <summary>
        /// 不分页查询Excel模板列表
        /// </summary>
        /// <param name="input">Excel模板查询参数</param>
        /// <returns>(Excel模板)实例列表</returns>
        Task<List<SysExcelTemplateOutput>> ListNonPageAsync([FromQuery] SysExcelTemplateSearchNonPage input);
 
        /// <summary>
        /// 更新Excel模板
        /// </summary>
        /// <param name="input">Excel模板更新参数</param>
        /// <returns></returns>
        Task UpdateAsync(UpdateSysExcelTemplateInput input);
 
        /// <summary>
        /// 根据Excel模板查询参数导出Excel
        /// </summary>
        /// <param name="input">Excel模板查询参数</param>
        /// <returns>导出的Excel文件</returns>
        Task<IActionResult> ToExcelAsync([FromQuery] SysExcelTemplateSearchNonPage input);
 
 
        /// <summary>
        /// 根据Excel模板查询参数导出Excel
        /// </summary>
        /// <param name="input">Excel模板查询参数</param>
        /// <param name="appName"></param>
        /// <returns>导出的Excel文件</returns>
        Task<IActionResult> ToExcelAsync([FromQuery] SysExcelTemplateSearchNonPage input, [FromQuery] string appName);
 
 
 
        /// <summary>
        /// 修改Excel模板状态
        /// </summary>
        /// <param name="input">Excel模板状态参数</param>
        /// <returns></returns>
        Task ChangeSysExcelTemplateStatusAsync(UpdateSysExcelTemplateStatusInput input);
 
        /// <summary>
        /// 根据类名及版本号获取单个Excel模板
        /// </summary>
        /// <param name="className">类名</param>
        /// <param name="version">版本号</param>
        /// <returns>Excel模板实例</returns>
        Task<SysExcelTemplateOutput?> GetByAppNameAndClassNameAndVersionAsync([FromQuery] string className, [FromQuery] string version);
 
        /// <summary>
        /// Excel模板导入功能
        /// </summary>
        /// <param name="file"> Excel模板文件</param>
        /// <param name="importExcelType">Excel导入方式</param>
        /// <returns>导入的记录数</returns>
        Task<int> FromExcelAsync(IFormFile file, [FromQuery] ImportExcelType importExcelType);
 
 
        /// <summary>
        /// 根据版本下载Excel模板的Excel导入模板
        /// </summary>
        /// <param name="version">模板版本</param>
        /// <returns>下载的模板文件</returns>
        Task<IActionResult> DownloadExcelTemplate(string version);
 
        /// <summary>
        /// 获取实体名称获取属性集合
        /// </summary>
        /// <param name="className">实体名称</param>
        /// <returns></returns>
        Task<List<TableColumn>> GetColumnListAsync([FromQuery] string className);
 
        /// <summary>
        /// 获取模板提示字符
        /// </summary>
        /// <param name="className">实体名称</param>
        /// <returns></returns>
        Task<string> ParseTemplateHintAsync([FromQuery] string className);
 
 
        /// <summary>
        /// 根据类名查询其查询唯一类型
        /// </summary>
        /// <param name="className">类型名</param>
        /// <returns></returns>
        Task<List<TableColumn>> QueryUniqueColumns(string className);
 
 
        /// <summary>
        /// 根据类名查询其查询表信息
        /// </summary>
        /// <param name="className">类型名</param>
        /// <returns></returns>
        Task<TableInfo?> QueryTable(string className);
 
 
        /// <summary>
        /// 根据类名生成相应的种子代码
        /// </summary>
        /// <param name="className">类名</param>
        /// <param name="prefix">前缀</param>
        /// <returns></returns>
        Task<string> ParseSeedData([FromQuery] string className, string prefix);
 
        /// <summary>
        /// 根据前缀获取最大ID加1
        /// </summary>
        /// <param name="prefix">前缀</param>
        /// <returns></returns>
        Task<long> ParseId([FromQuery] string prefix);
 
 
 
    }
}