08ea5fbe98
添加用户管理视图、API和状态管理文件
541 lines
23 KiB
XML
541 lines
23 KiB
XML
<?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>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-parent</artifactId>
|
|
<version>3.4.1</version>
|
|
<relativePath />
|
|
</parent>
|
|
|
|
<groupId>io.destiny</groupId>
|
|
<artifactId>everything-is-suitable-api</artifactId>
|
|
<version>1.0.0</version>
|
|
<packaging>pom</packaging>
|
|
|
|
<name>Everything Is Suitable API</name>
|
|
<description>Everything Is Suitable API Parent Project</description>
|
|
|
|
<properties>
|
|
<java.version>21</java.version>
|
|
<maven.compiler.source>21</maven.compiler.source>
|
|
<maven.compiler.target>21</maven.compiler.target>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
<spring-boot.version>3.4.1</spring-boot.version>
|
|
<guava.version>33.3.1-jre</guava.version>
|
|
<caffeine.version>3.1.8</caffeine.version>
|
|
<commons-lang3.version>3.17.0</commons-lang3.version>
|
|
<commons-collections4.version>4.4</commons-collections4.version>
|
|
<commons-io.version>2.18.0</commons-io.version>
|
|
<commons-codec.version>1.17.1</commons-codec.version>
|
|
<commons-validator.version>1.9.0</commons-validator.version>
|
|
<bouncycastle.version>1.78.1</bouncycastle.version>
|
|
<logback.version>1.5.16</logback.version>
|
|
<slf4j.version>2.0.16</slf4j.version>
|
|
<flyway.version>11.0.1</flyway.version>
|
|
<springdoc.version>2.8.13</springdoc.version>
|
|
<spring-data.version>2025.0.0</spring-data.version>
|
|
<jackson.version>2.18.0</jackson.version>
|
|
<hibernate.version>6.6.0.Final</hibernate.version>
|
|
<jjwt.version>0.11.5</jjwt.version>
|
|
<javers.version>7.8.0</javers.version>
|
|
<aliyun.dysmsapi.version>3.0.0</aliyun.dysmsapi.version>
|
|
<aliyun.tea.openapi.version>0.3.9</aliyun.tea.openapi.version>
|
|
<aliyun.tea.util.version>0.2.21</aliyun.tea.util.version>
|
|
<postgresql.version>42.7.4</postgresql.version>
|
|
<r2dbc-postgresql.version>1.0.7.RELEASE</r2dbc-postgresql.version>
|
|
<r2dbc-h2.version>1.0.0.RELEASE</r2dbc-h2.version>
|
|
<spring-cloud.version>2024.0.0</spring-cloud.version>
|
|
<spring-security.version>6.5.0</spring-security.version>
|
|
<jacoco.version>0.8.12</jacoco.version>
|
|
<jacoco.line.coverage>0.70</jacoco.line.coverage>
|
|
<jacoco.branch.coverage>0.60</jacoco.branch.coverage>
|
|
<allure.version>2.29.0</allure.version>
|
|
<aspectj.version>1.9.22</aspectj.version>
|
|
</properties>
|
|
|
|
<modules>
|
|
<module>everything-is-suitable-client-app</module>
|
|
<module>everything-is-suitable-admin-app</module>
|
|
<module>everything-is-suitable-app</module>
|
|
<module>everything-is-suitable-common</module>
|
|
<module>everything-is-suitable-db</module>
|
|
<module>everything-is-suitable-sys</module>
|
|
<module>everything-is-suitable-biz</module>
|
|
<module>everything-is-suitable-gateway</module>
|
|
<module>everything-is-suitable-client</module>
|
|
<module>everything-is-suitable-statistics</module>
|
|
<module>everything-is-suitable-client-api</module>
|
|
<module>everything-is-suitable-admin-api</module>
|
|
</modules>
|
|
|
|
<repositories>
|
|
<repository>
|
|
<id>spring-milestone</id>
|
|
<name>Spring Milestone Repository</name>
|
|
<url>https://repo.spring.io/milestone</url>
|
|
<snapshots>
|
|
<enabled>false</enabled>
|
|
</snapshots>
|
|
</repository>
|
|
</repositories>
|
|
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.springframework.cloud</groupId>
|
|
<artifactId>spring-cloud-dependencies</artifactId>
|
|
<version>${spring-cloud.version}</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-aop</artifactId>
|
|
<version>${spring-boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-configuration-processor</artifactId>
|
|
<version>${spring-boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-validation</artifactId>
|
|
<version>${spring-boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-actuator</artifactId>
|
|
<version>${spring-boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-jdbc</artifactId>
|
|
<version>${spring-boot.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.security</groupId>
|
|
<artifactId>spring-security-crypto</artifactId>
|
|
<version>${spring-security.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.security</groupId>
|
|
<artifactId>spring-security-config</artifactId>
|
|
<version>${spring-security.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework</groupId>
|
|
<artifactId>spring-tx</artifactId>
|
|
<version>6.2.1</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.data</groupId>
|
|
<artifactId>spring-data-commons</artifactId>
|
|
<version>3.5.1</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.postgresql</groupId>
|
|
<artifactId>postgresql</artifactId>
|
|
<version>${postgresql.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.postgresql</groupId>
|
|
<artifactId>r2dbc-postgresql</artifactId>
|
|
<version>${r2dbc-postgresql.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.r2dbc</groupId>
|
|
<artifactId>r2dbc-h2</artifactId>
|
|
<version>${r2dbc-h2.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.guava</groupId>
|
|
<artifactId>guava</artifactId>
|
|
<version>${guava.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.github.ben-manes.caffeine</groupId>
|
|
<artifactId>caffeine</artifactId>
|
|
<version>${caffeine.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-lang3</artifactId>
|
|
<version>${commons-lang3.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-collections4</artifactId>
|
|
<version>${commons-collections4.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>commons-io</groupId>
|
|
<artifactId>commons-io</artifactId>
|
|
<version>${commons-io.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>commons-codec</groupId>
|
|
<artifactId>commons-codec</artifactId>
|
|
<version>${commons-codec.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>commons-validator</groupId>
|
|
<artifactId>commons-validator</artifactId>
|
|
<version>${commons-validator.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.bouncycastle</groupId>
|
|
<artifactId>bcprov-jdk18on</artifactId>
|
|
<version>${bouncycastle.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.slf4j</groupId>
|
|
<artifactId>slf4j-api</artifactId>
|
|
<version>${slf4j.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>ch.qos.logback</groupId>
|
|
<artifactId>logback-classic</artifactId>
|
|
<version>${logback.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>ch.qos.logback</groupId>
|
|
<artifactId>logback-core</artifactId>
|
|
<version>${logback.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.flywaydb</groupId>
|
|
<artifactId>flyway-core</artifactId>
|
|
<version>${flyway.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.flywaydb</groupId>
|
|
<artifactId>flyway-spring-boot-starter</artifactId>
|
|
<version>${flyway.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.flywaydb</groupId>
|
|
<artifactId>flyway-database-postgresql</artifactId>
|
|
<version>${flyway.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springdoc</groupId>
|
|
<artifactId>springdoc-openapi-starter-webflux-ui</artifactId>
|
|
<version>${springdoc.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springdoc</groupId>
|
|
<artifactId>springdoc-openapi-starter-webflux-api</artifactId>
|
|
<version>${springdoc.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.jsonwebtoken</groupId>
|
|
<artifactId>jjwt-api</artifactId>
|
|
<version>${jjwt.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.jsonwebtoken</groupId>
|
|
<artifactId>jjwt-impl</artifactId>
|
|
<version>${jjwt.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.jsonwebtoken</groupId>
|
|
<artifactId>jjwt-jackson</artifactId>
|
|
<version>${jjwt.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.javers</groupId>
|
|
<artifactId>javers-core</artifactId>
|
|
<version>${javers.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.aliyun</groupId>
|
|
<artifactId>dysmsapi20170525</artifactId>
|
|
<version>${aliyun.dysmsapi.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.aliyun</groupId>
|
|
<artifactId>tea-openapi</artifactId>
|
|
<version>${aliyun.tea.openapi.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.aliyun</groupId>
|
|
<artifactId>tea-util</artifactId>
|
|
<version>${aliyun.tea.util.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.qameta.allure</groupId>
|
|
<artifactId>allure-junit5</artifactId>
|
|
<version>${allure.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
</dependencyManagement>
|
|
|
|
<build>
|
|
<pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
<version>${spring-boot.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.11.0</version>
|
|
<configuration>
|
|
<source>${java.version}</source>
|
|
<target>${java.version}</target>
|
|
<release>${java.version}</release>
|
|
<compilerArgs>
|
|
<arg>-parameters</arg>
|
|
<arg>-Xlint:all,-options,-processing,-serial</arg>
|
|
</compilerArgs>
|
|
<showWarnings>true</showWarnings>
|
|
<failOnWarning>true</failOnWarning>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
<version>3.3.1</version>
|
|
<configuration>
|
|
<encoding>${project.build.sourceEncoding}</encoding>
|
|
<nonFilteredFileExtensions>
|
|
<nonFilteredFileExtension>ttf</nonFilteredFileExtension>
|
|
<nonFilteredFileExtension>woff</nonFilteredFileExtension>
|
|
<nonFilteredFileExtension>woff2</nonFilteredFileExtension>
|
|
</nonFilteredFileExtensions>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-enforcer-plugin</artifactId>
|
|
<version>3.4.1</version>
|
|
<executions>
|
|
<execution>
|
|
<id>enforce-versions</id>
|
|
<goals>
|
|
<goal>enforce</goal>
|
|
</goals>
|
|
<configuration>
|
|
<rules>
|
|
<requireJavaVersion>
|
|
<version>[21,)</version>
|
|
</requireJavaVersion>
|
|
<requireMavenVersion>
|
|
<version>[3.9.0,)</version>
|
|
</requireMavenVersion>
|
|
<banDuplicatePomDependencyVersions />
|
|
</rules>
|
|
<fail>true</fail>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.jacoco</groupId>
|
|
<artifactId>jacoco-maven-plugin</artifactId>
|
|
<version>${jacoco.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<id>prepare-agent</id>
|
|
<goals>
|
|
<goal>prepare-agent</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>prepare-agent-integration</id>
|
|
<goals>
|
|
<goal>prepare-agent-integration</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>report</id>
|
|
<phase>test</phase>
|
|
<goals>
|
|
<goal>report</goal>
|
|
</goals>
|
|
<configuration>
|
|
<formats>
|
|
<format>HTML</format>
|
|
<format>XML</format>
|
|
</formats>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>report-integration</id>
|
|
<phase>verify</phase>
|
|
<goals>
|
|
<goal>report-integration</goal>
|
|
</goals>
|
|
<configuration>
|
|
<formats>
|
|
<format>HTML</format>
|
|
<format>XML</format>
|
|
</formats>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>check</id>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
<configuration>
|
|
<rules>
|
|
<rule>
|
|
<element>BUNDLE</element>
|
|
<limits>
|
|
<limit>
|
|
<counter>LINE</counter>
|
|
<value>COVEREDRATIO</value>
|
|
<minimum>${jacoco.line.coverage}</minimum>
|
|
</limit>
|
|
<limit>
|
|
<counter>BRANCH</counter>
|
|
<value>COVEREDRATIO</value>
|
|
<minimum>${jacoco.branch.coverage}</minimum>
|
|
</limit>
|
|
</limits>
|
|
</rule>
|
|
</rules>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>io.qameta.allure</groupId>
|
|
<artifactId>allure-maven</artifactId>
|
|
<version>2.14.0</version>
|
|
<configuration>
|
|
<reportVersion>${allure.version}</reportVersion>
|
|
<resultsDirectory>${project.build.directory}/allure-results</resultsDirectory>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>3.2.5</version>
|
|
<configuration>
|
|
<includes>
|
|
<include>**/*Test.java</include>
|
|
<include>**/*Tests.java</include>
|
|
</includes>
|
|
<excludes>
|
|
<exclude>**/*IT.java</exclude>
|
|
<exclude>**/*IntegrationTest.java</exclude>
|
|
</excludes>
|
|
<parallel>methods</parallel>
|
|
<threadCount>4</threadCount>
|
|
<useSystemClassLoader>false</useSystemClassLoader>
|
|
<forkedProcessTimeoutInSeconds>300</forkedProcessTimeoutInSeconds>
|
|
<rerunFailingTestsCount>2</rerunFailingTestsCount>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<version>3.2.5</version>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
<goal>verify</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
<configuration>
|
|
<includes>
|
|
<include>**/*IT.java</include>
|
|
<include>**/*IntegrationTest.java</include>
|
|
</includes>
|
|
<parallel>classes</parallel>
|
|
<threadCount>2</threadCount>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
<version>3.3.1</version>
|
|
<configuration>
|
|
<configLocation>google_checks.xml</configLocation>
|
|
<consoleOutput>true</consoleOutput>
|
|
<failsOnError>true</failsOnError>
|
|
<linkXRef>false</linkXRef>
|
|
</configuration>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.puppycrawl.tools</groupId>
|
|
<artifactId>checkstyle</artifactId>
|
|
<version>10.12.5</version>
|
|
</dependency>
|
|
</dependencies>
|
|
<executions>
|
|
<execution>
|
|
<id>validate</id>
|
|
<phase>validate</phase>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-enforcer-plugin</artifactId>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.jacoco</groupId>
|
|
<artifactId>jacoco-maven-plugin</artifactId>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>local</id>
|
|
<properties>
|
|
<spring.profiles.active>local</spring.profiles.active>
|
|
</properties>
|
|
<activation>
|
|
<activeByDefault>true</activeByDefault>
|
|
</activation>
|
|
</profile>
|
|
<profile>
|
|
<id>dev</id>
|
|
<properties>
|
|
<spring.profiles.active>dev</spring.profiles.active>
|
|
</properties>
|
|
</profile>
|
|
<profile>
|
|
<id>test</id>
|
|
<properties>
|
|
<spring.profiles.active>test</spring.profiles.active>
|
|
</properties>
|
|
</profile>
|
|
<profile>
|
|
<id>prod</id>
|
|
<properties>
|
|
<spring.profiles.active>prod</spring.profiles.active>
|
|
</properties>
|
|
</profile>
|
|
</profiles>
|
|
|
|
</project> |