Skip to content

[MODEXPS-315] Export Configuration create/update domain events - #383

Merged
SerhiiNosko merged 8 commits into
masterfrom
MODEXPS-315
Aug 7, 2026
Merged

[MODEXPS-315] Export Configuration create/update domain events#383
SerhiiNosko merged 8 commits into
masterfrom
MODEXPS-315

Conversation

@Saba-Zedginidze-EPAM

@Saba-Zedginidze-EPAM Saba-Zedginidze-EPAM commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Purpose

[MODEXPS-315] Export Configuration create/update domain events

Approach

  • Add create and update event producing for configurations
  • Update ITs to assert the sent events

Evaluation

Create Event for Export Configuration

Full payload:

{
	"eventId": "ed4b0d6f-57f0-4162-b3c9-6dca4028c006",
	"eventTs": 1786003184969,
	"tenant": "diku",
	"type": "CREATE",
	"new": {
		"id": "dfa97898-a7fc-4f82-8673-85f66e65efcf",
		"type": "CLAIMS",
		"configName": "CLAIMS_e0fb5df2-cdf1-11e8-a8d5-f2801f1b9fd1_dfa97898-a7fc-4f82-8673-85f66e65efcf",
		"tenant": "diku",
		"exportTypeSpecificParameters": {
			"vendorEdiOrdersExportConfig": {
				"exportConfigId": "dfa97898-a7fc-4f82-8673-85f66e65efcf",
				"vendorId": "e0fb5df2-cdf1-11e8-a8d5-f2801f1b9fd1",
				"configName": "Test",
				"ediConfig": {
					"ediNamingConvention": "{organizationCode}-{integrationName}-{exportJobEndDate}",
					"libEdiType": "31B/US-SAN",
					"vendorEdiType": "31B/US-SAN",
					"sendAccountNumber": false,
					"supportOrder": false,
					"supportInvoice": false
				},
				"ediFtp": {
					"ftpConnMode": "Active",
					"ftpFormat": "SFTP",
					"ftpMode": "ASCII",
					"username": "test"
				},
				"isDefaultConfig": false,
				"integrationType": "Claiming",
				"transmissionMethod": "File download",
				"fileFormat": "CSV"
			}
		},
		"schedulePeriod": "NONE"
	}
}

The ediFtp password is missing from the event payload, even though it was entered in the UI as required by the story.


Update Event for Export Configuration

Full payload (including configName and notes difference):

{
	"eventId": "b1fd6979-c63d-4958-8b2f-7ac6825f53af",
	"eventTs": 1786003363622,
	"tenant": "diku",
	"type": "UPDATE",
	"old": {
		"id": "dfa97898-a7fc-4f82-8673-85f66e65efcf",
		"type": "CLAIMS",
		"configName": "CLAIMS_e0fb5df2-cdf1-11e8-a8d5-f2801f1b9fd1_dfa97898-a7fc-4f82-8673-85f66e65efcf",
		"tenant": "diku",
		"exportTypeSpecificParameters": {
			"vendorEdiOrdersExportConfig": {
				"exportConfigId": "dfa97898-a7fc-4f82-8673-85f66e65efcf",
				"vendorId": "e0fb5df2-cdf1-11e8-a8d5-f2801f1b9fd1",
				"configName": "Test",
				"ediConfig": {
					"ediNamingConvention": "{organizationCode}-{integrationName}-{exportJobEndDate}",
					"libEdiType": "31B/US-SAN",
					"vendorEdiType": "31B/US-SAN",
					"sendAccountNumber": false,
					"supportOrder": false,
					"supportInvoice": false
				},
				"ediFtp": {
					"ftpConnMode": "Active",
					"ftpFormat": "SFTP",
					"ftpMode": "ASCII",
					"username": "test"
				},
				"isDefaultConfig": false,
				"integrationType": "Claiming",
				"transmissionMethod": "File download",
				"fileFormat": "CSV"
			}
		},
		"schedulePeriod": "NONE"
	},
	"new": {
		"id": "dfa97898-a7fc-4f82-8673-85f66e65efcf",
		"type": "CLAIMS",
		"configName": "CLAIMS_e0fb5df2-cdf1-11e8-a8d5-f2801f1b9fd1_dfa97898-a7fc-4f82-8673-85f66e65efcf",
		"tenant": "diku",
		"exportTypeSpecificParameters": {
			"vendorEdiOrdersExportConfig": {
				"exportConfigId": "dfa97898-a7fc-4f82-8673-85f66e65efcf",
				"vendorId": "e0fb5df2-cdf1-11e8-a8d5-f2801f1b9fd1",
				"configName": "Test NEW",
				"ediConfig": {
					"ediNamingConvention": "{organizationCode}-{integrationName}-{exportJobEndDate}",
					"libEdiType": "31B/US-SAN",
					"vendorEdiType": "31B/US-SAN",
					"notes": "TEST NOTE",
					"sendAccountNumber": false,
					"supportOrder": false,
					"supportInvoice": false
				},
				"ediFtp": {
					"ftpConnMode": "Active",
					"ftpFormat": "SFTP",
					"ftpMode": "ASCII",
					"username": "test"
				},
				"isDefaultConfig": false,
				"integrationType": "Claiming",
				"transmissionMethod": "File download",
				"fileFormat": "CSV"
			}
		},
		"schedulePeriod": "NONE"
	}
}

Expected:
Include the differences between the old and new payloads, including updates to configName and notes.

Pre-Merge Checklist:

Before merging this PR, please go through the following list and take appropriate actions.

  • Does this PR meet or exceed the expected quality standards?
    • Code coverage on new code is 80% or greater
    • Duplications on new code is 3% or less
    • Check logging
    • There are no major code smells or security issues
  • Does this introduce breaking changes?
    • Were any API paths or methods changed, added or removed?
    • Were there any schema changes?
    • Did any of the interface versions change?
    • Were permissions changed, added, or removed?
    • Are there new interface dependencies?
    • There are no breaking changes in this PR.

@ykashtalian

Copy link
Copy Markdown
Contributor

Please fix the Sonar issues.

Comment thread src/main/java/org/folio/des/config/kafka/KafkaService.java Outdated
Comment thread NEWS.md Outdated
Comment thread src/main/java/org/folio/des/config/kafka/KafkaService.java Outdated
@ykashtalian ykashtalian self-assigned this Aug 5, 2026
@sonarqubecloud

sonarqubecloud Bot commented Aug 7, 2026

Copy link
Copy Markdown

@SerhiiNosko
SerhiiNosko merged commit dd8abd6 into master Aug 7, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants