@dssp/project 1.0.0-alpha.0 → 1.0.0-alpha.14

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 (259) hide show
  1. package/dist-client/pages/lib/select2-component.js +1 -1
  2. package/dist-client/pages/lib/select2-component.js.map +1 -1
  3. package/dist-client/pages/lib/waether.d.ts +2 -1
  4. package/dist-client/pages/lib/waether.js +7 -3
  5. package/dist-client/pages/lib/waether.js.map +1 -1
  6. package/dist-client/pages/project/component/project-update-header.js.map +1 -1
  7. package/dist-client/pages/project/popup/checklist/attachment-list-popup.d.ts +1 -0
  8. package/dist-client/pages/project/popup/checklist/attachment-list-popup.js +309 -0
  9. package/dist-client/pages/project/popup/checklist/attachment-list-popup.js.map +1 -0
  10. package/dist-client/pages/project/popup/checklist/comment-list-popup.d.ts +1 -0
  11. package/dist-client/pages/project/popup/checklist/comment-list-popup.js +357 -0
  12. package/dist-client/pages/project/popup/checklist/comment-list-popup.js.map +1 -0
  13. package/dist-client/pages/project/popup/checklist/schedule-checklist-create-popup.d.ts +2 -0
  14. package/dist-client/pages/project/popup/checklist/schedule-checklist-create-popup.js +684 -0
  15. package/dist-client/pages/project/popup/checklist/schedule-checklist-create-popup.js.map +1 -0
  16. package/dist-client/pages/project/popup/checklist/schedule-checklist-view.d.ts +37 -0
  17. package/dist-client/pages/project/popup/checklist/schedule-checklist-view.js +627 -0
  18. package/dist-client/pages/project/popup/checklist/schedule-checklist-view.js.map +1 -0
  19. package/dist-client/pages/project/popup/popup-plan-export.d.ts +10 -0
  20. package/dist-client/pages/project/popup/popup-plan-export.js +236 -0
  21. package/dist-client/pages/project/popup/popup-plan-export.js.map +1 -0
  22. package/dist-client/pages/project/popup/popup-plan-upload.d.ts +3 -0
  23. package/dist-client/pages/project/popup/popup-plan-upload.js +130 -4
  24. package/dist-client/pages/project/popup/popup-plan-upload.js.map +1 -1
  25. package/dist-client/pages/project/popup/popup-project-create.js.map +1 -1
  26. package/dist-client/pages/project/popup/popup-schedule-upload.js.map +1 -1
  27. package/dist-client/pages/project/project-completed-list.js +0 -1
  28. package/dist-client/pages/project/project-completed-list.js.map +1 -1
  29. package/dist-client/pages/project/project-detail.d.ts +2 -1
  30. package/dist-client/pages/project/project-detail.js +269 -80
  31. package/dist-client/pages/project/project-detail.js.map +1 -1
  32. package/dist-client/pages/project/project-list.d.ts +12 -0
  33. package/dist-client/pages/project/project-list.js +15 -8
  34. package/dist-client/pages/project/project-list.js.map +1 -1
  35. package/dist-client/pages/project/project-plan-management.js +29 -13
  36. package/dist-client/pages/project/project-plan-management.js.map +1 -1
  37. package/dist-client/pages/project/project-schedule-list.js.map +1 -1
  38. package/dist-client/pages/project/project-schedule.d.ts +2 -0
  39. package/dist-client/pages/project/project-schedule.js +16 -1
  40. package/dist-client/pages/project/project-schedule.js.map +1 -1
  41. package/dist-client/pages/project/project-setting-list.js +25 -24
  42. package/dist-client/pages/project/project-setting-list.js.map +1 -1
  43. package/dist-client/pages/project/project-update.d.ts +1 -0
  44. package/dist-client/pages/project/project-update.js +128 -17
  45. package/dist-client/pages/project/project-update.js.map +1 -1
  46. package/dist-client/pages/resource/construction-detail-type-popup.js.map +1 -1
  47. package/dist-client/pages/resource/construction-type-management.js.map +1 -1
  48. package/dist-client/pages/resource/inspection-drawing-type-management.js.map +1 -1
  49. package/dist-client/pages/resource/inspection-part-popup.js.map +1 -1
  50. package/dist-client/pages/resource/resource-importer.js.map +1 -1
  51. package/dist-client/pages/resource/resource-list-page.js.map +1 -1
  52. package/dist-client/pages/resource/worker-type-management.js.map +1 -1
  53. package/dist-client/pages/task/task-importer.js.map +1 -1
  54. package/dist-client/pages/task/task-list-page.js.map +1 -1
  55. package/dist-client/pages/task-resource/task-resource-importer.js.map +1 -1
  56. package/dist-client/pages/task-resource/task-resource-list-page.js.map +1 -1
  57. package/dist-client/route.js.map +1 -1
  58. package/dist-client/tsconfig.tsbuildinfo +1 -1
  59. package/dist-server/controllers/export-tasks.js +1 -2
  60. package/dist-server/controllers/export-tasks.js.map +1 -1
  61. package/dist-server/controllers/import-task.js +1 -2
  62. package/dist-server/controllers/import-task.js.map +1 -1
  63. package/dist-server/controllers/parse-excel.d.ts +0 -2
  64. package/dist-server/controllers/parse-excel.js +1 -2
  65. package/dist-server/controllers/parse-excel.js.map +1 -1
  66. package/dist-server/middlewares/index.js +1 -2
  67. package/dist-server/middlewares/index.js.map +1 -1
  68. package/dist-server/migrations/1723861466413-seed-roles.js.map +1 -1
  69. package/dist-server/migrations/1723861466414-seed-codes.js.map +1 -1
  70. package/dist-server/migrations/1723861476419-seed-resources.js.map +1 -1
  71. package/dist-server/migrations/1723861478420-seed-/bsample-project.js.map +1 -1
  72. package/dist-server/migrations/1723861478421-seed-/bsample-tasks.js.map +1 -1
  73. package/dist-server/service/construction-detail-type/construction-detail-type-mutation.js +2 -2
  74. package/dist-server/service/construction-detail-type/construction-detail-type-mutation.js.map +1 -1
  75. package/dist-server/service/construction-detail-type/construction-detail-type-query.js +2 -2
  76. package/dist-server/service/construction-detail-type/construction-detail-type-query.js.map +1 -1
  77. package/dist-server/service/construction-detail-type/construction-detail-type-type.js +4 -4
  78. package/dist-server/service/construction-detail-type/construction-detail-type-type.js.map +1 -1
  79. package/dist-server/service/construction-detail-type/construction-detail-type.js +2 -2
  80. package/dist-server/service/construction-detail-type/construction-detail-type.js.map +1 -1
  81. package/dist-server/service/construction-type/construction-type-mutation.js +2 -2
  82. package/dist-server/service/construction-type/construction-type-mutation.js.map +1 -1
  83. package/dist-server/service/construction-type/construction-type-query.js +2 -2
  84. package/dist-server/service/construction-type/construction-type-query.js.map +1 -1
  85. package/dist-server/service/construction-type/construction-type-type.js +4 -4
  86. package/dist-server/service/construction-type/construction-type-type.js.map +1 -1
  87. package/dist-server/service/construction-type/construction-type.js +2 -2
  88. package/dist-server/service/construction-type/construction-type.js.map +1 -1
  89. package/dist-server/service/index.d.ts +1 -0
  90. package/dist-server/service/index.js +1 -0
  91. package/dist-server/service/index.js.map +1 -1
  92. package/dist-server/service/inspection-drawing-type/inspection-drawing-type-mutation.js +2 -2
  93. package/dist-server/service/inspection-drawing-type/inspection-drawing-type-mutation.js.map +1 -1
  94. package/dist-server/service/inspection-drawing-type/inspection-drawing-type-query.js +2 -2
  95. package/dist-server/service/inspection-drawing-type/inspection-drawing-type-query.js.map +1 -1
  96. package/dist-server/service/inspection-drawing-type/inspection-drawing-type-type.js +4 -4
  97. package/dist-server/service/inspection-drawing-type/inspection-drawing-type-type.js.map +1 -1
  98. package/dist-server/service/inspection-drawing-type/inspection-drawing-type.js +2 -2
  99. package/dist-server/service/inspection-drawing-type/inspection-drawing-type.js.map +1 -1
  100. package/dist-server/service/inspection-part/inspection-part-mutation.js +2 -2
  101. package/dist-server/service/inspection-part/inspection-part-mutation.js.map +1 -1
  102. package/dist-server/service/inspection-part/inspection-part-query.js +2 -2
  103. package/dist-server/service/inspection-part/inspection-part-query.js.map +1 -1
  104. package/dist-server/service/inspection-part/inspection-part-type.js +4 -4
  105. package/dist-server/service/inspection-part/inspection-part-type.js.map +1 -1
  106. package/dist-server/service/inspection-part/inspection-part.js +2 -2
  107. package/dist-server/service/inspection-part/inspection-part.js.map +1 -1
  108. package/dist-server/service/manager/index.d.ts +2 -0
  109. package/dist-server/service/manager/index.js +3 -1
  110. package/dist-server/service/manager/index.js.map +1 -1
  111. package/dist-server/service/manager/manager-mutation.js +2 -2
  112. package/dist-server/service/manager/manager-mutation.js.map +1 -1
  113. package/dist-server/service/manager/manager-query.js +3 -3
  114. package/dist-server/service/manager/manager-query.js.map +1 -1
  115. package/dist-server/service/manager/manager-type.js +4 -4
  116. package/dist-server/service/manager/manager-type.js.map +1 -1
  117. package/dist-server/service/manager/manager.js +2 -2
  118. package/dist-server/service/manager/manager.js.map +1 -1
  119. package/dist-server/service/project/project-mutation.d.ts +1 -0
  120. package/dist-server/service/project/project-mutation.js +109 -15
  121. package/dist-server/service/project/project-mutation.js.map +1 -1
  122. package/dist-server/service/project/project-query.d.ts +1 -0
  123. package/dist-server/service/project/project-query.js +14 -3
  124. package/dist-server/service/project/project-query.js.map +1 -1
  125. package/dist-server/service/project/project-type.d.ts +1 -0
  126. package/dist-server/service/project/project-type.js +13 -9
  127. package/dist-server/service/project/project-type.js.map +1 -1
  128. package/dist-server/service/project/project.d.ts +6 -0
  129. package/dist-server/service/project/project.js +15 -4
  130. package/dist-server/service/project/project.js.map +1 -1
  131. package/dist-server/service/resource/resource-mutation.js +2 -2
  132. package/dist-server/service/resource/resource-mutation.js.map +1 -1
  133. package/dist-server/service/resource/resource-query.js +2 -2
  134. package/dist-server/service/resource/resource-query.js.map +1 -1
  135. package/dist-server/service/resource/resource-type.js +6 -6
  136. package/dist-server/service/resource/resource-type.js.map +1 -1
  137. package/dist-server/service/resource/resource.js +3 -3
  138. package/dist-server/service/resource/resource.js.map +1 -1
  139. package/dist-server/service/task/task-mutation.js +2 -2
  140. package/dist-server/service/task/task-mutation.js.map +1 -1
  141. package/dist-server/service/task/task-query.js +4 -4
  142. package/dist-server/service/task/task-query.js.map +1 -1
  143. package/dist-server/service/task/task-type.js +10 -10
  144. package/dist-server/service/task/task-type.js.map +1 -1
  145. package/dist-server/service/task/task.js +7 -8
  146. package/dist-server/service/task/task.js.map +1 -1
  147. package/dist-server/service/task-resource/task-resource-mutation.js +2 -2
  148. package/dist-server/service/task-resource/task-resource-mutation.js.map +1 -1
  149. package/dist-server/service/task-resource/task-resource-query.js +2 -2
  150. package/dist-server/service/task-resource/task-resource-query.js.map +1 -1
  151. package/dist-server/service/task-resource/task-resource-type.js +6 -6
  152. package/dist-server/service/task-resource/task-resource-type.js.map +1 -1
  153. package/dist-server/service/task-resource/task-resource.js +2 -2
  154. package/dist-server/service/task-resource/task-resource.js.map +1 -1
  155. package/dist-server/service/worker-type/worker-type-mutation.js +2 -2
  156. package/dist-server/service/worker-type/worker-type-mutation.js.map +1 -1
  157. package/dist-server/service/worker-type/worker-type-query.js +2 -2
  158. package/dist-server/service/worker-type/worker-type-query.js.map +1 -1
  159. package/dist-server/service/worker-type/worker-type-type.js +4 -4
  160. package/dist-server/service/worker-type/worker-type-type.js.map +1 -1
  161. package/dist-server/service/worker-type/worker-type.js +2 -2
  162. package/dist-server/service/worker-type/worker-type.js.map +1 -1
  163. package/dist-server/tsconfig.tsbuildinfo +1 -1
  164. package/package.json +13 -11
  165. package/client/bootstrap.ts +0 -0
  166. package/client/index.ts +0 -0
  167. package/client/pages/lib/select2-component.ts +0 -175
  168. package/client/pages/lib/waether.ts +0 -159
  169. package/client/pages/project/component/project-update-header.ts +0 -88
  170. package/client/pages/project/popup/popup-plan-upload.ts +0 -138
  171. package/client/pages/project/popup/popup-project-create.ts +0 -147
  172. package/client/pages/project/popup/popup-schedule-upload.ts +0 -102
  173. package/client/pages/project/project-completed-list.ts +0 -281
  174. package/client/pages/project/project-detail.ts +0 -738
  175. package/client/pages/project/project-list.ts +0 -418
  176. package/client/pages/project/project-plan-management.ts +0 -476
  177. package/client/pages/project/project-schedule-list.ts +0 -294
  178. package/client/pages/project/project-schedule.ts +0 -393
  179. package/client/pages/project/project-setting-list.ts +0 -393
  180. package/client/pages/project/project-update.ts +0 -876
  181. package/client/pages/resource/construction-detail-type-popup.ts +0 -201
  182. package/client/pages/resource/construction-type-management.ts +0 -212
  183. package/client/pages/resource/inspection-drawing-type-management.ts +0 -245
  184. package/client/pages/resource/inspection-part-popup.ts +0 -201
  185. package/client/pages/resource/resource-importer.ts +0 -97
  186. package/client/pages/resource/resource-list-page.ts +0 -356
  187. package/client/pages/resource/worker-type-management.ts +0 -192
  188. package/client/pages/task/task-importer.ts +0 -94
  189. package/client/pages/task/task-list-page.ts +0 -340
  190. package/client/pages/task-resource/task-resource-importer.ts +0 -97
  191. package/client/pages/task-resource/task-resource-list-page.ts +0 -356
  192. package/client/route.ts +0 -55
  193. package/client/tsconfig.json +0 -11
  194. package/server/controllers/export-tasks.ts +0 -40
  195. package/server/controllers/import-task.ts +0 -134
  196. package/server/controllers/index.ts +0 -0
  197. package/server/controllers/parse-excel.ts +0 -86
  198. package/server/controllers/types.ts +0 -20
  199. package/server/index.ts +0 -4
  200. package/server/middlewares/index.ts +0 -3
  201. package/server/migrations/1723861466413-seed-roles.ts +0 -128
  202. package/server/migrations/1723861466414-seed-codes.ts +0 -157
  203. package/server/migrations/1723861476419-seed-resources.ts +0 -62
  204. package/server/migrations/1723861478420-seed-/bsample-project.ts +0 -87
  205. package/server/migrations/1723861478421-seed-/bsample-tasks.ts +0 -194
  206. package/server/migrations/index.ts +0 -9
  207. package/server/routes.ts +0 -108
  208. package/server/service/construction-detail-type/construction-detail-type-mutation.ts +0 -57
  209. package/server/service/construction-detail-type/construction-detail-type-query.ts +0 -31
  210. package/server/service/construction-detail-type/construction-detail-type-type.ts +0 -26
  211. package/server/service/construction-detail-type/construction-detail-type.ts +0 -52
  212. package/server/service/construction-detail-type/index.ts +0 -6
  213. package/server/service/construction-type/construction-type-mutation.ts +0 -66
  214. package/server/service/construction-type/construction-type-query.ts +0 -56
  215. package/server/service/construction-type/construction-type-type.ts +0 -26
  216. package/server/service/construction-type/construction-type.ts +0 -74
  217. package/server/service/construction-type/index.ts +0 -6
  218. package/server/service/index.ts +0 -56
  219. package/server/service/inspection-drawing-type/index.ts +0 -6
  220. package/server/service/inspection-drawing-type/inspection-drawing-type-mutation.ts +0 -69
  221. package/server/service/inspection-drawing-type/inspection-drawing-type-query.ts +0 -55
  222. package/server/service/inspection-drawing-type/inspection-drawing-type-type.ts +0 -23
  223. package/server/service/inspection-drawing-type/inspection-drawing-type.ts +0 -68
  224. package/server/service/inspection-part/index.ts +0 -6
  225. package/server/service/inspection-part/inspection-part-mutation.ts +0 -52
  226. package/server/service/inspection-part/inspection-part-query.ts +0 -41
  227. package/server/service/inspection-part/inspection-part-type.ts +0 -26
  228. package/server/service/inspection-part/inspection-part.ts +0 -51
  229. package/server/service/manager/index.ts +0 -6
  230. package/server/service/manager/manager-mutation.ts +0 -42
  231. package/server/service/manager/manager-query.ts +0 -28
  232. package/server/service/manager/manager-type.ts +0 -40
  233. package/server/service/manager/manager.ts +0 -29
  234. package/server/service/project/index.ts +0 -6
  235. package/server/service/project/project-mutation.ts +0 -255
  236. package/server/service/project/project-query.ts +0 -105
  237. package/server/service/project/project-type.ts +0 -72
  238. package/server/service/project/project.ts +0 -134
  239. package/server/service/resource/index.ts +0 -7
  240. package/server/service/resource/resource-mutation.ts +0 -137
  241. package/server/service/resource/resource-query.ts +0 -50
  242. package/server/service/resource/resource-type.ts +0 -41
  243. package/server/service/resource/resource.ts +0 -82
  244. package/server/service/task/index.ts +0 -6
  245. package/server/service/task/task-mutation.ts +0 -135
  246. package/server/service/task/task-query.ts +0 -169
  247. package/server/service/task/task-type.ts +0 -75
  248. package/server/service/task/task.ts +0 -130
  249. package/server/service/task-resource/index.ts +0 -7
  250. package/server/service/task-resource/task-resource-mutation.ts +0 -140
  251. package/server/service/task-resource/task-resource-query.ts +0 -36
  252. package/server/service/task-resource/task-resource-type.ts +0 -41
  253. package/server/service/task-resource/task-resource.ts +0 -51
  254. package/server/service/worker-type/index.ts +0 -6
  255. package/server/service/worker-type/worker-type-mutation.ts +0 -66
  256. package/server/service/worker-type/worker-type-query.ts +0 -47
  257. package/server/service/worker-type/worker-type-type.ts +0 -26
  258. package/server/service/worker-type/worker-type.ts +0 -68
  259. package/server/tsconfig.json +0 -10
package/server/routes.ts DELETED
@@ -1,108 +0,0 @@
1
- import contentDisposition from 'content-disposition'
2
-
3
- import { Task, generateExcel } from './controllers/export-tasks'
4
-
5
- // const debug = require('debug')('dssp:project:routes')
6
-
7
- process.on('bootstrap-module-global-public-route' as any, (app, globalPublicRouter) => {
8
- /*
9
- * can add global public routes to application (auth not required, tenancy not required)
10
- *
11
- * ex) routes.get('/path', async(context, next) => {})
12
- * ex) routes.post('/path', async(context, next) => {})
13
- */
14
- globalPublicRouter.get('/export-project', async (context, next) => {
15
- const tasks: Task[] = [
16
- {
17
- name: '1 Task',
18
- startDate: new Date('2024-03-01'),
19
- endDate: new Date('2024-03-05'),
20
- subtasks: [
21
- {
22
- name: '1.1 Subtask',
23
- startDate: new Date('2024-03-02'),
24
- endDate: new Date('2024-03-03'),
25
- subtasks: [
26
- {
27
- name: '1.1.1 Subtask',
28
- startDate: new Date('2024-03-02'),
29
- endDate: new Date('2024-03-02')
30
- },
31
- {
32
- name: '1.1.2 Subtask',
33
- startDate: new Date('2024-03-02'),
34
- endDate: new Date('2024-03-03')
35
- },
36
- {
37
- name: '1.1.2 Subtask',
38
- startDate: new Date('2024-03-03'),
39
- endDate: new Date('2024-03-03')
40
- },
41
- {
42
- name: '1.1.2 Subtask',
43
- startDate: new Date('2024-03-03'),
44
- endDate: new Date('2024-03-03')
45
- }
46
- ]
47
- },
48
- {
49
- name: '1.2 Subtask',
50
- startDate: new Date('2024-03-04'),
51
- endDate: new Date('2024-03-05')
52
- }
53
- ]
54
- },
55
- {
56
- name: '2 Task',
57
- startDate: new Date('2024-03-06'),
58
- endDate: new Date('2024-03-10'),
59
- subtasks: [
60
- {
61
- name: '2.1 Subtask',
62
- startDate: new Date('2024-03-06'),
63
- endDate: new Date('2024-03-07')
64
- },
65
- {
66
- name: '2.2 Subtask',
67
- startDate: new Date('2024-03-08'),
68
- endDate: new Date('2024-03-10'),
69
- subtasks: [
70
- {
71
- name: '2.2.1 Subtask',
72
- startDate: new Date('2024-03-08'),
73
- endDate: new Date('2024-03-09')
74
- },
75
- {
76
- name: '2.2.2 Subtask',
77
- startDate: new Date('2024-03-10'),
78
- endDate: new Date('2024-03-10')
79
- }
80
- ]
81
- }
82
- ]
83
- }
84
- ]
85
-
86
- context.type = 'application/xlsx'
87
- context.set('Content-Disposition', contentDisposition(`project.xlsx`))
88
- context.body = await generateExcel(tasks)
89
- })
90
- })
91
-
92
- process.on('bootstrap-module-global-private-route' as any, (app, globalPrivateRouter) => {
93
- /*
94
- * can add global private routes to application (auth required, tenancy not required)
95
- */
96
- })
97
-
98
- process.on('bootstrap-module-domain-public-route' as any, (app, domainPublicRouter) => {
99
- /*
100
- * can add domain public routes to application (auth not required, tenancy required)
101
- */
102
- })
103
-
104
- process.on('bootstrap-module-domain-private-route' as any, (app, domainPrivateRouter) => {
105
- /*
106
- * can add domain private routes to application (auth required, tenancy required)
107
- */
108
- })
@@ -1,57 +0,0 @@
1
- import { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'
2
- import { In } from 'typeorm'
3
- import { deleteAttachmentsByRef } from '@things-factory/attachment-base'
4
- import { ConstructionDetailType } from './construction-detail-type'
5
- import { ConstructionDetailTypePatch } from './construction-detail-type-type'
6
- import { ConstructionType } from '../construction-type/construction-type'
7
-
8
- @Resolver(ConstructionDetailType)
9
- export class ConstructionDetailTypeMutation {
10
- @Directive('@transaction')
11
- @Mutation(returns => [ConstructionDetailType], { description: "To modify multiple ConstructionDetailTypes' information" })
12
- async updateMultipleConstructionDetailType(
13
- @Arg('patches', type => [ConstructionDetailTypePatch]) patches: ConstructionDetailTypePatch[],
14
- @Arg('constructionTypeId') constructionTypeId: string,
15
- @Ctx() context: ResolverContext
16
- ): Promise<ConstructionDetailType[]> {
17
- const { domain, user, tx } = context.state
18
-
19
- let results = []
20
-
21
- const constructionDetailTypeRepo = tx.getRepository(ConstructionDetailType)
22
- const constructionType = await tx.getRepository(ConstructionType).findOneBy({ id: constructionTypeId })
23
-
24
- await constructionDetailTypeRepo.delete({ constructionType: { id: constructionTypeId } })
25
-
26
- for (let i = 0; i < patches.length; i++) {
27
- const result = await constructionDetailTypeRepo.save({
28
- ...patches[i],
29
- sequence: i,
30
- constructionType,
31
- creator: user,
32
- updater: user
33
- })
34
-
35
- results.push({ ...result, cuFlag: '+' })
36
- }
37
-
38
- return results
39
- }
40
-
41
- @Directive('@transaction')
42
- @Mutation(returns => Boolean, { description: 'To delete multiple ConstructionDetailTypes' })
43
- async deleteConstructionDetailTypes(
44
- @Arg('ids', type => [String]) ids: string[],
45
- @Ctx() context: ResolverContext
46
- ): Promise<boolean> {
47
- const { domain, tx } = context.state
48
-
49
- await tx.getRepository(ConstructionDetailType).delete({
50
- id: In(ids)
51
- })
52
-
53
- await deleteAttachmentsByRef(null, { refBys: ids }, context)
54
-
55
- return true
56
- }
57
- }
@@ -1,31 +0,0 @@
1
- import { Resolver, Query, FieldResolver, Root, Args, Ctx } from 'type-graphql'
2
- import { getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'
3
- import { User } from '@things-factory/auth-base'
4
- import { ConstructionDetailType } from './construction-detail-type'
5
- import { ConstructionDetailTypeList } from './construction-detail-type-type'
6
-
7
- @Resolver(ConstructionDetailType)
8
- export class ConstructionDetailTypeQuery {
9
- @Query(returns => ConstructionDetailTypeList, { description: 'To fetch multiple ConstructionDetailTypes' })
10
- async constructionDetailTypes(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ConstructionDetailTypeList> {
11
- const queryBuilder = getQueryBuilderFromListParams({
12
- params,
13
- repository: await getRepository(ConstructionDetailType),
14
- searchables: ['name']
15
- })
16
-
17
- const [items, total] = await queryBuilder.getManyAndCount()
18
-
19
- return { items, total }
20
- }
21
-
22
- @FieldResolver(type => User)
23
- async updater(@Root() constructionDetailType: ConstructionDetailType): Promise<User> {
24
- return await getRepository(User).findOneBy({ id: constructionDetailType.updaterId })
25
- }
26
-
27
- @FieldResolver(type => User)
28
- async creator(@Root() constructionDetailType: ConstructionDetailType): Promise<User> {
29
- return await getRepository(User).findOneBy({ id: constructionDetailType.creatorId })
30
- }
31
- }
@@ -1,26 +0,0 @@
1
- import { ObjectType, Field, InputType, Int, ID } from 'type-graphql'
2
- import { ConstructionDetailType } from './construction-detail-type'
3
-
4
- @InputType()
5
- export class ConstructionDetailTypePatch {
6
- @Field(type => ID, { nullable: true })
7
- id?: string
8
-
9
- @Field({ nullable: true })
10
- name?: string
11
-
12
- @Field(type => Int, { nullable: true })
13
- sequence?: number
14
-
15
- @Field({ nullable: true })
16
- cuFlag?: string
17
- }
18
-
19
- @ObjectType()
20
- export class ConstructionDetailTypeList {
21
- @Field(type => [ConstructionDetailType])
22
- items: ConstructionDetailType[]
23
-
24
- @Field(type => Int)
25
- total: number
26
- }
@@ -1,52 +0,0 @@
1
- import { CreateDateColumn, UpdateDateColumn, Entity, Index, Column, RelationId, ManyToOne, PrimaryGeneratedColumn } from 'typeorm'
2
- import { ObjectType, Field, ID, Int } from 'type-graphql'
3
-
4
- import { User } from '@things-factory/auth-base'
5
- import { ConstructionType } from '../construction-type/construction-type'
6
-
7
- @Entity()
8
- @Index('ix_construction_detail_type_0', (constructionDetailType: ConstructionDetailType) => [constructionDetailType.sequence])
9
- @ObjectType({ description: '세부 공종 타입' })
10
- export class ConstructionDetailType {
11
- @PrimaryGeneratedColumn('uuid')
12
- @Field(type => ID)
13
- readonly id: string
14
-
15
- @Column({ nullable: false, comment: '세부 공종 이름' })
16
- @Field({ nullable: true })
17
- name?: string
18
-
19
- @Column({ nullable: true, comment: '시퀀스' })
20
- @Field(type => Int, { nullable: true })
21
- sequence?: number
22
-
23
- // 공종 타입 (상위 테이블 참조)
24
- @ManyToOne(type => ConstructionType)
25
- @Field({ nullable: true })
26
- constructionType?: ConstructionType
27
-
28
- @RelationId((constructionDetailType: ConstructionDetailType) => constructionDetailType.constructionType)
29
- constructionTypeId?: string
30
-
31
- @CreateDateColumn()
32
- @Field({ nullable: true })
33
- createdAt?: Date
34
-
35
- @UpdateDateColumn()
36
- @Field({ nullable: true })
37
- updatedAt?: Date
38
-
39
- @ManyToOne(type => User, { nullable: true })
40
- @Field(type => User, { nullable: true })
41
- creator?: User
42
-
43
- @RelationId((constructionDetailType: ConstructionDetailType) => constructionDetailType.creator)
44
- creatorId?: string
45
-
46
- @ManyToOne(type => User, { nullable: true })
47
- @Field(type => User, { nullable: true })
48
- updater?: User
49
-
50
- @RelationId((constructionDetailType: ConstructionDetailType) => constructionDetailType.updater)
51
- updaterId?: string
52
- }
@@ -1,6 +0,0 @@
1
- import { ConstructionDetailType } from './construction-detail-type'
2
- import { ConstructionDetailTypeQuery } from './construction-detail-type-query'
3
- import { ConstructionDetailTypeMutation } from './construction-detail-type-mutation'
4
-
5
- export const entities = [ConstructionDetailType]
6
- export const resolvers = [ConstructionDetailTypeQuery, ConstructionDetailTypeMutation]
@@ -1,66 +0,0 @@
1
- import { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'
2
- import { In } from 'typeorm'
3
- import { ConstructionType } from './construction-type'
4
- import { ConstructionTypePatch } from './construction-type-type'
5
-
6
- @Resolver(ConstructionType)
7
- export class ConstructionTypeMutation {
8
- @Directive('@transaction')
9
- @Mutation(returns => [ConstructionType], { description: "To modify multiple ConstructionTypes' information" })
10
- async updateMultipleConstructionType(
11
- @Arg('patches', type => [ConstructionTypePatch]) patches: ConstructionTypePatch[],
12
- @Ctx() context: ResolverContext
13
- ): Promise<ConstructionType[]> {
14
- const { domain, user, tx } = context.state
15
-
16
- let results = []
17
- const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')
18
- const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')
19
- const constructionTypeRepo = tx.getRepository(ConstructionType)
20
-
21
- if (_createRecords.length > 0) {
22
- for (let i = 0; i < _createRecords.length; i++) {
23
- const newRecord = _createRecords[i]
24
-
25
- const result = await constructionTypeRepo.save({
26
- ...newRecord,
27
- domain,
28
- creator: user,
29
- updater: user
30
- })
31
-
32
- results.push({ ...result, cuFlag: '+' })
33
- }
34
- }
35
-
36
- if (_updateRecords.length > 0) {
37
- for (let i = 0; i < _updateRecords.length; i++) {
38
- const updateRecord = _updateRecords[i]
39
- const constructionType = await constructionTypeRepo.findOneBy({ id: updateRecord.id })
40
-
41
- const result = await constructionTypeRepo.save({
42
- ...constructionType,
43
- ...updateRecord,
44
- updater: user
45
- })
46
-
47
- results.push({ ...result, cuFlag: 'M' })
48
- }
49
- }
50
-
51
- return results
52
- }
53
-
54
- @Directive('@transaction')
55
- @Mutation(returns => Boolean, { description: 'To delete multiple ConstructionTypes' })
56
- async deleteConstructionTypes(@Arg('ids', type => [String]) ids: string[], @Ctx() context: ResolverContext): Promise<boolean> {
57
- const { domain, tx } = context.state
58
-
59
- await tx.getRepository(ConstructionType).softDelete({
60
- domain: { id: domain.id },
61
- id: In(ids)
62
- })
63
-
64
- return true
65
- }
66
- }
@@ -1,56 +0,0 @@
1
- import { Resolver, Query, FieldResolver, Root, Args, Arg, Ctx } from 'type-graphql'
2
- import { Domain, getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'
3
- import { User } from '@things-factory/auth-base'
4
- import { ConstructionType } from './construction-type'
5
- import { ConstructionTypeList } from './construction-type-type'
6
- import { ConstructionDetailType } from '../construction-detail-type/construction-detail-type'
7
-
8
- @Resolver(ConstructionType)
9
- export class ConstructionTypeQuery {
10
- @Query(returns => ConstructionType!, { nullable: true, description: 'To fetch a ConstructionType' })
11
- async constructionType(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<ConstructionType> {
12
- const { domain } = context.state
13
-
14
- return await getRepository(ConstructionType).findOne({
15
- where: { domain: { id: domain.id }, id }
16
- })
17
- }
18
-
19
- @Query(returns => ConstructionTypeList, { description: 'To fetch multiple ConstructionTypes' })
20
- async constructionTypes(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ConstructionTypeList> {
21
- const { domain } = context.state
22
-
23
- const queryBuilder = getQueryBuilderFromListParams({
24
- domain,
25
- params,
26
- repository: await getRepository(ConstructionType)
27
- })
28
-
29
- const [items, total] = await queryBuilder.getManyAndCount()
30
-
31
- return { items, total }
32
- }
33
-
34
- @FieldResolver(type => [ConstructionDetailType])
35
- async constructionDetailTypes(@Root() constructionType: ConstructionType): Promise<ConstructionDetailType[]> {
36
- return await getRepository(ConstructionDetailType).find({
37
- where: { constructionType: { id: constructionType.id } },
38
- order: { sequence: 'ASC' }
39
- })
40
- }
41
-
42
- @FieldResolver(type => Domain)
43
- async domain(@Root() constructionType: ConstructionType): Promise<Domain> {
44
- return await getRepository(Domain).findOneBy({ id: constructionType.domainId })
45
- }
46
-
47
- @FieldResolver(type => User)
48
- async updater(@Root() constructionType: ConstructionType): Promise<User> {
49
- return await getRepository(User).findOneBy({ id: constructionType.updaterId })
50
- }
51
-
52
- @FieldResolver(type => User)
53
- async creator(@Root() constructionType: ConstructionType): Promise<User> {
54
- return await getRepository(User).findOneBy({ id: constructionType.creatorId })
55
- }
56
- }
@@ -1,26 +0,0 @@
1
- import { ObjectType, Field, InputType, Int, ID } from 'type-graphql'
2
- import { ConstructionType } from './construction-type'
3
-
4
- @InputType()
5
- export class ConstructionTypePatch {
6
- @Field(type => ID, { nullable: true })
7
- id?: string
8
-
9
- @Field({ nullable: true })
10
- name?: string
11
-
12
- @Field({ nullable: true })
13
- description?: string
14
-
15
- @Field({ nullable: true })
16
- cuFlag?: string
17
- }
18
-
19
- @ObjectType()
20
- export class ConstructionTypeList {
21
- @Field(type => [ConstructionType])
22
- items: ConstructionType[]
23
-
24
- @Field(type => Int)
25
- total: number
26
- }
@@ -1,74 +0,0 @@
1
- import {
2
- CreateDateColumn,
3
- UpdateDateColumn,
4
- DeleteDateColumn,
5
- Entity,
6
- Index,
7
- Column,
8
- RelationId,
9
- ManyToOne,
10
- PrimaryGeneratedColumn,
11
- OneToMany
12
- } from 'typeorm'
13
- import { ObjectType, Field, ID } from 'type-graphql'
14
- import { Domain } from '@things-factory/shell'
15
- import { User } from '@things-factory/auth-base'
16
- import { ConstructionDetailType } from '../construction-detail-type/construction-detail-type'
17
-
18
- @Entity()
19
- @Index('ix_construction_type_0', (constructionType: ConstructionType) => [constructionType.domain, constructionType.name], {
20
- unique: true,
21
- where: '"deleted_at" IS NULL'
22
- })
23
- @ObjectType({ description: '공종 타입' })
24
- export class ConstructionType {
25
- @PrimaryGeneratedColumn('uuid')
26
- @Field(type => ID)
27
- readonly id: string
28
-
29
- @ManyToOne(type => Domain)
30
- @Field({ nullable: true })
31
- domain?: Domain
32
-
33
- @RelationId((constructionType: ConstructionType) => constructionType.domain)
34
- domainId?: string
35
-
36
- @Column()
37
- @Field({ nullable: true })
38
- name?: string
39
-
40
- @Column({ nullable: true })
41
- @Field({ nullable: true })
42
- description?: string
43
-
44
- // 상세 공종 정보 (하위 테이블 참조)
45
- @Field(() => [ConstructionDetailType], { nullable: true })
46
- @OneToMany(() => ConstructionDetailType, constructionDetailType => constructionDetailType.constructionType)
47
- constructionDetailTypes?: ConstructionDetailType[]
48
-
49
- @CreateDateColumn()
50
- @Field({ nullable: true })
51
- createdAt?: Date
52
-
53
- @UpdateDateColumn()
54
- @Field({ nullable: true })
55
- updatedAt?: Date
56
-
57
- @DeleteDateColumn()
58
- @Field({ nullable: true })
59
- deletedAt?: Date
60
-
61
- @ManyToOne(type => User, { nullable: true })
62
- @Field(type => User, { nullable: true })
63
- creator?: User
64
-
65
- @RelationId((constructionType: ConstructionType) => constructionType.creator)
66
- creatorId?: string
67
-
68
- @ManyToOne(type => User, { nullable: true })
69
- @Field(type => User, { nullable: true })
70
- updater?: User
71
-
72
- @RelationId((constructionType: ConstructionType) => constructionType.updater)
73
- updaterId?: string
74
- }
@@ -1,6 +0,0 @@
1
- import { ConstructionType } from './construction-type'
2
- import { ConstructionTypeQuery } from './construction-type-query'
3
- import { ConstructionTypeMutation } from './construction-type-mutation'
4
-
5
- export const entities = [ConstructionType]
6
- export const resolvers = [ConstructionTypeQuery, ConstructionTypeMutation]
@@ -1,56 +0,0 @@
1
- /* EXPORT ENTITY TYPES */
2
- export * from './task-resource/task-resource'
3
- export * from './resource/resource'
4
- export * from './construction-detail-type/construction-detail-type'
5
- export * from './construction-type/construction-type'
6
- export * from './inspection-drawing-type/inspection-drawing-type'
7
- export * from './inspection-part/inspection-part'
8
- export * from './worker-type/worker-type'
9
- export * from './manager/manager'
10
- export * from './task/task'
11
- export * from './project/project'
12
-
13
- /* IMPORT ENTITIES AND RESOLVERS */
14
- import { entities as TaskResourceEntities, resolvers as TaskResourceResolvers } from './task-resource'
15
- import { entities as ResourceEntities, resolvers as ResourceResolvers } from './resource'
16
- import {
17
- entities as ConstructionDetailTypeEntities,
18
- resolvers as ConstructionDetailTypeResolvers
19
- } from './construction-detail-type'
20
- import { entities as ConstructionTypeEntities, resolvers as ConstructionTypeResolvers } from './construction-type'
21
- import { entities as InspectionDrawingTypeEntities, resolvers as InspectionDrawingTypeResolvers } from './inspection-drawing-type'
22
- import { entities as InspectionPartEntities, resolvers as InspectionPartResolvers } from './inspection-part'
23
- import { entities as WorkerTypeEntities, resolvers as WorkerTypeResolvers } from './worker-type'
24
- import { entities as ManagerEntities, resolvers as ManagerResolvers } from './manager'
25
- import { entities as TaskEntities, resolvers as TaskResolvers } from './task'
26
- import { entities as ProjectEntities, resolvers as ProjectResolvers } from './project'
27
-
28
- export const entities = [
29
- /* ENTITIES */
30
- ...TaskResourceEntities,
31
- ...ResourceEntities,
32
- ...ConstructionDetailTypeEntities,
33
- ...ConstructionTypeEntities,
34
- ...InspectionDrawingTypeEntities,
35
- ...InspectionPartEntities,
36
- ...WorkerTypeEntities,
37
- ...ManagerEntities,
38
- ...TaskEntities,
39
- ...ProjectEntities
40
- ]
41
-
42
- export const schema = {
43
- resolverClasses: [
44
- /* RESOLVER CLASSES */
45
- ...TaskResourceResolvers,
46
- ...ResourceResolvers,
47
- ...ConstructionDetailTypeResolvers,
48
- ...ConstructionTypeResolvers,
49
- ...InspectionDrawingTypeResolvers,
50
- ...InspectionPartResolvers,
51
- ...WorkerTypeResolvers,
52
- ...ManagerResolvers,
53
- ...TaskResolvers,
54
- ...ProjectResolvers
55
- ]
56
- }
@@ -1,6 +0,0 @@
1
- import { InspectionDrawingType } from './inspection-drawing-type'
2
- import { InspectionDrawingTypeQuery } from './inspection-drawing-type-query'
3
- import { InspectionDrawingTypeMutation } from './inspection-drawing-type-mutation'
4
-
5
- export const entities = [InspectionDrawingType]
6
- export const resolvers = [InspectionDrawingTypeQuery, InspectionDrawingTypeMutation]
@@ -1,69 +0,0 @@
1
- import { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'
2
- import { In } from 'typeorm'
3
- import { getRepository } from '@things-factory/shell'
4
- import { InspectionDrawingType } from './inspection-drawing-type'
5
- import { InspectionDrawingTypePatch } from './inspection-drawing-type-type'
6
-
7
- @Resolver(InspectionDrawingType)
8
- export class InspectionDrawingTypeMutation {
9
- @Directive('@transaction')
10
- @Mutation(returns => [InspectionDrawingType], { description: "To modify multiple InspectionDrawingTypes' information" })
11
- async updateMultipleInspectionDrawingType(
12
- @Arg('patches', type => [InspectionDrawingTypePatch]) patches: InspectionDrawingTypePatch[],
13
- @Ctx() context: ResolverContext
14
- ): Promise<InspectionDrawingType[]> {
15
- const { domain, user, tx } = context.state
16
-
17
- let results = []
18
- const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')
19
- const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')
20
- const inspectionDrawingTypeRepo = getRepository(InspectionDrawingType, tx)
21
-
22
- if (_createRecords.length > 0) {
23
- for (let i = 0; i < _createRecords.length; i++) {
24
- const newRecord = _createRecords[i]
25
-
26
- const result = await inspectionDrawingTypeRepo.save({
27
- ...newRecord,
28
- domain,
29
- creator: user,
30
- updater: user
31
- })
32
-
33
- results.push({ ...result, cuFlag: '+' })
34
- }
35
- }
36
-
37
- if (_updateRecords.length > 0) {
38
- for (let i = 0; i < _updateRecords.length; i++) {
39
- const updateRecord = _updateRecords[i]
40
- const inspectionDrawingType = await inspectionDrawingTypeRepo.findOneBy({ id: updateRecord.id })
41
-
42
- const result = await inspectionDrawingTypeRepo.save({
43
- ...inspectionDrawingType,
44
- ...updateRecord,
45
- updater: user
46
- })
47
-
48
- results.push({ ...result, cuFlag: 'M' })
49
- }
50
- }
51
-
52
- return results
53
- }
54
-
55
- @Directive('@transaction')
56
- @Mutation(returns => Boolean, { description: 'To delete multiple InspectionDrawingTypes' })
57
- async deleteInspectionDrawingTypes(
58
- @Arg('ids', type => [String]) ids: string[],
59
- @Ctx() context: ResolverContext
60
- ): Promise<boolean> {
61
- const { domain, tx } = context.state
62
-
63
- await getRepository(InspectionDrawingType, tx).delete({
64
- id: In(ids)
65
- })
66
-
67
- return true
68
- }
69
- }