@things-factory/dataset 7.0.1-rc.9 → 7.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. package/client/activities/activity-data-review-edit.ts +1 -1
  2. package/client/activities/activity-data-review-view.ts +1 -1
  3. package/client/activities/activity-ooc-resolve-edit.ts +3 -3
  4. package/client/activities/activity-ooc-resolve-view.ts +1 -1
  5. package/client/activities/activity-ooc-review-edit.ts +4 -4
  6. package/client/activities/activity-ooc-review-view.ts +1 -1
  7. package/client/pages/data-entry/data-entry-list-page.ts +5 -4
  8. package/client/pages/data-ooc/data-ooc-view.ts +2 -2
  9. package/client/pages/data-ooc/data-oocs-page.ts +1 -1
  10. package/client/pages/data-sample/data-sample-list-page.ts +2 -2
  11. package/client/pages/data-sample/data-sample-search-page.ts +2 -2
  12. package/client/pages/data-sample/data-sample-view.ts +2 -2
  13. package/client/pages/data-summary/data-summary-list-page.ts +2 -2
  14. package/client/pages/data-summary/data-summary-view.ts +1 -1
  15. package/dist-client/activities/activity-data-review-edit.js +1 -1
  16. package/dist-client/activities/activity-data-review-edit.js.map +1 -1
  17. package/dist-client/activities/activity-data-review-view.js +1 -1
  18. package/dist-client/activities/activity-data-review-view.js.map +1 -1
  19. package/dist-client/activities/activity-ooc-resolve-edit.js +3 -3
  20. package/dist-client/activities/activity-ooc-resolve-edit.js.map +1 -1
  21. package/dist-client/activities/activity-ooc-resolve-view.js +1 -1
  22. package/dist-client/activities/activity-ooc-resolve-view.js.map +1 -1
  23. package/dist-client/activities/activity-ooc-review-edit.js +4 -4
  24. package/dist-client/activities/activity-ooc-review-edit.js.map +1 -1
  25. package/dist-client/activities/activity-ooc-review-view.js +1 -1
  26. package/dist-client/activities/activity-ooc-review-view.js.map +1 -1
  27. package/dist-client/pages/data-entry/data-entry-list-page.js +5 -4
  28. package/dist-client/pages/data-entry/data-entry-list-page.js.map +1 -1
  29. package/dist-client/pages/data-ooc/data-ooc-view.js +2 -2
  30. package/dist-client/pages/data-ooc/data-ooc-view.js.map +1 -1
  31. package/dist-client/pages/data-ooc/data-oocs-page.js +1 -1
  32. package/dist-client/pages/data-ooc/data-oocs-page.js.map +1 -1
  33. package/dist-client/pages/data-sample/data-sample-list-page.js +2 -2
  34. package/dist-client/pages/data-sample/data-sample-list-page.js.map +1 -1
  35. package/dist-client/pages/data-sample/data-sample-search-page.js +2 -2
  36. package/dist-client/pages/data-sample/data-sample-search-page.js.map +1 -1
  37. package/dist-client/pages/data-sample/data-sample-view.js +2 -2
  38. package/dist-client/pages/data-sample/data-sample-view.js.map +1 -1
  39. package/dist-client/pages/data-summary/data-summary-list-page.js +2 -2
  40. package/dist-client/pages/data-summary/data-summary-list-page.js.map +1 -1
  41. package/dist-client/pages/data-summary/data-summary-view.js +1 -1
  42. package/dist-client/pages/data-summary/data-summary-view.js.map +1 -1
  43. package/dist-client/tsconfig.tsbuildinfo +1 -1
  44. package/dist-server/activities/activity-ooc-review.js +2 -1
  45. package/dist-server/activities/activity-ooc-review.js.map +1 -1
  46. package/dist-server/controllers/create-data-sample.js +54 -44
  47. package/dist-server/controllers/create-data-sample.js.map +1 -1
  48. package/dist-server/controllers/issue-collect-data.js +1 -1
  49. package/dist-server/controllers/issue-collect-data.js.map +1 -1
  50. package/dist-server/service/data-set/data-set-query.js +1 -1
  51. package/dist-server/service/data-set/data-set-query.js.map +1 -1
  52. package/dist-server/tsconfig.tsbuildinfo +1 -1
  53. package/package.json +26 -26
  54. package/server/activities/activity-ooc-review.ts +2 -1
  55. package/server/controllers/create-data-sample.ts +54 -44
  56. package/server/controllers/issue-collect-data.ts +1 -1
  57. package/server/service/data-set/data-set-query.ts +2 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/dataset",
3
- "version": "7.0.1-rc.9",
3
+ "version": "7.0.2",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "dist-client/index.js",
6
6
  "things-factory": true,
@@ -27,34 +27,34 @@
27
27
  "migration:create": "node ../../node_modules/typeorm/cli.js migration:create -d ./server/migrations"
28
28
  },
29
29
  "dependencies": {
30
- "@operato/app": "^7.0.0-rc",
31
- "@operato/data-grist": "^7.0.0-rc",
32
- "@operato/dataset": "^7.0.0-rc",
33
- "@operato/ghost-print": "^7.0.0-rc",
34
- "@operato/graphql": "^7.0.0-rc",
35
- "@operato/grist-editor": "^7.0.0-rc",
36
- "@operato/i18n": "^7.0.0-rc",
37
- "@operato/layout": "^7.0.0-rc",
38
- "@operato/moment-timezone-es": "^7.0.0-rc",
39
- "@operato/p13n": "^7.0.0-rc",
40
- "@operato/shell": "^7.0.0-rc",
41
- "@operato/styles": "^7.0.0-rc",
42
- "@operato/utils": "^7.0.0-rc",
43
- "@things-factory/auth-base": "^7.0.1-rc.9",
44
- "@things-factory/aws-base": "^7.0.1-rc.9",
45
- "@things-factory/board-service": "^7.0.1-rc.9",
46
- "@things-factory/env": "^7.0.1-rc.8",
47
- "@things-factory/integration-base": "^7.0.1-rc.9",
48
- "@things-factory/organization": "^7.0.1-rc.9",
49
- "@things-factory/personalization": "^7.0.1-rc.9",
50
- "@things-factory/scheduler-client": "^7.0.1-rc.9",
51
- "@things-factory/shell": "^7.0.1-rc.8",
52
- "@things-factory/work-shift": "^7.0.1-rc.9",
53
- "@things-factory/worklist": "^7.0.1-rc.9",
30
+ "@operato/app": "^7.0.0",
31
+ "@operato/data-grist": "^7.0.0",
32
+ "@operato/dataset": "^7.0.0",
33
+ "@operato/ghost-print": "^7.0.0",
34
+ "@operato/graphql": "^7.0.0",
35
+ "@operato/grist-editor": "^7.0.0",
36
+ "@operato/i18n": "^7.0.0",
37
+ "@operato/layout": "^7.0.0",
38
+ "@operato/moment-timezone-es": "^7.0.0",
39
+ "@operato/p13n": "^7.0.0",
40
+ "@operato/shell": "^7.0.0",
41
+ "@operato/styles": "^7.0.0",
42
+ "@operato/utils": "^7.0.0",
43
+ "@things-factory/auth-base": "^7.0.2",
44
+ "@things-factory/aws-base": "^7.0.2",
45
+ "@things-factory/board-service": "^7.0.2",
46
+ "@things-factory/env": "^7.0.0",
47
+ "@things-factory/integration-base": "^7.0.2",
48
+ "@things-factory/organization": "^7.0.2",
49
+ "@things-factory/personalization": "^7.0.2",
50
+ "@things-factory/scheduler-client": "^7.0.2",
51
+ "@things-factory/shell": "^7.0.2",
52
+ "@things-factory/work-shift": "^7.0.2",
53
+ "@things-factory/worklist": "^7.0.2",
54
54
  "cron-parser": "^4.3.0",
55
55
  "moment-timezone": "^0.5.45",
56
56
  "simple-statistics": "^7.8.3",
57
57
  "statistics": "^3.3.0"
58
58
  },
59
- "gitHead": "70c4b8737f2ccb632699f31a92173401624ee9f7"
59
+ "gitHead": "19f0e3097a5b583831ae530d8ff4138ca50d1619"
60
60
  }
@@ -1,3 +1,4 @@
1
+ import { In } from 'typeorm'
1
2
  import { Activity, ActivityInstance, ActivityInstanceStatus, UpdateActivityInstanceStateAddendum } from '@things-factory/worklist'
2
3
  import { issue } from '@things-factory/worklist/dist-server/controllers/activity-instance/issue'
3
4
 
@@ -10,7 +11,7 @@ async function callback(activityInstance: ActivityInstance, addendum: UpdateActi
10
11
 
11
12
  if (state == ActivityInstanceStatus.Ended) {
12
13
  const activity = (await tx.getRepository(Activity).findOneBy({
13
- domain: { id: domain.id },
14
+ domain: domain.parentId ? In([domain.id, domain.parentId]) : { id: domain.id },
14
15
  name: 'OOC Resolve'
15
16
  })) as Activity
16
17
 
@@ -228,26 +228,31 @@ export async function createDataSample(newDataSample: NewDataSample, context: Re
228
228
  })
229
229
 
230
230
  if (scenario) {
231
- scenario.start(scenario.name + ':' + dataSet.name + ':' + dataSample.id, {
232
- dataOocId: dataOoc.id,
233
- dataSampleId: dataSample.id,
234
- dataSet: dataSet.id,
235
- data,
236
- ooc,
237
- oos,
238
- judgment,
239
- collectedAt,
240
- workDate,
241
- workShift,
242
- domain: {
243
- id: domain.id,
244
- subdomain: domain.subdomain,
245
- name: domain.name
246
- },
247
- updator: {
248
- id: user.id,
249
- email: user.email,
250
- name: user.name
231
+ scenario.start({
232
+ instanceName: scenario.name + ':' + dataSet.name + ':' + dataSample.id,
233
+ domain,
234
+ user,
235
+ variables: {
236
+ dataOocId: dataOoc.id,
237
+ dataSampleId: dataSample.id,
238
+ dataSet: dataSet.id,
239
+ data,
240
+ ooc,
241
+ oos,
242
+ judgment,
243
+ collectedAt,
244
+ workDate,
245
+ workShift,
246
+ domain: {
247
+ id: domain.id,
248
+ subdomain: domain.subdomain,
249
+ name: domain.name
250
+ },
251
+ updator: {
252
+ id: user.id,
253
+ email: user.email,
254
+ name: user.name
255
+ }
251
256
  }
252
257
  })
253
258
  } else {
@@ -263,7 +268,7 @@ export async function createDataSample(newDataSample: NewDataSample, context: Re
263
268
  if (activity) {
264
269
  const assignee =
265
270
  dataSet.supervisoryRoleId &&
266
- (await tx.getRepository(Role).findOneBy({ domain: { id: domain.id }, id: dataSet.supervisoryRoleId }))
271
+ (await tx.getRepository(Role).findOneBy({ domain: { id: In([domain.id, domain.parentId].filter(Boolean)) }, id: dataSet.supervisoryRoleId }))
267
272
 
268
273
  const assignees = dataSet.supervisoryRoleId ? [{ type: 'Role', value: dataSet.supervisoryRoleId, assignee }] : []
269
274
 
@@ -289,7 +294,7 @@ export async function createDataSample(newDataSample: NewDataSample, context: Re
289
294
  )
290
295
  }
291
296
  } else {
292
- console.error('OOC Review Activity not installed.')
297
+ console.warn('OOC Review Activity not installed.')
293
298
  }
294
299
 
295
300
  try {
@@ -315,32 +320,37 @@ export async function createDataSample(newDataSample: NewDataSample, context: Re
315
320
  if (normalScenarioId) {
316
321
  const scenario = await tx.getRepository(Scenario).findOne({
317
322
  where: {
318
- domain: { id: In([domain.id, domain.parentId]) },
323
+ domain: { id: In([domain.id, domain.parentId].filter(Boolean)) },
319
324
  id: normalScenarioId
320
325
  },
321
326
  relations: ['domain', 'steps', 'updater']
322
327
  })
323
328
 
324
329
  if (scenario) {
325
- scenario.start(scenario.name + ':' + dataSet.name + ':' + dataSample.id, {
326
- dataSampleId: dataSample.id,
327
- dataSet: dataSet.id,
328
- data,
329
- ooc,
330
- oos,
331
- judgment,
332
- collectedAt,
333
- workDate,
334
- workShift,
335
- domain: {
336
- id: domain.id,
337
- subdomain: domain.subdomain,
338
- name: domain.name
339
- },
340
- updator: {
341
- id: user.id,
342
- email: user.email,
343
- name: user.name
330
+ scenario.start({
331
+ instanceName: scenario.name + ':' + dataSet.name + ':' + dataSample.id,
332
+ domain,
333
+ user,
334
+ variables: {
335
+ dataSampleId: dataSample.id,
336
+ dataSet: dataSet.id,
337
+ data,
338
+ ooc,
339
+ oos,
340
+ judgment,
341
+ collectedAt,
342
+ workDate,
343
+ workShift,
344
+ domain: {
345
+ id: domain.id,
346
+ subdomain: domain.subdomain,
347
+ name: domain.name
348
+ },
349
+ updator: {
350
+ id: user.id,
351
+ email: user.email,
352
+ name: user.name
353
+ }
344
354
  }
345
355
  })
346
356
  } else {
@@ -350,14 +360,14 @@ export async function createDataSample(newDataSample: NewDataSample, context: Re
350
360
 
351
361
  if (dataSet.requiresReview) {
352
362
  const activity = (await tx.getRepository(Activity).findOneBy({
353
- domain: { id: domain.id },
363
+ domain: { id: In([domain.id, domain.parentId].filter(Boolean)) },
354
364
  name: 'Data Review'
355
365
  })) as Activity
356
366
 
357
367
  if (activity) {
358
368
  const assignee =
359
369
  dataSet.supervisoryRoleId &&
360
- (await tx.getRepository(Role).findOneBy({ domain: { id: domain.id }, id: dataSet.supervisoryRoleId }))
370
+ (await tx.getRepository(Role).findOneBy({ domain: { id: In([domain.id, domain.parentId].filter(Boolean)) }, id: dataSet.supervisoryRoleId }))
361
371
 
362
372
  const assignees = dataSet.supervisoryRoleId
363
373
  ? [{ type: 'Role', value: dataSet.supervisoryRoleId, assignee }]
@@ -27,7 +27,7 @@ export async function issueCollectData(
27
27
  })
28
28
 
29
29
  const activity = (await tx.getRepository(Activity).findOneBy({
30
- domain: { id: domain.id },
30
+ domain: { id: In([domain.id, domain.parentId].filter(Boolean)) },
31
31
  name: 'Collect Data'
32
32
  })) as Activity
33
33
 
@@ -69,7 +69,8 @@ export class DataSetQuery {
69
69
  where: { id: user.id },
70
70
  relations: ['roles']
71
71
  })
72
- const roles = user.roles.filter(role => role.domainId === domain.id).map(role => role.id)
72
+
73
+ const roles = user.roles.filter(role => role.domainId === domain.id || (domain.parentId && role.domainId === domain.parentId)).map(role => role.id)
73
74
 
74
75
  if (!roles.length) {
75
76
  return { items: [], total: 0 }