From d3ee5282bd7fb15b24f2081e68a204aa45693e28 Mon Sep 17 00:00:00 2001 From: zhangrui Date: Thu, 28 May 2026 20:35:28 +0800 Subject: [PATCH] 1 --- .../open/commons/CommonController.java | 8 ++ .../tour/controller/TourGroupController.java | 45 +++++++ .../plugins/sysPageFormSearch/search.vue | 10 +- .../zhgh/dayofficework/Tour/group/index.html | 21 ++++ .../Tour/travelAgency/index.html | 6 +- .../member/info/common/commonQuery.js | 12 +- .../staffmanage/member/info/group/index.html | 2 +- src/test/java/com/budwk/app/JugTest.java | 113 ++++++++++++++++++ 8 files changed, 206 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/budwk/app/web/controllers/open/commons/CommonController.java b/src/main/java/com/budwk/app/web/controllers/open/commons/CommonController.java index 4535fdd..b554e7e 100644 --- a/src/main/java/com/budwk/app/web/controllers/open/commons/CommonController.java +++ b/src/main/java/com/budwk/app/web/controllers/open/commons/CommonController.java @@ -8,6 +8,7 @@ import com.budwk.app.sys.models.Sys_dict; import com.budwk.app.sys.models.Sys_union; import com.budwk.app.sys.services.SysDictService; import com.budwk.app.sys.services.SysUserService; +import com.budwk.app.sys.views.View_user; import com.budwk.app.web.commons.auth.utils.SecurityUtil; import com.budwk.app.web.commons.base.Globals; import com.budwk.app.zhgh.activity.basic.models.ActivityUserScope; @@ -158,4 +159,11 @@ public class CommonController { return Result.success(count > 0); } + @At + @SaCheckLogin + @ApiOperation("获取登录用户数据") + public Result getLoginUserData(String groupId) { + return Result.success(dao.fetch(View_user.class, Cnd.where(View_user::getId, "=", SecurityUtil.getUserId()))); + } + } diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/tour/controller/TourGroupController.java b/src/main/java/com/budwk/app/zhgh/dayofficework/tour/controller/TourGroupController.java index 13232d4..f49ffef 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/tour/controller/TourGroupController.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/tour/controller/TourGroupController.java @@ -213,6 +213,7 @@ public class TourGroupController { List list = listSql.getList(NutMap.class); fillSignupMobile(list); + fillSignupFamilies(list); Pagination pagination = new Pagination<>(pageForm.getPageNumber(), pageForm.getPageSize(), count, list); return Result.success(pagination); } @@ -510,6 +511,50 @@ public class TourGroupController { } } + /** + * 查看成团报名人员时按台账ID带出家属子列表,避免前端逐行请求家属信息。 + */ + private void fillSignupFamilies(List list) { + if (list == null || list.isEmpty()) { + return; + } + List ledgerIds = new ArrayList<>(); + for (NutMap item : list) { + String ledgerId = item.getString("id", ""); + if (StrUtil.isNotBlank(ledgerId) && !ledgerIds.contains(ledgerId)) { + ledgerIds.add(ledgerId); + } + } + if (ledgerIds.isEmpty()) { + return; + } + + Sql sql = Sqls.create(""" + SELECT + ledgerId, + staffJobNo AS jobNo, + familyName AS userName, + '' AS mobile, + idCard, + relationship + FROM tour_ledger_family + WHERE delFlag = 0 + AND ledgerId IN (@ledgerIds) + ORDER BY createdAt ASC + """); + sql.setParam("ledgerIds", ledgerIds.toArray(new String[0])); + sql.setCallback(Sqls.callback.maps()); + tourLedgerService.dao().execute(sql); + + Map> familyMap = new HashMap<>(); + for (NutMap family : sql.getList(NutMap.class)) { + familyMap.computeIfAbsent(family.getString("ledgerId", ""), key -> new ArrayList<>()).add(family); + } + for (NutMap item : list) { + item.put("families", familyMap.getOrDefault(item.getString("id", ""), List.of())); + } + } + private Cnd buildQueryCnd(Integer year, String lineName, String lineType, String unionId) { Cnd cnd = Cnd.NEW(); cnd.and("m.delFlag", "=", false); diff --git a/src/main/resources/static/components/plugins/sysPageFormSearch/search.vue b/src/main/resources/static/components/plugins/sysPageFormSearch/search.vue index 6eec213..7bd2889 100644 --- a/src/main/resources/static/components/plugins/sysPageFormSearch/search.vue +++ b/src/main/resources/static/components/plugins/sysPageFormSearch/search.vue @@ -1,7 +1,7 @@