@appaflytech/zeyrek-ai-mcp 0.0.30 → 0.0.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +0 -15
- package/README.md +5 -5
- package/dist/config.js +0 -37
- package/dist/index.js +0 -2
- package/dist/knowledge/backendConstraints.js +1 -18
- package/dist/knowledge/boxSections.js +184 -0
- package/dist/knowledge/componentCatalog.js +232 -562
- package/dist/knowledge/componentEvents.js +21 -141
- package/dist/knowledge/layoutSummary.js +2 -140
- package/dist/knowledge/normalize.js +67 -236
- package/dist/knowledge/outlines.js +0 -36
- package/dist/knowledge/policy.js +4 -18
- package/dist/knowledge/reservedTables.js +0 -79
- package/dist/knowledge/rules.js +21 -319
- package/dist/knowledge/schemaGuard.js +0 -11
- package/dist/knowledge/styleResolve.js +38 -55
- package/dist/knowledge/themeResolve.js +3 -3
- package/dist/observability/trace.js +3 -6
- package/dist/platform/diagnostics.js +4 -10
- package/dist/platform/domSummary.js +1 -1
- package/dist/platform/errors.js +10 -162
- package/dist/platform/http.js +8 -29
- package/dist/platform/responses.js +5 -39
- package/dist/platform/{capture/capture.js → screenshot.js} +519 -105
- package/dist/platform/secrets.js +1 -17
- package/dist/platform/strictArguments.js +12 -68
- package/dist/platform/tokenVault.js +4 -187
- package/dist/resources/examples/layout-app-shell.json +707 -229
- package/dist/resources/examples/page-detail-profile.json +1 -2
- package/dist/resources/examples/page-dynamic-form.json +2 -3
- package/dist/resources/examples/page-flex-sections.json +1 -1
- package/dist/resources/examples/page-html-embed.json +1 -1
- package/dist/resources/examples/workflow-basic.json +2 -8
- package/dist/resources/guides/component.md +4 -91
- package/dist/resources/guides/entity.md +8 -50
- package/dist/resources/guides/expressions.md +5 -14
- package/dist/resources/guides/functions.md +1 -1
- package/dist/resources/guides/getting-started.md +1 -38
- package/dist/resources/guides/layout.md +58 -55
- package/dist/resources/guides/microservice.md +2 -81
- package/dist/resources/guides/middleware.md +2 -44
- package/dist/resources/guides/page.md +75 -454
- package/dist/resources/guides/theme.md +2 -8
- package/dist/resources/guides/translation.md +1 -1
- package/dist/resources/guides/workflow.md +1 -58
- package/dist/resources/rules.js +5 -11
- package/dist/resources/schema-fingerprint.json +5 -7
- package/dist/resources/schemas/CreateEntityCommand.json +0 -118
- package/dist/resources/schemas/CreateMicroserviceCommand.json +1 -13
- package/dist/resources/schemas/CreateQueryCommand.json +0 -4
- package/dist/resources/schemas/CreateWorkflowCommand.json +1 -143
- package/dist/resources/schemas/DataJobDto.json +1 -6
- package/dist/resources/schemas/GlobalFunctionUpdateResultDto.json +1 -21
- package/dist/resources/schemas/MicroserviceDto.json +3 -15
- package/dist/resources/schemas/PreviewMicroserviceCommand.json +1 -10
- package/dist/resources/schemas/PreviewWorkflowCommand.json +1 -22
- package/dist/resources/schemas/StepDto.json +1 -22
- package/dist/resources/schemas/UpdateEntityCommand.json +0 -118
- package/dist/resources/schemas/UpdateMicroserviceCommand.json +1 -13
- package/dist/resources/schemas/UpdateQueryCommand.json +0 -4
- package/dist/resources/schemas/UpdateViewCommand.json +2 -0
- package/dist/resources/schemas/UpdateWorkflowCommand.json +1 -143
- package/dist/server.js +1 -27
- package/dist/tools/access.js +2 -369
- package/dist/tools/applications.js +3 -60
- package/dist/tools/common.js +0 -7
- package/dist/tools/components.js +14 -118
- package/dist/tools/datasources.js +3 -3
- package/dist/tools/dependencies.js +1 -1
- package/dist/tools/deployments.js +2 -2
- package/dist/tools/designSchemaPatch.js +18 -34
- package/dist/tools/dtos.js +5 -36
- package/dist/tools/entities.js +12 -79
- package/dist/tools/externalComponents.js +5 -26
- package/dist/tools/flows.js +14 -122
- package/dist/tools/folders.js +1 -1
- package/dist/tools/imports.js +2 -5
- package/dist/tools/layouts.js +17 -50
- package/dist/tools/merges.js +1 -1
- package/dist/tools/microservices.js +25 -77
- package/dist/tools/pages.js +112 -465
- package/dist/tools/platformInfo.js +8 -27
- package/dist/tools/projects.js +9 -71
- package/dist/tools/rows.js +13 -69
- package/dist/tools/schemaOps.js +1 -61
- package/dist/tools/screenWrite.js +8 -37
- package/dist/tools/screens.js +5 -95
- package/dist/tools/templates.js +1 -26
- package/dist/tools/translations.js +1 -1
- package/dist/tools/variables.js +5 -11
- package/dist/tools/workflows.js +5 -10
- package/package.json +2 -2
- package/dist/knowledge/access.js +0 -802
- package/dist/knowledge/case.js +0 -41
- package/dist/knowledge/connectDataBind.js +0 -819
- package/dist/knowledge/connectDataDefinition.js +0 -341
- package/dist/knowledge/connectDataExecute.js +0 -93
- package/dist/knowledge/connectDataRules.js +0 -128
- package/dist/knowledge/decision.js +0 -121
- package/dist/knowledge/expressionPrelude.js +0 -59
- package/dist/knowledge/microserviceParameters.js +0 -58
- package/dist/knowledge/mining.js +0 -94
- package/dist/knowledge/mobileComponentCatalog.js +0 -859
- package/dist/knowledge/mobileComponentEvents.js +0 -239
- package/dist/knowledge/platform/lint.js +0 -385
- package/dist/knowledge/platform/mobile.js +0 -142
- package/dist/knowledge/platform/mobileLayoutLint.js +0 -324
- package/dist/knowledge/platform/mobileRules.js +0 -231
- package/dist/knowledge/platform/mobileSpacing.js +0 -82
- package/dist/knowledge/platform/mobileTabs.js +0 -108
- package/dist/knowledge/platform/nativeBoxModel.js +0 -44
- package/dist/knowledge/platform/profile.js +0 -25
- package/dist/knowledge/platform/resolve.js +0 -122
- package/dist/knowledge/platform/web.js +0 -39
- package/dist/knowledge/process.js +0 -510
- package/dist/knowledge/rowFilter.js +0 -43
- package/dist/knowledge/styleResolveNative.js +0 -527
- package/dist/platform/argumentAliases.js +0 -128
- package/dist/platform/bodyFile.js +0 -103
- package/dist/platform/capture/actions.js +0 -333
- package/dist/platform/capture/browser.js +0 -1
- package/dist/platform/capture/console-log.js +0 -122
- package/dist/platform/capture/index.js +0 -11
- package/dist/platform/capture/readiness.js +0 -103
- package/dist/platform/capture/summary.js +0 -77
- package/dist/platform/capture/target.js +0 -5
- package/dist/platform/capture/targets/studio-mobile.js +0 -15
- package/dist/platform/capture/targets/studio-web.js +0 -5
- package/dist/platform/impersonation.js +0 -45
- package/dist/platform/jsonArray.js +0 -24
- package/dist/platform/schemaReadMemory.js +0 -60
- package/dist/resources/examples/bpm-gorev-kontrol.json +0 -294
- package/dist/resources/examples/bpm-iso-dokuman.json +0 -228
- package/dist/resources/examples/bpm-satinalma.json +0 -376
- package/dist/resources/examples/connect-data-convert-verify.json +0 -107
- package/dist/resources/examples/connect-data-dropdown-roles.json +0 -66
- package/dist/resources/examples/connect-data-edit-m2m.json +0 -73
- package/dist/resources/examples/connect-data-query-params.json +0 -50
- package/dist/resources/examples/connect-data-table-entity.json +0 -147
- package/dist/resources/examples/connect-data-workflow-microservice.json +0 -65
- package/dist/resources/examples/mobile-app-shell-drawer.json +0 -243
- package/dist/resources/examples/mobile-app-shell-stack.json +0 -157
- package/dist/resources/examples/mobile-app-shell-tab.json +0 -208
- package/dist/resources/examples/mobile-form-screen.json +0 -365
- package/dist/resources/examples/mobile-list-detail-form.json +0 -672
- package/dist/resources/guides/access.md +0 -796
- package/dist/resources/guides/bpm.md +0 -686
- package/dist/resources/guides/case.md +0 -153
- package/dist/resources/guides/decision.md +0 -185
- package/dist/resources/guides/mobile-layout.md +0 -193
- package/dist/resources/guides/mobile.md +0 -495
- package/dist/resources/read.js +0 -41
- package/dist/resources/schemas/AccessExplanationDto.json +0 -144
- package/dist/resources/schemas/AccessMatrixDto.json +0 -170
- package/dist/resources/schemas/AccessPermissionDto.json +0 -57
- package/dist/resources/schemas/AccessPolicyDto.json +0 -223
- package/dist/resources/schemas/AccessResourceDto.json +0 -86
- package/dist/resources/schemas/AppSessionDto.json +0 -53
- package/dist/resources/schemas/ConnectDataDescribeDto.json +0 -344
- package/dist/resources/schemas/ConnectDataRequestModel.json +0 -202
- package/dist/resources/schemas/ConnectDataResultDto.json +0 -421
- package/dist/resources/schemas/ConnectorCredentialDto.json +0 -70
- package/dist/resources/schemas/ConvertConnectDataToMicroserviceCommand.json +0 -37
- package/dist/resources/schemas/CreateAccessPolicyCommand.json +0 -209
- package/dist/resources/schemas/CreateDecisionCommand.json +0 -221
- package/dist/resources/schemas/CreateProcessDefinitionCommand.json +0 -1337
- package/dist/resources/schemas/DecisionDto.json +0 -302
- package/dist/resources/schemas/DetachConnectDataMicroserviceCommand.json +0 -28
- package/dist/resources/schemas/ExplainAccessQuery.json +0 -33
- package/dist/resources/schemas/GenerateProcessDocumentCommand.json +0 -116
- package/dist/resources/schemas/OrganizationProjectDto.json +0 -335
- package/dist/resources/schemas/OrganizationSchemaDto.json +0 -196
- package/dist/resources/schemas/OrganizationSchemaVersionDto.json +0 -207
- package/dist/resources/schemas/PatchProcessDefinitionCommand.json +0 -76
- package/dist/resources/schemas/ProcessDefinitionDto.json +0 -1480
- package/dist/resources/schemas/ProcessSimulationDto.json +0 -96
- package/dist/resources/schemas/SaveConnectorCredentialCommand.json +0 -90
- package/dist/resources/schemas/SaveProcessEventSourceCommand.json +0 -61
- package/dist/resources/schemas/SaveProcessMailSourceCommand.json +0 -89
- package/dist/resources/schemas/SignProcessTaskCommand.json +0 -73
- package/dist/resources/schemas/SimulateProcessDefinitionQuery.json +0 -92
- package/dist/resources/schemas/UpdateAccessPolicyCommand.json +0 -209
- package/dist/resources/schemas/UpdateDecisionCommand.json +0 -216
- package/dist/resources/schemas/UpdateProcessDefinitionCommand.json +0 -1357
- package/dist/resources/schemas/ValidateProcessDefinitionQuery.json +0 -1339
- package/dist/tools/accessOperations.js +0 -135
- package/dist/tools/accessPolicies.js +0 -170
- package/dist/tools/accessRuntime.js +0 -203
- package/dist/tools/bpm.js +0 -343
- package/dist/tools/bpmGovernance.js +0 -266
- package/dist/tools/bpmOperations.js +0 -230
- package/dist/tools/bpmReporting.js +0 -154
- package/dist/tools/bpmRouting.js +0 -150
- package/dist/tools/bpmRuntime.js +0 -396
- package/dist/tools/case.js +0 -178
- package/dist/tools/caseRuntime.js +0 -89
- package/dist/tools/connectData.js +0 -449
- package/dist/tools/connectors.js +0 -193
- package/dist/tools/decisions.js +0 -206
- package/dist/tools/mobile.js +0 -221
- package/dist/tools/modules.js +0 -48
- package/dist/tools/organizationStructure.js +0 -137
- package/dist/tools/profileWrite.js +0 -92
|
@@ -1,228 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"_meta": {
|
|
3
|
-
"synthetic": true,
|
|
4
|
-
"note": "S-8: onay birimi quorum(2), okuma turu bölgesi bireysel görev + read-proof kanıtı; duzenle eylemi signal:duzenleme-istegi yayar, bölge işleyicisi dokuman-duzenleme alt sürecini açar, onaylanırsa tur tek sefer yeniden başlar (restartWhen no-open-handlers). vars.onayBirimi ve vars.okuyucular user:<id> listeleridir."
|
|
5
|
-
},
|
|
6
|
-
"definition": {
|
|
7
|
-
"slug": "iso-dokuman-kontrol",
|
|
8
|
-
"name": "ISO doküman kontrolü",
|
|
9
|
-
"description": "Doküman onay biriminden geçer, okuma turuna dağıtılır; okuma sırasında gelen düzenleme istekleri alt süreçle ele alınır ve onaylanırsa tur yeniden başlar.",
|
|
10
|
-
"analysis": {
|
|
11
|
-
"purpose": {
|
|
12
|
-
"en": "ISO rules require that a controlled document is approved before use and that everyone concerned has read it; this process keeps that proof.",
|
|
13
|
-
"tr": "ISO kuralları kontrollü bir dokümanın kullanılmadan önce onaylanmasını ve ilgili herkesin onu okumasını ister; bu süreç o kanıtı tutar."
|
|
14
|
-
},
|
|
15
|
-
"summary": {
|
|
16
|
-
"en": "The author sends the document for approval and an approval group decides. The readers then read and confirm it; if someone asks for a change during reading, the change is handled and reading starts again. When everyone has read it, the document is in force.",
|
|
17
|
-
"tr": "Hazırlayan dokümanı onaya gönderir, bir onay grubu karar verir. Ardından okuyucular dokümanı okuyup onaylar; okuma sırasında biri değişiklik isterse değişiklik ele alınır ve okuma yeniden başlar. Herkes okuyunca doküman yürürlüğe girer."
|
|
18
|
-
}
|
|
19
|
-
},
|
|
20
|
-
"subject": {
|
|
21
|
-
"entity": "dokumanlar"
|
|
22
|
-
},
|
|
23
|
-
"singleton": "per-subject",
|
|
24
|
-
"history": "full",
|
|
25
|
-
"nodes": [
|
|
26
|
-
{
|
|
27
|
-
"id": "baslangic",
|
|
28
|
-
"type": "start",
|
|
29
|
-
"name": "Onaya gönderildi",
|
|
30
|
-
"description": "Hazırlayan dokümanı onaya gönderir.",
|
|
31
|
-
"analysis": {
|
|
32
|
-
"what": {
|
|
33
|
-
"en": "The author starts the process by sending the document for approval.",
|
|
34
|
-
"tr": "Hazırlayan dokümanı onaya göndererek süreci başlatır."
|
|
35
|
-
},
|
|
36
|
-
"data": {
|
|
37
|
-
"en": "Reads the document record the author chose.",
|
|
38
|
-
"tr": "Hazırlayanın seçtiği doküman kaydını okur."
|
|
39
|
-
},
|
|
40
|
-
"why": {
|
|
41
|
-
"en": "Only a finished draft should go into approval, and the author decides when it is finished.",
|
|
42
|
-
"tr": "Onaya yalnız bitmiş taslak girsin; ne zaman bittiğine hazırlayan karar versin diye."
|
|
43
|
-
},
|
|
44
|
-
"example": {
|
|
45
|
-
"en": "Deniz sends the new \"Supplier evaluation procedure\" for approval.",
|
|
46
|
-
"tr": "Deniz yeni \"Tedarikçi değerlendirme prosedürü\"nü onaya gönderir."
|
|
47
|
-
}
|
|
48
|
-
},
|
|
49
|
-
"trigger": "manual"
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
"id": "onay-birimi",
|
|
53
|
-
"type": "approval",
|
|
54
|
-
"resultKey": "onay_birimi",
|
|
55
|
-
"name": "Onay birimi",
|
|
56
|
-
"description": "Dört kişilik onay biriminden iki onay yeterli, tek ret dokümanı iade eder.",
|
|
57
|
-
"analysis": {
|
|
58
|
-
"what": {
|
|
59
|
-
"en": "Each member of the approval group gets their own task; two approvals are enough, a single rejection sends the document back.",
|
|
60
|
-
"tr": "Onay grubunun her üyesine ayrı görev düşer; iki onay yeter, tek bir ret dokümanı geri gönderir."
|
|
61
|
-
},
|
|
62
|
-
"data": {
|
|
63
|
-
"en": "Uses the list of approvers given when the process starts.",
|
|
64
|
-
"tr": "Süreç başlarken verilen onaycı listesini kullanır."
|
|
65
|
-
},
|
|
66
|
-
"why": {
|
|
67
|
-
"en": "A controlled document needs a formal approval before anyone relies on it.",
|
|
68
|
-
"tr": "Kontrollü bir dokümana kimse güvenmeden önce resmi onay gerekir."
|
|
69
|
-
},
|
|
70
|
-
"example": {
|
|
71
|
-
"en": "Of the four approvers, the quality manager and the purchasing manager approve first; two approvals are enough.",
|
|
72
|
-
"tr": "Dört onaycıdan önce kalite müdürü ve satın alma müdürü onaylar; iki onay yeterlidir."
|
|
73
|
-
}
|
|
74
|
-
},
|
|
75
|
-
"assignee": {
|
|
76
|
-
"rule": "list",
|
|
77
|
-
"of": "vars.onayBirimi",
|
|
78
|
-
"expand": "members",
|
|
79
|
-
"dedupe": true
|
|
80
|
-
},
|
|
81
|
-
"mode": "individual",
|
|
82
|
-
"policy": "quorum(2)",
|
|
83
|
-
"rejectPolicy": "any-reject",
|
|
84
|
-
"onReject": "end"
|
|
85
|
-
},
|
|
86
|
-
{
|
|
87
|
-
"id": "okuma-turu",
|
|
88
|
-
"type": "region",
|
|
89
|
-
"name": "Okuma turu",
|
|
90
|
-
"description": "Okuyucular dokümanı okur ve onaylar; düzenleme isteği bölge olayıdır.",
|
|
91
|
-
"analysis": {
|
|
92
|
-
"what": {
|
|
93
|
-
"en": "The reading round: readers read the document, and change requests are handled inside it.",
|
|
94
|
-
"tr": "Okuma turu: okuyucular dokümanı okur, değişiklik istekleri bu turun içinde ele alınır."
|
|
95
|
-
},
|
|
96
|
-
"data": {
|
|
97
|
-
"en": "Listens for a \"change request\"; the request is handled by a separate change process, and when it is approved the reading round starts again.",
|
|
98
|
-
"tr": "\"Değişiklik isteği\"ni dinler; istek ayrı bir değişiklik süreciyle ele alınır, onaylanırsa okuma turu yeniden başlar."
|
|
99
|
-
},
|
|
100
|
-
"why": {
|
|
101
|
-
"en": "Readers must always confirm the latest version, not an outdated one.",
|
|
102
|
-
"tr": "Okuyucular eski bir sürümü değil, her zaman son sürümü onaylasın diye."
|
|
103
|
-
},
|
|
104
|
-
"example": {
|
|
105
|
-
"en": "Can asks to correct form number F-12 to F-21; the change is approved and all twelve readers get a new task.",
|
|
106
|
-
"tr": "Can F-12 form numarasının F-21 olarak düzeltilmesini ister; değişiklik onaylanır ve on iki okuyucunun hepsine yeni görev düşer."
|
|
107
|
-
}
|
|
108
|
-
},
|
|
109
|
-
"editable": "locked",
|
|
110
|
-
"on": [
|
|
111
|
-
{
|
|
112
|
-
"event": "signal:duzenleme-istegi",
|
|
113
|
-
"interrupt": false,
|
|
114
|
-
"handler": {
|
|
115
|
-
"type": "sub-process",
|
|
116
|
-
"processSlug": "dokuman-duzenleme",
|
|
117
|
-
"input": {
|
|
118
|
-
"istek": "event.form"
|
|
119
|
-
}
|
|
120
|
-
},
|
|
121
|
-
"afterHandlers": "restart-region",
|
|
122
|
-
"restartWhen": "no-open-handlers",
|
|
123
|
-
"restartIf": "handler.outcome === 'approved'",
|
|
124
|
-
"restartScope": "all",
|
|
125
|
-
"cancelStale": "superseded"
|
|
126
|
-
}
|
|
127
|
-
],
|
|
128
|
-
"nodes": [
|
|
129
|
-
{
|
|
130
|
-
"id": "oku-onayla",
|
|
131
|
-
"type": "user-task",
|
|
132
|
-
"resultKey": "oku_onayla",
|
|
133
|
-
"name": "Oku ve onayla",
|
|
134
|
-
"description": "Her okuyucuya ayrı görev; okuma kanıtı defterde kalır.",
|
|
135
|
-
"analysis": {
|
|
136
|
-
"what": {
|
|
137
|
-
"en": "Every reader gets their own task to read the document and confirm \"I have read and understood it\".",
|
|
138
|
-
"tr": "Her okuyucuya dokümanı okuyup \"Okudum, anladım\" demesi için ayrı görev düşer."
|
|
139
|
-
},
|
|
140
|
-
"data": {
|
|
141
|
-
"en": "Uses the list of readers; all of them must confirm, and each confirmation is kept as proof of reading.",
|
|
142
|
-
"tr": "Okuyucu listesini kullanır; hepsi onaylamalıdır, her onay okuma kanıtı olarak saklanır."
|
|
143
|
-
},
|
|
144
|
-
"why": {
|
|
145
|
-
"en": "Audits ask for proof that each person concerned read the current version.",
|
|
146
|
-
"tr": "Denetimler ilgili her kişinin güncel sürümü okuduğunun kanıtını ister."
|
|
147
|
-
},
|
|
148
|
-
"example": {
|
|
149
|
-
"en": "Each of the twelve employees opens the procedure and clicks \"I have read and understood it\".",
|
|
150
|
-
"tr": "On iki çalışanın her biri prosedürü açar ve \"Okudum, anladım\" düğmesine basar."
|
|
151
|
-
}
|
|
152
|
-
},
|
|
153
|
-
"assignee": {
|
|
154
|
-
"rule": "list",
|
|
155
|
-
"of": "vars.okuyucular",
|
|
156
|
-
"expand": "members",
|
|
157
|
-
"dedupe": true
|
|
158
|
-
},
|
|
159
|
-
"mode": "individual",
|
|
160
|
-
"join": "all",
|
|
161
|
-
"revisionBound": true,
|
|
162
|
-
"actions": [
|
|
163
|
-
{
|
|
164
|
-
"id": "okudum",
|
|
165
|
-
"label": {
|
|
166
|
-
"tr": "Okudum, anladım"
|
|
167
|
-
},
|
|
168
|
-
"completes": true,
|
|
169
|
-
"evidence": "read-proof"
|
|
170
|
-
},
|
|
171
|
-
{
|
|
172
|
-
"id": "duzenle",
|
|
173
|
-
"label": {
|
|
174
|
-
"tr": "Düzenleme iste"
|
|
175
|
-
},
|
|
176
|
-
"completes": false,
|
|
177
|
-
"emits": "signal:duzenleme-istegi"
|
|
178
|
-
}
|
|
179
|
-
]
|
|
180
|
-
}
|
|
181
|
-
],
|
|
182
|
-
"edges": []
|
|
183
|
-
},
|
|
184
|
-
{
|
|
185
|
-
"id": "yayinlandi",
|
|
186
|
-
"type": "end",
|
|
187
|
-
"name": "Yürürlükte",
|
|
188
|
-
"description": "Okuma turu tamamlandı.",
|
|
189
|
-
"analysis": {
|
|
190
|
-
"what": {
|
|
191
|
-
"en": "The process ends and the document is in force.",
|
|
192
|
-
"tr": "Süreç biter ve doküman yürürlüğe girer."
|
|
193
|
-
},
|
|
194
|
-
"data": {
|
|
195
|
-
"en": "Sets the status of the document to \"in force\".",
|
|
196
|
-
"tr": "Dokümanın durumunu \"yürürlükte\" yapar."
|
|
197
|
-
},
|
|
198
|
-
"why": {
|
|
199
|
-
"en": "Everyone can see which version is valid from now on.",
|
|
200
|
-
"tr": "Bundan sonra hangi sürümün geçerli olduğunu herkes görsün diye."
|
|
201
|
-
},
|
|
202
|
-
"example": {
|
|
203
|
-
"en": "The corrected procedure shows \"in force\" and is the version everyone uses.",
|
|
204
|
-
"tr": "Düzeltilmiş prosedür \"yürürlükte\" görünür ve herkesin kullandığı sürüm olur."
|
|
205
|
-
}
|
|
206
|
-
},
|
|
207
|
-
"outcome": "effective",
|
|
208
|
-
"writeBack": {
|
|
209
|
-
"durum": "'yururlukte'"
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
],
|
|
213
|
-
"edges": [
|
|
214
|
-
[
|
|
215
|
-
"baslangic",
|
|
216
|
-
"onay-birimi"
|
|
217
|
-
],
|
|
218
|
-
[
|
|
219
|
-
"onay-birimi",
|
|
220
|
-
"okuma-turu"
|
|
221
|
-
],
|
|
222
|
-
[
|
|
223
|
-
"okuma-turu",
|
|
224
|
-
"yayinlandi"
|
|
225
|
-
]
|
|
226
|
-
]
|
|
227
|
-
}
|
|
228
|
-
}
|
|
@@ -1,376 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"_meta": {
|
|
3
|
-
"synthetic": true,
|
|
4
|
-
"note": "S-2: service düğümü vars.seviye yazar, chain:{{vars.seviye}} sıralı yönetici zinciri (dedupe, selfApproval escalate, requestInfo), paralel bütçe servisi + role:depo-sorumlusu grup görevi, exclusive karar. workflowId alanlarını kendi workflow GUID'lerinizle değiştirin."
|
|
5
|
-
},
|
|
6
|
-
"definition": {
|
|
7
|
-
"slug": "satinalma-talebi",
|
|
8
|
-
"name": "Satınalma talebi",
|
|
9
|
-
"description": "Tutara göre onay seviyesi hesaplanır, yönetici zinciri sırayla onaylar, bütçe ve stok kontrolü paralel koşar.",
|
|
10
|
-
"analysis": {
|
|
11
|
-
"purpose": {
|
|
12
|
-
"en": "No purchase is made without approval: the larger the amount, the more managers must agree, and the budget and stock are checked before ordering.",
|
|
13
|
-
"tr": "Onaysız satın alma yapılmasın: tutar büyüdükçe daha çok yönetici onay verir, sipariş öncesi bütçe ve stok kontrol edilir."
|
|
14
|
-
},
|
|
15
|
-
"summary": {
|
|
16
|
-
"en": "When a request is saved, the number of approvals is worked out from its amount and the managers approve in turn. Then the budget and the stock are checked at the same time, and the request is approved only when the budget allows it.",
|
|
17
|
-
"tr": "Talep kaydedilince tutarından kaç onay gerektiği hesaplanır ve yöneticiler sırayla onaylar. Ardından bütçe ve stok aynı anda kontrol edilir; talep yalnız bütçe uygunsa onaylanır."
|
|
18
|
-
}
|
|
19
|
-
},
|
|
20
|
-
"subject": {
|
|
21
|
-
"entity": "satinalma_talepleri"
|
|
22
|
-
},
|
|
23
|
-
"singleton": "per-subject",
|
|
24
|
-
"withdrawPolicy": "before-first-decision",
|
|
25
|
-
"history": "full",
|
|
26
|
-
"params": {
|
|
27
|
-
"esikTutar": {
|
|
28
|
-
"default": 50000,
|
|
29
|
-
"type": "number",
|
|
30
|
-
"editable": "params"
|
|
31
|
-
}
|
|
32
|
-
},
|
|
33
|
-
"nodes": [
|
|
34
|
-
{
|
|
35
|
-
"id": "baslangic",
|
|
36
|
-
"type": "start",
|
|
37
|
-
"name": "Talep oluşturuldu",
|
|
38
|
-
"description": "Talep satırı oluşunca başlar.",
|
|
39
|
-
"analysis": {
|
|
40
|
-
"what": {
|
|
41
|
-
"en": "The process starts by itself when a new purchase request is saved.",
|
|
42
|
-
"tr": "Yeni bir satın alma talebi kaydedildiğinde süreç kendiliğinden başlar."
|
|
43
|
-
},
|
|
44
|
-
"data": {
|
|
45
|
-
"en": "Reads the new request record.",
|
|
46
|
-
"tr": "Yeni talep kaydını okur."
|
|
47
|
-
},
|
|
48
|
-
"why": {
|
|
49
|
-
"en": "Every request should enter the approval route without anyone starting it by hand.",
|
|
50
|
-
"tr": "Her talep kimse elle başlatmadan onay yoluna girsin diye."
|
|
51
|
-
},
|
|
52
|
-
"example": {
|
|
53
|
-
"en": "Ayşe saves her request for a 25,000 TL laptop and the process starts.",
|
|
54
|
-
"tr": "Ayşe 25.000 TL'lik dizüstü talebini kaydeder ve süreç başlar."
|
|
55
|
-
}
|
|
56
|
-
},
|
|
57
|
-
"trigger": "row-event",
|
|
58
|
-
"entity": "satinalma_talepleri",
|
|
59
|
-
"operation": "create"
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
"id": "seviye-hesapla",
|
|
63
|
-
"type": "service",
|
|
64
|
-
"name": "Onay seviyesi",
|
|
65
|
-
"description": "Tutardan onay zinciri uzunluğunu hesaplar.",
|
|
66
|
-
"analysis": {
|
|
67
|
-
"what": {
|
|
68
|
-
"en": "The system works out how many managers have to approve the request.",
|
|
69
|
-
"tr": "Sistem talebi kaç yöneticinin onaylaması gerektiğini hesaplar."
|
|
70
|
-
},
|
|
71
|
-
"data": {
|
|
72
|
-
"en": "Reads the amount of the request and keeps the result as the approval level. Tries again up to three times if the service fails.",
|
|
73
|
-
"tr": "Talebin tutarını okur, sonucu onay seviyesi olarak saklar. Servis hata verirse üç kez daha dener."
|
|
74
|
-
},
|
|
75
|
-
"why": {
|
|
76
|
-
"en": "A small purchase should not wait for many approvals, and a large one should not pass with a single one.",
|
|
77
|
-
"tr": "Küçük bir alım çok onay beklemesin, büyük bir alım tek onayla geçmesin diye."
|
|
78
|
-
},
|
|
79
|
-
"example": {
|
|
80
|
-
"en": "For 25,000 TL the level comes out as 1; a 120,000 TL request would need 3 managers.",
|
|
81
|
-
"tr": "25.000 TL için seviye 1 çıkar; 120.000 TL'lik bir talep 3 yönetici gerektirirdi."
|
|
82
|
-
}
|
|
83
|
-
},
|
|
84
|
-
"workflowId": "01936f00-0000-7000-8000-000000000001",
|
|
85
|
-
"input": {
|
|
86
|
-
"tutar": "row.tutar"
|
|
87
|
-
},
|
|
88
|
-
"output": "vars.seviye",
|
|
89
|
-
"retry": {
|
|
90
|
-
"count": 3,
|
|
91
|
-
"backoff": "exponential",
|
|
92
|
-
"delay": "PT30S"
|
|
93
|
-
}
|
|
94
|
-
},
|
|
95
|
-
{
|
|
96
|
-
"id": "yonetici-zinciri",
|
|
97
|
-
"type": "approval",
|
|
98
|
-
"resultKey": "yonetici_zinciri",
|
|
99
|
-
"name": "Yönetici onayı",
|
|
100
|
-
"description": "Talep sahibinin yöneticileri seviye kadar sırayla onaylar.",
|
|
101
|
-
"analysis": {
|
|
102
|
-
"what": {
|
|
103
|
-
"en": "The requester's managers approve one after the other, as many as the approval level.",
|
|
104
|
-
"tr": "Talep sahibinin yöneticileri, onay seviyesi kadar, sırayla onaylar."
|
|
105
|
-
},
|
|
106
|
-
"data": {
|
|
107
|
-
"en": "Uses the approval level from the previous step. A manager can ask for more information; a rejection ends the process; each decision has two days.",
|
|
108
|
-
"tr": "Önceki adımdaki onay seviyesini kullanır. Yönetici ek bilgi isteyebilir; ret süreci bitirir; her karar için iki gün vardır."
|
|
109
|
-
},
|
|
110
|
-
"why": {
|
|
111
|
-
"en": "Spending is agreed by the people responsible for it; a requester cannot approve their own request.",
|
|
112
|
-
"tr": "Harcamayı sorumlu kişiler onaylasın; talep sahibi kendi talebini onaylayamasın diye."
|
|
113
|
-
},
|
|
114
|
-
"example": {
|
|
115
|
-
"en": "Mehmet, Ayşe's manager, sees the request in his inbox and approves it the next morning.",
|
|
116
|
-
"tr": "Ayşe'nin yöneticisi Mehmet talebi kutusunda görür ve ertesi sabah onaylar."
|
|
117
|
-
}
|
|
118
|
-
},
|
|
119
|
-
"assignee": {
|
|
120
|
-
"rule": "chain",
|
|
121
|
-
"arg": "{{vars.seviye}}",
|
|
122
|
-
"of": "initiator",
|
|
123
|
-
"dedupe": true,
|
|
124
|
-
"selfApproval": "escalate",
|
|
125
|
-
"fallback": "admin-queue"
|
|
126
|
-
},
|
|
127
|
-
"policy": "sequential",
|
|
128
|
-
"requestInfo": true,
|
|
129
|
-
"onReject": "end",
|
|
130
|
-
"sla": {
|
|
131
|
-
"name": "karar",
|
|
132
|
-
"duration": "P2D",
|
|
133
|
-
"onBreach": [
|
|
134
|
-
{
|
|
135
|
-
"escalate": "previous-approver-manager"
|
|
136
|
-
}
|
|
137
|
-
]
|
|
138
|
-
}
|
|
139
|
-
},
|
|
140
|
-
{
|
|
141
|
-
"id": "kontrol-catal",
|
|
142
|
-
"type": "gateway",
|
|
143
|
-
"name": "Paralel kontroller",
|
|
144
|
-
"description": "Bütçe ve stok kontrolü aynı anda başlar.",
|
|
145
|
-
"analysis": {
|
|
146
|
-
"what": {
|
|
147
|
-
"en": "The budget check and the stock check start at the same time.",
|
|
148
|
-
"tr": "Bütçe kontrolü ve stok kontrolü aynı anda başlar."
|
|
149
|
-
},
|
|
150
|
-
"data": {
|
|
151
|
-
"en": "Uses no values; it only splits the route into two.",
|
|
152
|
-
"tr": "Değer kullanmaz; yalnız yolu ikiye ayırır."
|
|
153
|
-
},
|
|
154
|
-
"why": {
|
|
155
|
-
"en": "The two checks do not depend on each other, so running them together saves time.",
|
|
156
|
-
"tr": "İki kontrol birbirine bağlı değil; birlikte yürümeleri zaman kazandırır."
|
|
157
|
-
},
|
|
158
|
-
"example": {
|
|
159
|
-
"en": "Right after Mehmet's approval, the budget check and the stock check both start.",
|
|
160
|
-
"tr": "Mehmet onaylar onaylamaz bütçe kontrolü ve stok kontrolü birlikte başlar."
|
|
161
|
-
}
|
|
162
|
-
},
|
|
163
|
-
"kind": "parallel"
|
|
164
|
-
},
|
|
165
|
-
{
|
|
166
|
-
"id": "butce-kontrol",
|
|
167
|
-
"type": "service",
|
|
168
|
-
"name": "Bütçe kontrolü",
|
|
169
|
-
"description": "Bütçe uygunluğunu denetler.",
|
|
170
|
-
"analysis": {
|
|
171
|
-
"what": {
|
|
172
|
-
"en": "The system checks whether the unit still has budget for this purchase.",
|
|
173
|
-
"tr": "Sistem birimin bu alım için hâlâ bütçesi olup olmadığını kontrol eder."
|
|
174
|
-
},
|
|
175
|
-
"data": {
|
|
176
|
-
"en": "Reads the amount and the unit of the request and keeps the answer as \"budget available\".",
|
|
177
|
-
"tr": "Talebin tutarını ve birimini okur, cevabı \"bütçe uygun\" olarak saklar."
|
|
178
|
-
},
|
|
179
|
-
"why": {
|
|
180
|
-
"en": "Approved requests must not exceed the budget.",
|
|
181
|
-
"tr": "Onaylanan talepler bütçeyi aşmasın diye."
|
|
182
|
-
},
|
|
183
|
-
"example": {
|
|
184
|
-
"en": "IT has 80,000 TL left in its budget, so the answer is \"budget available\".",
|
|
185
|
-
"tr": "BT'nin bütçesinde 80.000 TL kaldığı için cevap \"bütçe uygun\" olur."
|
|
186
|
-
}
|
|
187
|
-
},
|
|
188
|
-
"workflowId": "01936f00-0000-7000-8000-000000000002",
|
|
189
|
-
"input": {
|
|
190
|
-
"tutar": "row.tutar",
|
|
191
|
-
"birim": "row.birim_id"
|
|
192
|
-
},
|
|
193
|
-
"output": "vars.butceUygun"
|
|
194
|
-
},
|
|
195
|
-
{
|
|
196
|
-
"id": "stok-kontrol",
|
|
197
|
-
"type": "user-task",
|
|
198
|
-
"resultKey": "stok_kontrol",
|
|
199
|
-
"name": "Stok kontrolü",
|
|
200
|
-
"description": "Depo sorumlusu stokta karşılık olup olmadığını kontrol eder.",
|
|
201
|
-
"analysis": {
|
|
202
|
-
"what": {
|
|
203
|
-
"en": "Someone from the warehouse team checks whether the item is already in stock.",
|
|
204
|
-
"tr": "Depo ekibinden biri malzemenin stokta olup olmadığını kontrol eder."
|
|
205
|
-
},
|
|
206
|
-
"data": {
|
|
207
|
-
"en": "Any warehouse staff member can take the task; there is one day for it.",
|
|
208
|
-
"tr": "Görevi herhangi bir depo sorumlusu üstlenebilir; bir gün süresi vardır."
|
|
209
|
-
},
|
|
210
|
-
"why": {
|
|
211
|
-
"en": "Nothing should be bought that is already in the warehouse.",
|
|
212
|
-
"tr": "Depoda zaten olan bir şey yeniden satın alınmasın diye."
|
|
213
|
-
},
|
|
214
|
-
"example": {
|
|
215
|
-
"en": "Kemal from the warehouse takes the task, sees no spare laptop in stock and completes it.",
|
|
216
|
-
"tr": "Depodan Kemal görevi üstlenir, stokta yedek dizüstü olmadığını görür ve görevi tamamlar."
|
|
217
|
-
}
|
|
218
|
-
},
|
|
219
|
-
"assignee": "role:depo-sorumlusu",
|
|
220
|
-
"mode": "claim",
|
|
221
|
-
"allowClaim": true,
|
|
222
|
-
"sla": "P1D"
|
|
223
|
-
},
|
|
224
|
-
{
|
|
225
|
-
"id": "kontrol-birlesim",
|
|
226
|
-
"type": "gateway",
|
|
227
|
-
"name": "Kontroller tamam",
|
|
228
|
-
"description": "İki kontrol bitince devam eder.",
|
|
229
|
-
"analysis": {
|
|
230
|
-
"what": {
|
|
231
|
-
"en": "Waits until both checks are finished.",
|
|
232
|
-
"tr": "İki kontrolün de bitmesini bekler."
|
|
233
|
-
},
|
|
234
|
-
"data": {
|
|
235
|
-
"en": "Uses no values; it joins the two routes again.",
|
|
236
|
-
"tr": "Değer kullanmaz; iki yolu yeniden birleştirir."
|
|
237
|
-
},
|
|
238
|
-
"why": {
|
|
239
|
-
"en": "The decision must not be made before both results are known.",
|
|
240
|
-
"tr": "Karar iki sonuç da belli olmadan verilmesin diye."
|
|
241
|
-
},
|
|
242
|
-
"example": {
|
|
243
|
-
"en": "The budget answer arrives in seconds; the process waits until Kemal finishes his check too.",
|
|
244
|
-
"tr": "Bütçe cevabı saniyeler içinde gelir; süreç Kemal'in kontrolü de bitene kadar bekler."
|
|
245
|
-
}
|
|
246
|
-
},
|
|
247
|
-
"kind": "parallel"
|
|
248
|
-
},
|
|
249
|
-
{
|
|
250
|
-
"id": "butce-karari",
|
|
251
|
-
"type": "gateway",
|
|
252
|
-
"name": "Bütçe uygun mu",
|
|
253
|
-
"description": "Bütçe uygunsa onaylanır, değilse reddedilir.",
|
|
254
|
-
"analysis": {
|
|
255
|
-
"what": {
|
|
256
|
-
"en": "The process decides between approval and rejection.",
|
|
257
|
-
"tr": "Süreç onay ile ret arasında karar verir."
|
|
258
|
-
},
|
|
259
|
-
"data": {
|
|
260
|
-
"en": "Looks at \"budget available\" from the budget check: yes goes to approval, anything else to rejection.",
|
|
261
|
-
"tr": "Bütçe kontrolündeki \"bütçe uygun\" değerine bakar: evet ise onaya, değilse redde gider."
|
|
262
|
-
},
|
|
263
|
-
"why": {
|
|
264
|
-
"en": "Only requests the budget can cover are approved.",
|
|
265
|
-
"tr": "Yalnız bütçenin karşılayabildiği talepler onaylansın diye."
|
|
266
|
-
},
|
|
267
|
-
"example": {
|
|
268
|
-
"en": "Budget is available for Ayşe's laptop, so the request goes to \"approved\".",
|
|
269
|
-
"tr": "Ayşe'nin dizüstüsü için bütçe uygun, bu yüzden talep \"onaylandı\"ya gider."
|
|
270
|
-
}
|
|
271
|
-
},
|
|
272
|
-
"kind": "exclusive",
|
|
273
|
-
"default": "reddedildi"
|
|
274
|
-
},
|
|
275
|
-
{
|
|
276
|
-
"id": "onaylandi",
|
|
277
|
-
"type": "end",
|
|
278
|
-
"name": "Onaylandı",
|
|
279
|
-
"description": "Talep onaylandı.",
|
|
280
|
-
"analysis": {
|
|
281
|
-
"what": {
|
|
282
|
-
"en": "The process ends with the request approved.",
|
|
283
|
-
"tr": "Süreç talep onaylanmış olarak biter."
|
|
284
|
-
},
|
|
285
|
-
"data": {
|
|
286
|
-
"en": "Sets the status of the request to \"approved\".",
|
|
287
|
-
"tr": "Talebin durumunu \"onaylandı\" yapar."
|
|
288
|
-
},
|
|
289
|
-
"why": {
|
|
290
|
-
"en": "The purchasing team can see that the request may be ordered.",
|
|
291
|
-
"tr": "Satın alma ekibi talebin sipariş edilebileceğini görsün diye."
|
|
292
|
-
},
|
|
293
|
-
"example": {
|
|
294
|
-
"en": "Ayşe's request shows \"approved\" and purchasing can place the order.",
|
|
295
|
-
"tr": "Ayşe'nin talebi \"onaylandı\" görünür ve satın alma siparişi verebilir."
|
|
296
|
-
}
|
|
297
|
-
},
|
|
298
|
-
"outcome": "approved",
|
|
299
|
-
"writeBack": {
|
|
300
|
-
"durum": "'onaylandi'"
|
|
301
|
-
}
|
|
302
|
-
},
|
|
303
|
-
{
|
|
304
|
-
"id": "reddedildi",
|
|
305
|
-
"type": "end",
|
|
306
|
-
"name": "Reddedildi",
|
|
307
|
-
"description": "Bütçe uygun değil, talep reddedildi.",
|
|
308
|
-
"analysis": {
|
|
309
|
-
"what": {
|
|
310
|
-
"en": "The process ends with the request rejected because there is no budget.",
|
|
311
|
-
"tr": "Süreç bütçe olmadığı için talep reddedilmiş olarak biter."
|
|
312
|
-
},
|
|
313
|
-
"data": {
|
|
314
|
-
"en": "Sets the status of the request to \"rejected\".",
|
|
315
|
-
"tr": "Talebin durumunu \"reddedildi\" yapar."
|
|
316
|
-
},
|
|
317
|
-
"why": {
|
|
318
|
-
"en": "The requester sees the result and no order is placed.",
|
|
319
|
-
"tr": "Talep sahibi sonucu görsün ve sipariş verilmesin diye."
|
|
320
|
-
},
|
|
321
|
-
"example": {
|
|
322
|
-
"en": "Had IT's budget been down to 10,000 TL, Ayşe's request would have ended here as \"rejected\".",
|
|
323
|
-
"tr": "BT'nin bütçesinde yalnız 10.000 TL kalmış olsaydı Ayşe'nin talebi burada \"reddedildi\" olarak biterdi."
|
|
324
|
-
}
|
|
325
|
-
},
|
|
326
|
-
"outcome": "rejected",
|
|
327
|
-
"writeBack": {
|
|
328
|
-
"durum": "'reddedildi'"
|
|
329
|
-
}
|
|
330
|
-
}
|
|
331
|
-
],
|
|
332
|
-
"edges": [
|
|
333
|
-
[
|
|
334
|
-
"baslangic",
|
|
335
|
-
"seviye-hesapla"
|
|
336
|
-
],
|
|
337
|
-
[
|
|
338
|
-
"seviye-hesapla",
|
|
339
|
-
"yonetici-zinciri"
|
|
340
|
-
],
|
|
341
|
-
[
|
|
342
|
-
"yonetici-zinciri",
|
|
343
|
-
"kontrol-catal"
|
|
344
|
-
],
|
|
345
|
-
[
|
|
346
|
-
"kontrol-catal",
|
|
347
|
-
"butce-kontrol"
|
|
348
|
-
],
|
|
349
|
-
[
|
|
350
|
-
"kontrol-catal",
|
|
351
|
-
"stok-kontrol"
|
|
352
|
-
],
|
|
353
|
-
[
|
|
354
|
-
"butce-kontrol",
|
|
355
|
-
"kontrol-birlesim"
|
|
356
|
-
],
|
|
357
|
-
[
|
|
358
|
-
"stok-kontrol",
|
|
359
|
-
"kontrol-birlesim"
|
|
360
|
-
],
|
|
361
|
-
[
|
|
362
|
-
"kontrol-birlesim",
|
|
363
|
-
"butce-karari"
|
|
364
|
-
],
|
|
365
|
-
{
|
|
366
|
-
"from": "butce-karari",
|
|
367
|
-
"to": "onaylandi",
|
|
368
|
-
"condition": "vars.butceUygun === true"
|
|
369
|
-
},
|
|
370
|
-
[
|
|
371
|
-
"butce-karari",
|
|
372
|
-
"reddedildi"
|
|
373
|
-
]
|
|
374
|
-
]
|
|
375
|
-
}
|
|
376
|
-
}
|