This commit is contained in:
2025-12-29 11:27:45 +08:00
parent 1d36003f9c
commit f60be6a873
2 changed files with 42 additions and 14 deletions
@@ -490,14 +490,14 @@ public class TeacherCongressDelegateManageController {
for (Teacher_congress_delegate delegate : delegateList) {
Teacher_congress_delegation_unit delegation_unit = dao.fetch(Teacher_congress_delegation_unit.class,
Cnd.where(Teacher_congress_delegation_unit::getUnitId, "=", delegate.getUnitId())
.and(Teacher_congress_delegation_union::getSessionId, "=", sessionId));
.and(Teacher_congress_delegation_unit::getSessionId, "=", sessionId));
if (ObjectUtil.isNotEmpty(delegation_unit)) {
delegate.setDelegationId(delegation_unit.getDelegationId());
dao.update(delegate);
Sys_user_role userRole = new Sys_user_role();
userRole.setTcDelegationId(delegation_unit.getDelegationId());
userRole.setUserId(delegate.getUserId());
userRole.setTcSessionId(delegate.getSessionId());
userRole.setTcSessionId(sessionId);
Sys_role sys_role = dao.fetch(Sys_role.class, Cnd.where(Sys_role::getCode, "=", RoleConstant.TEACHER_CONGRESS_DELEGATE_FORMAL.name()));
if (sys_role.getId().equals(delegate.getRoleId())) {
@@ -510,7 +510,6 @@ public class TeacherCongressDelegateManageController {
delegate.setRoleId(sys_role2.getId());
userRole.setRoleId(sys_role2.getId());
}
userRole.setTcDelegationId(delegate.getDelegationId());
dao.insert(userRole);
}
sysUserService.clearCache();
@@ -43,6 +43,7 @@ import javax.validation.Valid;
import java.util.Arrays;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
@IocBean
@At("/platform/teacherCongress/delegation")
@@ -282,11 +283,32 @@ public class TeacherCongressDelegationController {
} else {
throw new BaseException("参数错误");
}
if (type.equals("TEACHER_CONGRESS_VICE_DELEGATION_HEAD")){
List<Record> recordList = dao.query("sys_user_role", Cnd.where("tcSessionId", "=", sessionId).and("tcDelegationId", "=", delegationId).and("roleId", "=", role.getId()));
List<String> userIdList = recordList.stream().map(record -> record.getString("userId")).toList();
String userIds = userIdList.stream()
.map(s -> "'" + s + "'") // 给每个元素加上单引号
.collect(Collectors.joining(",", "(", ")")); // 用逗号连接,并加上括号
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 in %s
""".formatted(userIds));
List<NutMap> listMap = sysRoleService.listMap(sql);
return Result.success(listMap);
}else{
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);
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("""
Sql sql = Sqls.create("""
SELECT
u.id as userId,
u.loginname as loginName,
@@ -299,11 +321,15 @@ public class TeacherCongressDelegationController {
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);
sql.setParam("userId", userId);
sql.setCallback(Sqls.callback.map());
dao.execute(sql);
NutMap user = (NutMap) sql.getResult();
return Result.success().addData(user);
}
}
/**
@@ -319,7 +345,7 @@ public class TeacherCongressDelegationController {
@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) {
public Result insertHead(@Valid String delegationId, @Valid String sessionId, @Valid String userId, @Param("viceUserIds") String[] viceUserIds,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()));
@@ -328,7 +354,10 @@ public class TeacherCongressDelegationController {
// 副团长
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));
for (String viceUserId : viceUserIds) {
dao.insert("sys_user_role", Chain.make("userId", viceUserId).add("roleId", role2.getId()).add("tcDelegationId", delegationId).add("tcSessionId", sessionId));
}
// dao.insert("sys_user_role", Chain.make("userId", viceUserId).add("roleId", role2.getId()).add("tcDelegationId", delegationId).add("tcSessionId", sessionId));
// 联络人
Sys_role role3 = sysRoleService.getByCode(RoleConstant.TEACHER_CONGRESS_DELEGATION_CONTACT);