Compare commits

..

No commits in common. "next" and "master" have entirely different histories.
next ... master

538 changed files with 2521 additions and 4780 deletions

View File

@ -4,7 +4,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>flyfish-framework</artifactId>
<groupId>dev.flyfish.framework</groupId>
<groupId>com.flyfish.framework</groupId>
<version>${revision}</version>
</parent>
<modelVersion>4.0.0</modelVersion>
@ -12,8 +12,8 @@
<artifactId>flyfish-approval</artifactId>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
</properties>
<dependencies>
@ -28,7 +28,7 @@
<optional>true</optional>
</dependency>
<dependency>
<groupId>dev.flyfish.framework</groupId>
<groupId>com.flyfish.framework</groupId>
<artifactId>flyfish-web</artifactId>
<version>${revision}</version>
</dependency>

View File

@ -1,8 +1,8 @@
package dev.flyfish.framework.approval.auditor;
package com.flyfish.framework.approval.auditor;
import dev.flyfish.framework.approval.domain.ApprovalDomain;
import dev.flyfish.framework.approval.enums.ApproveStatus;
import dev.flyfish.framework.auditor.ReactiveBeanAuditor;
import com.flyfish.framework.approval.domain.ApprovalDomain;
import com.flyfish.framework.approval.enums.ApproveStatus;
import com.flyfish.framework.auditor.ReactiveBeanAuditor;
import org.springframework.stereotype.Component;
import reactor.core.publisher.Mono;

View File

@ -1,7 +1,7 @@
package dev.flyfish.framework.approval.auditor;
package com.flyfish.framework.approval.auditor;
import dev.flyfish.framework.approval.domain.record.ApproveRecord;
import dev.flyfish.framework.auditor.ReactiveBeanAuditor;
import com.flyfish.framework.approval.domain.record.ApproveRecord;
import com.flyfish.framework.auditor.ReactiveBeanAuditor;
import org.springframework.stereotype.Component;
import reactor.core.publisher.Mono;

View File

@ -1,24 +1,24 @@
package dev.flyfish.framework.approval.controller;
package com.flyfish.framework.approval.controller;
import dev.flyfish.framework.approval.domain.ApprovalDomain;
import dev.flyfish.framework.approval.domain.record.ApproveRecord;
import dev.flyfish.framework.approval.domain.record.ApproveRecordListVo;
import dev.flyfish.framework.approval.domain.record.ApproveRecordQo;
import dev.flyfish.framework.approval.domain.submit.ApprovalSubmitDto;
import dev.flyfish.framework.approval.domain.todo.ApprovalDto;
import dev.flyfish.framework.approval.domain.todo.ApprovalListVo;
import dev.flyfish.framework.approval.service.ApproveRecordService;
import dev.flyfish.framework.approval.service.ModuleDelegateService;
import dev.flyfish.framework.bean.Result;
import dev.flyfish.framework.configuration.annotations.CurrentUser;
import dev.flyfish.framework.configuration.annotations.PagedQuery;
import dev.flyfish.framework.domain.base.Vo;
import dev.flyfish.framework.domain.po.User;
import com.flyfish.framework.approval.domain.ApprovalDomain;
import com.flyfish.framework.approval.domain.record.ApproveRecord;
import com.flyfish.framework.approval.domain.record.ApproveRecordListVo;
import com.flyfish.framework.approval.domain.record.ApproveRecordQo;
import com.flyfish.framework.approval.domain.submit.ApprovalSubmitDto;
import com.flyfish.framework.approval.domain.todo.ApprovalDto;
import com.flyfish.framework.approval.domain.todo.ApprovalListVo;
import com.flyfish.framework.approval.service.ApproveRecordService;
import com.flyfish.framework.approval.service.ModuleDelegateService;
import com.flyfish.framework.bean.Result;
import com.flyfish.framework.configuration.annotations.CurrentUser;
import com.flyfish.framework.configuration.annotations.PagedQuery;
import com.flyfish.framework.domain.base.Vo;
import com.flyfish.framework.domain.po.User;
import org.springframework.web.bind.annotation.*;
import reactor.core.publisher.Mono;
import jakarta.annotation.Resource;
import jakarta.validation.Valid;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.List;
/**

View File

@ -1,8 +1,8 @@
package dev.flyfish.framework.approval.controller;
package com.flyfish.framework.approval.controller;
import dev.flyfish.framework.approval.domain.record.ApproveRecord;
import dev.flyfish.framework.approval.domain.record.ApproveRecordQo;
import dev.flyfish.framework.controller.reactive.ReactiveBaseController;
import com.flyfish.framework.approval.domain.record.ApproveRecord;
import com.flyfish.framework.approval.domain.record.ApproveRecordQo;
import com.flyfish.framework.controller.reactive.ReactiveBaseController;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

View File

@ -1,8 +1,8 @@
package dev.flyfish.framework.approval.domain;
package com.flyfish.framework.approval.domain;
import dev.flyfish.framework.annotations.Property;
import dev.flyfish.framework.approval.enums.ApproveStatus;
import dev.flyfish.framework.domain.authorized.AuthorizedDomain;
import com.flyfish.framework.annotations.Property;
import com.flyfish.framework.approval.enums.ApproveStatus;
import com.flyfish.framework.domain.authorized.AuthorizedDomain;
import lombok.Getter;
import lombok.Setter;

View File

@ -1,11 +1,11 @@
package dev.flyfish.framework.approval.domain;
package com.flyfish.framework.approval.domain;
import dev.flyfish.framework.annotations.EnumValue;
import dev.flyfish.framework.annotations.Order;
import dev.flyfish.framework.annotations.Property;
import dev.flyfish.framework.approval.enums.ApproveStatus;
import dev.flyfish.framework.domain.authorized.AuthorizedQo;
import dev.flyfish.framework.query.QueryDefinition;
import com.flyfish.framework.annotations.EnumValue;
import com.flyfish.framework.annotations.Order;
import com.flyfish.framework.annotations.Property;
import com.flyfish.framework.approval.enums.ApproveStatus;
import com.flyfish.framework.domain.authorized.AuthorizedQo;
import com.flyfish.framework.query.QueryDefinition;
import lombok.Getter;
import lombok.Setter;

View File

@ -1,7 +1,7 @@
package dev.flyfish.framework.approval.domain;
package com.flyfish.framework.approval.domain;
import dev.flyfish.framework.approval.enums.ApproveStatus;
import dev.flyfish.framework.domain.base.Vo;
import com.flyfish.framework.approval.enums.ApproveStatus;
import com.flyfish.framework.domain.base.Vo;
import lombok.Data;
import java.util.Optional;

View File

@ -1,18 +1,20 @@
package dev.flyfish.framework.approval.domain.record;
package com.flyfish.framework.approval.domain.record;
import dev.flyfish.framework.annotations.Entity;
import dev.flyfish.framework.annotations.Property;
import dev.flyfish.framework.approval.enums.ApproveAction;
import dev.flyfish.framework.domain.base.AuditDomain;
import com.flyfish.framework.approval.enums.ApproveAction;
import com.flyfish.framework.domain.base.AuditDomain;
import lombok.Getter;
import lombok.Setter;
import org.springframework.data.mongodb.core.mapping.Document;
import org.springframework.data.relational.core.mapping.Column;
import org.springframework.data.relational.core.mapping.Table;
/**
* 审批记录
*
* @author wangyu
*/
@Entity(table = "t_approve_records", collection = "approve-records")
@Document(collection = "approve-records")
@Table("t_approve_records")
@Getter
@Setter
public class ApproveRecord extends AuditDomain {
@ -24,11 +26,11 @@ public class ApproveRecord extends AuditDomain {
private String module;
// 模块名称
@Property(column = "module_name")
@Column("module_name")
private String moduleName;
// 数据id
@Property(column = "data_id")
@Column("data_id")
private String dataId;
// 审批人

View File

@ -1,11 +1,12 @@
package dev.flyfish.framework.approval.domain.record;
package com.flyfish.framework.approval.domain.record;
import com.fasterxml.jackson.annotation.JsonFormat;
import dev.flyfish.framework.approval.enums.ApproveAction;
import dev.flyfish.framework.domain.base.Vo;
import com.flyfish.framework.approval.enums.ApproveAction;
import com.flyfish.framework.domain.base.Vo;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.Optional;
/**

View File

@ -1,7 +1,7 @@
package dev.flyfish.framework.approval.domain.record;
package com.flyfish.framework.approval.domain.record;
import dev.flyfish.framework.domain.base.NameLikeQo;
import dev.flyfish.framework.query.QueryDefinition;
import com.flyfish.framework.domain.base.NameLikeQo;
import com.flyfish.framework.query.QueryDefinition;
import lombok.Getter;
import lombok.Setter;

View File

@ -1,9 +1,9 @@
package dev.flyfish.framework.approval.domain.submit;
package com.flyfish.framework.approval.domain.submit;
import lombok.Data;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotEmpty;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.List;
/**

View File

@ -1,10 +1,10 @@
package dev.flyfish.framework.approval.domain.todo;
package com.flyfish.framework.approval.domain.todo;
import dev.flyfish.framework.approval.enums.ApproveAction;
import com.flyfish.framework.approval.enums.ApproveAction;
import lombok.Data;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* 审批dto

View File

@ -1,11 +1,12 @@
package dev.flyfish.framework.approval.domain.todo;
package com.flyfish.framework.approval.domain.todo;
import com.fasterxml.jackson.annotation.JsonFormat;
import dev.flyfish.framework.approval.domain.record.ApproveRecord;
import dev.flyfish.framework.domain.base.Vo;
import com.flyfish.framework.approval.domain.record.ApproveRecord;
import com.flyfish.framework.domain.base.Vo;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.Date;
/**
* 待审批列表vo

View File

@ -1,6 +1,6 @@
package dev.flyfish.framework.approval.enums;
package com.flyfish.framework.approval.enums;
import dev.flyfish.framework.enums.NamedEnum;
import com.flyfish.framework.enums.NamedEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;

View File

@ -1,6 +1,6 @@
package dev.flyfish.framework.approval.enums;
package com.flyfish.framework.approval.enums;
import dev.flyfish.framework.enums.NamedEnum;
import com.flyfish.framework.enums.NamedEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;

View File

@ -0,0 +1,11 @@
package com.flyfish.framework.approval.repository;
import com.flyfish.framework.approval.domain.record.ApproveRecord;
import com.flyfish.framework.repository.DefaultReactiveRepository;
/**
* 审批记录仓库
* @author wangyu
*/
public interface ApproveRecordRepository extends DefaultReactiveRepository<ApproveRecord> {
}

View File

@ -1,7 +1,7 @@
package dev.flyfish.framework.approval.service;
package com.flyfish.framework.approval.service;
import dev.flyfish.framework.approval.domain.record.ApproveRecord;
import dev.flyfish.framework.service.impl.BaseReactiveServiceImpl;
import com.flyfish.framework.approval.domain.record.ApproveRecord;
import com.flyfish.framework.service.impl.BaseReactiveServiceImpl;
import org.springframework.stereotype.Service;
/**

View File

@ -1,15 +1,15 @@
package dev.flyfish.framework.approval.service;
package com.flyfish.framework.approval.service;
import dev.flyfish.framework.approval.domain.ApprovalDomain;
import dev.flyfish.framework.approval.domain.record.ApproveRecord;
import dev.flyfish.framework.approval.domain.submit.ApprovalSubmitDto;
import dev.flyfish.framework.approval.domain.todo.ApprovalDto;
import dev.flyfish.framework.approval.enums.ApproveAction;
import dev.flyfish.framework.approval.enums.ApproveStatus;
import dev.flyfish.framework.beans.meta.RestBean;
import dev.flyfish.framework.exception.biz.InvalidBusinessException;
import dev.flyfish.framework.service.BaseReactiveService;
import dev.flyfish.framework.utils.ReflectionUtils;
import com.flyfish.framework.approval.domain.ApprovalDomain;
import com.flyfish.framework.approval.domain.record.ApproveRecord;
import com.flyfish.framework.approval.domain.submit.ApprovalSubmitDto;
import com.flyfish.framework.approval.domain.todo.ApprovalDto;
import com.flyfish.framework.approval.enums.ApproveAction;
import com.flyfish.framework.approval.enums.ApproveStatus;
import com.flyfish.framework.beans.meta.RestBean;
import com.flyfish.framework.exception.biz.InvalidBusinessException;
import com.flyfish.framework.service.BaseReactiveService;
import com.flyfish.framework.utils.ReflectionUtils;
import org.apache.commons.lang3.ClassUtils;
import org.springframework.beans.factory.ObjectProvider;
import org.springframework.beans.factory.annotation.Autowired;
@ -19,7 +19,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import reactor.core.publisher.Mono;
import jakarta.annotation.Resource;
import javax.annotation.Resource;
import java.util.Map;
import java.util.Optional;
import java.util.stream.Collectors;

View File

@ -1,11 +0,0 @@
package dev.flyfish.framework.approval.repository;
import dev.flyfish.framework.approval.domain.record.ApproveRecord;
import dev.flyfish.framework.repository.DefaultReactiveRepository;
/**
* 审批记录仓库
* @author wangyu
*/
public interface ApproveRecordRepository extends DefaultReactiveRepository<ApproveRecord> {
}

View File

@ -4,7 +4,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>flyfish-framework</artifactId>
<groupId>dev.flyfish.framework</groupId>
<groupId>com.flyfish.framework</groupId>
<version>${revision}</version>
</parent>
<modelVersion>4.0.0</modelVersion>
@ -12,8 +12,8 @@
<artifactId>flyfish-backup</artifactId>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
</properties>
<dependencies>
@ -28,7 +28,7 @@
<optional>true</optional>
</dependency>
<dependency>
<groupId>dev.flyfish.framework</groupId>
<groupId>com.flyfish.framework</groupId>
<artifactId>flyfish-web</artifactId>
<version>${revision}</version>
</dependency>

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.backup.config;
package com.flyfish.framework.backup.config;
import org.springframework.boot.context.properties.EnableConfigurationProperties;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.backup.config;
package com.flyfish.framework.backup.config;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

View File

@ -1,15 +1,15 @@
package dev.flyfish.framework.backup.controller;
package com.flyfish.framework.backup.controller;
import dev.flyfish.framework.backup.domain.Backup;
import dev.flyfish.framework.backup.scheduler.BackupScheduler;
import dev.flyfish.framework.bean.Result;
import dev.flyfish.framework.controller.reactive.ReactiveBaseController;
import dev.flyfish.framework.domain.base.NameLikeQo;
import com.flyfish.framework.backup.domain.Backup;
import com.flyfish.framework.backup.scheduler.BackupScheduler;
import com.flyfish.framework.bean.Result;
import com.flyfish.framework.controller.reactive.ReactiveBaseController;
import com.flyfish.framework.domain.base.NameLikeQo;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import jakarta.annotation.Resource;
import javax.annotation.Resource;
/**
* 备份controller

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.backup.controller;
package com.flyfish.framework.backup.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

View File

@ -1,11 +1,12 @@
package dev.flyfish.framework.backup.domain;
package com.flyfish.framework.backup.domain;
import dev.flyfish.framework.annotations.Entity;
import dev.flyfish.framework.domain.base.AuditDomain;
import dev.flyfish.framework.enums.NamedEnum;
import com.flyfish.framework.domain.base.AuditDomain;
import com.flyfish.framework.enums.NamedEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.Setter;
import org.springframework.data.mongodb.core.mapping.Document;
import org.springframework.data.relational.core.mapping.Table;
/**
* 系统备份
@ -14,7 +15,8 @@ import lombok.Setter;
*/
@Getter
@Setter
@Entity(collection = "backups", table = "t_backup")
@Document(collection = "backups")
@Table("t_backup")
public class Backup extends AuditDomain {
// 文件路径

View File

@ -1,6 +1,6 @@
package dev.flyfish.framework.backup.domain;
package com.flyfish.framework.backup.domain;
import dev.flyfish.framework.annotations.Property;
import com.flyfish.framework.annotations.Property;
import lombok.Data;
import java.time.LocalDateTime;

View File

@ -0,0 +1,12 @@
package com.flyfish.framework.backup.repository;
import com.flyfish.framework.backup.domain.Backup;
import com.flyfish.framework.repository.DefaultReactiveRepository;
/**
* 备份仓库
*
* @author wangyu
*/
public interface BackupRepository extends DefaultReactiveRepository<Backup> {
}

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.backup.scheduler;
package com.flyfish.framework.backup.scheduler;
import lombok.AllArgsConstructor;
import lombok.Data;

View File

@ -1,11 +1,11 @@
package dev.flyfish.framework.backup.scheduler;
package com.flyfish.framework.backup.scheduler;
import dev.flyfish.framework.backup.domain.Backup;
import dev.flyfish.framework.context.DateContext;
import dev.flyfish.framework.domain.base.DomainService;
import dev.flyfish.framework.query.Query;
import dev.flyfish.framework.repository.ReactiveEntityOperations;
import dev.flyfish.framework.utils.JacksonUtil;
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 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(), JacksonUtil.toBytes(list)))
.map(list -> new BackupIndex.BackupContent(info.getJavaType().getSimpleName(), JSON.toJSONBytes(list)))
)
.flatMap(content -> writeContents(content, parent))
.collectList()
@ -113,7 +113,7 @@ public class BackupScheduler {
return item;
}).collect(Collectors.toList()));
// 写入备份结果
return write(JacksonUtil.toBytes(index), parent + "/meta.json");
return write(JSON.toJSONBytes(index), parent + "/meta.json");
})
.then(Mono.defer(() -> {
backup.setLog("成功备份");

View File

@ -1,7 +1,7 @@
package dev.flyfish.framework.backup.service;
package com.flyfish.framework.backup.service;
import dev.flyfish.framework.backup.domain.Backup;
import dev.flyfish.framework.service.impl.BaseReactiveServiceImpl;
import com.flyfish.framework.backup.domain.Backup;
import com.flyfish.framework.service.impl.BaseReactiveServiceImpl;
import org.springframework.stereotype.Service;
import reactor.core.publisher.Mono;

View File

@ -1,7 +1,8 @@
package dev.flyfish.framework.backup.service;
package com.flyfish.framework.backup.service;
import dev.flyfish.framework.backup.config.VersionProperties;
import dev.flyfish.framework.backup.domain.Version;
import com.flyfish.framework.backup.config.VersionProperties;
import com.flyfish.framework.backup.domain.Version;
import org.springframework.stereotype.Service;
import org.springframework.web.reactive.function.client.WebClient;
import reactor.core.publisher.Mono;

View File

@ -1,12 +0,0 @@
package dev.flyfish.framework.backup.repository;
import dev.flyfish.framework.backup.domain.Backup;
import dev.flyfish.framework.repository.DefaultReactiveRepository;
/**
* 备份仓库
*
* @author wangyu
*/
public interface BackupRepository extends DefaultReactiveRepository<Backup> {
}

View File

@ -1,28 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>dev.flyfish.framework</groupId>
<artifactId>flyfish-framework</artifactId>
<version>${revision}</version>
</parent>
<artifactId>flyfish-bean</artifactId>
<name>flyfish-parser</name>
<description>飞鱼解析器</description>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</dependency>
</dependencies>
</project>

View File

@ -1 +0,0 @@
package dev.flyfish.framework.beans.enums;

View File

@ -1 +0,0 @@
package dev.flyfish.framework.beans.meta;

View File

@ -4,7 +4,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>flyfish-framework</artifactId>
<groupId>dev.flyfish.framework</groupId>
<groupId>com.flyfish.framework</groupId>
<version>${revision}</version>
</parent>
<modelVersion>4.0.0</modelVersion>
@ -47,17 +47,13 @@
<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>jakarta.validation</groupId>
<artifactId>jakarta.validation-api</artifactId>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.bean;
package com.flyfish.framework.bean;
/**
* Created by wangyu on 2017/8/23.

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.bean;
package com.flyfish.framework.bean;
import lombok.AllArgsConstructor;
import lombok.Data;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.bean;
package com.flyfish.framework.bean;
/**
* ${DESCRIPTION}

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.bean;
package com.flyfish.framework.bean;
/**
* Created by Wangyu on 2017/6/11.

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.bean;
package com.flyfish.framework.bean;
import org.springframework.data.domain.Page;
@ -57,4 +57,4 @@ public class PageBean<T> {
public void setSize(Integer size) {
this.size = size;
}
}
}

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.bean;
package com.flyfish.framework.bean;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;

View File

@ -1,6 +1,6 @@
package dev.flyfish.framework.bean;
package com.flyfish.framework.bean;
import dev.flyfish.framework.constant.Frameworks;
import com.flyfish.framework.constant.Frameworks;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.bean;
package com.flyfish.framework.bean;
import java.util.List;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.bean;
package com.flyfish.framework.bean;
import java.util.ArrayList;
import java.util.List;

View File

@ -1,7 +1,7 @@
package dev.flyfish.framework.bean.auth;
package com.flyfish.framework.bean.auth;
import dev.flyfish.framework.bean.BaseResponse;
import dev.flyfish.framework.constant.RestCodeConstants;
import com.flyfish.framework.bean.BaseResponse;
import com.flyfish.framework.constant.RestCodeConstants;
/**
* Created by wangyu on 2017/8/23.

View File

@ -1,7 +1,7 @@
package dev.flyfish.framework.bean.auth;
package com.flyfish.framework.bean.auth;
import dev.flyfish.framework.bean.BaseResponse;
import dev.flyfish.framework.constant.RestCodeConstants;
import com.flyfish.framework.bean.BaseResponse;
import com.flyfish.framework.constant.RestCodeConstants;
/**
* Created by wangyu on 2017/8/25.

View File

@ -1,7 +1,7 @@
package dev.flyfish.framework.compiler;
package com.flyfish.framework.compiler;
import dev.flyfish.framework.compiler.support.DelegateJavaCompiler;
import dev.flyfish.framework.compiler.support.SimpleJavaCompiler;
import com.flyfish.framework.compiler.support.DelegateJavaCompiler;
import com.flyfish.framework.compiler.support.SimpleJavaCompiler;
import org.springframework.lang.Nullable;
import java.io.Closeable;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.compiler.core;
package com.flyfish.framework.compiler.core;
/**
* 静态访问器

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.compiler.core;
package com.flyfish.framework.compiler.core;
import java.net.URL;
import java.net.URLClassLoader;
@ -21,11 +21,4 @@ public abstract class DynamicClassLoader extends URLClassLoader {
* @return 结果
*/
public abstract Map<String, byte[]> getClassBytes();
/**
* 将指定的类二进制替换为其他类
*
* @param path 目标类路径
*/
public abstract void replace(String name, String path);
}

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.compiler.core;
package com.flyfish.framework.compiler.core;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.BooleanUtils;

View File

@ -1,13 +1,7 @@
package dev.flyfish.framework.compiler.core;
package com.flyfish.framework.compiler.core;
import org.apache.commons.lang3.ArrayUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import org.springframework.core.io.support.ResourcePatternResolver;
import org.springframework.util.StreamUtils;
import java.io.IOException;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@ -36,21 +30,6 @@ class MemoryClassLoader extends DynamicClassLoader {
return classBytes;
}
@Override
public void replace(String name, String path) {
String actualPath = "classpath:" + path;
ResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
try {
Resource[] resources = resolver.getResources(actualPath);
if (ArrayUtils.isNotEmpty(resources)) {
byte[] content = StreamUtils.copyToByteArray(resources[0].getInputStream());
classBytes.put(name, content);
defineClass(name, content);
}
} catch (IOException ignored) {
}
}
/**
* 修复获取package为null的问题定义并验证class
*

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.compiler.core;
package com.flyfish.framework.compiler.core;
import lombok.Getter;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.compiler.core;
package com.flyfish.framework.compiler.core;
import java.io.Closeable;

View File

@ -1,7 +1,7 @@
package dev.flyfish.framework.compiler.support;
package com.flyfish.framework.compiler.support;
import dev.flyfish.framework.compiler.DynamicJavaCompiler;
import dev.flyfish.framework.compiler.core.VendorJavaCompiler;
import com.flyfish.framework.compiler.DynamicJavaCompiler;
import com.flyfish.framework.compiler.core.VendorJavaCompiler;
import lombok.extern.slf4j.Slf4j;
import java.io.IOException;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.compiler.support;
package com.flyfish.framework.compiler.support;
import lombok.Data;
import lombok.NoArgsConstructor;

View File

@ -1,6 +1,6 @@
package dev.flyfish.framework.compiler.support;
package com.flyfish.framework.compiler.support;
import dev.flyfish.framework.compiler.DynamicJavaCompiler;
import com.flyfish.framework.compiler.DynamicJavaCompiler;
import org.apache.commons.lang3.BooleanUtils;
import org.apache.commons.lang3.StringUtils;
@ -57,7 +57,7 @@ public class SimpleJavaCompiler implements DynamicJavaCompiler {
options, null, Collections.singletonList(fileObject));
// 阻塞编译
if (BooleanUtils.isTrue(task.call())) {
return "dev.flyfish.project." + name;
return "com.flyfish.project." + name;
}
return null;
}

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.compiler.support;
package com.flyfish.framework.compiler.support;
import javax.tools.SimpleJavaFileObject;
import java.io.IOException;

View File

@ -1,6 +1,6 @@
package dev.flyfish.framework.compiler.template;
package com.flyfish.framework.compiler.template;
import dev.flyfish.framework.compiler.support.JavaSource;
import com.flyfish.framework.compiler.support.JavaSource;
import org.springframework.beans.BeanUtils;
import org.springframework.data.util.CastUtils;
import org.springframework.util.StreamUtils;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.config;
package com.flyfish.framework.config;
import lombok.Getter;
import lombok.Setter;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.constant;
package com.flyfish.framework.constant;
/**
* Created by wangyu on 2017/8/29.

View File

@ -1,6 +1,6 @@
package dev.flyfish.framework.constant;
package com.flyfish.framework.constant;
import dev.flyfish.framework.config.FrameworkConfiguration;
import com.flyfish.framework.config.FrameworkConfiguration;
/**
* 框架静态配置

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.constant;
package com.flyfish.framework.constant;
/**
* 异步接口常量

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.constant;
package com.flyfish.framework.constant;
/**
* Created by wangyu on 2017/8/23.

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.constant;
package com.flyfish.framework.constant;
/**
* ${DESCRIPTION}

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.context;
package com.flyfish.framework.context;
import org.springframework.stereotype.Component;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.context;
package com.flyfish.framework.context;
import reactor.core.publisher.Mono;

View File

@ -1,6 +1,6 @@
package dev.flyfish.framework.context;
package com.flyfish.framework.context;
import dev.flyfish.framework.utils.Assert;
import com.flyfish.framework.utils.Assert;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanInitializationException;
import org.springframework.context.ApplicationContext;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.enums;
package com.flyfish.framework.enums;
/**
* 空白的枚举

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.enums;
package com.flyfish.framework.enums;
/**
* 基于标识码的枚举基类

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.enums;
package com.flyfish.framework.enums;
/**
* 带有名称字段的枚举

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.enums;
package com.flyfish.framework.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.enums;
package com.flyfish.framework.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.enums;
package com.flyfish.framework.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.exception;
package com.flyfish.framework.exception;
/**
* Created by wangyu on 2017/9/8.

View File

@ -1,8 +1,8 @@
package dev.flyfish.framework.exception.auth;
package com.flyfish.framework.exception.auth;
import dev.flyfish.framework.constant.CommonConstants;
import dev.flyfish.framework.exception.BaseException;
import com.flyfish.framework.constant.CommonConstants;
import com.flyfish.framework.exception.BaseException;
/**
* Created by wangyu on 2017/9/12.

View File

@ -1,8 +1,8 @@
package dev.flyfish.framework.exception.auth;
package com.flyfish.framework.exception.auth;
import dev.flyfish.framework.constant.CommonConstants;
import dev.flyfish.framework.exception.BaseException;
import com.flyfish.framework.constant.CommonConstants;
import com.flyfish.framework.exception.BaseException;
/**
* Created by wangyu on 2017/9/10.

View File

@ -1,8 +1,8 @@
package dev.flyfish.framework.exception.auth;
package com.flyfish.framework.exception.auth;
import dev.flyfish.framework.constant.CommonConstants;
import dev.flyfish.framework.exception.BaseException;
import com.flyfish.framework.constant.CommonConstants;
import com.flyfish.framework.exception.BaseException;
/**
* Created by wangyu on 2017/9/10.

View File

@ -1,8 +1,8 @@
package dev.flyfish.framework.exception.auth;
package com.flyfish.framework.exception.auth;
import dev.flyfish.framework.constant.CommonConstants;
import dev.flyfish.framework.exception.BaseException;
import com.flyfish.framework.constant.CommonConstants;
import com.flyfish.framework.exception.BaseException;
/**
* Created by wangyu on 2017/9/8.

View File

@ -1,8 +1,8 @@
package dev.flyfish.framework.exception.auth;
package com.flyfish.framework.exception.auth;
import dev.flyfish.framework.constant.CommonConstants;
import dev.flyfish.framework.exception.BaseException;
import com.flyfish.framework.constant.CommonConstants;
import com.flyfish.framework.exception.BaseException;
/**
* Created by wangyu on 2017/9/8.

View File

@ -1,6 +1,6 @@
package dev.flyfish.framework.exception.biz;
package com.flyfish.framework.exception.biz;
import dev.flyfish.framework.exception.BaseException;
import com.flyfish.framework.exception.BaseException;
import java.util.function.Supplier;

View File

@ -1,6 +1,6 @@
package dev.flyfish.framework.exception.biz;
package com.flyfish.framework.exception.biz;
import dev.flyfish.framework.exception.BaseException;
import com.flyfish.framework.exception.BaseException;
/**
* 业务限制异常

View File

@ -1,6 +1,6 @@
package dev.flyfish.framework.utils;
package com.flyfish.framework.utils;
import dev.flyfish.framework.exception.biz.InvalidBusinessException;
import com.flyfish.framework.exception.biz.InvalidBusinessException;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.utils;
package com.flyfish.framework.utils;
/**
* 构建器表示

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.utils;
package com.flyfish.framework.utils;
import org.springframework.beans.factory.annotation.AnnotatedBeanDefinition;
import org.springframework.beans.factory.config.BeanDefinition;
@ -13,11 +13,7 @@ import org.springframework.util.CollectionUtils;
import java.io.IOException;
import java.lang.annotation.Annotation;
import java.util.Arrays;
import java.util.Collection;
import java.util.Objects;
import java.util.Set;
import java.util.stream.Stream;
import java.util.*;
/**
* 内部的包扫描器提供特定注解扫描
@ -65,13 +61,6 @@ public class ClassPathResourceScanner extends ClassPathScanningCandidateComponen
return true;
}
/**
* 解析具体类型
*
* @param bf bean定义
* @param cl 类加载器
* @return 结果
*/
private Class<?> resolveType(BeanDefinition bf, ClassLoader cl) {
if (null != bf.getBeanClassName()) {
try {
@ -89,19 +78,23 @@ public class ClassPathResourceScanner extends ClassPathScanningCandidateComponen
* @param packageNames 包名
* @return 结果
*/
public Stream<Class<?>> scan(Collection<String> packageNames) {
public Set<Class<?>> scan(Collection<String> packageNames) {
// 获取扫描器的ClassLoader保证同源
ClassLoader cl = this.getClass().getClassLoader();
Stream<Class<?>> stream = packageNames.stream()
.flatMap(packageName -> {
Set<BeanDefinition> bfs = findCandidateComponents(packageName);
// 不存在不要浪费性能
if (CollectionUtils.isEmpty(bfs)) return Stream.empty();
// 代理并生成子类并注册到ioc容器
return bfs.stream().map(bf -> resolveType(bf, cl)).filter(Objects::nonNull);
});
// 额外返回以保证类型正确
return stream.distinct();
Set<Class<?>> scanned = new HashSet<>();
for (String packageName : packageNames) {
Set<BeanDefinition> bfs = findCandidateComponents(packageName);
// 不存在不要浪费性能
if (CollectionUtils.isEmpty(bfs)) continue;
// 代理并生成子类并注册到ioc容器
for (BeanDefinition bf : bfs) {
Class<?> resolved = resolveType(bf, cl);
if (null != resolved) {
scanned.add(resolved);
}
}
}
return scanned;
}
/**
@ -110,7 +103,7 @@ public class ClassPathResourceScanner extends ClassPathScanningCandidateComponen
* @param packageNames 包名
* @return 结果
*/
public Stream<Class<?>> scan(String... packageNames) {
public Set<Class<?>> scan(String... packageNames) {
return scan(Arrays.asList(packageNames));
}
}
}

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.utils;
package com.flyfish.framework.utils;
/**
* 实体类相关工具类

View File

@ -1,7 +1,7 @@
package dev.flyfish.framework.utils;
package com.flyfish.framework.utils;
import dev.flyfish.framework.enums.CodeBasedEnum;
import com.flyfish.framework.enums.CodeBasedEnum;
import java.util.NoSuchElementException;

View File

@ -1,19 +1,20 @@
package dev.flyfish.framework.utils;
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.JavaType;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import org.apache.commons.lang3.StringUtils;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Optional;
/**
* Jackson序列化工具类
@ -58,8 +59,8 @@ public final class JacksonUtil {
mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
// JsonGenerator.Feature for configuring low-level JSON generation:
mapper.setLocale(Locale.CHINESE);
mapper.registerModule(new JavaTimeModule());
// to force escaping of non-ASCII characters:
mapper.configure(JsonGenerator.Feature.ESCAPE_NON_ASCII, true);
}
public static <T> T fromJson(final String json) {
@ -71,20 +72,8 @@ public final class JacksonUtil {
return readValue(json, reference);
}
public static <T> T fromJson(final String json, JavaType type) {
if (StringUtils.isBlank(json)) {
return null;
}
try {
return mapper.readValue(json, type);
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
public static <T> T fromJson(final String json, Class<T> clazz) {
if (StringUtils.isBlank(json)) {
if (null == json || "".equals(json)) {
return null;
}
try {
@ -122,7 +111,6 @@ public final class JacksonUtil {
}
public static Optional<String> toJson(final Object obj) {
if (null == obj) return Optional.empty();
try {
return Optional.of(mapper.writeValueAsString(obj));
} catch (JsonProcessingException e) {
@ -131,24 +119,6 @@ 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;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.utils;
package com.flyfish.framework.utils;
import java.util.LinkedHashMap;
import java.util.Map;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.utils;
package com.flyfish.framework.utils;
import java.util.LinkedHashMap;
import java.util.Map;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.utils;
package com.flyfish.framework.utils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ArrayUtils;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.utils;
package com.flyfish.framework.utils;
import org.apache.commons.lang3.StringUtils;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.utils;
package com.flyfish.framework.utils;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.utils;
package com.flyfish.framework.utils;
public interface Supportable<T> {

View File

@ -1,7 +1,7 @@
package dev.flyfish.framework.utils;
package com.flyfish.framework.utils;
import dev.flyfish.framework.bean.TreeNode;
import com.flyfish.framework.bean.TreeNode;
import java.util.ArrayList;
import java.util.List;

View File

@ -1,4 +1,4 @@
package dev.flyfish.framework.utils;
package com.flyfish.framework.utils;
import java.util.UUID;
@ -15,17 +15,14 @@ public class UUIDUtils {
public static String generateShortUuid() {
StringBuilder shortBuffer = new StringBuilder();
String uuid = uuid();
StringBuffer shortBuffer = new StringBuffer();
String uuid = UUID.randomUUID().toString().replace("-", "");
for (int i = 0; i < 8; i++) {
String str = uuid.substring(i * 4, i * 4 + 4);
int x = Integer.parseInt(str, 16);
shortBuffer.append(chars[x % 0x3E]);
}
return shortBuffer.toString();
}
public static String uuid() {
return UUID.randomUUID().toString().replace("-", "");
}
}

View File

@ -1,9 +1,9 @@
package dev.flyfish.framework.validation.annotations;
package com.flyfish.framework.validation.annotations;
import dev.flyfish.framework.validation.validators.ContainsBeanValidator;
import com.flyfish.framework.validation.validators.ContainsBeanValidator;
import jakarta.validation.Constraint;
import jakarta.validation.Payload;
import javax.validation.Constraint;
import javax.validation.Payload;
import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;

View File

@ -1,10 +1,11 @@
package dev.flyfish.framework.validation.annotations;
package com.flyfish.framework.validation.annotations;
import dev.flyfish.framework.validation.validators.IdCardValidator;
import com.flyfish.framework.validation.validators.IdCardValidator;
import com.flyfish.framework.validation.validators.MoneyValidator;
import jakarta.validation.Constraint;
import jakarta.validation.Payload;
import dev.flyfish.framework.validation.annotations.IdCard.List;
import javax.validation.Constraint;
import javax.validation.Payload;
import com.flyfish.framework.validation.annotations.IdCard.List;
import java.lang.annotation.Documented;
import java.lang.annotation.Repeatable;

View File

@ -1,9 +1,9 @@
package dev.flyfish.framework.validation.annotations;
package com.flyfish.framework.validation.annotations;
import dev.flyfish.framework.validation.validators.IsJSONStringValidator;
import com.flyfish.framework.validation.validators.IsJSONStringValidator;
import jakarta.validation.Constraint;
import jakarta.validation.Payload;
import javax.validation.Constraint;
import javax.validation.Payload;
import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;

Some files were not shown because too many files have changed in this diff Show More