add support for custom text fields

This commit is contained in:
Hayden 2022-10-15 21:41:27 -08:00
parent 57f9372e49
commit 434f1fa411
11 changed files with 384 additions and 38 deletions

View file

@ -352,7 +352,7 @@ const docTemplate = `{
"application/json"
],
"tags": [
"Items"
"Items Attachments"
],
"summary": "imports items into the database",
"parameters": [
@ -415,7 +415,7 @@ const docTemplate = `{
"application/octet-stream"
],
"tags": [
"Items"
"Items Attachments"
],
"summary": "retrieves an attachment for an item",
"parameters": [
@ -452,7 +452,7 @@ const docTemplate = `{
"application/octet-stream"
],
"tags": [
"Items"
"Items Attachments"
],
"summary": "retrieves an attachment for an item",
"parameters": [
@ -487,7 +487,7 @@ const docTemplate = `{
}
],
"tags": [
"Items"
"Items Attachments"
],
"summary": "retrieves an attachment for an item",
"parameters": [
@ -531,7 +531,7 @@ const docTemplate = `{
}
],
"tags": [
"Items"
"Items Attachments"
],
"summary": "retrieves an attachment for an item",
"parameters": [
@ -1256,6 +1256,32 @@ const docTemplate = `{
}
}
},
"repo.ItemField": {
"type": "object",
"properties": {
"booleanValue": {
"type": "boolean"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"numberValue": {
"type": "integer"
},
"textValue": {
"type": "string"
},
"timeValue": {
"type": "string"
},
"type": {
"type": "string"
}
}
},
"repo.ItemOut": {
"type": "object",
"properties": {
@ -1271,6 +1297,13 @@ const docTemplate = `{
"description": {
"type": "string"
},
"fields": {
"description": "Future",
"type": "array",
"items": {
"$ref": "#/definitions/repo.ItemField"
}
},
"id": {
"type": "string"
},
@ -1388,6 +1421,12 @@ const docTemplate = `{
"description": {
"type": "string"
},
"fields": {
"type": "array",
"items": {
"$ref": "#/definitions/repo.ItemField"
}
},
"id": {
"type": "string"
},

View file

@ -344,7 +344,7 @@
"application/json"
],
"tags": [
"Items"
"Items Attachments"
],
"summary": "imports items into the database",
"parameters": [
@ -407,7 +407,7 @@
"application/octet-stream"
],
"tags": [
"Items"
"Items Attachments"
],
"summary": "retrieves an attachment for an item",
"parameters": [
@ -444,7 +444,7 @@
"application/octet-stream"
],
"tags": [
"Items"
"Items Attachments"
],
"summary": "retrieves an attachment for an item",
"parameters": [
@ -479,7 +479,7 @@
}
],
"tags": [
"Items"
"Items Attachments"
],
"summary": "retrieves an attachment for an item",
"parameters": [
@ -523,7 +523,7 @@
}
],
"tags": [
"Items"
"Items Attachments"
],
"summary": "retrieves an attachment for an item",
"parameters": [
@ -1248,6 +1248,32 @@
}
}
},
"repo.ItemField": {
"type": "object",
"properties": {
"booleanValue": {
"type": "boolean"
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"numberValue": {
"type": "integer"
},
"textValue": {
"type": "string"
},
"timeValue": {
"type": "string"
},
"type": {
"type": "string"
}
}
},
"repo.ItemOut": {
"type": "object",
"properties": {
@ -1263,6 +1289,13 @@
"description": {
"type": "string"
},
"fields": {
"description": "Future",
"type": "array",
"items": {
"$ref": "#/definitions/repo.ItemField"
}
},
"id": {
"type": "string"
},
@ -1380,6 +1413,12 @@
"description": {
"type": "string"
},
"fields": {
"type": "array",
"items": {
"$ref": "#/definitions/repo.ItemField"
}
},
"id": {
"type": "string"
},

View file

@ -63,6 +63,23 @@ definitions:
name:
type: string
type: object
repo.ItemField:
properties:
booleanValue:
type: boolean
id:
type: string
name:
type: string
numberValue:
type: integer
textValue:
type: string
timeValue:
type: string
type:
type: string
type: object
repo.ItemOut:
properties:
attachments:
@ -73,6 +90,11 @@ definitions:
type: string
description:
type: string
fields:
description: Future
items:
$ref: '#/definitions/repo.ItemField'
type: array
id:
type: string
insured:
@ -153,6 +175,10 @@ definitions:
properties:
description:
type: string
fields:
items:
$ref: '#/definitions/repo.ItemField'
type: array
id:
type: string
insured:
@ -653,7 +679,7 @@ paths:
- Bearer: []
summary: imports items into the database
tags:
- Items
- Items Attachments
/v1/items/{id}/attachments/{attachment_id}:
delete:
parameters:
@ -674,7 +700,7 @@ paths:
- Bearer: []
summary: retrieves an attachment for an item
tags:
- Items
- Items Attachments
get:
parameters:
- description: Item ID
@ -698,7 +724,7 @@ paths:
- Bearer: []
summary: retrieves an attachment for an item
tags:
- Items
- Items Attachments
put:
parameters:
- description: Item ID
@ -726,7 +752,7 @@ paths:
- Bearer: []
summary: retrieves an attachment for an item
tags:
- Items
- Items Attachments
/v1/items/{id}/attachments/download:
get:
parameters:
@ -749,7 +775,7 @@ paths:
- Bearer: []
summary: retrieves an attachment for an item
tags:
- Items
- Items Attachments
/v1/items/import:
post:
parameters:

View file

@ -22,7 +22,7 @@ type (
// HandleItemsImport godocs
// @Summary imports items into the database
// @Tags Items
// @Tags Items Attachments
// @Produce json
// @Param id path string true "Item ID"
// @Param file formData file true "File attachment"
@ -99,7 +99,7 @@ func (ctrl *V1Controller) HandleItemAttachmentCreate() http.HandlerFunc {
// HandleItemAttachmentGet godocs
// @Summary retrieves an attachment for an item
// @Tags Items
// @Tags Items Attachments
// @Produce application/octet-stream
// @Param id path string true "Item ID"
// @Param token query string true "Attachment token"
@ -126,7 +126,7 @@ func (ctrl *V1Controller) HandleItemAttachmentDownload() http.HandlerFunc {
// HandleItemAttachmentToken godocs
// @Summary retrieves an attachment for an item
// @Tags Items
// @Tags Items Attachments
// @Produce application/octet-stream
// @Param id path string true "Item ID"
// @Param attachment_id path string true "Attachment ID"
@ -139,7 +139,7 @@ func (ctrl *V1Controller) HandleItemAttachmentToken() http.HandlerFunc {
// HandleItemAttachmentDelete godocs
// @Summary retrieves an attachment for an item
// @Tags Items
// @Tags Items Attachments
// @Param id path string true "Item ID"
// @Param attachment_id path string true "Attachment ID"
// @Success 204
@ -151,7 +151,7 @@ func (ctrl *V1Controller) HandleItemAttachmentDelete() http.HandlerFunc {
// HandleItemAttachmentUpdate godocs
// @Summary retrieves an attachment for an item
// @Tags Items
// @Tags Items Attachments
// @Param id path string true "Item ID"
// @Param attachment_id path string true "Attachment ID"
// @Param payload body repo.ItemAttachmentUpdate true "Attachment Update"