/
egov-user-event-persister.yml
154 lines (86 loc) · 3.67 KB
/
egov-user-event-persister.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
serviceMaps:
serviceName: mSeva Event Notification
mappings:
- version: 1.0
name: mSeva
description: Persists events into the table
fromTopic: save-user-events
isTransaction: true
queryMaps:
- query: INSERT INTO eg_usrevents_events(tenantid, id, source, eventtype, category, name, postedby, referenceid, description, status, eventdetails, actions, recepient, createdby, createdtime, lastmodifiedby, lastmodifiedtime) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);
basePath: events.*
jsonMaps:
- jsonPath: $.events.*.tenantId
- jsonPath: $.events.*.id
- jsonPath: $.events.*.source
- jsonPath: $.events.*.eventType
- jsonPath: $.events.*.eventCategory
- jsonPath: $.events.*.name
- jsonPath: $.events.*.postedBy
- jsonPath: $.events.*.referenceId
- jsonPath: $.events.*.description
- jsonPath: $.events.*.status
- jsonPath: $.events.*.eventDetails
type: JSON
dbType: JSONB
- jsonPath: $.events.*.actions
type: JSON
dbType: JSONB
- jsonPath: $.events.*.recepient
type: JSON
dbType: JSONB
- jsonPath: $.events.*.auditDetails.createdBy
- jsonPath: $.events.*.auditDetails.createdTime
- jsonPath: $.events.*.auditDetails.lastModifiedBy
- jsonPath: $.events.*.auditDetails.lastModifiedTime
- query: INSERT INTO eg_usrevents_recepnt_event_registry(recepient, eventid) VALUES (?, ?);
basePath: events.*.recepientEventMap.*
jsonMaps:
- jsonPath: $.events.*.recepientEventMap.*.recepient
- jsonPath: $.events.*.recepientEventMap.*.eventId
- version: 1.0
name: mSeva
description: Updates event details in the table
fromTopic: update-user-events
isTransaction: true
queryMaps:
- query: UPDATE eg_usrevents_events SET description = ?, status = ?, name = ?, category = ?, eventdetails = ?, actions = ?, recepient = ? , lastmodifiedby = ?, lastmodifiedtime = ? WHERE id = ?;
basePath: events.*
jsonMaps:
- jsonPath: $.events.*.description
- jsonPath: $.events.*.status
- jsonPath: $.events.*.name
- jsonPath: $.events.*.eventCategory
- jsonPath: $.events.*.eventDetails
type: JSON
dbType: JSONB
- jsonPath: $.events.*.actions
type: JSON
dbType: JSONB
- jsonPath: $.events.*.recepient
type: JSON
dbType: JSONB
- jsonPath: $.events.*.auditDetails.lastModifiedBy
- jsonPath: $.events.*.auditDetails.lastModifiedTime
- jsonPath: $.events.*.id
- query: DELETE FROM eg_usrevents_recepnt_event_registry WHERE eventid = ?;
basePath: events.*
jsonMaps:
- jsonPath: $.events.*.id
- query: INSERT INTO eg_usrevents_recepnt_event_registry(recepient, eventid) VALUES (?, ?);
basePath: events.*.recepientEventMap.*
jsonMaps:
- jsonPath: $.events.*.recepientEventMap.*.recepient
- jsonPath: $.events.*.recepientEventMap.*.eventId
- version: 1.0
name: mSeva
description: Persists user last login details
fromTopic: user-events-lat
isTransaction: true
queryMaps:
- query: INSERT INTO eg_usrevents_user_lat(userid, lastaccesstime) VALUES (?, ?) ON CONFLICT (userid) DO UPDATE SET lastaccesstime = ?;
basePath: lastAccessDetails
jsonMaps:
- jsonPath: $.lastAccessDetails.userId
- jsonPath: $.lastAccessDetails.lastAccessTime
- jsonPath: $.lastAccessDetails.lastAccessTime