@things-factory/kpi 9.0.31 → 9.0.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) hide show
  1. package/README.md +1 -2
  2. package/client/charts/kpi-boxplot-chart.ts +182 -42
  3. package/client/charts/kpi-radar-chart.ts +9 -9
  4. package/client/pages/kpi/kpi-list-page.ts +196 -32
  5. package/client/pages/kpi/kpi-overview.ts +9 -11
  6. package/client/pages/kpi/kpi-tree-page.ts +409 -0
  7. package/client/pages/kpi/kpi-view.ts +187 -0
  8. package/client/pages/kpi-dashboard/cards/kpi-level1-card.ts +1 -1
  9. package/client/pages/kpi-dashboard/cards/kpi-level2-comparison.ts +1 -1
  10. package/client/pages/kpi-dashboard/cards/kpi-level3-comparison.ts +1 -1
  11. package/client/pages/kpi-dashboard/components/kpi-left-panel.ts +198 -160
  12. package/client/pages/kpi-dashboard/components/kpi-map-panel.ts +133 -0
  13. package/client/pages/kpi-dashboard/components/kpi-region-popup.ts +3 -2
  14. package/client/pages/kpi-dashboard/kpi-dashboard-map.ts +4 -3
  15. package/client/pages/kpi-dashboard/kpi-dashboard.ts +28 -30
  16. package/client/pages/kpi-history/kpi-history-list-page.ts +11 -11
  17. package/client/pages/kpi-metric/kpi-metric-list-page.ts +10 -2
  18. package/client/pages/kpi-metric-value/kpi-metric-value-editor-page.ts +7 -7
  19. package/client/pages/kpi-metric-value/kpi-metric-value-importer.ts +2 -2
  20. package/client/pages/kpi-metric-value/kpi-metric-value-list-page.ts +16 -8
  21. package/client/pages/kpi-metric-value/kpi-metric-value-manual-entry-form.ts +5 -5
  22. package/client/pages/kpi-statistic/kpi-statistic-editor-page.ts +1 -2
  23. package/client/pages/kpi-statistic/kpi-statistic-list-page.ts +10 -2
  24. package/client/pages/kpi-value/kpi-value-editor-page.ts +11 -7
  25. package/client/pages/kpi-value/kpi-value-list-page.ts +31 -7
  26. package/client/route.ts +2 -9
  27. package/design-entities.md +8 -12
  28. package/dist-client/charts/kpi-boxplot-chart.d.ts +2 -0
  29. package/dist-client/charts/kpi-boxplot-chart.js +168 -42
  30. package/dist-client/charts/kpi-boxplot-chart.js.map +1 -1
  31. package/dist-client/charts/kpi-radar-chart.js +9 -9
  32. package/dist-client/charts/kpi-radar-chart.js.map +1 -1
  33. package/dist-client/pages/kpi/kpi-list-page.d.ts +19 -3
  34. package/dist-client/pages/kpi/kpi-list-page.js +188 -32
  35. package/dist-client/pages/kpi/kpi-list-page.js.map +1 -1
  36. package/dist-client/pages/kpi/kpi-overview.js +9 -11
  37. package/dist-client/pages/kpi/kpi-overview.js.map +1 -1
  38. package/dist-client/pages/kpi/kpi-tree-page.d.ts +59 -0
  39. package/dist-client/pages/kpi/kpi-tree-page.js +403 -0
  40. package/dist-client/pages/kpi/kpi-tree-page.js.map +1 -0
  41. package/dist-client/pages/kpi/kpi-view.d.ts +12 -0
  42. package/dist-client/pages/kpi/kpi-view.js +191 -0
  43. package/dist-client/pages/kpi/kpi-view.js.map +1 -0
  44. package/dist-client/pages/kpi-dashboard/cards/kpi-level1-card.js +1 -1
  45. package/dist-client/pages/kpi-dashboard/cards/kpi-level1-card.js.map +1 -1
  46. package/dist-client/pages/kpi-dashboard/cards/kpi-level2-comparison.js +1 -1
  47. package/dist-client/pages/kpi-dashboard/cards/kpi-level2-comparison.js.map +1 -1
  48. package/dist-client/pages/kpi-dashboard/cards/kpi-level3-comparison.js +1 -1
  49. package/dist-client/pages/kpi-dashboard/cards/kpi-level3-comparison.js.map +1 -1
  50. package/dist-client/pages/kpi-dashboard/components/kpi-left-panel.d.ts +3 -1
  51. package/dist-client/pages/kpi-dashboard/components/kpi-left-panel.js +197 -161
  52. package/dist-client/pages/kpi-dashboard/components/kpi-left-panel.js.map +1 -1
  53. package/dist-client/pages/kpi-dashboard/components/kpi-map-panel.d.ts +5 -0
  54. package/dist-client/pages/kpi-dashboard/components/kpi-map-panel.js +146 -0
  55. package/dist-client/pages/kpi-dashboard/components/kpi-map-panel.js.map +1 -1
  56. package/dist-client/pages/kpi-dashboard/components/kpi-region-popup.js +3 -2
  57. package/dist-client/pages/kpi-dashboard/components/kpi-region-popup.js.map +1 -1
  58. package/dist-client/pages/kpi-dashboard/kpi-dashboard-map.js +4 -3
  59. package/dist-client/pages/kpi-dashboard/kpi-dashboard-map.js.map +1 -1
  60. package/dist-client/pages/kpi-dashboard/kpi-dashboard.js +28 -30
  61. package/dist-client/pages/kpi-dashboard/kpi-dashboard.js.map +1 -1
  62. package/dist-client/pages/kpi-history/kpi-history-list-page.d.ts +6 -1
  63. package/dist-client/pages/kpi-history/kpi-history-list-page.js +11 -11
  64. package/dist-client/pages/kpi-history/kpi-history-list-page.js.map +1 -1
  65. package/dist-client/pages/kpi-metric/kpi-metric-list-page.d.ts +5 -0
  66. package/dist-client/pages/kpi-metric/kpi-metric-list-page.js +10 -2
  67. package/dist-client/pages/kpi-metric/kpi-metric-list-page.js.map +1 -1
  68. package/dist-client/pages/kpi-metric-value/kpi-metric-value-editor-page.d.ts +1 -1
  69. package/dist-client/pages/kpi-metric-value/kpi-metric-value-editor-page.js +8 -8
  70. package/dist-client/pages/kpi-metric-value/kpi-metric-value-editor-page.js.map +1 -1
  71. package/dist-client/pages/kpi-metric-value/kpi-metric-value-importer.js +2 -2
  72. package/dist-client/pages/kpi-metric-value/kpi-metric-value-importer.js.map +1 -1
  73. package/dist-client/pages/kpi-metric-value/kpi-metric-value-list-page.d.ts +5 -0
  74. package/dist-client/pages/kpi-metric-value/kpi-metric-value-list-page.js +16 -8
  75. package/dist-client/pages/kpi-metric-value/kpi-metric-value-list-page.js.map +1 -1
  76. package/dist-client/pages/kpi-metric-value/kpi-metric-value-manual-entry-form.d.ts +1 -1
  77. package/dist-client/pages/kpi-metric-value/kpi-metric-value-manual-entry-form.js +6 -6
  78. package/dist-client/pages/kpi-metric-value/kpi-metric-value-manual-entry-form.js.map +1 -1
  79. package/dist-client/pages/kpi-statistic/kpi-statistic-editor-page.js +1 -2
  80. package/dist-client/pages/kpi-statistic/kpi-statistic-editor-page.js.map +1 -1
  81. package/dist-client/pages/kpi-statistic/kpi-statistic-list-page.d.ts +5 -0
  82. package/dist-client/pages/kpi-statistic/kpi-statistic-list-page.js +10 -2
  83. package/dist-client/pages/kpi-statistic/kpi-statistic-list-page.js.map +1 -1
  84. package/dist-client/pages/kpi-value/kpi-value-editor-page.d.ts +2 -1
  85. package/dist-client/pages/kpi-value/kpi-value-editor-page.js +16 -8
  86. package/dist-client/pages/kpi-value/kpi-value-editor-page.js.map +1 -1
  87. package/dist-client/pages/kpi-value/kpi-value-list-page.d.ts +5 -0
  88. package/dist-client/pages/kpi-value/kpi-value-list-page.js +31 -7
  89. package/dist-client/pages/kpi-value/kpi-value-list-page.js.map +1 -1
  90. package/dist-client/route.d.ts +1 -1
  91. package/dist-client/route.js +2 -8
  92. package/dist-client/route.js.map +1 -1
  93. package/dist-client/tsconfig.tsbuildinfo +1 -1
  94. package/dist-server/controllers/kpi-metric-value-provider.d.ts +1 -1
  95. package/dist-server/controllers/kpi-metric-value-provider.js +4 -4
  96. package/dist-server/controllers/kpi-metric-value-provider.js.map +1 -1
  97. package/dist-server/controllers/kpi-value-provider.d.ts +1 -1
  98. package/dist-server/controllers/kpi-value-provider.js +3 -3
  99. package/dist-server/controllers/kpi-value-provider.js.map +1 -1
  100. package/dist-server/migrations/1752190849680-seed-kpi-metrics.d.ts +6 -0
  101. package/dist-server/migrations/1752190849680-seed-kpi-metrics.js +101 -0
  102. package/dist-server/migrations/1752190849680-seed-kpi-metrics.js.map +1 -0
  103. package/dist-server/migrations/1752190849681-seed-kpi.d.ts +5 -0
  104. package/dist-server/migrations/1752190849681-seed-kpi.js +315 -0
  105. package/dist-server/migrations/1752190849681-seed-kpi.js.map +1 -0
  106. package/dist-server/migrations/1752192090123-add-grades-to-kpi.d.ts +7 -0
  107. package/dist-server/migrations/1752192090123-add-grades-to-kpi.js +51 -0
  108. package/dist-server/migrations/1752192090123-add-grades-to-kpi.js.map +1 -0
  109. package/dist-server/migrations/1752192090124-add-kpi-statistics.d.ts +5 -0
  110. package/dist-server/migrations/1752192090124-add-kpi-statistics.js +710 -0
  111. package/dist-server/migrations/1752192090124-add-kpi-statistics.js.map +1 -0
  112. package/dist-server/migrations/1752192090128-seed-kpi-org-scope.d.ts +6 -0
  113. package/dist-server/migrations/1752192090128-seed-kpi-org-scope.js +111 -0
  114. package/dist-server/migrations/1752192090128-seed-kpi-org-scope.js.map +1 -0
  115. package/dist-server/migrations/1752192090129-seed-kpi-values.d.ts +6 -0
  116. package/dist-server/migrations/1752192090129-seed-kpi-values.js +187 -0
  117. package/dist-server/migrations/1752192090129-seed-kpi-values.js.map +1 -0
  118. package/dist-server/migrations/grade-data/x11-performance-table.json +962 -0
  119. package/dist-server/migrations/grade-data/x12-performance-table.json +611 -0
  120. package/dist-server/migrations/grade-data/x14-performance-table.json +42 -0
  121. package/dist-server/migrations/grade-data/x21-performance-table.json +889 -0
  122. package/dist-server/migrations/grade-data/x22-performance-table.json +1064 -0
  123. package/dist-server/migrations/grade-data/x23-performance-table.json +42 -0
  124. package/dist-server/migrations/grade-data/x31-performance-table.json +644 -0
  125. package/dist-server/migrations/grade-data/x32-performance-table.json +993 -0
  126. package/dist-server/migrations/grade-data/x33-performance-table.json +195 -0
  127. package/dist-server/migrations/grade-data/x34-performance-table.json +12 -0
  128. package/dist-server/migrations/grade-data/x35-performance-table.json +42 -0
  129. package/dist-server/migrations/grade-data/x41-performance-table.json +825 -0
  130. package/dist-server/migrations/grade-data/x42-performance-table.json +786 -0
  131. package/dist-server/migrations/grade-data/x43-performance-table.json +12 -0
  132. package/dist-server/migrations/grade-data/x44-performance-table.json +42 -0
  133. package/dist-server/migrations/grade-data/x51-performance-table.json +924 -0
  134. package/dist-server/migrations/grade-data/x52-performance-table.json +42 -0
  135. package/dist-server/migrations/grade-data/x61-performance-table.json +261 -0
  136. package/dist-server/migrations/grade-data/x62-performance-table.json +42 -0
  137. package/dist-server/migrations/seed-data/kpi-metrics-seed.json +454 -0
  138. package/dist-server/migrations/seed-data/kpi-org-scope-seed.json +1676 -0
  139. package/dist-server/migrations/seed-data/kpi-values-seed.json +402 -0
  140. package/dist-server/migrations/seed-data/kpis-seed.json +488 -0
  141. package/dist-server/service/index.d.ts +3 -7
  142. package/dist-server/service/index.js +5 -12
  143. package/dist-server/service/index.js.map +1 -1
  144. package/dist-server/service/kpi/aggregate-kpi.js +30 -13
  145. package/dist-server/service/kpi/aggregate-kpi.js.map +1 -1
  146. package/dist-server/service/kpi/kpi-formula.service.d.ts +15 -0
  147. package/dist-server/service/kpi/kpi-formula.service.js +90 -0
  148. package/dist-server/service/kpi/kpi-formula.service.js.map +1 -1
  149. package/dist-server/service/kpi/kpi-history.d.ts +0 -3
  150. package/dist-server/service/kpi/kpi-history.js +0 -10
  151. package/dist-server/service/kpi/kpi-history.js.map +1 -1
  152. package/dist-server/service/kpi/kpi-mutation.d.ts +1 -1
  153. package/dist-server/service/kpi/kpi-mutation.js +57 -20
  154. package/dist-server/service/kpi/kpi-mutation.js.map +1 -1
  155. package/dist-server/service/kpi/kpi-query.d.ts +7 -3
  156. package/dist-server/service/kpi/kpi-query.js +126 -10
  157. package/dist-server/service/kpi/kpi-query.js.map +1 -1
  158. package/dist-server/service/kpi/kpi-type.d.ts +4 -2
  159. package/dist-server/service/kpi/kpi-type.js +12 -4
  160. package/dist-server/service/kpi/kpi-type.js.map +1 -1
  161. package/dist-server/service/kpi/kpi.d.ts +4 -3
  162. package/dist-server/service/kpi/kpi.js +20 -8
  163. package/dist-server/service/kpi/kpi.js.map +1 -1
  164. package/dist-server/service/kpi-metric/aggregate-kpi-metric.js +46 -11
  165. package/dist-server/service/kpi-metric/aggregate-kpi-metric.js.map +1 -1
  166. package/dist-server/service/kpi-metric-value/kpi-metric-value-mutation.d.ts +1 -1
  167. package/dist-server/service/kpi-metric-value/kpi-metric-value-mutation.js +6 -6
  168. package/dist-server/service/kpi-metric-value/kpi-metric-value-mutation.js.map +1 -1
  169. package/dist-server/service/kpi-metric-value/kpi-metric-value-type.d.ts +2 -2
  170. package/dist-server/service/kpi-metric-value/kpi-metric-value-type.js +4 -4
  171. package/dist-server/service/kpi-metric-value/kpi-metric-value-type.js.map +1 -1
  172. package/dist-server/service/kpi-metric-value/kpi-metric-value.d.ts +1 -1
  173. package/dist-server/service/kpi-metric-value/kpi-metric-value.js +3 -3
  174. package/dist-server/service/kpi-metric-value/kpi-metric-value.js.map +1 -1
  175. package/dist-server/service/kpi-org-scope/index.d.ts +9 -0
  176. package/dist-server/service/kpi-org-scope/index.js +14 -0
  177. package/dist-server/service/kpi-org-scope/index.js.map +1 -0
  178. package/dist-server/service/kpi-org-scope/kpi-org-scope-mutation.d.ts +8 -0
  179. package/dist-server/service/kpi-org-scope/kpi-org-scope-mutation.js +170 -0
  180. package/dist-server/service/kpi-org-scope/kpi-org-scope-mutation.js.map +1 -0
  181. package/dist-server/service/kpi-org-scope/kpi-org-scope-query.d.ts +14 -0
  182. package/dist-server/service/kpi-org-scope/kpi-org-scope-query.js +152 -0
  183. package/dist-server/service/kpi-org-scope/kpi-org-scope-query.js.map +1 -0
  184. package/dist-server/service/kpi-org-scope/kpi-org-scope-type.d.ts +26 -0
  185. package/dist-server/service/kpi-org-scope/kpi-org-scope-type.js +101 -0
  186. package/dist-server/service/kpi-org-scope/kpi-org-scope-type.js.map +1 -0
  187. package/dist-server/service/kpi-org-scope/kpi-org-scope.d.ts +26 -0
  188. package/dist-server/service/kpi-org-scope/kpi-org-scope.js +135 -0
  189. package/dist-server/service/kpi-org-scope/kpi-org-scope.js.map +1 -0
  190. package/dist-server/service/kpi-statistic/kpi-statistic.d.ts +1 -0
  191. package/dist-server/service/kpi-statistic/kpi-statistic.js +11 -0
  192. package/dist-server/service/kpi-statistic/kpi-statistic.js.map +1 -1
  193. package/dist-server/service/kpi-value/kpi-value-mutation.js +71 -7
  194. package/dist-server/service/kpi-value/kpi-value-mutation.js.map +1 -1
  195. package/dist-server/service/kpi-value/kpi-value-type.d.ts +4 -2
  196. package/dist-server/service/kpi-value/kpi-value-type.js +12 -4
  197. package/dist-server/service/kpi-value/kpi-value-type.js.map +1 -1
  198. package/dist-server/service/kpi-value/kpi-value.d.ts +3 -1
  199. package/dist-server/service/kpi-value/kpi-value.js +11 -5
  200. package/dist-server/service/kpi-value/kpi-value.js.map +1 -1
  201. package/dist-server/service/utils/value-date-util.d.ts +1 -0
  202. package/dist-server/service/utils/value-date-util.js +41 -0
  203. package/dist-server/service/utils/value-date-util.js.map +1 -1
  204. package/dist-server/tsconfig.json +10 -0
  205. package/dist-server/tsconfig.tsbuildinfo +1 -1
  206. package/package.json +7 -6
  207. package/server/@types/index.d.ts +11 -0
  208. package/server/controllers/kpi-metric-value-provider.ts +5 -5
  209. package/server/controllers/kpi-value-provider.ts +4 -4
  210. package/server/migrations/1752190849680-seed-kpi-metrics.ts +124 -0
  211. package/server/migrations/1752190849681-seed-kpi.ts +356 -0
  212. package/server/migrations/1752192090123-add-grades-to-kpi.ts +67 -0
  213. package/server/migrations/1752192090124-add-kpi-statistics.ts +719 -0
  214. package/server/migrations/1752192090128-seed-kpi-org-scope.ts +132 -0
  215. package/server/migrations/1752192090129-seed-kpi-values.ts +207 -0
  216. package/server/migrations/grade-data/x11-performance-table.json +962 -0
  217. package/server/migrations/grade-data/x12-performance-table.json +611 -0
  218. package/server/migrations/grade-data/x14-performance-table.json +42 -0
  219. package/server/migrations/grade-data/x21-performance-table.json +889 -0
  220. package/server/migrations/grade-data/x22-performance-table.json +1064 -0
  221. package/server/migrations/grade-data/x23-performance-table.json +42 -0
  222. package/server/migrations/grade-data/x31-performance-table.json +644 -0
  223. package/server/migrations/grade-data/x32-performance-table.json +993 -0
  224. package/server/migrations/grade-data/x33-performance-table.json +195 -0
  225. package/server/migrations/grade-data/x34-performance-table.json +12 -0
  226. package/server/migrations/grade-data/x35-performance-table.json +42 -0
  227. package/server/migrations/grade-data/x41-performance-table.json +825 -0
  228. package/server/migrations/grade-data/x42-performance-table.json +786 -0
  229. package/server/migrations/grade-data/x43-performance-table.json +12 -0
  230. package/server/migrations/grade-data/x44-performance-table.json +42 -0
  231. package/server/migrations/grade-data/x51-performance-table.json +924 -0
  232. package/server/migrations/grade-data/x52-performance-table.json +42 -0
  233. package/server/migrations/grade-data/x61-performance-table.json +261 -0
  234. package/server/migrations/grade-data/x62-performance-table.json +42 -0
  235. package/server/migrations/seed-data/kpi-metrics-seed.json +454 -0
  236. package/server/migrations/seed-data/kpi-org-scope-seed.json +1676 -0
  237. package/server/migrations/seed-data/kpi-values-seed.json +402 -0
  238. package/server/migrations/seed-data/kpis-seed.json +488 -0
  239. package/server/service/index.ts +5 -12
  240. package/server/service/kpi/aggregate-kpi.ts +31 -13
  241. package/server/service/kpi/kpi-formula.service.ts +101 -0
  242. package/server/service/kpi/kpi-history.ts +0 -8
  243. package/server/service/kpi/kpi-mutation.ts +59 -19
  244. package/server/service/kpi/kpi-query.ts +118 -8
  245. package/server/service/kpi/kpi-type.ts +10 -4
  246. package/server/service/kpi/kpi.ts +17 -7
  247. package/server/service/kpi-metric/aggregate-kpi-metric.ts +55 -11
  248. package/server/service/kpi-metric-value/kpi-metric-value-mutation.ts +6 -6
  249. package/server/service/kpi-metric-value/kpi-metric-value-type.ts +4 -4
  250. package/server/service/kpi-metric-value/kpi-metric-value.ts +3 -3
  251. package/server/service/kpi-org-scope/index.ts +11 -0
  252. package/server/service/kpi-org-scope/kpi-org-scope-mutation.ts +173 -0
  253. package/server/service/kpi-org-scope/kpi-org-scope-query.ts +127 -0
  254. package/server/service/kpi-org-scope/kpi-org-scope-type.ts +68 -0
  255. package/server/service/kpi-org-scope/kpi-org-scope.ts +123 -0
  256. package/server/service/kpi-statistic/kpi-statistic.ts +10 -0
  257. package/server/service/kpi-value/kpi-value-mutation.ts +73 -7
  258. package/server/service/kpi-value/kpi-value-type.ts +10 -4
  259. package/server/service/kpi-value/kpi-value.ts +10 -5
  260. package/server/service/utils/value-date-util.ts +47 -0
  261. package/server/types/global.d.ts +8 -0
  262. package/things-factory.config.js +1 -0
  263. package/translations/en.json +15 -3
  264. package/translations/ja.json +13 -3
  265. package/translations/ko.json +15 -3
  266. package/translations/ms.json +13 -3
  267. package/translations/zh.json +13 -3
  268. package/client/pages/kpi-category/kpi-category-importer.ts +0 -90
  269. package/client/pages/kpi-category/kpi-category-list-page.ts +0 -537
  270. package/client/pages/kpi-category/kpi-category-value-calculator.ts +0 -233
  271. package/client/pages/kpi-category-value/kpi-category-value-list-page.ts +0 -404
  272. package/dist-client/pages/kpi-category/kpi-category-importer.d.ts +0 -23
  273. package/dist-client/pages/kpi-category/kpi-category-importer.js +0 -92
  274. package/dist-client/pages/kpi-category/kpi-category-importer.js.map +0 -1
  275. package/dist-client/pages/kpi-category/kpi-category-list-page.d.ts +0 -74
  276. package/dist-client/pages/kpi-category/kpi-category-list-page.js +0 -517
  277. package/dist-client/pages/kpi-category/kpi-category-list-page.js.map +0 -1
  278. package/dist-client/pages/kpi-category/kpi-category-value-calculator.d.ts +0 -13
  279. package/dist-client/pages/kpi-category/kpi-category-value-calculator.js +0 -256
  280. package/dist-client/pages/kpi-category/kpi-category-value-calculator.js.map +0 -1
  281. package/dist-client/pages/kpi-category-value/kpi-category-value-list-page.d.ts +0 -63
  282. package/dist-client/pages/kpi-category-value/kpi-category-value-list-page.js +0 -393
  283. package/dist-client/pages/kpi-category-value/kpi-category-value-list-page.js.map +0 -1
  284. package/dist-server/service/kpi-category/index.d.ts +0 -6
  285. package/dist-server/service/kpi-category/index.js +0 -10
  286. package/dist-server/service/kpi-category/index.js.map +0 -1
  287. package/dist-server/service/kpi-category/kpi-category-mutation.d.ts +0 -9
  288. package/dist-server/service/kpi-category/kpi-category-mutation.js +0 -221
  289. package/dist-server/service/kpi-category/kpi-category-mutation.js.map +0 -1
  290. package/dist-server/service/kpi-category/kpi-category-query.d.ts +0 -18
  291. package/dist-server/service/kpi-category/kpi-category-query.js +0 -115
  292. package/dist-server/service/kpi-category/kpi-category-query.js.map +0 -1
  293. package/dist-server/service/kpi-category/kpi-category-type.d.ts +0 -24
  294. package/dist-server/service/kpi-category/kpi-category-type.js +0 -100
  295. package/dist-server/service/kpi-category/kpi-category-type.js.map +0 -1
  296. package/dist-server/service/kpi-category/kpi-category.d.ts +0 -22
  297. package/dist-server/service/kpi-category/kpi-category.js +0 -106
  298. package/dist-server/service/kpi-category/kpi-category.js.map +0 -1
  299. package/dist-server/service/kpi-category-value/index.d.ts +0 -6
  300. package/dist-server/service/kpi-category-value/index.js +0 -10
  301. package/dist-server/service/kpi-category-value/index.js.map +0 -1
  302. package/dist-server/service/kpi-category-value/kpi-category-value-mutation.d.ts +0 -8
  303. package/dist-server/service/kpi-category-value/kpi-category-value-mutation.js +0 -102
  304. package/dist-server/service/kpi-category-value/kpi-category-value-mutation.js.map +0 -1
  305. package/dist-server/service/kpi-category-value/kpi-category-value-query.d.ts +0 -13
  306. package/dist-server/service/kpi-category-value/kpi-category-value-query.js +0 -91
  307. package/dist-server/service/kpi-category-value/kpi-category-value-query.js.map +0 -1
  308. package/dist-server/service/kpi-category-value/kpi-category-value-type.d.ts +0 -19
  309. package/dist-server/service/kpi-category-value/kpi-category-value-type.js +0 -73
  310. package/dist-server/service/kpi-category-value/kpi-category-value-type.js.map +0 -1
  311. package/dist-server/service/kpi-category-value/kpi-category-value.d.ts +0 -19
  312. package/dist-server/service/kpi-category-value/kpi-category-value.js +0 -91
  313. package/dist-server/service/kpi-category-value/kpi-category-value.js.map +0 -1
  314. package/helps/kpi/kpi-category.md +0 -160
  315. package/server/service/kpi-category/index.ts +0 -7
  316. package/server/service/kpi-category/kpi-category-mutation.ts +0 -217
  317. package/server/service/kpi-category/kpi-category-query.ts +0 -87
  318. package/server/service/kpi-category/kpi-category-type.ts +0 -73
  319. package/server/service/kpi-category/kpi-category.ts +0 -95
  320. package/server/service/kpi-category-value/index.ts +0 -7
  321. package/server/service/kpi-category-value/kpi-category-value-mutation.ts +0 -88
  322. package/server/service/kpi-category-value/kpi-category-value-query.ts +0 -62
  323. package/server/service/kpi-category-value/kpi-category-value-type.ts +0 -48
  324. package/server/service/kpi-category-value/kpi-category-value.ts +0 -79
@@ -0,0 +1,488 @@
1
+ [
2
+ {
3
+ "name": "Z. 전체스코어",
4
+ "description": "전체 스코어",
5
+ "formula": null,
6
+ "active": true,
7
+ "state": "RELEASE",
8
+ "viz_type": null,
9
+ "viz_meta": null,
10
+ "schedule": null,
11
+ "schedule_id": null,
12
+ "timezone": null,
13
+ "grades": null,
14
+ "period_type": "DAY",
15
+ "weight": 1.0,
16
+ "score_formula": null,
17
+ "is_leaf": false,
18
+ "parent_name": null
19
+ },
20
+ {
21
+ "name": "Y1. 일정성과",
22
+ "description": "프로젝트 일정 준수 및 일정 이탈 수준 평가",
23
+ "formula": null,
24
+ "active": true,
25
+ "state": "RELEASE",
26
+ "viz_type": null,
27
+ "viz_meta": null,
28
+ "schedule": null,
29
+ "schedule_id": null,
30
+ "timezone": null,
31
+ "grades": null,
32
+ "period_type": "DAY",
33
+ "weight": 1.0,
34
+ "score_formula": null,
35
+ "is_leaf": false,
36
+ "parent_name": "Z. 전체스코어"
37
+ },
38
+ {
39
+ "name": "Y2. 비용성과",
40
+ "description": "프로젝트 비용 집행 및 비용성과 수준 평가",
41
+ "formula": null,
42
+ "active": true,
43
+ "state": "RELEASE",
44
+ "viz_type": null,
45
+ "viz_meta": null,
46
+ "schedule": null,
47
+ "schedule_id": null,
48
+ "timezone": null,
49
+ "grades": null,
50
+ "period_type": "DAY",
51
+ "weight": 1.0,
52
+ "score_formula": null,
53
+ "is_leaf": false,
54
+ "parent_name": "Z. 전체스코어"
55
+ },
56
+ {
57
+ "name": "Y3. 품질성과",
58
+ "description": "품질 불합격률, 품질성과 수준 등 품질 관련 성과 측정",
59
+ "formula": null,
60
+ "active": true,
61
+ "state": "RELEASE",
62
+ "viz_type": null,
63
+ "viz_meta": null,
64
+ "schedule": null,
65
+ "schedule_id": null,
66
+ "timezone": null,
67
+ "grades": null,
68
+ "period_type": "DAY",
69
+ "weight": 1.0,
70
+ "score_formula": null,
71
+ "is_leaf": false,
72
+ "parent_name": "Z. 전체스코어"
73
+ },
74
+ {
75
+ "name": "Y4. 안전성과",
76
+ "description": "재해율, SL-PA 등 안전 관련 성과 평가",
77
+ "formula": null,
78
+ "active": true,
79
+ "state": "RELEASE",
80
+ "viz_type": null,
81
+ "viz_meta": null,
82
+ "schedule": null,
83
+ "schedule_id": null,
84
+ "timezone": null,
85
+ "grades": null,
86
+ "period_type": "DAY",
87
+ "weight": 1.0,
88
+ "score_formula": null,
89
+ "is_leaf": false,
90
+ "parent_name": "Z. 전체스코어"
91
+ },
92
+ {
93
+ "name": "Y5. 환경성과",
94
+ "description": "건설폐기물 등 환경 관련 성과 평가",
95
+ "formula": null,
96
+ "active": true,
97
+ "state": "RELEASE",
98
+ "viz_type": null,
99
+ "viz_meta": null,
100
+ "schedule": null,
101
+ "schedule_id": null,
102
+ "timezone": null,
103
+ "grades": null,
104
+ "period_type": "DAY",
105
+ "weight": 1.0,
106
+ "score_formula": null,
107
+ "is_leaf": false,
108
+ "parent_name": "Z. 전체스코어"
109
+ },
110
+ {
111
+ "name": "Y6. 생산성성과",
112
+ "description": "투입인력 생산성 등 생산성 관련 성과 평가",
113
+ "formula": null,
114
+ "active": true,
115
+ "state": "RELEASE",
116
+ "viz_type": null,
117
+ "viz_meta": null,
118
+ "schedule": null,
119
+ "schedule_id": null,
120
+ "timezone": null,
121
+ "grades": null,
122
+ "period_type": "DAY",
123
+ "weight": 1.0,
124
+ "score_formula": null,
125
+ "is_leaf": false,
126
+ "parent_name": "Z. 전체스코어"
127
+ },
128
+ {
129
+ "name": "X11. 연면적 대비 공사기간",
130
+ "description": "연면적 대비 공사기간 평가",
131
+ "formula": "[실제공사기간] / [연면적]",
132
+ "active": true,
133
+ "state": "DRAFT",
134
+ "viz_type": null,
135
+ "viz_meta": null,
136
+ "schedule": null,
137
+ "schedule_id": null,
138
+ "timezone": null,
139
+ "grades": null,
140
+ "period_type": "DAY",
141
+ "weight": 1.0,
142
+ "score_formula": null,
143
+ "is_leaf": true,
144
+ "parent_name": "Y1. 일정성과"
145
+ },
146
+ {
147
+ "name": "X12. 설계변경에 따른 공기 증감률",
148
+ "description": "설계변경에 따른 공기 증감률 평가",
149
+ "formula": "([실제공사기간] - [계획공사기간]) / [계획공사기간]",
150
+ "active": true,
151
+ "state": "DRAFT",
152
+ "viz_type": null,
153
+ "viz_meta": null,
154
+ "schedule": null,
155
+ "schedule_id": null,
156
+ "timezone": null,
157
+ "grades": "[{\"name\":\"1\",\"minValue\":0,\"maxValue\":5,\"score\":1,\"description\":\"샘플값\"}]",
158
+ "period_type": "DAY",
159
+ "weight": 1.0,
160
+ "score_formula": null,
161
+ "is_leaf": true,
162
+ "parent_name": "Y1. 일정성과"
163
+ },
164
+ {
165
+ "name": "X13. 일정 이탈 수준",
166
+ "description": "프로젝트 일정 이탈 수준 평가",
167
+ "formula": "[일정 이탈 수준]",
168
+ "active": true,
169
+ "state": "DRAFT",
170
+ "viz_type": null,
171
+ "viz_meta": null,
172
+ "schedule": null,
173
+ "schedule_id": null,
174
+ "timezone": null,
175
+ "grades": null,
176
+ "period_type": "DAY",
177
+ "weight": 1.0,
178
+ "score_formula": null,
179
+ "is_leaf": true,
180
+ "parent_name": "Y1. 일정성과"
181
+ },
182
+ {
183
+ "name": "X14. 일정성과 수준 평가",
184
+ "description": "일정성과 종합 평가",
185
+ "formula": "[일정성과 수준 평가]",
186
+ "active": true,
187
+ "state": "DRAFT",
188
+ "viz_type": null,
189
+ "viz_meta": null,
190
+ "schedule": null,
191
+ "schedule_id": null,
192
+ "timezone": null,
193
+ "grades": null,
194
+ "period_type": "DAY",
195
+ "weight": 1.0,
196
+ "score_formula": null,
197
+ "is_leaf": true,
198
+ "parent_name": "Y1. 일정성과"
199
+ },
200
+ {
201
+ "name": "X21. 연면적 대비 공사비",
202
+ "description": "연면적 대비 공사비 평가",
203
+ "formula": "[실제공사비] / [연면적]",
204
+ "active": true,
205
+ "state": "DRAFT",
206
+ "viz_type": null,
207
+ "viz_meta": null,
208
+ "schedule": null,
209
+ "schedule_id": null,
210
+ "timezone": null,
211
+ "grades": null,
212
+ "period_type": "DAY",
213
+ "weight": 1.0,
214
+ "score_formula": null,
215
+ "is_leaf": true,
216
+ "parent_name": "Y2. 비용성과"
217
+ },
218
+ {
219
+ "name": "X22. 설계변경에 따른 공사비 증감률",
220
+ "description": "설계변경에 따른 공사비 증감률 평가",
221
+ "formula": "([실제공사비]-[계획공사비]) / [계획공사비]",
222
+ "active": true,
223
+ "state": "DRAFT",
224
+ "viz_type": null,
225
+ "viz_meta": null,
226
+ "schedule": null,
227
+ "schedule_id": null,
228
+ "timezone": null,
229
+ "grades": null,
230
+ "period_type": "DAY",
231
+ "weight": 1.0,
232
+ "score_formula": null,
233
+ "is_leaf": true,
234
+ "parent_name": "Y2. 비용성과"
235
+ },
236
+ {
237
+ "name": "X23. 비용성과 수준 평가",
238
+ "description": "비용성과 종합 평가",
239
+ "formula": "[비용성과 수준 평가]",
240
+ "active": true,
241
+ "state": "DRAFT",
242
+ "viz_type": null,
243
+ "viz_meta": null,
244
+ "schedule": null,
245
+ "schedule_id": null,
246
+ "timezone": null,
247
+ "grades": null,
248
+ "period_type": "DAY",
249
+ "weight": 1.0,
250
+ "score_formula": null,
251
+ "is_leaf": true,
252
+ "parent_name": "Y2. 비용성과"
253
+ },
254
+ {
255
+ "name": "X31. 품질시험 불합격률",
256
+ "description": "품질시험 불합격률 평가",
257
+ "formula": "[품질시험 불합격 건수] / [연면적]",
258
+ "active": true,
259
+ "state": "DRAFT",
260
+ "viz_type": null,
261
+ "viz_meta": null,
262
+ "schedule": null,
263
+ "schedule_id": null,
264
+ "timezone": null,
265
+ "grades": null,
266
+ "period_type": "DAY",
267
+ "weight": 1.0,
268
+ "score_formula": null,
269
+ "is_leaf": true,
270
+ "parent_name": "Y3. 품질성과"
271
+ },
272
+ {
273
+ "name": "X32. 검수자재 불합격률",
274
+ "description": "검수자재 불합격률 평가",
275
+ "formula": "[검수자재 불합격 건수] / [연면적]",
276
+ "active": true,
277
+ "state": "DRAFT",
278
+ "viz_type": null,
279
+ "viz_meta": null,
280
+ "schedule": null,
281
+ "schedule_id": null,
282
+ "timezone": null,
283
+ "grades": null,
284
+ "period_type": "DAY",
285
+ "weight": 1.0,
286
+ "score_formula": "POW([value], 1)",
287
+ "is_leaf": true,
288
+ "parent_name": "Y3. 품질성과"
289
+ },
290
+ {
291
+ "name": "X33. 검측 불합격률",
292
+ "description": "검측 불합격률 평가",
293
+ "formula": "[품질검측 불합격 건수] / [연면적]",
294
+ "active": true,
295
+ "state": "DRAFT",
296
+ "viz_type": null,
297
+ "viz_meta": null,
298
+ "schedule": null,
299
+ "schedule_id": null,
300
+ "timezone": null,
301
+ "grades": null,
302
+ "period_type": "DAY",
303
+ "weight": 1.0,
304
+ "score_formula": null,
305
+ "is_leaf": true,
306
+ "parent_name": "Y3. 품질성과"
307
+ },
308
+ {
309
+ "name": "X34. 품질 SL-PA 결과값",
310
+ "description": "품질 SL-PA 결과",
311
+ "formula": "[SL-PA 품질평가]",
312
+ "active": true,
313
+ "state": "DRAFT",
314
+ "viz_type": null,
315
+ "viz_meta": null,
316
+ "schedule": null,
317
+ "schedule_id": null,
318
+ "timezone": null,
319
+ "grades": null,
320
+ "period_type": "DAY",
321
+ "weight": 1.0,
322
+ "score_formula": "[value]",
323
+ "is_leaf": true,
324
+ "parent_name": "Y3. 품질성과"
325
+ },
326
+ {
327
+ "name": "X35. 품질성과 수준 평가",
328
+ "description": "품질성과 종합 평가",
329
+ "formula": "[품질성과 수준 평가]",
330
+ "active": true,
331
+ "state": "DRAFT",
332
+ "viz_type": null,
333
+ "viz_meta": null,
334
+ "schedule": null,
335
+ "schedule_id": null,
336
+ "timezone": null,
337
+ "grades": null,
338
+ "period_type": "DAY",
339
+ "weight": 1.0,
340
+ "score_formula": "INTEGRATE([value], 1, 2, 3)",
341
+ "is_leaf": true,
342
+ "parent_name": "Y3. 품질성과"
343
+ },
344
+ {
345
+ "name": "X41. 재해율",
346
+ "description": "재해율 평가",
347
+ "formula": "[재해 건수] / [연간 근로자 수] * 100",
348
+ "active": true,
349
+ "state": "DRAFT",
350
+ "viz_type": null,
351
+ "viz_meta": null,
352
+ "schedule": null,
353
+ "schedule_id": null,
354
+ "timezone": null,
355
+ "grades": null,
356
+ "period_type": "DAY",
357
+ "weight": 1.0,
358
+ "score_formula": null,
359
+ "is_leaf": true,
360
+ "parent_name": "Y4. 안전성과"
361
+ },
362
+ {
363
+ "name": "X42. 재해강도율",
364
+ "description": "재해강도율 평가",
365
+ "formula": "[노동손실일수] / ( [총 근로자수] * [1인당 연간 근로 시간] ) * 1000",
366
+ "active": true,
367
+ "state": "DRAFT",
368
+ "viz_type": null,
369
+ "viz_meta": null,
370
+ "schedule": null,
371
+ "schedule_id": null,
372
+ "timezone": null,
373
+ "grades": null,
374
+ "period_type": "DAY",
375
+ "weight": 1.0,
376
+ "score_formula": null,
377
+ "is_leaf": true,
378
+ "parent_name": "Y4. 안전성과"
379
+ },
380
+ {
381
+ "name": "X43. 안전 SL-PA 결과값",
382
+ "description": "안전 SL-PA 결과",
383
+ "formula": "[SL-PA 안전 평가]",
384
+ "active": true,
385
+ "state": "DRAFT",
386
+ "viz_type": null,
387
+ "viz_meta": null,
388
+ "schedule": null,
389
+ "schedule_id": null,
390
+ "timezone": null,
391
+ "grades": null,
392
+ "period_type": "DAY",
393
+ "weight": 1.0,
394
+ "score_formula": null,
395
+ "is_leaf": true,
396
+ "parent_name": "Y4. 안전성과"
397
+ },
398
+ {
399
+ "name": "X44. 안전성과 수준 평가",
400
+ "description": "안전성과 종합 평가",
401
+ "formula": "[안전성과 수준 평가]",
402
+ "active": true,
403
+ "state": "DRAFT",
404
+ "viz_type": null,
405
+ "viz_meta": null,
406
+ "schedule": null,
407
+ "schedule_id": null,
408
+ "timezone": null,
409
+ "grades": null,
410
+ "period_type": "DAY",
411
+ "weight": 1.0,
412
+ "score_formula": null,
413
+ "is_leaf": true,
414
+ "parent_name": "Y4. 안전성과"
415
+ },
416
+ {
417
+ "name": "X51. 건설폐기물 발생량",
418
+ "description": "건설폐기물 발생량 평가",
419
+ "formula": "[총 건설 폐기물 발생량] / [연면적]",
420
+ "active": true,
421
+ "state": "DRAFT",
422
+ "viz_type": null,
423
+ "viz_meta": null,
424
+ "schedule": null,
425
+ "schedule_id": null,
426
+ "timezone": null,
427
+ "grades": null,
428
+ "period_type": "DAY",
429
+ "weight": 1.0,
430
+ "score_formula": null,
431
+ "is_leaf": true,
432
+ "parent_name": "Y5. 환경성과"
433
+ },
434
+ {
435
+ "name": "X52. 환경성과 수준 평가",
436
+ "description": "환경성과 종합 평가",
437
+ "formula": "[환경성과 수준 평가]",
438
+ "active": true,
439
+ "state": "DRAFT",
440
+ "viz_type": null,
441
+ "viz_meta": null,
442
+ "schedule": null,
443
+ "schedule_id": null,
444
+ "timezone": null,
445
+ "grades": null,
446
+ "period_type": "DAY",
447
+ "weight": 1.0,
448
+ "score_formula": null,
449
+ "is_leaf": true,
450
+ "parent_name": "Y5. 환경성과"
451
+ },
452
+ {
453
+ "name": "X61. 투입인력 생산성",
454
+ "description": "투입인력 생산성 평가",
455
+ "formula": "[투입인력] / [연면적]",
456
+ "active": true,
457
+ "state": "DRAFT",
458
+ "viz_type": null,
459
+ "viz_meta": null,
460
+ "schedule": null,
461
+ "schedule_id": null,
462
+ "timezone": null,
463
+ "grades": null,
464
+ "period_type": "DAY",
465
+ "weight": 1.0,
466
+ "score_formula": null,
467
+ "is_leaf": true,
468
+ "parent_name": "Y6. 생산성성과"
469
+ },
470
+ {
471
+ "name": "X62. 생산성성과 수준 평가",
472
+ "description": "생산성과 종합 평가",
473
+ "formula": "[생산성성과 수준 평가]",
474
+ "active": true,
475
+ "state": "DRAFT",
476
+ "viz_type": null,
477
+ "viz_meta": null,
478
+ "schedule": null,
479
+ "schedule_id": null,
480
+ "timezone": null,
481
+ "grades": null,
482
+ "period_type": "DAY",
483
+ "weight": 1.0,
484
+ "score_formula": null,
485
+ "is_leaf": true,
486
+ "parent_name": "Y6. 생산성성과"
487
+ }
488
+ ]
@@ -1,18 +1,14 @@
1
1
  export * from './kpi-statistic/kpi-statistic';
2
2
  export * from './kpi/kpi';
3
3
  export * from './kpi/kpi-type';
4
- export * from './kpi-category/kpi-category';
5
- export * from './kpi-category/kpi-category-type';
6
- export * from './kpi-category-value/kpi-category-value';
7
- export * from './kpi-category-value/kpi-category-value-type';
8
4
  export * from './kpi-value/kpi-value';
9
5
  export * from './kpi-value/kpi-value-type';
10
6
  export * from './kpi-metric/kpi-metric';
11
7
  export * from './kpi-metric/kpi-metric-type';
12
8
  export * from './kpi-metric-value/kpi-metric-value';
13
9
  export * from './kpi-metric-value/kpi-metric-value-type';
14
- export * from './kpi-alert';
15
- export declare const entities: (typeof import("./kpi-category/kpi-category").KpiCategory | typeof import("./kpi/kpi").Kpi | typeof import("./kpi-statistic/kpi-statistic").KpiStatistic | typeof import("./kpi-category-value/kpi-category-value").KpiCategoryValue | typeof import("./kpi-value/kpi-value").KpiValue | typeof import("./kpi-metric/kpi-metric").KpiMetric | typeof import("./kpi-metric-value/kpi-metric-value").KpiMetricValue | typeof import("./kpi/kpi-history").KpiHistory)[];
10
+ export * from './kpi-org-scope';
11
+ export declare const entities: (typeof import("./kpi/kpi").Kpi | typeof import("./kpi-statistic/kpi-statistic").KpiStatistic | typeof import("./kpi-org-scope").KpiOrgScope | typeof import("./kpi-value/kpi-value").KpiValue | typeof import("./kpi-metric/kpi-metric").KpiMetric | typeof import("./kpi-metric-value/kpi-metric-value").KpiMetricValue | typeof import("./kpi/kpi-history").KpiHistory)[];
16
12
  export declare const schema: {
17
- resolverClasses: (typeof import("./kpi-alert/kpi-alert-query").KpiAlertQuery | typeof import("./kpi-statistic/kpi-statistic-query").KpiStatisticQuery | typeof import("./kpi-statistic/kpi-statistic-mutation").KpiStatisticMutation | typeof import("./kpi/kpi-query").KpiQuery | typeof import("./kpi/kpi-mutation").KpiMutation | typeof import("./kpi-category/kpi-category-query").KpiCategoryQuery | typeof import("./kpi-category/kpi-category-mutation").KpiCategoryMutation | typeof import("./kpi-category-value/kpi-category-value-query").KpiCategoryValueQuery | typeof import("./kpi-category-value/kpi-category-value-mutation").KpiCategoryValueMutation | typeof import("./kpi-value/kpi-value-query").KpiValueQuery | typeof import("./kpi-value/kpi-value-mutation").KpiValueMutation | typeof import("./kpi-metric/kpi-metric-query").KpiMetricQuery | typeof import("./kpi-metric/kpi-metric-mutation").KpiMetricMutation | typeof import("./kpi-metric-value/kpi-metric-value-query").KpiMetricValueQuery | typeof import("./kpi-metric-value/kpi-metric-value-mutation").KpiMetricValueMutation)[];
13
+ resolverClasses: (typeof import("./kpi-org-scope").KpiOrgScopeQuery | typeof import("./kpi-org-scope").KpiOrgScopeMutation | typeof import("./kpi-statistic/kpi-statistic-query").KpiStatisticQuery | typeof import("./kpi-statistic/kpi-statistic-mutation").KpiStatisticMutation | typeof import("./kpi/kpi-query").KpiQuery | typeof import("./kpi/kpi-mutation").KpiMutation | typeof import("./kpi-value/kpi-value-query").KpiValueQuery | typeof import("./kpi-value/kpi-value-mutation").KpiValueMutation | typeof import("./kpi-metric/kpi-metric-query").KpiMetricQuery | typeof import("./kpi-metric/kpi-metric-mutation").KpiMetricMutation | typeof import("./kpi-metric-value/kpi-metric-value-query").KpiMetricValueQuery | typeof import("./kpi-metric-value/kpi-metric-value-mutation").KpiMetricValueMutation | typeof import("./kpi-alert/kpi-alert-query").KpiAlertQuery)[];
18
14
  };
@@ -6,46 +6,39 @@ const tslib_1 = require("tslib");
6
6
  tslib_1.__exportStar(require("./kpi-statistic/kpi-statistic"), exports);
7
7
  tslib_1.__exportStar(require("./kpi/kpi"), exports);
8
8
  tslib_1.__exportStar(require("./kpi/kpi-type"), exports);
9
- tslib_1.__exportStar(require("./kpi-category/kpi-category"), exports);
10
- tslib_1.__exportStar(require("./kpi-category/kpi-category-type"), exports);
11
- tslib_1.__exportStar(require("./kpi-category-value/kpi-category-value"), exports);
12
- tslib_1.__exportStar(require("./kpi-category-value/kpi-category-value-type"), exports);
13
9
  tslib_1.__exportStar(require("./kpi-value/kpi-value"), exports);
14
10
  tslib_1.__exportStar(require("./kpi-value/kpi-value-type"), exports);
15
11
  tslib_1.__exportStar(require("./kpi-metric/kpi-metric"), exports);
16
12
  tslib_1.__exportStar(require("./kpi-metric/kpi-metric-type"), exports);
17
13
  tslib_1.__exportStar(require("./kpi-metric-value/kpi-metric-value"), exports);
18
14
  tslib_1.__exportStar(require("./kpi-metric-value/kpi-metric-value-type"), exports);
19
- tslib_1.__exportStar(require("./kpi-alert"), exports);
15
+ tslib_1.__exportStar(require("./kpi-org-scope"), exports);
20
16
  /* IMPORT ENTITIES AND RESOLVERS */
21
17
  const kpi_statistic_1 = require("./kpi-statistic");
22
18
  const kpi_1 = require("./kpi");
23
- const kpi_category_1 = require("./kpi-category");
24
- const kpi_category_value_1 = require("./kpi-category-value");
25
19
  const kpi_value_1 = require("./kpi-value");
26
20
  const kpi_metric_1 = require("./kpi-metric");
27
21
  const kpi_metric_value_1 = require("./kpi-metric-value");
22
+ const kpi_org_scope_1 = require("./kpi-org-scope");
28
23
  const kpi_alert_1 = require("./kpi-alert");
29
24
  exports.entities = [
30
25
  /* ENTITIES */
31
26
  ...kpi_statistic_1.entities,
32
27
  ...kpi_1.entities,
33
- ...kpi_category_1.entities,
34
- ...kpi_category_value_1.entities,
35
28
  ...kpi_value_1.entities,
36
29
  ...kpi_metric_1.entities,
37
- ...kpi_metric_value_1.entities
30
+ ...kpi_metric_value_1.entities,
31
+ ...kpi_org_scope_1.entities
38
32
  ];
39
33
  exports.schema = {
40
34
  resolverClasses: [
41
35
  /* RESOLVER CLASSES */
42
36
  ...kpi_statistic_1.resolvers,
43
37
  ...kpi_1.resolvers,
44
- ...kpi_category_1.resolvers,
45
- ...kpi_category_value_1.resolvers,
46
38
  ...kpi_value_1.resolvers,
47
39
  ...kpi_metric_1.resolvers,
48
40
  ...kpi_metric_value_1.resolvers,
41
+ ...kpi_org_scope_1.resolvers,
49
42
  ...kpi_alert_1.resolvers
50
43
  ]
51
44
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../server/service/index.ts"],"names":[],"mappings":";;;;AAAA,yBAAyB;AACzB,wEAA6C;AAC7C,oDAAyB;AACzB,yDAA8B;AAC9B,sEAA2C;AAC3C,2EAAgD;AAChD,kFAAuD;AACvD,uFAA4D;AAC5D,gEAAqC;AACrC,qEAA0C;AAC1C,kEAAuC;AACvC,uEAA4C;AAC5C,8EAAmD;AACnD,mFAAwD;AACxD,sDAA2B;AAE3B,mCAAmC;AACnC,mDAIwB;AACxB,+BAA0E;AAC1E,iDAAmG;AACnG,6DAAmH;AACnH,2CAA0F;AAC1F,6CAA6F;AAC7F,yDAA6G;AAC7G,2CAA4D;AAE/C,QAAA,QAAQ,GAAG;IACtB,cAAc;IACd,GAAG,wBAAoB;IACvB,GAAG,cAAW;IACd,GAAG,uBAAmB;IACtB,GAAG,6BAAwB;IAC3B,GAAG,oBAAgB;IACnB,GAAG,qBAAiB;IACpB,GAAG,2BAAsB;CAC1B,CAAA;AAEY,QAAA,MAAM,GAAG;IACpB,eAAe,EAAE;QACf,sBAAsB;QACtB,GAAG,yBAAqB;QACxB,GAAG,eAAY;QACf,GAAG,wBAAoB;QACvB,GAAG,8BAAyB;QAC5B,GAAG,qBAAiB;QACpB,GAAG,sBAAkB;QACrB,GAAG,4BAAuB;QAC1B,GAAG,qBAAiB;KACrB;CACF,CAAA","sourcesContent":["/* EXPORT ENTITY TYPES */\nexport * from './kpi-statistic/kpi-statistic'\nexport * from './kpi/kpi'\nexport * from './kpi/kpi-type'\nexport * from './kpi-category/kpi-category'\nexport * from './kpi-category/kpi-category-type'\nexport * from './kpi-category-value/kpi-category-value'\nexport * from './kpi-category-value/kpi-category-value-type'\nexport * from './kpi-value/kpi-value'\nexport * from './kpi-value/kpi-value-type'\nexport * from './kpi-metric/kpi-metric'\nexport * from './kpi-metric/kpi-metric-type'\nexport * from './kpi-metric-value/kpi-metric-value'\nexport * from './kpi-metric-value/kpi-metric-value-type'\nexport * from './kpi-alert'\n\n/* IMPORT ENTITIES AND RESOLVERS */\nimport {\n entities as KpiStatisticEntities,\n resolvers as KpiStatisticResolvers,\n subscribers as KpiStatisticSubscribers\n} from './kpi-statistic'\nimport { entities as KpiEntities, resolvers as KpiResolvers } from './kpi'\nimport { entities as KpiCategoryEntities, resolvers as KpiCategoryResolvers } from './kpi-category'\nimport { entities as KpiCategoryValueEntities, resolvers as KpiCategoryValueResolvers } from './kpi-category-value'\nimport { entities as KpiValueEntities, resolvers as KpiValueResolvers } from './kpi-value'\nimport { entities as KpiMetricEntities, resolvers as KpiMetricResolvers } from './kpi-metric'\nimport { entities as KpiMetricValueEntities, resolvers as KpiMetricValueResolvers } from './kpi-metric-value'\nimport { resolvers as KpiAlertResolvers } from './kpi-alert'\n\nexport const entities = [\n /* ENTITIES */\n ...KpiStatisticEntities,\n ...KpiEntities,\n ...KpiCategoryEntities,\n ...KpiCategoryValueEntities,\n ...KpiValueEntities,\n ...KpiMetricEntities,\n ...KpiMetricValueEntities\n]\n\nexport const schema = {\n resolverClasses: [\n /* RESOLVER CLASSES */\n ...KpiStatisticResolvers,\n ...KpiResolvers,\n ...KpiCategoryResolvers,\n ...KpiCategoryValueResolvers,\n ...KpiValueResolvers,\n ...KpiMetricResolvers,\n ...KpiMetricValueResolvers,\n ...KpiAlertResolvers\n ]\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../server/service/index.ts"],"names":[],"mappings":";;;;AAAA,yBAAyB;AACzB,wEAA6C;AAC7C,oDAAyB;AACzB,yDAA8B;AAC9B,gEAAqC;AACrC,qEAA0C;AAC1C,kEAAuC;AACvC,uEAA4C;AAC5C,8EAAmD;AACnD,mFAAwD;AACxD,0DAA+B;AAE/B,mCAAmC;AACnC,mDAIwB;AACxB,+BAA0E;AAC1E,2CAA0F;AAC1F,6CAA6F;AAC7F,yDAA6G;AAC7G,mDAAoG;AACpG,2CAA4D;AAE/C,QAAA,QAAQ,GAAG;IACtB,cAAc;IACd,GAAG,wBAAoB;IACvB,GAAG,cAAW;IACd,GAAG,oBAAgB;IACnB,GAAG,qBAAiB;IACpB,GAAG,2BAAsB;IACzB,GAAG,wBAAmB;CACvB,CAAA;AAEY,QAAA,MAAM,GAAG;IACpB,eAAe,EAAE;QACf,sBAAsB;QACtB,GAAG,yBAAqB;QACxB,GAAG,eAAY;QACf,GAAG,qBAAiB;QACpB,GAAG,sBAAkB;QACrB,GAAG,4BAAuB;QAC1B,GAAG,yBAAoB;QACvB,GAAG,qBAAiB;KACrB;CACF,CAAA","sourcesContent":["/* EXPORT ENTITY TYPES */\nexport * from './kpi-statistic/kpi-statistic'\nexport * from './kpi/kpi'\nexport * from './kpi/kpi-type'\nexport * from './kpi-value/kpi-value'\nexport * from './kpi-value/kpi-value-type'\nexport * from './kpi-metric/kpi-metric'\nexport * from './kpi-metric/kpi-metric-type'\nexport * from './kpi-metric-value/kpi-metric-value'\nexport * from './kpi-metric-value/kpi-metric-value-type'\nexport * from './kpi-org-scope'\n\n/* IMPORT ENTITIES AND RESOLVERS */\nimport {\n entities as KpiStatisticEntities,\n resolvers as KpiStatisticResolvers,\n subscribers as KpiStatisticSubscribers\n} from './kpi-statistic'\nimport { entities as KpiEntities, resolvers as KpiResolvers } from './kpi'\nimport { entities as KpiValueEntities, resolvers as KpiValueResolvers } from './kpi-value'\nimport { entities as KpiMetricEntities, resolvers as KpiMetricResolvers } from './kpi-metric'\nimport { entities as KpiMetricValueEntities, resolvers as KpiMetricValueResolvers } from './kpi-metric-value'\nimport { entities as KpiOrgScopeEntities, resolvers as KpiOrgScopeResolvers } from './kpi-org-scope'\nimport { resolvers as KpiAlertResolvers } from './kpi-alert'\n\nexport const entities = [\n /* ENTITIES */\n ...KpiStatisticEntities,\n ...KpiEntities,\n ...KpiValueEntities,\n ...KpiMetricEntities,\n ...KpiMetricValueEntities,\n ...KpiOrgScopeEntities\n]\n\nexport const schema = {\n resolverClasses: [\n /* RESOLVER CLASSES */\n ...KpiStatisticResolvers,\n ...KpiResolvers,\n ...KpiValueResolvers,\n ...KpiMetricResolvers,\n ...KpiMetricValueResolvers,\n ...KpiOrgScopeResolvers,\n ...KpiAlertResolvers\n ]\n}\n"]}
@@ -5,6 +5,7 @@ const shell_1 = require("@things-factory/shell");
5
5
  const kpi_1 = require("./kpi");
6
6
  const kpi_metric_1 = require("../kpi-metric/kpi-metric");
7
7
  const kpi_value_1 = require("../kpi-value/kpi-value");
8
+ const kpi_org_scope_1 = require("../kpi-org-scope/kpi-org-scope");
8
9
  const kpi_formula_service_1 = require("./kpi-formula.service");
9
10
  const aggregate_kpi_metric_1 = require("../kpi-metric/aggregate-kpi-metric");
10
11
  const kpi_value_score_service_1 = require("../kpi-value/kpi-value-score.service");
@@ -37,20 +38,20 @@ async function aggregateKpiValue(kpiId, domainId, context) {
37
38
  throw new Error(`KPI formula metric '${code}' not found`);
38
39
  codeValueMap[code] = await (0, aggregate_kpi_metric_1.aggregateKpiMetricValue)(metric.id, domainId, context);
39
40
  }
40
- // group/date/period별로 값 매핑(가장 최근 기준, group key 조합)
41
- const groupKey = v => [v.date, v.period, v.group].join('|');
42
- const groupMap = {};
41
+ // org/date/period별로 값 매핑(가장 최근 기준, org key 조합)
42
+ const orgKey = v => [v.date, v.period, v.org].join('|');
43
+ const orgMap = {};
43
44
  for (const code of metricCodes) {
44
45
  for (const v of codeValueMap[code]) {
45
- const key = groupKey(v);
46
- groupMap[key] = groupMap[key] || { ...v, _values: {} };
47
- groupMap[key]._values[code] = v.value;
46
+ const key = orgKey(v);
47
+ orgMap[key] = orgMap[key] || { ...v, _values: {} };
48
+ orgMap[key]._values[code] = v.value;
48
49
  }
49
50
  }
50
51
  // formula 계산 (js eval)
51
52
  const savedValues = [];
52
- for (const key in groupMap) {
53
- const ctx = groupMap[key]._values;
53
+ for (const key in orgMap) {
54
+ const ctx = orgMap[key]._values;
54
55
  let value = null;
55
56
  try {
56
57
  value = Function(...Object.keys(ctx), `return (${kpi.formula})`)(...Object.values(ctx));
@@ -58,15 +59,30 @@ async function aggregateKpiValue(kpiId, domainId, context) {
58
59
  catch (e) {
59
60
  value = null;
60
61
  }
61
- const valueDate = groupMap[key].date;
62
- const group = groupMap[key].group;
62
+ const valueDate = orgMap[key].date;
63
+ const org = orgMap[key].org;
63
64
  const version = kpi.version || 1;
64
65
  if (value == null || isNaN(value))
65
66
  continue;
66
- // upsert(동일 KPI, valueDate, group, version) 기준으로 저장
67
+ // KpiOrgScope 처리 (org 문자열로 찾기 또는 생성)
68
+ const kpiOrgScopeRepo = (0, shell_1.getRepository)(kpi_org_scope_1.KpiOrgScope, context.state?.tx);
69
+ let kpiOrgScope = await kpiOrgScopeRepo.findOne({
70
+ where: { org: org, domain: { id: domainId } }
71
+ });
72
+ if (!kpiOrgScope) {
73
+ // 새 KpiOrgScope 생성
74
+ kpiOrgScope = await kpiOrgScopeRepo.save({
75
+ entityType: 'AutoAggregate',
76
+ entityId: `auto-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`,
77
+ entityName: org,
78
+ org: org,
79
+ domain: kpi.domain
80
+ });
81
+ }
82
+ // upsert(동일 KPI, valueDate, kpiOrgScope, version) 기준으로 저장
67
83
  const repo = (0, shell_1.getRepository)(kpi_value_1.KpiValue, context.state?.tx);
68
84
  const existing = await repo.findOne({
69
- where: { kpi: { id: kpi.id }, valueDate, group, version, domain: { id: domainId } }
85
+ where: { kpi: { id: kpi.id }, valueDate, kpiOrgScope: { id: kpiOrgScope.id }, version, domain: { id: domainId } }
70
86
  });
71
87
  let entity = existing || repo.create();
72
88
  entity.kpi = kpi;
@@ -74,7 +90,8 @@ async function aggregateKpiValue(kpiId, domainId, context) {
74
90
  entity.version = version;
75
91
  entity.valueDate = valueDate;
76
92
  entity.value = value;
77
- entity.group = group;
93
+ entity.kpiOrgScope = kpiOrgScope;
94
+ entity.kpiOrgScopeId = kpiOrgScope.id;
78
95
  entity.inputType = kpi_value_1.KpiValueInputType.AUTO;
79
96
  entity.source = 'AUTO';
80
97
  entity.domain = kpi.domain;