From f335319fc6111c144d373d6eefa6e74cbb036719 Mon Sep 17 00:00:00 2001 From: = <=> Date: Sat, 20 Dec 2025 15:46:52 +0800 Subject: [PATCH 1/2] commit --- .../activity/trainSignUp/userAdjust/userInfo.js | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/main/resources/views/platform/zhgh/activity/trainSignUp/userAdjust/userInfo.js b/src/main/resources/views/platform/zhgh/activity/trainSignUp/userAdjust/userInfo.js index f0e2e88..1c33615 100644 --- a/src/main/resources/views/platform/zhgh/activity/trainSignUp/userAdjust/userInfo.js +++ b/src/main/resources/views/platform/zhgh/activity/trainSignUp/userAdjust/userInfo.js @@ -50,11 +50,14 @@ const userInfo = { Date: Sat, 20 Dec 2025 15:47:29 +0800 Subject: [PATCH 2/2] commit --- .../app/sys/controller/SysUnitController.java | 1 + .../manage/FamilyActivityApplyController.java | 5 +- ...sCongressMaterialStatisticsController.java | 57 ++ .../TeacherCongressDelegationController.java | 566 +++++++++--------- .../static/components/module/kh/KhZb.vue | 66 +- .../components/module/kh/UploadMaterials.vue | 4 +- .../material/statistics/index.html | 4 + .../teachercongress/delegation/headForm.js | 6 +- 8 files changed, 417 insertions(+), 292 deletions(-) diff --git a/src/main/java/com/budwk/app/sys/controller/SysUnitController.java b/src/main/java/com/budwk/app/sys/controller/SysUnitController.java index e745148..8383626 100644 --- a/src/main/java/com/budwk/app/sys/controller/SysUnitController.java +++ b/src/main/java/com/budwk/app/sys/controller/SysUnitController.java @@ -329,6 +329,7 @@ public class SysUnitController { parentId = ""; } unit.setCreatedBy(SecurityUtil.getUserId()); + unit.setUnitType("用户自建"); unit.setUnitTypeCode(1); sysUnitService.save(unit, parentId); return Result.success(); diff --git a/src/main/java/com/budwk/app/zhgh/activity/family/controller/manage/FamilyActivityApplyController.java b/src/main/java/com/budwk/app/zhgh/activity/family/controller/manage/FamilyActivityApplyController.java index 36c0cca..2e85cd6 100644 --- a/src/main/java/com/budwk/app/zhgh/activity/family/controller/manage/FamilyActivityApplyController.java +++ b/src/main/java/com/budwk/app/zhgh/activity/family/controller/manage/FamilyActivityApplyController.java @@ -219,7 +219,6 @@ public class FamilyActivityApplyController { return Result.error(99, "报名信息为空"); } - currentFamilyNumber = currentFamilyNumber != null ? currentFamilyNumber : 0; FamilyCourse course = dao.fetch(FamilyCourse.class, courseId); FamilyType type = dao.fetch(FamilyType.class, course.getCourseType()); FamilyActivity activity = dao.fetch(FamilyActivity.class, course.getActivityId()); @@ -238,10 +237,12 @@ public class FamilyActivityApplyController { return Result.error(99,"抱歉,您没有此次活动的权限"); } - if(type.getIsBringFamily() && currentFamilyNumber == 0) { + if(type.getIsBringFamily() && currentFamilyNumber != null && currentFamilyNumber == 0) { return Result.error(99, "%s信息不能为空".formatted(activity.getKeyWord())); } + currentFamilyNumber = currentFamilyNumber != null ? currentFamilyNumber : 0; + //判断是否报名 boolean courseByUser = familyActivityService.isSignCourseByUser(courseId, SecurityUtil.getUserId()); if(courseByUser) { diff --git a/src/main/java/com/budwk/app/zhgh/democratic/grassrootscongress/controller/material/GrassrootsCongressMaterialStatisticsController.java b/src/main/java/com/budwk/app/zhgh/democratic/grassrootscongress/controller/material/GrassrootsCongressMaterialStatisticsController.java index 3f26df7..8d992fb 100644 --- a/src/main/java/com/budwk/app/zhgh/democratic/grassrootscongress/controller/material/GrassrootsCongressMaterialStatisticsController.java +++ b/src/main/java/com/budwk/app/zhgh/democratic/grassrootscongress/controller/material/GrassrootsCongressMaterialStatisticsController.java @@ -1,14 +1,20 @@ package com.budwk.app.zhgh.democratic.grassrootscongress.controller.material; import cn.dev33.satoken.annotation.SaCheckPermission; +import cn.hutool.json.JSONObject; import com.budwk.app.base.page.Pagination; import com.budwk.app.base.result.Result; +import com.budwk.app.base.utils.CommonDownloadUtil; import com.budwk.app.flow.enums.ProcessInstanceStateEnum; +import com.budwk.app.sys.models.Sys_file; +import com.budwk.app.sys.utils.SysFileMinIoUtil; +import com.budwk.app.zhgh.democratic.grassrootscongress.models.GrassrootsCongressMeetingInfo; import com.budwk.app.zhgh.democratic.grassrootscongress.param.GrassrootsCongressPageForm; import com.budwk.app.zhgh.democratic.grassrootscongress.service.GrassrootsCongressService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.io.IOUtils; import org.nutz.dao.Cnd; import org.nutz.dao.Sqls; import org.nutz.dao.sql.Sql; @@ -18,6 +24,13 @@ import org.nutz.lang.util.NutMap; import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; +import javax.servlet.http.HttpServletResponse; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.util.List; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; + @Slf4j @IocBean @Ok("json:full") @@ -60,4 +73,48 @@ public class GrassrootsCongressMaterialStatisticsController { Pagination pagination = grassrootsCongressService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); return Result.success(pagination); } + + @At + @Ok("void") + @SaCheckPermission("grassrootsCongress.material.statistics") + public void downloadFiles(GrassrootsCongressPageForm pageForm, + HttpServletResponse response) { + Sql sql = Sqls.create(""" + SELECT + info.* + FROM + grassroots_congress_materials_info info + LEFT JOIN `wf_process_instance` ins ON ins.businessNo = info.id + $condition + """); + Cnd cnd = Cnd.NEW(); + cnd.and("ins.state","=", ProcessInstanceStateEnum.FINISHED.getCode()); + cnd.andEX("YEAR(info.createdTime)", "=", pageForm.getYear()); + cnd.desc("info.createdTime"); + sql.setCondition(cnd); + List list = grassrootsCongressService.listEntity(sql); + + try { + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + ZipOutputStream zipOutputStream = new ZipOutputStream(bos); + for (GrassrootsCongressMeetingInfo info : list) { + // 循环下载文件 + List files = info.getFiles(); + for (JSONObject file : files) { + Sys_file sysFile = grassrootsCongressService.dao().fetch(Sys_file.class, Cnd.where(Sys_file::getDownloadPath, "=", file.get("url"))); + byte[] bytes = SysFileMinIoUtil.getFileBytes(sysFile.getBucket(), sysFile.getStoragePath()); + + ZipEntry zipEntry = new ZipEntry(sysFile.getName()); + zipOutputStream.putNextEntry(zipEntry); + + zipOutputStream.write(bytes); + zipOutputStream.closeEntry(); + } + } + zipOutputStream.close(); + CommonDownloadUtil.download("资料汇总压缩包.zip", bos.toByteArray(), response); + } catch (Exception e) { + e.printStackTrace(); + } + } } diff --git a/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegation/controller/TeacherCongressDelegationController.java b/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegation/controller/TeacherCongressDelegationController.java index b449b7c..a4ccda5 100644 --- a/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegation/controller/TeacherCongressDelegationController.java +++ b/src/main/java/com/budwk/app/zhgh/democratic/teachercongress/delegation/controller/TeacherCongressDelegationController.java @@ -50,310 +50,332 @@ import java.util.Optional; @Api(value = "/platform/teacherCongress/delegation", tags = "教代会代表团管理") public class TeacherCongressDelegationController { - @Inject - private Dao dao; + @Inject + private Dao dao; - @Inject - private BaseService baseService; + @Inject + private BaseService baseService; - @Inject - private SysUserService sysUserService; + @Inject + private SysUserService sysUserService; - @Inject - private SysRoleService sysRoleService; + @Inject + private SysRoleService sysRoleService; - @At("") - @Ok("beetl:/platform/zhgh/democratic/teachercongress/delegation/index.html") - @SaCheckPermission("tc.delegation") - public void index() { - } + @At("") + @Ok("beetl:/platform/zhgh/democratic/teachercongress/delegation/index.html") + @SaCheckPermission("tc.delegation") + public void index() { + } - @At - @POST - @SaCheckPermission("tc.delegation") - @ApiOperation(value = "届次信息列表", httpMethod = "POST") - public Result pageData(@Valid @ApiParam(value = "分页表单") PageForm pageForm, @Valid @ApiParam(value = "届次ID") String sessionId) { - Sys_role role = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_HEAD); - Sys_role role2 = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_VICE_DELEGATION_HEAD); - Sys_role role3 = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_CONTACT); + @At + @POST + @SaCheckPermission("tc.delegation") + @ApiOperation(value = "届次信息列表", httpMethod = "POST") + public Result pageData(@Valid @ApiParam(value = "分页表单") PageForm pageForm, @Valid @ApiParam(value = "届次ID") String sessionId) { + Sys_role role = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_HEAD); + Sys_role role2 = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_VICE_DELEGATION_HEAD); + Sys_role role3 = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_CONTACT); - Sql sql = Sqls.create(""" - SELECT - tcd.*, - tcs.fullName as sessionName, - GROUP_CONCAT(u.username,u.loginname) as delegationHead, - GROUP_CONCAT(u2.username,u2.loginname) as viceDelegationHead, - GROUP_CONCAT(u3.username,u3.loginname) as delegationContact - FROM - teacher_congress_delegation tcd - LEFT JOIN teacher_congress_session tcs ON tcs.id = tcd.sessionId - LEFT JOIN sys_user_role sur ON sur.tcDelegationId = tcd.id AND sur.roleId = @roleId - LEFT JOIN sys_user u ON u.id = sur.userId - LEFT JOIN sys_user_role sur2 ON sur2.tcDelegationId = tcd.id AND sur2.roleId = @roleId2 - LEFT JOIN sys_user u2 ON u2.id = sur2.userId - LEFT JOIN sys_user_role sur3 ON sur3.tcDelegationId = tcd.id AND sur3.roleId = @roleId3 - LEFT JOIN sys_user u3 ON u3.id = sur3.userId - $condition"""); - sql.setParam("roleId", role.getId()); - sql.setParam("roleId2", role2.getId()); - sql.setParam("roleId3", role3.getId()); - Cnd cnd = Cnd.NEW(); - cnd.and("tcd.sessionId", "=", sessionId); - cnd.asc("tcd.code"); - cnd.groupBy("tcd.id"); - if (StrUtil.isNotBlank(pageForm.getSearchKeyword())) { - cnd.where().andLike("name", pageForm.getSearchKeyword()); - } - cnd.asc("tcd.code"); - sql.setCondition(cnd); - Pagination pagination = baseService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); - return Result.success(pagination); - } + Sql sql = Sqls.create(""" + SELECT + tcd.*, + tcs.fullName as sessionName, + GROUP_CONCAT(u.username,u.loginname) as delegationHead, + GROUP_CONCAT(u2.username,u2.loginname) as viceDelegationHead, + GROUP_CONCAT(u3.username,u3.loginname) as delegationContact + FROM + teacher_congress_delegation tcd + LEFT JOIN teacher_congress_session tcs ON tcs.id = tcd.sessionId + LEFT JOIN sys_user_role sur ON sur.tcDelegationId = tcd.id AND sur.roleId = @roleId + LEFT JOIN sys_user u ON u.id = sur.userId + LEFT JOIN sys_user_role sur2 ON sur2.tcDelegationId = tcd.id AND sur2.roleId = @roleId2 + LEFT JOIN sys_user u2 ON u2.id = sur2.userId + LEFT JOIN sys_user_role sur3 ON sur3.tcDelegationId = tcd.id AND sur3.roleId = @roleId3 + LEFT JOIN sys_user u3 ON u3.id = sur3.userId + $condition"""); + sql.setParam("roleId", role.getId()); + sql.setParam("roleId2", role2.getId()); + sql.setParam("roleId3", role3.getId()); + Cnd cnd = Cnd.NEW(); + cnd.and("tcd.sessionId", "=", sessionId); + cnd.asc("tcd.code"); + cnd.groupBy("tcd.id"); + if (StrUtil.isNotBlank(pageForm.getSearchKeyword())) { + cnd.where().andLike("name", pageForm.getSearchKeyword()); + } + cnd.asc("tcd.code"); + sql.setCondition(cnd); + Pagination pagination = baseService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); + return Result.success(pagination); + } - @At - @SaCheckPermission("tc.delegation") - public Result tree(String sessionId) { - List> nodeList = CollUtil.newArrayList(); - nodeList.add(new TreeNode<>("教代会代表团", "0", "教代会代表团", 1000)); + @At + @SaCheckPermission("tc.delegation") + public Result tree(String sessionId) { + List> nodeList = CollUtil.newArrayList(); + nodeList.add(new TreeNode<>("教代会代表团", "0", "教代会代表团", 1000)); - List delegations = dao.query(Teacher_congress_delegation.class, Cnd.where("sessionId", "=", sessionId).asc("code")); - for (int i = 0; i < delegations.size(); i++) { - nodeList.add(new TreeNode<>(delegations.get(i).getId(), "教代会代表团", delegations.get(i).getName(), i)); - } + List delegations = dao.query(Teacher_congress_delegation.class, Cnd.where("sessionId", "=", sessionId).asc("code")); + for (int i = 0; i < delegations.size(); i++) { + nodeList.add(new TreeNode<>(delegations.get(i).getId(), "教代会代表团", delegations.get(i).getName(), i)); + } - List> treeList = TreeUtil.build(nodeList, "0"); - return Result.success(treeList); - } + List> treeList = TreeUtil.build(nodeList, "0"); + return Result.success(treeList); + } - @At - @Aop(TransAop.READ_COMMITTED) - @SaCheckPermission("tc.delegation") - public Result insert(Teacher_congress_delegation delegation) { - dao.insert(delegation); - return Result.success(); - } + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("tc.delegation") + public Result insert(Teacher_congress_delegation delegation) { + dao.insert(delegation); + return Result.success(); + } - @At - @Aop(TransAop.READ_COMMITTED) - @SaCheckPermission("tc.delegation") - public Result update(Teacher_congress_delegation delegation) { - dao.updateIgnoreNull(delegation); - return Result.success(); - } + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("tc.delegation") + public Result update(Teacher_congress_delegation delegation) { + dao.updateIgnoreNull(delegation); + return Result.success(); + } - @At - @Aop(TransAop.READ_COMMITTED) - @SaCheckPermission("tc.delegation") - public Result delete(@Valid String id) { - dao.delete(Teacher_congress_delegation.class, id); - return Result.success(); - } + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("tc.delegation") + public Result delete(@Valid String id) { + dao.delete(Teacher_congress_delegation.class, id); + return Result.success(); + } - @At - @Aop(TransAop.READ_COMMITTED) - @SaCheckPermission("tc.delegation") - public Result findOne(@Valid String id) { - Teacher_congress_delegation delegation = dao.fetch(Teacher_congress_delegation.class, id); - return Result.success(delegation); - } + @At + @Aop(TransAop.READ_COMMITTED) + @SaCheckPermission("tc.delegation") + public Result findOne(@Valid String id) { + Teacher_congress_delegation delegation = dao.fetch(Teacher_congress_delegation.class, id); + return Result.success(delegation); + } - /** - * 组成单位数据 - * - * @param delegationId 代表团ID - * @return - */ - @At - @SaCheckPermission("tc.delegation") - public Result partUnitTransferData(@Valid String delegationId, @Valid String sessionId) { - //找出本届次已经设置了代表团的所有单位 - List delegationUnits = dao.query(Teacher_congress_delegation_unit.class, Cnd.where("sessionId", "=", sessionId)); - List unitIds = delegationUnits.stream().map(Teacher_congress_delegation_unit::getUnitId).toList(); + /** + * 组成单位数据 + * + * @param delegationId 代表团ID + * @return + */ + @At + @SaCheckPermission("tc.delegation") + public Result partUnitTransferData(@Valid String delegationId, @Valid String sessionId) { + //找出本届次已经设置了代表团的所有单位 + List delegationUnits = dao.query(Teacher_congress_delegation_unit.class, Cnd.where("sessionId", "=", sessionId)); + List unitIds = delegationUnits.stream().map(Teacher_congress_delegation_unit::getUnitId).toList(); - //找出本代表团的单位 - List selectUnitIds = delegationUnits.stream().filter(unit -> unit.getDelegationId().equals(delegationId)).map(Teacher_congress_delegation_unit::getUnitId).toList(); + //找出本代表团的单位 + List selectUnitIds = delegationUnits.stream().filter(unit -> unit.getDelegationId().equals(delegationId)).map(Teacher_congress_delegation_unit::getUnitId).toList(); - SqlExpressionGroup seg = new SqlExpressionGroup(); - seg.orEX("id", "not in", unitIds); - seg.orEX("id", "in", selectUnitIds); + SqlExpressionGroup seg = new SqlExpressionGroup(); + seg.orEX("id", "not in", unitIds); + seg.orEX("id", "in", selectUnitIds); // Cnd cnd = Cnd.where("unitLevel", "=", 2); - Cnd cnd = Cnd.where("unitTypeCode", "=", "1"); - if (!seg.isEmpty()) { - cnd.and(seg); - } - cnd.asc("unitcode"); + Cnd cnd = Cnd.where("unitTypeCode", "=", "1"); + if (!seg.isEmpty()) { + cnd.and(seg); + } + cnd.asc("unitcode"); - List units = dao.query(Sys_unit.class, cnd); + List units = dao.query(Sys_unit.class, cnd); - NutMap transferData = NutMap.NEW().addv("selectUnitIds", selectUnitIds).addv("allUnits", units); - return Result.success(transferData); - } + NutMap transferData = NutMap.NEW().addv("selectUnitIds", selectUnitIds).addv("allUnits", units); + return Result.success(transferData); + } - @At - @SaCheckPermission("tc.delegation") - @Aop(TransAop.READ_COMMITTED) - public Result partUnitSet(@Valid String delegationId, @Valid String sessionId, @Param("unitIds") String[] unitIds) { - dao.clear(Teacher_congress_delegation_unit.class, Cnd.where("delegationId", "=", delegationId).and("sessionId", "=", sessionId)); + @At + @SaCheckPermission("tc.delegation") + @Aop(TransAop.READ_COMMITTED) + public Result partUnitSet(@Valid String delegationId, @Valid String sessionId, @Param("unitIds") String[] unitIds) { + dao.clear(Teacher_congress_delegation_unit.class, Cnd.where("delegationId", "=", delegationId).and("sessionId", "=", sessionId)); - List insertData = Arrays.stream(unitIds).map(unitId -> { - Teacher_congress_delegation_unit delegationUnit = new Teacher_congress_delegation_unit(); - delegationUnit.setUnitId(unitId); - delegationUnit.setDelegationId(delegationId); - delegationUnit.setSessionId(sessionId); - return delegationUnit; - }).toList(); + List insertData = Arrays.stream(unitIds).map(unitId -> { + Teacher_congress_delegation_unit delegationUnit = new Teacher_congress_delegation_unit(); + delegationUnit.setUnitId(unitId); + delegationUnit.setDelegationId(delegationId); + delegationUnit.setSessionId(sessionId); + return delegationUnit; + }).toList(); - dao.insert(insertData); - return Result.success(); - } + dao.insert(insertData); + return Result.success(); + } - /** - * 查询代表团组成单位 - * - * @param pageForm 分页 - * @param sessionId 届次 - * @param delegationId 代表团id - */ - @At - @SaCheckPermission("tc.delegation") - public Result partUnitPageData(@Valid PageForm pageForm, @Valid String sessionId, @Valid String delegationId) { - Sql sql = Sqls.create(""" - SELECT - t2.id, - t2.`name` - FROM - teacher_congress_delegation_unit t1 - LEFT JOIN sys_unit t2 ON t2.id = t1.unitId - $condition - """); - Cnd cnd = Cnd.NEW(); - cnd.and("t1.delegationId", "=", delegationId); - cnd.and("t1.sessionId", "=", sessionId); - if (StrUtil.isNotBlank(pageForm.getSearchKeyword())) { - cnd.where().andLike("t2.name", pageForm.getSearchKeyword()); - } - sql.setCondition(cnd); - Pagination pagination = baseService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); - return Result.success(pagination); - } + /** + * 查询代表团组成单位 + * + * @param pageForm 分页 + * @param sessionId 届次 + * @param delegationId 代表团id + */ + @At + @SaCheckPermission("tc.delegation") + public Result partUnitPageData(@Valid PageForm pageForm, @Valid String sessionId, @Valid String delegationId) { + Sql sql = Sqls.create(""" + SELECT + t2.id, + t2.`name` + FROM + teacher_congress_delegation_unit t1 + LEFT JOIN sys_unit t2 ON t2.id = t1.unitId + $condition + """); + Cnd cnd = Cnd.NEW(); + cnd.and("t1.delegationId", "=", delegationId); + cnd.and("t1.sessionId", "=", sessionId); + if (StrUtil.isNotBlank(pageForm.getSearchKeyword())) { + cnd.where().andLike("t2.name", pageForm.getSearchKeyword()); + } + sql.setCondition(cnd); + Pagination pagination = baseService.listPageMap(pageForm.getPageNumber(), pageForm.getPageSize(), sql); + return Result.success(pagination); + } - /** - * 查询非团长用户 - * - * @param sessionId - * @param delegationId - * @return - */ - @At - @SaCheckPermission("tc.delegation") - public Result notHeadUser(@Valid String sessionId, @Valid String delegationId, String keyWord) { - Sql sql = Sqls.create("select userId,loginName,userName,unitName from teacher_congress_delegate $condition"); - Cnd cnd = Cnd.NEW(); - cnd.and("delegationId", "=", delegationId); - cnd.and("sessionId", "=", sessionId); - SqlExpressionGroup seg = new SqlExpressionGroup(); - seg.orLike("loginName", keyWord); - seg.orLike("userName", keyWord); - cnd.and(seg); - sql.setCondition(cnd); - Pagination pagination = sysUserService.listPageMap(1, 10, sql); - return Result.success(pagination.getList()); - } + /** + * 查询非团长用户 + * + * @param sessionId + * @param delegationId + * @return + */ + @At + @SaCheckPermission("tc.delegation") + public Result notHeadUser(@Valid String sessionId, @Valid String delegationId, String keyWord) { + Sql sql = Sqls.create("select userId,loginName,userName,unitName from teacher_congress_delegate $condition"); + Cnd cnd = Cnd.NEW(); + cnd.and("delegationId", "=", delegationId); + cnd.and("sessionId", "=", sessionId); + SqlExpressionGroup seg = new SqlExpressionGroup(); + seg.orLike("loginName", keyWord); + seg.orLike("userName", keyWord); + cnd.and(seg); + sql.setCondition(cnd); + Pagination pagination = sysUserService.listPageMap(1, 10, sql); + return Result.success(pagination.getList()); + } - /** - * 查询团长 - * - * @param sessionId - * @param delegationId - * @return - */ - @At - @SaCheckPermission("tc.delegation") - public Result headUser(@Valid String sessionId, @Valid String delegationId, @Param(value = "type", df = "TEACHER_CONGRESS_DELEGATION_HEAD") String type) { - Sys_role role = null; - if (type.equals(RoleConstant.TEACHER_CONGRESS_DELEGATION_HEAD.name())) { - role = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_HEAD); - } else if (type.equals(RoleConstant.TEACHER_CONGRESS_VICE_DELEGATION_HEAD.name())) { - role = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_VICE_DELEGATION_HEAD); - } else if (type.equals(RoleConstant.TEACHER_CONGRESS_DELEGATION_CONTACT.name())) { - role = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_CONTACT); - } else { - throw new BaseException("参数错误"); - } + @At + @SaCheckPermission("tc.delegation") + public Result notContactUser(@Valid String sessionId, @Valid String delegationId, String keyWord) { + List userRoleList = dao.query( + Sys_user_role.class, + Cnd.where(Sys_user_role::getTcSessionId, "=", sessionId) + .and(Sys_user_role::getTcDelegationId, "=", delegationId) + ); + List list = userRoleList.stream().map(Sys_user_role::getUserId).distinct().toList(); - Record record = dao.fetch("sys_user_role", Cnd.where("tcSessionId", "=", sessionId).and("tcDelegationId", "=", delegationId).and("roleId", "=", role.getId())); - String userId = Optional.ofNullable(record).map(r -> r.getString("userId")).orElse(null); + Sql sql = Sqls.create("select id as userId,loginName,userName,unitName from vw_user $condition"); + Cnd cnd = Cnd.NEW(); + cnd.and("id", "not in", list); + SqlExpressionGroup seg = new SqlExpressionGroup(); + seg.orLike("loginName", keyWord); + seg.orLike("userName", keyWord); + cnd.and(seg); + sql.setCondition(cnd); + Pagination pagination = sysUserService.listPageMap(1, 10, sql); + return Result.success(pagination.getList()); + } - Sql sql = Sqls.create(""" - SELECT - u.id as userId, - u.loginname as loginName, - u.username as userName, - u.mobile, - n.name as unitName - FROM - sys_user u - LEFT JOIN sys_unit n on n.id = u.unitId - WHERE - u.id = @userId - """); - sql.setParam("userId", userId); - sql.setCallback(Sqls.callback.map()); - dao.execute(sql); - NutMap user = (NutMap) sql.getResult(); - return Result.success().addData(user); - } + /** + * 查询团长 + * + * @param sessionId + * @param delegationId + * @return + */ + @At + @SaCheckPermission("tc.delegation") + public Result headUser(@Valid String sessionId, @Valid String delegationId, @Param(value = "type", df = "TEACHER_CONGRESS_DELEGATION_HEAD") String type) { + Sys_role role = null; + if (type.equals(RoleConstant.TEACHER_CONGRESS_DELEGATION_HEAD.name())) { + role = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_HEAD); + } else if (type.equals(RoleConstant.TEACHER_CONGRESS_VICE_DELEGATION_HEAD.name())) { + role = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_VICE_DELEGATION_HEAD); + } else if (type.equals(RoleConstant.TEACHER_CONGRESS_DELEGATION_CONTACT.name())) { + role = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_CONTACT); + } else { + throw new BaseException("参数错误"); + } - /** - * 设置团长 - * - * @param delegationId 代表团ID - * @param sessionId 届次ID - * @param userId 团长id - * @param viceUserId 副团长id - * @param contactUserId 联络人 - * @return - */ - @At - @SaCheckPermission("tc.delegation") - @Aop(TransAop.READ_COMMITTED) - public Result insertHead(@Valid String delegationId, @Valid String sessionId, @Valid String userId, @Valid String viceUserId, String contactUserId) { - // 团长 - Sys_role role = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_HEAD); - dao.clear(Sys_user_role.class, Cnd.where(Sys_user_role::getTcDelegationId, "=", delegationId).and(Sys_user_role::getTcSessionId, "=", sessionId).and(Sys_user_role::getRoleId, "=", role.getId())); - dao.insert("sys_user_role", Chain.make("userId", userId).add("roleId", role.getId()).add("tcDelegationId", delegationId).add("tcSessionId", sessionId)); + Record record = dao.fetch("sys_user_role", Cnd.where("tcSessionId", "=", sessionId).and("tcDelegationId", "=", delegationId).and("roleId", "=", role.getId())); + String userId = Optional.ofNullable(record).map(r -> r.getString("userId")).orElse(null); - // 副团长 - Sys_role role2 = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_VICE_DELEGATION_HEAD); - dao.clear(Sys_user_role.class, Cnd.where(Sys_user_role::getTcDelegationId, "=", delegationId).and(Sys_user_role::getTcSessionId, "=", sessionId).and(Sys_user_role::getRoleId, "=", role2.getId())); - dao.insert("sys_user_role", Chain.make("userId", viceUserId).add("roleId", role2.getId()).add("tcDelegationId", delegationId).add("tcSessionId", sessionId)); + Sql sql = Sqls.create(""" + SELECT + u.id as userId, + u.loginname as loginName, + u.username as userName, + u.mobile, + n.name as unitName + FROM + sys_user u + LEFT JOIN sys_unit n on n.id = u.unitId + WHERE + u.id = @userId + """); + sql.setParam("userId", userId); + sql.setCallback(Sqls.callback.map()); + dao.execute(sql); + NutMap user = (NutMap) sql.getResult(); + return Result.success().addData(user); + } - // 联络人 - Sys_role role3 = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_CONTACT); - dao.clear(Sys_user_role.class, Cnd.where(Sys_user_role::getTcDelegationId, "=", delegationId).and(Sys_user_role::getTcSessionId, "=", sessionId).and(Sys_user_role::getRoleId, "=", role3.getId())); - dao.insert("sys_user_role", Chain.make("userId", contactUserId).add("roleId", role3.getId()).add("tcDelegationId", delegationId).add("tcSessionId", sessionId)); + /** + * 设置团长 + * + * @param delegationId 代表团ID + * @param sessionId 届次ID + * @param userId 团长id + * @param viceUserId 副团长id + * @param contactUserId 联络人 + * @return + */ + @At + @SaCheckPermission("tc.delegation") + @Aop(TransAop.READ_COMMITTED) + public Result insertHead(@Valid String delegationId, @Valid String sessionId, @Valid String userId, @Valid String viceUserId, String contactUserId) { + // 团长 + Sys_role role = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_HEAD); + dao.clear(Sys_user_role.class, Cnd.where(Sys_user_role::getTcDelegationId, "=", delegationId).and(Sys_user_role::getTcSessionId, "=", sessionId).and(Sys_user_role::getRoleId, "=", role.getId())); + dao.insert("sys_user_role", Chain.make("userId", userId).add("roleId", role.getId()).add("tcDelegationId", delegationId).add("tcSessionId", sessionId)); - sysUserService.clearCache(); - return Result.success(); - } + // 副团长 + Sys_role role2 = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_VICE_DELEGATION_HEAD); + dao.clear(Sys_user_role.class, Cnd.where(Sys_user_role::getTcDelegationId, "=", delegationId).and(Sys_user_role::getTcSessionId, "=", sessionId).and(Sys_user_role::getRoleId, "=", role2.getId())); + dao.insert("sys_user_role", Chain.make("userId", viceUserId).add("roleId", role2.getId()).add("tcDelegationId", delegationId).add("tcSessionId", sessionId)); - /** - * 删除团长角色 - * - * @param delegationId - * @param sessionId - * @param userId - * @return - */ - @At - @SaCheckPermission("tc.delegation") - public Result deleteHead(@Valid String delegationId, @Valid String sessionId, @Valid String userId) { - Sys_role role = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_HEAD); - //先删除角色 - dao.clear(Sys_user_role.class, Cnd.where(Sys_user_role::getTcDelegationId, "=", delegationId).and(Sys_user_role::getTcSessionId, "=", sessionId).and(Sys_user_role::getRoleId, "=", role.getId()).and(Sys_user_role::getUserId, "=", userId)); - sysUserService.clearCache(); - return Result.success(); - } + // 联络人 + Sys_role role3 = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_CONTACT); + dao.clear(Sys_user_role.class, Cnd.where(Sys_user_role::getTcDelegationId, "=", delegationId).and(Sys_user_role::getTcSessionId, "=", sessionId).and(Sys_user_role::getRoleId, "=", role3.getId())); + dao.insert("sys_user_role", Chain.make("userId", contactUserId).add("roleId", role3.getId()).add("tcDelegationId", delegationId).add("tcSessionId", sessionId)); + + sysUserService.clearCache(); + return Result.success(); + } + + /** + * 删除团长角色 + * + * @param delegationId + * @param sessionId + * @param userId + * @return + */ + @At + @SaCheckPermission("tc.delegation") + public Result deleteHead(@Valid String delegationId, @Valid String sessionId, @Valid String userId) { + Sys_role role = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_HEAD); + //先删除角色 + dao.clear(Sys_user_role.class, Cnd.where(Sys_user_role::getTcDelegationId, "=", delegationId).and(Sys_user_role::getTcSessionId, "=", sessionId).and(Sys_user_role::getRoleId, "=", role.getId()).and(Sys_user_role::getUserId, "=", userId)); + sysUserService.clearCache(); + return Result.success(); + } } diff --git a/src/main/resources/static/components/module/kh/KhZb.vue b/src/main/resources/static/components/module/kh/KhZb.vue index 252b7ca..21ee450 100644 --- a/src/main/resources/static/components/module/kh/KhZb.vue +++ b/src/main/resources/static/components/module/kh/KhZb.vue @@ -79,13 +79,25 @@ - - - - {{ idx + 1 }}  {{ nr.content }} +
+ + + + + + + + +
+ @click="formData.nrs.push({bzs:[{}], auditUser: ''})"> 添加内容 @@ -217,7 +229,7 @@ -