Merge remote-tracking branch 'origin/feature_教代会代表证' into release_20260831

This commit is contained in:
2026-08-30 15:53:38 +08:00
12 changed files with 2118 additions and 230 deletions
@@ -3,6 +3,7 @@ package com.budwk.app.zhgh.democratic.teachercongress.guildhall.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import com.budwk.app.base.annotation.SLog;
import com.budwk.app.base.page.Pagination;
import com.budwk.app.base.param.PageForm;
@@ -126,4 +127,38 @@ public class GuildHallMeetingController {
}
return Result.success(results);
}
@At
@SaCheckPermission("h5.guildHall.metting")
@ApiOperation("H5进行中会议分页")
public Result selectPage(PageForm pageForm) {
int pageNumber = pageForm.getPageNumber() == null ? 1 : pageForm.getPageNumber();
int pageSize = 10;
Cnd cnd = Cnd.where(GuildHallMeeting::getStartTime, "<=", DateUtil.date())
.and(GuildHallMeeting::getEndTime, ">=", DateUtil.date());
if (StrUtil.isNotBlank(pageForm.getSearchKeyword())) {
cnd.and(GuildHallMeeting::getName, "like", "%" + pageForm.getSearchKeyword().trim() + "%");
}
cnd.desc(GuildHallMeeting::getStartTime);
List<NutMap> availableMeetings = new ArrayList<>();
List<GuildHallMeeting> meetings = dao.query(GuildHallMeeting.class, cnd);
for (GuildHallMeeting meeting : meetings) {
if (meeting.getGroupId() != null
&& !activityBasicScopeService.isUserInGroup(meeting.getGroupId(), SecurityUtil.getUserId())) {
continue;
}
NutMap meetingMap = Lang.obj2nutmap(meeting);
GuildHall hall = dao.fetch(GuildHall.class, meeting.getHallId());
meetingMap.put("address", hall == null ? null : hall.getAddress());
availableMeetings.add(meetingMap);
}
int totalCount = availableMeetings.size();
int fromIndex = Math.min((pageNumber - 1) * pageSize, totalCount);
int toIndex = Math.min(fromIndex + pageSize, totalCount);
Pagination<NutMap> pagination = new Pagination<>(pageNumber, pageSize, totalCount,
availableMeetings.subList(fromIndex, toIndex));
return Result.success(pagination);
}
}
@@ -0,0 +1,20 @@
package com.budwk.app.zhgh.democratic.teachercongress.guildhall.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import io.swagger.annotations.Api;
import org.nutz.ioc.loader.annotation.IocBean;
import org.nutz.mvc.annotation.At;
import org.nutz.mvc.annotation.Ok;
@Api("H5会议列表")
@IocBean
@At("/platform/guildHall/metting")
@Ok("json:full")
public class GuildHallMettingH5Controller {
@At("/h5")
@SaCheckPermission("h5.guildHall.metting")
@Ok("beetl:/platform/zhghh5/democratic/teachercongress/guildhall/selectSeat/list.html")
public void h5Index() {
}
}
@@ -1,6 +1,7 @@
package com.budwk.app.zhgh.democratic.teachercongress.guildhall.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.dev33.satoken.annotation.SaMode;
import com.budwk.app.base.result.Result;
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
import com.budwk.app.zhgh.activity.basic.service.ActivityBasicScopeService;
@@ -49,14 +50,14 @@ public class GuildHallSelectSeatController {
}
@At("/h5")
@SaCheckPermission("h5.guildHall.selectSeat")
@SaCheckPermission(value = {"h5.guildHall.metting", "h5.guildHall.selectSeat"}, mode = SaMode.OR)
@Ok("beetl:/platform/zhghh5/democratic/teachercongress/guildhall/selectSeat/index.html")
public void h5Index() {
}
@At
@SaCheckPermission("guildHall.selectSeat")
public Result loadSeats(@Param("meetingId") String meetingId) {
@At
@SaCheckPermission(value = {"guildHall.selectSeat", "h5.guildHall.metting"}, mode = SaMode.OR)
public Result loadSeats(@Param("meetingId") String meetingId) {
Result permissionResult = checkMeetingPermission(meetingId);
if (permissionResult != null) {
return permissionResult;
@@ -87,10 +88,10 @@ public class GuildHallSelectSeatController {
return Result.success(selectedSeats);
}
@At
@SaCheckPermission("guildHall.selectSeat")
@At
@SaCheckPermission(value = {"guildHall.selectSeat", "h5.guildHall.metting"}, mode = SaMode.OR)
@Aop(TransAop.READ_COMMITTED)
public Result doSelect(@Param("meetingId") String meetingId, Integer rowNumber, Integer colNumber) {
public Result doSelect(@Param("meetingId") String meetingId, Integer rowNumber, Integer colNumber) {
Result permissionResult = checkMeetingPermission(meetingId);
if (permissionResult != null) {
return permissionResult;