@dssp/supervision 1.0.0-alpha.97 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (498) hide show
  1. package/package.json +13 -12
  2. package/dist-client/bootstrap.d.ts +0 -1
  3. package/dist-client/bootstrap.js +0 -2
  4. package/dist-client/bootstrap.js.map +0 -1
  5. package/dist-client/graphql/building-inspection.d.ts +0 -1
  6. package/dist-client/graphql/building-inspection.js +0 -102
  7. package/dist-client/graphql/building-inspection.js.map +0 -1
  8. package/dist-client/index.d.ts +0 -0
  9. package/dist-client/index.js +0 -2
  10. package/dist-client/index.js.map +0 -1
  11. package/dist-client/pages/action-plan/action-plan-importer.d.ts +0 -10
  12. package/dist-client/pages/action-plan/action-plan-importer.js +0 -101
  13. package/dist-client/pages/action-plan/action-plan-importer.js.map +0 -1
  14. package/dist-client/pages/action-plan/action-plan-list-page.d.ts +0 -62
  15. package/dist-client/pages/action-plan/action-plan-list-page.js +0 -322
  16. package/dist-client/pages/action-plan/action-plan-list-page.js.map +0 -1
  17. package/dist-client/pages/building-inspection/building-inspection-detail-ai-defect.d.ts +0 -22
  18. package/dist-client/pages/building-inspection/building-inspection-detail-ai-defect.js +0 -171
  19. package/dist-client/pages/building-inspection/building-inspection-detail-ai-defect.js.map +0 -1
  20. package/dist-client/pages/building-inspection/building-inspection-detail-ai-measurement.d.ts +0 -59
  21. package/dist-client/pages/building-inspection/building-inspection-detail-ai-measurement.js +0 -868
  22. package/dist-client/pages/building-inspection/building-inspection-detail-ai-measurement.js.map +0 -1
  23. package/dist-client/pages/building-inspection/building-inspection-detail-camera.d.ts +0 -27
  24. package/dist-client/pages/building-inspection/building-inspection-detail-camera.js +0 -342
  25. package/dist-client/pages/building-inspection/building-inspection-detail-camera.js.map +0 -1
  26. package/dist-client/pages/building-inspection/building-inspection-detail-checklist.d.ts +0 -31
  27. package/dist-client/pages/building-inspection/building-inspection-detail-checklist.js +0 -332
  28. package/dist-client/pages/building-inspection/building-inspection-detail-checklist.js.map +0 -1
  29. package/dist-client/pages/building-inspection/building-inspection-detail-drawing.d.ts +0 -36
  30. package/dist-client/pages/building-inspection/building-inspection-detail-drawing.js +0 -369
  31. package/dist-client/pages/building-inspection/building-inspection-detail-drawing.js.map +0 -1
  32. package/dist-client/pages/building-inspection/building-inspection-list.d.ts +0 -98
  33. package/dist-client/pages/building-inspection/building-inspection-list.js +0 -914
  34. package/dist-client/pages/building-inspection/building-inspection-list.js.map +0 -1
  35. package/dist-client/pages/building-inspection/building-inspection-management.d.ts +0 -82
  36. package/dist-client/pages/building-inspection/building-inspection-management.js +0 -1527
  37. package/dist-client/pages/building-inspection/building-inspection-management.js.map +0 -1
  38. package/dist-client/pages/building-inspection/component/building-inspection-detail-header.d.ts +0 -4
  39. package/dist-client/pages/building-inspection/component/building-inspection-detail-header.js +0 -238
  40. package/dist-client/pages/building-inspection/component/building-inspection-detail-header.js.map +0 -1
  41. package/dist-client/pages/building-inspection/component/daily-worklog-popup.d.ts +0 -27
  42. package/dist-client/pages/building-inspection/component/daily-worklog-popup.js +0 -542
  43. package/dist-client/pages/building-inspection/component/daily-worklog-popup.js.map +0 -1
  44. package/dist-client/pages/building-inspection/component/field-document/field-document-constants.d.ts +0 -18
  45. package/dist-client/pages/building-inspection/component/field-document/field-document-constants.js +0 -630
  46. package/dist-client/pages/building-inspection/component/field-document/field-document-constants.js.map +0 -1
  47. package/dist-client/pages/building-inspection/component/field-document/field-document-detail-popup.d.ts +0 -10
  48. package/dist-client/pages/building-inspection/component/field-document/field-document-detail-popup.js +0 -219
  49. package/dist-client/pages/building-inspection/component/field-document/field-document-detail-popup.js.map +0 -1
  50. package/dist-client/pages/building-inspection/component/field-document/field-document-list-panel.d.ts +0 -25
  51. package/dist-client/pages/building-inspection/component/field-document/field-document-list-panel.js +0 -546
  52. package/dist-client/pages/building-inspection/component/field-document/field-document-list-panel.js.map +0 -1
  53. package/dist-client/pages/building-inspection/component/field-document/field-document-popup.d.ts +0 -42
  54. package/dist-client/pages/building-inspection/component/field-document/field-document-popup.js +0 -738
  55. package/dist-client/pages/building-inspection/component/field-document/field-document-popup.js.map +0 -1
  56. package/dist-client/pages/building-inspection/component/image-preview-popup.d.ts +0 -15
  57. package/dist-client/pages/building-inspection/component/image-preview-popup.js +0 -348
  58. package/dist-client/pages/building-inspection/component/image-preview-popup.js.map +0 -1
  59. package/dist-client/pages/building-inspection/component/inspection-document/inspection-request-document.d.ts +0 -25
  60. package/dist-client/pages/building-inspection/component/inspection-document/inspection-request-document.js +0 -491
  61. package/dist-client/pages/building-inspection/component/inspection-document/inspection-request-document.js.map +0 -1
  62. package/dist-client/pages/building-inspection/component/inspection-document/inspection-result-notification.d.ts +0 -31
  63. package/dist-client/pages/building-inspection/component/inspection-document/inspection-result-notification.js +0 -485
  64. package/dist-client/pages/building-inspection/component/inspection-document/inspection-result-notification.js.map +0 -1
  65. package/dist-client/pages/building-inspection/component/inspection-document/photo-album-popup.d.ts +0 -27
  66. package/dist-client/pages/building-inspection/component/inspection-document/photo-album-popup.js +0 -416
  67. package/dist-client/pages/building-inspection/component/inspection-document/photo-album-popup.js.map +0 -1
  68. package/dist-client/pages/building-inspection/component/inspection-event-provider.d.ts +0 -9
  69. package/dist-client/pages/building-inspection/component/inspection-event-provider.js +0 -190
  70. package/dist-client/pages/building-inspection/component/inspection-event-provider.js.map +0 -1
  71. package/dist-client/pages/building-inspection/inspection-create-popup.d.ts +0 -3
  72. package/dist-client/pages/building-inspection/inspection-create-popup.js +0 -841
  73. package/dist-client/pages/building-inspection/inspection-create-popup.js.map +0 -1
  74. package/dist-client/pages/building-inspection/inspection-with-checklist-create-popup.d.ts +0 -3
  75. package/dist-client/pages/building-inspection/inspection-with-checklist-create-popup.js +0 -817
  76. package/dist-client/pages/building-inspection/inspection-with-checklist-create-popup.js.map +0 -1
  77. package/dist-client/pages/building-inspection-grid/building-inspection-grid-detail.d.ts +0 -60
  78. package/dist-client/pages/building-inspection-grid/building-inspection-grid-detail.js +0 -1135
  79. package/dist-client/pages/building-inspection-grid/building-inspection-grid-detail.js.map +0 -1
  80. package/dist-client/pages/building-inspection-grid/component/grid-inspection-create-popup.d.ts +0 -2
  81. package/dist-client/pages/building-inspection-grid/component/grid-inspection-create-popup.js +0 -740
  82. package/dist-client/pages/building-inspection-grid/component/grid-inspection-create-popup.js.map +0 -1
  83. package/dist-client/pages/building-inspection-grid/component/grid-inspection-list-layer.d.ts +0 -19
  84. package/dist-client/pages/building-inspection-grid/component/grid-inspection-list-layer.js +0 -205
  85. package/dist-client/pages/building-inspection-grid/component/grid-inspection-list-layer.js.map +0 -1
  86. package/dist-client/pages/building-inspection-grid/component/notice-comment-popup.d.ts +0 -1
  87. package/dist-client/pages/building-inspection-grid/component/notice-comment-popup.js +0 -304
  88. package/dist-client/pages/building-inspection-grid/component/notice-comment-popup.js.map +0 -1
  89. package/dist-client/pages/building-inspection-grid/component/plan-preview-popup.d.ts +0 -15
  90. package/dist-client/pages/building-inspection-grid/component/plan-preview-popup.js +0 -430
  91. package/dist-client/pages/building-inspection-grid/component/plan-preview-popup.js.map +0 -1
  92. package/dist-client/pages/checklist/attachment-list-popup.d.ts +0 -3
  93. package/dist-client/pages/checklist/attachment-list-popup.js +0 -492
  94. package/dist-client/pages/checklist/attachment-list-popup.js.map +0 -1
  95. package/dist-client/pages/checklist/checklist-view.d.ts +0 -16
  96. package/dist-client/pages/checklist/checklist-view.js +0 -926
  97. package/dist-client/pages/checklist/checklist-view.js.map +0 -1
  98. package/dist-client/pages/checklist/comment-list-popup.d.ts +0 -1
  99. package/dist-client/pages/checklist/comment-list-popup.js +0 -367
  100. package/dist-client/pages/checklist/comment-list-popup.js.map +0 -1
  101. package/dist-client/pages/checklist/file-preview-popup.d.ts +0 -1
  102. package/dist-client/pages/checklist/file-preview-popup.js +0 -77
  103. package/dist-client/pages/checklist/file-preview-popup.js.map +0 -1
  104. package/dist-client/pages/checklist/inspection-info-popup.d.ts +0 -49
  105. package/dist-client/pages/checklist/inspection-info-popup.js +0 -683
  106. package/dist-client/pages/checklist/inspection-info-popup.js.map +0 -1
  107. package/dist-client/pages/checklist/inspection-tab-popup.d.ts +0 -18
  108. package/dist-client/pages/checklist/inspection-tab-popup.js +0 -196
  109. package/dist-client/pages/checklist/inspection-tab-popup.js.map +0 -1
  110. package/dist-client/pages/checklist/kcs-criteria-popup.d.ts +0 -16
  111. package/dist-client/pages/checklist/kcs-criteria-popup.js +0 -179
  112. package/dist-client/pages/checklist/kcs-criteria-popup.js.map +0 -1
  113. package/dist-client/pages/checklist-database/checklist-database.d.ts +0 -35
  114. package/dist-client/pages/checklist-database/checklist-database.js +0 -540
  115. package/dist-client/pages/checklist-database/checklist-database.js.map +0 -1
  116. package/dist-client/pages/checklist-template/checklist-template-item.d.ts +0 -2
  117. package/dist-client/pages/checklist-template/checklist-template-item.js +0 -278
  118. package/dist-client/pages/checklist-template/checklist-template-item.js.map +0 -1
  119. package/dist-client/pages/checklist-template/checklist-template-list.d.ts +0 -53
  120. package/dist-client/pages/checklist-template/checklist-template-list.js +0 -350
  121. package/dist-client/pages/checklist-template/checklist-template-list.js.map +0 -1
  122. package/dist-client/pages/checklist-template/checklist-type-management.d.ts +0 -55
  123. package/dist-client/pages/checklist-template/checklist-type-management.js +0 -250
  124. package/dist-client/pages/checklist-template/checklist-type-management.js.map +0 -1
  125. package/dist-client/pages/checklist-template/construction-checklist-template-item-popup.d.ts +0 -2
  126. package/dist-client/pages/checklist-template/construction-checklist-template-item-popup.js +0 -223
  127. package/dist-client/pages/checklist-template/construction-checklist-template-item-popup.js.map +0 -1
  128. package/dist-client/pages/checklist-template/construction-checklist-template-list.d.ts +0 -55
  129. package/dist-client/pages/checklist-template/construction-checklist-template-list.js +0 -404
  130. package/dist-client/pages/checklist-template/construction-checklist-template-list.js.map +0 -1
  131. package/dist-client/pages/issue/issue-importer.d.ts +0 -10
  132. package/dist-client/pages/issue/issue-importer.js +0 -101
  133. package/dist-client/pages/issue/issue-importer.js.map +0 -1
  134. package/dist-client/pages/issue/issue-list-page.d.ts +0 -62
  135. package/dist-client/pages/issue/issue-list-page.js +0 -322
  136. package/dist-client/pages/issue/issue-list-page.js.map +0 -1
  137. package/dist-client/pages/project-checklist/project-checklist-management.d.ts +0 -62
  138. package/dist-client/pages/project-checklist/project-checklist-management.js +0 -1145
  139. package/dist-client/pages/project-checklist/project-checklist-management.js.map +0 -1
  140. package/dist-client/pages/project-report/project-report-importer.d.ts +0 -10
  141. package/dist-client/pages/project-report/project-report-importer.js +0 -101
  142. package/dist-client/pages/project-report/project-report-importer.js.map +0 -1
  143. package/dist-client/pages/project-report/project-report-list-page.d.ts +0 -62
  144. package/dist-client/pages/project-report/project-report-list-page.js +0 -322
  145. package/dist-client/pages/project-report/project-report-list-page.js.map +0 -1
  146. package/dist-client/pages/supervisor/supervisor-importer.d.ts +0 -10
  147. package/dist-client/pages/supervisor/supervisor-importer.js +0 -101
  148. package/dist-client/pages/supervisor/supervisor-importer.js.map +0 -1
  149. package/dist-client/pages/supervisor/supervisor-list-page.d.ts +0 -62
  150. package/dist-client/pages/supervisor/supervisor-list-page.js +0 -322
  151. package/dist-client/pages/supervisor/supervisor-list-page.js.map +0 -1
  152. package/dist-client/route.d.ts +0 -1
  153. package/dist-client/route.js +0 -44
  154. package/dist-client/route.js.map +0 -1
  155. package/dist-client/stt/speech-to-text.d.ts +0 -41
  156. package/dist-client/stt/speech-to-text.js +0 -331
  157. package/dist-client/stt/speech-to-text.js.map +0 -1
  158. package/dist-client/stt/stt-utils.d.ts +0 -28
  159. package/dist-client/stt/stt-utils.js +0 -146
  160. package/dist-client/stt/stt-utils.js.map +0 -1
  161. package/dist-client/tsconfig.tsbuildinfo +0 -1
  162. package/dist-server/controllers/index.d.ts +0 -0
  163. package/dist-server/controllers/index.js +0 -1
  164. package/dist-server/controllers/index.js.map +0 -1
  165. package/dist-server/index.d.ts +0 -3
  166. package/dist-server/index.js +0 -7
  167. package/dist-server/index.js.map +0 -1
  168. package/dist-server/middlewares/index.d.ts +0 -1
  169. package/dist-server/middlewares/index.js +0 -7
  170. package/dist-server/middlewares/index.js.map +0 -1
  171. package/dist-server/migrations/index.d.ts +0 -1
  172. package/dist-server/migrations/index.js +0 -12
  173. package/dist-server/migrations/index.js.map +0 -1
  174. package/dist-server/routes.d.ts +0 -0
  175. package/dist-server/routes.js +0 -25
  176. package/dist-server/routes.js.map +0 -1
  177. package/dist-server/service/action-plan/action-plan-mutation.d.ts +0 -10
  178. package/dist-server/service/action-plan/action-plan-mutation.js +0 -167
  179. package/dist-server/service/action-plan/action-plan-mutation.js.map +0 -1
  180. package/dist-server/service/action-plan/action-plan-query.d.ts +0 -12
  181. package/dist-server/service/action-plan/action-plan-query.js +0 -91
  182. package/dist-server/service/action-plan/action-plan-query.js.map +0 -1
  183. package/dist-server/service/action-plan/action-plan-type.d.ts +0 -23
  184. package/dist-server/service/action-plan/action-plan-type.js +0 -86
  185. package/dist-server/service/action-plan/action-plan-type.js.map +0 -1
  186. package/dist-server/service/action-plan/action-plan.d.ts +0 -27
  187. package/dist-server/service/action-plan/action-plan.js +0 -116
  188. package/dist-server/service/action-plan/action-plan.js.map +0 -1
  189. package/dist-server/service/action-plan/index.d.ts +0 -5
  190. package/dist-server/service/action-plan/index.js +0 -9
  191. package/dist-server/service/action-plan/index.js.map +0 -1
  192. package/dist-server/service/building-inspection/building-inspection-mutation.d.ts +0 -9
  193. package/dist-server/service/building-inspection/building-inspection-mutation.js +0 -404
  194. package/dist-server/service/building-inspection/building-inspection-mutation.js.map +0 -1
  195. package/dist-server/service/building-inspection/building-inspection-query.d.ts +0 -24
  196. package/dist-server/service/building-inspection/building-inspection-query.js +0 -406
  197. package/dist-server/service/building-inspection/building-inspection-query.js.map +0 -1
  198. package/dist-server/service/building-inspection/building-inspection-type.d.ts +0 -89
  199. package/dist-server/service/building-inspection/building-inspection-type.js +0 -330
  200. package/dist-server/service/building-inspection/building-inspection-type.js.map +0 -1
  201. package/dist-server/service/building-inspection/building-inspection.d.ts +0 -42
  202. package/dist-server/service/building-inspection/building-inspection.js +0 -186
  203. package/dist-server/service/building-inspection/building-inspection.js.map +0 -1
  204. package/dist-server/service/building-inspection/index.d.ts +0 -7
  205. package/dist-server/service/building-inspection/index.js +0 -19
  206. package/dist-server/service/building-inspection/index.js.map +0 -1
  207. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-mutation.d.ts +0 -6
  208. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-mutation.js +0 -66
  209. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-mutation.js.map +0 -1
  210. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-query.d.ts +0 -16
  211. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-query.js +0 -171
  212. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-query.js.map +0 -1
  213. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-type.d.ts +0 -23
  214. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-type.js +0 -90
  215. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-type.js.map +0 -1
  216. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog.d.ts +0 -33
  217. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog.js +0 -132
  218. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog.js.map +0 -1
  219. package/dist-server/service/building-inspection-daily-worklog/index.d.ts +0 -5
  220. package/dist-server/service/building-inspection-daily-worklog/index.js +0 -9
  221. package/dist-server/service/building-inspection-daily-worklog/index.js.map +0 -1
  222. package/dist-server/service/building-inspection-history/building-inspection-history-query.d.ts +0 -16
  223. package/dist-server/service/building-inspection-history/building-inspection-history-query.js +0 -120
  224. package/dist-server/service/building-inspection-history/building-inspection-history-query.js.map +0 -1
  225. package/dist-server/service/building-inspection-history/building-inspection-history-type.d.ts +0 -5
  226. package/dist-server/service/building-inspection-history/building-inspection-history-type.js +0 -21
  227. package/dist-server/service/building-inspection-history/building-inspection-history-type.js.map +0 -1
  228. package/dist-server/service/building-inspection-history/building-inspection-history.d.ts +0 -35
  229. package/dist-server/service/building-inspection-history/building-inspection-history.js +0 -162
  230. package/dist-server/service/building-inspection-history/building-inspection-history.js.map +0 -1
  231. package/dist-server/service/building-inspection-history/event-subscriber.d.ts +0 -7
  232. package/dist-server/service/building-inspection-history/event-subscriber.js +0 -21
  233. package/dist-server/service/building-inspection-history/event-subscriber.js.map +0 -1
  234. package/dist-server/service/building-inspection-history/index.d.ts +0 -6
  235. package/dist-server/service/building-inspection-history/index.js +0 -10
  236. package/dist-server/service/building-inspection-history/index.js.map +0 -1
  237. package/dist-server/service/checklist/checklist-mutation.d.ts +0 -3
  238. package/dist-server/service/checklist/checklist-mutation.js +0 -30
  239. package/dist-server/service/checklist/checklist-mutation.js.map +0 -1
  240. package/dist-server/service/checklist/checklist-query.d.ts +0 -21
  241. package/dist-server/service/checklist/checklist-query.js +0 -177
  242. package/dist-server/service/checklist/checklist-query.js.map +0 -1
  243. package/dist-server/service/checklist/checklist-type.d.ts +0 -5
  244. package/dist-server/service/checklist/checklist-type.js +0 -21
  245. package/dist-server/service/checklist/checklist-type.js.map +0 -1
  246. package/dist-server/service/checklist/checklist.d.ts +0 -66
  247. package/dist-server/service/checklist/checklist.js +0 -259
  248. package/dist-server/service/checklist/checklist.js.map +0 -1
  249. package/dist-server/service/checklist/event-subscriber.d.ts +0 -7
  250. package/dist-server/service/checklist/event-subscriber.js +0 -21
  251. package/dist-server/service/checklist/event-subscriber.js.map +0 -1
  252. package/dist-server/service/checklist/index.d.ts +0 -5
  253. package/dist-server/service/checklist/index.js +0 -9
  254. package/dist-server/service/checklist/index.js.map +0 -1
  255. package/dist-server/service/checklist-history/checklist-history-query.d.ts +0 -11
  256. package/dist-server/service/checklist-history/checklist-history-query.js +0 -77
  257. package/dist-server/service/checklist-history/checklist-history-query.js.map +0 -1
  258. package/dist-server/service/checklist-history/checklist-history-type.d.ts +0 -5
  259. package/dist-server/service/checklist-history/checklist-history-type.js +0 -21
  260. package/dist-server/service/checklist-history/checklist-history-type.js.map +0 -1
  261. package/dist-server/service/checklist-history/checklist-history.d.ts +0 -50
  262. package/dist-server/service/checklist-history/checklist-history.js +0 -239
  263. package/dist-server/service/checklist-history/checklist-history.js.map +0 -1
  264. package/dist-server/service/checklist-history/event-subscriber.d.ts +0 -7
  265. package/dist-server/service/checklist-history/event-subscriber.js +0 -21
  266. package/dist-server/service/checklist-history/event-subscriber.js.map +0 -1
  267. package/dist-server/service/checklist-history/index.d.ts +0 -6
  268. package/dist-server/service/checklist-history/index.js +0 -10
  269. package/dist-server/service/checklist-history/index.js.map +0 -1
  270. package/dist-server/service/checklist-item/checklist-item-mutation.d.ts +0 -2
  271. package/dist-server/service/checklist-item/checklist-item-mutation.js +0 -13
  272. package/dist-server/service/checklist-item/checklist-item-mutation.js.map +0 -1
  273. package/dist-server/service/checklist-item/checklist-item-query.d.ts +0 -18
  274. package/dist-server/service/checklist-item/checklist-item-query.js +0 -138
  275. package/dist-server/service/checklist-item/checklist-item-query.js.map +0 -1
  276. package/dist-server/service/checklist-item/checklist-item-type.d.ts +0 -5
  277. package/dist-server/service/checklist-item/checklist-item-type.js +0 -21
  278. package/dist-server/service/checklist-item/checklist-item-type.js.map +0 -1
  279. package/dist-server/service/checklist-item/checklist-item.d.ts +0 -29
  280. package/dist-server/service/checklist-item/checklist-item.js +0 -124
  281. package/dist-server/service/checklist-item/checklist-item.js.map +0 -1
  282. package/dist-server/service/checklist-item/index.d.ts +0 -4
  283. package/dist-server/service/checklist-item/index.js +0 -9
  284. package/dist-server/service/checklist-item/index.js.map +0 -1
  285. package/dist-server/service/checklist-item-comment/checklist-item-comment-history.d.ts +0 -16
  286. package/dist-server/service/checklist-item-comment/checklist-item-comment-history.js +0 -83
  287. package/dist-server/service/checklist-item-comment/checklist-item-comment-history.js.map +0 -1
  288. package/dist-server/service/checklist-item-comment/checklist-item-comment-mutation.d.ts +0 -8
  289. package/dist-server/service/checklist-item-comment/checklist-item-comment-mutation.js +0 -114
  290. package/dist-server/service/checklist-item-comment/checklist-item-comment-mutation.js.map +0 -1
  291. package/dist-server/service/checklist-item-comment/checklist-item-comment-query.d.ts +0 -7
  292. package/dist-server/service/checklist-item-comment/checklist-item-comment-query.js +0 -49
  293. package/dist-server/service/checklist-item-comment/checklist-item-comment-query.js.map +0 -1
  294. package/dist-server/service/checklist-item-comment/checklist-item-comment-type.d.ts +0 -14
  295. package/dist-server/service/checklist-item-comment/checklist-item-comment-type.js +0 -53
  296. package/dist-server/service/checklist-item-comment/checklist-item-comment-type.js.map +0 -1
  297. package/dist-server/service/checklist-item-comment/checklist-item-comment.d.ts +0 -12
  298. package/dist-server/service/checklist-item-comment/checklist-item-comment.js +0 -57
  299. package/dist-server/service/checklist-item-comment/checklist-item-comment.js.map +0 -1
  300. package/dist-server/service/checklist-item-comment/index.d.ts +0 -5
  301. package/dist-server/service/checklist-item-comment/index.js +0 -10
  302. package/dist-server/service/checklist-item-comment/index.js.map +0 -1
  303. package/dist-server/service/checklist-item-history/checklist-item-history-query.d.ts +0 -16
  304. package/dist-server/service/checklist-item-history/checklist-item-history-query.js +0 -123
  305. package/dist-server/service/checklist-item-history/checklist-item-history-query.js.map +0 -1
  306. package/dist-server/service/checklist-item-history/checklist-item-history-type.d.ts +0 -5
  307. package/dist-server/service/checklist-item-history/checklist-item-history-type.js +0 -21
  308. package/dist-server/service/checklist-item-history/checklist-item-history-type.js.map +0 -1
  309. package/dist-server/service/checklist-item-history/checklist-item-history.d.ts +0 -27
  310. package/dist-server/service/checklist-item-history/checklist-item-history.js +0 -133
  311. package/dist-server/service/checklist-item-history/checklist-item-history.js.map +0 -1
  312. package/dist-server/service/checklist-item-history/event-subscriber.d.ts +0 -7
  313. package/dist-server/service/checklist-item-history/event-subscriber.js +0 -21
  314. package/dist-server/service/checklist-item-history/event-subscriber.js.map +0 -1
  315. package/dist-server/service/checklist-item-history/index.d.ts +0 -6
  316. package/dist-server/service/checklist-item-history/index.js +0 -10
  317. package/dist-server/service/checklist-item-history/index.js.map +0 -1
  318. package/dist-server/service/checklist-template/checklist-template-mutation.d.ts +0 -6
  319. package/dist-server/service/checklist-template/checklist-template-mutation.js +0 -64
  320. package/dist-server/service/checklist-template/checklist-template-mutation.js.map +0 -1
  321. package/dist-server/service/checklist-template/checklist-template-query.d.ts +0 -10
  322. package/dist-server/service/checklist-template/checklist-template-query.js +0 -62
  323. package/dist-server/service/checklist-template/checklist-template-query.js.map +0 -1
  324. package/dist-server/service/checklist-template/checklist-template-type.d.ts +0 -10
  325. package/dist-server/service/checklist-template/checklist-template-type.js +0 -39
  326. package/dist-server/service/checklist-template/checklist-template-type.js.map +0 -1
  327. package/dist-server/service/checklist-template/checklist-template.d.ts +0 -17
  328. package/dist-server/service/checklist-template/checklist-template.js +0 -78
  329. package/dist-server/service/checklist-template/checklist-template.js.map +0 -1
  330. package/dist-server/service/checklist-template/index.d.ts +0 -5
  331. package/dist-server/service/checklist-template/index.js +0 -9
  332. package/dist-server/service/checklist-template/index.js.map +0 -1
  333. package/dist-server/service/checklist-template-item/checklist-template-item-mutation.d.ts +0 -7
  334. package/dist-server/service/checklist-template-item/checklist-template-item-mutation.js +0 -80
  335. package/dist-server/service/checklist-template-item/checklist-template-item-mutation.js.map +0 -1
  336. package/dist-server/service/checklist-template-item/checklist-template-item-query.d.ts +0 -11
  337. package/dist-server/service/checklist-template-item/checklist-template-item-query.js +0 -78
  338. package/dist-server/service/checklist-template-item/checklist-template-item-query.js.map +0 -1
  339. package/dist-server/service/checklist-template-item/checklist-template-item-type.d.ts +0 -19
  340. package/dist-server/service/checklist-template-item/checklist-template-item-type.js +0 -69
  341. package/dist-server/service/checklist-template-item/checklist-template-item-type.js.map +0 -1
  342. package/dist-server/service/checklist-template-item/checklist-template-item.d.ts +0 -26
  343. package/dist-server/service/checklist-template-item/checklist-template-item.js +0 -106
  344. package/dist-server/service/checklist-template-item/checklist-template-item.js.map +0 -1
  345. package/dist-server/service/checklist-template-item/index.d.ts +0 -5
  346. package/dist-server/service/checklist-template-item/index.js +0 -9
  347. package/dist-server/service/checklist-template-item/index.js.map +0 -1
  348. package/dist-server/service/checklist-template-item/spec-matching-service.d.ts +0 -2
  349. package/dist-server/service/checklist-template-item/spec-matching-service.js +0 -51
  350. package/dist-server/service/checklist-template-item/spec-matching-service.js.map +0 -1
  351. package/dist-server/service/checklist-type/checklist-type-mutation.d.ts +0 -6
  352. package/dist-server/service/checklist-type/checklist-type-mutation.js +0 -64
  353. package/dist-server/service/checklist-type/checklist-type-mutation.js.map +0 -1
  354. package/dist-server/service/checklist-type/checklist-type-query.d.ts +0 -10
  355. package/dist-server/service/checklist-type/checklist-type-query.js +0 -62
  356. package/dist-server/service/checklist-type/checklist-type-query.js.map +0 -1
  357. package/dist-server/service/checklist-type/checklist-type-type.d.ts +0 -11
  358. package/dist-server/service/checklist-type/checklist-type-type.js +0 -43
  359. package/dist-server/service/checklist-type/checklist-type-type.js.map +0 -1
  360. package/dist-server/service/checklist-type/checklist-type.d.ts +0 -19
  361. package/dist-server/service/checklist-type/checklist-type.js +0 -78
  362. package/dist-server/service/checklist-type/checklist-type.js.map +0 -1
  363. package/dist-server/service/checklist-type/index.d.ts +0 -5
  364. package/dist-server/service/checklist-type/index.js +0 -9
  365. package/dist-server/service/checklist-type/index.js.map +0 -1
  366. package/dist-server/service/construction-checklist-template/construction-checklist-template-mutation.d.ts +0 -7
  367. package/dist-server/service/construction-checklist-template/construction-checklist-template-mutation.js +0 -107
  368. package/dist-server/service/construction-checklist-template/construction-checklist-template-mutation.js.map +0 -1
  369. package/dist-server/service/construction-checklist-template/construction-checklist-template-query.d.ts +0 -10
  370. package/dist-server/service/construction-checklist-template/construction-checklist-template-query.js +0 -62
  371. package/dist-server/service/construction-checklist-template/construction-checklist-template-query.js.map +0 -1
  372. package/dist-server/service/construction-checklist-template/construction-checklist-template-type.d.ts +0 -11
  373. package/dist-server/service/construction-checklist-template/construction-checklist-template-type.js +0 -43
  374. package/dist-server/service/construction-checklist-template/construction-checklist-template-type.js.map +0 -1
  375. package/dist-server/service/construction-checklist-template/construction-checklist-template.d.ts +0 -18
  376. package/dist-server/service/construction-checklist-template/construction-checklist-template.js +0 -80
  377. package/dist-server/service/construction-checklist-template/construction-checklist-template.js.map +0 -1
  378. package/dist-server/service/construction-checklist-template/index.d.ts +0 -5
  379. package/dist-server/service/construction-checklist-template/index.js +0 -9
  380. package/dist-server/service/construction-checklist-template/index.js.map +0 -1
  381. package/dist-server/service/construction-checklist-template-item/construction-checklist-template-item-mutation.d.ts +0 -6
  382. package/dist-server/service/construction-checklist-template-item/construction-checklist-template-item-mutation.js +0 -56
  383. package/dist-server/service/construction-checklist-template-item/construction-checklist-template-item-mutation.js.map +0 -1
  384. package/dist-server/service/construction-checklist-template-item/construction-checklist-template-item-query.d.ts +0 -9
  385. package/dist-server/service/construction-checklist-template-item/construction-checklist-template-item-query.js +0 -53
  386. package/dist-server/service/construction-checklist-template-item/construction-checklist-template-item-query.js.map +0 -1
  387. package/dist-server/service/construction-checklist-template-item/construction-checklist-template-item-type.d.ts +0 -17
  388. package/dist-server/service/construction-checklist-template-item/construction-checklist-template-item-type.js +0 -67
  389. package/dist-server/service/construction-checklist-template-item/construction-checklist-template-item-type.js.map +0 -1
  390. package/dist-server/service/construction-checklist-template-item/construction-checklist-template-item.d.ts +0 -24
  391. package/dist-server/service/construction-checklist-template-item/construction-checklist-template-item.js +0 -113
  392. package/dist-server/service/construction-checklist-template-item/construction-checklist-template-item.js.map +0 -1
  393. package/dist-server/service/construction-checklist-template-item/index.d.ts +0 -5
  394. package/dist-server/service/construction-checklist-template-item/index.js +0 -9
  395. package/dist-server/service/construction-checklist-template-item/index.js.map +0 -1
  396. package/dist-server/service/field-document/field-document-auto-file.d.ts +0 -21
  397. package/dist-server/service/field-document/field-document-auto-file.js +0 -47
  398. package/dist-server/service/field-document/field-document-auto-file.js.map +0 -1
  399. package/dist-server/service/field-document/field-document-mutation.d.ts +0 -9
  400. package/dist-server/service/field-document/field-document-mutation.js +0 -139
  401. package/dist-server/service/field-document/field-document-mutation.js.map +0 -1
  402. package/dist-server/service/field-document/field-document-query.d.ts +0 -14
  403. package/dist-server/service/field-document/field-document-query.js +0 -120
  404. package/dist-server/service/field-document/field-document-query.js.map +0 -1
  405. package/dist-server/service/field-document/field-document-summary-service.d.ts +0 -10
  406. package/dist-server/service/field-document/field-document-summary-service.js +0 -79
  407. package/dist-server/service/field-document/field-document-summary-service.js.map +0 -1
  408. package/dist-server/service/field-document/field-document-type.d.ts +0 -24
  409. package/dist-server/service/field-document/field-document-type.js +0 -88
  410. package/dist-server/service/field-document/field-document-type.js.map +0 -1
  411. package/dist-server/service/field-document/field-document.d.ts +0 -29
  412. package/dist-server/service/field-document/field-document.js +0 -127
  413. package/dist-server/service/field-document/field-document.js.map +0 -1
  414. package/dist-server/service/field-document/index.d.ts +0 -5
  415. package/dist-server/service/field-document/index.js +0 -9
  416. package/dist-server/service/field-document/index.js.map +0 -1
  417. package/dist-server/service/index.d.ts +0 -23
  418. package/dist-server/service/index.js +0 -98
  419. package/dist-server/service/index.js.map +0 -1
  420. package/dist-server/service/issue/index.d.ts +0 -5
  421. package/dist-server/service/issue/index.js +0 -9
  422. package/dist-server/service/issue/index.js.map +0 -1
  423. package/dist-server/service/issue/issue-mutation.d.ts +0 -10
  424. package/dist-server/service/issue/issue-mutation.js +0 -167
  425. package/dist-server/service/issue/issue-mutation.js.map +0 -1
  426. package/dist-server/service/issue/issue-query.d.ts +0 -12
  427. package/dist-server/service/issue/issue-query.js +0 -91
  428. package/dist-server/service/issue/issue-query.js.map +0 -1
  429. package/dist-server/service/issue/issue-type.d.ts +0 -23
  430. package/dist-server/service/issue/issue-type.js +0 -86
  431. package/dist-server/service/issue/issue-type.js.map +0 -1
  432. package/dist-server/service/issue/issue.d.ts +0 -26
  433. package/dist-server/service/issue/issue.js +0 -111
  434. package/dist-server/service/issue/issue.js.map +0 -1
  435. package/dist-server/service/project-checklist/index.d.ts +0 -5
  436. package/dist-server/service/project-checklist/index.js +0 -9
  437. package/dist-server/service/project-checklist/index.js.map +0 -1
  438. package/dist-server/service/project-checklist/project-checklist-mutation.d.ts +0 -7
  439. package/dist-server/service/project-checklist/project-checklist-mutation.js +0 -118
  440. package/dist-server/service/project-checklist/project-checklist-mutation.js.map +0 -1
  441. package/dist-server/service/project-checklist/project-checklist-query.d.ts +0 -12
  442. package/dist-server/service/project-checklist/project-checklist-query.js +0 -76
  443. package/dist-server/service/project-checklist/project-checklist-query.js.map +0 -1
  444. package/dist-server/service/project-checklist/project-checklist-type.d.ts +0 -18
  445. package/dist-server/service/project-checklist/project-checklist-type.js +0 -69
  446. package/dist-server/service/project-checklist/project-checklist-type.js.map +0 -1
  447. package/dist-server/service/project-checklist/project-checklist.d.ts +0 -20
  448. package/dist-server/service/project-checklist/project-checklist.js +0 -90
  449. package/dist-server/service/project-checklist/project-checklist.js.map +0 -1
  450. package/dist-server/service/project-checklist/spec-matching-service.d.ts +0 -17
  451. package/dist-server/service/project-checklist/spec-matching-service.js +0 -140
  452. package/dist-server/service/project-checklist/spec-matching-service.js.map +0 -1
  453. package/dist-server/service/project-checklist-item/index.d.ts +0 -4
  454. package/dist-server/service/project-checklist-item/index.js +0 -9
  455. package/dist-server/service/project-checklist-item/index.js.map +0 -1
  456. package/dist-server/service/project-checklist-item/project-checklist-item-mutation.d.ts +0 -2
  457. package/dist-server/service/project-checklist-item/project-checklist-item-mutation.js +0 -13
  458. package/dist-server/service/project-checklist-item/project-checklist-item-mutation.js.map +0 -1
  459. package/dist-server/service/project-checklist-item/project-checklist-item-query.d.ts +0 -5
  460. package/dist-server/service/project-checklist-item/project-checklist-item-query.js +0 -34
  461. package/dist-server/service/project-checklist-item/project-checklist-item-query.js.map +0 -1
  462. package/dist-server/service/project-checklist-item/project-checklist-item-type.d.ts +0 -5
  463. package/dist-server/service/project-checklist-item/project-checklist-item-type.js +0 -21
  464. package/dist-server/service/project-checklist-item/project-checklist-item-type.js.map +0 -1
  465. package/dist-server/service/project-checklist-item/project-checklist-item.d.ts +0 -19
  466. package/dist-server/service/project-checklist-item/project-checklist-item.js +0 -92
  467. package/dist-server/service/project-checklist-item/project-checklist-item.js.map +0 -1
  468. package/dist-server/service/project-report/index.d.ts +0 -5
  469. package/dist-server/service/project-report/index.js +0 -9
  470. package/dist-server/service/project-report/index.js.map +0 -1
  471. package/dist-server/service/project-report/project-report-mutation.d.ts +0 -10
  472. package/dist-server/service/project-report/project-report-mutation.js +0 -167
  473. package/dist-server/service/project-report/project-report-mutation.js.map +0 -1
  474. package/dist-server/service/project-report/project-report-query.d.ts +0 -12
  475. package/dist-server/service/project-report/project-report-query.js +0 -91
  476. package/dist-server/service/project-report/project-report-query.js.map +0 -1
  477. package/dist-server/service/project-report/project-report-type.d.ts +0 -23
  478. package/dist-server/service/project-report/project-report-type.js +0 -86
  479. package/dist-server/service/project-report/project-report-type.js.map +0 -1
  480. package/dist-server/service/project-report/project-report.d.ts +0 -28
  481. package/dist-server/service/project-report/project-report.js +0 -121
  482. package/dist-server/service/project-report/project-report.js.map +0 -1
  483. package/dist-server/service/supervisor/index.d.ts +0 -5
  484. package/dist-server/service/supervisor/index.js +0 -9
  485. package/dist-server/service/supervisor/index.js.map +0 -1
  486. package/dist-server/service/supervisor/supervisor-mutation.d.ts +0 -10
  487. package/dist-server/service/supervisor/supervisor-mutation.js +0 -167
  488. package/dist-server/service/supervisor/supervisor-mutation.js.map +0 -1
  489. package/dist-server/service/supervisor/supervisor-query.d.ts +0 -12
  490. package/dist-server/service/supervisor/supervisor-query.js +0 -91
  491. package/dist-server/service/supervisor/supervisor-query.js.map +0 -1
  492. package/dist-server/service/supervisor/supervisor-type.d.ts +0 -23
  493. package/dist-server/service/supervisor/supervisor-type.js +0 -86
  494. package/dist-server/service/supervisor/supervisor-type.js.map +0 -1
  495. package/dist-server/service/supervisor/supervisor.d.ts +0 -28
  496. package/dist-server/service/supervisor/supervisor.js +0 -121
  497. package/dist-server/service/supervisor/supervisor.js.map +0 -1
  498. package/dist-server/tsconfig.tsbuildinfo +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"building-inspection-mutation.js","sourceRoot":"","sources":["../../../server/service/building-inspection/building-inspection-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'\nimport { In } from 'typeorm'\nimport { BuildingInspection, ProjectType } from './building-inspection'\nimport { NewBuildingInspection, UpdateBuildingInspection, UpdateBuildingInspectionSubmitType } from './building-inspection-type'\nimport { BuildingInspectionStatus } from './building-inspection'\nimport { Checklist, DocumentNoType } from '../checklist/checklist'\nimport { ChecklistItem } from '../checklist-item/checklist-item'\nimport { getRepository } from '@things-factory/shell'\nimport { BuildingLevel } from '@dssp/building-complex'\nimport { config } from '@things-factory/env'\nimport { ChecklistReferenceType } from '../checklist/checklist'\nimport { autoFileDocument, getProjectIdByBuildingLevelId } from '../field-document/field-document-auto-file'\n\nconst projectType = config.get('projectType', ProjectType.DSSP)\n\n@Resolver(BuildingInspection)\nexport class BuildingInspectionMutation {\n @Directive('@transaction')\n @Mutation(returns => BuildingInspection, { description: 'To create Building Inspection information' })\n async createBuildingInspection(\n @Arg('patch') patch: NewBuildingInspection,\n @Ctx() context: ResolverContext\n ): Promise<BuildingInspection> {\n const { user, tx } = context.state\n const { buildingLevelId, checklist, checklistItem, cellX, cellY, managerId } = patch\n const buildingInspectionRepository = tx.getRepository(BuildingInspection)\n const checklistRepository = tx.getRepository(Checklist)\n const checklistItemRepository = tx.getRepository(ChecklistItem)\n\n // 1. 벨리데이션\n if (!checklist.constructionType) throw new Error('공종 타입이 없습니다.')\n if (!checklist.constructionDetailType) throw new Error('상세 공종 타입이 없습니다.')\n if (!checklist.name) throw new Error('체크리스트 이름이 없습니다.')\n if (checklistItem.length === 0) throw new Error('체크리스트 아이템이 없습니다.')\n\n if (projectType === ProjectType.DSSP) {\n if (!cellX || !cellY) throw new Error('셀 좌표가 없습니다.')\n if (!managerId) throw new Error('담당자가 없습니다.')\n if (!buildingLevelId) throw new Error('층 아이디가 없습니다.')\n if (!checklist.location) throw new Error('위치가 없습니다.')\n } else if (projectType === ProjectType.DCSP) {\n if (!checklist.inspectionDrawingType) throw new Error('검측 도면 타입이 없습니다.')\n if (checklist.inspectionParts.length === 0) throw new Error('검측 부위가 없습니다.')\n if (!buildingLevelId) throw new Error('층 아이디가 없습니다.')\n if (!checklist.location) throw new Error('위치가 없습니다.')\n }\n\n // 2. checklist 저장\n const checklistDocumentNo = await getRecentDocumentNoByBuildingLevelId(buildingLevelId, DocumentNoType.CHECKLIST, tx)\n const inspectionRequestDocumentNo = checklistDocumentNo.replace(\n `검측 제${DocumentNoType.CHECKLIST}-`,\n `검측 제${DocumentNoType.INSPECTION_REQUEST}-`\n )\n const inspectionResultDocumentNo = checklistDocumentNo.replace(\n `검측 제${DocumentNoType.CHECKLIST}-`,\n `검측 제${DocumentNoType.INSPECTION_RESULT}-`\n )\n\n const savedChecklist = await checklistRepository.save({\n ...checklist,\n projectType,\n checklistReferenceType: ChecklistReferenceType.INSPECTION,\n documentNo: checklistDocumentNo,\n inspectionRequestDocumentNo,\n inspectionResultDocumentNo,\n creator: user,\n updater: user\n })\n\n // 3. checklistItem 저장\n const checklistItems = checklistItem.map((item, idx) => ({\n name: item.name,\n mainType: item.mainType,\n detailType: item.detailType,\n inspctionCriteria: item.inspctionCriteria,\n kcsCriteria: item.kcsCriteria,\n siteSpecCriteria: item.siteSpecCriteria,\n sequence: idx,\n checklist: savedChecklist,\n creator: user,\n updater: user\n }))\n await checklistItemRepository.save(checklistItems)\n\n // 4. buildingInspection 저장\n const result = await buildingInspectionRepository.save({\n status: BuildingInspectionStatus.WAIT,\n buildingLevel: { id: buildingLevelId },\n checklist: savedChecklist,\n projectType,\n manager: managerId ? { id: managerId } : null,\n cellX,\n cellY,\n creator: user,\n updater: user\n })\n\n // 5. 현장 문서 자동 등록 (040202 검측체크리스트관리)\n const projectId = await getProjectIdByBuildingLevelId(buildingLevelId, tx.getRepository('projects'))\n if (projectId) {\n await autoFileDocument({\n projectId,\n code: '040202',\n name: `체크리스트 - ${savedChecklist.name || ''}`,\n sourceType: 'CHECKLIST',\n sourceRefId: result.id,\n context\n })\n }\n\n return result\n }\n\n // 검측 상태 변경 & 체크리스트 갱신\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To create Building Inspection And Checklist information' })\n async updateBuildingInspectionChecklist(\n @Arg('buildingInspection') buildingInspection: UpdateBuildingInspectionSubmitType,\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { user, tx } = context.state\n const { id: buildingInspectionId, memo, requestDate, checklist, checklistItem } = buildingInspection\n const buildingInspectionRepo = tx.getRepository(BuildingInspection)\n const checklistRepo = tx.getRepository(Checklist)\n const checklistItemRepo = tx.getRepository(ChecklistItem)\n const oldBuildingInspection = await buildingInspectionRepo.findOneBy({ id: buildingInspectionId })\n const status = oldBuildingInspection.status\n const isConstructor: boolean =\n status == BuildingInspectionStatus.WAIT ||\n status == BuildingInspectionStatus.OVERALL_WAIT ||\n status == BuildingInspectionStatus.FAIL\n let inspectionStatus = null\n let signedUserType = null // 싸인을 한 유저 타입\n let inspectionRequestData = {}\n let inspectionResultData = {}\n\n // 1. 벨리데이션\n if (!buildingInspectionId) throw new Error('검측 아이디가 없습니다.')\n if (!status) throw new Error('검측 상태가 없습니다.')\n if (status == BuildingInspectionStatus.PASS) throw new Error('검측 상태가 수정할 수 있는 상태가 아닙니다.')\n\n if (isConstructor) {\n // 시공자 타입별 밸리데이션\n if (checklistItem.length !== checklistItem.filter(v => v.constructionConfirmStatus).length) {\n throw new Error('아이템을 모두 체크해야 합니다.')\n }\n if (status == BuildingInspectionStatus.OVERALL_WAIT && !checklist.overallConstructorSignature) {\n throw new Error('총괄 시공책임자 사인이 없습니다.')\n }\n if (status == BuildingInspectionStatus.WAIT && !checklist.taskConstructorSignature) {\n throw new Error('공종별 시공관리자 사인이 없습니다.')\n }\n\n // 시공자 상태 데이터\n const isPassed = checklistItem.length === checklistItem.filter(v => v.constructionConfirmStatus === 'T').length\n\n if (!isPassed) {\n // 1. 검측이 불햡격 = 상태는 불합격으로, 시공자 싸인은 모두 초기화\n inspectionStatus = BuildingInspectionStatus.FAIL\n checklist.overallConstructorSignature = null\n checklist.taskConstructorSignature = null\n } else if (isPassed && (status === BuildingInspectionStatus.WAIT || status === BuildingInspectionStatus.FAIL)) {\n // 2. 검측이 합격이면서 공종 시공자 스탭 = 상태는 총괄 시공자 스탭으로\n inspectionStatus = BuildingInspectionStatus.OVERALL_WAIT\n signedUserType = 'taskConstructor'\n } else if (isPassed && status === BuildingInspectionStatus.OVERALL_WAIT) {\n // 3. 검측이 합격이면서 총괄 시공자 스탭 = 상태는 공종 감리자 스탭으로, 감리자 싸인은 모두 초기화\n inspectionStatus = BuildingInspectionStatus.REQUEST\n checklist.overallSupervisorySignature = null\n checklist.taskSupervisorySignature = null\n signedUserType = 'overallConstructor'\n inspectionRequestData = {\n inspectionRequestMemo: checklist.inspectionRequestMemo,\n inspectionRequestUpdatedAt: new Date()\n }\n }\n } else {\n // 감리자 타입별 밸리데이션\n if (checklistItem.length !== checklistItem.filter(v => v.supervisoryConfirmStatus).length) {\n throw new Error('아이템을 모두 체크해야 합니다.')\n }\n if (status == BuildingInspectionStatus.OVERALL_REQUEST && !checklist.overallSupervisorySignature) {\n throw new Error('총괄 감리책임자 사인이 없습니다.')\n }\n if (status == BuildingInspectionStatus.REQUEST && !checklist.taskSupervisorySignature) {\n throw new Error('공종별 감리 책임자 사인이 없습니다.')\n }\n\n // 감리자 상태 데이터\n const isPassed = checklistItem.length === checklistItem.filter(v => v.supervisoryConfirmStatus === 'T').length\n if (!isPassed) {\n // 1. 검측이 불햡격 = 상태는 불합격으로, 시공자 싸인은 모두 초기화\n inspectionStatus = BuildingInspectionStatus.FAIL\n checklist.overallConstructorSignature = null\n checklist.taskConstructorSignature = null\n } else if (isPassed && status === BuildingInspectionStatus.REQUEST) {\n // 2. 검측이 합격이면서 공종 감리자 스탭 = 상태는 총괄 감리자 스탭으로\n inspectionStatus = BuildingInspectionStatus.OVERALL_REQUEST\n signedUserType = 'taskSupervisory'\n } else if (isPassed && status === BuildingInspectionStatus.OVERALL_REQUEST) {\n // 3. 검측이 합격이면서 총괄 감리자 스탭 = 상태는 합격으로\n inspectionStatus = BuildingInspectionStatus.PASS\n signedUserType = 'overallSupervisory'\n inspectionResultData = {\n inspectionResultStatus: checklist.inspectionResultStatus,\n inspectionResultMemo: checklist.inspectionResultMemo,\n inspectionResultType: checklist.inspectionResultType,\n inspectionResultUpdatedAt: new Date()\n }\n }\n }\n\n // 2. buildingInspection 저장\n await buildingInspectionRepo.save({\n ...oldBuildingInspection,\n status: inspectionStatus,\n failCount:\n inspectionStatus === BuildingInspectionStatus.FAIL\n ? (oldBuildingInspection.failCount || 0) + 1\n : oldBuildingInspection.failCount || 0,\n ...(requestDate !== undefined && { requestDate }),\n memo: memo,\n updater: user\n })\n\n // 현장 문서 자동 등록 (040201 검측요청/결과통보서) - REQUEST 상태 전환 시\n if (inspectionStatus === BuildingInspectionStatus.REQUEST) {\n const buildingLevelId = oldBuildingInspection.buildingLevelId\n if (buildingLevelId) {\n const projectId = await getProjectIdByBuildingLevelId(buildingLevelId, tx.getRepository('projects'))\n if (projectId) {\n await autoFileDocument({\n projectId,\n code: '040201',\n name: `검측요청서 - ${buildingInspectionId}`,\n sourceType: 'INSPECTION_REQUEST',\n sourceRefId: buildingInspectionId,\n context\n })\n }\n }\n }\n\n // 3. checklist 저장\n const oldChecklist = await checklistRepo.findOneBy({ id: checklist.id })\n const inspectionDateField = isConstructor ? 'constructionInspectionDate' : 'supervisorInspectionDate'\n const signedUser = signedUserType ? { [signedUserType]: user } : {}\n\n await checklistRepo.save({\n ...oldChecklist,\n [inspectionDateField]: new Date(),\n overallConstructorSignature: checklist.overallConstructorSignature,\n taskConstructorSignature: checklist.taskConstructorSignature,\n overallSupervisorySignature: checklist.overallSupervisorySignature,\n taskSupervisorySignature: checklist.taskSupervisorySignature,\n ...signedUser,\n ...inspectionRequestData,\n ...inspectionResultData,\n updater: user\n })\n\n // 4. checklistItem 저장\n for (let item of checklistItem) {\n const confirmStatusField = isConstructor ? 'constructionConfirmStatus' : 'supervisoryConfirmStatus'\n const existingItem = await checklistItemRepo.findOneBy({ id: item.id })\n await checklistItemRepo.save({\n ...existingItem,\n [confirmStatusField]: item[confirmStatusField],\n updater: user\n })\n }\n\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => BuildingInspection, { description: 'To update Building Inspection information' })\n async updateBuildingInspection(\n @Arg('patch') patch: UpdateBuildingInspection,\n @Ctx() context: ResolverContext\n ): Promise<BuildingInspection> {\n const { user, tx } = context.state\n const buildingInspectionRepo = tx.getRepository(BuildingInspection)\n\n // 벨리데이션\n if (!patch.id) throw new Error('검측 아이디가 없습니다.')\n\n const buildingInspection = await buildingInspectionRepo.findOneBy({ id: patch.id })\n\n // 완료 상태인 검측데이터면 삭제 못함\n if (buildingInspection.status === BuildingInspectionStatus.PASS) {\n throw new Error('완료 상태인 검측정보를 변경할 수 없습니다.')\n }\n\n const result = await buildingInspectionRepo.save({\n ...buildingInspection,\n ...patch,\n updater: user\n })\n\n return result\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete multiple Checklists' })\n async deleteBuildingInspections(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { tx } = context.state\n const buildingInspectionRepository = tx.getRepository(BuildingInspection)\n const checklistRepository = tx.getRepository(Checklist)\n const checklistItemRepository = tx.getRepository(ChecklistItem)\n\n const buildingInspections = await buildingInspectionRepository.createQueryBuilder('bi').whereInIds(ids).getMany()\n\n // 완료 상태인 검측데이터가 한개라도 있으면 삭제 못함\n if (buildingInspections.filter(bi => bi.status === BuildingInspectionStatus.PASS).length > 0) {\n throw new Error('완료 상태인 검측정보를 변경할 수 없습니다.')\n }\n\n // 검측 데이터 제거\n await buildingInspectionRepository.softDelete({\n id: In(ids)\n })\n\n // 검측 데이터의 체크 리스트 제거\n const checklistIds = buildingInspections.map(bi => bi.checklistId)\n await checklistRepository.softDelete({\n id: In(checklistIds)\n })\n\n // 검측 데이터의 체크 리스트 아이템 제거\n await checklistItemRepository\n .createQueryBuilder()\n .softDelete()\n .where('checklist_id IN (:...checklistIds)', { checklistIds })\n .execute()\n\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To apply to all building inspection' })\n async applyToAllBuildingInspection(\n @Arg('buildingInspectionId') buildingInspectionId: string,\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { user, tx } = context.state\n const buildingInspectionRepository = tx.getRepository(BuildingInspection)\n\n const buildingInspection = await buildingInspectionRepository.findOne({\n where: { id: buildingInspectionId },\n relations: ['buildingLevel', 'buildingLevel.building', 'checklist', 'checklist.checklistItems']\n })\n\n const checklist = buildingInspection.checklist\n const checklistItems = checklist.checklistItems\n const buildingLevels = await getRepository(BuildingLevel).find({\n where: { building: { id: buildingInspection.buildingLevel.building.id } }\n })\n\n // 해당 검측 정보가 속한 동의 모든 층에 같은 검측 데이터 등록\n for (let buildingLevel of buildingLevels) {\n // 같은 셀에 이미 검측 정보가 있으면 패스\n const existInspection = await buildingInspectionRepository.findOneBy({\n buildingLevel: { id: buildingLevel.id },\n cellX: buildingInspection.cellX,\n cellY: buildingInspection.cellY\n })\n if (existInspection) continue\n\n // 새로운 체크리스트 데이터\n const newChecklist = {\n name: checklist.name,\n location: `${buildingInspection.buildingLevel.building.name} ${buildingLevel.floor}층`,\n constructionType: checklist.constructionType,\n constructionDetailType: checklist.constructionDetailType,\n inspectionDrawingType: checklist.inspectionDrawingType,\n inspectionParts: checklist.inspectionParts\n }\n\n // 새로운 체크리스트 아이템 데이터\n const newChecklistItems = checklistItems.map(item => ({\n name: item.name,\n mainType: item.mainType,\n detailType: item.detailType,\n inspctionCriteria: item.inspctionCriteria,\n kcsCriteria: item.kcsCriteria,\n siteSpecCriteria: item.siteSpecCriteria\n }))\n\n await this.createBuildingInspection(\n {\n buildingLevelId: buildingLevel.id,\n checklist: newChecklist,\n checklistItem: newChecklistItems,\n cellX: buildingInspection.cellX,\n cellY: buildingInspection.cellY,\n managerId: buildingInspection.managerId\n },\n context\n )\n }\n\n return true\n }\n}\n\nasync function getRecentDocumentNoByBuildingLevelId(buildingLevelId: string, type: DocumentNoType, tx: any): Promise<string> {\n const project = await tx\n .createQueryBuilder()\n .select('p.documentNaming', 'documentNaming')\n .addSelect('bc.id', 'buildingComplexId')\n .from('projects', 'p')\n .innerJoin('building_complexes', 'bc', 'bc.id = p.building_complex_id')\n .innerJoin('buildings', 'b', 'b.building_complex_id = bc.id')\n .innerJoin('building_levels', 'bl', 'bl.building_id = b.id')\n .where('bl.id = :buildingLevelId', { buildingLevelId })\n .getRawOne()\n\n const latestChecklist = await tx\n .getRepository(Checklist)\n .createQueryBuilder('c')\n .innerJoin('c.buildingInspection', 'bi')\n .innerJoin('bi.buildingLevel', 'bl')\n .innerJoin('bl.building', 'b')\n .where('b.building_complex_id = :buildingComplexId', { buildingComplexId: project.buildingComplexId })\n .andWhere('c.document_no LIKE :pattern', { pattern: `${project.documentNaming} 검측 제${type}-%` })\n .orderBy('c.created_at', 'DESC')\n .getOne()\n\n // 4. 시퀀스 번호 생성 (5자리)\n let sequence = '00001'\n if (latestChecklist) {\n const documentNoPattern = new RegExp(`${project.documentNaming} 검측 제${type}-(\\\\d{5})호`)\n const match = latestChecklist.documentNo.match(documentNoPattern)\n if (match) {\n sequence = (Number(match[1]) + 1).toString().padStart(5, '0')\n }\n }\n\n // 5. 최종 문서 번호 생성\n return `${project.documentNaming} 검측 제${type}-${sequence}호`\n}\n"]}
@@ -1,24 +0,0 @@
1
- import { Attachment } from '@things-factory/attachment-base';
2
- import { ListParam } from '@things-factory/shell';
3
- import { BuildingInspection } from './building-inspection';
4
- import { BuildingInspectionList, BuildingInspectionsOfBuilding, BuildingInspectionsOfBuildingLevel, BuildingInspectionsOfProject, BuildingInspectionSummary, ProjectManagerOutput } from './building-inspection-type';
5
- import { BuildingLevel } from '@dssp/building-complex';
6
- import { Checklist } from '../checklist/checklist';
7
- export declare class BuildingInspectionQuery {
8
- buildingInspection(id: string, context: ResolverContext): Promise<BuildingInspection>;
9
- buildingInspections(params: ListParam): Promise<BuildingInspectionList>;
10
- buildingInspectionsOfProject(params: BuildingInspectionsOfProject, context: ResolverContext): Promise<BuildingInspectionList>;
11
- buildingInspectionsOfBuildingLevel(params: BuildingInspectionsOfBuildingLevel, context: ResolverContext): Promise<BuildingInspectionList>;
12
- buildingInspectionSummaryOfBuildingLevel(buildingLevelId: string, context: ResolverContext): Promise<BuildingInspectionSummary>;
13
- buildingInspectionDateSummaryOfLevelAndPeriod(buildingLevelId: string, startDate: string, endDate: string, context: ResolverContext): Promise<BuildingInspectionSummary[]>;
14
- buildingInspectionDateSummaryOfProject(projectId: string, startDate: string, endDate: string, context: ResolverContext): Promise<BuildingInspectionSummary[]>;
15
- buildingInspectionSummaryOfBuilding(buildingId: string, context: ResolverContext): Promise<BuildingInspectionSummary>;
16
- buildingInspectionDateSummaryOfBuilding(buildingId: string, startDate: string, endDate: string, context: ResolverContext): Promise<BuildingInspectionSummary[]>;
17
- buildingInspectionsOfBuilding(params: BuildingInspectionsOfBuilding, context: ResolverContext): Promise<BuildingInspectionList>;
18
- buildingInspectionSummary(buildingLevel: BuildingLevel): Promise<BuildingInspectionSummary>;
19
- buildingInspectionSummaryOfProject(projectId: string): Promise<BuildingInspectionSummary>;
20
- checklist(buildingInspection: BuildingInspection): Promise<Checklist>;
21
- buildingLevel(buildingInspection: BuildingInspection): Promise<BuildingLevel>;
22
- attachments(buildingInspection: BuildingInspection): Promise<Attachment[] | undefined>;
23
- manager(buildingInspection: BuildingInspection): Promise<ProjectManagerOutput>;
24
- }
@@ -1,406 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BuildingInspectionQuery = void 0;
4
- const tslib_1 = require("tslib");
5
- const type_graphql_1 = require("type-graphql");
6
- const attachment_base_1 = require("@things-factory/attachment-base");
7
- const shell_1 = require("@things-factory/shell");
8
- const building_inspection_1 = require("./building-inspection");
9
- const building_inspection_type_1 = require("./building-inspection-type");
10
- const building_complex_1 = require("@dssp/building-complex");
11
- const checklist_1 = require("../checklist/checklist");
12
- const env_1 = require("@things-factory/env");
13
- const auth_base_1 = require("@things-factory/auth-base");
14
- const projectType = env_1.config.get('projectType', building_inspection_1.ProjectType.DSSP);
15
- let BuildingInspectionQuery = class BuildingInspectionQuery {
16
- async buildingInspection(id, context) {
17
- return await (0, shell_1.getRepository)(building_inspection_1.BuildingInspection).findOne({
18
- where: { id, projectType }
19
- });
20
- }
21
- async buildingInspections(params) {
22
- const queryBuilder = (0, shell_1.getQueryBuilderFromListParams)({
23
- params,
24
- repository: await (0, shell_1.getRepository)(building_inspection_1.BuildingInspection),
25
- searchables: ['name']
26
- }).andWhere('project_type = :projectType', { projectType });
27
- const [items, total] = await queryBuilder.getManyAndCount();
28
- return { items, total };
29
- }
30
- async buildingInspectionsOfProject(params, context) {
31
- const { projectId, limit, statusFilter } = params;
32
- const queryBuilder = (0, shell_1.getRepository)(building_inspection_1.BuildingInspection)
33
- .createQueryBuilder('bi')
34
- .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')
35
- .innerJoin('buildings', 'b', 'bl.building_id = b.id')
36
- .innerJoin('building_complexes', 'bc', 'b.building_complex_id = bc.id')
37
- .innerJoin('projects', 'p', 'bc.id = p.building_complex_id')
38
- .innerJoin('checklists', 'c', 'bi.checklist_id = c.id')
39
- .where('bi.project_type = :projectType', { projectType })
40
- .andWhere('p.id = :projectId', { projectId });
41
- // 상태 필터
42
- if (statusFilter === 'WAIT') {
43
- queryBuilder.andWhere("bi.status IN ('WAIT', 'OVERALL_WAIT')").andWhere('(bi.fail_count = 0 OR bi.fail_count IS NULL)');
44
- }
45
- else if (statusFilter === 'RE_WAIT') {
46
- queryBuilder.andWhere("bi.status IN ('WAIT', 'OVERALL_WAIT')").andWhere('bi.fail_count > 0');
47
- }
48
- else if (statusFilter === 'REQUEST') {
49
- queryBuilder.andWhere("bi.status IN ('REQUEST', 'OVERALL_REQUEST')");
50
- }
51
- else if (statusFilter === 'FAIL') {
52
- queryBuilder.andWhere("bi.status = 'FAIL'");
53
- }
54
- else if (statusFilter === 'PASS') {
55
- queryBuilder.andWhere("bi.status = 'PASS'");
56
- }
57
- queryBuilder.orderBy('bi.createdAt', 'DESC');
58
- if (limit) {
59
- queryBuilder.limit(limit);
60
- }
61
- const [items, total] = await queryBuilder.getManyAndCount();
62
- return { items, total };
63
- }
64
- async buildingInspectionsOfBuildingLevel(params, context) {
65
- const { buildingLevelId, limit, startDate, endDate } = params;
66
- const queryBuilder = (0, shell_1.getRepository)(building_inspection_1.BuildingInspection)
67
- .createQueryBuilder('bi')
68
- .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')
69
- .innerJoin('checklists', 'c', 'bi.checklist_id = c.id')
70
- .where('bl.id = :buildingLevelId', { buildingLevelId })
71
- .andWhere('bi.project_type = :projectType', { projectType })
72
- .orderBy('bi.updatedAt', 'DESC');
73
- if (startDate) {
74
- queryBuilder.andWhere('bi.request_date >= :startDate::date', { startDate });
75
- }
76
- if (endDate) {
77
- queryBuilder.andWhere('bi.request_date < (:endDate::date + interval \'1 day\')', { endDate });
78
- }
79
- if (limit) {
80
- queryBuilder.limit(limit);
81
- }
82
- const [items, total] = await queryBuilder.getManyAndCount();
83
- return { items, total };
84
- }
85
- // 층 별로 검수 개수 써머리
86
- async buildingInspectionSummaryOfBuildingLevel(buildingLevelId, context) {
87
- const buildingInspectionSummary = await (0, shell_1.getRepository)(building_inspection_1.BuildingInspection)
88
- .createQueryBuilder('bi')
89
- .select(`COUNT(CASE WHEN (bi.status='${building_inspection_1.BuildingInspectionStatus.WAIT}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_WAIT}') AND (bi.fail_count = 0 OR bi.fail_count IS NULL) THEN 1 ELSE NULL END) AS wait`)
90
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.REQUEST}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`)
91
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)
92
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)
93
- .addSelect(`COUNT(CASE WHEN (bi.status='${building_inspection_1.BuildingInspectionStatus.WAIT}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_WAIT}') AND bi.fail_count > 0 THEN 1 ELSE NULL END) AS "reWait"`)
94
- .where('bi.building_level_id = :buildingLevelId', { buildingLevelId })
95
- .andWhere('bi.project_type = :projectType', { projectType })
96
- .groupBy('bi.building_level_id')
97
- .getRawOne();
98
- return {
99
- wait: (buildingInspectionSummary === null || buildingInspectionSummary === void 0 ? void 0 : buildingInspectionSummary.wait) || 0,
100
- request: (buildingInspectionSummary === null || buildingInspectionSummary === void 0 ? void 0 : buildingInspectionSummary.request) || 0,
101
- pass: (buildingInspectionSummary === null || buildingInspectionSummary === void 0 ? void 0 : buildingInspectionSummary.pass) || 0,
102
- fail: (buildingInspectionSummary === null || buildingInspectionSummary === void 0 ? void 0 : buildingInspectionSummary.fail) || 0,
103
- reWait: (buildingInspectionSummary === null || buildingInspectionSummary === void 0 ? void 0 : buildingInspectionSummary.reWait) || 0
104
- };
105
- }
106
- // 층 별로 검수 개수 써머리
107
- async buildingInspectionDateSummaryOfLevelAndPeriod(buildingLevelId, startDate, endDate, context) {
108
- const buildingInspectionSummary = await (0, shell_1.getRepository)(building_inspection_1.BuildingInspection)
109
- .createQueryBuilder('bi')
110
- .select(`TO_CHAR(bi.request_date, 'YYYY-MM-DD') AS "requestDate"`)
111
- .addSelect(`COUNT(CASE WHEN (bi.status='${building_inspection_1.BuildingInspectionStatus.WAIT}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_WAIT}') AND (bi.fail_count = 0 OR bi.fail_count IS NULL) THEN 1 ELSE NULL END) AS wait`)
112
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.REQUEST}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`)
113
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)
114
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)
115
- .addSelect(`COUNT(CASE WHEN (bi.status='${building_inspection_1.BuildingInspectionStatus.WAIT}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_WAIT}') AND bi.fail_count > 0 THEN 1 ELSE NULL END) AS "reWait"`)
116
- .where('bi.building_level_id = :buildingLevelId', { buildingLevelId })
117
- .andWhere('bi.request_date >= :startDate::date', { startDate })
118
- .andWhere('bi.request_date < (:endDate::date + interval \'1 day\')', { endDate })
119
- .andWhere('bi.project_type = :projectType', { projectType })
120
- .groupBy('bi.building_level_id')
121
- .addGroupBy(`TO_CHAR(bi.request_date, 'YYYY-MM-DD')`)
122
- .getRawMany();
123
- return buildingInspectionSummary;
124
- }
125
- // 프로젝트 별로 날짜별 검수 개수 써머리
126
- async buildingInspectionDateSummaryOfProject(projectId, startDate, endDate, context) {
127
- const buildingInspectionSummary = await (0, shell_1.getRepository)(building_inspection_1.BuildingInspection)
128
- .createQueryBuilder('bi')
129
- .select(`TO_CHAR(bi.request_date, 'YYYY-MM-DD') AS "requestDate"`)
130
- .addSelect(`COUNT(CASE WHEN (bi.status='${building_inspection_1.BuildingInspectionStatus.WAIT}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_WAIT}') AND (bi.fail_count = 0 OR bi.fail_count IS NULL) THEN 1 ELSE NULL END) AS wait`)
131
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.REQUEST}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`)
132
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)
133
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)
134
- .addSelect(`COUNT(CASE WHEN (bi.status='${building_inspection_1.BuildingInspectionStatus.WAIT}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_WAIT}') AND bi.fail_count > 0 THEN 1 ELSE NULL END) AS "reWait"`)
135
- .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')
136
- .innerJoin('buildings', 'b', 'bl.building_id = b.id')
137
- .innerJoin('building_complexes', 'bc', 'b.building_complex_id = bc.id')
138
- .innerJoin('projects', 'p', 'bc.id = p.building_complex_id')
139
- .where('p.id = :projectId', { projectId })
140
- .andWhere('bi.request_date >= :startDate::date', { startDate })
141
- .andWhere('bi.request_date < (:endDate::date + interval \'1 day\')', { endDate })
142
- .andWhere('bi.project_type = :projectType', { projectType })
143
- .groupBy(`TO_CHAR(bi.request_date, 'YYYY-MM-DD')`)
144
- .getRawMany();
145
- return buildingInspectionSummary;
146
- }
147
- // 동 별로 검수 개수 써머리
148
- async buildingInspectionSummaryOfBuilding(buildingId, context) {
149
- const result = await (0, shell_1.getRepository)(building_inspection_1.BuildingInspection)
150
- .createQueryBuilder('bi')
151
- .select(`COUNT(CASE WHEN (bi.status='${building_inspection_1.BuildingInspectionStatus.WAIT}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_WAIT}') AND (bi.fail_count = 0 OR bi.fail_count IS NULL) THEN 1 ELSE NULL END) AS wait`)
152
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.REQUEST}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`)
153
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)
154
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)
155
- .addSelect(`COUNT(CASE WHEN (bi.status='${building_inspection_1.BuildingInspectionStatus.WAIT}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_WAIT}') AND bi.fail_count > 0 THEN 1 ELSE NULL END) AS "reWait"`)
156
- .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')
157
- .where('bl.building_id = :buildingId', { buildingId })
158
- .andWhere('bi.project_type = :projectType', { projectType })
159
- .getRawOne();
160
- return {
161
- wait: (result === null || result === void 0 ? void 0 : result.wait) || 0,
162
- request: (result === null || result === void 0 ? void 0 : result.request) || 0,
163
- pass: (result === null || result === void 0 ? void 0 : result.pass) || 0,
164
- fail: (result === null || result === void 0 ? void 0 : result.fail) || 0,
165
- reWait: (result === null || result === void 0 ? void 0 : result.reWait) || 0
166
- };
167
- }
168
- // 동 별로 날짜별 검수 개수 써머리
169
- async buildingInspectionDateSummaryOfBuilding(buildingId, startDate, endDate, context) {
170
- const buildingInspectionSummary = await (0, shell_1.getRepository)(building_inspection_1.BuildingInspection)
171
- .createQueryBuilder('bi')
172
- .select(`TO_CHAR(bi.request_date, 'YYYY-MM-DD') AS "requestDate"`)
173
- .addSelect(`COUNT(CASE WHEN (bi.status='${building_inspection_1.BuildingInspectionStatus.WAIT}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_WAIT}') AND (bi.fail_count = 0 OR bi.fail_count IS NULL) THEN 1 ELSE NULL END) AS wait`)
174
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.REQUEST}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`)
175
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)
176
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)
177
- .addSelect(`COUNT(CASE WHEN (bi.status='${building_inspection_1.BuildingInspectionStatus.WAIT}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_WAIT}') AND bi.fail_count > 0 THEN 1 ELSE NULL END) AS "reWait"`)
178
- .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')
179
- .where('bl.building_id = :buildingId', { buildingId })
180
- .andWhere('bi.request_date >= :startDate::date', { startDate })
181
- .andWhere('bi.request_date < (:endDate::date + interval \'1 day\')', { endDate })
182
- .andWhere('bi.project_type = :projectType', { projectType })
183
- .groupBy(`TO_CHAR(bi.request_date, 'YYYY-MM-DD')`)
184
- .getRawMany();
185
- return buildingInspectionSummary;
186
- }
187
- // 동 별로 검측 목록
188
- async buildingInspectionsOfBuilding(params, context) {
189
- const { buildingId, limit } = params;
190
- const queryBuilder = (0, shell_1.getRepository)(building_inspection_1.BuildingInspection)
191
- .createQueryBuilder('bi')
192
- .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')
193
- .innerJoin('checklists', 'c', 'bi.checklist_id = c.id')
194
- .where('bl.building_id = :buildingId', { buildingId })
195
- .andWhere('bi.project_type = :projectType', { projectType })
196
- .orderBy('bi.updatedAt', 'DESC');
197
- if (limit) {
198
- queryBuilder.limit(limit);
199
- }
200
- const [items, total] = await queryBuilder.getManyAndCount();
201
- return { items, total };
202
- }
203
- // 층 별로 검수 개수 써머리
204
- async buildingInspectionSummary(buildingLevel) {
205
- const buildingInspectionSummary = await (0, shell_1.getRepository)(building_inspection_1.BuildingInspection)
206
- .createQueryBuilder('bi')
207
- .select(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.WAIT}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_WAIT}' THEN 1 ELSE NULL END) AS wait`)
208
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.REQUEST}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`)
209
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)
210
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)
211
- .where('bi.building_level_id = :buildingLevelId', { buildingLevelId: buildingLevel.id })
212
- .andWhere('bi.project_type = :projectType', { projectType })
213
- .groupBy('bi.building_level_id')
214
- .getRawOne();
215
- return {
216
- wait: (buildingInspectionSummary === null || buildingInspectionSummary === void 0 ? void 0 : buildingInspectionSummary.wait) || 0,
217
- request: (buildingInspectionSummary === null || buildingInspectionSummary === void 0 ? void 0 : buildingInspectionSummary.request) || 0,
218
- pass: (buildingInspectionSummary === null || buildingInspectionSummary === void 0 ? void 0 : buildingInspectionSummary.pass) || 0,
219
- fail: (buildingInspectionSummary === null || buildingInspectionSummary === void 0 ? void 0 : buildingInspectionSummary.fail) || 0
220
- };
221
- }
222
- async buildingInspectionSummaryOfProject(projectId) {
223
- const result = await (0, shell_1.getRepository)(building_inspection_1.BuildingInspection)
224
- .createQueryBuilder('bi')
225
- .select(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.WAIT}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_WAIT}' THEN 1 ELSE NULL END) AS wait`)
226
- .addSelect(`COUNT(CASE WHEN bi.status='${building_inspection_1.BuildingInspectionStatus.REQUEST}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`)
227
- .addSelect(`COUNT(CASE WHEN bi.status = '${building_inspection_1.BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)
228
- .addSelect(`COUNT(CASE WHEN bi.status = '${building_inspection_1.BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)
229
- .addSelect(`COUNT(CASE WHEN (bi.status='${building_inspection_1.BuildingInspectionStatus.WAIT}' OR bi.status='${building_inspection_1.BuildingInspectionStatus.OVERALL_WAIT}') AND bi.fail_count > 0 THEN 1 ELSE NULL END) AS "reWait"`)
230
- .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')
231
- .innerJoin('buildings', 'b', 'bl.building_id = b.id')
232
- .innerJoin('building_complexes', 'bc', 'b.building_complex_id = bc.id')
233
- .innerJoin('projects', 'p', 'bc.id = p.building_complex_id')
234
- .where('p.id = :projectId', { projectId })
235
- .andWhere('bi.project_type = :projectType', { projectType })
236
- .groupBy('p.id')
237
- .getRawOne();
238
- return {
239
- wait: (result === null || result === void 0 ? void 0 : result.wait) || 0,
240
- request: (result === null || result === void 0 ? void 0 : result.request) || 0,
241
- pass: (result === null || result === void 0 ? void 0 : result.pass) || 0,
242
- fail: (result === null || result === void 0 ? void 0 : result.fail) || 0,
243
- reWait: (result === null || result === void 0 ? void 0 : result.reWait) || 0
244
- };
245
- }
246
- async checklist(buildingInspection) {
247
- return await (0, shell_1.getRepository)(checklist_1.Checklist).findOneBy({ id: buildingInspection.checklistId });
248
- }
249
- async buildingLevel(buildingInspection) {
250
- return await (0, shell_1.getRepository)(building_complex_1.BuildingLevel).findOneBy({ id: buildingInspection.buildingLevelId });
251
- }
252
- async attachments(buildingInspection) {
253
- const attachment = await (0, shell_1.getRepository)(attachment_base_1.Attachment).find({
254
- where: {
255
- refType: building_inspection_1.BuildingInspection.name,
256
- refBy: buildingInspection.id
257
- }
258
- });
259
- return attachment;
260
- }
261
- async manager(buildingInspection) {
262
- const queryBuilder = (0, shell_1.getRepository)(auth_base_1.User)
263
- .createQueryBuilder('u')
264
- .select('m.id', 'id')
265
- .addSelect('m.phone', 'phone')
266
- .addSelect('m.position', 'position')
267
- .addSelect('u.id', 'userId')
268
- .addSelect('u.name', 'name')
269
- .addSelect('u.updated_at', 'updatedAt')
270
- .leftJoin('managers', 'm', 'u.id = m.user_id')
271
- .where('u.id = :userId', { userId: buildingInspection.managerId });
272
- return await queryBuilder.getRawOne();
273
- }
274
- };
275
- exports.BuildingInspectionQuery = BuildingInspectionQuery;
276
- tslib_1.__decorate([
277
- (0, type_graphql_1.Query)(returns => building_inspection_1.BuildingInspection, { nullable: true, description: 'To fetch a BuildingInspection' }),
278
- tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
279
- tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
280
- tslib_1.__metadata("design:type", Function),
281
- tslib_1.__metadata("design:paramtypes", [String, Object]),
282
- tslib_1.__metadata("design:returntype", Promise)
283
- ], BuildingInspectionQuery.prototype, "buildingInspection", null);
284
- tslib_1.__decorate([
285
- (0, type_graphql_1.Query)(returns => building_inspection_type_1.BuildingInspectionList, { description: 'To fetch multiple BuildingInspections' }),
286
- tslib_1.__param(0, (0, type_graphql_1.Args)()),
287
- tslib_1.__metadata("design:type", Function),
288
- tslib_1.__metadata("design:paramtypes", [shell_1.ListParam]),
289
- tslib_1.__metadata("design:returntype", Promise)
290
- ], BuildingInspectionQuery.prototype, "buildingInspections", null);
291
- tslib_1.__decorate([
292
- (0, type_graphql_1.Query)(returns => building_inspection_type_1.BuildingInspectionList, { description: 'To fetch multiple BuildingInspections' }),
293
- tslib_1.__param(0, (0, type_graphql_1.Arg)('params')),
294
- tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
295
- tslib_1.__metadata("design:type", Function),
296
- tslib_1.__metadata("design:paramtypes", [building_inspection_type_1.BuildingInspectionsOfProject, Object]),
297
- tslib_1.__metadata("design:returntype", Promise)
298
- ], BuildingInspectionQuery.prototype, "buildingInspectionsOfProject", null);
299
- tslib_1.__decorate([
300
- (0, type_graphql_1.Query)(returns => building_inspection_type_1.BuildingInspectionList, { description: 'To fetch multiple BuildingInspections' }),
301
- tslib_1.__param(0, (0, type_graphql_1.Arg)('params')),
302
- tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
303
- tslib_1.__metadata("design:type", Function),
304
- tslib_1.__metadata("design:paramtypes", [building_inspection_type_1.BuildingInspectionsOfBuildingLevel, Object]),
305
- tslib_1.__metadata("design:returntype", Promise)
306
- ], BuildingInspectionQuery.prototype, "buildingInspectionsOfBuildingLevel", null);
307
- tslib_1.__decorate([
308
- (0, type_graphql_1.Query)(returns => building_inspection_type_1.BuildingInspectionSummary, { nullable: true, description: 'To fetch a BuildingInspection Summary' }),
309
- tslib_1.__param(0, (0, type_graphql_1.Arg)('buildingLevelId')),
310
- tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
311
- tslib_1.__metadata("design:type", Function),
312
- tslib_1.__metadata("design:paramtypes", [String, Object]),
313
- tslib_1.__metadata("design:returntype", Promise)
314
- ], BuildingInspectionQuery.prototype, "buildingInspectionSummaryOfBuildingLevel", null);
315
- tslib_1.__decorate([
316
- (0, type_graphql_1.Query)(returns => [building_inspection_type_1.BuildingInspectionSummary], { nullable: true, description: 'To fetch a BuildingInspection Summary' }),
317
- tslib_1.__param(0, (0, type_graphql_1.Arg)('buildingLevelId')),
318
- tslib_1.__param(1, (0, type_graphql_1.Arg)('startDate')),
319
- tslib_1.__param(2, (0, type_graphql_1.Arg)('endDate')),
320
- tslib_1.__param(3, (0, type_graphql_1.Ctx)()),
321
- tslib_1.__metadata("design:type", Function),
322
- tslib_1.__metadata("design:paramtypes", [String, String, String, Object]),
323
- tslib_1.__metadata("design:returntype", Promise)
324
- ], BuildingInspectionQuery.prototype, "buildingInspectionDateSummaryOfLevelAndPeriod", null);
325
- tslib_1.__decorate([
326
- (0, type_graphql_1.Query)(returns => [building_inspection_type_1.BuildingInspectionSummary], { nullable: true, description: 'To fetch BuildingInspection Date Summary of Project' }),
327
- tslib_1.__param(0, (0, type_graphql_1.Arg)('projectId')),
328
- tslib_1.__param(1, (0, type_graphql_1.Arg)('startDate')),
329
- tslib_1.__param(2, (0, type_graphql_1.Arg)('endDate')),
330
- tslib_1.__param(3, (0, type_graphql_1.Ctx)()),
331
- tslib_1.__metadata("design:type", Function),
332
- tslib_1.__metadata("design:paramtypes", [String, String, String, Object]),
333
- tslib_1.__metadata("design:returntype", Promise)
334
- ], BuildingInspectionQuery.prototype, "buildingInspectionDateSummaryOfProject", null);
335
- tslib_1.__decorate([
336
- (0, type_graphql_1.Query)(returns => building_inspection_type_1.BuildingInspectionSummary, { nullable: true, description: 'To fetch BuildingInspection Summary of Building' }),
337
- tslib_1.__param(0, (0, type_graphql_1.Arg)('buildingId')),
338
- tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
339
- tslib_1.__metadata("design:type", Function),
340
- tslib_1.__metadata("design:paramtypes", [String, Object]),
341
- tslib_1.__metadata("design:returntype", Promise)
342
- ], BuildingInspectionQuery.prototype, "buildingInspectionSummaryOfBuilding", null);
343
- tslib_1.__decorate([
344
- (0, type_graphql_1.Query)(returns => [building_inspection_type_1.BuildingInspectionSummary], { nullable: true, description: 'To fetch BuildingInspection Date Summary of Building' }),
345
- tslib_1.__param(0, (0, type_graphql_1.Arg)('buildingId')),
346
- tslib_1.__param(1, (0, type_graphql_1.Arg)('startDate')),
347
- tslib_1.__param(2, (0, type_graphql_1.Arg)('endDate')),
348
- tslib_1.__param(3, (0, type_graphql_1.Ctx)()),
349
- tslib_1.__metadata("design:type", Function),
350
- tslib_1.__metadata("design:paramtypes", [String, String, String, Object]),
351
- tslib_1.__metadata("design:returntype", Promise)
352
- ], BuildingInspectionQuery.prototype, "buildingInspectionDateSummaryOfBuilding", null);
353
- tslib_1.__decorate([
354
- (0, type_graphql_1.Query)(returns => building_inspection_type_1.BuildingInspectionList, { description: 'To fetch BuildingInspections of Building' }),
355
- tslib_1.__param(0, (0, type_graphql_1.Arg)('params')),
356
- tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
357
- tslib_1.__metadata("design:type", Function),
358
- tslib_1.__metadata("design:paramtypes", [building_inspection_type_1.BuildingInspectionsOfBuilding, Object]),
359
- tslib_1.__metadata("design:returntype", Promise)
360
- ], BuildingInspectionQuery.prototype, "buildingInspectionsOfBuilding", null);
361
- tslib_1.__decorate([
362
- (0, type_graphql_1.FieldResolver)(type => building_inspection_type_1.BuildingInspectionSummary),
363
- tslib_1.__param(0, (0, type_graphql_1.Root)()),
364
- tslib_1.__metadata("design:type", Function),
365
- tslib_1.__metadata("design:paramtypes", [building_complex_1.BuildingLevel]),
366
- tslib_1.__metadata("design:returntype", Promise)
367
- ], BuildingInspectionQuery.prototype, "buildingInspectionSummary", null);
368
- tslib_1.__decorate([
369
- (0, type_graphql_1.Query)(returns => building_inspection_type_1.BuildingInspectionSummary, { description: '프로젝트의 검측상태 별 카운트' }),
370
- tslib_1.__param(0, (0, type_graphql_1.Arg)('projectId')),
371
- tslib_1.__metadata("design:type", Function),
372
- tslib_1.__metadata("design:paramtypes", [String]),
373
- tslib_1.__metadata("design:returntype", Promise)
374
- ], BuildingInspectionQuery.prototype, "buildingInspectionSummaryOfProject", null);
375
- tslib_1.__decorate([
376
- (0, type_graphql_1.FieldResolver)(type => checklist_1.Checklist),
377
- tslib_1.__param(0, (0, type_graphql_1.Root)()),
378
- tslib_1.__metadata("design:type", Function),
379
- tslib_1.__metadata("design:paramtypes", [building_inspection_1.BuildingInspection]),
380
- tslib_1.__metadata("design:returntype", Promise)
381
- ], BuildingInspectionQuery.prototype, "checklist", null);
382
- tslib_1.__decorate([
383
- (0, type_graphql_1.FieldResolver)(type => building_complex_1.BuildingLevel),
384
- tslib_1.__param(0, (0, type_graphql_1.Root)()),
385
- tslib_1.__metadata("design:type", Function),
386
- tslib_1.__metadata("design:paramtypes", [building_inspection_1.BuildingInspection]),
387
- tslib_1.__metadata("design:returntype", Promise)
388
- ], BuildingInspectionQuery.prototype, "buildingLevel", null);
389
- tslib_1.__decorate([
390
- (0, type_graphql_1.FieldResolver)(type => [attachment_base_1.Attachment]),
391
- tslib_1.__param(0, (0, type_graphql_1.Root)()),
392
- tslib_1.__metadata("design:type", Function),
393
- tslib_1.__metadata("design:paramtypes", [building_inspection_1.BuildingInspection]),
394
- tslib_1.__metadata("design:returntype", Promise)
395
- ], BuildingInspectionQuery.prototype, "attachments", null);
396
- tslib_1.__decorate([
397
- (0, type_graphql_1.FieldResolver)(type => building_inspection_type_1.ProjectManagerOutput),
398
- tslib_1.__param(0, (0, type_graphql_1.Root)()),
399
- tslib_1.__metadata("design:type", Function),
400
- tslib_1.__metadata("design:paramtypes", [building_inspection_1.BuildingInspection]),
401
- tslib_1.__metadata("design:returntype", Promise)
402
- ], BuildingInspectionQuery.prototype, "manager", null);
403
- exports.BuildingInspectionQuery = BuildingInspectionQuery = tslib_1.__decorate([
404
- (0, type_graphql_1.Resolver)(building_inspection_1.BuildingInspection)
405
- ], BuildingInspectionQuery);
406
- //# sourceMappingURL=building-inspection-query.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"building-inspection-query.js","sourceRoot":"","sources":["../../../server/service/building-inspection/building-inspection-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Resolver, Query, FieldResolver, Root, Arg, Args, Ctx } from 'type-graphql'\nimport { Attachment } from '@things-factory/attachment-base'\nimport { getRepository, getQueryBuilderFromListParams, ListParam } from '@things-factory/shell'\nimport { BuildingInspection, BuildingInspectionStatus, ProjectType } from './building-inspection'\nimport {\n BuildingInspectionList,\n BuildingInspectionsOfBuilding,\n BuildingInspectionsOfBuildingLevel,\n BuildingInspectionsOfProject,\n BuildingInspectionSummary,\n ProjectManagerOutput\n} from './building-inspection-type'\nimport { BuildingLevel } from '@dssp/building-complex'\nimport { Checklist } from '../checklist/checklist'\nimport { config } from '@things-factory/env'\nimport { User } from '@things-factory/auth-base'\n\nconst projectType = config.get('projectType', ProjectType.DSSP)\n\n@Resolver(BuildingInspection)\nexport class BuildingInspectionQuery {\n @Query(returns => BuildingInspection!, { nullable: true, description: 'To fetch a BuildingInspection' })\n async buildingInspection(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<BuildingInspection> {\n return await getRepository(BuildingInspection).findOne({\n where: { id, projectType }\n })\n }\n\n @Query(returns => BuildingInspectionList, { description: 'To fetch multiple BuildingInspections' })\n async buildingInspections(@Args() params: ListParam): Promise<BuildingInspectionList> {\n const queryBuilder = getQueryBuilderFromListParams({\n params,\n repository: await getRepository(BuildingInspection),\n searchables: ['name']\n }).andWhere('project_type = :projectType', { projectType })\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @Query(returns => BuildingInspectionList, { description: 'To fetch multiple BuildingInspections' })\n async buildingInspectionsOfProject(\n @Arg('params') params: BuildingInspectionsOfProject,\n @Ctx() context: ResolverContext\n ): Promise<BuildingInspectionList> {\n const { projectId, limit, statusFilter } = params\n\n const queryBuilder = getRepository(BuildingInspection)\n .createQueryBuilder('bi')\n .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')\n .innerJoin('buildings', 'b', 'bl.building_id = b.id')\n .innerJoin('building_complexes', 'bc', 'b.building_complex_id = bc.id')\n .innerJoin('projects', 'p', 'bc.id = p.building_complex_id')\n .innerJoin('checklists', 'c', 'bi.checklist_id = c.id')\n .where('bi.project_type = :projectType', { projectType })\n .andWhere('p.id = :projectId', { projectId })\n\n // 상태 필터\n if (statusFilter === 'WAIT') {\n queryBuilder.andWhere(\"bi.status IN ('WAIT', 'OVERALL_WAIT')\").andWhere('(bi.fail_count = 0 OR bi.fail_count IS NULL)')\n } else if (statusFilter === 'RE_WAIT') {\n queryBuilder.andWhere(\"bi.status IN ('WAIT', 'OVERALL_WAIT')\").andWhere('bi.fail_count > 0')\n } else if (statusFilter === 'REQUEST') {\n queryBuilder.andWhere(\"bi.status IN ('REQUEST', 'OVERALL_REQUEST')\")\n } else if (statusFilter === 'FAIL') {\n queryBuilder.andWhere(\"bi.status = 'FAIL'\")\n } else if (statusFilter === 'PASS') {\n queryBuilder.andWhere(\"bi.status = 'PASS'\")\n }\n\n queryBuilder.orderBy('bi.createdAt', 'DESC')\n\n if (limit) {\n queryBuilder.limit(limit)\n }\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @Query(returns => BuildingInspectionList, { description: 'To fetch multiple BuildingInspections' })\n async buildingInspectionsOfBuildingLevel(\n @Arg('params') params: BuildingInspectionsOfBuildingLevel,\n @Ctx() context: ResolverContext\n ): Promise<BuildingInspectionList> {\n const { buildingLevelId, limit, startDate, endDate } = params\n\n const queryBuilder = getRepository(BuildingInspection)\n .createQueryBuilder('bi')\n .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')\n .innerJoin('checklists', 'c', 'bi.checklist_id = c.id')\n .where('bl.id = :buildingLevelId', { buildingLevelId })\n .andWhere('bi.project_type = :projectType', { projectType })\n .orderBy('bi.updatedAt', 'DESC')\n\n if (startDate) {\n queryBuilder.andWhere('bi.request_date >= :startDate::date', { startDate })\n }\n\n if (endDate) {\n queryBuilder.andWhere('bi.request_date < (:endDate::date + interval \\'1 day\\')', { endDate })\n }\n\n if (limit) {\n queryBuilder.limit(limit)\n }\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n // 층 별로 검수 개수 써머리\n @Query(returns => BuildingInspectionSummary!, { nullable: true, description: 'To fetch a BuildingInspection Summary' })\n async buildingInspectionSummaryOfBuildingLevel(\n @Arg('buildingLevelId') buildingLevelId: string,\n @Ctx() context: ResolverContext\n ): Promise<BuildingInspectionSummary> {\n const buildingInspectionSummary = await getRepository(BuildingInspection)\n .createQueryBuilder('bi')\n .select(\n `COUNT(CASE WHEN (bi.status='${BuildingInspectionStatus.WAIT}' OR bi.status='${BuildingInspectionStatus.OVERALL_WAIT}') AND (bi.fail_count = 0 OR bi.fail_count IS NULL) THEN 1 ELSE NULL END) AS wait`\n )\n .addSelect(\n `COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.REQUEST}' OR bi.status='${BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`\n )\n .addSelect(`COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)\n .addSelect(`COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)\n .addSelect(\n `COUNT(CASE WHEN (bi.status='${BuildingInspectionStatus.WAIT}' OR bi.status='${BuildingInspectionStatus.OVERALL_WAIT}') AND bi.fail_count > 0 THEN 1 ELSE NULL END) AS \"reWait\"`\n )\n .where('bi.building_level_id = :buildingLevelId', { buildingLevelId })\n .andWhere('bi.project_type = :projectType', { projectType })\n .groupBy('bi.building_level_id')\n .getRawOne()\n\n return {\n wait: buildingInspectionSummary?.wait || 0,\n request: buildingInspectionSummary?.request || 0,\n pass: buildingInspectionSummary?.pass || 0,\n fail: buildingInspectionSummary?.fail || 0,\n reWait: buildingInspectionSummary?.reWait || 0\n }\n }\n\n // 층 별로 검수 개수 써머리\n @Query(returns => [BuildingInspectionSummary]!, { nullable: true, description: 'To fetch a BuildingInspection Summary' })\n async buildingInspectionDateSummaryOfLevelAndPeriod(\n @Arg('buildingLevelId') buildingLevelId: string,\n @Arg('startDate') startDate: string,\n @Arg('endDate') endDate: string,\n @Ctx() context: ResolverContext\n ): Promise<BuildingInspectionSummary[]> {\n const buildingInspectionSummary = await getRepository(BuildingInspection)\n .createQueryBuilder('bi')\n .select(`TO_CHAR(bi.request_date, 'YYYY-MM-DD') AS \"requestDate\"`)\n .addSelect(\n `COUNT(CASE WHEN (bi.status='${BuildingInspectionStatus.WAIT}' OR bi.status='${BuildingInspectionStatus.OVERALL_WAIT}') AND (bi.fail_count = 0 OR bi.fail_count IS NULL) THEN 1 ELSE NULL END) AS wait`\n )\n .addSelect(\n `COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.REQUEST}' OR bi.status='${BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`\n )\n .addSelect(`COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)\n .addSelect(`COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)\n .addSelect(\n `COUNT(CASE WHEN (bi.status='${BuildingInspectionStatus.WAIT}' OR bi.status='${BuildingInspectionStatus.OVERALL_WAIT}') AND bi.fail_count > 0 THEN 1 ELSE NULL END) AS \"reWait\"`\n )\n .where('bi.building_level_id = :buildingLevelId', { buildingLevelId })\n .andWhere('bi.request_date >= :startDate::date', { startDate })\n .andWhere('bi.request_date < (:endDate::date + interval \\'1 day\\')', { endDate })\n .andWhere('bi.project_type = :projectType', { projectType })\n .groupBy('bi.building_level_id')\n .addGroupBy(`TO_CHAR(bi.request_date, 'YYYY-MM-DD')`)\n .getRawMany()\n\n return buildingInspectionSummary\n }\n\n // 프로젝트 별로 날짜별 검수 개수 써머리\n @Query(returns => [BuildingInspectionSummary]!, { nullable: true, description: 'To fetch BuildingInspection Date Summary of Project' })\n async buildingInspectionDateSummaryOfProject(\n @Arg('projectId') projectId: string,\n @Arg('startDate') startDate: string,\n @Arg('endDate') endDate: string,\n @Ctx() context: ResolverContext\n ): Promise<BuildingInspectionSummary[]> {\n const buildingInspectionSummary = await getRepository(BuildingInspection)\n .createQueryBuilder('bi')\n .select(`TO_CHAR(bi.request_date, 'YYYY-MM-DD') AS \"requestDate\"`)\n .addSelect(\n `COUNT(CASE WHEN (bi.status='${BuildingInspectionStatus.WAIT}' OR bi.status='${BuildingInspectionStatus.OVERALL_WAIT}') AND (bi.fail_count = 0 OR bi.fail_count IS NULL) THEN 1 ELSE NULL END) AS wait`\n )\n .addSelect(\n `COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.REQUEST}' OR bi.status='${BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`\n )\n .addSelect(`COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)\n .addSelect(`COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)\n .addSelect(\n `COUNT(CASE WHEN (bi.status='${BuildingInspectionStatus.WAIT}' OR bi.status='${BuildingInspectionStatus.OVERALL_WAIT}') AND bi.fail_count > 0 THEN 1 ELSE NULL END) AS \"reWait\"`\n )\n .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')\n .innerJoin('buildings', 'b', 'bl.building_id = b.id')\n .innerJoin('building_complexes', 'bc', 'b.building_complex_id = bc.id')\n .innerJoin('projects', 'p', 'bc.id = p.building_complex_id')\n .where('p.id = :projectId', { projectId })\n .andWhere('bi.request_date >= :startDate::date', { startDate })\n .andWhere('bi.request_date < (:endDate::date + interval \\'1 day\\')', { endDate })\n .andWhere('bi.project_type = :projectType', { projectType })\n .groupBy(`TO_CHAR(bi.request_date, 'YYYY-MM-DD')`)\n .getRawMany()\n\n return buildingInspectionSummary\n }\n\n // 동 별로 검수 개수 써머리\n @Query(returns => BuildingInspectionSummary!, { nullable: true, description: 'To fetch BuildingInspection Summary of Building' })\n async buildingInspectionSummaryOfBuilding(\n @Arg('buildingId') buildingId: string,\n @Ctx() context: ResolverContext\n ): Promise<BuildingInspectionSummary> {\n const result = await getRepository(BuildingInspection)\n .createQueryBuilder('bi')\n .select(\n `COUNT(CASE WHEN (bi.status='${BuildingInspectionStatus.WAIT}' OR bi.status='${BuildingInspectionStatus.OVERALL_WAIT}') AND (bi.fail_count = 0 OR bi.fail_count IS NULL) THEN 1 ELSE NULL END) AS wait`\n )\n .addSelect(\n `COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.REQUEST}' OR bi.status='${BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`\n )\n .addSelect(`COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)\n .addSelect(`COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)\n .addSelect(\n `COUNT(CASE WHEN (bi.status='${BuildingInspectionStatus.WAIT}' OR bi.status='${BuildingInspectionStatus.OVERALL_WAIT}') AND bi.fail_count > 0 THEN 1 ELSE NULL END) AS \"reWait\"`\n )\n .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')\n .where('bl.building_id = :buildingId', { buildingId })\n .andWhere('bi.project_type = :projectType', { projectType })\n .getRawOne()\n\n return {\n wait: result?.wait || 0,\n request: result?.request || 0,\n pass: result?.pass || 0,\n fail: result?.fail || 0,\n reWait: result?.reWait || 0\n }\n }\n\n // 동 별로 날짜별 검수 개수 써머리\n @Query(returns => [BuildingInspectionSummary]!, { nullable: true, description: 'To fetch BuildingInspection Date Summary of Building' })\n async buildingInspectionDateSummaryOfBuilding(\n @Arg('buildingId') buildingId: string,\n @Arg('startDate') startDate: string,\n @Arg('endDate') endDate: string,\n @Ctx() context: ResolverContext\n ): Promise<BuildingInspectionSummary[]> {\n const buildingInspectionSummary = await getRepository(BuildingInspection)\n .createQueryBuilder('bi')\n .select(`TO_CHAR(bi.request_date, 'YYYY-MM-DD') AS \"requestDate\"`)\n .addSelect(\n `COUNT(CASE WHEN (bi.status='${BuildingInspectionStatus.WAIT}' OR bi.status='${BuildingInspectionStatus.OVERALL_WAIT}') AND (bi.fail_count = 0 OR bi.fail_count IS NULL) THEN 1 ELSE NULL END) AS wait`\n )\n .addSelect(\n `COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.REQUEST}' OR bi.status='${BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`\n )\n .addSelect(`COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)\n .addSelect(`COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)\n .addSelect(\n `COUNT(CASE WHEN (bi.status='${BuildingInspectionStatus.WAIT}' OR bi.status='${BuildingInspectionStatus.OVERALL_WAIT}') AND bi.fail_count > 0 THEN 1 ELSE NULL END) AS \"reWait\"`\n )\n .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')\n .where('bl.building_id = :buildingId', { buildingId })\n .andWhere('bi.request_date >= :startDate::date', { startDate })\n .andWhere('bi.request_date < (:endDate::date + interval \\'1 day\\')', { endDate })\n .andWhere('bi.project_type = :projectType', { projectType })\n .groupBy(`TO_CHAR(bi.request_date, 'YYYY-MM-DD')`)\n .getRawMany()\n\n return buildingInspectionSummary\n }\n\n // 동 별로 검측 목록\n @Query(returns => BuildingInspectionList, { description: 'To fetch BuildingInspections of Building' })\n async buildingInspectionsOfBuilding(\n @Arg('params') params: BuildingInspectionsOfBuilding,\n @Ctx() context: ResolverContext\n ): Promise<BuildingInspectionList> {\n const { buildingId, limit } = params\n\n const queryBuilder = getRepository(BuildingInspection)\n .createQueryBuilder('bi')\n .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')\n .innerJoin('checklists', 'c', 'bi.checklist_id = c.id')\n .where('bl.building_id = :buildingId', { buildingId })\n .andWhere('bi.project_type = :projectType', { projectType })\n .orderBy('bi.updatedAt', 'DESC')\n\n if (limit) {\n queryBuilder.limit(limit)\n }\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n // 층 별로 검수 개수 써머리\n @FieldResolver(type => BuildingInspectionSummary)\n async buildingInspectionSummary(@Root() buildingLevel: BuildingLevel): Promise<BuildingInspectionSummary> {\n const buildingInspectionSummary = await getRepository(BuildingInspection)\n .createQueryBuilder('bi')\n .select(\n `COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.WAIT}' OR bi.status='${BuildingInspectionStatus.OVERALL_WAIT}' THEN 1 ELSE NULL END) AS wait`\n )\n .addSelect(\n `COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.REQUEST}' OR bi.status='${BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`\n )\n .addSelect(`COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)\n .addSelect(`COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)\n .where('bi.building_level_id = :buildingLevelId', { buildingLevelId: buildingLevel.id })\n .andWhere('bi.project_type = :projectType', { projectType })\n .groupBy('bi.building_level_id')\n .getRawOne()\n\n return {\n wait: buildingInspectionSummary?.wait || 0,\n request: buildingInspectionSummary?.request || 0,\n pass: buildingInspectionSummary?.pass || 0,\n fail: buildingInspectionSummary?.fail || 0\n }\n }\n\n @Query(returns => BuildingInspectionSummary, { description: '프로젝트의 검측상태 별 카운트' })\n async buildingInspectionSummaryOfProject(@Arg('projectId') projectId: string): Promise<BuildingInspectionSummary> {\n const result = await getRepository(BuildingInspection)\n .createQueryBuilder('bi')\n .select(\n `COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.WAIT}' OR bi.status='${BuildingInspectionStatus.OVERALL_WAIT}' THEN 1 ELSE NULL END) AS wait`\n )\n .addSelect(\n `COUNT(CASE WHEN bi.status='${BuildingInspectionStatus.REQUEST}' OR bi.status='${BuildingInspectionStatus.OVERALL_REQUEST}' THEN 1 ELSE NULL END) AS request`\n )\n .addSelect(`COUNT(CASE WHEN bi.status = '${BuildingInspectionStatus.PASS}' THEN 1 ELSE NULL END) AS pass`)\n .addSelect(`COUNT(CASE WHEN bi.status = '${BuildingInspectionStatus.FAIL}' THEN 1 ELSE NULL END) AS fail`)\n .addSelect(\n `COUNT(CASE WHEN (bi.status='${BuildingInspectionStatus.WAIT}' OR bi.status='${BuildingInspectionStatus.OVERALL_WAIT}') AND bi.fail_count > 0 THEN 1 ELSE NULL END) AS \"reWait\"`\n )\n .innerJoin('building_levels', 'bl', 'bi.building_level_id = bl.id')\n .innerJoin('buildings', 'b', 'bl.building_id = b.id')\n .innerJoin('building_complexes', 'bc', 'b.building_complex_id = bc.id')\n .innerJoin('projects', 'p', 'bc.id = p.building_complex_id')\n .where('p.id = :projectId', { projectId })\n .andWhere('bi.project_type = :projectType', { projectType })\n .groupBy('p.id')\n .getRawOne()\n\n return {\n wait: result?.wait || 0,\n request: result?.request || 0,\n pass: result?.pass || 0,\n fail: result?.fail || 0,\n reWait: result?.reWait || 0\n }\n }\n\n @FieldResolver(type => Checklist)\n async checklist(@Root() buildingInspection: BuildingInspection): Promise<Checklist> {\n return await getRepository(Checklist).findOneBy({ id: buildingInspection.checklistId })\n }\n\n @FieldResolver(type => BuildingLevel)\n async buildingLevel(@Root() buildingInspection: BuildingInspection): Promise<BuildingLevel> {\n return await getRepository(BuildingLevel).findOneBy({ id: buildingInspection.buildingLevelId })\n }\n\n @FieldResolver(type => [Attachment])\n async attachments(@Root() buildingInspection: BuildingInspection): Promise<Attachment[] | undefined> {\n const attachment: Attachment[] = await getRepository(Attachment).find({\n where: {\n refType: BuildingInspection.name,\n refBy: buildingInspection.id\n }\n })\n\n return attachment\n }\n\n @FieldResolver(type => ProjectManagerOutput)\n async manager(@Root() buildingInspection: BuildingInspection): Promise<ProjectManagerOutput> {\n const queryBuilder = getRepository(User)\n .createQueryBuilder('u')\n .select('m.id', 'id')\n .addSelect('m.phone', 'phone')\n .addSelect('m.position', 'position')\n .addSelect('u.id', 'userId')\n .addSelect('u.name', 'name')\n .addSelect('u.updated_at', 'updatedAt')\n .leftJoin('managers', 'm', 'u.id = m.user_id')\n .where('u.id = :userId', { userId: buildingInspection.managerId })\n\n return await queryBuilder.getRawOne()\n }\n}\n"]}