3745 lines
130 KiB
JSON
3745 lines
130 KiB
JSON
{
|
|
"schemes": [
|
|
"http",
|
|
"https"
|
|
],
|
|
"swagger": "2.0",
|
|
"info": {
|
|
"description": "A comprehensive Go API service with Swagger documentation",
|
|
"title": "API Service",
|
|
"termsOfService": "http://swagger.io/terms/",
|
|
"contact": {
|
|
"name": "API Support",
|
|
"url": "http://www.swagger.io/support",
|
|
"email": "support@swagger.io"
|
|
},
|
|
"license": {
|
|
"name": "Apache 2.0",
|
|
"url": "http://www.apache.org/licenses/LICENSE-2.0.html"
|
|
},
|
|
"version": "1.0.0"
|
|
},
|
|
"host": "localhost:8084",
|
|
"basePath": "/api/v1",
|
|
"paths": {
|
|
"/api/v1/auth/login": {
|
|
"post": {
|
|
"description": "Authenticate user with username and password to receive JWT token",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Authentication"
|
|
],
|
|
"summary": "Login user and get JWT token",
|
|
"parameters": [
|
|
{
|
|
"description": "Login credentials",
|
|
"name": "login",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_auth.LoginRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_auth.TokenResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "Unauthorized",
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/auth/me": {
|
|
"get": {
|
|
"security": [
|
|
{
|
|
"Bearer": []
|
|
}
|
|
],
|
|
"description": "Get information about the currently authenticated user",
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Authentication"
|
|
],
|
|
"summary": "Get current user info",
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_auth.User"
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "Unauthorized",
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/auth/refresh": {
|
|
"post": {
|
|
"description": "Refresh the JWT token using a valid refresh token",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Authentication"
|
|
],
|
|
"summary": "Refresh JWT token",
|
|
"parameters": [
|
|
{
|
|
"description": "Refresh token",
|
|
"name": "refresh",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_auth.TokenResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"401": {
|
|
"description": "Unauthorized",
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/auth/register": {
|
|
"post": {
|
|
"description": "Register a new user account",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Authentication"
|
|
],
|
|
"summary": "Register new user",
|
|
"parameters": [
|
|
{
|
|
"description": "Registration data",
|
|
"name": "register",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Created",
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/pasien/": {
|
|
"get": {
|
|
"description": "Get list of pasien with pagination and filters",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pasien"
|
|
],
|
|
"summary": "Get Pasien List",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"default": 10,
|
|
"description": "Limit (max 100)",
|
|
"name": "limit",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"default": 0,
|
|
"description": "Offset",
|
|
"name": "offset",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Filter by status",
|
|
"name": "status",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Search in multiple fields",
|
|
"name": "search",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success response",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.PasienGetResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"description": "Create a new pasien",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pasien"
|
|
],
|
|
"summary": "Create Pasien",
|
|
"parameters": [
|
|
{
|
|
"description": "Pasien creation request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.PasienCreateRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Pasien created successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.PasienCreateResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request or validation error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/pasien/:id": {
|
|
"get": {
|
|
"description": "Get pasien by ID",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pasien"
|
|
],
|
|
"summary": "Get Pasien by ID",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Pasien ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success response",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.PasienGetByIDResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Invalid ID format",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Pasien not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/pasien/:nomr": {
|
|
"put": {
|
|
"description": "Update an existing pasien",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pasien"
|
|
],
|
|
"summary": "Update Pasien",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Pasien ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Pasien update request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.PasienUpdateRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Pasien updated successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.PasienUpdateResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request or validation error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Pasien not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"description": "Delete a pasien",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pasien"
|
|
],
|
|
"summary": "Delete Pasien",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Pasien ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Pasien deleted successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.PasienDeleteResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Invalid ID format",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Pasien not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/pasien/by-age": {
|
|
"get": {
|
|
"description": "Get pasien statistics by age group",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pasien"
|
|
],
|
|
"summary": "Get Pasien by Age Group",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Age group (child, teen, adult, senior)",
|
|
"name": "age_group",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Statistics data",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.PasienAgeStatsResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/pasien/by-location": {
|
|
"get": {
|
|
"description": "Get pasien by location (provinsi, kota, kecamatan, kelurahan)",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pasien"
|
|
],
|
|
"summary": "Get Pasien by Location",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"description": "Filter by kelurahan ID",
|
|
"name": "kelurahan",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Filter by kdkecamatan ID",
|
|
"name": "kdkecamatan",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Filter by kota ID",
|
|
"name": "kota",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Filter by kdprovinsi ID",
|
|
"name": "kdprovinsi",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"default": 10,
|
|
"description": "Limit (max 100)",
|
|
"name": "limit",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"default": 0,
|
|
"description": "Offset",
|
|
"name": "offset",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success response",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.PasienGetResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/pasien/dynamic": {
|
|
"get": {
|
|
"description": "Get pasien with dynamic filtering",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pasien"
|
|
],
|
|
"summary": "Get Pasien Dynamic",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Fields to select (e.g., fields=*.*)",
|
|
"name": "fields",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Dynamic filters (e.g., filter[name][_eq]=value)",
|
|
"name": "filter[column][operator]",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Sort fields (e.g., sort=date_created,-name)",
|
|
"name": "sort",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"default": 10,
|
|
"description": "Limit",
|
|
"name": "limit",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"default": 0,
|
|
"description": "Offset",
|
|
"name": "offset",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success response",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.PasienGetResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/pasien/nomr/:nomr": {
|
|
"get": {
|
|
"description": "Get pasien by Nomr",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pasien"
|
|
],
|
|
"summary": "Get Pasien by Nomr",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success response",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.PasienGetByNomrResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/retribusi/{id}": {
|
|
"get": {
|
|
"description": "Returns a single retribusi by ID",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Retribusi"
|
|
],
|
|
"summary": "Get Retribusi by ID",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Retribusi ID (UUID)",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success response",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiGetByIDResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Invalid ID format",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Retribusi not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"put": {
|
|
"description": "Updates an existing retribusi record",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Retribusi"
|
|
],
|
|
"summary": "Update retribusi",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Retribusi ID (UUID)",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Retribusi update request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiUpdateRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Retribusi updated successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiUpdateResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request or validation error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Retribusi not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"description": "Soft deletes a retribusi by setting status to 'deleted'",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Retribusi"
|
|
],
|
|
"summary": "Delete retribusi",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Retribusi ID (UUID)",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Retribusi deleted successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiDeleteResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Invalid ID format",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Retribusi not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/retribusis": {
|
|
"get": {
|
|
"description": "Returns a paginated list of retribusis with optional summary statistics",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Retribusi"
|
|
],
|
|
"summary": "Get retribusi with pagination and optional aggregation",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"default": 10,
|
|
"description": "Limit (max 100)",
|
|
"name": "limit",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"default": 0,
|
|
"description": "Offset",
|
|
"name": "offset",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Include aggregation summary",
|
|
"name": "include_summary",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Filter by status",
|
|
"name": "status",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Filter by jenis",
|
|
"name": "jenis",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Filter by dinas",
|
|
"name": "dinas",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Search in multiple fields",
|
|
"name": "search",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success response",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiGetResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"description": "Creates a new retribusi record",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Retribusi"
|
|
],
|
|
"summary": "Create retribusi",
|
|
"parameters": [
|
|
{
|
|
"description": "Retribusi creation request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiCreateRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Retribusi created successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiCreateResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request or validation error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/retribusis/dynamic": {
|
|
"get": {
|
|
"description": "Returns retribusis with advanced dynamic filtering like Directus",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Retribusi"
|
|
],
|
|
"summary": "Get retribusi with dynamic filtering",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Fields to select (e.g., fields=*.*)",
|
|
"name": "fields",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Dynamic filters (e.g., filter[Jenis][_eq]=value)",
|
|
"name": "filter[column][operator]",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Sort fields (e.g., sort=date_created,-Jenis)",
|
|
"name": "sort",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"default": 10,
|
|
"description": "Limit",
|
|
"name": "limit",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"default": 0,
|
|
"description": "Offset",
|
|
"name": "offset",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success response",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_retribusi.RetribusiGetResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/retribusis/stats": {
|
|
"get": {
|
|
"description": "Returns comprehensive statistics about retribusi data",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Retribusi"
|
|
],
|
|
"summary": "Get retribusi statistics",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Filter statistics by status",
|
|
"name": "status",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Statistics data",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.AggregateData"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/retribusis/welcome": {
|
|
"get": {
|
|
"description": "Returns a welcome message and logs the request",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Retribusi"
|
|
],
|
|
"summary": "Get welcome message",
|
|
"responses": {
|
|
"200": {
|
|
"description": "Welcome message",
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/token/generate": {
|
|
"post": {
|
|
"description": "Generate a JWT token for testing purposes",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Token"
|
|
],
|
|
"summary": "Generate JWT token",
|
|
"parameters": [
|
|
{
|
|
"description": "Token generation data",
|
|
"name": "token",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": true
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_auth.TokenResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/api/v1/token/generate-direct": {
|
|
"post": {
|
|
"description": "Generate a JWT token directly with provided data",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Token"
|
|
],
|
|
"summary": "Generate JWT token directly",
|
|
"parameters": [
|
|
{
|
|
"description": "Token generation data",
|
|
"name": "token",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": true
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "OK",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_auth.TokenResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/component": {
|
|
"get": {
|
|
"description": "Get list of components with pagination and filters",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Components"
|
|
],
|
|
"summary": "Get Components List",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"default": 10,
|
|
"description": "Limit (max 100)",
|
|
"name": "limit",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"default": 0,
|
|
"description": "Offset",
|
|
"name": "offset",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Filter by parent page ID",
|
|
"name": "page_id",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Filter by status",
|
|
"name": "active",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success response",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_component.ComponentsGetResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"description": "Create a new component",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Components"
|
|
],
|
|
"summary": "Create Component",
|
|
"parameters": [
|
|
{
|
|
"description": "Component creation request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_component.ComponentCreateRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Component created successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_component.ComponentCreateResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request or validation error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/component/{id}": {
|
|
"put": {
|
|
"description": "Update an existing component",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Components"
|
|
],
|
|
"summary": "Update Component",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Component ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Component update request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_component.ComponentUpdateRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Component updated successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_component.ComponentUpdateResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request or validation error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Component not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"description": "Delete a component",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Components"
|
|
],
|
|
"summary": "Delete Component",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Component ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Component deleted successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_component.ComponentDeleteResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Invalid ID format",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Component not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/pages": {
|
|
"get": {
|
|
"description": "Get list of pages with pagination and filters",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pages"
|
|
],
|
|
"summary": "Get Pages List",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"default": 10,
|
|
"description": "Limit (max 100)",
|
|
"name": "limit",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"default": 0,
|
|
"description": "Offset",
|
|
"name": "offset",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Filter by status",
|
|
"name": "status",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Search in multiple fields",
|
|
"name": "search",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success response",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.PagesGetResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"description": "Create a new page",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pages"
|
|
],
|
|
"summary": "Create Page",
|
|
"parameters": [
|
|
{
|
|
"description": "Rol_pages creation request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.PagesCreateRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Rol_pages created successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.PagesCreateResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request or validation error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/pages/bulk": {
|
|
"put": {
|
|
"description": "Update multiple pages in a single request. Each object must include \"id\". Use /pages/bulk [put].",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pages"
|
|
],
|
|
"summary": "Bulk update pages",
|
|
"parameters": [
|
|
{
|
|
"description": "Array of rol_pages update requests",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.PagesUpdateRequest"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Updated pages",
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.PagesUpdateResponse"
|
|
}
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request or validation error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/pages/{id}": {
|
|
"put": {
|
|
"description": "Update an existing page",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pages"
|
|
],
|
|
"summary": "Update Page",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Rol_pages ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Rol_pages update request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.PagesUpdateRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Rol_pages updated successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.PagesUpdateResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request or validation error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Rol_pages not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"description": "Delete a page",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Pages"
|
|
],
|
|
"summary": "Delete Page",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Rol_pages ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Rol_pages deleted successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.PagesDeleteResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Invalid ID format",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Rol_pages not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/patient": {
|
|
"get": {
|
|
"description": "Get list of patients with pagination and filters, including their attachments and payment types.",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Patient"
|
|
],
|
|
"summary": "Get Patients List",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"default": 10,
|
|
"description": "Limit (max 100)",
|
|
"name": "limit",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"default": 0,
|
|
"description": "Offset",
|
|
"name": "offset",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Filter by active status (true/false)",
|
|
"name": "active",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Search in medical_record_number, name, or phone_number",
|
|
"name": "search",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Include aggregation summary",
|
|
"name": "include_summary",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success response",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_patient.PatientGetResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/patient/detail": {
|
|
"post": {
|
|
"description": "Retrieves a single patient record by its ID, including attachments and payment types.",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Patient"
|
|
],
|
|
"summary": "Get Patient by ID",
|
|
"parameters": [
|
|
{
|
|
"description": "Patient post request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_patient.PatientPostRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Patient details retrieved successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_patient.PatientCreateResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request or validation error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Patient not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/permission": {
|
|
"get": {
|
|
"description": "Get list of permissions with pagination and filters",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Permissions"
|
|
],
|
|
"summary": "Get Permissions List",
|
|
"parameters": [
|
|
{
|
|
"type": "integer",
|
|
"default": 10,
|
|
"description": "Limit (max 100)",
|
|
"name": "limit",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"default": 0,
|
|
"description": "Offset",
|
|
"name": "offset",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Filter by parent page ID",
|
|
"name": "page_id",
|
|
"in": "query"
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Filter by status",
|
|
"name": "active",
|
|
"in": "query"
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Success response",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_permission.PermissionsGetResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"post": {
|
|
"description": "Create a new permission",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Permissions"
|
|
],
|
|
"summary": "Create Permission",
|
|
"parameters": [
|
|
{
|
|
"description": "Permission creation request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_permission.PermissionCreateRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "Permission created successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_permission.PermissionCreateResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request or validation error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/permission/{id}": {
|
|
"put": {
|
|
"description": "Update an existing permission",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Permissions"
|
|
],
|
|
"summary": "Update Permission",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Permission ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
},
|
|
{
|
|
"description": "Permission update request",
|
|
"name": "request",
|
|
"in": "body",
|
|
"required": true,
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_permission.PermissionUpdateRequest"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Permission updated successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_permission.PermissionUpdateResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Bad request or validation error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Permission not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"delete": {
|
|
"description": "Delete a permission",
|
|
"consumes": [
|
|
"application/json"
|
|
],
|
|
"produces": [
|
|
"application/json"
|
|
],
|
|
"tags": [
|
|
"Permissions"
|
|
],
|
|
"summary": "Delete Permission",
|
|
"parameters": [
|
|
{
|
|
"type": "string",
|
|
"description": "Permission ID",
|
|
"name": "id",
|
|
"in": "path",
|
|
"required": true
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Permission deleted successfully",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models_permission.PermissionDeleteResponse"
|
|
}
|
|
},
|
|
"400": {
|
|
"description": "Invalid ID format",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"404": {
|
|
"description": "Permission not found",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Internal server error",
|
|
"schema": {
|
|
"$ref": "#/definitions/api-service_internal_models.ErrorResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"definitions": {
|
|
"api-service_internal_models.AggregateData": {
|
|
"type": "object",
|
|
"properties": {
|
|
"by_dinas": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"by_jenis": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"by_status": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"created_today": {
|
|
"type": "integer"
|
|
},
|
|
"last_updated": {
|
|
"type": "string"
|
|
},
|
|
"total_active": {
|
|
"type": "integer"
|
|
},
|
|
"total_draft": {
|
|
"type": "integer"
|
|
},
|
|
"total_inactive": {
|
|
"type": "integer"
|
|
},
|
|
"updated_today": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models.ErrorResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"type": "integer"
|
|
},
|
|
"error": {
|
|
"type": "string"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"timestamp": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models.MetaResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"current_page": {
|
|
"type": "integer"
|
|
},
|
|
"has_next": {
|
|
"type": "boolean"
|
|
},
|
|
"has_prev": {
|
|
"type": "boolean"
|
|
},
|
|
"limit": {
|
|
"type": "integer"
|
|
},
|
|
"offset": {
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"type": "integer"
|
|
},
|
|
"total_pages": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models.NullableInt32": {
|
|
"type": "object",
|
|
"properties": {
|
|
"int32": {
|
|
"type": "integer"
|
|
},
|
|
"valid": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models.NullableString": {
|
|
"type": "object",
|
|
"properties": {
|
|
"string": {
|
|
"type": "string"
|
|
},
|
|
"valid": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models.NullableTime": {
|
|
"type": "object",
|
|
"properties": {
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"valid": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_auth.User": {
|
|
"type": "object",
|
|
"properties": {
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"role": {
|
|
"type": "string"
|
|
},
|
|
"username": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_component.ComponentCreateRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"directory",
|
|
"fk_rol_pages_id",
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"directory": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"fk_rol_pages_id": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"maxLength": 100,
|
|
"minLength": 1
|
|
},
|
|
"sort": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_component.ComponentCreateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/definitions/api-service_internal_models_component.Rol_component"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_component.ComponentDeleteResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_component.ComponentUpdateRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"directory": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"fk_rol_pages_id": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"maxLength": 100,
|
|
"minLength": 1
|
|
},
|
|
"sort": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_component.ComponentUpdateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/definitions/api-service_internal_models_component.Rol_component"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_component.ComponentsGetResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"type": "integer"
|
|
},
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_component.Rol_component"
|
|
}
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"meta": {
|
|
"$ref": "#/definitions/api-service_internal_models.MetaResponse"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_component.Rol_component": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"description": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"directory": {
|
|
"type": "string"
|
|
},
|
|
"fk_rol_pages_id": {
|
|
"type": "integer"
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"sort": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pages.ComponentCreateRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"directory",
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"directory": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"maxLength": 100,
|
|
"minLength": 1
|
|
},
|
|
"sort": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pages.ComponentUpdateRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"id"
|
|
],
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"maxLength": 255
|
|
},
|
|
"directory": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"fk_rol_pages_id": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"maxLength": 100,
|
|
"minLength": 1
|
|
},
|
|
"sort": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pages.PagesCreateRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"components": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.ComponentCreateRequest"
|
|
}
|
|
},
|
|
"icon": {
|
|
"type": "string",
|
|
"maxLength": 100,
|
|
"minLength": 1
|
|
},
|
|
"id": {
|
|
"description": "Status string `json:\"status\" validate:\"required,oneof=draft active inactive\"`",
|
|
"type": "integer"
|
|
},
|
|
"level": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"maxLength": 20,
|
|
"minLength": 1
|
|
},
|
|
"parent": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"permissions": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.PermissionCreateRequest"
|
|
}
|
|
},
|
|
"sort": {
|
|
"type": "integer"
|
|
},
|
|
"url": {
|
|
"type": "string",
|
|
"maxLength": 100,
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pages.PagesCreateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.Rol_pages"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pages.PagesDeleteResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pages.PagesGetResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"type": "integer"
|
|
},
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.Rol_pages"
|
|
}
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"meta": {
|
|
"$ref": "#/definitions/api-service_internal_models.MetaResponse"
|
|
},
|
|
"summary": {
|
|
"$ref": "#/definitions/api-service_internal_models.AggregateData"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pages.PagesUpdateRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"components": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.ComponentUpdateRequest"
|
|
}
|
|
},
|
|
"icon": {
|
|
"type": "string",
|
|
"maxLength": 100,
|
|
"minLength": 1
|
|
},
|
|
"id": {
|
|
"description": "used when updating via JSON array (bulk)",
|
|
"type": "integer"
|
|
},
|
|
"level": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"name": {
|
|
"description": "Status string `json:\"status\" validate:\"required,oneof=draft active inactive\"`",
|
|
"type": "string",
|
|
"maxLength": 20,
|
|
"minLength": 1
|
|
},
|
|
"parent": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"permissions": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.PermissionUpdateRequest"
|
|
}
|
|
},
|
|
"sort": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"url": {
|
|
"type": "string",
|
|
"maxLength": 100,
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pages.PagesUpdateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.Rol_pages"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pages.PermissionCreateRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"create": {
|
|
"type": "boolean"
|
|
},
|
|
"delete": {
|
|
"type": "boolean"
|
|
},
|
|
"disable": {
|
|
"type": "boolean"
|
|
},
|
|
"group_keycloak": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"read": {
|
|
"type": "boolean"
|
|
},
|
|
"role_keycloak": {
|
|
"description": "FkRolPagesID *int64 `json:\"fk_rol_pages_id\" validate:\"omitempty,\"`",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"update": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pages.PermissionUpdateRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"id"
|
|
],
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"create": {
|
|
"type": "boolean"
|
|
},
|
|
"delete": {
|
|
"type": "boolean"
|
|
},
|
|
"disable": {
|
|
"type": "boolean"
|
|
},
|
|
"fk_rol_pages_id": {
|
|
"type": "integer"
|
|
},
|
|
"group_keycloak": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"read": {
|
|
"type": "boolean"
|
|
},
|
|
"role_keycloak": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"update": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pages.Rol_component": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"description": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"directory": {
|
|
"type": "string"
|
|
},
|
|
"fk_rol_pages_id": {
|
|
"type": "integer"
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"sort": {
|
|
"type": "integer"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pages.Rol_pages": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"icon": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"level": {
|
|
"type": "integer"
|
|
},
|
|
"list_component": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.Rol_component"
|
|
}
|
|
},
|
|
"list_permission": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_pages.Rol_permission"
|
|
}
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"parent": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableInt32"
|
|
},
|
|
"sort": {
|
|
"type": "integer"
|
|
},
|
|
"url": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pages.Rol_permission": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
},
|
|
"create": {
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
},
|
|
"delete": {
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
},
|
|
"disable": {
|
|
"description": "Note: \"disable\" is a Go keyword, so \"Disable\" is used for the field name.",
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
}
|
|
]
|
|
},
|
|
"fk_rol_pages_id": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableInt32"
|
|
},
|
|
"group_keycloak": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"read": {
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
},
|
|
"role_keycloak": {
|
|
"description": "Use NullString for optional text fields",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"update": {
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pasien.Pasien": {
|
|
"type": "object",
|
|
"properties": {
|
|
"agama": {
|
|
"$ref": "#/definitions/sql.NullInt32"
|
|
},
|
|
"alamat": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"createdAt": {
|
|
"$ref": "#/definitions/sql.NullTime"
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"idkecamatan": {
|
|
"type": "integer"
|
|
},
|
|
"idkelurahan": {
|
|
"type": "integer"
|
|
},
|
|
"idkota": {
|
|
"type": "integer"
|
|
},
|
|
"idprovinsi": {
|
|
"type": "integer"
|
|
},
|
|
"jeniskelamin": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"kdkecamatan": {
|
|
"$ref": "#/definitions/sql.NullInt32"
|
|
},
|
|
"kdprovinsi": {
|
|
"$ref": "#/definitions/sql.NullInt32"
|
|
},
|
|
"kelurahan": {
|
|
"$ref": "#/definitions/sql.NullInt64"
|
|
},
|
|
"kota": {
|
|
"$ref": "#/definitions/sql.NullInt32"
|
|
},
|
|
"nama": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"namakecamatan": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"namakelurahan": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"namakota": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"namaprovinsi": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"noKartu": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"noktpBaru": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"nomr": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"status": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"tempat": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"tgllahir": {
|
|
"$ref": "#/definitions/sql.NullTime"
|
|
},
|
|
"title": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"updatedAt": {
|
|
"$ref": "#/definitions/sql.NullTime"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pasien.PasienAgeStatsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "object",
|
|
"additionalProperties": true
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pasien.PasienCreateRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"nama",
|
|
"status",
|
|
"title"
|
|
],
|
|
"properties": {
|
|
"agama": {
|
|
"type": "integer"
|
|
},
|
|
"alamat": {
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"jeniskelamin": {
|
|
"type": "string",
|
|
"enum": [
|
|
"L",
|
|
"P"
|
|
]
|
|
},
|
|
"kdkecamatan": {
|
|
"type": "integer"
|
|
},
|
|
"kdprovinsi": {
|
|
"type": "integer"
|
|
},
|
|
"kelurahan": {
|
|
"type": "integer"
|
|
},
|
|
"kota": {
|
|
"type": "integer"
|
|
},
|
|
"nama": {
|
|
"type": "string",
|
|
"maxLength": 100,
|
|
"minLength": 1
|
|
},
|
|
"noKartu": {
|
|
"type": "string"
|
|
},
|
|
"noktpBaru": {
|
|
"type": "string"
|
|
},
|
|
"nomr": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"enum": [
|
|
"draft",
|
|
"active",
|
|
"inactive"
|
|
]
|
|
},
|
|
"tempat": {
|
|
"type": "string"
|
|
},
|
|
"tgllahir": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"type": "string",
|
|
"maxLength": 100,
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pasien.PasienCreateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.Pasien"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pasien.PasienDeleteResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pasien.PasienGetByIDResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.Pasien"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pasien.PasienGetByNomrResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.Pasien"
|
|
}
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"meta": {
|
|
"$ref": "#/definitions/api-service_internal_models.MetaResponse"
|
|
},
|
|
"summary": {
|
|
"$ref": "#/definitions/api-service_internal_models.AggregateData"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pasien.PasienGetResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.Pasien"
|
|
}
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"meta": {
|
|
"$ref": "#/definitions/api-service_internal_models.MetaResponse"
|
|
},
|
|
"summary": {
|
|
"$ref": "#/definitions/api-service_internal_models.AggregateData"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pasien.PasienUpdateRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"nama",
|
|
"status"
|
|
],
|
|
"properties": {
|
|
"agama": {
|
|
"type": "integer"
|
|
},
|
|
"alamat": {
|
|
"type": "string"
|
|
},
|
|
"jeniskelamin": {
|
|
"type": "string",
|
|
"enum": [
|
|
"L",
|
|
"P"
|
|
]
|
|
},
|
|
"kdkecamatan": {
|
|
"type": "integer"
|
|
},
|
|
"kdprovinsi": {
|
|
"type": "integer"
|
|
},
|
|
"kelurahan": {
|
|
"type": "integer"
|
|
},
|
|
"kota": {
|
|
"type": "integer"
|
|
},
|
|
"nama": {
|
|
"type": "string",
|
|
"maxLength": 100,
|
|
"minLength": 1
|
|
},
|
|
"noKartu": {
|
|
"type": "string"
|
|
},
|
|
"noktpBaru": {
|
|
"type": "string"
|
|
},
|
|
"nomr": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"enum": [
|
|
"draft",
|
|
"active",
|
|
"inactive"
|
|
]
|
|
},
|
|
"tempat": {
|
|
"type": "string"
|
|
},
|
|
"tgllahir": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_pasien.PasienUpdateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/definitions/api-service_internal_models_pasien.Pasien"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_patient.Patient": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
},
|
|
"address": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"attachments": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_patient.PatientAttachment"
|
|
}
|
|
},
|
|
"birth_date": {
|
|
"$ref": "#/definitions/sql.NullTime"
|
|
},
|
|
"ds_sd_kabupaten_kota": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"ds_sd_kecamatan": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"ds_sd_kelurahan": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"ds_sd_provinsi": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"fk_sd_kabupaten_kota_id": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableInt32"
|
|
},
|
|
"fk_sd_kecamatan_id": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableInt32"
|
|
},
|
|
"fk_sd_kelurahan_id": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableInt32"
|
|
},
|
|
"fk_sd_provinsi_id": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableInt32"
|
|
},
|
|
"gender": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"medical_record_number": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"name": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"payment_types": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_patient.PatientPaymentType"
|
|
}
|
|
},
|
|
"phone_number": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_patient.PatientAttachment": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
},
|
|
"directory": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"file_name": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"fk_ms_patient_id": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableInt32"
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_patient.PatientCreateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/definitions/api-service_internal_models_patient.Patient"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_patient.PatientGetResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_patient.Patient"
|
|
}
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"meta": {
|
|
"$ref": "#/definitions/api-service_internal_models.MetaResponse"
|
|
},
|
|
"summary": {
|
|
"$ref": "#/definitions/api-service_internal_models.AggregateData"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_patient.PatientPaymentType": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
},
|
|
"fk_ms_patient_id": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableInt32"
|
|
},
|
|
"fk_ref_payment_type": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableInt32"
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"name": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
},
|
|
"number": {
|
|
"$ref": "#/definitions/sql.NullString"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_patient.PatientPostRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"medical_record_number"
|
|
],
|
|
"properties": {
|
|
"medical_record_number": {
|
|
"description": "ID int64 `json:\"id\" validate:\"required,min=1\"`",
|
|
"type": "string",
|
|
"minLength": 1
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_permission.PermissionCreateRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"create": {
|
|
"type": "boolean"
|
|
},
|
|
"delete": {
|
|
"type": "boolean"
|
|
},
|
|
"disable": {
|
|
"type": "boolean"
|
|
},
|
|
"fk_rol_pages_id": {
|
|
"type": "integer"
|
|
},
|
|
"group_keycloak": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"read": {
|
|
"type": "boolean"
|
|
},
|
|
"role_keycloak": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"update": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_permission.PermissionCreateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/definitions/api-service_internal_models_permission.Rol_permission"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_permission.PermissionDeleteResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_permission.PermissionUpdateRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"type": "boolean"
|
|
},
|
|
"create": {
|
|
"type": "boolean"
|
|
},
|
|
"delete": {
|
|
"type": "boolean"
|
|
},
|
|
"disable": {
|
|
"type": "boolean"
|
|
},
|
|
"fk_rol_pages_id": {
|
|
"type": "integer"
|
|
},
|
|
"group_keycloak": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"read": {
|
|
"type": "boolean"
|
|
},
|
|
"role_keycloak": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"update": {
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_permission.PermissionUpdateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/definitions/api-service_internal_models_permission.Rol_permission"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_permission.PermissionsGetResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"code": {
|
|
"type": "integer"
|
|
},
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_permission.Rol_permission"
|
|
}
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"meta": {
|
|
"$ref": "#/definitions/api-service_internal_models.MetaResponse"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_permission.Rol_permission": {
|
|
"type": "object",
|
|
"properties": {
|
|
"active": {
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
},
|
|
"create": {
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
},
|
|
"delete": {
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
},
|
|
"disable": {
|
|
"description": "\"disable\" is a Go keyword, so \"Disable\" is used for the field name.",
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
}
|
|
]
|
|
},
|
|
"fk_rol_pages_id": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableInt32"
|
|
},
|
|
"group_keycloak": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"id": {
|
|
"type": "integer"
|
|
},
|
|
"read": {
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
},
|
|
"role_keycloak": {
|
|
"description": "Use NullString for optional text fields",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"update": {
|
|
"$ref": "#/definitions/sql.NullBool"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_retribusi.Retribusi": {
|
|
"type": "object",
|
|
"properties": {
|
|
"date_created": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableTime"
|
|
},
|
|
"date_updated": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableTime"
|
|
},
|
|
"dinas": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"jenis": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"kelompok_obyek": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"kode_tarif": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"pelayanan": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"rekening_denda": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"rekening_pokok": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"satuan": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"satuan_overtime": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"sort": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableInt32"
|
|
},
|
|
"status": {
|
|
"type": "string"
|
|
},
|
|
"tarif": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"tarif_overtime": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"uraian_1": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"uraian_2": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"uraian_3": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"user_created": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
},
|
|
"user_updated": {
|
|
"$ref": "#/definitions/api-service_internal_models.NullableString"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_retribusi.RetribusiCreateRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"status"
|
|
],
|
|
"properties": {
|
|
"dinas": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"jenis": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"kelompok_obyek": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"kode_tarif": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"pelayanan": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"rekening_denda": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"rekening_pokok": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"satuan": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"satuan_overtime": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"enum": [
|
|
"draft",
|
|
"active",
|
|
"inactive"
|
|
]
|
|
},
|
|
"tarif": {
|
|
"type": "string"
|
|
},
|
|
"tarif_overtime": {
|
|
"type": "string"
|
|
},
|
|
"uraian_1": {
|
|
"type": "string"
|
|
},
|
|
"uraian_2": {
|
|
"type": "string"
|
|
},
|
|
"uraian_3": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_retribusi.RetribusiCreateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/definitions/api-service_internal_models_retribusi.Retribusi"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_retribusi.RetribusiDeleteResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_retribusi.RetribusiGetByIDResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/definitions/api-service_internal_models_retribusi.Retribusi"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_retribusi.RetribusiGetResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/api-service_internal_models_retribusi.Retribusi"
|
|
}
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
},
|
|
"meta": {
|
|
"$ref": "#/definitions/api-service_internal_models.MetaResponse"
|
|
},
|
|
"summary": {
|
|
"$ref": "#/definitions/api-service_internal_models.AggregateData"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_retribusi.RetribusiUpdateRequest": {
|
|
"type": "object",
|
|
"required": [
|
|
"status"
|
|
],
|
|
"properties": {
|
|
"dinas": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"jenis": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"kelompok_obyek": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"kode_tarif": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"pelayanan": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"rekening_denda": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"rekening_pokok": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"satuan": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"satuan_overtime": {
|
|
"type": "string",
|
|
"maxLength": 255,
|
|
"minLength": 1
|
|
},
|
|
"status": {
|
|
"type": "string",
|
|
"enum": [
|
|
"draft",
|
|
"active",
|
|
"inactive"
|
|
]
|
|
},
|
|
"tarif": {
|
|
"type": "string"
|
|
},
|
|
"tarif_overtime": {
|
|
"type": "string"
|
|
},
|
|
"uraian_1": {
|
|
"type": "string"
|
|
},
|
|
"uraian_2": {
|
|
"type": "string"
|
|
},
|
|
"uraian_3": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"api-service_internal_models_retribusi.RetribusiUpdateResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"data": {
|
|
"$ref": "#/definitions/api-service_internal_models_retribusi.Retribusi"
|
|
},
|
|
"message": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"sql.NullBool": {
|
|
"type": "object",
|
|
"properties": {
|
|
"bool": {
|
|
"type": "boolean"
|
|
},
|
|
"valid": {
|
|
"description": "Valid is true if Bool is not NULL",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"sql.NullInt32": {
|
|
"type": "object",
|
|
"properties": {
|
|
"int32": {
|
|
"type": "integer",
|
|
"format": "int32"
|
|
},
|
|
"valid": {
|
|
"description": "Valid is true if Int32 is not NULL",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"sql.NullInt64": {
|
|
"type": "object",
|
|
"properties": {
|
|
"int64": {
|
|
"type": "integer",
|
|
"format": "int64"
|
|
},
|
|
"valid": {
|
|
"description": "Valid is true if Int64 is not NULL",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"sql.NullString": {
|
|
"type": "object",
|
|
"properties": {
|
|
"string": {
|
|
"type": "string"
|
|
},
|
|
"valid": {
|
|
"description": "Valid is true if String is not NULL",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
},
|
|
"sql.NullTime": {
|
|
"type": "object",
|
|
"properties": {
|
|
"time": {
|
|
"type": "string"
|
|
},
|
|
"valid": {
|
|
"description": "Valid is true if Time is not NULL",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |