@things-factory/dataset 8.0.0 → 9.0.0-beta.3

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.
Files changed (147) hide show
  1. package/dist-client/activities/activity-data-review-edit.d.ts +5 -1
  2. package/dist-client/activities/activity-data-review-edit.js +143 -5
  3. package/dist-client/activities/activity-data-review-edit.js.map +1 -1
  4. package/dist-client/pages/data-entry/data-entry-list-page.js +2 -2
  5. package/dist-client/pages/data-entry/data-entry-list-page.js.map +1 -1
  6. package/dist-client/tsconfig.tsbuildinfo +1 -1
  7. package/dist-server/activities/activity-data-review.js +18 -5
  8. package/dist-server/activities/activity-data-review.js.map +1 -1
  9. package/dist-server/activities/activity-ooc-review.js +13 -52
  10. package/dist-server/activities/activity-ooc-review.js.map +1 -1
  11. package/dist-server/controllers/create-data-ooc.d.ts +4 -0
  12. package/dist-server/controllers/create-data-ooc.js +65 -0
  13. package/dist-server/controllers/create-data-ooc.js.map +1 -0
  14. package/dist-server/controllers/create-data-sample.js +4 -94
  15. package/dist-server/controllers/create-data-sample.js.map +1 -1
  16. package/dist-server/controllers/index.d.ts +3 -0
  17. package/dist-server/controllers/index.js +3 -0
  18. package/dist-server/controllers/index.js.map +1 -1
  19. package/dist-server/controllers/issue-ooc-resolve.d.ts +3 -0
  20. package/dist-server/controllers/issue-ooc-resolve.js +49 -0
  21. package/dist-server/controllers/issue-ooc-resolve.js.map +1 -0
  22. package/dist-server/controllers/issue-ooc-review.d.ts +3 -0
  23. package/dist-server/controllers/issue-ooc-review.js +47 -0
  24. package/dist-server/controllers/issue-ooc-review.js.map +1 -0
  25. package/dist-server/service/data-sample/data-sample-query.d.ts +1 -1
  26. package/dist-server/service/data-sample/data-sample-query.js +3 -3
  27. package/dist-server/service/data-sample/data-sample-query.js.map +1 -1
  28. package/dist-server/service/index.d.ts +1 -1
  29. package/dist-server/tsconfig.tsbuildinfo +1 -1
  30. package/package.json +26 -26
  31. package/translations/en.json +3 -0
  32. package/translations/ja.json +3 -0
  33. package/translations/ko.json +3 -0
  34. package/translations/ms.json +3 -0
  35. package/translations/zh.json +3 -0
  36. package/client/activities/activity-data-collect-edit.ts +0 -105
  37. package/client/activities/activity-data-collect-view.ts +0 -91
  38. package/client/activities/activity-data-review-edit.ts +0 -133
  39. package/client/activities/activity-data-review-view.ts +0 -145
  40. package/client/activities/activity-ooc-resolve-edit.ts +0 -195
  41. package/client/activities/activity-ooc-resolve-view.ts +0 -143
  42. package/client/activities/activity-ooc-review-edit.ts +0 -173
  43. package/client/activities/activity-ooc-review-view.ts +0 -129
  44. package/client/bootstrap.ts +0 -35
  45. package/client/components/data-entry-form.ts +0 -109
  46. package/client/index.ts +0 -1
  47. package/client/pages/data-archive/data-archive-list-page.ts +0 -277
  48. package/client/pages/data-archive/data-archive-request-popup.ts +0 -177
  49. package/client/pages/data-entry/data-entry-list-page.ts +0 -464
  50. package/client/pages/data-key-set/data-key-item-list.ts +0 -183
  51. package/client/pages/data-key-set/data-key-set-importer.ts +0 -89
  52. package/client/pages/data-key-set/data-key-set-list-page.ts +0 -413
  53. package/client/pages/data-ooc/data-ooc-list-page.ts +0 -549
  54. package/client/pages/data-ooc/data-ooc-page.ts +0 -164
  55. package/client/pages/data-ooc/data-ooc-view.ts +0 -236
  56. package/client/pages/data-ooc/data-oocs-page.ts +0 -200
  57. package/client/pages/data-report/data-report-embed-page.ts +0 -108
  58. package/client/pages/data-report/data-report-list-page.ts +0 -454
  59. package/client/pages/data-report/data-report-samples-page.ts +0 -174
  60. package/client/pages/data-report/jasper-report-oocs-page.ts +0 -110
  61. package/client/pages/data-report/jasper-report-samples-crosstab-page.ts +0 -110
  62. package/client/pages/data-report/jasper-report-samples-page.ts +0 -110
  63. package/client/pages/data-sample/data-sample-list-page.ts +0 -442
  64. package/client/pages/data-sample/data-sample-page.ts +0 -55
  65. package/client/pages/data-sample/data-sample-search-page.ts +0 -424
  66. package/client/pages/data-sample/data-sample-view.ts +0 -292
  67. package/client/pages/data-sample/data-samples-page.ts +0 -249
  68. package/client/pages/data-sensor/data-sensor-list-page.ts +0 -456
  69. package/client/pages/data-set/data-item-list.ts +0 -304
  70. package/client/pages/data-set/data-set-importer.ts +0 -89
  71. package/client/pages/data-set/data-set-list-page.ts +0 -1078
  72. package/client/pages/data-summary/data-summary-list-page.ts +0 -363
  73. package/client/pages/data-summary/data-summary-period-page.ts +0 -439
  74. package/client/pages/data-summary/data-summary-search-page.ts +0 -426
  75. package/client/pages/data-summary/data-summary-view.ts +0 -133
  76. package/client/route.ts +0 -91
  77. package/client/tsconfig.json +0 -13
  78. package/server/activities/activity-data-collect.ts +0 -100
  79. package/server/activities/activity-data-review.ts +0 -82
  80. package/server/activities/activity-ooc-resolve.ts +0 -123
  81. package/server/activities/activity-ooc-review.ts +0 -144
  82. package/server/activities/index.ts +0 -11
  83. package/server/controllers/create-data-sample.ts +0 -426
  84. package/server/controllers/data-use-case.ts +0 -98
  85. package/server/controllers/finalize-data-collection.ts +0 -388
  86. package/server/controllers/index.ts +0 -3
  87. package/server/controllers/issue-data-collection-task.ts +0 -70
  88. package/server/controllers/jasper-report.ts +0 -186
  89. package/server/controllers/query-data-summary-by-period.ts +0 -178
  90. package/server/controllers/shiny-report.ts +0 -54
  91. package/server/engine/index.ts +0 -1
  92. package/server/engine/task/create-data-sample.ts +0 -100
  93. package/server/engine/task/index.ts +0 -2
  94. package/server/engine/task/issue-collect-data.ts +0 -45
  95. package/server/index.ts +0 -8
  96. package/server/routes.ts +0 -188
  97. package/server/service/data-archive/data-archive-mutation.ts +0 -273
  98. package/server/service/data-archive/data-archive-query.ts +0 -58
  99. package/server/service/data-archive/data-archive-type.ts +0 -48
  100. package/server/service/data-archive/data-archive.ts +0 -69
  101. package/server/service/data-archive/index.ts +0 -6
  102. package/server/service/data-key-set/data-key-item-type.ts +0 -31
  103. package/server/service/data-key-set/data-key-set-mutation.ts +0 -201
  104. package/server/service/data-key-set/data-key-set-query.ts +0 -68
  105. package/server/service/data-key-set/data-key-set-type.ts +0 -70
  106. package/server/service/data-key-set/data-key-set.ts +0 -86
  107. package/server/service/data-key-set/index.ts +0 -6
  108. package/server/service/data-ooc/data-ooc-mutation.ts +0 -154
  109. package/server/service/data-ooc/data-ooc-query.ts +0 -106
  110. package/server/service/data-ooc/data-ooc-subscription.ts +0 -48
  111. package/server/service/data-ooc/data-ooc-type.ts +0 -71
  112. package/server/service/data-ooc/data-ooc.ts +0 -259
  113. package/server/service/data-ooc/index.ts +0 -7
  114. package/server/service/data-sample/data-sample-mutation.ts +0 -18
  115. package/server/service/data-sample/data-sample-query.ts +0 -215
  116. package/server/service/data-sample/data-sample-type.ts +0 -47
  117. package/server/service/data-sample/data-sample.ts +0 -193
  118. package/server/service/data-sample/index.ts +0 -6
  119. package/server/service/data-sensor/data-sensor-mutation.ts +0 -116
  120. package/server/service/data-sensor/data-sensor-query.ts +0 -76
  121. package/server/service/data-sensor/data-sensor-type.ts +0 -104
  122. package/server/service/data-sensor/data-sensor.ts +0 -126
  123. package/server/service/data-sensor/index.ts +0 -6
  124. package/server/service/data-set/data-item-type.ts +0 -155
  125. package/server/service/data-set/data-set-mutation.ts +0 -552
  126. package/server/service/data-set/data-set-query.ts +0 -461
  127. package/server/service/data-set/data-set-type.ts +0 -204
  128. package/server/service/data-set/data-set.ts +0 -326
  129. package/server/service/data-set/index.ts +0 -6
  130. package/server/service/data-set-history/data-set-history-query.ts +0 -126
  131. package/server/service/data-set-history/data-set-history-type.ts +0 -12
  132. package/server/service/data-set-history/data-set-history.ts +0 -217
  133. package/server/service/data-set-history/event-subscriber.ts +0 -17
  134. package/server/service/data-set-history/index.ts +0 -7
  135. package/server/service/data-spec/data-spec-manager.ts +0 -21
  136. package/server/service/data-spec/data-spec-query.ts +0 -21
  137. package/server/service/data-spec/data-spec.ts +0 -45
  138. package/server/service/data-spec/index.ts +0 -5
  139. package/server/service/data-summary/data-summary-mutation.ts +0 -45
  140. package/server/service/data-summary/data-summary-query.ts +0 -179
  141. package/server/service/data-summary/data-summary-type.ts +0 -86
  142. package/server/service/data-summary/data-summary.ts +0 -170
  143. package/server/service/data-summary/index.ts +0 -7
  144. package/server/service/index.ts +0 -57
  145. package/server/tsconfig.json +0 -10
  146. package/server/utils/config-resolver.ts +0 -29
  147. package/server/utils/index.ts +0 -1
@@ -1,549 +0,0 @@
1
- import '@material/web/icon/icon.js'
2
- import '@operato/data-grist'
3
- import '@operato/context/ox-context-page-toolbar.js'
4
- import '@operato/input/ox-input-select-buttons.js'
5
-
6
- import { p13n } from '@operato/p13n'
7
-
8
- import './data-ooc-view.js'
9
-
10
- import gql from 'graphql-tag'
11
- import { css, html } from 'lit'
12
- import { customElement, property, query, state } from 'lit/decorators.js'
13
- import { connect } from 'pwa-helpers/connect-mixin'
14
-
15
- import { GhostPrint } from '@operato/ghost-print'
16
-
17
- function getOocStatus() {
18
- return [
19
- {
20
- display: i18next.t('label.state-issued'),
21
- value: 'ISSUED'
22
- },
23
- {
24
- display: i18next.t('label.state-reviewed'),
25
- value: 'REVIEWED'
26
- },
27
- {
28
- display: i18next.t('label.state-corrected'),
29
- value: 'CORRECTED'
30
- }
31
- ]
32
- }
33
-
34
- import { DataGrist, FetchOption, GristRecord } from '@operato/data-grist'
35
- import { client } from '@operato/graphql'
36
- import { i18next, localize } from '@operato/i18n'
37
- import { openPopup } from '@operato/layout'
38
- import { PageView, store } from '@operato/shell'
39
- import { CommonGristStyles, CommonHeaderStyles, ScrollbarStyles } from '@operato/styles'
40
- import { isMobileDevice, adjustFilters } from '@operato/utils'
41
-
42
- @customElement('data-ooc-list-page')
43
- export class DataOocListPage extends connect(store)(p13n(localize(i18next)(PageView))) {
44
- static styles = [
45
- ScrollbarStyles,
46
- CommonGristStyles,
47
- CommonHeaderStyles,
48
- css`
49
- :host {
50
- display: flex;
51
- flex-direction: column;
52
-
53
- overflow: hidden;
54
-
55
- --grid-header-padding: 2px 0 2px 9px;
56
- }
57
-
58
- ox-grist {
59
- overflow-y: auto;
60
- flex: 1;
61
- }
62
-
63
- .header {
64
- grid-template-areas: 'filters actions';
65
- }
66
- `
67
- ]
68
-
69
- @state() private gristConfig: any
70
- @state() private mode: 'CARD' | 'GRID' | 'LIST' = isMobileDevice() ? 'CARD' : 'GRID'
71
- @state() private state?: string[]
72
-
73
- @query('ox-grist') private grist!: DataGrist
74
-
75
- get context() {
76
- return {
77
- title: i18next.t('title.data-ooc list'),
78
- search: {
79
- handler: (search: string) => {
80
- this.grist.searchText = search
81
- },
82
- value: this.grist?.searchText || ''
83
- },
84
- filter: {
85
- handler: () => {
86
- this.grist.toggleHeadroom()
87
- }
88
- },
89
- help: 'dataset/data-ooc',
90
- actions: [
91
- {
92
- title: i18next.t('button.print'),
93
- action: this.printOocs.bind(this),
94
- icon: 'print'
95
- }
96
- ],
97
- exportable: {
98
- name: i18next.t('title.data-ooc list'),
99
- data: this._exportableData.bind(this)
100
- },
101
- toolbar: false
102
- }
103
- }
104
-
105
- render() {
106
- const mode = this.mode || (isMobileDevice() ? 'LIST' : 'GRID')
107
-
108
- return html`
109
- <ox-grist
110
- .mode=${mode}
111
- .config=${this.gristConfig}
112
- .fetchHandler=${this.fetchHandler.bind(this)}
113
- .personalConfigProvider=${this.getPagePreferenceProvider('ox-grist')!}
114
- >
115
- <div slot="headroom" class="header">
116
- <div class="filters">
117
- <ox-input-select-buttons
118
- .value=${this.state}
119
- .options=${getOocStatus()}
120
- @change=${(e: CustomEvent) => {
121
- this.state = (e.currentTarget as any)?.value
122
- this.grist.fetch()
123
- }}
124
- ></ox-input-select-buttons>
125
- </div>
126
-
127
- <ox-context-page-toolbar class="actions" .context=${this.context}></ox-context-page-toolbar>
128
- </div>
129
-
130
- <ox-grist-personalizer slot="setting"></ox-grist-personalizer>
131
- </ox-grist>
132
- `
133
- }
134
-
135
- async pageInitialized(lifecycle) {
136
- this.gristConfig = {
137
- list: {
138
- fields: ['dataSet', 'data', 'correctiveAction', 'corrector', 'correctedAt', 'collectedAt', 'creator']
139
- },
140
- columns: [
141
- { type: 'gutter', gutterName: 'sequence', fixed: true },
142
- { type: 'gutter', gutterName: 'row-selector', multiple: true, fixed: true },
143
- {
144
- type: 'gutter',
145
- gutterName: 'button',
146
- fixed: true,
147
- icon: 'assignment_turned_in',
148
- iconOnly: false,
149
- title: i18next.t('button.detail'),
150
- width: 72
151
- },
152
- {
153
- type: 'string',
154
- name: 'name',
155
- fixed: true,
156
- label: true,
157
- header: i18next.t('field.name'),
158
- record: {
159
- editable: false
160
- },
161
- filter: 'search',
162
- sortable: true,
163
- width: 120,
164
- imex: true
165
- },
166
- {
167
- type: 'string',
168
- name: 'description',
169
- label: true,
170
- header: i18next.t('field.description'),
171
- record: {
172
- editable: false
173
- },
174
- filter: 'search',
175
- width: 150,
176
- imex: true
177
- },
178
- {
179
- type: 'string',
180
- name: 'history',
181
- hidden: true,
182
- imex: true
183
- },
184
- {
185
- type: 'checkbox',
186
- name: 'ooc',
187
- header: i18next.t('field.ooc'),
188
- record: {
189
- editable: false
190
- },
191
- width: 30
192
- },
193
- {
194
- type: 'checkbox',
195
- name: 'oos',
196
- header: i18next.t('field.oos'),
197
- record: {
198
- editable: false
199
- },
200
- width: 30
201
- },
202
- {
203
- type: 'select',
204
- name: 'state',
205
- label: true,
206
- header: i18next.t('field.status'),
207
- record: {
208
- editable: false,
209
- options: [{ display: '', value: '' }, ...getOocStatus()]
210
- },
211
- width: 100,
212
- filter: true,
213
- imex: true
214
- },
215
- {
216
- type: 'textarea',
217
- name: 'correctiveInstruction',
218
- label: true,
219
- header: i18next.t('field.corrective-instruction'),
220
- record: {
221
- editable: false,
222
- language: 'text'
223
- },
224
- width: 150,
225
- imex: true
226
- },
227
- {
228
- type: 'textarea',
229
- name: 'correctiveAction',
230
- label: true,
231
- header: i18next.t('field.corrective-action'),
232
- record: {
233
- editable: false,
234
- language: 'text'
235
- },
236
- width: 150,
237
- imex: true
238
- },
239
- {
240
- type: 'resource-object',
241
- name: 'dataSet',
242
- header: i18next.t('field.data-set'),
243
- sortable: true,
244
- width: 120,
245
- imex: true
246
- },
247
- {
248
- type: 'string',
249
- name: 'key01',
250
- header: {
251
- renderer: i18next.t('field.key-01'),
252
- group: i18next.t('field.key')
253
- },
254
- record: {
255
- editable: false
256
- },
257
- sortable: true,
258
- width: 120,
259
- imex: true
260
- },
261
- {
262
- type: 'string',
263
- name: 'key02',
264
- header: {
265
- renderer: i18next.t('field.key-02'),
266
- group: i18next.t('field.key')
267
- },
268
- record: {
269
- editable: false
270
- },
271
- sortable: true,
272
- width: 120,
273
- imex: true
274
- },
275
- {
276
- type: 'string',
277
- name: 'key03',
278
- header: {
279
- renderer: i18next.t('field.key-03'),
280
- group: i18next.t('field.key')
281
- },
282
- record: {
283
- editable: false
284
- },
285
- sortable: true,
286
- width: 120,
287
- imex: true
288
- },
289
- {
290
- type: 'string',
291
- name: 'key04',
292
- header: {
293
- renderer: i18next.t('field.key-04'),
294
- group: i18next.t('field.key')
295
- },
296
- record: {
297
- editable: false
298
- },
299
- sortable: true,
300
- width: 120,
301
- imex: true
302
- },
303
- {
304
- type: 'string',
305
- name: 'key05',
306
- header: {
307
- renderer: i18next.t('field.key-05'),
308
- group: i18next.t('field.key')
309
- },
310
- record: {
311
- editable: false
312
- },
313
- sortable: true,
314
- width: 120,
315
- imex: true
316
- },
317
- {
318
- type: 'json5',
319
- name: 'partitionKeys',
320
- header: i18next.t('field.partition-keys'),
321
- record: {
322
- editable: false
323
- },
324
- width: 200,
325
- imex: true
326
- },
327
- {
328
- type: 'json5',
329
- name: 'data',
330
- header: i18next.t('field.data'),
331
- record: {
332
- editable: false
333
- },
334
- width: 200,
335
- imex: true
336
- },
337
- {
338
- type: 'text',
339
- name: 'rawData',
340
- header: i18next.t('field.raw-data'),
341
- record: {
342
- editable: false
343
- },
344
- width: 200,
345
- imex: true
346
- },
347
- {
348
- type: 'string',
349
- name: 'workDate',
350
- header: i18next.t('field.work-date'),
351
- sortable: true,
352
- width: 80,
353
- imex: true
354
- },
355
- {
356
- type: 'string',
357
- name: 'workShift',
358
- header: i18next.t('field.work-shift'),
359
- sortable: true,
360
- width: 40,
361
- imex: true
362
- },
363
- {
364
- type: 'datetime',
365
- name: 'collectedAt',
366
- header: i18next.t('field.collected-at'),
367
- sortable: true,
368
- width: 180,
369
- imex: true
370
- },
371
- {
372
- type: 'resource-object',
373
- name: 'updater',
374
- header: i18next.t('field.updater'),
375
- sortable: true,
376
- width: 120,
377
- imex: true
378
- },
379
- {
380
- type: 'datetime',
381
- name: 'updatedAt',
382
- header: i18next.t('field.updated_at'),
383
- sortable: true,
384
- width: 180,
385
- imex: true
386
- }
387
- ],
388
- rows: {
389
- appendable: false,
390
- selectable: {
391
- multiple: true
392
- },
393
- handlers: {
394
- click: (columns, data, column, record, rowIndex) => {
395
- const popup = openPopup(
396
- html` <data-ooc-view data-ooc-id=${record.id} style="background-color: white;"></data-ooc-view> `,
397
- {
398
- backdrop: true,
399
- size: 'large',
400
- title: i18next.t('title.data-ooc view')
401
- }
402
- )
403
- popup.onclosed = () => {
404
- // this.grist.fetch()
405
- }
406
- }
407
- }
408
- },
409
- sorters: [
410
- {
411
- name: 'collectedAt',
412
- desc: true
413
- }
414
- ]
415
- }
416
- }
417
-
418
- async fetchHandler({ page, limit, sortings = [], filters = [] }: FetchOption) {
419
- if (this.state) {
420
- filters = adjustFilters(filters, [{ name: 'state', operator: 'eq', value: this.state }])
421
- }
422
-
423
- const response = await client.query({
424
- query: gql`
425
- query ($filters: [Filter!], $pagination: Pagination, $sortings: [Sorting!]) {
426
- responses: dataOocs(filters: $filters, pagination: $pagination, sortings: $sortings) {
427
- items {
428
- id
429
- name
430
- description
431
- useCase
432
- dataSet {
433
- id
434
- name
435
- }
436
- key01
437
- key02
438
- key03
439
- key04
440
- key05
441
- partitionKeys
442
- dataItems {
443
- name
444
- description
445
- active
446
- hidden
447
- tag
448
- group
449
- type
450
- unit
451
- options
452
- quota
453
- spec
454
- stat
455
- }
456
- data
457
- rawData
458
- judgment
459
- ooc
460
- oos
461
- state
462
- history
463
- workDate
464
- workShift
465
- correctiveInstruction
466
- correctiveAction
467
- reviewedAt
468
- reviewer {
469
- id
470
- name
471
- }
472
- correctedAt
473
- corrector {
474
- id
475
- name
476
- }
477
- updater {
478
- id
479
- name
480
- }
481
- updatedAt
482
- collectedAt
483
- }
484
- total
485
- }
486
- }
487
- `,
488
- variables: {
489
- filters,
490
- pagination: { page, limit },
491
- sortings
492
- }
493
- })
494
-
495
- return {
496
- total: response.data.responses.total || 0,
497
- records: response.data.responses.items || []
498
- }
499
- }
500
-
501
- _exportableData() {
502
- let records = [] as GristRecord
503
- if (this.grist.selected && this.grist.selected.length > 0) {
504
- records = this.grist.selected
505
- } else {
506
- records = this.grist.data.records
507
- }
508
-
509
- var headerSetting = this.grist.compiledConfig.columns
510
- .filter(column => column.type !== 'gutter' && column.record !== undefined && column.imex !== undefined)
511
- .map(column => {
512
- return column.imex === true
513
- ? {
514
- header: column.header.renderer(column),
515
- key: column.name,
516
- width: column.width,
517
- type: column.type
518
- }
519
- : column.imex
520
- })
521
-
522
- var data = records.map(item => {
523
- return {
524
- id: item.id,
525
- ...this.gristConfig.columns
526
- .filter(column => column.type !== 'gutter' && column.record !== undefined && column.imex !== undefined)
527
- .reduce((record, column) => {
528
- const key = column.imex === true ? column.name : column.imex.key
529
- record[key] = key
530
- .split('.')
531
- .reduce((obj, key) => (obj && obj[key] !== 'undefined' ? obj[key] : undefined), item)
532
- return record
533
- }, {})
534
- }
535
- })
536
-
537
- return { header: headerSetting, data: data }
538
- }
539
-
540
- printOocs() {
541
- const selected = this.grist.selected
542
- const ids = selected.map(record => record.id).join('|')
543
-
544
- GhostPrint.print({
545
- src: `./data-oocs?ids=${ids}`
546
- // pending: 200 * selected.length
547
- })
548
- }
549
- }
@@ -1,164 +0,0 @@
1
- import gql from 'graphql-tag'
2
-
3
- import { PropertyValues, html, css } from 'lit'
4
- import { customElement, property } from 'lit/decorators.js'
5
- import { PageView } from '@operato/shell'
6
- import { i18next, localize } from '@operato/i18n'
7
- import { client } from '@operato/graphql'
8
-
9
- import './data-ooc-view.js'
10
-
11
- @customElement('data-ooc-page')
12
- export class DataOocViewPage extends localize(i18next)(PageView) {
13
- static styles = [
14
- css`
15
- :host {
16
- display: flex;
17
- }
18
-
19
- data-ooc-view {
20
- flex: 1;
21
- }
22
-
23
- @media print {
24
- :host {
25
- display: block;
26
- overflow: visible;
27
- }
28
- }
29
- `
30
- ]
31
-
32
- @property({ type: Object }) dataOoc?: any
33
-
34
- get context() {
35
- return {
36
- title: i18next.t('title.data-ooc view'),
37
- help: 'dataset/data-ooc',
38
- actions: []
39
- }
40
- }
41
-
42
- render() {
43
- return html` <data-ooc-view .dataOoc=${this.dataOoc}></data-ooc-view> `
44
- }
45
-
46
- updated(changes: PropertyValues<this>) {}
47
-
48
- pageUpdated(changes: any, lifecycle: any, before: any) {
49
- if (this.active) {
50
- /*
51
- * this page is activated
52
- */
53
- this.fetchOoc(lifecycle.resourceId)
54
- } else {
55
- /* this page is deactivated */
56
- }
57
- }
58
-
59
- async fetchOoc(id: string) {
60
- const response = await client.query({
61
- query: gql`
62
- query ($id: String!) {
63
- dataOoc(id: $id) {
64
- id
65
- name
66
- description
67
- useCase
68
- dataSet {
69
- id
70
- name
71
- }
72
- key01
73
- key02
74
- key03
75
- key04
76
- key05
77
- partitionKeys
78
- dataItems {
79
- name
80
- description
81
- active
82
- hidden
83
- tag
84
- group
85
- type
86
- unit
87
- options
88
- quota
89
- spec
90
- stat
91
- }
92
- data
93
- rawData
94
- judgment
95
- ooc
96
- oos
97
- state
98
- history
99
- workDate
100
- workShift
101
- correctiveInstruction
102
- correctiveAction
103
- reviewedAt
104
- reviewer {
105
- id
106
- name
107
- }
108
- correctedAt
109
- corrector {
110
- id
111
- name
112
- }
113
- updater {
114
- id
115
- name
116
- }
117
- updatedAt
118
- collectedAt
119
- reviewActivityInstance {
120
- ...ActivityInstanceFragment
121
- }
122
- resolveActivityInstance {
123
- ...ActivityInstanceFragment
124
- }
125
- }
126
- }
127
-
128
- fragment ActivityInstanceFragment on ActivityInstance {
129
- activityThreads {
130
- assignee {
131
- name
132
- }
133
- output
134
- activityApprovals {
135
- judgment
136
- approver {
137
- name
138
- }
139
- comment
140
- createdAt
141
- updatedAt
142
- terminatedAt
143
- }
144
- activityThreadHistories {
145
- transaction
146
- reason
147
- updater {
148
- name
149
- }
150
- updatedAt
151
- state
152
- output
153
- }
154
- }
155
- }
156
- `,
157
- variables: {
158
- id
159
- }
160
- })
161
-
162
- this.dataOoc = response.data.dataOoc
163
- }
164
- }