feat: 发布2.0版本,针对未来扩展
This commit is contained in:
parent
1670aed4cd
commit
274febda39
@ -12,8 +12,8 @@
|
||||
<artifactId>flyfish-approval</artifactId>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
|
@ -17,8 +17,8 @@ import com.flyfish.framework.domain.po.User;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.validation.Valid;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.validation.Valid;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -2,8 +2,8 @@ package com.flyfish.framework.approval.domain.submit;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -3,8 +3,8 @@ package com.flyfish.framework.approval.domain.todo;
|
||||
import com.flyfish.framework.approval.enums.ApproveAction;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 审批dto
|
||||
|
@ -19,7 +19,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
import java.util.stream.Collectors;
|
||||
|
@ -12,8 +12,8 @@
|
||||
<artifactId>flyfish-backup</artifactId>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
|
@ -9,7 +9,7 @@ import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
|
||||
/**
|
||||
* 备份controller
|
||||
|
@ -1,11 +1,11 @@
|
||||
package com.flyfish.framework.backup.scheduler;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.flyfish.framework.backup.domain.Backup;
|
||||
import com.flyfish.framework.context.DateContext;
|
||||
import com.flyfish.framework.domain.base.DomainService;
|
||||
import com.flyfish.framework.query.Query;
|
||||
import com.flyfish.framework.repository.ReactiveEntityOperations;
|
||||
import com.flyfish.framework.utils.JacksonUtil;
|
||||
import lombok.SneakyThrows;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@ -95,7 +95,7 @@ public class BackupScheduler {
|
||||
.thenMany(Flux.fromIterable(this.collections))
|
||||
.flatMap(info -> operations
|
||||
.findAll(Query.empty(), CastUtils.cast(info)).collectList()
|
||||
.map(list -> new BackupIndex.BackupContent(info.getJavaType().getSimpleName(), JSON.toJSONBytes(list)))
|
||||
.map(list -> new BackupIndex.BackupContent(info.getJavaType().getSimpleName(), JacksonUtil.toBytes(list)))
|
||||
)
|
||||
.flatMap(content -> writeContents(content, parent))
|
||||
.collectList()
|
||||
@ -113,7 +113,7 @@ public class BackupScheduler {
|
||||
return item;
|
||||
}).collect(Collectors.toList()));
|
||||
// 写入备份结果
|
||||
return write(JSON.toJSONBytes(index), parent + "/meta.json");
|
||||
return write(JacksonUtil.toBytes(index), parent + "/meta.json");
|
||||
})
|
||||
.then(Mono.defer(() -> {
|
||||
backup.setLog("成功备份");
|
||||
|
@ -47,13 +47,17 @@
|
||||
<groupId>com.fasterxml.jackson.core</groupId>
|
||||
<artifactId>jackson-databind</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.jackson.datatype</groupId>
|
||||
<artifactId>jackson-datatype-jsr310</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.projectreactor</groupId>
|
||||
<artifactId>reactor-core</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.validation</groupId>
|
||||
<artifactId>validation-api</artifactId>
|
||||
<groupId>jakarta.validation</groupId>
|
||||
<artifactId>jakarta.validation-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
|
@ -0,0 +1,11 @@
|
||||
package com.flyfish.framework.bean;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
/**
|
||||
* 对象map
|
||||
*
|
||||
* @author wangyu
|
||||
*/
|
||||
public class ObjectMap extends HashMap<String, Object> {
|
||||
}
|
@ -1,20 +1,17 @@
|
||||
package com.flyfish.framework.utils;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||
import com.fasterxml.jackson.core.JsonGenerator;
|
||||
import com.fasterxml.jackson.core.JsonParser;
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import com.fasterxml.jackson.databind.DeserializationFeature;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.fasterxml.jackson.databind.SerializationFeature;
|
||||
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* Jackson序列化工具类
|
||||
@ -59,8 +56,8 @@ public final class JacksonUtil {
|
||||
mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
|
||||
// JsonGenerator.Feature for configuring low-level JSON generation:
|
||||
|
||||
// to force escaping of non-ASCII characters:
|
||||
mapper.configure(JsonGenerator.Feature.ESCAPE_NON_ASCII, true);
|
||||
mapper.setLocale(Locale.CHINESE);
|
||||
mapper.registerModule(new JavaTimeModule());
|
||||
}
|
||||
|
||||
public static <T> T fromJson(final String json) {
|
||||
@ -119,6 +116,24 @@ public final class JacksonUtil {
|
||||
return Optional.empty();
|
||||
}
|
||||
|
||||
public static String toPrettyJson(final Object obj) {
|
||||
try {
|
||||
return mapper.writerWithDefaultPrettyPrinter().writeValueAsString(obj);
|
||||
} catch (JsonProcessingException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static byte[] toBytes(final Object obj) {
|
||||
try {
|
||||
return mapper.writeValueAsBytes(obj);
|
||||
} catch (JsonProcessingException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
private static <T> T readValue(String json, TypeReference<T> valueTypeRef) {
|
||||
if (null == json || "".equals(json)) {
|
||||
return null;
|
||||
|
@ -2,8 +2,8 @@ package com.flyfish.framework.validation.annotations;
|
||||
|
||||
import com.flyfish.framework.validation.validators.ContainsBeanValidator;
|
||||
|
||||
import javax.validation.Constraint;
|
||||
import javax.validation.Payload;
|
||||
import jakarta.validation.Constraint;
|
||||
import jakarta.validation.Payload;
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.Target;
|
||||
|
@ -3,8 +3,8 @@ package com.flyfish.framework.validation.annotations;
|
||||
import com.flyfish.framework.validation.validators.IdCardValidator;
|
||||
import com.flyfish.framework.validation.validators.MoneyValidator;
|
||||
|
||||
import javax.validation.Constraint;
|
||||
import javax.validation.Payload;
|
||||
import jakarta.validation.Constraint;
|
||||
import jakarta.validation.Payload;
|
||||
import com.flyfish.framework.validation.annotations.IdCard.List;
|
||||
|
||||
import java.lang.annotation.Documented;
|
||||
|
@ -2,8 +2,8 @@ package com.flyfish.framework.validation.annotations;
|
||||
|
||||
import com.flyfish.framework.validation.validators.IsJSONStringValidator;
|
||||
|
||||
import javax.validation.Constraint;
|
||||
import javax.validation.Payload;
|
||||
import jakarta.validation.Constraint;
|
||||
import jakarta.validation.Payload;
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.Target;
|
||||
|
@ -3,8 +3,8 @@ package com.flyfish.framework.validation.annotations;
|
||||
import com.flyfish.framework.validation.annotations.Money.List;
|
||||
import com.flyfish.framework.validation.validators.MoneyValidator;
|
||||
|
||||
import javax.validation.Constraint;
|
||||
import javax.validation.Payload;
|
||||
import jakarta.validation.Constraint;
|
||||
import jakarta.validation.Payload;
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.Repeatable;
|
||||
import java.lang.annotation.Retention;
|
||||
|
@ -4,8 +4,8 @@ import com.flyfish.framework.validation.annotations.Password.List;
|
||||
import com.flyfish.framework.validation.validators.IdCardValidator;
|
||||
import com.flyfish.framework.validation.validators.PasswordValidator;
|
||||
|
||||
import javax.validation.Constraint;
|
||||
import javax.validation.Payload;
|
||||
import jakarta.validation.Constraint;
|
||||
import jakarta.validation.Payload;
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.Repeatable;
|
||||
import java.lang.annotation.Retention;
|
||||
|
@ -3,8 +3,8 @@ package com.flyfish.framework.validation.annotations;
|
||||
import com.flyfish.framework.validation.enums.PhoneType;
|
||||
import com.flyfish.framework.validation.validators.PhoneValidator;
|
||||
|
||||
import javax.validation.Constraint;
|
||||
import javax.validation.Payload;
|
||||
import jakarta.validation.Constraint;
|
||||
import jakarta.validation.Payload;
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.Target;
|
||||
|
@ -3,8 +3,8 @@ package com.flyfish.framework.validation.annotations;
|
||||
import com.flyfish.framework.validation.annotations.UniqueField.List;
|
||||
import com.flyfish.framework.validation.validators.UniqueFieldValidator;
|
||||
|
||||
import javax.validation.Constraint;
|
||||
import javax.validation.Payload;
|
||||
import jakarta.validation.Constraint;
|
||||
import jakarta.validation.Payload;
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.Repeatable;
|
||||
import java.lang.annotation.Retention;
|
||||
|
@ -1,6 +1,6 @@
|
||||
package com.flyfish.framework.validation.spi;
|
||||
|
||||
import javax.validation.groups.Default;
|
||||
import jakarta.validation.groups.Default;
|
||||
|
||||
/**
|
||||
* 条件化的验证分组
|
||||
|
@ -4,8 +4,8 @@ import com.flyfish.framework.context.SpringContext;
|
||||
import com.flyfish.framework.validation.annotations.ContainsBean;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import javax.validation.ConstraintValidator;
|
||||
import javax.validation.ConstraintValidatorContext;
|
||||
import jakarta.validation.ConstraintValidator;
|
||||
import jakarta.validation.ConstraintValidatorContext;
|
||||
|
||||
/**
|
||||
* 包含在ioc容器的bean
|
||||
|
@ -2,8 +2,8 @@ package com.flyfish.framework.validation.validators;
|
||||
|
||||
import com.flyfish.framework.validation.annotations.IdCard;
|
||||
|
||||
import javax.validation.ConstraintValidator;
|
||||
import javax.validation.ConstraintValidatorContext;
|
||||
import jakarta.validation.ConstraintValidator;
|
||||
import jakarta.validation.ConstraintValidatorContext;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
/**
|
||||
|
@ -3,8 +3,8 @@ package com.flyfish.framework.validation.validators;
|
||||
import com.flyfish.framework.validation.annotations.IsJSONString;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import javax.validation.ConstraintValidator;
|
||||
import javax.validation.ConstraintValidatorContext;
|
||||
import jakarta.validation.ConstraintValidator;
|
||||
import jakarta.validation.ConstraintValidatorContext;
|
||||
|
||||
/**
|
||||
* 是否是jsonString
|
||||
|
@ -2,8 +2,8 @@ package com.flyfish.framework.validation.validators;
|
||||
|
||||
import com.flyfish.framework.validation.annotations.Money;
|
||||
|
||||
import javax.validation.ConstraintValidator;
|
||||
import javax.validation.ConstraintValidatorContext;
|
||||
import jakarta.validation.ConstraintValidator;
|
||||
import jakarta.validation.ConstraintValidatorContext;
|
||||
|
||||
/**
|
||||
* 金额验证器
|
||||
|
@ -3,8 +3,8 @@ package com.flyfish.framework.validation.validators;
|
||||
import com.flyfish.framework.constant.Frameworks;
|
||||
import com.flyfish.framework.validation.annotations.Password;
|
||||
|
||||
import javax.validation.ConstraintValidator;
|
||||
import javax.validation.ConstraintValidatorContext;
|
||||
import jakarta.validation.ConstraintValidator;
|
||||
import jakarta.validation.ConstraintValidatorContext;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
/**
|
||||
|
@ -3,8 +3,8 @@ package com.flyfish.framework.validation.validators;
|
||||
import com.flyfish.framework.validation.annotations.Phone;
|
||||
import com.flyfish.framework.validation.enums.PhoneType;
|
||||
|
||||
import javax.validation.ConstraintValidator;
|
||||
import javax.validation.ConstraintValidatorContext;
|
||||
import jakarta.validation.ConstraintValidator;
|
||||
import jakarta.validation.ConstraintValidatorContext;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
/**
|
||||
|
@ -6,8 +6,8 @@ import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.ClassUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
|
||||
import javax.validation.ConstraintValidator;
|
||||
import javax.validation.ConstraintValidatorContext;
|
||||
import jakarta.validation.ConstraintValidator;
|
||||
import jakarta.validation.ConstraintValidatorContext;
|
||||
import java.beans.PropertyDescriptor;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.util.Collection;
|
||||
|
@ -12,8 +12,8 @@
|
||||
<artifactId>flyfish-data-common</artifactId>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
@ -40,7 +40,7 @@
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.github.ulisesbocchio</groupId>
|
||||
<groupId>io.springboot.plugin</groupId>
|
||||
<artifactId>jasypt-spring-boot-starter</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
@ -12,8 +12,8 @@
|
||||
<artifactId>flyfish-data-domain</artifactId>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
|
@ -11,7 +11,7 @@ import org.springframework.data.annotation.Id;
|
||||
import org.springframework.data.annotation.Transient;
|
||||
import org.springframework.data.mongodb.core.index.Indexed;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import java.io.Serializable;
|
||||
|
||||
@Getter
|
||||
|
@ -12,8 +12,8 @@
|
||||
<artifactId>flyfish-data-mongodb</artifactId>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
|
@ -12,7 +12,7 @@ import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.test.context.junit.jupiter.SpringExtension;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
|
||||
@ExtendWith(SpringExtension.class)
|
||||
@SpringBootTest(classes = MongoRepositoryTest.class)
|
||||
|
@ -12,8 +12,8 @@
|
||||
<artifactId>flyfish-data-r2dbc</artifactId>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
|
@ -1,12 +1,12 @@
|
||||
package com.flyfish.framework.r2dbc;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.serializer.SerializerFeature;
|
||||
import com.flyfish.framework.r2dbc.config.R2dbcDataConfig;
|
||||
import com.flyfish.framework.r2dbc.domain.TestDO;
|
||||
import com.flyfish.framework.r2dbc.domain.TestQO;
|
||||
import com.flyfish.framework.r2dbc.repository.TestAssoRepository;
|
||||
import com.flyfish.framework.r2dbc.repository.TestRepository;
|
||||
import com.flyfish.framework.utils.JacksonUtil;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.ExtendWith;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@ -15,7 +15,6 @@ import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.test.context.junit.jupiter.SpringExtension;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
@ExtendWith(SpringExtension.class)
|
||||
@ -43,12 +42,12 @@ public class R2DbcRepositoryTest {
|
||||
test.setOtherId("1");
|
||||
|
||||
// 打印插入结果
|
||||
System.out.println(JSON.toJSONString(testRepository.insert(test).block(), SerializerFeature.PrettyFormat));
|
||||
System.out.println(JacksonUtil.toPrettyJson(testRepository.insert(test).block()));
|
||||
List<TestDO> all = testRepository.findAll(qo).collectList().block();
|
||||
System.out.println(JSON.toJSONString(all, SerializerFeature.PrettyFormat));
|
||||
System.out.println(JacksonUtil.toPrettyJson(all));
|
||||
// 修改值并保存测试
|
||||
all.get(0).getAsso().setName("修改后的值");
|
||||
System.out.println(JSON.toJSONString(testRepository.saveAll(all).collectList().block(), SerializerFeature.PrettyFormat));
|
||||
System.out.println(JSON.toJSONString(testAssoRepository.findById("1").block(), SerializerFeature.PrettyFormat));
|
||||
System.out.println(JacksonUtil.toPrettyJson(testRepository.saveAll(all).collectList().block()));
|
||||
System.out.println(JacksonUtil.toPrettyJson(testAssoRepository.findById("1").block()));
|
||||
}
|
||||
}
|
||||
|
@ -12,8 +12,8 @@
|
||||
<artifactId>flyfish-data-relational</artifactId>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
</properties>
|
||||
|
||||
|
@ -13,8 +13,8 @@
|
||||
<description>字典框架,集成字典解析,注解,服务,可自动注册和利用枚举反向注册</description>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
|
@ -8,7 +8,7 @@ import com.flyfish.framework.utils.ReactiveRedisOperations;
|
||||
import org.springframework.stereotype.Service;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
|
||||
/**
|
||||
* 字典表服务
|
||||
|
@ -12,8 +12,8 @@
|
||||
<artifactId>flyfish-file</artifactId>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
|
@ -17,7 +17,7 @@ import org.springframework.web.bind.annotation.RequestPart;
|
||||
import reactor.core.publisher.Flux;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
@ -13,7 +13,7 @@ import org.springframework.web.bind.annotation.*;
|
||||
import reactor.core.publisher.Flux;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
@ -9,7 +9,7 @@ import org.springframework.http.codec.multipart.FilePart;
|
||||
import org.springframework.stereotype.Service;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
|
||||
@Service
|
||||
public class AttachmentService extends BaseReactiveServiceImpl<Attachment> {
|
||||
|
@ -8,7 +8,7 @@ import org.springframework.http.codec.multipart.FilePart;
|
||||
import org.springframework.stereotype.Service;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
@ -12,7 +12,7 @@ import org.springframework.http.codec.multipart.FilePart;
|
||||
import org.springframework.stereotype.Service;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
import java.io.IOException;
|
||||
|
||||
/**
|
||||
|
@ -12,8 +12,8 @@
|
||||
<artifactId>flyfish-form</artifactId>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
|
@ -1,6 +1,6 @@
|
||||
package com.flyfish.framework.form.domain;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.flyfish.framework.bean.ObjectMap;
|
||||
import com.flyfish.framework.domain.base.Domain;
|
||||
import lombok.Data;
|
||||
import org.springframework.data.mongodb.core.index.CompoundIndex;
|
||||
@ -8,7 +8,9 @@ import org.springframework.data.mongodb.core.mapping.Document;
|
||||
import org.springframework.data.relational.core.mapping.Table;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 在线表单
|
||||
@ -35,7 +37,7 @@ public class OnlineForm extends Domain {
|
||||
private Integer width;
|
||||
|
||||
// 默认布局
|
||||
private JSONObject layout = new JSONObject();
|
||||
private Map<String, Object> layout = new HashMap<>();
|
||||
|
||||
@Data
|
||||
public static class FormItem {
|
||||
@ -51,25 +53,25 @@ public class OnlineForm extends Domain {
|
||||
// 栅格偏移,布局需要
|
||||
private Integer offset = 0;
|
||||
// 栅格布局
|
||||
private JSONObject grid = new JSONObject();
|
||||
private ObjectMap grid = new ObjectMap();
|
||||
// 儿子,手动指定儿子们
|
||||
private String children;
|
||||
// 条件,用于匹配条件以显示与否
|
||||
private JSONObject condition;
|
||||
private ObjectMap condition;
|
||||
// 校验规则,允许多个
|
||||
private List<JSONObject> validation;
|
||||
private List<ObjectMap> validation;
|
||||
// 选项,用于表单的额外选项,支持antd vue的所有逻辑
|
||||
private JSONObject options = new JSONObject();
|
||||
private ObjectMap options = new ObjectMap();
|
||||
// 组件属性,支持对象
|
||||
private JSONObject props;
|
||||
private ObjectMap props;
|
||||
// 表单联动,key为表单组件的属性,包含两种模式,condition是激活条件,value是激活的值
|
||||
private JSONObject links;
|
||||
private ObjectMap links;
|
||||
// 事件支持
|
||||
private JSONObject events;
|
||||
private ObjectMap events;
|
||||
// 映射支持
|
||||
private JSONObject mapping;
|
||||
private ObjectMap mapping;
|
||||
// 异步的props
|
||||
private JSONObject delay;
|
||||
private ObjectMap delay;
|
||||
// 分组
|
||||
private String group;
|
||||
// 新增,增加反馈状态
|
||||
|
@ -13,8 +13,8 @@
|
||||
<description>日志模块</description>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
|
@ -1,16 +1,16 @@
|
||||
package com.flyfish.framework.logging.service;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.flyfish.framework.context.DateContext;
|
||||
import com.flyfish.framework.logging.config.LoggingTextRegistry;
|
||||
import com.flyfish.framework.logging.domain.Log;
|
||||
import com.flyfish.framework.logging.domain.LogType;
|
||||
import com.flyfish.framework.utils.JacksonUtil;
|
||||
import jakarta.annotation.Resource;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.ArrayUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.DisposableBean;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Optional;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Executors;
|
||||
@ -41,14 +41,14 @@ public class LogManager implements DisposableBean {
|
||||
Log log = new Log();
|
||||
log.setType(LogType.OPERATION);
|
||||
log.setSuccess(context.isSuccess());
|
||||
log.setBody(bodyString(context.getArgs()));
|
||||
bodyString(context.getArgs()).ifPresent(log::setBody);
|
||||
log.setModule(context.getModule());
|
||||
log.setBusiness(Optional.ofNullable(context.getBusiness())
|
||||
.filter(StringUtils::isNotBlank)
|
||||
.map(registry::text)
|
||||
.orElse(context.getBusiness()));
|
||||
log.setError(Optional.ofNullable(context.getError()).map(JSON::toJSONString).orElse(null));
|
||||
log.setResponse(Optional.ofNullable(context.getResult()).map(JSON::toJSONString).orElse(null));
|
||||
log.setError(Optional.ofNullable(context.getError()).flatMap(JacksonUtil::toJson).orElse(null));
|
||||
log.setResponse(Optional.ofNullable(context.getResult()).flatMap(JacksonUtil::toJson).orElse(null));
|
||||
log.setOperator(context.getUser());
|
||||
log.setSignature(context.getSignature());
|
||||
log.setPeriod(context.getEndTime() - context.getStartTime());
|
||||
@ -61,14 +61,14 @@ public class LogManager implements DisposableBean {
|
||||
});
|
||||
}
|
||||
|
||||
private String bodyString(Object[] args) {
|
||||
private Optional<String> bodyString(Object[] args) {
|
||||
if (ArrayUtils.isEmpty(args)) {
|
||||
return null;
|
||||
return Optional.empty();
|
||||
}
|
||||
if (args.length == 1) {
|
||||
return JSON.toJSONString(args[0]);
|
||||
return JacksonUtil.toJson(args[0]);
|
||||
}
|
||||
return JSON.toJSONString(args);
|
||||
return JacksonUtil.toJson(args);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -13,7 +13,7 @@ import org.springframework.security.core.userdetails.UserDetails;
|
||||
import org.springframework.stereotype.Service;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Optional;
|
||||
|
||||
|
@ -13,8 +13,8 @@
|
||||
<description>flyfish用户中心模块,提供缺省的用户体系,按需添加</description>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
@ -38,8 +38,8 @@
|
||||
<version>${revision}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.dingxiang-inc</groupId>
|
||||
<artifactId>ctu-client-sdk</artifactId>
|
||||
<groupId>io.springboot.plugin</groupId>
|
||||
<artifactId>spring-boot-starter-captcha</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
|
@ -13,7 +13,7 @@ import org.springframework.security.core.userdetails.UserDetails;
|
||||
import org.springframework.security.web.server.WebFilterExchange;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
|
@ -1,21 +1,21 @@
|
||||
package com.flyfish.framework.user.config;
|
||||
|
||||
import com.flyfish.framework.user.config.captcha.DxCaptchaValidator;
|
||||
import com.flyfish.framework.user.config.converter.EncryptedAuthenticationConverter;
|
||||
import com.flyfish.framework.user.config.properties.SecurityProperties;
|
||||
import com.flyfish.framework.configuration.jwt.JwtProperties;
|
||||
import com.flyfish.framework.configuration.jwt.JwtSecurityContextRepository;
|
||||
import com.flyfish.framework.configuration.jwt.TokenProvider;
|
||||
import com.flyfish.framework.user.domain.UserQo;
|
||||
import com.flyfish.framework.domain.po.User;
|
||||
import com.flyfish.framework.enums.UserStatus;
|
||||
import com.flyfish.framework.enums.UserType;
|
||||
import com.flyfish.framework.handler.JsonAuthenticationFailureHandler;
|
||||
import com.flyfish.framework.handler.JsonAuthenticationSuccessHandler;
|
||||
import com.flyfish.framework.handler.JsonLogoutSuccessHandler;
|
||||
import com.flyfish.framework.user.initializer.UserInitializer;
|
||||
import com.flyfish.framework.service.AuthenticationAuditor;
|
||||
import com.flyfish.framework.service.AuthenticationLogger;
|
||||
import com.flyfish.framework.user.config.captcha.CaptchaValidator;
|
||||
import com.flyfish.framework.user.config.converter.EncryptedAuthenticationConverter;
|
||||
import com.flyfish.framework.user.config.properties.SecurityProperties;
|
||||
import com.flyfish.framework.user.domain.UserQo;
|
||||
import com.flyfish.framework.user.initializer.UserInitializer;
|
||||
import com.flyfish.framework.user.service.UserService;
|
||||
import org.apache.commons.lang3.ArrayUtils;
|
||||
import org.springframework.beans.factory.ObjectProvider;
|
||||
@ -158,7 +158,7 @@ public class WebSecurityConfig {
|
||||
|
||||
@Bean
|
||||
public ServerAuthenticationConverter encryptedAuthenticateConverter(SecurityProperties securityProperties,
|
||||
ObjectProvider<DxCaptchaValidator> validator) {
|
||||
ObjectProvider<CaptchaValidator> validator) {
|
||||
return new EncryptedAuthenticationConverter(securityProperties, validator);
|
||||
}
|
||||
|
||||
@ -213,15 +213,4 @@ public class WebSecurityConfig {
|
||||
authenticationFilter.setSecurityContextRepository(contextRepository());
|
||||
return authenticationFilter;
|
||||
}
|
||||
|
||||
/**
|
||||
* 按需启用验证器
|
||||
*
|
||||
* @return 结果
|
||||
*/
|
||||
@Bean
|
||||
@ConditionalOnProperty(value = "security.captcha.enable", havingValue = "true")
|
||||
public DxCaptchaValidator dxCaptchaValidator(SecurityProperties properties) {
|
||||
return new DxCaptchaValidator(properties);
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,34 @@
|
||||
package com.flyfish.framework.user.config.captcha;
|
||||
|
||||
import com.anji.captcha.model.common.ResponseModel;
|
||||
import com.anji.captcha.model.vo.CaptchaVO;
|
||||
import com.anji.captcha.service.CaptchaService;
|
||||
import com.flyfish.framework.user.config.properties.SecurityProperties;
|
||||
import com.flyfish.framework.utils.Assert;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
public class AnjiCaptchaValidator implements CaptchaValidator {
|
||||
|
||||
private final SecurityProperties securityProperties;
|
||||
|
||||
private final CaptchaService captchaService;
|
||||
|
||||
/**
|
||||
* 进行验证,并抛出异常
|
||||
*
|
||||
* @param token 验证码认证token
|
||||
*/
|
||||
@Override
|
||||
public void verify(String token) {
|
||||
// 未启用,不拦截
|
||||
if (!securityProperties.getCaptcha().isEnable()) {
|
||||
return;
|
||||
}
|
||||
// 进行验证
|
||||
CaptchaVO captchaVO = new CaptchaVO();
|
||||
captchaVO.setCaptchaVerification(token);
|
||||
ResponseModel response = captchaService.verification(captchaVO);
|
||||
Assert.isTrue(response.isSuccess(), "请完成滑动验证!");
|
||||
}
|
||||
}
|
@ -0,0 +1,16 @@
|
||||
package com.flyfish.framework.user.config.captcha;
|
||||
|
||||
/**
|
||||
* 验证码验证器
|
||||
*
|
||||
* @author wangyu
|
||||
*/
|
||||
public interface CaptchaValidator {
|
||||
|
||||
/**
|
||||
* 进行验证,并抛出异常
|
||||
*
|
||||
* @param token 验证码认证token
|
||||
*/
|
||||
void verify(String token);
|
||||
}
|
@ -1,45 +0,0 @@
|
||||
package com.flyfish.framework.user.config.captcha;
|
||||
|
||||
import com.dingxianginc.ctu.client.CaptchaClient;
|
||||
import com.dingxianginc.ctu.client.model.CaptchaResponse;
|
||||
import com.flyfish.framework.user.config.properties.SecurityProperties;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.BooleanUtils;
|
||||
import org.springframework.security.authentication.BadCredentialsException;
|
||||
|
||||
/**
|
||||
* 顶象验证码验证器
|
||||
*
|
||||
* @author wangyu
|
||||
*/
|
||||
@Slf4j
|
||||
public class DxCaptchaValidator {
|
||||
|
||||
private final CaptchaClient captchaClient;
|
||||
|
||||
public DxCaptchaValidator(SecurityProperties securityProperties) {
|
||||
SecurityProperties.CaptchaProperties captchaProperties = securityProperties.getCaptcha();
|
||||
this.captchaClient = new CaptchaClient(captchaProperties.getAppId(), captchaProperties.getAppSecret());
|
||||
captchaClient.setCaptchaUrl("https://" + captchaProperties.getServer() + "/api/tokenVerify");
|
||||
}
|
||||
|
||||
/**
|
||||
* 执行验证码验证
|
||||
*
|
||||
* @param token 验证码
|
||||
* @return 结果
|
||||
*/
|
||||
public void verify(String token) {
|
||||
//指定服务器地址,saas可在控制台,应用管理页面最上方获取
|
||||
try {
|
||||
CaptchaResponse response = captchaClient.verifyToken(token);
|
||||
log.info(response.getCaptchaStatus());
|
||||
if (BooleanUtils.isNotTrue(response.getResult())) {
|
||||
throw new BadCredentialsException("验证码不正确!");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error("验证码验证失败!" + e.getMessage());
|
||||
throw new BadCredentialsException("验证码验证异常!");
|
||||
}
|
||||
}
|
||||
}
|
@ -1,9 +1,9 @@
|
||||
package com.flyfish.framework.user.config.converter;
|
||||
|
||||
import com.flyfish.framework.user.config.RSAKeys;
|
||||
import com.flyfish.framework.user.utils.RSAUtils;
|
||||
import com.flyfish.framework.user.config.captcha.DxCaptchaValidator;
|
||||
import com.flyfish.framework.user.config.captcha.CaptchaValidator;
|
||||
import com.flyfish.framework.user.config.properties.SecurityProperties;
|
||||
import com.flyfish.framework.user.utils.RSAUtils;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import lombok.val;
|
||||
@ -38,7 +38,7 @@ public class EncryptedAuthenticationConverter implements ServerAuthenticationCon
|
||||
|
||||
private final SecurityProperties securityProperties;
|
||||
|
||||
private final ObjectProvider<DxCaptchaValidator> validator;
|
||||
private final ObjectProvider<CaptchaValidator> validator;
|
||||
|
||||
@Override
|
||||
public Mono<Authentication> convert(ServerWebExchange exchange) {
|
||||
|
@ -23,6 +23,7 @@ public class SecurityProperties {
|
||||
|
||||
/**
|
||||
* 验证码属性
|
||||
*
|
||||
* @author wangyu
|
||||
*/
|
||||
@Data
|
||||
@ -30,14 +31,5 @@ public class SecurityProperties {
|
||||
|
||||
// 启用验证码
|
||||
private boolean enable;
|
||||
|
||||
// 顶象appid
|
||||
private String appId;
|
||||
|
||||
// 顶象appSecret
|
||||
private String appSecret;
|
||||
|
||||
// 服务器地址
|
||||
private String server;
|
||||
}
|
||||
}
|
||||
|
@ -10,7 +10,7 @@ import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.server.ServerWebExchange;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
|
||||
/**
|
||||
* 登录controller
|
||||
|
@ -19,8 +19,8 @@ import org.springframework.security.crypto.password.PasswordEncoder;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.validation.Valid;
|
||||
import jakarta.annotation.Resource;
|
||||
import jakarta.validation.Valid;
|
||||
import java.util.Optional;
|
||||
|
||||
@RestController
|
||||
|
@ -4,7 +4,7 @@ import com.flyfish.framework.validation.annotations.Password;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* 修改密码dto
|
||||
|
@ -7,6 +7,7 @@ import com.flyfish.framework.enums.UserStatus;
|
||||
import com.flyfish.framework.service.FlyfishUserDetailsService;
|
||||
import com.flyfish.framework.utils.Assert;
|
||||
import com.flyfish.framework.utils.ReactiveRedisOperations;
|
||||
import jakarta.annotation.PostConstruct;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.apache.commons.lang3.BooleanUtils;
|
||||
import org.springframework.security.authentication.*;
|
||||
@ -22,8 +23,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.server.ServerWebExchange;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.PostConstruct;
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.function.Function;
|
||||
|
@ -15,7 +15,7 @@ import org.springframework.stereotype.Service;
|
||||
import reactor.core.publisher.Flux;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
import java.util.Collection;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
@ -13,7 +13,7 @@ import org.springframework.stereotype.Service;
|
||||
import reactor.core.publisher.Flux;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
import java.util.Collection;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
@ -17,7 +17,7 @@ import org.hibernate.validator.constraints.URL;
|
||||
import org.springframework.core.annotation.MergedAnnotation;
|
||||
import org.springframework.core.annotation.MergedAnnotations;
|
||||
|
||||
import javax.validation.constraints.*;
|
||||
import jakarta.validation.constraints.*;
|
||||
import java.lang.annotation.Annotation;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
@ -16,7 +16,7 @@ import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
@ -1,6 +1,6 @@
|
||||
package com.flyfish.framework.beans.meta;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import jakarta.validation.Valid;
|
||||
import java.lang.annotation.*;
|
||||
|
||||
/**
|
||||
|
@ -7,6 +7,7 @@ import com.flyfish.framework.configuration.resolver.RequestContextBodyArgumentRe
|
||||
import com.flyfish.framework.configuration.resolver.UserArgumentResolver;
|
||||
import com.flyfish.framework.configuration.resolver.ValidRequestBodyMethodArgumentResolver;
|
||||
import com.flyfish.framework.context.SpringContext;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.boot.autoconfigure.jackson.JacksonProperties;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.core.Ordered;
|
||||
@ -21,7 +22,6 @@ import org.springframework.web.reactive.config.EnableWebFlux;
|
||||
import org.springframework.web.reactive.config.WebFluxConfigurer;
|
||||
import org.springframework.web.reactive.result.method.annotation.ArgumentResolverConfigurer;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Optional;
|
||||
import java.util.TimeZone;
|
||||
|
||||
|
@ -11,7 +11,7 @@ import org.springframework.security.web.server.context.ServerSecurityContextRepo
|
||||
import org.springframework.web.server.ServerWebExchange;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
import java.net.URI;
|
||||
|
||||
@Slf4j
|
||||
|
@ -20,7 +20,7 @@ import org.springframework.security.core.userdetails.User;
|
||||
import org.springframework.web.server.ServerWebExchange;
|
||||
import reactor.core.publisher.Mono;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import jakarta.annotation.Resource;
|
||||
import javax.crypto.SecretKey;
|
||||
import java.time.Duration;
|
||||
import java.util.Arrays;
|
||||
|
@ -34,6 +34,7 @@ import reactor.core.publisher.Mono;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
/**
|
||||
* 私有校验逻辑支持的body
|
||||
@ -44,7 +45,7 @@ import java.util.stream.Collectors;
|
||||
public class ValidRequestBodyMethodArgumentResolver extends AbstractMessageReaderArgumentResolver {
|
||||
|
||||
private static final Set<HttpMethod> SUPPORTED_METHODS =
|
||||
EnumSet.of(HttpMethod.POST, HttpMethod.PUT, HttpMethod.PATCH);
|
||||
Stream.of(HttpMethod.POST, HttpMethod.PUT, HttpMethod.PATCH).collect(Collectors.toSet());
|
||||
|
||||
private final List<MediaType> supportedMediaTypes;
|
||||
|
||||
|
36
pom.xml
36
pom.xml
@ -12,23 +12,23 @@
|
||||
<parent>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-parent</artifactId>
|
||||
<version>2.7.18</version>
|
||||
<version>3.3.1</version>
|
||||
<relativePath/> <!-- lookup parent from repository -->
|
||||
</parent>
|
||||
|
||||
<properties>
|
||||
<revision>1.0.0-SNAPSHOT</revision>
|
||||
<revision>2.0.0-SNAPSHOT</revision>
|
||||
<docker.image.prefix>flyfish</docker.image.prefix>
|
||||
<docker.plugin.version>0.27.2</docker.plugin.version>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||
<java.version>1.8</java.version>
|
||||
<jasypt.version>3.0.3</jasypt.version>
|
||||
<spring-cloud.version>Finchley.SR1</spring-cloud.version>
|
||||
<java.version>17</java.version>
|
||||
<jasypt.version>3.1.0</jasypt.version>
|
||||
<jjwt.version>0.12.6</jjwt.version>
|
||||
<reflection.version>0.10.2</reflection.version>
|
||||
<r2dbc-mysql.version>0.9.7</r2dbc-mysql.version>
|
||||
<r2dbc-mysql.version>1.1.3</r2dbc-mysql.version>
|
||||
<flatten-maven-plugin.version>1.5.0</flatten-maven-plugin.version>
|
||||
<captcha.version>1.3.0</captcha.version>
|
||||
</properties>
|
||||
|
||||
<developers>
|
||||
@ -77,11 +77,7 @@
|
||||
<artifactId>lombok</artifactId>
|
||||
<optional>true</optional>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.alibaba</groupId>
|
||||
<artifactId>fastjson</artifactId>
|
||||
<version>2.0.51</version>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
<dependencyManagement>
|
||||
@ -109,12 +105,12 @@
|
||||
<dependency>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-collections4</artifactId>
|
||||
<version>4.1</version>
|
||||
<version>4.5.0-M2</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-io</groupId>
|
||||
<artifactId>commons-io</artifactId>
|
||||
<version>2.6</version>
|
||||
<version>2.16.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.reflections</groupId>
|
||||
@ -122,21 +118,21 @@
|
||||
<version>${reflection.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.github.ulisesbocchio</groupId>
|
||||
<groupId>io.springboot.plugin</groupId>
|
||||
<artifactId>jasypt-spring-boot-starter</artifactId>
|
||||
<version>${jasypt.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.dingxiang-inc</groupId>
|
||||
<artifactId>ctu-client-sdk</artifactId>
|
||||
<version>2.4</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.asyncer</groupId>
|
||||
<artifactId>r2dbc-mysql</artifactId>
|
||||
<version>${r2dbc-mysql.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.springboot.plugin</groupId>
|
||||
<artifactId>spring-boot-starter-captcha</artifactId>
|
||||
<version>${captcha.version}</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</dependencyManagement>
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user