@things-factory/worklist 5.0.14 → 6.0.0-alpha.0
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/client/components/activity-/{bowner-view.js → bowner-view.ts} +27 -34
- package/client/components/{activity-instance-preview.js → activity-instance-preview.ts} +38 -50
- package/client/components/{activity-reporter-view.js → activity-reporter-view.ts} +27 -39
- package/client/components/{activity-starter-form.js → activity-starter-form.ts} +53 -68
- package/client/pages/activity/activity-list-page.ts +4 -3
- package/client/pages/activity/{activity-model-item-list.js → activity-model-item-list.ts} +11 -18
- package/client/pages/activity/{activity-page.js → activity-page.ts} +36 -40
- package/client/pages/activity/{starter-list-page.js → starter-list-page.ts} +15 -20
- package/client/pages/activity-instance/{activity-instance-list-page.js → activity-instance-list-page.ts} +22 -30
- package/client/pages/activity-instance/{activity-instance-page.js → activity-instance-page.ts} +36 -41
- package/client/pages/activity-store/{activity-store-page.js → activity-store-page.ts} +22 -29
- package/client/pages/activity-supervisor/{reporter-list-page.js → reporter-list-page.ts} +14 -21
- package/client/pages/activity-template/{activity-template-importer.js → activity-template-importer.ts} +32 -38
- package/client/pages/activity-template/{activity-template-list-page.js → activity-template-list-page.ts} +30 -37
- package/client/pages/activity-template/{activity-template-model-item-list.js → activity-template-model-item-list.ts} +5 -4
- package/client/pages/activity-thread/{activity-thread-importer.js → activity-thread-importer.ts} +32 -37
- package/client/pages/activity-thread/{activity-thread-list-page.js → activity-thread-list-page.ts} +20 -27
- package/client/pages/activity-thread/{activity-thread-page.js → activity-thread-page.ts} +36 -40
- package/client/pages/dashboard/{dashboard-home.js → dashboard-home.ts} +3 -7
- package/client/pages/todo/{assigned-list-page.js → assigned-list-page.ts} +13 -20
- package/client/pages/todo/{draft-list-page.js → draft-list-page.ts} +13 -20
- package/client/pages/todo/{pickable-list-page.js → pickable-list-page.ts} +13 -20
- package/client/pages/todo/{todo-list-page.js → todo-list-page.ts} +12 -19
- package/client/pages/worklist-home.ts +1 -1
- package/dist-client/components/activity-/bowner-view.d.ts +1 -1
- package/dist-client/components/activity-/bowner-view.js +44 -36
- package/dist-client/components/activity-/bowner-view.js.map +1 -1
- package/dist-client/components/activity-instance-preview.d.ts +2 -1
- package/dist-client/components/activity-instance-preview.js +58 -51
- package/dist-client/components/activity-instance-preview.js.map +1 -1
- package/dist-client/components/activity-reporter-view.d.ts +1 -1
- package/dist-client/components/activity-reporter-view.js +44 -37
- package/dist-client/components/activity-reporter-view.js.map +1 -1
- package/dist-client/components/activity-starter-form.d.ts +16 -0
- package/dist-client/components/activity-starter-form.js +68 -67
- package/dist-client/components/activity-starter-form.js.map +1 -1
- package/dist-client/pages/activity/activity-list-page.d.ts +1 -0
- package/dist-client/pages/activity/activity-list-page.js +7 -4
- package/dist-client/pages/activity/activity-list-page.js.map +1 -1
- package/dist-client/pages/activity/activity-model-item-list.d.ts +13 -180
- package/dist-client/pages/activity/activity-model-item-list.js +52 -44
- package/dist-client/pages/activity/activity-model-item-list.js.map +1 -1
- package/dist-client/pages/activity/activity-page.d.ts +29 -22
- package/dist-client/pages/activity/activity-page.js +53 -44
- package/dist-client/pages/activity/activity-page.js.map +1 -1
- package/dist-client/pages/activity/starter-list-page.d.ts +14 -120
- package/dist-client/pages/activity/starter-list-page.js +47 -31
- package/dist-client/pages/activity/starter-list-page.js.map +1 -1
- package/dist-client/pages/activity-instance/activity-instance-list-page.d.ts +9 -114
- package/dist-client/pages/activity-instance/activity-instance-list-page.js +40 -30
- package/dist-client/pages/activity-instance/activity-instance-list-page.js.map +1 -1
- package/dist-client/pages/activity-instance/activity-instance-page.d.ts +22 -22
- package/dist-client/pages/activity-instance/activity-instance-page.js +57 -44
- package/dist-client/pages/activity-instance/activity-instance-page.js.map +1 -1
- package/dist-client/pages/activity-store/activity-store-page.d.ts +23 -150
- package/dist-client/pages/activity-store/activity-store-page.js +40 -31
- package/dist-client/pages/activity-store/activity-store-page.js.map +1 -1
- package/dist-client/pages/activity-supervisor/reporter-list-page.d.ts +13 -120
- package/dist-client/pages/activity-supervisor/reporter-list-page.js +47 -31
- package/dist-client/pages/activity-supervisor/reporter-list-page.js.map +1 -1
- package/dist-client/pages/activity-template/activity-template-importer.d.ts +7 -21
- package/dist-client/pages/activity-template/activity-template-importer.js +42 -36
- package/dist-client/pages/activity-template/activity-template-importer.js.map +1 -1
- package/dist-client/pages/activity-template/activity-template-list-page.d.ts +17 -218
- package/dist-client/pages/activity-template/activity-template-list-page.js +58 -37
- package/dist-client/pages/activity-template/activity-template-list-page.js.map +1 -1
- package/dist-client/pages/activity-template/activity-template-model-item-list.js +10 -5
- package/dist-client/pages/activity-template/activity-template-model-item-list.js.map +1 -1
- package/dist-client/pages/activity-thread/activity-thread-importer.d.ts +7 -21
- package/dist-client/pages/activity-thread/activity-thread-importer.js +42 -36
- package/dist-client/pages/activity-thread/activity-thread-importer.js.map +1 -1
- package/dist-client/pages/activity-thread/activity-thread-list-page.d.ts +16 -100
- package/dist-client/pages/activity-thread/activity-thread-list-page.js +55 -36
- package/dist-client/pages/activity-thread/activity-thread-list-page.js.map +1 -1
- package/dist-client/pages/activity-thread/activity-thread-page.d.ts +26 -19
- package/dist-client/pages/activity-thread/activity-thread-page.js +53 -44
- package/dist-client/pages/activity-thread/activity-thread-page.js.map +1 -1
- package/dist-client/pages/dashboard/dashboard-home.js +8 -7
- package/dist-client/pages/dashboard/dashboard-home.js.map +1 -1
- package/dist-client/pages/todo/assigned-list-page.d.ts +12 -100
- package/dist-client/pages/todo/assigned-list-page.js +45 -30
- package/dist-client/pages/todo/assigned-list-page.js.map +1 -1
- package/dist-client/pages/todo/draft-list-page.d.ts +13 -174
- package/dist-client/pages/todo/draft-list-page.js +46 -30
- package/dist-client/pages/todo/draft-list-page.js.map +1 -1
- package/dist-client/pages/todo/pickable-list-page.d.ts +13 -126
- package/dist-client/pages/todo/pickable-list-page.js +46 -30
- package/dist-client/pages/todo/pickable-list-page.js.map +1 -1
- package/dist-client/pages/todo/todo-list-page.d.ts +12 -206
- package/dist-client/pages/todo/todo-list-page.js +44 -30
- package/dist-client/pages/todo/todo-list-page.js.map +1 -1
- package/dist-client/pages/worklist-home.js +1 -1
- package/dist-client/pages/worklist-home.js.map +1 -1
- package/dist-client/route.d.ts +1 -1
- package/dist-client/tsconfig.tsbuildinfo +1 -1
- package/dist-server/controllers/activity-instance/abort.js +4 -3
- package/dist-server/controllers/activity-instance/abort.js.map +1 -1
- package/dist-server/controllers/activity-instance/adjust.js +2 -1
- package/dist-server/controllers/activity-instance/adjust.js.map +1 -1
- package/dist-server/controllers/activity-instance/assign.js +3 -3
- package/dist-server/controllers/activity-instance/assign.js.map +1 -1
- package/dist-server/controllers/activity-instance/delegate.js +4 -3
- package/dist-server/controllers/activity-instance/delegate.js.map +1 -1
- package/dist-server/controllers/activity-instance/draft.js +3 -3
- package/dist-server/controllers/activity-instance/draft.js.map +1 -1
- package/dist-server/controllers/activity-instance/end.js +4 -3
- package/dist-server/controllers/activity-instance/end.js.map +1 -1
- package/dist-server/controllers/activity-instance/pick.js +4 -3
- package/dist-server/controllers/activity-instance/pick.js.map +1 -1
- package/dist-server/controllers/activity-instance/post.js +17 -3
- package/dist-server/controllers/activity-instance/post.js.map +1 -1
- package/dist-server/controllers/activity-instance/start.js +2 -1
- package/dist-server/controllers/activity-instance/start.js.map +1 -1
- package/dist-server/controllers/activity-instance/terminate.js +4 -3
- package/dist-server/controllers/activity-instance/terminate.js.map +1 -1
- package/dist-server/controllers/activity-thread/abort.js +4 -3
- package/dist-server/controllers/activity-thread/abort.js.map +1 -1
- package/dist-server/controllers/activity-thread/adjust.js +2 -1
- package/dist-server/controllers/activity-thread/adjust.js.map +1 -1
- package/dist-server/controllers/activity-thread/delegate.js +4 -3
- package/dist-server/controllers/activity-thread/delegate.js.map +1 -1
- package/dist-server/controllers/activity-thread/end.js +4 -3
- package/dist-server/controllers/activity-thread/end.js.map +1 -1
- package/dist-server/controllers/activity-thread/save.js +2 -1
- package/dist-server/controllers/activity-thread/save.js.map +1 -1
- package/dist-server/controllers/activity-thread/start.js +2 -1
- package/dist-server/controllers/activity-thread/start.js.map +1 -1
- package/dist-server/controllers/activity-thread/terminate.js +4 -3
- package/dist-server/controllers/activity-thread/terminate.js.map +1 -1
- package/dist-server/controllers/common.js +8 -4
- package/dist-server/controllers/common.js.map +1 -1
- package/dist-server/service/activity/activity-history.js +6 -7
- package/dist-server/service/activity/activity-history.js.map +1 -1
- package/dist-server/service/activity/activity-mutation.js +10 -4
- package/dist-server/service/activity/activity-mutation.js.map +1 -1
- package/dist-server/service/activity/activity-query.js +18 -19
- package/dist-server/service/activity/activity-query.js.map +1 -1
- package/dist-server/service/activity/activity-type.js +6 -7
- package/dist-server/service/activity/activity-type.js.map +1 -1
- package/dist-server/service/activity/activity.js +6 -7
- package/dist-server/service/activity/activity.js.map +1 -1
- package/dist-server/service/activity-instance/activity-instance-history.js +7 -8
- package/dist-server/service/activity-instance/activity-instance-history.js.map +1 -1
- package/dist-server/service/activity-instance/activity-instance-mutation.js +2 -2
- package/dist-server/service/activity-instance/activity-instance-mutation.js.map +1 -1
- package/dist-server/service/activity-instance/activity-instance-query.js +24 -25
- package/dist-server/service/activity-instance/activity-instance-query.js.map +1 -1
- package/dist-server/service/activity-instance/activity-instance-subscription.js +1 -2
- package/dist-server/service/activity-instance/activity-instance-subscription.js.map +1 -1
- package/dist-server/service/activity-instance/activity-instance-type.js +4 -5
- package/dist-server/service/activity-instance/activity-instance-type.js.map +1 -1
- package/dist-server/service/activity-instance/activity-instance.js +7 -8
- package/dist-server/service/activity-instance/activity-instance.js.map +1 -1
- package/dist-server/service/activity-instance/event-subscriber.js +0 -5
- package/dist-server/service/activity-instance/event-subscriber.js.map +1 -1
- package/dist-server/service/activity-template/activity-template-history.js +3 -4
- package/dist-server/service/activity-template/activity-template-history.js.map +1 -1
- package/dist-server/service/activity-template/activity-template-mutation.js +4 -4
- package/dist-server/service/activity-template/activity-template-mutation.js.map +1 -1
- package/dist-server/service/activity-template/activity-template-query.js +9 -11
- package/dist-server/service/activity-template/activity-template-query.js.map +1 -1
- package/dist-server/service/activity-template/activity-template.js +3 -4
- package/dist-server/service/activity-template/activity-template.js.map +1 -1
- package/dist-server/service/activity-thread/activity-thread-mutation.js +10 -6
- package/dist-server/service/activity-thread/activity-thread-mutation.js.map +1 -1
- package/dist-server/service/activity-thread/activity-thread-query.js +11 -13
- package/dist-server/service/activity-thread/activity-thread-query.js.map +1 -1
- package/dist-server/service/activity-thread/activity-thread.js +4 -5
- package/dist-server/service/activity-thread/activity-thread.js.map +1 -1
- package/dist-server/service/activity-thread/event-subscriber.js +15 -3
- package/dist-server/service/activity-thread/event-subscriber.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +7 -7
- package/server/controllers/activity-instance/abort.ts +7 -3
- package/server/controllers/activity-instance/adjust.ts +7 -2
- package/server/controllers/activity-instance/assign.ts +3 -3
- package/server/controllers/activity-instance/delegate.ts +3 -2
- package/server/controllers/activity-instance/draft.ts +6 -3
- package/server/controllers/activity-instance/end.ts +3 -2
- package/server/controllers/activity-instance/pick.ts +4 -3
- package/server/controllers/activity-instance/post.ts +21 -4
- package/server/controllers/activity-instance/start.ts +3 -2
- package/server/controllers/activity-instance/terminate.ts +3 -2
- package/server/controllers/activity-thread/abort.ts +7 -3
- package/server/controllers/activity-thread/adjust.ts +7 -2
- package/server/controllers/activity-thread/delegate.ts +3 -2
- package/server/controllers/activity-thread/end.ts +3 -2
- package/server/controllers/activity-thread/save.ts +3 -2
- package/server/controllers/activity-thread/start.ts +8 -2
- package/server/controllers/activity-thread/terminate.ts +3 -2
- package/server/controllers/common.ts +15 -11
- package/server/service/activity/activity-mutation.ts +19 -10
- package/server/service/activity/activity-query.ts +14 -14
- package/server/service/activity-instance/activity-instance-mutation.ts +8 -8
- package/server/service/activity-instance/activity-instance-query.ts +27 -21
- package/server/service/activity-instance/activity-instance-subscription.ts +1 -2
- package/server/service/activity-instance/event-subscriber.ts +0 -6
- package/server/service/activity-template/activity-template-mutation.ts +13 -10
- package/server/service/activity-template/activity-template-query.ts +8 -9
- package/server/service/activity-thread/activity-thread-mutation.ts +22 -15
- package/server/service/activity-thread/activity-thread-query.ts +10 -11
- package/server/service/activity-thread/event-subscriber.ts +15 -3
- package/translations/en.json +3 -0
- package/translations/ko.json +3 -0
- package/translations/ms.json +3 -0
- package/translations/zh.json +3 -0
|
@@ -7,7 +7,8 @@ async function adjust(id, patch, context) {
|
|
|
7
7
|
const { domain, user, tx } = context.state;
|
|
8
8
|
const repository = tx.getRepository(activity_instance_1.ActivityInstance);
|
|
9
9
|
const activityInstance = await repository.findOne({
|
|
10
|
-
where: { domain, id }
|
|
10
|
+
where: { domain: { id: domain.id }, id },
|
|
11
|
+
relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']
|
|
11
12
|
});
|
|
12
13
|
return await repository.save(Object.assign(Object.assign(Object.assign({}, activityInstance), patch), { transaction: 'adjust', state: await (0, common_1.evalActivityInstanceState)(id, context), updater: user }));
|
|
13
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adjust.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/adjust.ts"],"names":[],"mappings":";;;AAAA,yFAAoF;AAEpF,sCAAqD;AAE9C,KAAK,UAAU,MAAM,
|
|
1
|
+
{"version":3,"file":"adjust.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/adjust.ts"],"names":[],"mappings":";;;AAAA,yFAAoF;AAEpF,sCAAqD;AAE9C,KAAK,UAAU,MAAM,CAC1B,EAAU,EACV,KAA4B,EAC5B,OAAwB;IAExB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE1C,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAA;IACrD,MAAM,gBAAgB,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAChD,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC;KACpH,CAAC,CAAA;IAEF,OAAO,MAAM,UAAU,CAAC,IAAI,+CACvB,gBAAgB,GAChB,KAAK,KACR,WAAW,EAAE,QAAQ,EACrB,KAAK,EAAE,MAAM,IAAA,kCAAyB,EAAC,EAAE,EAAE,OAAO,CAAC,EACnD,OAAO,EAAE,IAAI,IACb,CAAA;AACJ,CAAC;AApBD,wBAoBC","sourcesContent":["import { ActivityInstance } from '../../service/activity-instance/activity-instance'\nimport { ActivityInstancePatch } from '../../service/activity-instance/activity-instance-type'\nimport { evalActivityInstanceState } from '../common'\n\nexport async function adjust(\n id: string,\n patch: ActivityInstancePatch,\n context: ResolverContext\n): Promise<ActivityInstance> {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(ActivityInstance)\n const activityInstance = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']\n })\n\n return await repository.save({\n ...activityInstance,\n ...patch,\n transaction: 'adjust',\n state: await evalActivityInstanceState(id, context),\n updater: user\n })\n}\n"]}
|
|
@@ -9,8 +9,8 @@ async function assign({ id, assignees, reason, dueAt }, context) {
|
|
|
9
9
|
const { domain, user, tx } = context.state;
|
|
10
10
|
const repository = tx.getRepository(activity_instance_1.ActivityInstance);
|
|
11
11
|
var activityInstance = await repository.findOne({
|
|
12
|
-
where: { domain, id },
|
|
13
|
-
relations: ['assigneeRole', 'supervisoryRole']
|
|
12
|
+
where: { domain: { id: domain.id }, id },
|
|
13
|
+
relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']
|
|
14
14
|
});
|
|
15
15
|
if (!activityInstance) {
|
|
16
16
|
throw new Error(context.t('error.activity-instance not found', {
|
|
@@ -24,7 +24,7 @@ async function assign({ id, assignees, reason, dueAt }, context) {
|
|
|
24
24
|
email: (0, typeorm_1.In)(assignees)
|
|
25
25
|
});
|
|
26
26
|
await (0, common_1.createActivityThreadsForUsers)('assign', activityInstance, assignedUsers, context);
|
|
27
|
-
return await tx.getRepository(activity_instance_1.ActivityInstance).
|
|
27
|
+
return await tx.getRepository(activity_instance_1.ActivityInstance).findOneBy({ id: activityInstance.id });
|
|
28
28
|
}
|
|
29
29
|
exports.assign = assign;
|
|
30
30
|
//# sourceMappingURL=assign.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assign.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/assign.ts"],"names":[],"mappings":";;;AAAA,qCAA4B;AAE5B,yDAAgD;AAEhD,yFAAoF;AACpF,sCAAyD;AAElD,KAAK,UAAU,MAAM,CAC1B,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAuE,EACrG,OAAY;IAEZ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE1C,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAA;IAErD,IAAI,gBAAgB,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAC9C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"assign.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/assign.ts"],"names":[],"mappings":";;;AAAA,qCAA4B;AAE5B,yDAAgD;AAEhD,yFAAoF;AACpF,sCAAyD;AAElD,KAAK,UAAU,MAAM,CAC1B,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAuE,EACrG,OAAY;IAEZ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE1C,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAA;IAErD,IAAI,gBAAgB,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAC9C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC;KACpH,CAAC,CAAA;IAEF,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,mCAAmC,EAAE;YAC7C,gBAAgB,EAAE,EAAE;SACrB,CAAC,CACH,CAAA;KACF;IAED,IAAI,KAAK,EAAE;QACT,gBAAgB,CAAC,KAAK,GAAG,KAAK,CAAA;KAC/B;IAED,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,gBAAI,CAAC,CAAC,IAAI,CAAC;QACtD,KAAK,EAAE,IAAA,YAAE,EAAC,SAAS,CAAC;KACrB,CAAC,CAAA;IAEF,MAAM,IAAA,sCAA6B,EAAC,QAAQ,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,CAAC,CAAA;IAEvF,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAA;AACxF,CAAC;AAhCD,wBAgCC","sourcesContent":["import { In } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\n\nimport { ActivityInstance } from '../../service/activity-instance/activity-instance'\nimport { createActivityThreadsForUsers } from '../common'\n\nexport async function assign(\n { id, assignees, reason, dueAt }: { id: string; assignees?: string[]; reason?: string; dueAt?: Date },\n context: any\n): Promise<ActivityInstance> {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(ActivityInstance)\n\n var activityInstance = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']\n })\n\n if (!activityInstance) {\n throw new Error(\n context.t('error.activity-instance not found', {\n activityInstance: id\n })\n )\n }\n\n if (dueAt) {\n activityInstance.dueAt = dueAt\n }\n\n const assignedUsers = await tx.getRepository(User).find({\n email: In(assignees)\n })\n\n await createActivityThreadsForUsers('assign', activityInstance, assignedUsers, context)\n\n return await tx.getRepository(ActivityInstance).findOneBy({ id: activityInstance.id })\n}\n"]}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.delegate = void 0;
|
|
4
|
-
const
|
|
4
|
+
const shell_1 = require("@things-factory/shell");
|
|
5
5
|
const activity_instance_1 = require("../../service/activity-instance/activity-instance");
|
|
6
6
|
const common_1 = require("../common");
|
|
7
7
|
async function delegate({ id, assigneeRole, dueAt, reason }, context) {
|
|
8
8
|
const { domain, user, tx } = context.state;
|
|
9
|
-
const repository = (0,
|
|
9
|
+
const repository = (0, shell_1.getRepository)(activity_instance_1.ActivityInstance);
|
|
10
10
|
var activityInstance = await repository.findOne({
|
|
11
|
-
where: { domain, id }
|
|
11
|
+
where: { domain: { id: domain.id }, id },
|
|
12
|
+
relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']
|
|
12
13
|
});
|
|
13
14
|
if (!activityInstance) {
|
|
14
15
|
throw new Error(context.t('error.activity-instance not found', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delegate.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/delegate.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"delegate.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/delegate.ts"],"names":[],"mappings":";;;AAAA,iDAAqD;AAErD,yFAAoF;AACpF,sCAAqD;AAE9C,KAAK,UAAU,QAAQ,CAC5B,EACE,EAAE,EACF,YAAY,EACZ,KAAK,EACL,MAAM,EAMP,EACD,OAAY;IAEZ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE1C,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,oCAAgB,CAAC,CAAA;IAElD,IAAI,gBAAgB,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAC9C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC;KACpH,CAAC,CAAA;IAEF,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,mCAAmC,EAAE;YAC7C,gBAAgB,EAAE,EAAE;SACrB,CAAC,CACH,CAAA;KACF;IAED,IAAI,KAAK,EAAE;QACT,gBAAgB,CAAC,KAAK,GAAG,KAAK,CAAA;KAC/B;IAED,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,IAAI,iCAC/C,gBAAgB,KACnB,MAAM;QACN,YAAY,EACZ,WAAW,EAAE,UAAU,EACvB,KAAK,EAAE,MAAM,IAAA,kCAAyB,EAAC,EAAE,EAAE,OAAO,CAAC,EACnD,OAAO,EAAE,IAAI,EACb,UAAU,EAAE,IAAI,IAAI,EAAE,IACtB,CAAA;AACJ,CAAC;AA5CD,4BA4CC","sourcesContent":["import { getRepository } from '@things-factory/shell'\n\nimport { ActivityInstance } from '../../service/activity-instance/activity-instance'\nimport { evalActivityInstanceState } from '../common'\n\nexport async function delegate(\n {\n id,\n assigneeRole,\n dueAt,\n reason\n }: {\n id: string\n assigneeRole?: object\n dueAt?: Date\n reason?: string\n },\n context: any\n): Promise<ActivityInstance> {\n const { domain, user, tx } = context.state\n\n const repository = getRepository(ActivityInstance)\n\n var activityInstance = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']\n })\n\n if (!activityInstance) {\n throw new Error(\n context.t('error.activity-instance not found', {\n activityInstance: id\n })\n )\n }\n\n if (dueAt) {\n activityInstance.dueAt = dueAt\n }\n\n return await tx.getRepository(ActivityInstance).save({\n ...activityInstance,\n reason,\n assigneeRole,\n transaction: 'delegate',\n state: await evalActivityInstanceState(id, context),\n updater: user,\n assignedAt: new Date()\n })\n}\n"]}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.draft = void 0;
|
|
4
|
-
const
|
|
4
|
+
const shell_1 = require("@things-factory/shell");
|
|
5
5
|
const activity_instance_1 = require("../../service/activity-instance/activity-instance");
|
|
6
6
|
const activity_1 = require("../../service/activity/activity");
|
|
7
7
|
async function draft(activityInstance, context) {
|
|
8
8
|
const { domain, user, tx } = context.state;
|
|
9
9
|
const { activityId, input, dueAt } = activityInstance;
|
|
10
|
-
var repository = (0,
|
|
10
|
+
var repository = (0, shell_1.getRepository)(activity_1.Activity);
|
|
11
11
|
var activity = {};
|
|
12
12
|
if (activityId) {
|
|
13
13
|
activity = await repository.findOne({
|
|
14
|
-
where: { domain, id: activityId },
|
|
14
|
+
where: { domain: { id: domain.id }, id: activityId },
|
|
15
15
|
relations: ['assigneeRole', 'supervisoryRole']
|
|
16
16
|
});
|
|
17
17
|
if (!activity) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draft.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/draft.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"draft.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/draft.ts"],"names":[],"mappings":";;;AAAA,iDAAqD;AAErD,yFAA4G;AAE5G,8DAA0D;AAEnD,KAAK,UAAU,KAAK,CACzB,gBAAqC,EACrC,OAAwB;IAExB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAC1C,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,gBAAgB,CAAA;IAErD,IAAI,UAAU,GAAG,IAAA,qBAAa,EAAC,mBAAQ,CAAC,CAAA;IACxC,IAAI,QAAQ,GAAG,EAAS,CAAA;IAExB,IAAI,UAAU,EAAE;QACd,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;YAClC,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE;YACpD,SAAS,EAAE,CAAC,cAAc,EAAE,iBAAiB,CAAC;SAC/C,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,0BAA0B,EAAE;gBACpC,QAAQ,EAAE,UAAU;aACrB,CAAC,CACH,CAAA;SACF;KACF;IAED,gBAAgB,CAAC,SAAS,GAAG,UAAU,CAAA;IACvC,gBAAgB,CAAC,KAAK,GAAG,UAAU,CAAA;IAEnC,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,YAAY,EAAE;QACnC,gBAAgB,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,CAAA;KAC7E;IAED,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,IAAI,+BAClD,YAAY,EAAE,QAAQ,CAAC,YAAY,EACnC,MAAM,EAAE,QAAQ,CAAC,MAAM,EACvB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAC3B,YAAY,EAAE,QAAQ,CAAC,YAAY,EACnC,eAAe,EAAE,QAAQ,CAAC,eAAe,EACzC,SAAS,EAAE,QAAQ,CAAC,SAAS,EAC7B,KAAK,EAAE,QAAQ,CAAC,KAAK,IAClB,gBAAgB,KACnB,WAAW,EAAE,OAAO,EACpB,QAAQ,EACR,KAAK,EAAE,0CAAsB,CAAC,KAAK,EACnC,MAAM,EACN,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,IACb,CAAA;AACJ,CAAC;AAhDD,sBAgDC","sourcesContent":["import { getRepository } from '@things-factory/shell'\n\nimport { ActivityInstance, ActivityInstanceStatus } from '../../service/activity-instance/activity-instance'\nimport { NewActivityInstance } from '../../service/activity-instance/activity-instance-type'\nimport { Activity } from '../../service/activity/activity'\n\nexport async function draft(\n activityInstance: NewActivityInstance,\n context: ResolverContext\n): Promise<ActivityInstance> {\n const { domain, user, tx } = context.state\n const { activityId, input, dueAt } = activityInstance\n\n var repository = getRepository(Activity)\n var activity = {} as any\n\n if (activityId) {\n activity = await repository.findOne({\n where: { domain: { id: domain.id }, id: activityId },\n relations: ['assigneeRole', 'supervisoryRole']\n })\n\n if (!activity) {\n throw new Error(\n context.t('error.activity not found', {\n activity: activityId\n })\n )\n }\n }\n\n activityInstance.adhocType = 'standard'\n activityInstance.refBy = activityId\n\n if (!dueAt && activity.standardTime) {\n activityInstance.dueAt = new Date(Date.now() + activity.standardTime * 1000)\n }\n\n return await tx.getRepository(ActivityInstance).save({\n activityType: activity.activityType,\n uiType: activity.uiType,\n uiSource: activity.uiSource,\n assigneeRole: activity.assigneeRole,\n supervisoryRole: activity.supervisoryRole,\n adhocType: activity.adhocType,\n refBy: activity.refBy,\n ...activityInstance,\n transaction: 'draft',\n activity,\n state: ActivityInstanceStatus.Draft,\n domain,\n creator: user,\n updater: user\n })\n}\n"]}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.end = void 0;
|
|
4
|
-
const
|
|
4
|
+
const shell_1 = require("@things-factory/shell");
|
|
5
5
|
const activity_instance_1 = require("../../service/activity-instance/activity-instance");
|
|
6
6
|
const common_1 = require("../common");
|
|
7
7
|
async function end({ id, output, reason }, context) {
|
|
8
8
|
const { domain, user, tx } = context.state;
|
|
9
|
-
const repository = (0,
|
|
9
|
+
const repository = (0, shell_1.getRepository)(activity_instance_1.ActivityInstance);
|
|
10
10
|
var activityInstance = await repository.findOne({
|
|
11
|
-
where: { domain, id }
|
|
11
|
+
where: { domain: { id: domain.id }, id },
|
|
12
|
+
relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']
|
|
12
13
|
});
|
|
13
14
|
if (!activityInstance) {
|
|
14
15
|
throw new Error(context.t('error.activity-instance not found', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"end.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/end.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"end.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/end.ts"],"names":[],"mappings":";;;AAAA,iDAAqD;AAErD,yFAAoF;AACpF,sCAAqD;AAE9C,KAAK,UAAU,GAAG,CACvB,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAoD,EACxE,OAAY;IAEZ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAC1C,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,oCAAgB,CAAC,CAAA;IAElD,IAAI,gBAAgB,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAC9C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC;KACpH,CAAC,CAAA;IAEF,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,mCAAmC,EAAE;YAC7C,gBAAgB,EAAE,EAAE;SACrB,CAAC,CACH,CAAA;KACF;IAED,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,IAAI,iCAC/C,gBAAgB,KACnB,MAAM;QACN,MAAM,EACN,WAAW,EAAE,KAAK,EAClB,KAAK,EAAE,MAAM,IAAA,kCAAyB,EAAC,EAAE,EAAE,OAAO,CAAC,EACnD,OAAO,EAAE,IAAI,EACb,YAAY,EAAE,IAAI,IAAI,EAAE,EACxB,UAAU,EAAE,IAAI,IAChB,CAAA;AACJ,CAAC;AA9BD,kBA8BC","sourcesContent":["import { getRepository } from '@things-factory/shell'\n\nimport { ActivityInstance } from '../../service/activity-instance/activity-instance'\nimport { evalActivityInstanceState } from '../common'\n\nexport async function end(\n { id, output, reason }: { id: string; output?: object; reason?: string },\n context: any\n): Promise<ActivityInstance> {\n const { domain, user, tx } = context.state\n const repository = getRepository(ActivityInstance)\n\n var activityInstance = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']\n })\n\n if (!activityInstance) {\n throw new Error(\n context.t('error.activity-instance not found', {\n activityInstance: id\n })\n )\n }\n\n return await tx.getRepository(ActivityInstance).save({\n ...activityInstance,\n reason,\n output,\n transaction: 'end',\n state: await evalActivityInstanceState(id, context),\n updater: user,\n terminatedAt: new Date(),\n terminator: user\n })\n}\n"]}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.pick = void 0;
|
|
4
|
-
const
|
|
4
|
+
const shell_1 = require("@things-factory/shell");
|
|
5
5
|
const activity_instance_1 = require("../../service/activity-instance/activity-instance");
|
|
6
6
|
const common_1 = require("../common");
|
|
7
7
|
async function pick(id, context) {
|
|
8
8
|
const { domain, user, tx } = context.state;
|
|
9
|
-
const repository = (0,
|
|
9
|
+
const repository = (0, shell_1.getRepository)(activity_instance_1.ActivityInstance);
|
|
10
10
|
var activityInstance = await repository.findOne({
|
|
11
|
-
where: { domain, id }
|
|
11
|
+
where: { domain: { id: domain.id }, id },
|
|
12
|
+
relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']
|
|
12
13
|
});
|
|
13
14
|
if (!activityInstance) {
|
|
14
15
|
throw new Error(context.t('error.activity-instance not found', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pick.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/pick.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"pick.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/pick.ts"],"names":[],"mappings":";;;AAAA,iDAAqD;AAErD,yFAAoF;AAEpF,sCAAyD;AAElD,KAAK,UAAU,IAAI,CAAC,EAAU,EAAE,OAAwB;IAC7D,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAC1C,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,oCAAgB,CAAC,CAAA;IAElD,IAAI,gBAAgB,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAC9C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC;KACpH,CAAC,CAAA;IAEF,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,mCAAmC,EAAE;YAC7C,gBAAgB,EAAE,EAAE;SACrB,CAAC,CACH,CAAA;KACF;IAED,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,IAAI,iCACvD,gBAAgB,KACnB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,IAAI,IACb,CAAA;IAEF,OAAO,CAAC,MAAM,IAAA,sCAA6B,EAAC,MAAM,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAClF,CAAC;AAxBD,oBAwBC","sourcesContent":["import { getRepository } from '@things-factory/shell'\n\nimport { ActivityInstance } from '../../service/activity-instance/activity-instance'\nimport { ActivityThread } from '../../service/activity-thread/activity-thread'\nimport { createActivityThreadsForUsers } from '../common'\n\nexport async function pick(id: string, context: ResolverContext): Promise<ActivityThread> {\n const { domain, user, tx } = context.state\n const repository = getRepository(ActivityInstance)\n\n var activityInstance = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']\n })\n\n if (!activityInstance) {\n throw new Error(\n context.t('error.activity-instance not found', {\n activityInstance: id\n })\n )\n }\n\n const picked = await tx.getRepository(ActivityInstance).save({\n ...activityInstance,\n transaction: 'pick',\n updater: user\n })\n\n return (await createActivityThreadsForUsers('pick', picked, [user], context))[0]\n}\n"]}
|
|
@@ -8,9 +8,23 @@ const common_1 = require("../common");
|
|
|
8
8
|
async function post(activityInstance, context) {
|
|
9
9
|
const { domain, user, tx } = context.state;
|
|
10
10
|
const { id, assignees } = activityInstance;
|
|
11
|
-
var origin = id
|
|
11
|
+
var origin = id
|
|
12
|
+
? await tx.getRepository(activity_instance_1.ActivityInstance).findOne({
|
|
13
|
+
where: { domain: { id: domain.id }, id },
|
|
14
|
+
relations: [
|
|
15
|
+
'domain',
|
|
16
|
+
'activity',
|
|
17
|
+
'assigneeRole',
|
|
18
|
+
'supervisoryRole',
|
|
19
|
+
'updater',
|
|
20
|
+
'creator',
|
|
21
|
+
'starter',
|
|
22
|
+
'terminator'
|
|
23
|
+
]
|
|
24
|
+
})
|
|
25
|
+
: null;
|
|
12
26
|
const posted = await tx.getRepository(activity_instance_1.ActivityInstance).save(Object.assign(Object.assign(Object.assign({}, origin), activityInstance), { transaction: 'post', state: activity_instance_1.ActivityInstanceStatus.Posted, domain, creator: user, updater: user }));
|
|
13
|
-
const assignedUsers = await tx.getRepository(auth_base_1.User).
|
|
27
|
+
const assignedUsers = await tx.getRepository(auth_base_1.User).findBy({
|
|
14
28
|
email: (0, typeorm_1.In)(assignees || [])
|
|
15
29
|
});
|
|
16
30
|
if (posted.threadsMin === 0 && posted.assigneeRoleId) {
|
|
@@ -19,7 +33,7 @@ async function post(activityInstance, context) {
|
|
|
19
33
|
if (assignedUsers.length > 0) {
|
|
20
34
|
await (0, common_1.createActivityThreadsForUsers)('post', posted, assignedUsers, context);
|
|
21
35
|
}
|
|
22
|
-
return await tx.getRepository(activity_instance_1.ActivityInstance).
|
|
36
|
+
return await tx.getRepository(activity_instance_1.ActivityInstance).findOneBy({ id: posted.id });
|
|
23
37
|
}
|
|
24
38
|
exports.post = post;
|
|
25
39
|
//# sourceMappingURL=post.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/post.ts"],"names":[],"mappings":";;;AAAA,qCAA4B;AAE5B,yDAAgD;AAEhD,yFAA4G;AAE5G,sCAA+F;AAExF,KAAK,UAAU,IAAI,
|
|
1
|
+
{"version":3,"file":"post.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/post.ts"],"names":[],"mappings":";;;AAAA,qCAA4B;AAE5B,yDAAgD;AAEhD,yFAA4G;AAE5G,sCAA+F;AAExF,KAAK,UAAU,IAAI,CACxB,gBAAsC,EACtC,OAAwB;IAExB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAC1C,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,gBAAgB,CAAA;IAE1C,IAAI,MAAM,GAAG,EAAE;QACb,CAAC,CAAC,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,OAAO,CAAC;YAC/C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;YACxC,SAAS,EAAE;gBACT,QAAQ;gBACR,UAAU;gBACV,cAAc;gBACd,iBAAiB;gBACjB,SAAS;gBACT,SAAS;gBACT,SAAS;gBACT,YAAY;aACb;SACF,CAAC;QACJ,CAAC,CAAC,IAAI,CAAA;IAER,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,IAAI,+CACvD,MAAM,GACN,gBAAgB,KACnB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,0CAAsB,CAAC,MAAM,EACpC,MAAM,EACN,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,IACb,CAAA;IAEF,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,gBAAI,CAAC,CAAC,MAAM,CAAC;QACxD,KAAK,EAAE,IAAA,YAAE,EAAC,SAAS,IAAI,EAAE,CAAC;KAC3B,CAAC,CAAA;IAEF,IAAI,MAAM,CAAC,UAAU,KAAK,CAAC,IAAI,MAAM,CAAC,cAAc,EAAE;QACpD,MAAM,IAAA,6CAAoC,EAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;KACpE;IAED,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;QAC5B,MAAM,IAAA,sCAA6B,EAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,CAAA;KAC5E;IAED,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;AAC9E,CAAC;AA9CD,oBA8CC","sourcesContent":["import { In } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\n\nimport { ActivityInstance, ActivityInstanceStatus } from '../../service/activity-instance/activity-instance'\nimport { ActivityInstancePost } from '../../service/activity-instance/activity-instance-type'\nimport { createActivityThreadsForAllRoleUsers, createActivityThreadsForUsers } from '../common'\n\nexport async function post(\n activityInstance: ActivityInstancePost,\n context: ResolverContext\n): Promise<ActivityInstance> {\n const { domain, user, tx } = context.state\n const { id, assignees } = activityInstance\n\n var origin = id\n ? await tx.getRepository(ActivityInstance).findOne({\n where: { domain: { id: domain.id }, id },\n relations: [\n 'domain',\n 'activity',\n 'assigneeRole',\n 'supervisoryRole',\n 'updater',\n 'creator',\n 'starter',\n 'terminator'\n ]\n })\n : null\n\n const posted = await tx.getRepository(ActivityInstance).save({\n ...origin,\n ...activityInstance,\n transaction: 'post',\n state: ActivityInstanceStatus.Posted,\n domain,\n creator: user,\n updater: user\n })\n\n const assignedUsers = await tx.getRepository(User).findBy({\n email: In(assignees || [])\n })\n\n if (posted.threadsMin === 0 && posted.assigneeRoleId) {\n await createActivityThreadsForAllRoleUsers('post', posted, context)\n }\n\n if (assignedUsers.length > 0) {\n await createActivityThreadsForUsers('post', posted, assignedUsers, context)\n }\n\n return await tx.getRepository(ActivityInstance).findOneBy({ id: posted.id })\n}\n"]}
|
|
@@ -7,7 +7,8 @@ async function start(id, context) {
|
|
|
7
7
|
const { domain, user, tx } = context.state;
|
|
8
8
|
const repository = tx.getRepository(activity_instance_1.ActivityInstance);
|
|
9
9
|
const activityInstance = await repository.findOne({
|
|
10
|
-
where: { domain, id }
|
|
10
|
+
where: { domain: { id: domain.id }, id },
|
|
11
|
+
relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']
|
|
11
12
|
});
|
|
12
13
|
return await repository.save(Object.assign(Object.assign({}, activityInstance), { transaction: 'start', state: await (0, common_1.evalActivityInstanceState)(id, context), updater: user, startedAt: new Date() }));
|
|
13
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/start.ts"],"names":[],"mappings":";;;AAAA,yFAAoF;AACpF,sCAAqD;AAE9C,KAAK,UAAU,KAAK,CAAC,EAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/start.ts"],"names":[],"mappings":";;;AAAA,yFAAoF;AACpF,sCAAqD;AAE9C,KAAK,UAAU,KAAK,CAAC,EAAU,EAAE,OAAwB;IAC9D,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE1C,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAA;IACrD,MAAM,gBAAgB,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAChD,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC;KACpH,CAAC,CAAA;IAEF,OAAO,MAAM,UAAU,CAAC,IAAI,iCACvB,gBAAgB,KACnB,WAAW,EAAE,OAAO,EACpB,KAAK,EAAE,MAAM,IAAA,kCAAyB,EAAC,EAAE,EAAE,OAAO,CAAC,EACnD,OAAO,EAAE,IAAI,EACb,SAAS,EAAE,IAAI,IAAI,EAAE,IACrB,CAAA;AACJ,CAAC;AAhBD,sBAgBC","sourcesContent":["import { ActivityInstance } from '../../service/activity-instance/activity-instance'\nimport { evalActivityInstanceState } from '../common'\n\nexport async function start(id: string, context: ResolverContext): Promise<ActivityInstance> {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(ActivityInstance)\n const activityInstance = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']\n })\n\n return await repository.save({\n ...activityInstance,\n transaction: 'start',\n state: await evalActivityInstanceState(id, context),\n updater: user,\n startedAt: new Date()\n })\n}\n"]}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.terminate = void 0;
|
|
4
|
-
const
|
|
4
|
+
const shell_1 = require("@things-factory/shell");
|
|
5
5
|
const activity_instance_1 = require("../../service/activity-instance/activity-instance");
|
|
6
6
|
const common_1 = require("../common");
|
|
7
7
|
async function terminate({ id, output, reason }, context) {
|
|
8
8
|
const { domain, user, tx } = context.state;
|
|
9
|
-
const repository = (0,
|
|
9
|
+
const repository = (0, shell_1.getRepository)(activity_instance_1.ActivityInstance);
|
|
10
10
|
var activityInstance = await repository.findOne({
|
|
11
|
-
where: { domain, id }
|
|
11
|
+
where: { domain: { id: domain.id }, id },
|
|
12
|
+
relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']
|
|
12
13
|
});
|
|
13
14
|
if (!activityInstance) {
|
|
14
15
|
throw new Error(context.t('error.activity-instance not found', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminate.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/terminate.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"terminate.js","sourceRoot":"","sources":["../../../server/controllers/activity-instance/terminate.ts"],"names":[],"mappings":";;;AAAA,iDAAqD;AAErD,yFAAoF;AACpF,sCAAqD;AAE9C,KAAK,UAAU,SAAS,CAC7B,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAoD,EACxE,OAAY;IAEZ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE1C,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,oCAAgB,CAAC,CAAA;IAElD,IAAI,gBAAgB,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAC9C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC;KACpH,CAAC,CAAA;IAEF,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,mCAAmC,EAAE;YAC7C,gBAAgB,EAAE,EAAE;SACrB,CAAC,CACH,CAAA;KACF;IAED,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,IAAI,iCAC/C,gBAAgB,KACnB,MAAM;QACN,MAAM,EACN,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,MAAM,IAAA,kCAAyB,EAAC,EAAE,EAAE,OAAO,CAAC,EACnD,OAAO,EAAE,IAAI,EACb,YAAY,EAAE,IAAI,IAAI,EAAE,EACxB,UAAU,EAAE,IAAI,IAChB,CAAA;AACJ,CAAC;AA/BD,8BA+BC","sourcesContent":["import { getRepository } from '@things-factory/shell'\n\nimport { ActivityInstance } from '../../service/activity-instance/activity-instance'\nimport { evalActivityInstanceState } from '../common'\n\nexport async function terminate(\n { id, output, reason }: { id: string; output?: object; reason?: string },\n context: any\n): Promise<ActivityInstance> {\n const { domain, user, tx } = context.state\n\n const repository = getRepository(ActivityInstance)\n\n var activityInstance = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activity', 'assigneeRole', 'supervisoryRole', 'updater', 'creator', 'starter', 'terminator']\n })\n\n if (!activityInstance) {\n throw new Error(\n context.t('error.activity-instance not found', {\n activityInstance: id\n })\n )\n }\n\n return await tx.getRepository(ActivityInstance).save({\n ...activityInstance,\n reason,\n output,\n transaction: 'terminate',\n state: await evalActivityInstanceState(id, context),\n updater: user,\n terminatedAt: new Date(),\n terminator: user\n })\n}\n"]}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.abort = void 0;
|
|
4
|
-
const
|
|
4
|
+
const shell_1 = require("@things-factory/shell");
|
|
5
5
|
const activity_thread_1 = require("../../service/activity-thread/activity-thread");
|
|
6
6
|
async function abort({ id, reason }, context) {
|
|
7
7
|
const { domain, user, tx } = context.state;
|
|
8
|
-
var repository = (0,
|
|
8
|
+
var repository = (0, shell_1.getRepository)(activity_thread_1.ActivityThread);
|
|
9
9
|
var activityThread = await repository.findOne({
|
|
10
|
-
where: { domain, id }
|
|
10
|
+
where: { domain: { id: domain.id }, id },
|
|
11
|
+
relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']
|
|
11
12
|
});
|
|
12
13
|
if (!activityThread) {
|
|
13
14
|
throw new Error(context.t('error.activity-instance not found', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abort.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/abort.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"abort.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/abort.ts"],"names":[],"mappings":";;;AAAA,iDAAqD;AAErD,mFAAoG;AAE7F,KAAK,UAAU,KAAK,CACzB,EAAE,EAAE,EAAE,MAAM,EAAkC,EAC9C,OAAwB;IAExB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE1C,IAAI,UAAU,GAAG,IAAA,qBAAa,EAAC,gCAAc,CAAC,CAAA;IAE9C,IAAI,cAAc,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAC5C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC;KAC5E,CAAC,CAAA;IAEF,IAAI,CAAC,cAAc,EAAE;QACnB,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,mCAAmC,EAAE;YAC7C,cAAc,EAAE,EAAE;SACnB,CAAC,CACH,CAAA;KACF;IAED,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,gCAAc,CAAC,CAAC,IAAI,iCAC7C,cAAc,KACjB,MAAM,EACN,KAAK,EAAE,sCAAoB,CAAC,OAAO,EACnC,WAAW,EAAE,OAAO,EACpB,OAAO,EAAE,IAAI,EACb,YAAY,EAAE,IAAI,IAAI,EAAE,EACxB,UAAU,EAAE,IAAI,IAChB,CAAA;AACJ,CAAC;AA9BD,sBA8BC","sourcesContent":["import { getRepository } from '@things-factory/shell'\n\nimport { ActivityThread, ActivityThreadStatus } from '../../service/activity-thread/activity-thread'\n\nexport async function abort(\n { id, reason }: { id: string; reason: string },\n context: ResolverContext\n): Promise<ActivityThread> {\n const { domain, user, tx } = context.state\n\n var repository = getRepository(ActivityThread)\n\n var activityThread = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']\n })\n\n if (!activityThread) {\n throw new Error(\n context.t('error.activity-instance not found', {\n activityThread: id\n })\n )\n }\n\n return await tx.getRepository(ActivityThread).save({\n ...activityThread,\n reason,\n state: ActivityThreadStatus.Aborted,\n transaction: 'abort',\n updater: user,\n terminatedAt: new Date(),\n terminator: user\n })\n}\n"]}
|
|
@@ -6,7 +6,8 @@ async function adjust(id, patch, context) {
|
|
|
6
6
|
const { domain, user, tx } = context.state;
|
|
7
7
|
const repository = tx.getRepository(activity_thread_1.ActivityThread);
|
|
8
8
|
const activityThread = await repository.findOne({
|
|
9
|
-
where: { domain, id }
|
|
9
|
+
where: { domain: { id: domain.id }, id },
|
|
10
|
+
relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']
|
|
10
11
|
});
|
|
11
12
|
return await repository.save(Object.assign(Object.assign(Object.assign({}, activityThread), patch), { transaction: 'adjust', updater: user }));
|
|
12
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adjust.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/adjust.ts"],"names":[],"mappings":";;;AAAA,mFAA8E;AAGvE,KAAK,UAAU,MAAM,
|
|
1
|
+
{"version":3,"file":"adjust.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/adjust.ts"],"names":[],"mappings":";;;AAAA,mFAA8E;AAGvE,KAAK,UAAU,MAAM,CAC1B,EAAU,EACV,KAA0B,EAC1B,OAAwB;IAExB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAC1C,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,gCAAc,CAAC,CAAA;IAEnD,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAC9C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC;KAC5E,CAAC,CAAA;IAEF,OAAO,MAAM,UAAU,CAAC,IAAI,+CACvB,cAAc,GACd,KAAK,KACR,WAAW,EAAE,QAAQ,EACrB,OAAO,EAAE,IAAI,IACb,CAAA;AACJ,CAAC;AAnBD,wBAmBC","sourcesContent":["import { ActivityThread } from '../../service/activity-thread/activity-thread'\nimport { ActivityThreadPatch } from '../../service/activity-thread/activity-thread-type'\n\nexport async function adjust(\n id: string,\n patch: ActivityThreadPatch,\n context: ResolverContext\n): Promise<ActivityThread> {\n const { domain, user, tx } = context.state\n const repository = tx.getRepository(ActivityThread)\n\n const activityThread = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']\n })\n\n return await repository.save({\n ...activityThread,\n ...patch,\n transaction: 'adjust',\n updater: user\n })\n}\n"]}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.delegate = void 0;
|
|
4
|
-
const
|
|
4
|
+
const shell_1 = require("@things-factory/shell");
|
|
5
5
|
const activity_thread_1 = require("../../service/activity-thread/activity-thread");
|
|
6
6
|
async function delegate({ id, assigneeRole, dueAt, reason }, context) {
|
|
7
7
|
const { domain, user, tx } = context.state;
|
|
8
|
-
const repository = (0,
|
|
8
|
+
const repository = (0, shell_1.getRepository)(activity_thread_1.ActivityThread);
|
|
9
9
|
var activityThread = await repository.findOne({
|
|
10
|
-
where: { domain, id }
|
|
10
|
+
where: { domain: { id: domain.id }, id },
|
|
11
|
+
relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']
|
|
11
12
|
});
|
|
12
13
|
if (!activityThread) {
|
|
13
14
|
throw new Error(context.t('error.activity-instance not found', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delegate.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/delegate.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"delegate.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/delegate.ts"],"names":[],"mappings":";;;AAAA,iDAAqD;AAErD,mFAAoG;AAE7F,KAAK,UAAU,QAAQ,CAC5B,EACE,EAAE,EACF,YAAY,EACZ,KAAK,EACL,MAAM,EAMP,EACD,OAAY;IAEZ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE1C,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,gCAAc,CAAC,CAAA;IAEhD,IAAI,cAAc,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAC5C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC;KAC5E,CAAC,CAAA;IAEF,IAAI,CAAC,cAAc,EAAE;QACnB,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,mCAAmC,EAAE;YAC7C,cAAc,EAAE,EAAE;SACnB,CAAC,CACH,CAAA;KACF;IAED,IAAI,KAAK,EAAE;QACT,cAAc,CAAC,KAAK,GAAG,KAAK,CAAA;KAC7B;IAED,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,gCAAc,CAAC,CAAC,IAAI,iCAC7C,cAAc,KACjB,MAAM;QACN,YAAY,EACZ,WAAW,EAAE,UAAU,EACvB,KAAK,EAAE,sCAAoB,CAAC,SAAS,EACrC,OAAO,EAAE,IAAI,EACb,UAAU,EAAE,IAAI,IAAI,EAAE,IACtB,CAAA;AACJ,CAAC;AA5CD,4BA4CC","sourcesContent":["import { getRepository } from '@things-factory/shell'\n\nimport { ActivityThread, ActivityThreadStatus } from '../../service/activity-thread/activity-thread'\n\nexport async function delegate(\n {\n id,\n assigneeRole,\n dueAt,\n reason\n }: {\n id: string\n assigneeRole?: object\n dueAt?: Date\n reason?: string\n },\n context: any\n): Promise<ActivityThread> {\n const { domain, user, tx } = context.state\n\n const repository = getRepository(ActivityThread)\n\n var activityThread = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']\n })\n\n if (!activityThread) {\n throw new Error(\n context.t('error.activity-instance not found', {\n activityThread: id\n })\n )\n }\n\n if (dueAt) {\n activityThread.dueAt = dueAt\n }\n\n return await tx.getRepository(ActivityThread).save({\n ...activityThread,\n reason,\n assigneeRole,\n transaction: 'delegate',\n state: ActivityThreadStatus.Delegated,\n updater: user,\n assignedAt: new Date()\n })\n}\n"]}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.end = void 0;
|
|
4
|
-
const
|
|
4
|
+
const shell_1 = require("@things-factory/shell");
|
|
5
5
|
const activity_thread_1 = require("../../service/activity-thread/activity-thread");
|
|
6
6
|
async function end({ id, output, reason }, context) {
|
|
7
7
|
const { domain, user, tx } = context.state;
|
|
8
|
-
const repository = (0,
|
|
8
|
+
const repository = (0, shell_1.getRepository)(activity_thread_1.ActivityThread);
|
|
9
9
|
var activityThread = await repository.findOne({
|
|
10
|
-
where: { domain, id }
|
|
10
|
+
where: { domain: { id: domain.id }, id },
|
|
11
|
+
relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']
|
|
11
12
|
});
|
|
12
13
|
if (!activityThread) {
|
|
13
14
|
throw new Error(context.t('error.activity-thread not found', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"end.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/end.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"end.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/end.ts"],"names":[],"mappings":";;;AAAA,iDAAqD;AAErD,mFAAoG;AAE7F,KAAK,UAAU,GAAG,CACvB,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAoD,EACxE,OAAY;IAEZ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE1C,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,gCAAc,CAAC,CAAA;IAEhD,IAAI,cAAc,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAC5C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC;KAC5E,CAAC,CAAA;IAEF,IAAI,CAAC,cAAc,EAAE;QACnB,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,iCAAiC,EAAE;YAC3C,cAAc,EAAE,EAAE;SACnB,CAAC,CACH,CAAA;KACF;IAED,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,gCAAc,CAAC,CAAC,IAAI,iCAC7C,cAAc,KACjB,MAAM;QACN,MAAM,EACN,WAAW,EAAE,KAAK,EAClB,KAAK,EAAE,sCAAoB,CAAC,KAAK,EACjC,OAAO,EAAE,IAAI,EACb,YAAY,EAAE,IAAI,IAAI,EAAE,IACxB,CAAA;AACJ,CAAC;AA9BD,kBA8BC","sourcesContent":["import { getRepository } from '@things-factory/shell'\n\nimport { ActivityThread, ActivityThreadStatus } from '../../service/activity-thread/activity-thread'\n\nexport async function end(\n { id, output, reason }: { id: string; output?: object; reason?: string },\n context: any\n): Promise<ActivityThread> {\n const { domain, user, tx } = context.state\n\n const repository = getRepository(ActivityThread)\n\n var activityThread = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']\n })\n\n if (!activityThread) {\n throw new Error(\n context.t('error.activity-thread not found', {\n activityThread: id\n })\n )\n }\n\n return await tx.getRepository(ActivityThread).save({\n ...activityThread,\n reason,\n output,\n transaction: 'end',\n state: ActivityThreadStatus.Ended,\n updater: user,\n terminatedAt: new Date()\n })\n}\n"]}
|
|
@@ -6,7 +6,8 @@ async function save(id, save, context) {
|
|
|
6
6
|
const { domain, user, tx } = context.state;
|
|
7
7
|
const repository = tx.getRepository(activity_thread_1.ActivityThread);
|
|
8
8
|
const activityThread = await repository.findOne({
|
|
9
|
-
where: { domain, id }
|
|
9
|
+
where: { domain: { id: domain.id }, id },
|
|
10
|
+
relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']
|
|
10
11
|
});
|
|
11
12
|
return await repository.save(Object.assign(Object.assign(Object.assign({}, activityThread), save), { transaction: 'save', updater: user }));
|
|
12
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"save.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/save.ts"],"names":[],"mappings":";;;AAAA,mFAA8E;AAGvE,KAAK,UAAU,IAAI,CAAC,EAAU,EAAE,IAAwB,EAAE,
|
|
1
|
+
{"version":3,"file":"save.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/save.ts"],"names":[],"mappings":";;;AAAA,mFAA8E;AAGvE,KAAK,UAAU,IAAI,CAAC,EAAU,EAAE,IAAwB,EAAE,OAAwB;IACvF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAC1C,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,gCAAc,CAAC,CAAA;IAEnD,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAC9C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC;KAC5E,CAAC,CAAA;IAEF,OAAO,MAAM,UAAU,CAAC,IAAI,+CACvB,cAAc,GACd,IAAI,KACP,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,IAAI,IACb,CAAA;AACJ,CAAC;AAfD,oBAeC","sourcesContent":["import { ActivityThread } from '../../service/activity-thread/activity-thread'\nimport { ActivityThreadSave } from '../../service/activity-thread/activity-thread-type'\n\nexport async function save(id: string, save: ActivityThreadSave, context: ResolverContext): Promise<ActivityThread> {\n const { domain, user, tx } = context.state\n const repository = tx.getRepository(ActivityThread)\n\n const activityThread = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']\n })\n\n return await repository.save({\n ...activityThread,\n ...save,\n transaction: 'save',\n updater: user\n })\n}\n"]}
|
|
@@ -6,7 +6,8 @@ async function start(id, output, reason, context) {
|
|
|
6
6
|
const { domain, user, tx } = context.state;
|
|
7
7
|
const repository = tx.getRepository(activity_thread_1.ActivityThread);
|
|
8
8
|
const activityThread = await repository.findOne({
|
|
9
|
-
where: { domain, id }
|
|
9
|
+
where: { domain: { id: domain.id }, id },
|
|
10
|
+
relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']
|
|
10
11
|
});
|
|
11
12
|
if (!activityThread) {
|
|
12
13
|
throw new Error(context.t('error.activity-instance not found', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/start.ts"],"names":[],"mappings":";;;AAAA,mFAAoG;AAE7F,KAAK,UAAU,KAAK,
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/start.ts"],"names":[],"mappings":";;;AAAA,mFAAoG;AAE7F,KAAK,UAAU,KAAK,CACzB,EAAU,EACV,MAAc,EACd,MAAc,EACd,OAAwB;IAExB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE1C,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,gCAAc,CAAC,CAAA;IACnD,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAC9C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC;KAC5E,CAAC,CAAA;IAEF,IAAI,CAAC,cAAc,EAAE;QACnB,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,mCAAmC,EAAE;YAC7C,gBAAgB,EAAE,EAAE;SACrB,CAAC,CACH,CAAA;KACF;IAED,IAAI,MAAM,EAAE;QACV,cAAc,CAAC,MAAM,GAAG,MAAM,CAAA;KAC/B;IAED,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,gCAAc,CAAC,CAAC,IAAI,iCAC7C,cAAc,KACjB,MAAM,EACN,KAAK,EAAE,sCAAoB,CAAC,OAAO,EACnC,WAAW,EAAE,OAAO,EACpB,OAAO,EAAE,IAAI,EACb,SAAS,EAAE,IAAI,IAAI,EAAE,IACrB,CAAA;AACJ,CAAC;AAlCD,sBAkCC","sourcesContent":["import { ActivityThread, ActivityThreadStatus } from '../../service/activity-thread/activity-thread'\n\nexport async function start(\n id: string,\n output: object,\n reason: string,\n context: ResolverContext\n): Promise<ActivityThread> {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(ActivityThread)\n const activityThread = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']\n })\n\n if (!activityThread) {\n throw new Error(\n context.t('error.activity-instance not found', {\n activityInstance: id\n })\n )\n }\n\n if (output) {\n activityThread.output = output\n }\n\n return await tx.getRepository(ActivityThread).save({\n ...activityThread,\n reason,\n state: ActivityThreadStatus.Started,\n transaction: 'start',\n updater: user,\n startedAt: new Date()\n })\n}\n"]}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.terminate = void 0;
|
|
4
|
-
const
|
|
4
|
+
const shell_1 = require("@things-factory/shell");
|
|
5
5
|
const activity_thread_1 = require("../../service/activity-thread/activity-thread");
|
|
6
6
|
async function terminate({ id, output, reason }, context) {
|
|
7
7
|
const { domain, user, tx } = context.state;
|
|
8
|
-
var repository = (0,
|
|
8
|
+
var repository = (0, shell_1.getRepository)(activity_thread_1.ActivityThread);
|
|
9
9
|
var activityThread = await repository.findOne({
|
|
10
|
-
where: { domain, id }
|
|
10
|
+
where: { domain: { id: domain.id }, id },
|
|
11
|
+
relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']
|
|
11
12
|
});
|
|
12
13
|
if (!activityThread) {
|
|
13
14
|
throw new Error(context.t('error.activity-instance not found', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminate.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/terminate.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"terminate.js","sourceRoot":"","sources":["../../../server/controllers/activity-thread/terminate.ts"],"names":[],"mappings":";;;AAAA,iDAAqD;AAErD,mFAAoG;AAE7F,KAAK,UAAU,SAAS,CAC7B,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAoD,EACxE,OAAY;IAEZ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAC1C,IAAI,UAAU,GAAG,IAAA,qBAAa,EAAC,gCAAc,CAAC,CAAA;IAE9C,IAAI,cAAc,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QAC5C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;QACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC;KAC5E,CAAC,CAAA;IAEF,IAAI,CAAC,cAAc,EAAE;QACnB,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,CAAC,CAAC,mCAAmC,EAAE;YAC7C,cAAc,EAAE,EAAE;SACnB,CAAC,CACH,CAAA;KACF;IAED,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,gCAAc,CAAC,CAAC,IAAI,iCAC7C,cAAc,KACjB,MAAM;QACN,MAAM,EACN,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,sCAAoB,CAAC,KAAK,EACjC,OAAO,EAAE,IAAI,EACb,YAAY,EAAE,IAAI,IAAI,EAAE,EACxB,UAAU,EAAE,IAAI,IAChB,CAAA;AACJ,CAAC;AA9BD,8BA8BC","sourcesContent":["import { getRepository } from '@things-factory/shell'\n\nimport { ActivityThread, ActivityThreadStatus } from '../../service/activity-thread/activity-thread'\n\nexport async function terminate(\n { id, output, reason }: { id: string; output?: object; reason?: string },\n context: any\n): Promise<ActivityThread> {\n const { domain, user, tx } = context.state\n var repository = getRepository(ActivityThread)\n\n var activityThread = await repository.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'activityInstance', 'assignee', 'creator', 'updater']\n })\n\n if (!activityThread) {\n throw new Error(\n context.t('error.activity-instance not found', {\n activityThread: id\n })\n )\n }\n\n return await tx.getRepository(ActivityThread).save({\n ...activityThread,\n reason,\n output,\n transaction: 'terminate',\n state: ActivityThreadStatus.Ended,\n updater: user,\n terminatedAt: new Date(),\n terminator: user\n })\n}\n"]}
|
|
@@ -23,7 +23,10 @@ async function updateActivityInstanceState(id, context) {
|
|
|
23
23
|
exports.updateActivityInstanceState = updateActivityInstanceState;
|
|
24
24
|
async function evalActivityInstanceState(id, context) {
|
|
25
25
|
const { tx } = context.state;
|
|
26
|
-
const activityInstance = await tx.getRepository(activity_instance_1.ActivityInstance).findOne(
|
|
26
|
+
const activityInstance = await tx.getRepository(activity_instance_1.ActivityInstance).findOne({
|
|
27
|
+
where: { id },
|
|
28
|
+
relations: ['activityThreads']
|
|
29
|
+
});
|
|
27
30
|
const { threadsMin, threadsMax, activityThreads, state, dueAt } = activityInstance;
|
|
28
31
|
const validThreads = activityThreads.filter(thread => thread.isValid());
|
|
29
32
|
const pendingStartedThreads = activityThreads.filter(thread => thread.isPendingStarted());
|
|
@@ -68,9 +71,10 @@ exports.createActivityThreadsForUsers = createActivityThreadsForUsers;
|
|
|
68
71
|
async function createActivityThreadsForAllRoleUsers(transaction, activityInstance, context) {
|
|
69
72
|
const { tx } = context.state;
|
|
70
73
|
// find how many users are having given role
|
|
71
|
-
const assigneeRole = (await tx
|
|
72
|
-
.
|
|
73
|
-
|
|
74
|
+
const assigneeRole = (await tx.getRepository(auth_base_1.Role).findOne({
|
|
75
|
+
where: { id: activityInstance.assigneeRoleId },
|
|
76
|
+
relations: ['users']
|
|
77
|
+
}));
|
|
74
78
|
const assignees = (assigneeRole === null || assigneeRole === void 0 ? void 0 : assigneeRole.users) || [];
|
|
75
79
|
if (assignees.length === 0) {
|
|
76
80
|
throw new Error("there's no users having given role");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../server/controllers/common.ts"],"names":[],"mappings":";;;AAAA,yDAAsD;AAEtD,sFAAyG;AACzG,gFAAiG;AAE1F,KAAK,UAAU,2BAA2B,CAAC,EAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../server/controllers/common.ts"],"names":[],"mappings":";;;AAAA,yDAAsD;AAEtD,sFAAyG;AACzG,gFAAiG;AAE1F,KAAK,UAAU,2BAA2B,CAAC,EAAU,EAAE,OAAwB;IACpF,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE5B,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,IAAI,iCACxC,CAAC,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,OAAO,CAAC;QACnD,KAAK,EAAE,EAAE,EAAE,EAAE;QACb,SAAS,EAAE;YACT,QAAQ;YACR,UAAU;YACV,cAAc;YACd,iBAAiB;YACjB,SAAS;YACT,SAAS;YACT,SAAS;YACT,YAAY;SACb;KACF,CAAC,CAAC,KACH,WAAW,EAAE,QAAQ,CAAC,8CAA8C,EACpE,KAAK,EAAE,MAAM,yBAAyB,CAAC,EAAE,EAAE,OAAO,CAAC,IACnD,CAAA;AACJ,CAAC;AApBD,kEAoBC;AAEM,KAAK,UAAU,yBAAyB,CAAC,EAAU,EAAE,OAAwB;IAClF,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE5B,MAAM,gBAAgB,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,oCAAgB,CAAC,CAAC,OAAO,CAAC;QACxE,KAAK,EAAE,EAAE,EAAE,EAAE;QACb,SAAS,EAAE,CAAC,iBAAiB,CAAC;KAC/B,CAAC,CAAA;IACF,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,gBAAgB,CAAA;IAElF,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;IACvE,MAAM,qBAAqB,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAA;IACzF,MAAM,mBAAmB,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAA;IAErF,QAAQ,IAAI,EAAE;QACZ,KAAK,KAAK,KAAK,0CAAsB,CAAC,KAAK,CAAC;QAC5C,KAAK,KAAK,KAAK,0CAAsB,CAAC,KAAK,CAAC;QAC5C,KAAK,KAAK,KAAK,0CAAsB,CAAC,OAAO;YAC3C,OAAO,KAAK,CAAA;QACd,KAAK,YAAY,CAAC,MAAM,KAAK,CAAC;YAC5B,OAAO,0CAAsB,CAAC,MAAM,CAAA;QACtC,KAAK,UAAU,GAAG,YAAY,CAAC,MAAM;YACnC,OAAO,0CAAsB,CAAC,iBAAiB,CAAA;QACjD,KAAK,qBAAqB,CAAC,MAAM,GAAG,CAAC;YACnC,OAAO,0CAAsB,CAAC,QAAQ,CAAA;QACxC,KAAK,mBAAmB,CAAC,MAAM,GAAG,CAAC;YACjC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,0CAAsB,CAAC,OAAO,CAAC,CAAC,CAAC,0CAAsB,CAAC,OAAO,CAAA;QACjH;YACE,OAAO,0CAAsB,CAAC,KAAK,CAAA;KACtC;AACH,CAAC;AA7BD,8DA6BC;AAEM,KAAK,UAAU,6BAA6B,CACjD,WAAmB,EACnB,gBAAkC,EAClC,SAAiB,EACjB,OAAwB;IAExB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE1C,MAAM,UAAU,GAAG,EAAE,CAAC,aAAa,CAAC,gCAAc,CAAC,CAAA;IACnD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;IAEtB,OAAO,MAAM,UAAU,CAAC,IAAI,CAC1B,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;QACvB,OAAO;YACL,QAAQ;YACR,KAAK,EAAE,sCAAoB,CAAC,QAAQ;YACpC,gBAAgB;YAChB,MAAM;YACN,WAAW;YACX,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,gBAAgB,CAAC,KAAK;YAC7B,UAAU,EAAE,GAAG;SACT,CAAA;IACV,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AA1BD,sEA0BC;AAEM,KAAK,UAAU,oCAAoC,CACxD,WAAmB,EACnB,gBAAkC,EAClC,OAAwB;IAExB,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAE5B,4CAA4C;IAC5C,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,CAAC,aAAa,CAAC,gBAAI,CAAC,CAAC,OAAO,CAAC;QACzD,KAAK,EAAE,EAAE,EAAE,EAAE,gBAAgB,CAAC,cAAc,EAAE;QAC9C,SAAS,EAAE,CAAC,OAAO,CAAC;KACrB,CAAC,CAAS,CAAA;IACX,MAAM,SAAS,GAAG,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,KAAK,KAAI,EAAE,CAAA;IAE3C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;KACtD;IAED,4DAA4D;IAC5D,OAAO,MAAM,6BAA6B,CAAC,WAAW,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;AAC/F,CAAC;AApBD,oFAoBC","sourcesContent":["import { Role, User } from '@things-factory/auth-base'\n\nimport { ActivityInstance, ActivityInstanceStatus } from '../service/activity-instance/activity-instance'\nimport { ActivityThread, ActivityThreadStatus } from '../service/activity-thread/activity-thread'\n\nexport async function updateActivityInstanceState(id: string, context: ResolverContext) {\n const { tx } = context.state\n\n await tx.getRepository(ActivityInstance).save({\n ...(await tx.getRepository(ActivityInstance).findOne({\n where: { id },\n relations: [\n 'domain',\n 'activity',\n 'assigneeRole',\n 'supervisoryRole',\n 'updater',\n 'creator',\n 'starter',\n 'terminator'\n ]\n })),\n transaction: 'thread' /* change by transaction of activity thread */,\n state: await evalActivityInstanceState(id, context)\n })\n}\n\nexport async function evalActivityInstanceState(id: string, context: ResolverContext): Promise<ActivityInstanceStatus> {\n const { tx } = context.state\n\n const activityInstance = await tx.getRepository(ActivityInstance).findOne({\n where: { id },\n relations: ['activityThreads']\n })\n const { threadsMin, threadsMax, activityThreads, state, dueAt } = activityInstance\n\n const validThreads = activityThreads.filter(thread => thread.isValid())\n const pendingStartedThreads = activityThreads.filter(thread => thread.isPendingStarted())\n const pendingEndedThreads = activityThreads.filter(thread => thread.isPendingEnded())\n\n switch (true) {\n case state === ActivityInstanceStatus.Draft:\n case state === ActivityInstanceStatus.Ended:\n case state === ActivityInstanceStatus.Aborted:\n return state\n case validThreads.length === 0:\n return ActivityInstanceStatus.Posted\n case threadsMin > validThreads.length:\n return ActivityInstanceStatus.WaitingAssignment\n case pendingStartedThreads.length > 0:\n return ActivityInstanceStatus.Assigned\n case pendingEndedThreads.length > 0:\n return !dueAt || dueAt.getTime() > Date.now() ? ActivityInstanceStatus.Started : ActivityInstanceStatus.Pending\n default:\n return ActivityInstanceStatus.Ended\n }\n}\n\nexport async function createActivityThreadsForUsers(\n transaction: string,\n activityInstance: ActivityInstance,\n assignees: User[],\n context: ResolverContext\n): Promise<ActivityThread[]> {\n const { domain, user, tx } = context.state\n\n const threadRepo = tx.getRepository(ActivityThread)\n const now = new Date()\n\n return await threadRepo.save(\n assignees.map(assignee => {\n return {\n assignee,\n state: ActivityThreadStatus.Assigned,\n activityInstance,\n domain,\n transaction,\n creator: user,\n updater: user,\n dueAt: activityInstance.dueAt,\n assignedAt: now\n } as any\n })\n )\n}\n\nexport async function createActivityThreadsForAllRoleUsers(\n transaction: string,\n activityInstance: ActivityInstance,\n context: ResolverContext\n): Promise<ActivityThread[]> {\n const { tx } = context.state\n\n // find how many users are having given role\n const assigneeRole = (await tx.getRepository(Role).findOne({\n where: { id: activityInstance.assigneeRoleId },\n relations: ['users']\n })) as Role\n const assignees = assigneeRole?.users || []\n\n if (assignees.length === 0) {\n throw new Error(\"there's no users having given role\")\n }\n\n // create activity-thread for all of users having given role\n return await createActivityThreadsForUsers(transaction, activityInstance, assignees, context)\n}\n"]}
|