serv\web- 多租户修改

This commit is contained in:
2025-10-29 19:08:22 +08:00
parent c5c134fbb3
commit 82b6f14e64
86 changed files with 4446 additions and 2730 deletions

View File

@@ -32,6 +32,12 @@
<artifactId>common-all</artifactId>
<version>${school-news.version}</version>
</dependency>
<!-- System模块依赖 -->
<dependency>
<groupId>org.xyzh</groupId>
<artifactId>system</artifactId>
<version>${school-news.version}</version>
</dependency>
<!-- Spring Boot Web -->
<dependency>

View File

@@ -13,9 +13,15 @@ import org.xyzh.common.core.page.PageParam;
import org.xyzh.common.dto.crontab.TbCrontabTask;
import org.xyzh.common.dto.crontab.TbCrontabLog;
import org.xyzh.common.utils.IDUtils;
import org.xyzh.common.vo.UserDeptRoleVO;
import org.xyzh.crontab.mapper.CrontabTaskMapper;
import org.xyzh.crontab.mapper.CrontabLogMapper;
import org.xyzh.crontab.scheduler.SchedulerManager;
import org.xyzh.api.system.permission.ResourcePermissionService;
import org.xyzh.common.dto.user.TbSysUser;
import org.xyzh.common.dto.user.TbSysUserDeptRole;
import org.xyzh.common.core.enums.ResourceType;
import org.xyzh.system.utils.LoginUtil;
import java.time.LocalDateTime;
import java.util.Calendar;
@@ -43,6 +49,9 @@ public class CrontabServiceImpl implements CrontabService {
@Autowired
private SchedulerManager schedulerManager;
@Autowired
private ResourcePermissionService resourcePermissionService;
// ----------------定时任务管理--------------------------------
@Override
@@ -77,6 +86,21 @@ public class CrontabServiceImpl implements CrontabService {
if (result > 0) {
logger.info("创建定时任务成功: {}", task.getTaskName());
// 创建定时任务资源权限
try {
List<UserDeptRoleVO> userDeptRoles = LoginUtil.getCurrentDeptRole();
if (userDeptRoles != null && !userDeptRoles.isEmpty()) {
resourcePermissionService.createResourcePermission(
ResourceType.CRONTAB_TASK.getCode(),
task.getTaskId(),
userDeptRoles.get(0)
);
logger.info("创建定时任务权限成功: {}", task.getTaskName());
}
} catch (Exception e) {
logger.error("创建定时任务权限异常,但不影响任务创建: {}", e.getMessage(), e);
}
// 如果任务状态为启动,则立即调度
if (task.getStatus() == 1) {
schedulerManager.scheduleTask(task);