Updat erubhan besar query builder

This commit is contained in:
meninjar
2025-11-02 03:08:38 +00:00
parent 0002cf26be
commit 19324041b8
13 changed files with 2916 additions and 842 deletions
+104 -108
View File
@@ -1,5 +1,4 @@
// Code generated by swaggo/swag. DO NOT EDIT.
// Package docs Code generated by swaggo/swag. DO NOT EDIT
package docs
import "github.com/swaggo/swag"
@@ -45,7 +44,7 @@ const docTemplate = `{
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/models.LoginRequest"
"$ref": "#/definitions/api-service_internal_models_auth.LoginRequest"
}
}
],
@@ -53,7 +52,7 @@ const docTemplate = `{
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.TokenResponse"
"$ref": "#/definitions/api-service_internal_models_auth.TokenResponse"
}
},
"400": {
@@ -96,7 +95,7 @@ const docTemplate = `{
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.User"
"$ref": "#/definitions/api-service_internal_models_auth.User"
}
},
"401": {
@@ -142,7 +141,7 @@ const docTemplate = `{
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.TokenResponse"
"$ref": "#/definitions/api-service_internal_models_auth.TokenResponse"
}
},
"400": {
@@ -241,25 +240,25 @@ const docTemplate = `{
"200": {
"description": "Success response",
"schema": {
"$ref": "#/definitions/retribusi.RetribusiGetByIDResponse"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiGetByIDResponse"
}
},
"400": {
"description": "Invalid ID format",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"404": {
"description": "Retribusi not found",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -290,7 +289,7 @@ const docTemplate = `{
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/retribusi.RetribusiUpdateRequest"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiUpdateRequest"
}
}
],
@@ -298,25 +297,25 @@ const docTemplate = `{
"200": {
"description": "Retribusi updated successfully",
"schema": {
"$ref": "#/definitions/retribusi.RetribusiUpdateResponse"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiUpdateResponse"
}
},
"400": {
"description": "Bad request or validation error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"404": {
"description": "Retribusi not found",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -346,25 +345,25 @@ const docTemplate = `{
"200": {
"description": "Retribusi deleted successfully",
"schema": {
"$ref": "#/definitions/retribusi.RetribusiDeleteResponse"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiDeleteResponse"
}
},
"400": {
"description": "Invalid ID format",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"404": {
"description": "Retribusi not found",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -434,19 +433,19 @@ const docTemplate = `{
"200": {
"description": "Success response",
"schema": {
"$ref": "#/definitions/retribusi.RetribusiGetResponse"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiGetResponse"
}
},
"400": {
"description": "Bad request",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -470,7 +469,7 @@ const docTemplate = `{
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/retribusi.RetribusiCreateRequest"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiCreateRequest"
}
}
],
@@ -478,19 +477,19 @@ const docTemplate = `{
"201": {
"description": "Retribusi created successfully",
"schema": {
"$ref": "#/definitions/retribusi.RetribusiCreateResponse"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiCreateResponse"
}
},
"400": {
"description": "Bad request or validation error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -547,19 +546,19 @@ const docTemplate = `{
"200": {
"description": "Success response",
"schema": {
"$ref": "#/definitions/retribusi.RetribusiGetResponse"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiGetResponse"
}
},
"400": {
"description": "Bad request",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -590,13 +589,13 @@ const docTemplate = `{
"200": {
"description": "Statistics data",
"schema": {
"$ref": "#/definitions/models.AggregateData"
"$ref": "#/definitions/api-service_internal_models.AggregateData"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -604,7 +603,7 @@ const docTemplate = `{
},
"/api/v1/token/generate": {
"post": {
"description": "Generate a JWT token for a user",
"description": "Generate a JWT token for testing purposes",
"consumes": [
"application/json"
],
@@ -617,12 +616,13 @@ const docTemplate = `{
"summary": "Generate JWT token",
"parameters": [
{
"description": "User credentials",
"description": "Token generation data",
"name": "token",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/models.LoginRequest"
"type": "object",
"additionalProperties": true
}
}
],
@@ -630,7 +630,7 @@ const docTemplate = `{
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.TokenResponse"
"$ref": "#/definitions/api-service_internal_models_auth.TokenResponse"
}
},
"400": {
@@ -641,22 +641,13 @@ const docTemplate = `{
"type": "string"
}
}
},
"401": {
"description": "Unauthorized",
"schema": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
}
}
},
"/api/v1/token/generate-direct": {
"post": {
"description": "Generate a JWT token directly without password verification (for testing)",
"description": "Generate a JWT token directly with provided data",
"consumes": [
"application/json"
],
@@ -666,18 +657,16 @@ const docTemplate = `{
"tags": [
"Token"
],
"summary": "Generate token directly",
"summary": "Generate JWT token directly",
"parameters": [
{
"description": "User info",
"name": "user",
"description": "Token generation data",
"name": "token",
"in": "body",
"required": true,
"schema": {
"type": "object",
"additionalProperties": {
"type": "string"
}
"additionalProperties": true
}
}
],
@@ -685,7 +674,7 @@ const docTemplate = `{
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.TokenResponse"
"$ref": "#/definitions/api-service_internal_models_auth.TokenResponse"
}
},
"400": {
@@ -702,7 +691,7 @@ const docTemplate = `{
}
},
"definitions": {
"models.AggregateData": {
"api-service_internal_models.AggregateData": {
"type": "object",
"properties": {
"by_dinas": {
@@ -743,7 +732,7 @@ const docTemplate = `{
}
}
},
"models.ErrorResponse": {
"api-service_internal_models.ErrorResponse": {
"type": "object",
"properties": {
"code": {
@@ -760,22 +749,7 @@ const docTemplate = `{
}
}
},
"models.LoginRequest": {
"type": "object",
"required": [
"password",
"username"
],
"properties": {
"password": {
"type": "string"
},
"username": {
"type": "string"
}
}
},
"models.MetaResponse": {
"api-service_internal_models.MetaResponse": {
"type": "object",
"properties": {
"current_page": {
@@ -801,7 +775,7 @@ const docTemplate = `{
}
}
},
"models.NullableInt32": {
"api-service_internal_models.NullableInt32": {
"type": "object",
"properties": {
"int32": {
@@ -812,7 +786,7 @@ const docTemplate = `{
}
}
},
"models.NullableString": {
"api-service_internal_models.NullableString": {
"type": "object",
"properties": {
"string": {
@@ -823,7 +797,7 @@ const docTemplate = `{
}
}
},
"models.NullableTime": {
"api-service_internal_models.NullableTime": {
"type": "object",
"properties": {
"time": {
@@ -834,21 +808,41 @@ const docTemplate = `{
}
}
},
"models.TokenResponse": {
"api-service_internal_models_auth.LoginRequest": {
"type": "object",
"required": [
"password",
"username"
],
"properties": {
"password": {
"type": "string"
},
"username": {
"type": "string"
}
}
},
"api-service_internal_models_auth.TokenResponse": {
"type": "object",
"properties": {
"access_token": {
"type": "string"
},
"expires_in": {
"description": "Durasi dalam detik",
"type": "integer"
},
"refresh_token": {
"type": "string"
},
"token_type": {
"description": "Biasanya \"Bearer\"",
"type": "string"
}
}
},
"models.User": {
"api-service_internal_models_auth.User": {
"type": "object",
"properties": {
"email": {
@@ -865,75 +859,75 @@ const docTemplate = `{
}
}
},
"retribusi.Retribusi": {
"api-service_internal_models_retribusi.Retribusi": {
"type": "object",
"properties": {
"date_created": {
"$ref": "#/definitions/models.NullableTime"
"$ref": "#/definitions/api-service_internal_models.NullableTime"
},
"date_updated": {
"$ref": "#/definitions/models.NullableTime"
"$ref": "#/definitions/api-service_internal_models.NullableTime"
},
"dinas": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"id": {
"type": "string"
},
"jenis": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"kelompok_obyek": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"kode_tarif": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"pelayanan": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"rekening_denda": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"rekening_pokok": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"satuan": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"satuan_overtime": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"sort": {
"$ref": "#/definitions/models.NullableInt32"
"$ref": "#/definitions/api-service_internal_models.NullableInt32"
},
"status": {
"type": "string"
},
"tarif": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"tarif_overtime": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"uraian_1": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"uraian_2": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"uraian_3": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"user_created": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"user_updated": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
}
}
},
"retribusi.RetribusiCreateRequest": {
"api-service_internal_models_retribusi.RetribusiCreateRequest": {
"type": "object",
"required": [
"status"
@@ -1009,18 +1003,18 @@ const docTemplate = `{
}
}
},
"retribusi.RetribusiCreateResponse": {
"api-service_internal_models_retribusi.RetribusiCreateResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/definitions/retribusi.Retribusi"
"$ref": "#/definitions/api-service_internal_models_retribusi.Retribusi"
},
"message": {
"type": "string"
}
}
},
"retribusi.RetribusiDeleteResponse": {
"api-service_internal_models_retribusi.RetribusiDeleteResponse": {
"type": "object",
"properties": {
"id": {
@@ -1031,38 +1025,38 @@ const docTemplate = `{
}
}
},
"retribusi.RetribusiGetByIDResponse": {
"api-service_internal_models_retribusi.RetribusiGetByIDResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/definitions/retribusi.Retribusi"
"$ref": "#/definitions/api-service_internal_models_retribusi.Retribusi"
},
"message": {
"type": "string"
}
}
},
"retribusi.RetribusiGetResponse": {
"api-service_internal_models_retribusi.RetribusiGetResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/retribusi.Retribusi"
"$ref": "#/definitions/api-service_internal_models_retribusi.Retribusi"
}
},
"message": {
"type": "string"
},
"meta": {
"$ref": "#/definitions/models.MetaResponse"
"$ref": "#/definitions/api-service_internal_models.MetaResponse"
},
"summary": {
"$ref": "#/definitions/models.AggregateData"
"$ref": "#/definitions/api-service_internal_models.AggregateData"
}
}
},
"retribusi.RetribusiUpdateRequest": {
"api-service_internal_models_retribusi.RetribusiUpdateRequest": {
"type": "object",
"required": [
"status"
@@ -1138,11 +1132,11 @@ const docTemplate = `{
}
}
},
"retribusi.RetribusiUpdateResponse": {
"api-service_internal_models_retribusi.RetribusiUpdateResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/definitions/retribusi.Retribusi"
"$ref": "#/definitions/api-service_internal_models_retribusi.Retribusi"
},
"message": {
"type": "string"
@@ -1162,6 +1156,8 @@ var SwaggerInfo = &swag.Spec{
Description: "A comprehensive Go API service with Swagger documentation",
InfoInstanceName: "swagger",
SwaggerTemplate: docTemplate,
LeftDelim: "{{",
RightDelim: "}}",
}
func init() {
+101 -106
View File
@@ -42,7 +42,7 @@
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/models.LoginRequest"
"$ref": "#/definitions/api-service_internal_models_auth.LoginRequest"
}
}
],
@@ -50,7 +50,7 @@
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.TokenResponse"
"$ref": "#/definitions/api-service_internal_models_auth.TokenResponse"
}
},
"400": {
@@ -93,7 +93,7 @@
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.User"
"$ref": "#/definitions/api-service_internal_models_auth.User"
}
},
"401": {
@@ -139,7 +139,7 @@
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.TokenResponse"
"$ref": "#/definitions/api-service_internal_models_auth.TokenResponse"
}
},
"400": {
@@ -238,25 +238,25 @@
"200": {
"description": "Success response",
"schema": {
"$ref": "#/definitions/retribusi.RetribusiGetByIDResponse"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiGetByIDResponse"
}
},
"400": {
"description": "Invalid ID format",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"404": {
"description": "Retribusi not found",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -287,7 +287,7 @@
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/retribusi.RetribusiUpdateRequest"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiUpdateRequest"
}
}
],
@@ -295,25 +295,25 @@
"200": {
"description": "Retribusi updated successfully",
"schema": {
"$ref": "#/definitions/retribusi.RetribusiUpdateResponse"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiUpdateResponse"
}
},
"400": {
"description": "Bad request or validation error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"404": {
"description": "Retribusi not found",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -343,25 +343,25 @@
"200": {
"description": "Retribusi deleted successfully",
"schema": {
"$ref": "#/definitions/retribusi.RetribusiDeleteResponse"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiDeleteResponse"
}
},
"400": {
"description": "Invalid ID format",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"404": {
"description": "Retribusi not found",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -431,19 +431,19 @@
"200": {
"description": "Success response",
"schema": {
"$ref": "#/definitions/retribusi.RetribusiGetResponse"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiGetResponse"
}
},
"400": {
"description": "Bad request",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -467,7 +467,7 @@
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/retribusi.RetribusiCreateRequest"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiCreateRequest"
}
}
],
@@ -475,19 +475,19 @@
"201": {
"description": "Retribusi created successfully",
"schema": {
"$ref": "#/definitions/retribusi.RetribusiCreateResponse"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiCreateResponse"
}
},
"400": {
"description": "Bad request or validation error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -544,19 +544,19 @@
"200": {
"description": "Success response",
"schema": {
"$ref": "#/definitions/retribusi.RetribusiGetResponse"
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiGetResponse"
}
},
"400": {
"description": "Bad request",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -587,13 +587,13 @@
"200": {
"description": "Statistics data",
"schema": {
"$ref": "#/definitions/models.AggregateData"
"$ref": "#/definitions/api-service_internal_models.AggregateData"
}
},
"500": {
"description": "Internal server error",
"schema": {
"$ref": "#/definitions/models.ErrorResponse"
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
}
}
}
@@ -601,7 +601,7 @@
},
"/api/v1/token/generate": {
"post": {
"description": "Generate a JWT token for a user",
"description": "Generate a JWT token for testing purposes",
"consumes": [
"application/json"
],
@@ -614,12 +614,13 @@
"summary": "Generate JWT token",
"parameters": [
{
"description": "User credentials",
"description": "Token generation data",
"name": "token",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/models.LoginRequest"
"type": "object",
"additionalProperties": true
}
}
],
@@ -627,7 +628,7 @@
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.TokenResponse"
"$ref": "#/definitions/api-service_internal_models_auth.TokenResponse"
}
},
"400": {
@@ -638,22 +639,13 @@
"type": "string"
}
}
},
"401": {
"description": "Unauthorized",
"schema": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
}
}
},
"/api/v1/token/generate-direct": {
"post": {
"description": "Generate a JWT token directly without password verification (for testing)",
"description": "Generate a JWT token directly with provided data",
"consumes": [
"application/json"
],
@@ -663,18 +655,16 @@
"tags": [
"Token"
],
"summary": "Generate token directly",
"summary": "Generate JWT token directly",
"parameters": [
{
"description": "User info",
"name": "user",
"description": "Token generation data",
"name": "token",
"in": "body",
"required": true,
"schema": {
"type": "object",
"additionalProperties": {
"type": "string"
}
"additionalProperties": true
}
}
],
@@ -682,7 +672,7 @@
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/models.TokenResponse"
"$ref": "#/definitions/api-service_internal_models_auth.TokenResponse"
}
},
"400": {
@@ -699,7 +689,7 @@
}
},
"definitions": {
"models.AggregateData": {
"api-service_internal_models.AggregateData": {
"type": "object",
"properties": {
"by_dinas": {
@@ -740,7 +730,7 @@
}
}
},
"models.ErrorResponse": {
"api-service_internal_models.ErrorResponse": {
"type": "object",
"properties": {
"code": {
@@ -757,22 +747,7 @@
}
}
},
"models.LoginRequest": {
"type": "object",
"required": [
"password",
"username"
],
"properties": {
"password": {
"type": "string"
},
"username": {
"type": "string"
}
}
},
"models.MetaResponse": {
"api-service_internal_models.MetaResponse": {
"type": "object",
"properties": {
"current_page": {
@@ -798,7 +773,7 @@
}
}
},
"models.NullableInt32": {
"api-service_internal_models.NullableInt32": {
"type": "object",
"properties": {
"int32": {
@@ -809,7 +784,7 @@
}
}
},
"models.NullableString": {
"api-service_internal_models.NullableString": {
"type": "object",
"properties": {
"string": {
@@ -820,7 +795,7 @@
}
}
},
"models.NullableTime": {
"api-service_internal_models.NullableTime": {
"type": "object",
"properties": {
"time": {
@@ -831,21 +806,41 @@
}
}
},
"models.TokenResponse": {
"api-service_internal_models_auth.LoginRequest": {
"type": "object",
"required": [
"password",
"username"
],
"properties": {
"password": {
"type": "string"
},
"username": {
"type": "string"
}
}
},
"api-service_internal_models_auth.TokenResponse": {
"type": "object",
"properties": {
"access_token": {
"type": "string"
},
"expires_in": {
"description": "Durasi dalam detik",
"type": "integer"
},
"refresh_token": {
"type": "string"
},
"token_type": {
"description": "Biasanya \"Bearer\"",
"type": "string"
}
}
},
"models.User": {
"api-service_internal_models_auth.User": {
"type": "object",
"properties": {
"email": {
@@ -862,75 +857,75 @@
}
}
},
"retribusi.Retribusi": {
"api-service_internal_models_retribusi.Retribusi": {
"type": "object",
"properties": {
"date_created": {
"$ref": "#/definitions/models.NullableTime"
"$ref": "#/definitions/api-service_internal_models.NullableTime"
},
"date_updated": {
"$ref": "#/definitions/models.NullableTime"
"$ref": "#/definitions/api-service_internal_models.NullableTime"
},
"dinas": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"id": {
"type": "string"
},
"jenis": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"kelompok_obyek": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"kode_tarif": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"pelayanan": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"rekening_denda": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"rekening_pokok": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"satuan": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"satuan_overtime": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"sort": {
"$ref": "#/definitions/models.NullableInt32"
"$ref": "#/definitions/api-service_internal_models.NullableInt32"
},
"status": {
"type": "string"
},
"tarif": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"tarif_overtime": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"uraian_1": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"uraian_2": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"uraian_3": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"user_created": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
},
"user_updated": {
"$ref": "#/definitions/models.NullableString"
"$ref": "#/definitions/api-service_internal_models.NullableString"
}
}
},
"retribusi.RetribusiCreateRequest": {
"api-service_internal_models_retribusi.RetribusiCreateRequest": {
"type": "object",
"required": [
"status"
@@ -1006,18 +1001,18 @@
}
}
},
"retribusi.RetribusiCreateResponse": {
"api-service_internal_models_retribusi.RetribusiCreateResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/definitions/retribusi.Retribusi"
"$ref": "#/definitions/api-service_internal_models_retribusi.Retribusi"
},
"message": {
"type": "string"
}
}
},
"retribusi.RetribusiDeleteResponse": {
"api-service_internal_models_retribusi.RetribusiDeleteResponse": {
"type": "object",
"properties": {
"id": {
@@ -1028,38 +1023,38 @@
}
}
},
"retribusi.RetribusiGetByIDResponse": {
"api-service_internal_models_retribusi.RetribusiGetByIDResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/definitions/retribusi.Retribusi"
"$ref": "#/definitions/api-service_internal_models_retribusi.Retribusi"
},
"message": {
"type": "string"
}
}
},
"retribusi.RetribusiGetResponse": {
"api-service_internal_models_retribusi.RetribusiGetResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/definitions/retribusi.Retribusi"
"$ref": "#/definitions/api-service_internal_models_retribusi.Retribusi"
}
},
"message": {
"type": "string"
},
"meta": {
"$ref": "#/definitions/models.MetaResponse"
"$ref": "#/definitions/api-service_internal_models.MetaResponse"
},
"summary": {
"$ref": "#/definitions/models.AggregateData"
"$ref": "#/definitions/api-service_internal_models.AggregateData"
}
}
},
"retribusi.RetribusiUpdateRequest": {
"api-service_internal_models_retribusi.RetribusiUpdateRequest": {
"type": "object",
"required": [
"status"
@@ -1135,11 +1130,11 @@
}
}
},
"retribusi.RetribusiUpdateResponse": {
"api-service_internal_models_retribusi.RetribusiUpdateResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/definitions/retribusi.Retribusi"
"$ref": "#/definitions/api-service_internal_models_retribusi.Retribusi"
},
"message": {
"type": "string"
+95 -98
View File
@@ -1,6 +1,6 @@
basePath: /api/v1
definitions:
models.AggregateData:
api-service_internal_models.AggregateData:
properties:
by_dinas:
additionalProperties:
@@ -27,7 +27,7 @@ definitions:
updated_today:
type: integer
type: object
models.ErrorResponse:
api-service_internal_models.ErrorResponse:
properties:
code:
type: integer
@@ -38,17 +38,7 @@ definitions:
timestamp:
type: string
type: object
models.LoginRequest:
properties:
password:
type: string
username:
type: string
required:
- password
- username
type: object
models.MetaResponse:
api-service_internal_models.MetaResponse:
properties:
current_page:
type: integer
@@ -65,37 +55,51 @@ definitions:
total_pages:
type: integer
type: object
models.NullableInt32:
api-service_internal_models.NullableInt32:
properties:
int32:
type: integer
valid:
type: boolean
type: object
models.NullableString:
api-service_internal_models.NullableString:
properties:
string:
type: string
valid:
type: boolean
type: object
models.NullableTime:
api-service_internal_models.NullableTime:
properties:
time:
type: string
valid:
type: boolean
type: object
models.TokenResponse:
api-service_internal_models_auth.LoginRequest:
properties:
password:
type: string
username:
type: string
required:
- password
- username
type: object
api-service_internal_models_auth.TokenResponse:
properties:
access_token:
type: string
expires_in:
description: Durasi dalam detik
type: integer
refresh_token:
type: string
token_type:
description: Biasanya "Bearer"
type: string
type: object
models.User:
api-service_internal_models_auth.User:
properties:
email:
type: string
@@ -106,52 +110,52 @@ definitions:
username:
type: string
type: object
retribusi.Retribusi:
api-service_internal_models_retribusi.Retribusi:
properties:
date_created:
$ref: '#/definitions/models.NullableTime'
$ref: '#/definitions/api-service_internal_models.NullableTime'
date_updated:
$ref: '#/definitions/models.NullableTime'
$ref: '#/definitions/api-service_internal_models.NullableTime'
dinas:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
id:
type: string
jenis:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
kelompok_obyek:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
kode_tarif:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
pelayanan:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
rekening_denda:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
rekening_pokok:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
satuan:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
satuan_overtime:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
sort:
$ref: '#/definitions/models.NullableInt32'
$ref: '#/definitions/api-service_internal_models.NullableInt32'
status:
type: string
tarif:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
tarif_overtime:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
uraian_1:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
uraian_2:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
uraian_3:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
user_created:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
user_updated:
$ref: '#/definitions/models.NullableString'
$ref: '#/definitions/api-service_internal_models.NullableString'
type: object
retribusi.RetribusiCreateRequest:
api-service_internal_models_retribusi.RetribusiCreateRequest:
properties:
dinas:
maxLength: 255
@@ -208,41 +212,41 @@ definitions:
required:
- status
type: object
retribusi.RetribusiCreateResponse:
api-service_internal_models_retribusi.RetribusiCreateResponse:
properties:
data:
$ref: '#/definitions/retribusi.Retribusi'
$ref: '#/definitions/api-service_internal_models_retribusi.Retribusi'
message:
type: string
type: object
retribusi.RetribusiDeleteResponse:
api-service_internal_models_retribusi.RetribusiDeleteResponse:
properties:
id:
type: string
message:
type: string
type: object
retribusi.RetribusiGetByIDResponse:
api-service_internal_models_retribusi.RetribusiGetByIDResponse:
properties:
data:
$ref: '#/definitions/retribusi.Retribusi'
$ref: '#/definitions/api-service_internal_models_retribusi.Retribusi'
message:
type: string
type: object
retribusi.RetribusiGetResponse:
api-service_internal_models_retribusi.RetribusiGetResponse:
properties:
data:
items:
$ref: '#/definitions/retribusi.Retribusi'
$ref: '#/definitions/api-service_internal_models_retribusi.Retribusi'
type: array
message:
type: string
meta:
$ref: '#/definitions/models.MetaResponse'
$ref: '#/definitions/api-service_internal_models.MetaResponse'
summary:
$ref: '#/definitions/models.AggregateData'
$ref: '#/definitions/api-service_internal_models.AggregateData'
type: object
retribusi.RetribusiUpdateRequest:
api-service_internal_models_retribusi.RetribusiUpdateRequest:
properties:
dinas:
maxLength: 255
@@ -299,10 +303,10 @@ definitions:
required:
- status
type: object
retribusi.RetribusiUpdateResponse:
api-service_internal_models_retribusi.RetribusiUpdateResponse:
properties:
data:
$ref: '#/definitions/retribusi.Retribusi'
$ref: '#/definitions/api-service_internal_models_retribusi.Retribusi'
message:
type: string
type: object
@@ -331,14 +335,14 @@ paths:
name: login
required: true
schema:
$ref: '#/definitions/models.LoginRequest'
$ref: '#/definitions/api-service_internal_models_auth.LoginRequest'
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/models.TokenResponse'
$ref: '#/definitions/api-service_internal_models_auth.TokenResponse'
"400":
description: Bad request
schema:
@@ -363,7 +367,7 @@ paths:
"200":
description: OK
schema:
$ref: '#/definitions/models.User'
$ref: '#/definitions/api-service_internal_models_auth.User'
"401":
description: Unauthorized
schema:
@@ -395,7 +399,7 @@ paths:
"200":
description: OK
schema:
$ref: '#/definitions/models.TokenResponse'
$ref: '#/definitions/api-service_internal_models_auth.TokenResponse'
"400":
description: Bad request
schema:
@@ -460,19 +464,19 @@ paths:
"200":
description: Retribusi deleted successfully
schema:
$ref: '#/definitions/retribusi.RetribusiDeleteResponse'
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiDeleteResponse'
"400":
description: Invalid ID format
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Retribusi not found
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Delete retribusi
tags:
- Retribusi
@@ -492,19 +496,19 @@ paths:
"200":
description: Success response
schema:
$ref: '#/definitions/retribusi.RetribusiGetByIDResponse'
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiGetByIDResponse'
"400":
description: Invalid ID format
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Retribusi not found
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get Retribusi by ID
tags:
- Retribusi
@@ -523,26 +527,26 @@ paths:
name: request
required: true
schema:
$ref: '#/definitions/retribusi.RetribusiUpdateRequest'
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiUpdateRequest'
produces:
- application/json
responses:
"200":
description: Retribusi updated successfully
schema:
$ref: '#/definitions/retribusi.RetribusiUpdateResponse'
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiUpdateResponse'
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Retribusi not found
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Update retribusi
tags:
- Retribusi
@@ -589,15 +593,15 @@ paths:
"200":
description: Success response
schema:
$ref: '#/definitions/retribusi.RetribusiGetResponse'
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiGetResponse'
"400":
description: Bad request
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get retribusi with pagination and optional aggregation
tags:
- Retribusi
@@ -611,22 +615,22 @@ paths:
name: request
required: true
schema:
$ref: '#/definitions/retribusi.RetribusiCreateRequest'
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiCreateRequest'
produces:
- application/json
responses:
"201":
description: Retribusi created successfully
schema:
$ref: '#/definitions/retribusi.RetribusiCreateResponse'
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiCreateResponse'
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Create retribusi
tags:
- Retribusi
@@ -664,15 +668,15 @@ paths:
"200":
description: Success response
schema:
$ref: '#/definitions/retribusi.RetribusiGetResponse'
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiGetResponse'
"400":
description: Bad request
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get retribusi with dynamic filtering
tags:
- Retribusi
@@ -692,11 +696,11 @@ paths:
"200":
description: Statistics data
schema:
$ref: '#/definitions/models.AggregateData'
$ref: '#/definitions/api-service_internal_models.AggregateData'
"500":
description: Internal server error
schema:
$ref: '#/definitions/models.ErrorResponse'
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get retribusi statistics
tags:
- Retribusi
@@ -704,33 +708,28 @@ paths:
post:
consumes:
- application/json
description: Generate a JWT token for a user
description: Generate a JWT token for testing purposes
parameters:
- description: User credentials
- description: Token generation data
in: body
name: token
required: true
schema:
$ref: '#/definitions/models.LoginRequest'
additionalProperties: true
type: object
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/models.TokenResponse'
$ref: '#/definitions/api-service_internal_models_auth.TokenResponse'
"400":
description: Bad request
schema:
additionalProperties:
type: string
type: object
"401":
description: Unauthorized
schema:
additionalProperties:
type: string
type: object
summary: Generate JWT token
tags:
- Token
@@ -738,16 +737,14 @@ paths:
post:
consumes:
- application/json
description: Generate a JWT token directly without password verification (for
testing)
description: Generate a JWT token directly with provided data
parameters:
- description: User info
- description: Token generation data
in: body
name: user
name: token
required: true
schema:
additionalProperties:
type: string
additionalProperties: true
type: object
produces:
- application/json
@@ -755,14 +752,14 @@ paths:
"200":
description: OK
schema:
$ref: '#/definitions/models.TokenResponse'
$ref: '#/definitions/api-service_internal_models_auth.TokenResponse'
"400":
description: Bad request
schema:
additionalProperties:
type: string
type: object
summary: Generate token directly
summary: Generate JWT token directly
tags:
- Token
schemes: