diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/dto/ProjectGroupDTO.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/dto/ProjectGroupDTO.java index d6b37395..212bd84e 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/dto/ProjectGroupDTO.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/dto/ProjectGroupDTO.java @@ -27,9 +27,9 @@ public class ProjectGroupDTO extends BaseDTO { private String projectGroupDesc; - private List environments; + private Integer totalEnvironments; - private List applications; + private Integer totalApplications; private Boolean enabled; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/Application.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/Application.java index 7c8e0164..cf99e3a1 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/Application.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/Application.java @@ -66,13 +66,7 @@ public class Application extends Entity { @Column(name = "sort", nullable = false) private Integer sort; -// /** -// * 所属项目ID -// */ -// @Column(name = "project_group_id", nullable = false) -// private Long projectGroupId; + @Column(name = "project_group_id", nullable = false) + private Long projectGroupId; - @ManyToOne(fetch = FetchType.LAZY) - @JoinColumn(name = "project_group_id") - private ProjectGroup projectGroup; -} \ No newline at end of file +} \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/Environment.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/Environment.java index d331c035..b8346589 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/Environment.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/Environment.java @@ -63,9 +63,4 @@ public class Environment extends Entity { @Column(name = "sort", nullable = false) private Integer sort; - /** - * 关联的项目组列表 - */ - @ManyToMany(mappedBy = "environments") - private List projectGroups = new ArrayList<>(); } \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/ProjectGroup.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/ProjectGroup.java index f08f44df..9f7e4258 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/ProjectGroup.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/ProjectGroup.java @@ -7,6 +7,7 @@ import com.qqchen.deploy.backend.system.entity.User; import jakarta.persistence.*; import lombok.Data; import lombok.EqualsAndHashCode; +import org.hibernate.annotations.FetchMode; import org.hibernate.annotations.SQLDelete; import org.hibernate.annotations.Where; @@ -67,17 +68,4 @@ public class ProjectGroup extends Entity { @Column(name = "sort", nullable = false) private Integer sort; - /** - * 关联的环境列表 - */ - @ManyToMany - @JoinTable( - name = "deploy_project_group_environment", - joinColumns = @JoinColumn(name = "project_group_id"), - inverseJoinColumns = @JoinColumn(name = "environment_id") - ) - private List environments = new ArrayList<>(); - - @OneToMany(mappedBy = "projectGroup", fetch = FetchType.LAZY) - private Set applications = new HashSet<>(); } \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/ProjectGroupEnvironment.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/ProjectGroupEnvironment.java index ba4f6d04..c5498df9 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/ProjectGroupEnvironment.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/entity/ProjectGroupEnvironment.java @@ -1,34 +1,24 @@ -//package com.qqchen.deploy.backend.deploy.entity; -// -//import com.qqchen.deploy.backend.framework.domain.Entity; -//import jakarta.persistence.Column; -//import jakarta.persistence.JoinColumn; -//import jakarta.persistence.ManyToOne; -//import jakarta.persistence.Table; -//import lombok.Data; -//import lombok.EqualsAndHashCode; -// -///** -// * 项目环境关联实体 -// */ -//@Data -//@EqualsAndHashCode(callSuper = true) -//@jakarta.persistence.Entity -//@Table(name = "deploy_project_group_environment") -//public class ProjectGroupEnvironment extends Entity { -// -// /** -// * 项目ID -// */ -// @ManyToOne -// @JoinColumn(name = "project_group_id", nullable = false) -// private ProjectGroup projectGroup; -// -// /** -// * 环境ID -// */ -// @ManyToOne -// @JoinColumn(name = "environment_id", nullable = false) -// private Environment environment; -// -//} \ No newline at end of file +package com.qqchen.deploy.backend.deploy.entity; + +import com.qqchen.deploy.backend.framework.domain.Entity; +import jakarta.persistence.Column; +import jakarta.persistence.Table; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 项目环境关联实体 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@jakarta.persistence.Entity +@Table(name = "deploy_project_group_environment") +public class ProjectGroupEnvironment extends Entity { + + @Column(name = "project_group_id") + private Long projectGroupId; + + @Column(name = "environment_id") + private Long environmentId; + +} \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/repository/IApplicationRepository.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/repository/IApplicationRepository.java index 95626625..1e32c806 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/repository/IApplicationRepository.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/repository/IApplicationRepository.java @@ -4,7 +4,10 @@ import com.qqchen.deploy.backend.deploy.entity.Application; import com.qqchen.deploy.backend.framework.repository.IBaseRepository; import org.springframework.stereotype.Repository; +import java.util.List; + @Repository public interface IApplicationRepository extends IBaseRepository { + Integer countByProjectGroupId(Long projectGroupId); } \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/repository/IEnvironmentRepository.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/repository/IEnvironmentRepository.java index f5b53b51..19d3a699 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/repository/IEnvironmentRepository.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/repository/IEnvironmentRepository.java @@ -2,11 +2,29 @@ package com.qqchen.deploy.backend.deploy.repository; import com.qqchen.deploy.backend.deploy.entity.Environment; import com.qqchen.deploy.backend.framework.repository.IBaseRepository; +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.query.Param; import org.springframework.stereotype.Repository; +import java.util.List; + /** * 环境数据访问接口 */ @Repository public interface IEnvironmentRepository extends IBaseRepository { + + + @Query(value = "SELECT e.* FROM deploy_environment e " + + "INNER JOIN deploy_project_group_environment pge ON e.id = pge.environment_id " + + "WHERE pge.project_group_id = :projectGroupId", + nativeQuery = true) + List findByProjectGroupId(@Param("projectGroupId") Long projectGroupId); + + @Query(value = "SELECT COUNT(*) FROM deploy_environment e " + + "INNER JOIN deploy_project_group_environment pge ON e.id = pge.environment_id " + + "WHERE pge.project_group_id = :projectGroupId", + nativeQuery = true) + Integer countByProjectGroupId(@Param("projectGroupId") Long projectGroupId); + } \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/repository/IProjectGroupRepository.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/repository/IProjectGroupRepository.java index a59bf36b..0b0157a1 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/repository/IProjectGroupRepository.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/repository/IProjectGroupRepository.java @@ -2,8 +2,15 @@ package com.qqchen.deploy.backend.deploy.repository; import com.qqchen.deploy.backend.deploy.entity.ProjectGroup; import com.qqchen.deploy.backend.framework.repository.IBaseRepository; +import com.querydsl.core.types.Predicate; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import org.springframework.data.jpa.repository.Query; import org.springframework.stereotype.Repository; +import java.util.List; + @Repository public interface IProjectGroupRepository extends IBaseRepository { -} \ No newline at end of file + +} \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IApplicationService.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IApplicationService.java index 4057a1f9..e1bb0d94 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IApplicationService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IApplicationService.java @@ -2,7 +2,8 @@ package com.qqchen.deploy.backend.deploy.service; import com.qqchen.deploy.backend.deploy.dto.ApplicationDTO; import com.qqchen.deploy.backend.deploy.entity.Application; +import com.qqchen.deploy.backend.deploy.query.ApplicationQuery; import com.qqchen.deploy.backend.framework.service.IBaseService; -public interface IApplicationService extends IBaseService { +public interface IApplicationService extends IBaseService { } \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IEnvironmentService.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IEnvironmentService.java index d47e8dfb..54a7e5a3 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IEnvironmentService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IEnvironmentService.java @@ -2,6 +2,7 @@ package com.qqchen.deploy.backend.deploy.service; import com.qqchen.deploy.backend.deploy.dto.EnvironmentDTO; import com.qqchen.deploy.backend.deploy.entity.Environment; +import com.qqchen.deploy.backend.deploy.query.EnvironmentQuery; import com.qqchen.deploy.backend.framework.service.IBaseService; import java.util.List; @@ -9,7 +10,7 @@ import java.util.List; /** * 环境服务接口 */ -public interface IEnvironmentService extends IBaseService { +public interface IEnvironmentService extends IBaseService { /** * 获取项目的环境列表 diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IExternalSystemService.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IExternalSystemService.java index a674a969..22e0558c 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IExternalSystemService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IExternalSystemService.java @@ -3,8 +3,9 @@ package com.qqchen.deploy.backend.deploy.service; import com.qqchen.deploy.backend.deploy.entity.ExternalSystem; import com.qqchen.deploy.backend.framework.service.IBaseService; import com.qqchen.deploy.backend.system.model.ExternalSystemDTO; +import com.qqchen.deploy.backend.system.model.query.ExternalSystemQuery; -public interface IExternalSystemService extends IBaseService { +public interface IExternalSystemService extends IBaseService { /** * 测试连接 diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IProjectGroupService.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IProjectGroupService.java index a71ec439..7e3e0d40 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IProjectGroupService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/IProjectGroupService.java @@ -2,7 +2,11 @@ package com.qqchen.deploy.backend.deploy.service; import com.qqchen.deploy.backend.deploy.dto.ProjectGroupDTO; import com.qqchen.deploy.backend.deploy.entity.ProjectGroup; +import com.qqchen.deploy.backend.deploy.query.ProjectGroupQuery; import com.qqchen.deploy.backend.framework.service.IBaseService; +import org.springframework.data.domain.Page; -public interface IProjectGroupService extends IBaseService { -} \ No newline at end of file +public interface IProjectGroupService extends IBaseService { + + Page page(ProjectGroupQuery query); +} \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ApplicationServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ApplicationServiceImpl.java index c9bc584e..87db0967 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ApplicationServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ApplicationServiceImpl.java @@ -2,11 +2,12 @@ package com.qqchen.deploy.backend.deploy.service.impl; import com.qqchen.deploy.backend.deploy.dto.ApplicationDTO; import com.qqchen.deploy.backend.deploy.entity.Application; +import com.qqchen.deploy.backend.deploy.query.ApplicationQuery; import com.qqchen.deploy.backend.deploy.service.IApplicationService; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; import org.springframework.stereotype.Service; @Service -public class ApplicationServiceImpl extends BaseServiceImpl implements IApplicationService { +public class ApplicationServiceImpl extends BaseServiceImpl implements IApplicationService { } \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/EnvironmentServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/EnvironmentServiceImpl.java index 385ea13a..d2211063 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/EnvironmentServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/EnvironmentServiceImpl.java @@ -4,6 +4,7 @@ import com.qqchen.deploy.backend.deploy.converter.EnvironmentConverter; import com.qqchen.deploy.backend.deploy.dto.EnvironmentDTO; import com.qqchen.deploy.backend.deploy.entity.Environment; import com.qqchen.deploy.backend.deploy.entity.QEnvironment; +import com.qqchen.deploy.backend.deploy.query.EnvironmentQuery; import com.qqchen.deploy.backend.deploy.repository.IEnvironmentRepository; import com.qqchen.deploy.backend.deploy.service.IEnvironmentService; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; @@ -20,7 +21,7 @@ import java.util.stream.Collectors; * 环境服务实现类 */ @Service -public class EnvironmentServiceImpl extends BaseServiceImpl implements IEnvironmentService { +public class EnvironmentServiceImpl extends BaseServiceImpl implements IEnvironmentService { @Resource private IEnvironmentRepository environmentRepository; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ExternalSystemServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ExternalSystemServiceImpl.java index a0b60056..30f2993c 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ExternalSystemServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ExternalSystemServiceImpl.java @@ -13,6 +13,7 @@ import com.qqchen.deploy.backend.deploy.integration.IExternalSystemIntegration; import com.qqchen.deploy.backend.system.model.ExternalSystemDTO; import com.qqchen.deploy.backend.deploy.repository.IExternalSystemRepository; import com.qqchen.deploy.backend.deploy.service.IExternalSystemService; +import com.qqchen.deploy.backend.system.model.query.ExternalSystemQuery; import jakarta.annotation.PostConstruct; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; @@ -41,8 +42,7 @@ import static com.qqchen.deploy.backend.framework.annotation.ServiceType.Type.DA @Slf4j @Service @ServiceType(DATABASE) -public class ExternalSystemServiceImpl extends BaseServiceImpl - implements IExternalSystemService { +public class ExternalSystemServiceImpl extends BaseServiceImpl implements IExternalSystemService { @Resource private IExternalSystemRepository externalSystemRepository; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ProjectGroupServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ProjectGroupServiceImpl.java index a6d63126..ba1d199d 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ProjectGroupServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/deploy/service/impl/ProjectGroupServiceImpl.java @@ -1,15 +1,51 @@ package com.qqchen.deploy.backend.deploy.service.impl; import com.qqchen.deploy.backend.deploy.dto.ProjectGroupDTO; +import com.qqchen.deploy.backend.deploy.entity.Application; import com.qqchen.deploy.backend.deploy.entity.ProjectGroup; +import com.qqchen.deploy.backend.deploy.query.ProjectGroupQuery; +import com.qqchen.deploy.backend.deploy.repository.IApplicationRepository; +import com.qqchen.deploy.backend.deploy.repository.IEnvironmentRepository; +import com.qqchen.deploy.backend.deploy.repository.IProjectGroupRepository; +import com.qqchen.deploy.backend.deploy.service.IEnvironmentService; import com.qqchen.deploy.backend.deploy.service.IProjectGroupService; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; +import jakarta.annotation.Resource; import jakarta.persistence.Query; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageImpl; +import org.springframework.data.domain.PageRequest; +import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.List; + +import static java.util.stream.Collectors.toList; + @Service -public class ProjectGroupServiceImpl extends BaseServiceImpl implements IProjectGroupService { +public class ProjectGroupServiceImpl extends BaseServiceImpl implements IProjectGroupService { + + @Resource + private IProjectGroupRepository projectGroupRepository; + + @Resource + private IApplicationRepository applicationRepository; + + @Resource + private IEnvironmentRepository environmentRepository; + + + @Override + public Page page(ProjectGroupQuery query) { + Page page = super.page(query); + List result = page.getContent().stream().map(projectGroupDTO -> { + projectGroupDTO.setTotalApplications(applicationRepository.countByProjectGroupId(projectGroupDTO.getId())); + projectGroupDTO.setTotalEnvironments(environmentRepository.countByProjectGroupId(projectGroupDTO.getId())); + return projectGroupDTO; + }).collect(toList()); + return new PageImpl<>(result, page.getPageable(), page.getTotalElements()); + } @Override @Transactional diff --git a/backend/src/main/java/com/qqchen/deploy/backend/framework/config/DependencyInjectionPostProcessor.java b/backend/src/main/java/com/qqchen/deploy/backend/framework/config/DependencyInjectionPostProcessor.java index c6ab3ed0..c3ce64bb 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/framework/config/DependencyInjectionPostProcessor.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/framework/config/DependencyInjectionPostProcessor.java @@ -7,6 +7,7 @@ import com.qqchen.deploy.backend.framework.dto.BaseDTO; import com.qqchen.deploy.backend.framework.enums.ResponseCode; import com.qqchen.deploy.backend.framework.exception.BusinessException; import com.qqchen.deploy.backend.framework.exception.DependencyInjectionException; +import com.qqchen.deploy.backend.framework.query.BaseQuery; import com.qqchen.deploy.backend.framework.repository.IBaseRepository; import com.qqchen.deploy.backend.framework.service.IBaseService; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; @@ -34,7 +35,7 @@ public class DependencyInjectionPostProcessor implements BeanPostProcessor, Disp private final ApplicationContext applicationContext; - private final Map, IBaseService> serviceCache = new ConcurrentHashMap<>(); + private final Map, IBaseService> serviceCache = new ConcurrentHashMap<>(); private final Map, IBaseRepository> repositoryCache = new ConcurrentHashMap<>(); @@ -52,7 +53,7 @@ public class DependencyInjectionPostProcessor implements BeanPostProcessor, Disp if (bean instanceof BaseController controller) { return injectControllerDependencies(controller, beanName); } - if (bean instanceof BaseServiceImpl service) { + if (bean instanceof BaseServiceImpl service) { return injectServiceDependencies(service, beanName); } } catch (Exception e) { @@ -65,20 +66,20 @@ public class DependencyInjectionPostProcessor implements BeanPostProcessor, Disp } // Controller 依赖注入相关方法 - private , D extends BaseDTO, ID extends Serializable> + private , D extends BaseDTO, Q extends BaseQuery, ID extends Serializable> Object injectControllerDependencies(BaseController controller, String beanName) { Class entityClass = resolveEntityClass(controller); if (entityClass == null) { return controller; } - IBaseService cachedService = serviceCache.computeIfAbsent( + IBaseService cachedService = serviceCache.computeIfAbsent( entityClass, key -> findServiceForEntity(entityClass, beanName) ); try { - IBaseService service = (IBaseService) cachedService; + IBaseService service = (IBaseService) cachedService; ReflectionUtils.setField("service", controller, service); log.debug("Successfully injected service {} for controller {}", service.getClass().getSimpleName(), @@ -94,12 +95,12 @@ public class DependencyInjectionPostProcessor implements BeanPostProcessor, Disp @SuppressWarnings("unchecked") private , ID extends Serializable> - IBaseService findServiceForEntity(Class entityClass, String controllerName) { + IBaseService findServiceForEntity(Class entityClass, String controllerName) { String serviceBeanName = "i" + entityClass.getSimpleName() + "Service"; log.debug("Looking for service bean: {}", serviceBeanName); if (applicationContext.containsBean(serviceBeanName)) { - return (IBaseService) applicationContext.getBean(serviceBeanName); + return (IBaseService) applicationContext.getBean(serviceBeanName); } return Arrays.stream(applicationContext.getBeanNamesForType(IBaseService.class)) @@ -113,7 +114,7 @@ public class DependencyInjectionPostProcessor implements BeanPostProcessor, Disp @SuppressWarnings("unchecked") private , ID extends Serializable> - IBaseService tryGetService(String beanName, Class entityClass, String controllerName) { + IBaseService tryGetService(String beanName, Class entityClass, String controllerName) { try { Class serviceClass = applicationContext.getType(beanName); if (serviceClass == null) { @@ -127,7 +128,7 @@ public class DependencyInjectionPostProcessor implements BeanPostProcessor, Disp serviceGenericTypes.length > 0 && entityClass.equals(serviceGenericTypes[0])) { log.debug("Found matching service: {} for entity: {}", beanName, entityClass.getSimpleName()); - return (IBaseService) applicationContext.getBean(beanName); + return (IBaseService) applicationContext.getBean(beanName); } } catch (Exception e) { log.warn("Failed to analyze service bean: {} for controller: {}", beanName, controllerName, e); @@ -136,8 +137,8 @@ public class DependencyInjectionPostProcessor implements BeanPostProcessor, Disp } // Service 依赖注入相关方法 - private , D extends BaseDTO, ID extends Serializable> - Object injectServiceDependencies(BaseServiceImpl service, String beanName) { + private , D extends BaseDTO, Q extends BaseQuery, ID extends Serializable> + Object injectServiceDependencies(BaseServiceImpl service, String beanName) { Class entityClass = resolveEntityClass(service); log.debug("Resolving dependencies for entity: {}", entityClass.getSimpleName()); @@ -180,8 +181,8 @@ public class DependencyInjectionPostProcessor implements BeanPostProcessor, Disp // 辅助方法,用于注入具体的依赖 @SuppressWarnings("unchecked") - private , D extends BaseDTO, ID extends Serializable> - void injectRepository(BaseServiceImpl service, Class entityClass) { + private , D extends BaseDTO, Q extends BaseQuery, ID extends Serializable> + void injectRepository(BaseServiceImpl service, Class entityClass) { String repositoryBeanName = "I" + entityClass.getSimpleName() + "Repository"; log.debug("正在查找 Repository: {}", repositoryBeanName); @@ -207,8 +208,8 @@ public class DependencyInjectionPostProcessor implements BeanPostProcessor, Disp } @SuppressWarnings("unchecked") - private , D extends BaseDTO, ID extends Serializable> - void injectConverter(BaseServiceImpl service, Class entityClass) { + private , D extends BaseDTO, Q extends BaseQuery, ID extends Serializable> + void injectConverter(BaseServiceImpl service, Class entityClass) { String converterBeanName = entityClass.getSimpleName().substring(0, 1).toLowerCase() + entityClass.getSimpleName().substring(1) + "ConverterImpl"; log.debug("正在查找 Converter: {}", converterBeanName); @@ -236,8 +237,8 @@ public class DependencyInjectionPostProcessor implements BeanPostProcessor, Disp } @SuppressWarnings("unchecked") - private , D extends BaseDTO, ID extends Serializable> - void injectEntityPath(BaseServiceImpl service, Class entityClass) { + private , D extends BaseDTO, Q extends BaseQuery, ID extends Serializable> + void injectEntityPath(BaseServiceImpl service, Class entityClass) { try { EntityPath entityPath = (EntityPath) entityPathCache.computeIfAbsent( entityClass, diff --git a/backend/src/main/java/com/qqchen/deploy/backend/framework/controller/BaseController.java b/backend/src/main/java/com/qqchen/deploy/backend/framework/controller/BaseController.java index e09b400b..3e8da949 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/framework/controller/BaseController.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/framework/controller/BaseController.java @@ -20,7 +20,7 @@ import java.util.concurrent.CompletableFuture; @Validated public abstract class BaseController, D extends BaseDTO, ID extends Serializable, Q extends BaseQuery> { - protected IBaseService service; + protected IBaseService service; @PostMapping public Response create(@Validated @RequestBody D dto) { diff --git a/backend/src/main/java/com/qqchen/deploy/backend/framework/service/IBaseService.java b/backend/src/main/java/com/qqchen/deploy/backend/framework/service/IBaseService.java index 1585c06e..e6c9b0d0 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/framework/service/IBaseService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/framework/service/IBaseService.java @@ -11,7 +11,7 @@ import java.util.List; /** * 通用服务接口 */ -public interface IBaseService, D extends BaseDTO, ID extends Serializable> { +public interface IBaseService, D extends BaseDTO, Q extends BaseQuery, ID extends Serializable> { D create(D dto); D update(ID id, D dto); @@ -22,9 +22,9 @@ public interface IBaseService, D extends BaseDTO, ID extend List findAll(); - Page page(BaseQuery query); + Page page(Q query); - List findAll(BaseQuery query); + List findAll(Q query); void batchProcess(List dtos); @@ -35,4 +35,4 @@ public interface IBaseService, D extends BaseDTO, ID extend T findByIdWithLock(ID id); D updateWithRetry(ID id, D dto); -} \ No newline at end of file +} \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/framework/service/impl/BaseServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/framework/service/impl/BaseServiceImpl.java index de757de6..5600ea9a 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/framework/service/impl/BaseServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/framework/service/impl/BaseServiceImpl.java @@ -49,8 +49,7 @@ import com.qqchen.deploy.backend.framework.annotation.ServiceType; @Transactional(readOnly = true) @Slf4j -public abstract class BaseServiceImpl, D extends BaseDTO, ID extends Serializable> - implements IBaseService { +public abstract class BaseServiceImpl, D extends BaseDTO, Q extends BaseQuery, ID extends Serializable> implements IBaseService { protected IBaseRepository repository; protected BaseConverter converter; @@ -101,7 +100,7 @@ public abstract class BaseServiceImpl, D extends BaseDTO, I } @Override - public List findAll(BaseQuery query) { + public List findAll(Q query) { validateDatabaseOperation("findAll"); if (query == null) { return findAll(); @@ -113,7 +112,7 @@ public abstract class BaseServiceImpl, D extends BaseDTO, I } @Override - public Page page(BaseQuery query) { + public Page page(Q query) { validateDatabaseOperation("page"); Page page = repository.findAll(createQueryPredicate(query), createPageRequest(query)); return converter.toDtoPage(page); diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/IDepartmentService.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/IDepartmentService.java index 535e8f65..ab4d75de 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/IDepartmentService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/IDepartmentService.java @@ -3,11 +3,12 @@ package com.qqchen.deploy.backend.system.service; import com.qqchen.deploy.backend.system.entity.Department; import com.qqchen.deploy.backend.framework.service.IBaseService; import com.qqchen.deploy.backend.system.model.DepartmentDTO; +import com.qqchen.deploy.backend.system.model.query.DepartmentQuery; import com.qqchen.deploy.backend.system.model.response.DepartmentResponse; import java.util.List; -public interface IDepartmentService extends IBaseService { +public interface IDepartmentService extends IBaseService { /** * 获取部门树 diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/IMenuService.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/IMenuService.java index 8a4e2849..5f8f19ac 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/IMenuService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/IMenuService.java @@ -3,12 +3,13 @@ package com.qqchen.deploy.backend.system.service; import com.qqchen.deploy.backend.framework.service.IBaseService; import com.qqchen.deploy.backend.system.entity.Menu; import com.qqchen.deploy.backend.system.model.MenuDTO; +import com.qqchen.deploy.backend.system.model.query.MenuQuery; import com.qqchen.deploy.backend.system.model.response.MenuPermissionTreeResponse; import com.qqchen.deploy.backend.system.model.response.MenuResponse; import java.util.List; -public interface IMenuService extends IBaseService { +public interface IMenuService extends IBaseService { /** * 获取菜单树 diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/IPermissionService.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/IPermissionService.java index 8f8061ca..fce71a3c 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/IPermissionService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/IPermissionService.java @@ -3,9 +3,11 @@ package com.qqchen.deploy.backend.system.service; import com.qqchen.deploy.backend.system.entity.Permission; import com.qqchen.deploy.backend.framework.service.IBaseService; import com.qqchen.deploy.backend.system.model.PermissionDTO; +import com.qqchen.deploy.backend.system.model.query.PermissionQuery; + import java.util.List; -public interface IPermissionService extends IBaseService { +public interface IPermissionService extends IBaseService { List listAllEnabled(); List listByMenuId(Long menuId); List listByIds(List ids); diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/IRoleService.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/IRoleService.java index eb846553..a3569320 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/IRoleService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/IRoleService.java @@ -4,10 +4,11 @@ import com.qqchen.deploy.backend.framework.service.IBaseService; import com.qqchen.deploy.backend.system.entity.Role; import com.qqchen.deploy.backend.system.model.RoleDTO; import com.qqchen.deploy.backend.system.model.PermissionDTO; +import com.qqchen.deploy.backend.system.model.query.RoleQuery; import java.util.List; -public interface IRoleService extends IBaseService { +public interface IRoleService extends IBaseService { /** * 验证角色编码是否存在 diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/IRoleTagService.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/IRoleTagService.java index 92c7c6d3..06ab752b 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/IRoleTagService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/IRoleTagService.java @@ -3,7 +3,8 @@ package com.qqchen.deploy.backend.system.service; import com.qqchen.deploy.backend.system.entity.RoleTag; import com.qqchen.deploy.backend.framework.service.IBaseService; import com.qqchen.deploy.backend.system.model.RoleTagDTO; +import com.qqchen.deploy.backend.system.model.query.RoleTagQuery; -public interface IRoleTagService extends IBaseService { +public interface IRoleTagService extends IBaseService { } \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/ISysParamService.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/ISysParamService.java index 556ffff8..ece92f21 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/ISysParamService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/ISysParamService.java @@ -3,6 +3,7 @@ package com.qqchen.deploy.backend.system.service; import com.qqchen.deploy.backend.system.entity.SysParam; import com.qqchen.deploy.backend.framework.service.IBaseService; import com.qqchen.deploy.backend.system.model.SysParamDTO; +import com.qqchen.deploy.backend.system.model.query.SysParamQuery; -public interface ISysParamService extends IBaseService { +public interface ISysParamService extends IBaseService { } \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/ITenantService.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/ITenantService.java index 617326df..eaf5fb60 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/ITenantService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/ITenantService.java @@ -3,6 +3,7 @@ package com.qqchen.deploy.backend.system.service; import com.qqchen.deploy.backend.system.entity.Tenant; import com.qqchen.deploy.backend.framework.service.IBaseService; import com.qqchen.deploy.backend.system.model.TenantDTO; +import com.qqchen.deploy.backend.system.model.query.TenantQuery; /** * 租户服务接口 @@ -10,7 +11,7 @@ import com.qqchen.deploy.backend.system.model.TenantDTO; * @author QQChen * @version 1.0.0 */ -public interface ITenantService extends IBaseService { +public interface ITenantService extends IBaseService { /** * 更新租户启用状态 diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/IUserService.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/IUserService.java index 06e5c1f3..844a4775 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/IUserService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/IUserService.java @@ -3,6 +3,7 @@ package com.qqchen.deploy.backend.system.service; import com.qqchen.deploy.backend.system.model.UserDTO; import com.qqchen.deploy.backend.framework.annotation.Audited; import com.qqchen.deploy.backend.framework.service.IBaseService; +import com.qqchen.deploy.backend.system.model.query.UserQuery; import com.qqchen.deploy.backend.system.model.request.LoginRequest; import com.qqchen.deploy.backend.system.model.response.LoginResponse; import com.qqchen.deploy.backend.system.entity.User; @@ -12,7 +13,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.List; -public interface IUserService extends IBaseService { +public interface IUserService extends IBaseService { LoginResponse login(LoginRequest request); UserDTO register(UserRequest request); boolean checkUsernameExists(String username); diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/DepartmentServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/DepartmentServiceImpl.java index a22235b6..2e0c939e 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/DepartmentServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/DepartmentServiceImpl.java @@ -6,6 +6,7 @@ import com.qqchen.deploy.backend.framework.enums.ResponseCode; import com.qqchen.deploy.backend.framework.exception.UniqueConstraintException; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; import com.qqchen.deploy.backend.system.model.DepartmentDTO; +import com.qqchen.deploy.backend.system.model.query.DepartmentQuery; import com.qqchen.deploy.backend.system.model.response.DepartmentResponse; import com.qqchen.deploy.backend.system.repository.IDepartmentRepository; import com.qqchen.deploy.backend.system.repository.IUserRepository; @@ -22,7 +23,7 @@ import static com.qqchen.deploy.backend.framework.annotation.ServiceType.Type.DA @Slf4j @Service @ServiceType(DATABASE) -public class DepartmentServiceImpl extends BaseServiceImpl implements IDepartmentService { +public class DepartmentServiceImpl extends BaseServiceImpl implements IDepartmentService { @Resource private IDepartmentRepository departmentRepository; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/MenuServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/MenuServiceImpl.java index 1d1bb770..855921a2 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/MenuServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/MenuServiceImpl.java @@ -7,6 +7,7 @@ import com.qqchen.deploy.backend.framework.annotation.ServiceType; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; import com.qqchen.deploy.backend.system.model.MenuDTO; import com.qqchen.deploy.backend.system.model.UserDTO; +import com.qqchen.deploy.backend.system.model.query.MenuQuery; import com.qqchen.deploy.backend.system.model.response.MenuPermissionTreeResponse; import com.qqchen.deploy.backend.system.model.response.MenuResponse; import com.qqchen.deploy.backend.system.repository.IMenuRepository; @@ -31,7 +32,7 @@ import static com.qqchen.deploy.backend.framework.annotation.ServiceType.Type.DA @Slf4j @Service @ServiceType(DATABASE) -public class MenuServiceImpl extends BaseServiceImpl implements IMenuService { +public class MenuServiceImpl extends BaseServiceImpl implements IMenuService { @Resource private IMenuRepository menuRepository; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/PermissionServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/PermissionServiceImpl.java index eff50701..4c93b373 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/PermissionServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/PermissionServiceImpl.java @@ -6,6 +6,7 @@ import com.qqchen.deploy.backend.system.entity.Permission; import com.qqchen.deploy.backend.framework.annotation.ServiceType; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; import com.qqchen.deploy.backend.system.model.PermissionDTO; +import com.qqchen.deploy.backend.system.model.query.PermissionQuery; import com.qqchen.deploy.backend.system.repository.IMenuRepository; import com.qqchen.deploy.backend.system.repository.IPermissionRepository; import com.qqchen.deploy.backend.system.service.IPermissionService; @@ -22,7 +23,7 @@ import static com.qqchen.deploy.backend.framework.annotation.ServiceType.Type.DA @Slf4j @Service @ServiceType(DATABASE) -public class PermissionServiceImpl extends BaseServiceImpl implements IPermissionService { +public class PermissionServiceImpl extends BaseServiceImpl implements IPermissionService { @Resource private IPermissionRepository permissionRepository; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/RoleServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/RoleServiceImpl.java index 6ebe584f..affffeb2 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/RoleServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/RoleServiceImpl.java @@ -12,6 +12,7 @@ import com.qqchen.deploy.backend.framework.exception.UniqueConstraintException; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; import com.qqchen.deploy.backend.system.model.PermissionDTO; import com.qqchen.deploy.backend.system.model.RoleDTO; +import com.qqchen.deploy.backend.system.model.query.RoleQuery; import com.qqchen.deploy.backend.system.repository.IMenuRepository; import com.qqchen.deploy.backend.system.repository.IPermissionRepository; import com.qqchen.deploy.backend.system.repository.IRoleRepository; @@ -35,7 +36,7 @@ import static com.qqchen.deploy.backend.framework.annotation.ServiceType.Type.DA @Slf4j @Service @ServiceType(DATABASE) -public class RoleServiceImpl extends BaseServiceImpl implements IRoleService { +public class RoleServiceImpl extends BaseServiceImpl implements IRoleService { @Resource private IRoleRepository roleRepository; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/RoleTagServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/RoleTagServiceImpl.java index 4d7e8a48..4f3455bf 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/RoleTagServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/RoleTagServiceImpl.java @@ -6,6 +6,7 @@ import com.qqchen.deploy.backend.framework.exception.BusinessException; import com.qqchen.deploy.backend.framework.exception.UniqueConstraintException; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; import com.qqchen.deploy.backend.system.model.RoleTagDTO; +import com.qqchen.deploy.backend.system.model.query.RoleTagQuery; import com.qqchen.deploy.backend.system.repository.IRoleTagRepository; import com.qqchen.deploy.backend.system.service.IRoleTagService; import com.qqchen.deploy.backend.framework.annotation.ServiceType; @@ -19,7 +20,7 @@ import static com.qqchen.deploy.backend.framework.annotation.ServiceType.Type.DA @Slf4j @Service @ServiceType(DATABASE) -public class RoleTagServiceImpl extends BaseServiceImpl implements IRoleTagService { +public class RoleTagServiceImpl extends BaseServiceImpl implements IRoleTagService { @Resource private IRoleTagRepository roleTagRepository; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/SysParamServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/SysParamServiceImpl.java index 7c45490c..de7d2dc3 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/SysParamServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/SysParamServiceImpl.java @@ -5,6 +5,7 @@ import com.qqchen.deploy.backend.system.entity.SysParam; import com.qqchen.deploy.backend.framework.annotation.ServiceType; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; import com.qqchen.deploy.backend.system.model.SysParamDTO; +import com.qqchen.deploy.backend.system.model.query.SysParamQuery; import com.qqchen.deploy.backend.system.repository.ISysParamRepository; import com.qqchen.deploy.backend.system.service.ISysParamService; import jakarta.annotation.Resource; @@ -16,7 +17,7 @@ import static com.qqchen.deploy.backend.framework.annotation.ServiceType.Type.DA @Slf4j @Service @ServiceType(DATABASE) -public class SysParamServiceImpl extends BaseServiceImpl implements ISysParamService { +public class SysParamServiceImpl extends BaseServiceImpl implements ISysParamService { @Resource private SysParamConverter converter; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/TenantServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/TenantServiceImpl.java index 5d73f4a4..19eb7f0f 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/TenantServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/TenantServiceImpl.java @@ -4,6 +4,7 @@ import com.qqchen.deploy.backend.system.entity.Tenant; import com.qqchen.deploy.backend.framework.annotation.ServiceType; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; import com.qqchen.deploy.backend.system.model.TenantDTO; +import com.qqchen.deploy.backend.system.model.query.TenantQuery; import com.qqchen.deploy.backend.system.repository.ITenantRepository; import com.qqchen.deploy.backend.system.service.ITenantService; import jakarta.annotation.Resource; @@ -25,7 +26,7 @@ import static com.qqchen.deploy.backend.framework.annotation.ServiceType.Type.DA @Slf4j @Service @ServiceType(DATABASE) -public class TenantServiceImpl extends BaseServiceImpl implements ITenantService { +public class TenantServiceImpl extends BaseServiceImpl implements ITenantService { @Resource private ITenantRepository tenantRepository; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/UserServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/UserServiceImpl.java index 0976fb01..cd009871 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/UserServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/system/service/impl/UserServiceImpl.java @@ -10,6 +10,7 @@ import com.qqchen.deploy.backend.framework.security.SecurityUtils; import com.qqchen.deploy.backend.framework.security.util.JwtTokenUtil; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; import com.qqchen.deploy.backend.framework.utils.PasswordGenerator; +import com.qqchen.deploy.backend.system.model.query.UserQuery; import com.qqchen.deploy.backend.system.model.request.LoginRequest; import com.qqchen.deploy.backend.system.model.request.UserRequest; import com.qqchen.deploy.backend.system.model.response.LoginResponse; @@ -40,7 +41,7 @@ import static com.qqchen.deploy.backend.framework.annotation.ServiceType.Type.DA @Service @ServiceType(DATABASE) @Slf4j -public class UserServiceImpl extends BaseServiceImpl implements IUserService { +public class UserServiceImpl extends BaseServiceImpl implements IUserService { @Resource private RoleConverter roleConverter; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowDefinitionService.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowDefinitionService.java index 78fbddf6..c9e05041 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowDefinitionService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowDefinitionService.java @@ -7,6 +7,7 @@ import com.qqchen.deploy.backend.workflow.dto.WorkflowDesignDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowExecutionDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowInstanceCreateDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowInstanceDTO; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowDefinitionQuery; import com.qqchen.deploy.backend.workflow.entity.WorkflowDefinition; import com.qqchen.deploy.backend.workflow.enums.WorkflowCategoryEnum; import org.flowable.engine.repository.Deployment; @@ -19,7 +20,7 @@ import java.util.Map; /** * 工作流定义服务接口 */ -public interface IWorkflowDefinitionService extends IBaseService { +public interface IWorkflowDefinitionService extends IBaseService { WorkflowDefinitionDTO saveWorkflowDesign(WorkflowDefinitionDTO dto) throws Exception; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowInstanceService.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowInstanceService.java index eae62640..6b6c7939 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowInstanceService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowInstanceService.java @@ -5,6 +5,7 @@ import com.qqchen.deploy.backend.workflow.dto.WorkflowHistoricalInstancesDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowInstanceDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowInstanceStartRequest; import com.qqchen.deploy.backend.workflow.dto.WorkflowTemplateWithInstancesDTO; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowInstanceQuery; import com.qqchen.deploy.backend.workflow.entity.WorkflowInstance; import com.qqchen.deploy.backend.workflow.enums.WorkflowInstanceStatusEnums; import com.qqchen.deploy.backend.workflow.dto.query.WorkflowDefinitionQuery; @@ -16,7 +17,7 @@ import java.time.LocalDateTime; import java.util.List; import java.util.Map; -public interface IWorkflowInstanceService extends IBaseService { +public interface IWorkflowInstanceService extends IBaseService { /** * 创建工作流实例并关联Flowable实例 diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowNodeDefinitionService.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowNodeDefinitionService.java index 1ea6b0fe..ef75fc6e 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowNodeDefinitionService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowNodeDefinitionService.java @@ -4,6 +4,7 @@ import com.qqchen.deploy.backend.framework.service.IBaseService; import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeDefinitionCreateDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeDefinitionDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeTypeDefinedDTO; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowDefinitionQuery; import com.qqchen.deploy.backend.workflow.entity.WorkflowNodeDefinition; import com.qqchen.deploy.backend.workflow.enums.NodeCategoryEnums; @@ -12,7 +13,7 @@ import java.util.List; /** * 工作流节点定义服务接口 */ -public interface IWorkflowNodeDefinitionService extends IBaseService { +public interface IWorkflowNodeDefinitionService extends IBaseService { /** diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowNodeInstanceService.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowNodeInstanceService.java index 1c603eac..6ce544c3 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowNodeInstanceService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowNodeInstanceService.java @@ -2,13 +2,14 @@ package com.qqchen.deploy.backend.workflow.service; import com.qqchen.deploy.backend.framework.service.IBaseService; import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeInstanceDTO; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowNodeInstanceQuery; import com.qqchen.deploy.backend.workflow.entity.WorkflowNodeInstance; import com.qqchen.deploy.backend.workflow.enums.WorkflowNodeInstanceStatusEnums; import com.qqchen.deploy.backend.workflow.dto.event.WorkflowNodeInstanceStatusChangeEvent; import java.util.List; -public interface IWorkflowNodeInstanceService extends IBaseService { +public interface IWorkflowNodeInstanceService extends IBaseService { /** * 更新节点实例状态 * diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowDefinitionServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowDefinitionServiceImpl.java index e5a15a6c..77b6332d 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowDefinitionServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowDefinitionServiceImpl.java @@ -6,6 +6,7 @@ import com.qqchen.deploy.backend.workflow.dto.WorkflowDefinitionDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowExecutionDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowTriggerTypeDTO; import com.qqchen.deploy.backend.workflow.dto.definition.workflow.WorkflowDefinitionGraph; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowDefinitionQuery; import com.qqchen.deploy.backend.workflow.entity.WorkflowDefinition; import com.qqchen.deploy.backend.workflow.enums.WorkflowCategoryEnum; import com.qqchen.deploy.backend.workflow.enums.WorkflowDefinitionStatusEnums; @@ -47,7 +48,7 @@ import java.util.stream.Collectors; */ @Slf4j @Service -public class WorkflowDefinitionServiceImpl extends BaseServiceImpl implements IWorkflowDefinitionService { +public class WorkflowDefinitionServiceImpl extends BaseServiceImpl implements IWorkflowDefinitionService { @Resource private RepositoryService repositoryService; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowInstanceServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowInstanceServiceImpl.java index 2d90d09e..49cb1dcc 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowInstanceServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowInstanceServiceImpl.java @@ -9,6 +9,7 @@ import com.qqchen.deploy.backend.workflow.dto.WorkflowHistoricalInstancesDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowInstanceDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowInstanceStartRequest; import com.qqchen.deploy.backend.workflow.dto.WorkflowTemplateWithInstancesDTO; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowInstanceQuery; import com.qqchen.deploy.backend.workflow.entity.WorkflowDefinition; import com.qqchen.deploy.backend.workflow.entity.WorkflowInstance; import com.qqchen.deploy.backend.workflow.entity.WorkflowNodeInstance; @@ -46,7 +47,7 @@ import static java.util.stream.Collectors.toList; @Slf4j @Service -public class WorkflowInstanceServiceImpl extends BaseServiceImpl implements IWorkflowInstanceService { +public class WorkflowInstanceServiceImpl extends BaseServiceImpl implements IWorkflowInstanceService { @Resource private IWorkflowDefinitionRepository workflowDefinitionRepository; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowNodeDefinitionServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowNodeDefinitionServiceImpl.java index 6ad8c632..33baee2f 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowNodeDefinitionServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowNodeDefinitionServiceImpl.java @@ -4,6 +4,7 @@ import com.fasterxml.jackson.databind.node.ArrayNode; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeDefinitionDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeTypeDefinedDTO; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowDefinitionQuery; import com.qqchen.deploy.backend.workflow.entity.WorkflowNodeDefinition; import com.qqchen.deploy.backend.workflow.enums.NodeCategoryEnums; import com.qqchen.deploy.backend.workflow.enums.NodeTypeEnums; @@ -34,7 +35,7 @@ import com.qqchen.deploy.backend.workflow.annotation.SchemaPropertyDataSourcePar */ @Slf4j @Service -public class WorkflowNodeDefinitionServiceImpl extends BaseServiceImpl implements IWorkflowNodeDefinitionService { +public class WorkflowNodeDefinitionServiceImpl extends BaseServiceImpl implements IWorkflowNodeDefinitionService { @Resource private IWorkflowNodeDefinitionRepository workflowNodeDefinitionRepository; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowNodeInstanceServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowNodeInstanceServiceImpl.java index 327cfd90..f72b32dc 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowNodeInstanceServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowNodeInstanceServiceImpl.java @@ -3,6 +3,7 @@ package com.qqchen.deploy.backend.workflow.service.impl; import com.qqchen.deploy.backend.framework.service.impl.BaseServiceImpl; import com.qqchen.deploy.backend.workflow.converter.WorkflowNodeInstanceConverter; import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeInstanceDTO; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowNodeInstanceQuery; import com.qqchen.deploy.backend.workflow.entity.WorkflowInstance; import com.qqchen.deploy.backend.workflow.entity.WorkflowNodeInstance; import com.qqchen.deploy.backend.workflow.enums.WorkflowNodeInstanceStatusEnums; @@ -21,7 +22,7 @@ import java.util.stream.Collectors; @Slf4j @Service -public class WorkflowNodeInstanceServiceImpl extends BaseServiceImpl implements IWorkflowNodeInstanceService { +public class WorkflowNodeInstanceServiceImpl extends BaseServiceImpl implements IWorkflowNodeInstanceService { @Resource private IWorkflowNodeInstanceRepository workflowNodeInstanceRepository;