升级springboot到3.0.1
This commit is contained in:
parent
8210b1f1ca
commit
a097dc5e9d
|
|
@ -13,7 +13,7 @@
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>net.maku</groupId>
|
<groupId>net.maku</groupId>
|
||||||
<artifactId>maku-generator-boot-starter</artifactId>
|
<artifactId>maku-generator-boot-starter</artifactId>
|
||||||
<version>2.1.0</version>
|
<version>3.0.1</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ import ${package}.${moduleName}.vo.${ClassName}VO;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
import jakarta.validation.Valid;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package net.maku.message.controller;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
|
|
@ -10,15 +11,13 @@ import net.maku.message.entity.SmsLogEntity;
|
||||||
import net.maku.message.query.SmsLogQuery;
|
import net.maku.message.query.SmsLogQuery;
|
||||||
import net.maku.message.service.SmsLogService;
|
import net.maku.message.service.SmsLogService;
|
||||||
import net.maku.message.vo.SmsLogVO;
|
import net.maku.message.vo.SmsLogVO;
|
||||||
import org.springdoc.api.annotations.ParameterObject;
|
import org.springdoc.core.annotations.ParameterObject;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
import org.springframework.web.bind.annotation.PathVariable;
|
import org.springframework.web.bind.annotation.PathVariable;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 短信日志
|
* 短信日志
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package net.maku.message.controller;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
import net.maku.framework.common.utils.ExceptionUtils;
|
import net.maku.framework.common.utils.ExceptionUtils;
|
||||||
|
|
@ -16,11 +17,10 @@ import net.maku.message.sms.service.SmsService;
|
||||||
import net.maku.message.vo.SmsPlatformVO;
|
import net.maku.message.vo.SmsPlatformVO;
|
||||||
import net.maku.message.vo.SmsSendVO;
|
import net.maku.message.vo.SmsSendVO;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springdoc.api.annotations.ParameterObject;
|
import org.springdoc.core.annotations.ParameterObject;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
|
||||||
|
|
@ -16,19 +16,9 @@
|
||||||
<version>${revision}</version>
|
<version>${revision}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>de.codecentric</groupId>
|
|
||||||
<artifactId>spring-boot-admin-starter-server</artifactId>
|
|
||||||
<version>2.7.7</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>de.codecentric</groupId>
|
|
||||||
<artifactId>spring-boot-admin-starter-client</artifactId>
|
|
||||||
<version>2.7.7</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.github.oshi</groupId>
|
<groupId>com.github.oshi</groupId>
|
||||||
<artifactId>oshi-core</artifactId>
|
<artifactId>oshi-core</artifactId>
|
||||||
<version>6.3.2</version>
|
<version>6.4.0</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,10 +0,0 @@
|
||||||
package net.maku.monitor.config;
|
|
||||||
|
|
||||||
import de.codecentric.boot.admin.server.config.EnableAdminServer;
|
|
||||||
import org.springframework.context.annotation.Configuration;
|
|
||||||
|
|
||||||
@Configuration(proxyBeanMethods = false)
|
|
||||||
@EnableAdminServer
|
|
||||||
public class AdminServerConfiguration {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
package net.maku.monitor.controller;
|
package net.maku.monitor.controller;
|
||||||
|
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
import net.maku.monitor.vo.Cache;
|
import net.maku.monitor.vo.Cache;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
|
@ -9,7 +10,6 @@ import org.springframework.data.redis.core.RedisTemplate;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -59,12 +59,12 @@ public class Server {
|
||||||
this.jvm = new Jvm();
|
this.jvm = new Jvm();
|
||||||
this.sys = new Sys();
|
this.sys = new Sys();
|
||||||
this.setDiskList();
|
this.setDiskList();
|
||||||
log.info("Server Info => {}", this);
|
log.debug("Server Info => {}", this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Server(Disk disk) {
|
public Server(Disk disk) {
|
||||||
this.setDiskList();
|
this.setDiskList();
|
||||||
log.info("Server Info => {}", this);
|
log.debug("Server Info => {}", this);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
auth:
|
|
||||||
ignore_urls:
|
|
||||||
- /monitor/admin/**
|
|
||||||
|
|
@ -4,6 +4,7 @@ import cn.hutool.core.util.ArrayUtil;
|
||||||
import cn.hutool.extra.spring.SpringUtil;
|
import cn.hutool.extra.spring.SpringUtil;
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.exception.ServerException;
|
import net.maku.framework.common.exception.ServerException;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
|
|
@ -14,12 +15,11 @@ import net.maku.quartz.query.ScheduleJobQuery;
|
||||||
import net.maku.quartz.service.ScheduleJobService;
|
import net.maku.quartz.service.ScheduleJobService;
|
||||||
import net.maku.quartz.utils.CronUtils;
|
import net.maku.quartz.utils.CronUtils;
|
||||||
import net.maku.quartz.vo.ScheduleJobVO;
|
import net.maku.quartz.vo.ScheduleJobVO;
|
||||||
import org.springdoc.api.annotations.ParameterObject;
|
import org.springdoc.core.annotations.ParameterObject;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package net.maku.quartz.controller;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
|
|
@ -10,15 +11,13 @@ import net.maku.quartz.entity.ScheduleJobLogEntity;
|
||||||
import net.maku.quartz.query.ScheduleJobLogQuery;
|
import net.maku.quartz.query.ScheduleJobLogQuery;
|
||||||
import net.maku.quartz.service.ScheduleJobLogService;
|
import net.maku.quartz.service.ScheduleJobLogService;
|
||||||
import net.maku.quartz.vo.ScheduleJobLogVO;
|
import net.maku.quartz.vo.ScheduleJobLogVO;
|
||||||
import org.springdoc.api.annotations.ParameterObject;
|
import org.springdoc.core.annotations.ParameterObject;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
import org.springframework.web.bind.annotation.PathVariable;
|
import org.springframework.web.bind.annotation.PathVariable;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 定时任务日志
|
* 定时任务日志
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
|
import jakarta.annotation.PostConstruct;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
import net.maku.framework.common.service.impl.BaseServiceImpl;
|
import net.maku.framework.common.service.impl.BaseServiceImpl;
|
||||||
|
|
@ -20,7 +21,6 @@ import org.quartz.SchedulerException;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import javax.annotation.PostConstruct;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -52,7 +52,7 @@ public class ScheduleJobServiceImpl extends BaseServiceImpl<ScheduleJobDao, Sche
|
||||||
return new PageResult<>(ScheduleJobConvert.INSTANCE.convertList(page.getRecords()), page.getTotal());
|
return new PageResult<>(ScheduleJobConvert.INSTANCE.convertList(page.getRecords()), page.getTotal());
|
||||||
}
|
}
|
||||||
|
|
||||||
private LambdaQueryWrapper<ScheduleJobEntity> getWrapper(ScheduleJobQuery query){
|
private LambdaQueryWrapper<ScheduleJobEntity> getWrapper(ScheduleJobQuery query) {
|
||||||
LambdaQueryWrapper<ScheduleJobEntity> wrapper = Wrappers.lambdaQuery();
|
LambdaQueryWrapper<ScheduleJobEntity> wrapper = Wrappers.lambdaQuery();
|
||||||
wrapper.like(StrUtil.isNotBlank(query.getJobName()), ScheduleJobEntity::getJobName, query.getJobName());
|
wrapper.like(StrUtil.isNotBlank(query.getJobName()), ScheduleJobEntity::getJobName, query.getJobName());
|
||||||
wrapper.like(StrUtil.isNotBlank(query.getJobGroup()), ScheduleJobEntity::getJobGroup, query.getJobGroup());
|
wrapper.like(StrUtil.isNotBlank(query.getJobGroup()), ScheduleJobEntity::getJobGroup, query.getJobGroup());
|
||||||
|
|
@ -66,7 +66,7 @@ public class ScheduleJobServiceImpl extends BaseServiceImpl<ScheduleJobDao, Sche
|
||||||
ScheduleJobEntity entity = ScheduleJobConvert.INSTANCE.convert(vo);
|
ScheduleJobEntity entity = ScheduleJobConvert.INSTANCE.convert(vo);
|
||||||
|
|
||||||
entity.setStatus(ScheduleStatusEnum.PAUSE.getValue());
|
entity.setStatus(ScheduleStatusEnum.PAUSE.getValue());
|
||||||
if(baseMapper.insert(entity) > 0) {
|
if (baseMapper.insert(entity) > 0) {
|
||||||
ScheduleUtils.createScheduleJob(scheduler, entity);
|
ScheduleUtils.createScheduleJob(scheduler, entity);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -76,7 +76,7 @@ public class ScheduleJobServiceImpl extends BaseServiceImpl<ScheduleJobDao, Sche
|
||||||
ScheduleJobEntity entity = ScheduleJobConvert.INSTANCE.convert(vo);
|
ScheduleJobEntity entity = ScheduleJobConvert.INSTANCE.convert(vo);
|
||||||
|
|
||||||
// 更新定时任务
|
// 更新定时任务
|
||||||
if(updateById(entity)) {
|
if (updateById(entity)) {
|
||||||
ScheduleJobEntity scheduleJob = getById(entity.getId());
|
ScheduleJobEntity scheduleJob = getById(entity.getId());
|
||||||
ScheduleUtils.updateSchedulerJob(scheduler, scheduleJob);
|
ScheduleUtils.updateSchedulerJob(scheduler, scheduleJob);
|
||||||
}
|
}
|
||||||
|
|
@ -85,7 +85,7 @@ public class ScheduleJobServiceImpl extends BaseServiceImpl<ScheduleJobDao, Sche
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void delete(List<Long> idList) {
|
public void delete(List<Long> idList) {
|
||||||
for(Long id: idList){
|
for (Long id : idList) {
|
||||||
ScheduleJobEntity scheduleJob = getById(id);
|
ScheduleJobEntity scheduleJob = getById(id);
|
||||||
|
|
||||||
// 删除定时任务
|
// 删除定时任务
|
||||||
|
|
@ -98,7 +98,7 @@ public class ScheduleJobServiceImpl extends BaseServiceImpl<ScheduleJobDao, Sche
|
||||||
@Override
|
@Override
|
||||||
public void run(ScheduleJobVO vo) {
|
public void run(ScheduleJobVO vo) {
|
||||||
ScheduleJobEntity scheduleJob = getById(vo.getId());
|
ScheduleJobEntity scheduleJob = getById(vo.getId());
|
||||||
if(scheduleJob == null) {
|
if (scheduleJob == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -108,7 +108,7 @@ public class ScheduleJobServiceImpl extends BaseServiceImpl<ScheduleJobDao, Sche
|
||||||
@Override
|
@Override
|
||||||
public void changeStatus(ScheduleJobVO vo) {
|
public void changeStatus(ScheduleJobVO vo) {
|
||||||
ScheduleJobEntity scheduleJob = getById(vo.getId());
|
ScheduleJobEntity scheduleJob = getById(vo.getId());
|
||||||
if(scheduleJob == null) {
|
if (scheduleJob == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -116,9 +116,9 @@ public class ScheduleJobServiceImpl extends BaseServiceImpl<ScheduleJobDao, Sche
|
||||||
scheduleJob.setStatus(vo.getStatus());
|
scheduleJob.setStatus(vo.getStatus());
|
||||||
updateById(scheduleJob);
|
updateById(scheduleJob);
|
||||||
|
|
||||||
if(ScheduleStatusEnum.PAUSE.getValue() == vo.getStatus()) {
|
if (ScheduleStatusEnum.PAUSE.getValue() == vo.getStatus()) {
|
||||||
ScheduleUtils.pauseJob(scheduler, scheduleJob);
|
ScheduleUtils.pauseJob(scheduler, scheduleJob);
|
||||||
}else if(ScheduleStatusEnum.NORMAL.getValue() == vo.getStatus()) {
|
} else if (ScheduleStatusEnum.NORMAL.getValue() == vo.getStatus()) {
|
||||||
ScheduleUtils.resumeJob(scheduler, scheduleJob);
|
ScheduleUtils.resumeJob(scheduler, scheduleJob);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
package net.maku.storage.config;
|
package net.maku.storage.config;
|
||||||
|
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
import net.maku.storage.enums.StorageTypeEnum;
|
import net.maku.storage.enums.StorageTypeEnum;
|
||||||
import net.maku.storage.properties.LocalStorageProperties;
|
import net.maku.storage.properties.LocalStorageProperties;
|
||||||
import net.maku.storage.properties.StorageProperties;
|
import net.maku.storage.properties.StorageProperties;
|
||||||
|
|
@ -8,8 +9,6 @@ import org.springframework.context.annotation.Configuration;
|
||||||
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
|
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
|
||||||
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
|
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 本地资源映射配置
|
* 本地资源映射配置
|
||||||
*
|
*
|
||||||
|
|
@ -24,7 +23,7 @@ public class LocalResourceConfiguration implements WebMvcConfigurer {
|
||||||
@Override
|
@Override
|
||||||
public void addResourceHandlers(ResourceHandlerRegistry registry) {
|
public void addResourceHandlers(ResourceHandlerRegistry registry) {
|
||||||
// 如果不是本地存储,则返回
|
// 如果不是本地存储,则返回
|
||||||
if(properties.getConfig().getType() != StorageTypeEnum.LOCAL){
|
if (properties.getConfig().getType() != StorageTypeEnum.LOCAL) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,17 +2,17 @@ package net.maku.system.controller;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
import net.maku.system.query.SysAttachmentQuery;
|
import net.maku.system.query.SysAttachmentQuery;
|
||||||
import net.maku.system.service.SysAttachmentService;
|
import net.maku.system.service.SysAttachmentService;
|
||||||
import net.maku.system.vo.SysAttachmentVO;
|
import net.maku.system.vo.SysAttachmentVO;
|
||||||
import org.springdoc.api.annotations.ParameterObject;
|
import org.springdoc.core.annotations.ParameterObject;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package net.maku.system.controller;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
import net.maku.framework.security.utils.TokenUtils;
|
import net.maku.framework.security.utils.TokenUtils;
|
||||||
|
|
@ -13,8 +14,6 @@ import net.maku.system.vo.SysMobileLoginVO;
|
||||||
import net.maku.system.vo.SysTokenVO;
|
import net.maku.system.vo.SysTokenVO;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 认证管理
|
* 认证管理
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package net.maku.system.controller;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
|
|
@ -10,11 +11,10 @@ import net.maku.system.entity.SysDictDataEntity;
|
||||||
import net.maku.system.query.SysDictDataQuery;
|
import net.maku.system.query.SysDictDataQuery;
|
||||||
import net.maku.system.service.SysDictDataService;
|
import net.maku.system.service.SysDictDataService;
|
||||||
import net.maku.system.vo.SysDictDataVO;
|
import net.maku.system.vo.SysDictDataVO;
|
||||||
import org.springdoc.api.annotations.ParameterObject;
|
import org.springdoc.core.annotations.ParameterObject;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package net.maku.system.controller;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
|
|
@ -11,11 +12,10 @@ import net.maku.system.query.SysDictTypeQuery;
|
||||||
import net.maku.system.service.SysDictTypeService;
|
import net.maku.system.service.SysDictTypeService;
|
||||||
import net.maku.system.vo.SysDictTypeVO;
|
import net.maku.system.vo.SysDictTypeVO;
|
||||||
import net.maku.system.vo.SysDictVO;
|
import net.maku.system.vo.SysDictVO;
|
||||||
import org.springdoc.api.annotations.ParameterObject;
|
import org.springdoc.core.annotations.ParameterObject;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2,20 +2,19 @@ package net.maku.system.controller;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
import net.maku.system.query.SysLogLoginQuery;
|
import net.maku.system.query.SysLogLoginQuery;
|
||||||
import net.maku.system.service.SysLogLoginService;
|
import net.maku.system.service.SysLogLoginService;
|
||||||
import net.maku.system.vo.SysLogLoginVO;
|
import net.maku.system.vo.SysLogLoginVO;
|
||||||
import org.springdoc.api.annotations.ParameterObject;
|
import org.springdoc.core.annotations.ParameterObject;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 登录日志
|
* 登录日志
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ package net.maku.system.controller;
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.Parameter;
|
import io.swagger.v3.oas.annotations.Parameter;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.constant.Constant;
|
import net.maku.framework.common.constant.Constant;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
|
|
@ -16,7 +17,6 @@ import net.maku.system.vo.SysMenuVO;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
|
|
@ -27,14 +27,14 @@ import java.util.Set;
|
||||||
*/
|
*/
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("sys/menu")
|
@RequestMapping("sys/menu")
|
||||||
@Tag(name="菜单管理")
|
@Tag(name = "菜单管理")
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
public class SysMenuController {
|
public class SysMenuController {
|
||||||
private final SysMenuService sysMenuService;
|
private final SysMenuService sysMenuService;
|
||||||
|
|
||||||
@GetMapping("nav")
|
@GetMapping("nav")
|
||||||
@Operation(summary = "菜单导航")
|
@Operation(summary = "菜单导航")
|
||||||
public Result<List<SysMenuVO>> nav(){
|
public Result<List<SysMenuVO>> nav() {
|
||||||
UserDetail user = SecurityUser.getUser();
|
UserDetail user = SecurityUser.getUser();
|
||||||
List<SysMenuVO> list = sysMenuService.getUserMenuList(user, MenuTypeEnum.MENU.getValue());
|
List<SysMenuVO> list = sysMenuService.getUserMenuList(user, MenuTypeEnum.MENU.getValue());
|
||||||
|
|
||||||
|
|
@ -43,7 +43,7 @@ public class SysMenuController {
|
||||||
|
|
||||||
@GetMapping("authority")
|
@GetMapping("authority")
|
||||||
@Operation(summary = "用户权限标识")
|
@Operation(summary = "用户权限标识")
|
||||||
public Result<Set<String>> authority(){
|
public Result<Set<String>> authority() {
|
||||||
UserDetail user = SecurityUser.getUser();
|
UserDetail user = SecurityUser.getUser();
|
||||||
Set<String> set = sysMenuService.getUserAuthority(user);
|
Set<String> set = sysMenuService.getUserAuthority(user);
|
||||||
|
|
||||||
|
|
@ -54,7 +54,7 @@ public class SysMenuController {
|
||||||
@Operation(summary = "菜单列表")
|
@Operation(summary = "菜单列表")
|
||||||
@Parameter(name = "type", description = "菜单类型 0:菜单 1:按钮 2:接口 null:全部")
|
@Parameter(name = "type", description = "菜单类型 0:菜单 1:按钮 2:接口 null:全部")
|
||||||
@PreAuthorize("hasAuthority('sys:menu:list')")
|
@PreAuthorize("hasAuthority('sys:menu:list')")
|
||||||
public Result<List<SysMenuVO>> list(Integer type){
|
public Result<List<SysMenuVO>> list(Integer type) {
|
||||||
List<SysMenuVO> list = sysMenuService.getMenuList(type);
|
List<SysMenuVO> list = sysMenuService.getMenuList(type);
|
||||||
|
|
||||||
return Result.ok(list);
|
return Result.ok(list);
|
||||||
|
|
@ -63,12 +63,12 @@ public class SysMenuController {
|
||||||
@GetMapping("{id}")
|
@GetMapping("{id}")
|
||||||
@Operation(summary = "信息")
|
@Operation(summary = "信息")
|
||||||
@PreAuthorize("hasAuthority('sys:menu:info')")
|
@PreAuthorize("hasAuthority('sys:menu:info')")
|
||||||
public Result<SysMenuVO> get(@PathVariable("id") Long id){
|
public Result<SysMenuVO> get(@PathVariable("id") Long id) {
|
||||||
SysMenuEntity entity = sysMenuService.getById(id);
|
SysMenuEntity entity = sysMenuService.getById(id);
|
||||||
SysMenuVO vo = SysMenuConvert.INSTANCE.convert(entity);
|
SysMenuVO vo = SysMenuConvert.INSTANCE.convert(entity);
|
||||||
|
|
||||||
// 获取上级菜单名称
|
// 获取上级菜单名称
|
||||||
if(!Constant.ROOT.equals(entity.getPid())){
|
if (!Constant.ROOT.equals(entity.getPid())) {
|
||||||
SysMenuEntity parentEntity = sysMenuService.getById(entity.getPid());
|
SysMenuEntity parentEntity = sysMenuService.getById(entity.getPid());
|
||||||
vo.setParentName(parentEntity.getName());
|
vo.setParentName(parentEntity.getName());
|
||||||
}
|
}
|
||||||
|
|
@ -79,7 +79,7 @@ public class SysMenuController {
|
||||||
@PostMapping
|
@PostMapping
|
||||||
@Operation(summary = "保存")
|
@Operation(summary = "保存")
|
||||||
@PreAuthorize("hasAuthority('sys:menu:save')")
|
@PreAuthorize("hasAuthority('sys:menu:save')")
|
||||||
public Result<String> save(@RequestBody @Valid SysMenuVO vo){
|
public Result<String> save(@RequestBody @Valid SysMenuVO vo) {
|
||||||
sysMenuService.save(vo);
|
sysMenuService.save(vo);
|
||||||
|
|
||||||
return Result.ok();
|
return Result.ok();
|
||||||
|
|
@ -88,7 +88,7 @@ public class SysMenuController {
|
||||||
@PutMapping
|
@PutMapping
|
||||||
@Operation(summary = "修改")
|
@Operation(summary = "修改")
|
||||||
@PreAuthorize("hasAuthority('sys:menu:update')")
|
@PreAuthorize("hasAuthority('sys:menu:update')")
|
||||||
public Result<String> update(@RequestBody @Valid SysMenuVO vo){
|
public Result<String> update(@RequestBody @Valid SysMenuVO vo) {
|
||||||
sysMenuService.update(vo);
|
sysMenuService.update(vo);
|
||||||
|
|
||||||
return Result.ok();
|
return Result.ok();
|
||||||
|
|
@ -97,10 +97,10 @@ public class SysMenuController {
|
||||||
@DeleteMapping("{id}")
|
@DeleteMapping("{id}")
|
||||||
@Operation(summary = "删除")
|
@Operation(summary = "删除")
|
||||||
@PreAuthorize("hasAuthority('sys:menu:delete')")
|
@PreAuthorize("hasAuthority('sys:menu:delete')")
|
||||||
public Result<String> delete(@PathVariable("id") Long id){
|
public Result<String> delete(@PathVariable("id") Long id) {
|
||||||
// 判断是否有子菜单或按钮
|
// 判断是否有子菜单或按钮
|
||||||
Long count = sysMenuService.getSubMenuCount(id);
|
Long count = sysMenuService.getSubMenuCount(id);
|
||||||
if(count > 0){
|
if (count > 0) {
|
||||||
return Result.error("请先删除子菜单");
|
return Result.error("请先删除子菜单");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package net.maku.system.controller;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.constant.Constant;
|
import net.maku.framework.common.constant.Constant;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
|
|
@ -12,7 +13,6 @@ import net.maku.system.vo.SysOrgVO;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -22,7 +22,7 @@ import java.util.List;
|
||||||
*/
|
*/
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("sys/org")
|
@RequestMapping("sys/org")
|
||||||
@Tag(name="机构管理")
|
@Tag(name = "机构管理")
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
public class SysOrgController {
|
public class SysOrgController {
|
||||||
private final SysOrgService sysOrgService;
|
private final SysOrgService sysOrgService;
|
||||||
|
|
@ -30,7 +30,7 @@ public class SysOrgController {
|
||||||
@GetMapping("list")
|
@GetMapping("list")
|
||||||
@Operation(summary = "列表")
|
@Operation(summary = "列表")
|
||||||
@PreAuthorize("hasAuthority('sys:org:list')")
|
@PreAuthorize("hasAuthority('sys:org:list')")
|
||||||
public Result<List<SysOrgVO>> list(){
|
public Result<List<SysOrgVO>> list() {
|
||||||
List<SysOrgVO> list = sysOrgService.getList();
|
List<SysOrgVO> list = sysOrgService.getList();
|
||||||
|
|
||||||
return Result.ok(list);
|
return Result.ok(list);
|
||||||
|
|
@ -39,12 +39,12 @@ public class SysOrgController {
|
||||||
@GetMapping("{id}")
|
@GetMapping("{id}")
|
||||||
@Operation(summary = "信息")
|
@Operation(summary = "信息")
|
||||||
@PreAuthorize("hasAuthority('sys:org:info')")
|
@PreAuthorize("hasAuthority('sys:org:info')")
|
||||||
public Result<SysOrgVO> get(@PathVariable("id") Long id){
|
public Result<SysOrgVO> get(@PathVariable("id") Long id) {
|
||||||
SysOrgEntity entity = sysOrgService.getById(id);
|
SysOrgEntity entity = sysOrgService.getById(id);
|
||||||
SysOrgVO vo =SysOrgConvert.INSTANCE.convert(entity);
|
SysOrgVO vo = SysOrgConvert.INSTANCE.convert(entity);
|
||||||
|
|
||||||
// 获取上级机构名称
|
// 获取上级机构名称
|
||||||
if(!Constant.ROOT.equals(entity.getPid())){
|
if (!Constant.ROOT.equals(entity.getPid())) {
|
||||||
SysOrgEntity parentEntity = sysOrgService.getById(entity.getPid());
|
SysOrgEntity parentEntity = sysOrgService.getById(entity.getPid());
|
||||||
vo.setParentName(parentEntity.getName());
|
vo.setParentName(parentEntity.getName());
|
||||||
}
|
}
|
||||||
|
|
@ -55,7 +55,7 @@ public class SysOrgController {
|
||||||
@PostMapping
|
@PostMapping
|
||||||
@Operation(summary = "保存")
|
@Operation(summary = "保存")
|
||||||
@PreAuthorize("hasAuthority('sys:org:save')")
|
@PreAuthorize("hasAuthority('sys:org:save')")
|
||||||
public Result<String> save(@RequestBody @Valid SysOrgVO vo){
|
public Result<String> save(@RequestBody @Valid SysOrgVO vo) {
|
||||||
sysOrgService.save(vo);
|
sysOrgService.save(vo);
|
||||||
|
|
||||||
return Result.ok();
|
return Result.ok();
|
||||||
|
|
@ -64,7 +64,7 @@ public class SysOrgController {
|
||||||
@PutMapping
|
@PutMapping
|
||||||
@Operation(summary = "修改")
|
@Operation(summary = "修改")
|
||||||
@PreAuthorize("hasAuthority('sys:org:update')")
|
@PreAuthorize("hasAuthority('sys:org:update')")
|
||||||
public Result<String> update(@RequestBody @Valid SysOrgVO vo){
|
public Result<String> update(@RequestBody @Valid SysOrgVO vo) {
|
||||||
sysOrgService.update(vo);
|
sysOrgService.update(vo);
|
||||||
|
|
||||||
return Result.ok();
|
return Result.ok();
|
||||||
|
|
@ -73,7 +73,7 @@ public class SysOrgController {
|
||||||
@DeleteMapping("{id}")
|
@DeleteMapping("{id}")
|
||||||
@Operation(summary = "删除")
|
@Operation(summary = "删除")
|
||||||
@PreAuthorize("hasAuthority('sys:org:delete')")
|
@PreAuthorize("hasAuthority('sys:org:delete')")
|
||||||
public Result<String> delete(@PathVariable("id") Long id){
|
public Result<String> delete(@PathVariable("id") Long id) {
|
||||||
sysOrgService.delete(id);
|
sysOrgService.delete(id);
|
||||||
|
|
||||||
return Result.ok();
|
return Result.ok();
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package net.maku.system.controller;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
|
|
@ -10,11 +11,10 @@ import net.maku.system.entity.SysParamsEntity;
|
||||||
import net.maku.system.query.SysParamsQuery;
|
import net.maku.system.query.SysParamsQuery;
|
||||||
import net.maku.system.service.SysParamsService;
|
import net.maku.system.service.SysParamsService;
|
||||||
import net.maku.system.vo.SysParamsVO;
|
import net.maku.system.vo.SysParamsVO;
|
||||||
import org.springdoc.api.annotations.ParameterObject;
|
import org.springdoc.core.annotations.ParameterObject;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package net.maku.system.controller;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
|
|
@ -10,11 +11,10 @@ import net.maku.system.entity.SysPostEntity;
|
||||||
import net.maku.system.query.SysPostQuery;
|
import net.maku.system.query.SysPostQuery;
|
||||||
import net.maku.system.service.SysPostService;
|
import net.maku.system.service.SysPostService;
|
||||||
import net.maku.system.vo.SysPostVO;
|
import net.maku.system.vo.SysPostVO;
|
||||||
import org.springdoc.api.annotations.ParameterObject;
|
import org.springdoc.core.annotations.ParameterObject;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package net.maku.system.controller;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
|
|
@ -16,11 +17,10 @@ import net.maku.system.vo.SysMenuVO;
|
||||||
import net.maku.system.vo.SysRoleDataScopeVO;
|
import net.maku.system.vo.SysRoleDataScopeVO;
|
||||||
import net.maku.system.vo.SysRoleVO;
|
import net.maku.system.vo.SysRoleVO;
|
||||||
import net.maku.system.vo.SysUserVO;
|
import net.maku.system.vo.SysUserVO;
|
||||||
import org.springdoc.api.annotations.ParameterObject;
|
import org.springdoc.core.annotations.ParameterObject;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ package net.maku.system.controller;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
import net.maku.framework.common.utils.Result;
|
import net.maku.framework.common.utils.Result;
|
||||||
|
|
@ -16,13 +17,12 @@ import net.maku.system.service.SysUserRoleService;
|
||||||
import net.maku.system.service.SysUserService;
|
import net.maku.system.service.SysUserService;
|
||||||
import net.maku.system.vo.SysUserPasswordVO;
|
import net.maku.system.vo.SysUserPasswordVO;
|
||||||
import net.maku.system.vo.SysUserVO;
|
import net.maku.system.vo.SysUserVO;
|
||||||
import org.springdoc.api.annotations.ParameterObject;
|
import org.springdoc.core.annotations.ParameterObject;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
import org.springframework.security.crypto.password.PasswordEncoder;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
import javax.validation.Valid;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,11 @@
|
||||||
package net.maku.system.query;
|
package net.maku.system.query;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import jakarta.validation.constraints.NotNull;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
import net.maku.framework.common.query.Query;
|
import net.maku.framework.common.query.Query;
|
||||||
|
|
||||||
import javax.validation.constraints.NotNull;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 字典数据
|
* 字典数据
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
import com.fhs.trans.service.impl.TransService;
|
import com.fhs.trans.service.impl.TransService;
|
||||||
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.SneakyThrows;
|
import lombok.SneakyThrows;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
|
|
@ -19,7 +20,6 @@ import net.maku.system.vo.SysLogLoginVO;
|
||||||
import org.springframework.http.HttpHeaders;
|
import org.springframework.http.HttpHeaders;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
|
import jakarta.annotation.PostConstruct;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.common.exception.ServerException;
|
import net.maku.framework.common.exception.ServerException;
|
||||||
import net.maku.framework.common.page.PageResult;
|
import net.maku.framework.common.page.PageResult;
|
||||||
|
|
@ -19,7 +20,6 @@ import net.maku.system.vo.SysParamsVO;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import javax.annotation.PostConstruct;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2,12 +2,12 @@ package net.maku.system.vo;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import jakarta.validation.constraints.Min;
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
|
import jakarta.validation.constraints.NotNull;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import net.maku.framework.common.utils.DateUtils;
|
import net.maku.framework.common.utils.DateUtils;
|
||||||
|
|
||||||
import javax.validation.constraints.Min;
|
|
||||||
import javax.validation.constraints.NotBlank;
|
|
||||||
import javax.validation.constraints.NotNull;
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,11 +2,11 @@ package net.maku.system.vo;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import jakarta.validation.constraints.Min;
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import net.maku.framework.common.utils.DateUtils;
|
import net.maku.framework.common.utils.DateUtils;
|
||||||
|
|
||||||
import javax.validation.constraints.Min;
|
|
||||||
import javax.validation.constraints.NotBlank;
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,10 +2,6 @@ package net.maku.system.vo;
|
||||||
|
|
||||||
import com.alibaba.excel.annotation.ExcelIgnore;
|
import com.alibaba.excel.annotation.ExcelIgnore;
|
||||||
import com.alibaba.excel.annotation.ExcelProperty;
|
import com.alibaba.excel.annotation.ExcelProperty;
|
||||||
import com.alibaba.excel.converters.Converter;
|
|
||||||
import com.alibaba.excel.metadata.GlobalConfiguration;
|
|
||||||
import com.alibaba.excel.metadata.data.WriteCellData;
|
|
||||||
import com.alibaba.excel.metadata.property.ExcelContentProperty;
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import com.fhs.core.trans.anno.Trans;
|
import com.fhs.core.trans.anno.Trans;
|
||||||
import com.fhs.core.trans.constant.TransType;
|
import com.fhs.core.trans.constant.TransType;
|
||||||
|
|
|
||||||
|
|
@ -2,14 +2,14 @@ package net.maku.system.vo;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import jakarta.validation.constraints.Min;
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
import net.maku.framework.common.utils.DateUtils;
|
import net.maku.framework.common.utils.DateUtils;
|
||||||
import net.maku.framework.common.utils.TreeNode;
|
import net.maku.framework.common.utils.TreeNode;
|
||||||
import org.hibernate.validator.constraints.Range;
|
import org.hibernate.validator.constraints.Range;
|
||||||
|
|
||||||
import javax.validation.constraints.Min;
|
|
||||||
import javax.validation.constraints.NotBlank;
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2,13 +2,13 @@ package net.maku.system.vo;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import jakarta.validation.constraints.Min;
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
import net.maku.framework.common.utils.DateUtils;
|
import net.maku.framework.common.utils.DateUtils;
|
||||||
import net.maku.framework.common.utils.TreeNode;
|
import net.maku.framework.common.utils.TreeNode;
|
||||||
|
|
||||||
import javax.validation.constraints.Min;
|
|
||||||
import javax.validation.constraints.NotBlank;
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2,20 +2,20 @@ package net.maku.system.vo;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import jakarta.validation.constraints.Min;
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import net.maku.framework.common.utils.DateUtils;
|
import net.maku.framework.common.utils.DateUtils;
|
||||||
import org.hibernate.validator.constraints.Range;
|
import org.hibernate.validator.constraints.Range;
|
||||||
|
|
||||||
import javax.validation.constraints.Min;
|
|
||||||
import javax.validation.constraints.NotBlank;
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 岗位管理
|
* 岗位管理
|
||||||
*
|
*
|
||||||
* @author 阿沐 babamu@126.com
|
* @author 阿沐 babamu@126.com
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
@Schema(description = "岗位管理")
|
@Schema(description = "岗位管理")
|
||||||
public class SysPostVO implements Serializable {
|
public class SysPostVO implements Serializable {
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
package net.maku.system.vo;
|
package net.maku.system.vo;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import jakarta.validation.constraints.NotNull;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import javax.validation.constraints.NotNull;
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,10 +2,10 @@ package net.maku.system.vo;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import net.maku.framework.common.utils.DateUtils;
|
import net.maku.framework.common.utils.DateUtils;
|
||||||
|
|
||||||
import javax.validation.constraints.NotBlank;
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
package net.maku.system.vo;
|
package net.maku.system.vo;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import org.hibernate.validator.constraints.Length;
|
import org.hibernate.validator.constraints.Length;
|
||||||
|
|
||||||
import javax.validation.constraints.NotBlank;
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -6,14 +6,14 @@ import com.fhs.core.trans.anno.Trans;
|
||||||
import com.fhs.core.trans.constant.TransType;
|
import com.fhs.core.trans.constant.TransType;
|
||||||
import com.fhs.core.trans.vo.TransPojo;
|
import com.fhs.core.trans.vo.TransPojo;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import jakarta.validation.constraints.Email;
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
|
import jakarta.validation.constraints.NotNull;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import net.maku.framework.common.utils.DateUtils;
|
import net.maku.framework.common.utils.DateUtils;
|
||||||
import net.maku.system.entity.SysOrgEntity;
|
import net.maku.system.entity.SysOrgEntity;
|
||||||
import org.hibernate.validator.constraints.Range;
|
import org.hibernate.validator.constraints.Range;
|
||||||
|
|
||||||
import javax.validation.constraints.Email;
|
|
||||||
import javax.validation.constraints.NotBlank;
|
|
||||||
import javax.validation.constraints.NotNull;
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,11 @@
|
||||||
<artifactId>spring-boot-starter-web</artifactId>
|
<artifactId>spring-boot-starter-web</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
|
<groupId>jakarta.servlet</groupId>
|
||||||
|
<artifactId>jakarta.servlet-api</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-configuration-processor</artifactId>
|
<artifactId>spring-boot-configuration-processor</artifactId>
|
||||||
<optional>true</optional>
|
<optional>true</optional>
|
||||||
|
|
@ -24,6 +29,10 @@
|
||||||
<artifactId>spring-boot-starter-validation</artifactId>
|
<artifactId>spring-boot-starter-validation</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
|
<groupId>com.github.xiaoymin</groupId>
|
||||||
|
<artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-test</artifactId>
|
<artifactId>spring-boot-starter-test</artifactId>
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
|
|
@ -53,10 +62,6 @@
|
||||||
<artifactId>mybatis-plus-boot-starter</artifactId>
|
<artifactId>mybatis-plus-boot-starter</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springdoc</groupId>
|
|
||||||
<artifactId>springdoc-openapi-ui</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.hutool</groupId>
|
<groupId>cn.hutool</groupId>
|
||||||
<artifactId>hutool-all</artifactId>
|
<artifactId>hutool-all</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
package net.maku.framework.common.cache;
|
package net.maku.framework.common.cache;
|
||||||
|
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
import org.springframework.data.redis.core.HashOperations;
|
import org.springframework.data.redis.core.HashOperations;
|
||||||
import org.springframework.data.redis.core.RedisTemplate;
|
import org.springframework.data.redis.core.RedisTemplate;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,11 @@
|
||||||
package net.maku.framework.common.query;
|
package net.maku.framework.common.query;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import jakarta.validation.constraints.Min;
|
||||||
|
import jakarta.validation.constraints.NotNull;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import org.hibernate.validator.constraints.Range;
|
import org.hibernate.validator.constraints.Range;
|
||||||
|
|
||||||
import javax.validation.constraints.Min;
|
|
||||||
import javax.validation.constraints.NotNull;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询公共参数
|
* 查询公共参数
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -12,13 +12,13 @@ import com.fhs.core.trans.constant.TransType;
|
||||||
import com.fhs.core.trans.util.ReflectUtils;
|
import com.fhs.core.trans.util.ReflectUtils;
|
||||||
import com.fhs.core.trans.vo.TransPojo;
|
import com.fhs.core.trans.vo.TransPojo;
|
||||||
import com.fhs.trans.service.impl.DictionaryTransService;
|
import com.fhs.trans.service.impl.DictionaryTransService;
|
||||||
|
import jakarta.servlet.http.HttpServletResponse;
|
||||||
import lombok.SneakyThrows;
|
import lombok.SneakyThrows;
|
||||||
import net.maku.framework.common.excel.ExcelDataListener;
|
import net.maku.framework.common.excel.ExcelDataListener;
|
||||||
import net.maku.framework.common.excel.ExcelFinishCallBack;
|
import net.maku.framework.common.excel.ExcelFinishCallBack;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,13 @@
|
||||||
package net.maku.framework.common.utils;
|
package net.maku.framework.common.utils;
|
||||||
|
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
|
import jakarta.servlet.http.HttpServletResponse;
|
||||||
import org.springframework.http.HttpHeaders;
|
import org.springframework.http.HttpHeaders;
|
||||||
import org.springframework.web.context.request.RequestAttributes;
|
import org.springframework.web.context.request.RequestAttributes;
|
||||||
import org.springframework.web.context.request.RequestContextHolder;
|
import org.springframework.web.context.request.RequestContextHolder;
|
||||||
import org.springframework.web.context.request.ServletRequestAttributes;
|
import org.springframework.web.context.request.ServletRequestAttributes;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
|
||||||
import java.util.Enumeration;
|
import java.util.Enumeration;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
@ -21,7 +21,7 @@ public class HttpContextUtils {
|
||||||
|
|
||||||
public static HttpServletRequest getHttpServletRequest() {
|
public static HttpServletRequest getHttpServletRequest() {
|
||||||
RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
|
RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
|
||||||
if(requestAttributes == null){
|
if (requestAttributes == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -29,9 +29,9 @@ public class HttpContextUtils {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static HttpServletResponse getHttpServletResponse () {
|
public static HttpServletResponse getHttpServletResponse() {
|
||||||
RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
|
RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
|
||||||
if(requestAttributes == null){
|
if (requestAttributes == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -54,13 +54,13 @@ public class HttpContextUtils {
|
||||||
return params;
|
return params;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String getDomain(){
|
public static String getDomain() {
|
||||||
HttpServletRequest request = getHttpServletRequest();
|
HttpServletRequest request = getHttpServletRequest();
|
||||||
StringBuffer url = request.getRequestURL();
|
StringBuffer url = request.getRequestURL();
|
||||||
return url.delete(url.length() - request.getRequestURI().length(), url.length()).toString();
|
return url.delete(url.length() - request.getRequestURI().length(), url.length()).toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String getOrigin(){
|
public static String getOrigin() {
|
||||||
HttpServletRequest request = getHttpServletRequest();
|
HttpServletRequest request = getHttpServletRequest();
|
||||||
return request.getHeader(HttpHeaders.ORIGIN);
|
return request.getHeader(HttpHeaders.ORIGIN);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package net.maku.framework.common.utils;
|
package net.maku.framework.common.utils;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
|
|
||||||
import java.net.InetAddress;
|
import java.net.InetAddress;
|
||||||
import java.net.UnknownHostException;
|
import java.net.UnknownHostException;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
package net.maku.framework.common.utils;
|
package net.maku.framework.common.utils;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import jakarta.validation.constraints.NotNull;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import javax.validation.constraints.NotNull;
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,13 @@
|
||||||
package net.maku.framework.common.xss;
|
package net.maku.framework.common.xss;
|
||||||
|
|
||||||
|
import jakarta.servlet.FilterChain;
|
||||||
|
import jakarta.servlet.ServletException;
|
||||||
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
|
import jakarta.servlet.http.HttpServletResponse;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import org.springframework.util.PathMatcher;
|
import org.springframework.util.PathMatcher;
|
||||||
import org.springframework.web.filter.OncePerRequestFilter;
|
import org.springframework.web.filter.OncePerRequestFilter;
|
||||||
|
|
||||||
import javax.servlet.FilterChain;
|
|
||||||
import javax.servlet.ServletException;
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -2,12 +2,12 @@ package net.maku.framework.common.xss;
|
||||||
|
|
||||||
import cn.hutool.core.io.IoUtil;
|
import cn.hutool.core.io.IoUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import jakarta.servlet.ReadListener;
|
||||||
|
import jakarta.servlet.ServletInputStream;
|
||||||
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
|
import jakarta.servlet.http.HttpServletRequestWrapper;
|
||||||
import org.springframework.http.MediaType;
|
import org.springframework.http.MediaType;
|
||||||
|
|
||||||
import javax.servlet.ReadListener;
|
|
||||||
import javax.servlet.ServletInputStream;
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
import javax.servlet.http.HttpServletRequestWrapper;
|
|
||||||
import java.io.ByteArrayInputStream;
|
import java.io.ByteArrayInputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
|
|
|
||||||
|
|
@ -21,12 +21,11 @@ public class RedisConfig {
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
public Jackson2JsonRedisSerializer<Object> jackson2JsonRedisSerializer(){
|
public Jackson2JsonRedisSerializer<Object> jackson2JsonRedisSerializer(){
|
||||||
Jackson2JsonRedisSerializer<Object> jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer<>(Object.class);
|
|
||||||
ObjectMapper objectMapper = new ObjectMapper();
|
ObjectMapper objectMapper = new ObjectMapper();
|
||||||
objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
|
objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
|
||||||
objectMapper.activateDefaultTyping(LaissezFaireSubTypeValidator.instance, ObjectMapper.DefaultTyping.NON_FINAL);
|
objectMapper.activateDefaultTyping(LaissezFaireSubTypeValidator.instance, ObjectMapper.DefaultTyping.NON_FINAL);
|
||||||
jackson2JsonRedisSerializer.setObjectMapper(objectMapper);
|
|
||||||
|
|
||||||
|
Jackson2JsonRedisSerializer<Object> jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer<>(objectMapper, Object.class);
|
||||||
return jackson2JsonRedisSerializer;
|
return jackson2JsonRedisSerializer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ import io.swagger.v3.oas.models.OpenAPI;
|
||||||
import io.swagger.v3.oas.models.info.Contact;
|
import io.swagger.v3.oas.models.info.Contact;
|
||||||
import io.swagger.v3.oas.models.info.Info;
|
import io.swagger.v3.oas.models.info.Info;
|
||||||
import io.swagger.v3.oas.models.info.License;
|
import io.swagger.v3.oas.models.info.License;
|
||||||
import org.springdoc.core.GroupedOpenApi;
|
import org.springdoc.core.models.GroupedOpenApi;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,9 +14,10 @@ import org.springframework.security.authentication.AuthenticationProvider;
|
||||||
import org.springframework.security.authentication.DefaultAuthenticationEventPublisher;
|
import org.springframework.security.authentication.DefaultAuthenticationEventPublisher;
|
||||||
import org.springframework.security.authentication.ProviderManager;
|
import org.springframework.security.authentication.ProviderManager;
|
||||||
import org.springframework.security.authentication.dao.DaoAuthenticationProvider;
|
import org.springframework.security.authentication.dao.DaoAuthenticationProvider;
|
||||||
import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;
|
import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity;
|
||||||
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
||||||
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
|
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
|
||||||
|
import org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer;
|
||||||
import org.springframework.security.config.http.SessionCreationPolicy;
|
import org.springframework.security.config.http.SessionCreationPolicy;
|
||||||
import org.springframework.security.core.userdetails.UserDetailsService;
|
import org.springframework.security.core.userdetails.UserDetailsService;
|
||||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
import org.springframework.security.crypto.password.PasswordEncoder;
|
||||||
|
|
@ -35,7 +36,7 @@ import java.util.List;
|
||||||
@Configuration
|
@Configuration
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@EnableWebSecurity
|
@EnableWebSecurity
|
||||||
@EnableGlobalMethodSecurity(prePostEnabled = true)
|
@EnableMethodSecurity
|
||||||
public class SecurityConfig {
|
public class SecurityConfig {
|
||||||
private final OncePerRequestFilter authenticationTokenFilter;
|
private final OncePerRequestFilter authenticationTokenFilter;
|
||||||
private final PermitResource permitResource;
|
private final PermitResource permitResource;
|
||||||
|
|
@ -80,13 +81,14 @@ public class SecurityConfig {
|
||||||
http
|
http
|
||||||
.addFilterBefore(authenticationTokenFilter, UsernamePasswordAuthenticationFilter.class)
|
.addFilterBefore(authenticationTokenFilter, UsernamePasswordAuthenticationFilter.class)
|
||||||
.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
|
.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
|
||||||
.and().authorizeRequests()
|
.and().authorizeHttpRequests(auth -> auth
|
||||||
.antMatchers(permits).permitAll()
|
.requestMatchers(permits).permitAll()
|
||||||
.antMatchers(HttpMethod.OPTIONS).permitAll()
|
.requestMatchers(HttpMethod.OPTIONS).permitAll()
|
||||||
.anyRequest().authenticated()
|
.anyRequest().authenticated()
|
||||||
.and().exceptionHandling().authenticationEntryPoint(new SecurityAuthenticationEntryPoint())
|
)
|
||||||
|
.exceptionHandling().authenticationEntryPoint(new SecurityAuthenticationEntryPoint())
|
||||||
.and().headers().frameOptions().disable()
|
.and().headers().frameOptions().disable()
|
||||||
.and().csrf().disable()
|
.and().csrf(AbstractHttpConfigurer::disable)
|
||||||
;
|
;
|
||||||
|
|
||||||
return http.build();
|
return http.build();
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,7 @@
|
||||||
package net.maku.framework.security.exception;
|
package net.maku.framework.security.exception;
|
||||||
|
|
||||||
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
|
import jakarta.servlet.http.HttpServletResponse;
|
||||||
import net.maku.framework.common.exception.ErrorCode;
|
import net.maku.framework.common.exception.ErrorCode;
|
||||||
import net.maku.framework.common.utils.HttpContextUtils;
|
import net.maku.framework.common.utils.HttpContextUtils;
|
||||||
import net.maku.framework.common.utils.JsonUtils;
|
import net.maku.framework.common.utils.JsonUtils;
|
||||||
|
|
@ -7,8 +9,6 @@ import net.maku.framework.common.utils.Result;
|
||||||
import org.springframework.security.core.AuthenticationException;
|
import org.springframework.security.core.AuthenticationException;
|
||||||
import org.springframework.security.web.AuthenticationEntryPoint;
|
import org.springframework.security.web.AuthenticationEntryPoint;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,9 @@
|
||||||
package net.maku.framework.security.filter;
|
package net.maku.framework.security.filter;
|
||||||
|
|
||||||
|
import jakarta.servlet.FilterChain;
|
||||||
|
import jakarta.servlet.ServletException;
|
||||||
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
|
import jakarta.servlet.http.HttpServletResponse;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import net.maku.framework.security.cache.TokenStoreCache;
|
import net.maku.framework.security.cache.TokenStoreCache;
|
||||||
import net.maku.framework.security.user.UserDetail;
|
import net.maku.framework.security.user.UserDetail;
|
||||||
|
|
@ -12,10 +16,6 @@ import org.springframework.security.core.context.SecurityContextHolder;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
import org.springframework.web.filter.OncePerRequestFilter;
|
import org.springframework.web.filter.OncePerRequestFilter;
|
||||||
|
|
||||||
import javax.servlet.FilterChain;
|
|
||||||
import javax.servlet.ServletException;
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,8 @@
|
||||||
package net.maku.framework.security.utils;
|
package net.maku.framework.security.utils;
|
||||||
|
|
||||||
import cn.hutool.core.lang.UUID;
|
import cn.hutool.core.lang.UUID;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Token 工具类
|
* Token 工具类
|
||||||
|
|
@ -24,7 +23,7 @@ public class TokenUtils {
|
||||||
*/
|
*/
|
||||||
public static String getAccessToken(HttpServletRequest request) {
|
public static String getAccessToken(HttpServletRequest request) {
|
||||||
String accessToken = request.getHeader("Authorization");
|
String accessToken = request.getHeader("Authorization");
|
||||||
if (StringUtils.isBlank(accessToken)) {
|
if (StrUtil.isBlank(accessToken)) {
|
||||||
accessToken = request.getParameter("access_token");
|
accessToken = request.getParameter("access_token");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -41,14 +41,15 @@
|
||||||
<version>${revision}</version>
|
<version>${revision}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.github.xiaoymin</groupId>
|
|
||||||
<artifactId>knife4j-openapi3-spring-boot-starter</artifactId>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-test</artifactId>
|
<artifactId>spring-boot-starter-test</artifactId>
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<artifactId>okio</artifactId>
|
||||||
|
<groupId>com.squareup.okio</groupId>
|
||||||
|
<version>3.3.0</version>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
spring:
|
spring:
|
||||||
|
data:
|
||||||
redis:
|
redis:
|
||||||
database: 1
|
database: 1
|
||||||
host: localhost
|
host: localhost
|
||||||
|
|
@ -30,26 +31,3 @@ spring:
|
||||||
max-lifetime: 1800000 # 连接的生命时长(毫秒),超时而且没被使用则被释放(retired),默认: 30 分钟
|
max-lifetime: 1800000 # 连接的生命时长(毫秒),超时而且没被使用则被释放(retired),默认: 30 分钟
|
||||||
connection-test-query: SELECT 1
|
connection-test-query: SELECT 1
|
||||||
pool-name: MakuHikariCP
|
pool-name: MakuHikariCP
|
||||||
|
|
||||||
|
|
||||||
--- ############ 监控相关配置
|
|
||||||
|
|
||||||
# Actuator 配置
|
|
||||||
management:
|
|
||||||
endpoints:
|
|
||||||
web:
|
|
||||||
base-path: /actuator
|
|
||||||
exposure:
|
|
||||||
include: '*'
|
|
||||||
|
|
||||||
# Spring Boot Admin 配置
|
|
||||||
spring:
|
|
||||||
boot:
|
|
||||||
admin:
|
|
||||||
# Spring Boot Admin Server 服务端地址
|
|
||||||
context-path: /monitor/admin
|
|
||||||
client:
|
|
||||||
# 指定 Spring Boot Admin Server 服务端地址
|
|
||||||
url: http://127.0.0.1:${server.port}/${spring.boot.admin.context-path}
|
|
||||||
instance:
|
|
||||||
service-host-type: IP
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
spring:
|
spring:
|
||||||
|
data:
|
||||||
redis:
|
redis:
|
||||||
database: 1
|
database: 1
|
||||||
host: localhost
|
host: localhost
|
||||||
|
|
@ -20,26 +21,3 @@ spring:
|
||||||
max-lifetime: 1800000 # 连接的生命时长(毫秒),超时而且没被使用则被释放(retired),默认: 30 分钟
|
max-lifetime: 1800000 # 连接的生命时长(毫秒),超时而且没被使用则被释放(retired),默认: 30 分钟
|
||||||
connection-test-query: SELECT 1
|
connection-test-query: SELECT 1
|
||||||
pool-name: MakuHikariCP
|
pool-name: MakuHikariCP
|
||||||
|
|
||||||
|
|
||||||
--- ############ 监控相关配置
|
|
||||||
|
|
||||||
# Actuator 配置
|
|
||||||
management:
|
|
||||||
endpoints:
|
|
||||||
web:
|
|
||||||
base-path: /actuator
|
|
||||||
exposure:
|
|
||||||
include: '*'
|
|
||||||
|
|
||||||
# Spring Boot Admin 配置
|
|
||||||
spring:
|
|
||||||
boot:
|
|
||||||
admin:
|
|
||||||
# Spring Boot Admin Server 服务端地址
|
|
||||||
context-path: /monitor/admin
|
|
||||||
client:
|
|
||||||
# 指定 Spring Boot Admin Server 服务端地址
|
|
||||||
url: http://127.0.0.1:${server.port}/${spring.boot.admin.context-path}
|
|
||||||
instance:
|
|
||||||
service-host-type: IP
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
spring:
|
spring:
|
||||||
|
data:
|
||||||
redis:
|
redis:
|
||||||
database: 1
|
database: 1
|
||||||
host: localhost
|
host: localhost
|
||||||
|
|
@ -20,26 +21,3 @@ spring:
|
||||||
max-lifetime: 1800000 # 连接的生命时长(毫秒),超时而且没被使用则被释放(retired),默认: 30 分钟
|
max-lifetime: 1800000 # 连接的生命时长(毫秒),超时而且没被使用则被释放(retired),默认: 30 分钟
|
||||||
connection-test-query: SELECT 1
|
connection-test-query: SELECT 1
|
||||||
pool-name: MakuHikariCP
|
pool-name: MakuHikariCP
|
||||||
|
|
||||||
|
|
||||||
--- ############ 监控相关配置
|
|
||||||
|
|
||||||
# Actuator 配置
|
|
||||||
management:
|
|
||||||
endpoints:
|
|
||||||
web:
|
|
||||||
base-path: /actuator
|
|
||||||
exposure:
|
|
||||||
include: '*'
|
|
||||||
|
|
||||||
# Spring Boot Admin 配置
|
|
||||||
spring:
|
|
||||||
boot:
|
|
||||||
admin:
|
|
||||||
# Spring Boot Admin Server 服务端地址
|
|
||||||
context-path: /monitor/admin
|
|
||||||
client:
|
|
||||||
# 指定 Spring Boot Admin Server 服务端地址
|
|
||||||
url: http://127.0.0.1:${server.port}/${spring.boot.admin.context-path}
|
|
||||||
instance:
|
|
||||||
service-host-type: IP
|
|
||||||
|
|
@ -14,10 +14,6 @@
|
||||||
|
|
||||||
<!--输出到控制台-->
|
<!--输出到控制台-->
|
||||||
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
|
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
|
||||||
<!--此日志appender是为开发使用,只配置最低级别,控制台输出的日志级别是大于或等于此级别的日志信息-->
|
|
||||||
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
|
|
||||||
<level>debug</level>
|
|
||||||
</filter>
|
|
||||||
<encoder>
|
<encoder>
|
||||||
<Pattern>${CONSOLE_LOG_PATTERN}</Pattern>
|
<Pattern>${CONSOLE_LOG_PATTERN}</Pattern>
|
||||||
<charset>UTF-8</charset>
|
<charset>UTF-8</charset>
|
||||||
|
|
@ -33,15 +29,11 @@
|
||||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
|
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
|
||||||
<charset>UTF-8</charset>
|
<charset>UTF-8</charset>
|
||||||
</encoder>
|
</encoder>
|
||||||
<!-- 日志记录器的滚动策略,按日期,按大小记录 -->
|
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
|
||||||
<!-- 日志归档 -->
|
|
||||||
<fileNamePattern>${logging.path}/debug-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
|
<fileNamePattern>${logging.path}/debug-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
|
||||||
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
|
|
||||||
<maxFileSize>100MB</maxFileSize>
|
<maxFileSize>100MB</maxFileSize>
|
||||||
</timeBasedFileNamingAndTriggeringPolicy>
|
<maxHistory>60</maxHistory>
|
||||||
<!--日志文档保留天数-->
|
<totalSizeCap>20GB</totalSizeCap>
|
||||||
<maxHistory>30</maxHistory>
|
|
||||||
</rollingPolicy>
|
</rollingPolicy>
|
||||||
<!-- 此日志文档只记录debug级别的 -->
|
<!-- 此日志文档只记录debug级别的 -->
|
||||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||||
|
|
@ -57,12 +49,11 @@
|
||||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
|
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
|
||||||
<charset>UTF-8</charset>
|
<charset>UTF-8</charset>
|
||||||
</encoder>
|
</encoder>
|
||||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||||
<fileNamePattern>${logging.path}/info-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
|
<fileNamePattern>${logging.path}/info-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
|
||||||
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
|
|
||||||
<maxFileSize>100MB</maxFileSize>
|
<maxFileSize>100MB</maxFileSize>
|
||||||
</timeBasedFileNamingAndTriggeringPolicy>
|
<maxHistory>60</maxHistory>
|
||||||
<maxHistory>30</maxHistory>
|
<totalSizeCap>20GB</totalSizeCap>
|
||||||
</rollingPolicy>
|
</rollingPolicy>
|
||||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||||
<level>info</level>
|
<level>info</level>
|
||||||
|
|
@ -77,12 +68,11 @@
|
||||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
|
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
|
||||||
<charset>UTF-8</charset>
|
<charset>UTF-8</charset>
|
||||||
</encoder>
|
</encoder>
|
||||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||||
<fileNamePattern>${logging.path}/warn-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
|
<fileNamePattern>${logging.path}/warn-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
|
||||||
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
|
|
||||||
<maxFileSize>100MB</maxFileSize>
|
<maxFileSize>100MB</maxFileSize>
|
||||||
</timeBasedFileNamingAndTriggeringPolicy>
|
<maxHistory>60</maxHistory>
|
||||||
<maxHistory>30</maxHistory>
|
<totalSizeCap>20GB</totalSizeCap>
|
||||||
</rollingPolicy>
|
</rollingPolicy>
|
||||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||||
<level>warn</level>
|
<level>warn</level>
|
||||||
|
|
@ -97,12 +87,11 @@
|
||||||
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
|
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
|
||||||
<charset>UTF-8</charset>
|
<charset>UTF-8</charset>
|
||||||
</encoder>
|
</encoder>
|
||||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||||
<fileNamePattern>${logging.path}/error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
|
<fileNamePattern>${logging.path}/error-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
|
||||||
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
|
|
||||||
<maxFileSize>100MB</maxFileSize>
|
<maxFileSize>100MB</maxFileSize>
|
||||||
</timeBasedFileNamingAndTriggeringPolicy>
|
<maxHistory>60</maxHistory>
|
||||||
<maxHistory>30</maxHistory>
|
<totalSizeCap>20GB</totalSizeCap>
|
||||||
</rollingPolicy>
|
</rollingPolicy>
|
||||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||||
<level>ERROR</level>
|
<level>ERROR</level>
|
||||||
|
|
@ -111,22 +100,14 @@
|
||||||
</filter>
|
</filter>
|
||||||
</appender>
|
</appender>
|
||||||
|
|
||||||
<!-- 开发环境,控制台打印-->
|
|
||||||
<springProfile name="dev">
|
|
||||||
<logger name="net.maku" level="DEBUG" />
|
|
||||||
<root level="INFO">
|
<root level="INFO">
|
||||||
<appender-ref ref="CONSOLE" />
|
<appender-ref ref="CONSOLE" />
|
||||||
</root>
|
|
||||||
</springProfile>
|
|
||||||
|
|
||||||
<!-- 测试、生产环境,输出到文档 -->
|
|
||||||
<springProfile name="test,prod">
|
|
||||||
<root level="info">
|
|
||||||
<appender-ref ref="CONSOLE" />
|
|
||||||
<appender-ref ref="DEBUG_FILE" />
|
<appender-ref ref="DEBUG_FILE" />
|
||||||
<appender-ref ref="INFO_FILE" />
|
<appender-ref ref="INFO_FILE" />
|
||||||
<appender-ref ref="WARN_FILE" />
|
<appender-ref ref="WARN_FILE" />
|
||||||
<appender-ref ref="ERROR_FILE" />
|
<appender-ref ref="ERROR_FILE" />
|
||||||
</root>
|
</root>
|
||||||
</springProfile>
|
|
||||||
|
<logger name="net.maku" level="DEBUG"/>
|
||||||
|
|
||||||
</configuration>
|
</configuration>
|
||||||
28
pom.xml
28
pom.xml
|
|
@ -13,7 +13,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-parent</artifactId>
|
<artifactId>spring-boot-starter-parent</artifactId>
|
||||||
<version>2.7.6</version>
|
<version>3.0.1</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<modules>
|
<modules>
|
||||||
|
|
@ -30,23 +30,22 @@
|
||||||
<skipTests>true</skipTests>
|
<skipTests>true</skipTests>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||||
<java.version>1.8</java.version>
|
<java.version>17</java.version>
|
||||||
<mybatisplus.version>3.5.2</mybatisplus.version>
|
<mybatisplus.version>3.5.3</mybatisplus.version>
|
||||||
<dameng.version>8.1.2.79</dameng.version>
|
<dameng.version>8.1.2.79</dameng.version>
|
||||||
<knife4j.version>4.0.0</knife4j.version>
|
<knife4j.version>4.0.0</knife4j.version>
|
||||||
<springdoc.version>1.6.9</springdoc.version>
|
<hutool.version>5.8.11</hutool.version>
|
||||||
<hutool.version>5.7.22</hutool.version>
|
|
||||||
<captcha.version>1.6.2</captcha.version>
|
<captcha.version>1.6.2</captcha.version>
|
||||||
<mapstruct.version>1.4.2.Final</mapstruct.version>
|
<mapstruct.version>1.4.2.Final</mapstruct.version>
|
||||||
<aliyun.oss.version>3.8.0</aliyun.oss.version>
|
<aliyun.oss.version>3.15.2</aliyun.oss.version>
|
||||||
<aliyun.dysmsapi.version>2.0.18</aliyun.dysmsapi.version>
|
<aliyun.dysmsapi.version>2.0.23</aliyun.dysmsapi.version>
|
||||||
<tencentcloud.sdk.version>3.1.574</tencentcloud.sdk.version>
|
<tencentcloud.sdk.version>3.1.574</tencentcloud.sdk.version>
|
||||||
<qiniu.version>7.11.0</qiniu.version>
|
<qiniu.version>7.12.1</qiniu.version>
|
||||||
<minio.version>8.4.3</minio.version>
|
<minio.version>8.5.1</minio.version>
|
||||||
<qcloud.cos.version>5.6.89</qcloud.cos.version>
|
<qcloud.cos.version>5.6.97</qcloud.cos.version>
|
||||||
<huaweicloud.obs.version>3.22.3</huaweicloud.obs.version>
|
<huaweicloud.obs.version>3.22.3</huaweicloud.obs.version>
|
||||||
<easyexcel.version>3.1.1</easyexcel.version>
|
<easyexcel.version>3.1.1</easyexcel.version>
|
||||||
<easytrans.version>2.0.12</easytrans.version>
|
<easytrans.version>2.1.6</easytrans.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
|
|
@ -83,15 +82,10 @@
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.github.xiaoymin</groupId>
|
<groupId>com.github.xiaoymin</groupId>
|
||||||
<artifactId>knife4j-openapi3-spring-boot-starter</artifactId>
|
<artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
|
||||||
<version>${knife4j.version}</version>
|
<version>${knife4j.version}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springdoc</groupId>
|
|
||||||
<artifactId>springdoc-openapi-ui</artifactId>
|
|
||||||
<version>${springdoc.version}</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>cn.hutool</groupId>
|
<groupId>cn.hutool</groupId>
|
||||||
<artifactId>hutool-all</artifactId>
|
<artifactId>hutool-all</artifactId>
|
||||||
<version>${hutool.version}</version>
|
<version>${hutool.version}</version>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user