Compare commits
6
Commits
d8d69d200a
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1ff63dfdc0 | ||
|
|
2cc798376c | ||
|
|
95f866cd78 | ||
|
|
91ef88d8c9 | ||
|
|
26a6f065da | ||
|
|
7adf116721 |
Generated
+1
@@ -1,5 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="GradleMigrationSettings" migrationVersion="1" />
|
||||
<component name="GradleSettings">
|
||||
<option name="linkedExternalProjectsSettings">
|
||||
<GradleProjectSettings>
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
# Библиотека openapi контрактов
|
||||
|
||||
Библиотека содержит openapi описание методов используемых для интеграции аппаратной части и информационной системы
|
||||
|
||||
## Сборка библиотеки
|
||||
|
||||
При сборке будут сгенерированы классы контроллеров и DTO скомпилированы и упакованы в jar файл
|
||||
|
||||
`gradle jar`
|
||||
|
||||
## Описанные методы
|
||||
|
||||
- GET /qr - метод получения qr-кодов
|
||||
- POST /qr-used/{qrId} - метод отметки использования qr-кода клиентом(для сбора метрик)
|
||||
+49
-2
@@ -1,21 +1,68 @@
|
||||
plugins {
|
||||
kotlin("jvm") version "2.0.21"
|
||||
id("org.openapi.generator") version "7.10.0"
|
||||
id("maven-publish")
|
||||
}
|
||||
|
||||
group = "com.kashiuno"
|
||||
version = "1.0-SNAPSHOT"
|
||||
group = "ru.vyatsu"
|
||||
version = "1.0.0"
|
||||
|
||||
val generatedSourcesDir = "$buildDir/generated/openapi"
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
// TODO: Нужно присобачить bom
|
||||
dependencies {
|
||||
compileOnly("com.squareup.okhttp3:okhttp:4.12.0")
|
||||
compileOnly("com.squareup.moshi:moshi-kotlin:1.15.2")
|
||||
compileOnly("org.springframework.boot:spring-boot-autoconfigure:3.4.1")
|
||||
compileOnly("org.springframework.boot:spring-boot-starter-web:3.4.1")
|
||||
compileOnly("org.springframework.boot:spring-boot-starter-validation:3.4.1")
|
||||
compileOnly("jakarta.servlet:jakarta.servlet-api:6.1.0")
|
||||
compileOnly("io.swagger.core.v3:swagger-annotations:2.2.27")
|
||||
compileOnly("io.swagger.core.v3:swagger-models:2.2.27")
|
||||
|
||||
testImplementation(kotlin("test"))
|
||||
}
|
||||
|
||||
tasks.test {
|
||||
useJUnitPlatform()
|
||||
}
|
||||
|
||||
kotlin {
|
||||
jvmToolchain(17)
|
||||
}
|
||||
|
||||
tasks.openApiGenerate {
|
||||
generatorName.set("kotlin-spring")
|
||||
inputSpec.set("$rootDir/src/main/resources/openapi-contract.yaml")
|
||||
outputDir.set(generatedSourcesDir)
|
||||
packageName.set("ru.vyatsu")
|
||||
configOptions.put("interfaceOnly", "true")
|
||||
configOptions.put("useSpringBoot3", "true")
|
||||
configOptions.put("useBeanValidation", "false")
|
||||
configOptions.put("useSwaggerUI", "false")
|
||||
}
|
||||
|
||||
sourceSets {
|
||||
getByName("main") {
|
||||
kotlin {
|
||||
srcDir("$generatedSourcesDir/src/main/kotlin")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
tasks.compileKotlin {
|
||||
dependsOn(tasks.openApiGenerate)
|
||||
}
|
||||
|
||||
publishing {
|
||||
publications {
|
||||
create<MavenPublication>("maven") {
|
||||
from(components["kotlin"])
|
||||
artifactId = tasks.jar.get().archiveBaseName.get()
|
||||
}
|
||||
}
|
||||
}
|
||||
+10
-1
@@ -21,6 +21,8 @@ paths:
|
||||
summary: Получение qr кодов
|
||||
description: Получение qr кодов за сегодня, за исключением прошедшего времени
|
||||
operationId: getQrCodes
|
||||
security:
|
||||
- bearerAuth: [ ]
|
||||
responses:
|
||||
'200':
|
||||
description: Successful operation
|
||||
@@ -46,6 +48,8 @@ paths:
|
||||
summary: Отметка qr-кода как использованного(Для сбора метрик).
|
||||
description: Отправляется микрокомпьютером, когда qr-код был задействован.
|
||||
operationId: markQrCodeAsUsed
|
||||
security:
|
||||
- bearerAuth: [ ]
|
||||
responses:
|
||||
'200':
|
||||
description: Successfull mark
|
||||
@@ -80,4 +84,9 @@ components:
|
||||
keyCode:
|
||||
type: string
|
||||
format: uuid
|
||||
example: 'dd654b6c-a671-488e-8fc9-eb564d0a8f22'
|
||||
example: 'dd654b6c-a671-488e-8fc9-eb564d0a8f22'
|
||||
securitySchemes:
|
||||
bearerAuth:
|
||||
type: http
|
||||
scheme: bearer
|
||||
bearerFormat: JWT
|
||||
Reference in New Issue
Block a user