diff --git a/server/internal/logic/sys/im_tenant.go b/server/internal/logic/sys/im_tenant.go index 5ab9726..f6613fd 100644 --- a/server/internal/logic/sys/im_tenant.go +++ b/server/internal/logic/sys/im_tenant.go @@ -92,9 +92,20 @@ func (s *sSysImTenant) List(ctx context.Context, in *sysin.ImTenantListInp) (lis mod = mod.WhereBetween(dao.ImTenant.Columns().CreatedAt, in.CreatedAt[0], in.CreatedAt[1]) } - mod = mod.Page(in.Page, in.PerPage). - OrderDesc(dao.ImTenant.Columns().Id). - Hook(hook.MemberSummary) + orderDesc := false + for _, sorter := range in.GetSorters() { + if sorter != nil && sorter.ColumnKey == "id" { + orderDesc = sorter.Order == "descend" + break + } + } + mod = mod.Page(in.Page, in.PerPage) + if orderDesc { + mod = mod.OrderDesc(dao.ImTenant.Columns().Id) + } else { + mod = mod.OrderAsc(dao.ImTenant.Columns().Id) + } + mod = mod.Hook(hook.MemberSummary) if err = mod.ScanAndCount(&list, &totalCount, false); err != nil { err = gerror.Wrap(err, "获取IM租户列表失败,请稍后重试!") diff --git a/server/internal/model/input/sysin/im_tenant.go b/server/internal/model/input/sysin/im_tenant.go index 6d42fd8..ca73301 100644 --- a/server/internal/model/input/sysin/im_tenant.go +++ b/server/internal/model/input/sysin/im_tenant.go @@ -100,6 +100,7 @@ type ImTenantViewModel struct { // ImTenantListInp 获取IM租户列表 type ImTenantListInp struct { form.PageReq + form.Sorters Id int64 `json:"id" dc:"ID"` Code string `json:"code" dc:"租户编码"` Name string `json:"name" dc:"租户名称"` diff --git a/web/src/views/imTenant/index.vue b/web/src/views/imTenant/index.vue index 4de83f5..5751283 100644 --- a/web/src/views/imTenant/index.vue +++ b/web/src/views/imTenant/index.vue @@ -19,6 +19,7 @@ :actionColumn="actionColumn" :scroll-x="scrollX" :resizeHeightOffset="-10000" + @update:sorter="handleUpdateSorter" >