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
  • Loading branch information
BKadirkhodjaev committed Nov 18, 2024
1 parent 1652e69 commit eda3362
Show file tree
Hide file tree
Showing 5 changed files with 263 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
}
55 changes: 55 additions & 0 deletions mod-orgs/schemas/integration_detail.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "EDI config",
"type": "object",
"properties": {
"id": {
"description": "The unique id of this email",
"$ref": "../../common/schemas/uuid.json"
},
"_version": {
"type": "integer",
"description": "Record version for optimistic locking"
},
"exportConfigId" : {
"description": "UUID of the export configuration. Needed to find Jobs by export config UUID",
"$ref": "../../common/schemas/uuid.json"
},
"vendorId": {
"description": "UUID of the acquisition method",
"$ref": "../../common/schemas/uuid.json"
},
"configName": {
"description": "Configuration name",
"type": "string"
},
"configDescription": {
"description": "Configuration description",
"type": "string"
},
"ediConfig": {
"description": "EDI config for this vendor",
"$ref": "edi_config.json"
},
"ediFtp": {
"$ref": "edi_ftp.json"
},
"ediSchedule": {
"$ref": "edi_schedule.json"
},
"isDefaultConfig": {
"description": "If true then config is default",
"type": "boolean",
"default": false
},
"metadata": {
"type": "object",
"$ref": "../../../raml-util/schemas/metadata.schema",
"readonly": true
}
},
"additionalProperties": false,
"required": [
"vendorId"
]
}
25 changes: 25 additions & 0 deletions mod-orgs/schemas/integration_detail_collection.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Collection of integration detail records",
"type": "object",
"properties": {
"integrationDetails": {
"description": "The list of integration details in this collection",
"type": "array",
"id": "integrationDetails",
"items": {
"type": "object",
"$ref": "integration_detail.json"
}
},
"totalRecords": {
"description": "The number of integration detail records returned in this collection",
"type": "integer"
}
},
"additionalProperties": false,
"required": [
"integrationDetails",
"totalRecords"
]
}

0 comments on commit eda3362

Please sign in to comment.