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

Sign up to get free protection for your applications and to get access to all the features.
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
- }