corrad-bp/prisma/json/json-schema.json
Md Afiq Iskandar c43d9b6849 Enhance Form Builder and Management Features
- Updated the form builder to allow users to create new forms with additional fields for category and group, improving organization and usability.
- Introduced an empty state in the form builder to guide users in creating new forms.
- Enhanced the management page with new filters for category and group, allowing for better form organization and retrieval.
- Updated the database schema to include new fields for form category, tags, and group, along with corresponding API adjustments for form creation and updates.
- Improved the user interface with better handling of form descriptions and added visual indicators for categories and groups in the forms table.
2025-08-05 17:14:04 +08:00

889 lines
18 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"definitions": {
"caseInstance": {
"type": "object",
"properties": {
"caseID": {
"type": "integer"
},
"caseUUID": {
"type": "string"
},
"caseName": {
"type": "string"
},
"caseStatus": {
"type": "string",
"default": "active"
},
"caseVariables": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"caseSettings": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"caseDefinition": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"caseCreatedDate": {
"type": "string",
"format": "date-time"
},
"caseModifiedDate": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"caseCompletedDate": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"startedBy": {
"anyOf": [
{
"$ref": "#/definitions/user"
},
{
"type": "null"
}
]
},
"process": {
"$ref": "#/definitions/process"
},
"caseTimeline": {
"type": "array",
"items": {
"$ref": "#/definitions/caseTimeline"
}
},
"task": {
"type": "array",
"items": {
"$ref": "#/definitions/task"
}
}
}
},
"caseTimeline": {
"type": "object",
"properties": {
"timelineID": {
"type": "integer"
},
"timelineType": {
"type": "string"
},
"timelineDescription": {
"type": [
"string",
"null"
]
},
"timelineDate": {
"type": "string",
"format": "date-time"
},
"caseInstance": {
"$ref": "#/definitions/caseInstance"
},
"user": {
"anyOf": [
{
"$ref": "#/definitions/user"
},
{
"type": "null"
}
]
}
}
},
"form": {
"type": "object",
"properties": {
"formID": {
"type": "integer"
},
"formUUID": {
"type": "string"
},
"formName": {
"type": "string"
},
"formDescription": {
"type": [
"string",
"null"
]
},
"formComponents": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"formStatus": {
"type": "string",
"default": "active"
},
"formCreatedDate": {
"type": "string",
"format": "date-time"
},
"formModifiedDate": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"customCSS": {
"type": [
"string",
"null"
]
},
"customScript": {
"type": [
"string",
"null"
]
},
"formEvents": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"scriptMode": {
"type": [
"string",
"null"
],
"default": "safe"
},
"submitButton": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"formCategory": {
"type": [
"string",
"null"
]
},
"formTags": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"formGroup": {
"type": [
"string",
"null"
]
},
"creator": {
"anyOf": [
{
"$ref": "#/definitions/user"
},
{
"type": "null"
}
]
},
"formHistory": {
"type": "array",
"items": {
"$ref": "#/definitions/formHistory"
}
},
"task": {
"type": "array",
"items": {
"$ref": "#/definitions/task"
}
}
}
},
"formHistory": {
"type": "object",
"properties": {
"historyID": {
"type": "integer"
},
"formUUID": {
"type": "string"
},
"formName": {
"type": "string"
},
"formDescription": {
"type": [
"string",
"null"
]
},
"formComponents": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"formStatus": {
"type": "string"
},
"customCSS": {
"type": [
"string",
"null"
]
},
"customScript": {
"type": [
"string",
"null"
]
},
"formEvents": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"scriptMode": {
"type": [
"string",
"null"
]
},
"submitButton": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"versionNumber": {
"type": "integer"
},
"changeDescription": {
"type": [
"string",
"null"
]
},
"savedDate": {
"type": "string",
"format": "date-time"
},
"form": {
"$ref": "#/definitions/form"
},
"user": {
"anyOf": [
{
"$ref": "#/definitions/user"
},
{
"type": "null"
}
]
}
}
},
"process": {
"type": "object",
"properties": {
"processID": {
"type": "integer"
},
"processUUID": {
"type": "string"
},
"processName": {
"type": "string"
},
"processDescription": {
"type": [
"string",
"null"
]
},
"processDefinition": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"processVersion": {
"type": "integer",
"default": 1
},
"processStatus": {
"type": "string",
"default": "draft"
},
"processCreatedDate": {
"type": "string",
"format": "date-time"
},
"processModifiedDate": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"isTemplate": {
"type": "boolean",
"default": false
},
"processCategory": {
"type": [
"string",
"null"
]
},
"processOwner": {
"type": [
"string",
"null"
]
},
"processPermissions": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"processPriority": {
"type": [
"string",
"null"
],
"default": "normal"
},
"processSettings": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"processVariables": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"templateCategory": {
"type": [
"string",
"null"
]
},
"processDeletedDate": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"caseInstance": {
"type": "array",
"items": {
"$ref": "#/definitions/caseInstance"
}
},
"creator": {
"anyOf": [
{
"$ref": "#/definitions/user"
},
{
"type": "null"
}
]
},
"processHistory": {
"type": "array",
"items": {
"$ref": "#/definitions/processHistory"
}
}
}
},
"processHistory": {
"type": "object",
"properties": {
"historyID": {
"type": "integer"
},
"processUUID": {
"type": "string"
},
"processName": {
"type": "string"
},
"processDescription": {
"type": [
"string",
"null"
]
},
"processDefinition": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"processVersion": {
"type": "integer"
},
"processStatus": {
"type": "string"
},
"processCategory": {
"type": [
"string",
"null"
]
},
"processOwner": {
"type": [
"string",
"null"
]
},
"processPermissions": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"processPriority": {
"type": [
"string",
"null"
]
},
"processSettings": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"processVariables": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"templateCategory": {
"type": [
"string",
"null"
]
},
"versionNumber": {
"type": "integer"
},
"changeDescription": {
"type": [
"string",
"null"
]
},
"savedDate": {
"type": "string",
"format": "date-time"
},
"process": {
"$ref": "#/definitions/process"
},
"user": {
"anyOf": [
{
"$ref": "#/definitions/user"
},
{
"type": "null"
}
]
}
}
},
"role": {
"type": "object",
"properties": {
"roleID": {
"type": "integer"
},
"roleName": {
"type": [
"string",
"null"
]
},
"roleDescription": {
"type": [
"string",
"null"
]
},
"roleStatus": {
"type": [
"string",
"null"
]
},
"roleCreatedDate": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"roleModifiedDate": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"userrole": {
"type": "array",
"items": {
"$ref": "#/definitions/userrole"
}
}
}
},
"task": {
"type": "object",
"properties": {
"taskID": {
"type": "integer"
},
"taskUUID": {
"type": "string"
},
"taskName": {
"type": "string"
},
"taskType": {
"type": "string"
},
"taskStatus": {
"type": "string",
"default": "pending"
},
"taskData": {
"type": [
"number",
"string",
"boolean",
"object",
"array",
"null"
]
},
"taskCreatedDate": {
"type": "string",
"format": "date-time"
},
"taskModifiedDate": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"taskCompletedDate": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"caseInstance": {
"$ref": "#/definitions/caseInstance"
},
"user": {
"anyOf": [
{
"$ref": "#/definitions/user"
},
{
"type": "null"
}
]
},
"form": {
"anyOf": [
{
"$ref": "#/definitions/form"
},
{
"type": "null"
}
]
}
}
},
"user": {
"type": "object",
"properties": {
"userID": {
"type": "integer"
},
"userSecretKey": {
"type": [
"string",
"null"
]
},
"userUsername": {
"type": [
"string",
"null"
]
},
"userPassword": {
"type": [
"string",
"null"
]
},
"userFullName": {
"type": [
"string",
"null"
]
},
"userEmail": {
"type": [
"string",
"null"
]
},
"userPhone": {
"type": [
"string",
"null"
]
},
"userStatus": {
"type": [
"string",
"null"
]
},
"userCreatedDate": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"userModifiedDate": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"caseInstance": {
"type": "array",
"items": {
"$ref": "#/definitions/caseInstance"
}
},
"caseTimeline": {
"type": "array",
"items": {
"$ref": "#/definitions/caseTimeline"
}
},
"form": {
"type": "array",
"items": {
"$ref": "#/definitions/form"
}
},
"formHistory": {
"type": "array",
"items": {
"$ref": "#/definitions/formHistory"
}
},
"process": {
"type": "array",
"items": {
"$ref": "#/definitions/process"
}
},
"processHistory": {
"type": "array",
"items": {
"$ref": "#/definitions/processHistory"
}
},
"task": {
"type": "array",
"items": {
"$ref": "#/definitions/task"
}
},
"userrole": {
"type": "array",
"items": {
"$ref": "#/definitions/userrole"
}
}
}
},
"userrole": {
"type": "object",
"properties": {
"userRoleID": {
"type": "integer"
},
"userRoleCreatedDate": {
"type": "string",
"format": "date-time"
},
"role": {
"$ref": "#/definitions/role"
},
"user": {
"$ref": "#/definitions/user"
}
}
}
},
"type": "object",
"properties": {
"caseInstance": {
"$ref": "#/definitions/caseInstance"
},
"caseTimeline": {
"$ref": "#/definitions/caseTimeline"
},
"form": {
"$ref": "#/definitions/form"
},
"formHistory": {
"$ref": "#/definitions/formHistory"
},
"process": {
"$ref": "#/definitions/process"
},
"processHistory": {
"$ref": "#/definitions/processHistory"
},
"role": {
"$ref": "#/definitions/role"
},
"task": {
"$ref": "#/definitions/task"
},
"user": {
"$ref": "#/definitions/user"
},
"userrole": {
"$ref": "#/definitions/userrole"
}
}
}