🤩调整代码生成模块,增加Vxe全量导出

This commit is contained in:
KaneLeung 2025-08-08 11:27:23 +08:00
parent 5d72b895f6
commit ea9f7a02bd
No known key found for this signature in database
GPG Key ID: 8F0FE0297C3B1256
3 changed files with 31 additions and 12 deletions

View File

@ -7,10 +7,10 @@
namespace @Model.NameSpace; namespace @Model.NameSpace;
/// <summary> /// <summary>
/// HJ:这里做优化 如果是富文本不传入 /// 这里做优化 如果是富文本不传入
/// @(@Model.BusName)输出参数 /// @(@Model.BusName)基类输出参数
/// </summary> /// </summary>
public partial class Page@(@Model.ClassName)Output public partial class Base@(@Model.ClassName)Output
{ {
@foreach (var column in Model.TableField){ @foreach (var column in Model.TableField){
@ -51,6 +51,19 @@ if(column.EffectType == "ForeignKey")
} }
} }
/// <summary>
/// @(@Model.BusName)分页输出参数
/// </summary>
public partial class Page@(@Model.ClassName)Output : Base@(@Model.ClassName)Output
{
}
/// <summary>
/// @(@Model.BusName)列表输出参数
/// </summary>
public partial class List@(@Model.ClassName)Output : Base@(@Model.ClassName)Output
{
}
@foreach (var column in Model.TableField){ @foreach (var column in Model.TableField){
if (@column.EffectType == "ApiTreeSelector"){ if (@column.EffectType == "ApiTreeSelector"){

View File

@ -86,8 +86,7 @@ public partial class @(@Model.ClassName)Service : IDynamicApiController, ITransi
[DisplayName("分页查询@(@Model.BusName)")] [DisplayName("分页查询@(@Model.BusName)")]
public async Task<SqlSugarPagedList<Page@(@Model.ClassName)Output>> Page(Page@(@Model.ClassName)Input input) public async Task<SqlSugarPagedList<Page@(@Model.ClassName)Output>> Page(Page@(@Model.ClassName)Input input)
{ {
var list = await @(@Model.ClassName)Mid.GetQuery(_@(@Model.LowerClassName)Rep, input).Select<Page@(@Model.ClassName)Output>().OrderBuilder(input).ToPagedListAsync(input.Page, input.PageSize); return await @(@Model.ClassName)Mid.GetQuery(_@(@Model.LowerClassName)Rep, input).Select<Page@(@Model.ClassName)Output>().OrderBuilder(input).ToPagedListAsync(input.Page, input.PageSize);
return list;
} }
/// <summary> /// <summary>
@ -225,20 +224,17 @@ if (@column.ColumnKey == "True"){
return new FileStreamResult(new MemoryStream(res), "application/octet-stream") { FileDownloadName = "@(@Model.BusName)导入模板.xlsx" }; return new FileStreamResult(new MemoryStream(res), "application/octet-stream") { FileDownloadName = "@(@Model.BusName)导入模板.xlsx" };
} }
/*HJ:不要,有分页了,列表多余的
/// <summary> /// <summary>
/// 获取@(@Model.BusName)列表 /// 获取@(@Model.BusName)列表
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[ApiDescriptionSettings(Name = "list", Description = "获取@(@Model.BusName)列表", Order = 950), HttpPost] [ApiDescriptionSettings(Name = "List", Description = "获取@(@Model.BusName)列表", Order = 950), HttpPost]
[DisplayName("获取@(@Model.BusName)列表")] [DisplayName("获取@(@Model.BusName)列表")]
public async Task<List<@(@Model.ClassName)Output>> List(Page@(@Model.ClassName)Input input) public async Task<List<List@(@Model.ClassName)Output>> List(Page@(@Model.ClassName)Input input)
{ {
return await @(@Model.ClassName)Mid.GetQuery(_@(@Model.LowerClassName)Rep, input).OrderBuilder(input).ToListAsync(); return await @(@Model.ClassName)Mid.GetQuery(_@(@Model.LowerClassName)Rep, input).Select<List@(@Model.ClassName)Output>().OrderBuilder(input).ToListAsync();
} }
*/
/*HJ:不要这应该在视图里,或者用ReZero里用 /*HJ:不要这应该在视图里,或者用ReZero里用
/// <summary> /// <summary>

View File

@ -402,7 +402,7 @@ const checkTableColumnVisible = (tableColumnName: any) => {
// vxeGrid配置参数(此处可覆写任何参数)参考vxe-table官方文档 // vxeGrid配置参数(此处可覆写任何参数)参考vxe-table官方文档
{ {
// 代理配置//加载时不立刻获取 // 代理配置//加载时不立刻获取
proxyConfig: { autoLoad: false, ajax: { query: ({ page, sort }) => handleQueryApi(page, sort) } }, proxyConfig: { autoLoad: false, ajax: { query: ({ page, sort }) => handleQueryApi(page, sort) , queryAll: ({ sort }) => handleQueryAllApi(sort) } },
// 排序配置 // 排序配置
sortConfig: { defaultSort: Local.get(localPageParamKey)?.defaultSort || state.localPageParam.defaultSort }, sortConfig: { defaultSort: Local.get(localPageParamKey)?.defaultSort || state.localPageParam.defaultSort },
// 分页配置 // 分页配置
@ -438,6 +438,16 @@ const handleQueryApi = async (page: VxeGridPropTypes.ProxyAjaxQueryPageParams, s
} }
}; };
// 查询所有api
const handleQueryAllApi = async (sort: VxeGridPropTypes.ProxyAjaxQuerySortCheckedParams) => {
const params = Object.assign(state.queryParams, { field: sort.field, order: sort.order, descStr: 'desc' }) as @(@Model.ClassName)Input;
@if (@Model.IsApiService) {
@:return getAPI(@(@Model.ClassName)Api).api@(@Model.ClassName)ListPost(params);
} else {
@:return list@(@Model.ClassName)(params);
}
};
// 查询操作 // 查询操作
const handleQuery = async (reset = false) => { const handleQuery = async (reset = false) => {
options.loading = true; options.loading = true;