优化 gradle
diff --git a/build.gradle b/build.gradle
index a4cd5b1..42382ff 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,40 +1,135 @@
plugins {
id 'java'
- id 'org.springframework.boot' version '2.1.6.RELEASE'
- id 'io.spring.dependency-management' version '1.0.8.RELEASE'
+ id 'org.springframework.boot' version '2.1.6.RELEASE' apply false
id 'org.jetbrains.kotlin.jvm' version '1.3.31'
id 'org.jetbrains.kotlin.plugin.spring' version '1.3.31'
+ id 'org.jetbrains.kotlin.plugin.jpa' version '1.3.31' apply false
id "com.palantir.git-version" version "0.12.0-rc2"
- id 'com.palantir.docker' version '0.22.1'
+ id 'com.palantir.docker' version '0.22.1' apply false
}
+group = 'com.supwisdom'
+
allprojects {
repositories {
jcenter()
mavenCentral()
}
-}
+ ext {
+ set('junit_jupiter_version', "5.5.2")
+ set("junit_platform_version", "1.5.2")
+ set("mockitoVersion", "3.1.0")
+ }
-ext {
- set('junit_jupiter_version', "5.5.2")
- set("junit_platform_version", "1.5.2")
- set("mockitoVersion", "3.1.0")
-}
-
-subprojects {
apply plugin: 'java'
- version = '1.0'
- dependencies {
- testImplementation("org.junit.jupiter:junit-jupiter-api:${junit_jupiter_version}")
- testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:${junit_jupiter_version}")
- testRuntimeOnly("org.junit.platform:junit-platform-launcher:${junit_platform_version}")
- testImplementation("io.mockk:mockk:1.9.3")
- testImplementation("org.hamcrest:hamcrest:2.1")
+ apply plugin: 'io.spring.dependency-management'
+
+ sourceCompatibility = JavaVersion.VERSION_1_8
+ targetCompatibility = JavaVersion.VERSION_1_8
+
+ compileKotlin {
+ kotlinOptions {
+ freeCompilerArgs = ['-Xjsr305=strict']
+ jvmTarget = jdkVersion
+ }
+ }
+
+ compileTestKotlin {
+ kotlinOptions {
+ freeCompilerArgs = ['-Xjsr305=strict']
+ jvmTarget = jdkVersion
+ }
+ }
+
+ version = gitVersion()
+ ext {
+ details = versionDetails()
}
}
-bootJar {
- enabled = false
+
+subprojects {
+
+ ext {
+ set('springCloudVersion', "Hoxton.RELEASE")
+ }
+
+ dependencies {
+ ext {
+ slf4jVersion = '1.7.26'
+ beanutilsVersion = '1.9.3'
+ codecVersion = '1.13'
+ lang3Version = '3.9'
+ commonCodecVersion = '1.12'
+ lombokVersion = '1.18.8'
+ javaELVersion = '3.0.0'
+ shedlockVersion = '2.5.0'
+ jose4jVersion = '0.6.5'
+ jcabiManifestsVersion = '1.1'
+ kotlnLogVersion = '1.6.26'
+ slf4jVersion = '1.7.26'
+ gsonVersion = '2.8.5'
+ dbcpVersion = '1.4'
+ log4jVersion = '1.2.17'
+ alibabFastjsonVerison = '1.2.60'
+ beanutilsVersion = '1.9.3'
+ alipaySDKVersion = '3.7.110.ALL'
+ lombokVersion = '1.18.8'
+ resetAssuredVersion = '3.3.0'
+ hamcrestVersion = '2.1'
+ mockkVersion = '1.9.3'
+ kaptchaVersion = '2.3.2'
+ jerseyClientVersion = '1.19'
+ postgresVersion = '42.2.5'
+ }
+ implementation "org.jetbrains.kotlin:kotlin-reflect"
+ implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
+
+ implementation "org.springframework.boot:spring-boot-starter-data-jpa"
+ implementation "org.springframework.boot:spring-boot-starter-data-redis"
+ implementation "org.springframework.boot:spring-boot-starter-validation"
+
+ implementation "javax.validation:validation-api"
+ implementation "org.slf4j:slf4j-parent:${slf4jVersion}"
+ implementation "org.slf4j:slf4j-api:${slf4jVersion}"
+ implementation "org.postgresql:postgresql:${postgresVersion}"
+ implementation "io.github.microutils:kotlin-logging:${kotlnLogVersion}"
+ implementation "org.slf4j:slf4j-parent:${slf4jVersion}"
+ implementation "com.google.code.gson:gson:${gsonVersion}"
+ implementation "commons-dbcp:commons-dbcp:${dbcpVersion}"
+ implementation "log4j:log4j:${log4jVersion}"
+ implementation "com.alibaba:fastjson:${alibabFastjsonVerison}"
+ implementation "com.fasterxml.jackson.module:jackson-module-kotlin"
+
+ // implementation "javax.el:javax.el-api:${javaELVersion}"
+// implementation "javax.servlet:javax.servlet-api:4.0.1"
+
+ annotationProcessor "org.springframework.boot:spring-boot-configuration-processor"
+ annotationProcessor "org.projectlombok:lombok:${lombokVersion}"
+ compileOnly "org.projectlombok:lombok:${lombokVersion}"
+
+ testImplementation "org.springframework.boot:spring-boot-starter-test"
+ testImplementation "org.junit.jupiter:junit-jupiter-api:${junit_jupiter_version}"
+ testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:${junit_jupiter_version}"
+ testRuntimeOnly "org.junit.platform:junit-platform-launcher:${junit_platform_version}"
+ testImplementation "io.mockk:mockk:${mockkVersion}"
+ testImplementation "org.hamcrest:hamcrest:${hamcrestVersion}"
+ testImplementation "io.rest-assured:rest-assured:${resetAssuredVersion}"
+ testImplementation "io.rest-assured:spring-mock-mvc:${resetAssuredVersion}"
+ }
+
+ test {
+ useJUnitPlatform()
+ testLogging {
+ events "passed", "skipped", "failed"
+ }
+ }
+
+ dependencyManagement {
+ imports {
+ mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
+ }
+ }
}
-group = 'com.supwisdom'
\ No newline at end of file
+
diff --git a/oauth/build.gradle b/oauth/build.gradle
index aeffb67..0186ca3 100644
--- a/oauth/build.gradle
+++ b/oauth/build.gradle
@@ -2,7 +2,7 @@
id 'java'
id 'org.springframework.boot'
id 'org.jetbrains.kotlin.jvm'
- id 'org.jetbrains.kotlin.plugin.jpa' version '1.3.31'
+ id 'org.jetbrains.kotlin.plugin.jpa'
id 'org.jetbrains.kotlin.plugin.spring'
id "com.palantir.git-version"
}
diff --git a/payapi-common/build.gradle b/payapi-common/build.gradle
index 106d0ad..0f2f4c6 100644
--- a/payapi-common/build.gradle
+++ b/payapi-common/build.gradle
@@ -1,11 +1,12 @@
plugins {
- id 'java-library'
- id 'maven-publish'
- id "com.palantir.git-version"
+ id "java-library"
+ id "maven-publish"
+ id "org.springframework.boot"
}
-group = rootProject.group
-version = gitVersion()
+bootJar {
+ enabled = false
+}
publishing {
publications {
@@ -21,7 +22,7 @@
// change URLs to point to your repos, e.g. http://my.org/repo
def releasesRepoUrl = "http://ykt-nx.supwisdom.com/repository/ecard-repo/"
def snapshotsRepoUrl = "http://ykt-nx.supwisdom.com/repository/ecard-repo/snapshot/"
- url = version.endsWith('dirty') ? snapshotsRepoUrl : releasesRepoUrl
+ url = version.endsWith("dirty") ? snapshotsRepoUrl : releasesRepoUrl
credentials(PasswordCredentials) {
username = nxUser
password = nxPassword
@@ -31,21 +32,10 @@
}
dependencies {
- implementation 'org.slf4j:slf4j-parent:1.7.26'
- implementation 'org.slf4j:slf4j-api:1.7.26'
- implementation 'javax.validation:validation-api:2.0.1.Final'
- implementation 'javax.servlet:javax.servlet-api:4.0.1'
- implementation 'commons-beanutils:commons-beanutils:1.9.3'
- implementation 'commons-codec:commons-codec:1.13'
- implementation('org.springframework.boot:spring-boot-starter-validation:2.1.6.RELEASE')
+ implementation "commons-beanutils:commons-beanutils:${beanutilsVersion}"
+ implementation "commons-codec:commons-codec:${codecVersion}"
+ implementation "org.apache.commons:commons-lang3:${lang3Version}"
- implementation 'org.hibernate:hibernate-validator:6.0.2.Final'
- compile 'javax.el:javax.el-api:3.0.0'
- compile 'org.glassfish.web:javax.el:2.2.6'
-
- compileOnly 'org.projectlombok:lombok:1.18.8'
- annotationProcessor 'org.projectlombok:lombok:1.18.8'
-
- implementation 'org.apache.commons:commons-lang3:3.9'
-
+ compileOnly "org.projectlombok:lombok:${lombokVersion}"
+ annotationProcessor "org.projectlombok:lombok:${lombokVersion}"
}
\ No newline at end of file
diff --git a/payapi-sdk/build.gradle b/payapi-sdk/build.gradle
index 6151e73..07082ba 100644
--- a/payapi-sdk/build.gradle
+++ b/payapi-sdk/build.gradle
@@ -40,18 +40,13 @@
}
dependencies {
- implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
- implementation 'org.springframework.boot:spring-boot-starter-data-redis'
-
implementation project(':payapi-common')
implementation 'org.springframework.cloud:spring-cloud-dependencies:Finchley.SR3'
implementation 'org.springframework.cloud:spring-cloud-starter-openfeign:2.1.2.RELEASE'
implementation 'javax.servlet:javax.servlet-api:4.0.1'
- compileOnly 'org.projectlombok:lombok:1.18.8'
- annotationProcessor 'org.projectlombok:lombok:1.18.8'
- compile 'com.github.mwiede:feign-validation:1.0'
+// compile 'com.github.mwiede:feign-validation:1.0'
testImplementation 'org.springframework:spring-test'
testImplementation 'org.springframework.boot:spring-boot-test'
diff --git a/payapi/build.gradle b/payapi/build.gradle
index 76f80e3..58e4b11 100644
--- a/payapi/build.gradle
+++ b/payapi/build.gradle
@@ -1,51 +1,55 @@
import java.text.SimpleDateFormat
plugins {
- id 'java'
- id 'org.springframework.boot'
- id 'io.spring.dependency-management'
- id 'org.jetbrains.kotlin.jvm'
- id 'org.jetbrains.kotlin.plugin.jpa' version '1.3.31'
- id 'org.jetbrains.kotlin.plugin.spring'
- id "com.palantir.git-version"
- id 'com.palantir.docker'
+ id "java"
+ id "org.springframework.boot"
+ id "org.jetbrains.kotlin.jvm"
+ id "org.jetbrains.kotlin.plugin.jpa"
+ id "org.jetbrains.kotlin.plugin.spring"
+ id "com.palantir.docker"
}
-payapiVersion = gitVersion()
-def details = versionDetails()
+payapiVersion = version
-group = rootProject.group
-version = '1'
-sourceCompatibility = jdkVersion
-def payapiStartClass = 'com.supwisdom.dlpay.PayApiApplicationKt'
+def payapiStartClass = "com.supwisdom.dlpay.PayApiApplicationKt"
println("Build version: $payapiVersion")
bootJar {
mainClassName = payapiStartClass
manifest {
- attributes('Payapi-Version': payapiVersion,
- 'Payapi-Buildtime': new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ").format(new Date()))
+ attributes("Payapi-Version": payapiVersion,
+ "Payapi-Buildtime": new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ").format(new Date()))
}
}
jar {
- baseName = 'payapi'
+ baseName = "payapi"
}
-ext {
- set('springCloudVersion', "Greenwich.SR2")
+compileKotlin {
+ kotlinOptions {
+ freeCompilerArgs = ["-Xjsr305=strict"]
+ jvmTarget = jdkVersion
+ }
+}
+
+compileTestKotlin {
+ kotlinOptions {
+ freeCompilerArgs = ["-Xjsr305=strict"]
+ jvmTarget = jdkVersion
+ }
}
docker {
def imageVersion
if (details.gitHashFull.startsWith(details.lastTag) || !details.isCleanTag) {
- imageVersion = 'dev'
+ imageVersion = "dev"
} else {
imageVersion = details.lastTag
}
println("Docker image tag : " + imageVersion)
- name 'harbor.supwisdom.com/dali/payapi:' + imageVersion
+ name "harbor.supwisdom.com/dali/payapi:" + imageVersion
println(jar.archivePath)
files jar.archivePath
}
@@ -53,88 +57,49 @@
docker.dependsOn(jar)
dependencies {
- implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
- implementation 'org.springframework.boot:spring-boot-starter-data-redis'
- implementation 'org.springframework.boot:spring-boot-starter-web'
- implementation 'org.springframework.boot:spring-boot-starter-security'
- implementation 'org.springframework.boot:spring-boot-starter-cache'
- implementation 'org.springframework.boot:spring-boot-autoconfigure'
- implementation 'org.springframework.security:spring-security-oauth2-jose'
- implementation 'org.springframework.security:spring-security-oauth2-client'
- implementation 'org.springframework.security:spring-security-oauth2-jose'
- implementation 'org.springframework.security.oauth.boot:spring-security-oauth2-autoconfigure:2.1.5.RELEASE'
- implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
- implementation 'org.springframework.session:spring-session-data-redis'
- implementation 'org.springframework.boot:spring-boot-starter-cache'
- implementation 'org.springframework.kafka:spring-kafka'
- implementation 'org.springframework.social:spring-social-web:1.1.6.RELEASE'
- implementation 'org.springframework.kafka:spring-kafka:2.2.8.RELEASE'
- implementation 'org.jetbrains.kotlin:kotlin-reflect'
- implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8'
- implementation 'commons-codec:commons-codec:1.12'
- implementation 'org.apache.commons:commons-lang3:3.9'
- implementation 'net.javacrumbs.shedlock:shedlock-spring:2.5.0'
- implementation 'net.javacrumbs.shedlock:shedlock-provider-redis-spring:2.5.0'
+ implementation project(":payapi-common")
- implementation 'org.springframework.cloud:spring-cloud-starter'
- implementation 'org.springframework.cloud:spring-cloud-starter-consul-discovery'
- implementation 'org.springframework.cloud:spring-cloud-starter-netflix-hystrix'
- implementation 'org.springframework.cloud:spring-cloud-starter-netflix-hystrix-dashboard'
+ implementation "org.springframework.boot:spring-boot-starter-web"
+ implementation "org.springframework.boot:spring-boot-starter-security"
+ implementation "org.springframework.boot:spring-boot-starter-cache"
+ implementation "org.springframework.boot:spring-boot-autoconfigure"
+ implementation "org.springframework.security:spring-security-oauth2-jose"
+ implementation "org.springframework.security:spring-security-oauth2-client"
+ implementation "org.springframework.security:spring-security-oauth2-jose"
+ implementation "org.springframework.security.oauth.boot:spring-security-oauth2-autoconfigure:2.1.5.RELEASE"
+ implementation "org.springframework.boot:spring-boot-starter-thymeleaf"
+ implementation "org.springframework.session:spring-session-data-redis"
+ implementation "org.springframework.boot:spring-boot-starter-cache"
+ implementation "org.springframework.kafka:spring-kafka"
+ implementation "org.springframework.social:spring-social-web:1.1.6.RELEASE"
+ implementation "org.springframework.kafka:spring-kafka:2.2.8.RELEASE"
- implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity5'
+ implementation "org.springframework.cloud:spring-cloud-starter"
+ implementation "org.springframework.cloud:spring-cloud-starter-consul-discovery"
+ implementation "org.springframework.cloud:spring-cloud-starter-netflix-hystrix"
+ implementation "org.springframework.cloud:spring-cloud-starter-netflix-hystrix-dashboard"
+
runtime("org.springframework.boot:spring-boot-devtools")
- implementation 'org.postgresql:postgresql:42.2.5'
- implementation 'com.fasterxml.jackson.module:jackson-module-kotlin'
- implementation 'com.jcabi:jcabi-manifests:1.1'
- implementation 'org.bitbucket.b_c:jose4j:0.6.5'
- implementation 'io.github.microutils:kotlin-logging:1.6.26'
- implementation 'org.slf4j:slf4j-parent:1.7.26'
- implementation 'com.github.penggle:kaptcha:2.3.2'
- implementation group: 'com.google.code.gson', name: 'gson', version: '2.8.5'
- implementation group: 'com.sun.jersey', name: 'jersey-client', version: '1.19'
- implementation group: 'javax.servlet', name: 'jstl', version: '1.2'
- implementation group: 'taglibs', name: 'standard', version: '1.1.2'
- implementation group: 'commons-codec', name: 'commons-codec', version: '1.13'
- implementation files('libs/masmgc.sdk.sms-0.0.1-SNAPSHOT.jar')
-// implementation files('libs/ojdbc6.jar')
- implementation 'commons-dbcp:commons-dbcp:1.4'
- implementation 'commons-beanutils:commons-beanutils:1.9.3'
+ implementation "org.thymeleaf.extras:thymeleaf-extras-springsecurity5"
+ implementation "commons-codec:commons-codec:${commonCodecVersion}"
+ implementation "org.apache.commons:commons-lang3:${lang3Version}"
+ implementation "net.javacrumbs.shedlock:shedlock-spring:${shedlockVersion}"
+ implementation "net.javacrumbs.shedlock:shedlock-provider-redis-spring:${shedlockVersion}"
- implementation 'log4j:log4j:1.2.17'
- implementation 'com.alibaba:fastjson:1.2.60'
- implementation project(':payapi-common')
+
+ implementation "com.jcabi:jcabi-manifests:${jcabiManifestsVersion}"
+ implementation "org.bitbucket.b_c:jose4j:${jose4jVersion}"
+ implementation files("libs/masmgc.sdk.sms-0.0.1-SNAPSHOT.jar")
+ implementation "commons-beanutils:commons-beanutils:${beanutilsVersion}"
/*支付宝SDK*/
- implementation group: 'com.alipay.sdk', name: 'alipay-sdk-java', version: '3.7.110.ALL'
+ implementation "com.alipay.sdk:alipay-sdk-java:${alipaySDKVersion}"
- annotationProcessor "org.springframework.boot:spring-boot-configuration-processor"
- annotationProcessor 'org.projectlombok:lombok:1.18.8'
- compileOnly 'org.projectlombok:lombok:1.18.8'
+ implementation "com.github.penggle:kaptcha:${kaptchaVersion}"
+ implementation "com.sun.jersey:jersey-client:${jerseyClientVersion}"
+ implementation "javax.servlet:jstl:1.2"
+ implementation "taglibs:standard:1.1.2"
-// providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat'
- testImplementation 'org.springframework.boot:spring-boot-starter-test'
- testImplementation 'io.rest-assured:rest-assured:3.3.0'
- testImplementation 'io.rest-assured:spring-mock-mvc:3.3.0'
- testImplementation 'org.hamcrest:hamcrest:2.1'
}
-dependencyManagement {
- imports {
- mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
- }
-}
-
-compileKotlin {
- kotlinOptions {
- freeCompilerArgs = ['-Xjsr305=strict']
- jvmTarget = jdkVersion
- }
-}
-
-compileTestKotlin {
- kotlinOptions {
- freeCompilerArgs = ['-Xjsr305=strict']
- jvmTarget = jdkVersion
- }
-}
diff --git a/payapi/src/main/java/com/supwisdom/dlpay/api/domain/TAccount.java b/payapi/src/main/java/com/supwisdom/dlpay/api/domain/TAccount.java
index 150f0cd..96ee02b 100644
--- a/payapi/src/main/java/com/supwisdom/dlpay/api/domain/TAccount.java
+++ b/payapi/src/main/java/com/supwisdom/dlpay/api/domain/TAccount.java
@@ -18,7 +18,7 @@
public class TAccount implements Serializable {
@Id
@GenericGenerator(name = "idGenerator", strategy = "uuid")
- @GeneratedValue(generator = "idGenerator")
+ @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "idGenerator")
@Column(name = "ACCNO", nullable = false, length = 32)
private String accno; //账号
diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_service.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_service.kt
index e7589f1..2e0ff91 100644
--- a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_service.kt
+++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_service.kt
@@ -68,9 +68,6 @@
private lateinit var shopAccBalanceAsyncTask: ShopAccBalanceAsyncTask
@Autowired
- private lateinit var kafkaSendMsgService: KafkaSendMsgService
-
- @Autowired
private lateinit var transactionMainDao: TransactionMainDao