Skip to content

Commit

Permalink
[MODORGSTOR-171]. Create Data Structure/Api to store Organization Int…
Browse files Browse the repository at this point in the history
…egration details instead of mod-configuration (#486)

* [MODORGSTOR-171]. Create Data Structure/Api to store Organization Integration details instead of mod-configuration

* [MODORGSTOR-171]. Add more schemas

* [MODORGSTOR-171]. Add descriptions

* [MODORGSTOR-171]. Reformat samples indent
  • Loading branch information
BKadirkhodjaev authored Nov 18, 2024
1 parent a4f78a6 commit f40f8a8
Show file tree
Hide file tree
Showing 9 changed files with 488 additions and 0 deletions.
70 changes: 70 additions & 0 deletions mod-orgs/examples/integration_detail_collection.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
{
"integrationDetails": [
{
"id": "6a01fc0b-d556-49f9-a2bf-394718a9a3d4",
"_version": 1,
"exportConfigId": "123e4567-e89b-12d3-a456-426614174003",
"vendorId": "d0fb5aa0-cdf1-11e8-a8d5-f2801f1b9fd1",
"configName": "Sample EDI Config 1",
"configDescription": "This is a sample EDI configuration for a vendor.",
"ediConfig": {
"accountNoList": [
"123456",
"789012"
],
"defaultAcquisitionMethods": [
"e89b-12d3-a456-426614174000",
"e89b-12d3-a456-426614174001"
],
"ediNamingConvention": "Sample Naming Convention",
"libEdiCode": "LIB123",
"libEdiType": "014/EAN",
"vendorEdiCode": "VEND456",
"vendorEdiType": "091/Vendor-assigned",
"notes": "These are sample notes for the EDI configuration.",
"sendAccountNumber": true,
"supportOrder": true,
"supportInvoice": false
},
"ediFtp": {
"ftpFormat": "SFTP",
"serverAddress": "ftp://ftp.example.com",
"username": "ftpUser",
"password": "ftpPassword",
"ftpMode": "Binary",
"ftpConnMode": "Passive",
"ftpPort": 21,
"orderDirectory": "/orders",
"invoiceDirectory": "/invoices",
"notes": "FTP configuration notes",
"isPrimaryTransmissionMethod": true
},
"ediSchedule": {
"enableScheduledExport": false,
"scheduleParameters": {
"id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
"scheduleFrequency": 1,
"schedulePeriod": "DAY",
"schedulingDate": "2024-11-18T08:29:02.958+00:00",
"scheduleTime": "02:00",
"scheduleDay": 1,
"weekDays": [
"MONDAY",
"WEDNESDAY",
"FRIDAY"
],
"timeZone": "UTC"
},
"schedulingNotes": "Schedule notes for this EDI job"
},
"isDefaultConfig": true,
"metadata": {
"createdDate": "2024-11-18T10:30:53.788+00:00",
"createdByUserId": "3ab24dc6-155f-4c8f-86d3-ce2e92e804e6",
"updatedDate": "2024-11-18T10:30:53.788+00:00",
"updatedByUserId": "3ab24dc6-155f-4c8f-86d3-ce2e92e804e6"
}
}
],
"totalRecords": 1
}
65 changes: 65 additions & 0 deletions mod-orgs/examples/integration_detail_get.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
{
"id": "6a01fc0b-d556-49f9-a2bf-394718a9a3d4",
"_version": 1,
"exportConfigId": "123e4567-e89b-12d3-a456-426614174003",
"vendorId": "d0fb5aa0-cdf1-11e8-a8d5-f2801f1b9fd1",
"configName": "Sample EDI Config 1",
"configDescription": "This is a sample EDI configuration for a vendor.",
"ediConfig": {
"accountNoList": [
"123456",
"789012"
],
"defaultAcquisitionMethods": [
"e89b-12d3-a456-426614174000",
"e89b-12d3-a456-426614174001"
],
"ediNamingConvention": "Sample Naming Convention",
"libEdiCode": "LIB123",
"libEdiType": "014/EAN",
"vendorEdiCode": "VEND456",
"vendorEdiType": "091/Vendor-assigned",
"notes": "These are sample notes for the EDI configuration.",
"sendAccountNumber": true,
"supportOrder": true,
"supportInvoice": false
},
"ediFtp": {
"ftpFormat": "SFTP",
"serverAddress": "ftp://ftp.example.com",
"username": "ftpUser",
"password": "ftpPassword",
"ftpMode": "Binary",
"ftpConnMode": "Passive",
"ftpPort": 21,
"orderDirectory": "/orders",
"invoiceDirectory": "/invoices",
"notes": "FTP configuration notes",
"isPrimaryTransmissionMethod": true
},
"ediSchedule": {
"enableScheduledExport": false,
"scheduleParameters": {
"id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
"scheduleFrequency": 1,
"schedulePeriod": "DAY",
"schedulingDate": "2024-11-18T08:29:02.958+00:00",
"scheduleTime": "02:00",
"scheduleDay": 1,
"weekDays": [
"MONDAY",
"WEDNESDAY",
"FRIDAY"
],
"timeZone": "UTC"
},
"schedulingNotes": "Schedule notes for this EDI job"
},
"isDefaultConfig": true,
"metadata": {
"createdDate": "2024-11-18T10:30:53.788+00:00",
"createdByUserId": "3ab24dc6-155f-4c8f-86d3-ce2e92e804e6",
"updatedDate": "2024-11-18T10:30:53.788+00:00",
"updatedByUserId": "3ab24dc6-155f-4c8f-86d3-ce2e92e804e6"
}
}
48 changes: 48 additions & 0 deletions mod-orgs/examples/integration_detail_post.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
{
"_version": 1,
"exportConfigId": "123e4567-e89b-12d3-a456-426614174003",
"vendorId": "d0fb5aa0-cdf1-11e8-a8d5-f2801f1b9fd1",
"configName": "Sample EDI Config 1",
"configDescription": "This is a sample EDI configuration for a vendor.",
"ediConfig": {
"accountNoList": ["123456", "789012"],
"defaultAcquisitionMethods": ["e89b-12d3-a456-426614174000", "e89b-12d3-a456-426614174001"],
"ediNamingConvention": "Sample Naming Convention",
"libEdiCode": "LIB123",
"libEdiType": "014/EAN",
"vendorEdiCode": "VEND456",
"vendorEdiType": "091/Vendor-assigned",
"notes": "These are sample notes for the EDI configuration.",
"sendAccountNumber": true,
"supportOrder": true,
"supportInvoice": false
},
"ediFtp": {
"ftpConnMode": "Passive",
"ftpFormat": "SFTP",
"ftpMode": "Binary",
"ftpPort": 21,
"invoiceDirectory": "/invoices",
"isPrimaryTransmissionMethod": true,
"notes": "FTP configuration notes",
"orderDirectory": "/orders",
"password": "ftpPassword",
"serverAddress": "ftp://ftp.example.com",
"username": "ftpUser"
},
"ediSchedule": {
"enableScheduledExport": false,
"scheduleParameters": {
"id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
"scheduleFrequency": 1,
"schedulePeriod": "DAY",
"schedulingDate": "2024-11-18T08:29:02.958+00:00",
"scheduleTime": "02:00",
"scheduleDay": 1,
"weekDays": ["MONDAY", "WEDNESDAY", "FRIDAY"],
"timeZone": "UTC"
},
"schedulingNotes": "Schedule notes for this EDI job"
},
"isDefaultConfig": true
}
74 changes: 74 additions & 0 deletions mod-orgs/schemas/edi_config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "EDI config",
"type": "object",
"properties": {
"accountNoList": {
"description": "The list of account numbers of the vendor",
"type": "array",
"items": {
"type": "string"
}
},
"defaultAcquisitionMethods": {
"description": "Default acquisition methods for the accounts",
"type": "array",
"items": {
"description": "UUID of the acquisition method",
"$ref": "../../common/schemas/uuid.json"
}
},
"ediNamingConvention": {
"description": "The naming convention for this EDI",
"type": "string"
},
"libEdiCode": {
"description": "The library code for this EDI",
"type": "string"
},
"libEdiType": {
"description": "The library type for this EDI",
"type": "string",
"enum": [
"014/EAN",
"31B/US-SAN",
"091/Vendor-assigned",
"092/Customer-assigned"
]
},
"vendorEdiCode": {
"description": "The library code for this EDI",
"type": "string"
},
"vendorEdiType": {
"description": "The library type for this EDI",
"type": "string",
"enum": [
"014/EAN",
"31B/US-SAN",
"091/Vendor-assigned",
"092/Customer-assigned"
]
},
"notes": {
"description": "The notes for this EDI",
"type": "string"
},
"sendAccountNumber": {
"description": "If true then send account number",
"type": "boolean",
"default": false
},
"supportOrder": {
"description": "If true then order support",
"type": "boolean",
"default": false
},
"supportInvoice": {
"description": "If true then invoice support",
"type": "boolean",
"default": false
}
},
"additionalProperties": false
}
64 changes: 64 additions & 0 deletions mod-orgs/schemas/edi_ftp.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "The FTP object for this EDI",
"type": "object",
"properties": {
"ftpConnMode": {
"description": "The FTP connection mode for this EDI",
"type": "string",
"enum": [
"Active",
"Passive"
]
},
"ftpFormat": {
"description": "The FTP format for this EDI",
"type": "string",
"enum": [
"SFTP",
"FTP"
]
},
"ftpMode": {
"description": "The FTP mode for this EDI",
"type": "string",
"enum": [
"ASCII",
"Binary"
]
},
"ftpPort": {
"description": "The port for this EDI",
"type": "integer"
},
"invoiceDirectory": {
"description": "The invoice directory for this EDI",
"type": "string"
},
"isPrimaryTransmissionMethod": {
"description": "Primary transmission method",
"type": "boolean"
},
"notes": {
"description": "The notes for this EDI",
"type": "string"
},
"orderDirectory": {
"description": "The order directory for this EDI",
"type": "string"
},
"password": {
"description": "The login password for this EDI",
"type": "string"
},
"serverAddress": {
"description": "The server address for this EDI",
"type": "string"
},
"username": {
"description": "The login username for this EDI",
"type": "string"
}
},
"additionalProperties": false
}
21 changes: 21 additions & 0 deletions mod-orgs/schemas/edi_schedule.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "The job object for this EDI",
"type": "object",
"properties": {
"enableScheduledExport": {
"description": "Whether or not to enable scheduled for exports",
"type": "boolean",
"default": false
},
"scheduleParameters": {
"description": "Job scheduler parameters",
"$ref": "schedule_parameters.json"
},
"schedulingNotes": {
"description": "The schedule notes for this EDI job",
"type": "string"
}
},
"additionalProperties": false
}
Loading

0 comments on commit f40f8a8

Please sign in to comment.