@dssp/supervision 1.0.0-alpha.3 → 1.0.0-alpha.30

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 (168) hide show
  1. package/dist-client/graphql/building-inspection.d.ts +1 -0
  2. package/dist-client/graphql/building-inspection.js +100 -0
  3. package/dist-client/graphql/building-inspection.js.map +1 -0
  4. package/dist-client/pages/building-inspection/building-inspection-detail-checklist.d.ts +9 -0
  5. package/dist-client/pages/building-inspection/building-inspection-detail-checklist.js +130 -72
  6. package/dist-client/pages/building-inspection/building-inspection-detail-checklist.js.map +1 -1
  7. package/dist-client/pages/building-inspection/building-inspection-detail-drawing.d.ts +1 -1
  8. package/dist-client/pages/building-inspection/building-inspection-detail-drawing.js +93 -25
  9. package/dist-client/pages/building-inspection/building-inspection-detail-drawing.js.map +1 -1
  10. package/dist-client/pages/building-inspection/building-inspection-list.d.ts +18 -2
  11. package/dist-client/pages/building-inspection/building-inspection-list.js +327 -27
  12. package/dist-client/pages/building-inspection/building-inspection-list.js.map +1 -1
  13. package/dist-client/pages/building-inspection/component/building-inspection-detail-header.js +31 -9
  14. package/dist-client/pages/building-inspection/component/building-inspection-detail-header.js.map +1 -1
  15. package/dist-client/pages/building-inspection/component/daily-worklog-popup.d.ts +22 -0
  16. package/dist-client/pages/building-inspection/component/daily-worklog-popup.js +431 -0
  17. package/dist-client/pages/building-inspection/component/daily-worklog-popup.js.map +1 -0
  18. package/dist-client/pages/building-inspection/component/image-preview-popup.d.ts +15 -0
  19. package/dist-client/pages/building-inspection/component/image-preview-popup.js +351 -0
  20. package/dist-client/pages/building-inspection/component/image-preview-popup.js.map +1 -0
  21. package/dist-client/pages/building-inspection/component/inspection-document/inspection-request-document.d.ts +20 -0
  22. package/dist-client/pages/building-inspection/component/inspection-document/inspection-request-document.js +432 -0
  23. package/dist-client/pages/building-inspection/component/inspection-document/inspection-request-document.js.map +1 -0
  24. package/dist-client/pages/building-inspection/component/inspection-document/inspection-result-notification.d.ts +30 -0
  25. package/dist-client/pages/building-inspection/component/inspection-document/inspection-result-notification.js +479 -0
  26. package/dist-client/pages/building-inspection/component/inspection-document/inspection-result-notification.js.map +1 -0
  27. package/dist-client/pages/building-inspection/component/inspection-document/photo-album-popup.d.ts +27 -0
  28. package/dist-client/pages/building-inspection/component/inspection-document/photo-album-popup.js +401 -0
  29. package/dist-client/pages/building-inspection/component/inspection-document/photo-album-popup.js.map +1 -0
  30. package/dist-client/pages/building-inspection/component/inspection-event-provider.d.ts +2 -1
  31. package/dist-client/pages/building-inspection/component/inspection-event-provider.js +39 -17
  32. package/dist-client/pages/building-inspection/component/inspection-event-provider.js.map +1 -1
  33. package/dist-client/pages/building-inspection/inspection-create-popup.js +22 -9
  34. package/dist-client/pages/building-inspection/inspection-create-popup.js.map +1 -1
  35. package/dist-client/pages/building-inspection-grid/building-inspection-grid-detail.d.ts +48 -0
  36. package/dist-client/pages/building-inspection-grid/building-inspection-grid-detail.js +1030 -0
  37. package/dist-client/pages/building-inspection-grid/building-inspection-grid-detail.js.map +1 -0
  38. package/dist-client/pages/building-inspection-grid/component/grid-inspection-create-popup.d.ts +2 -0
  39. package/dist-client/pages/building-inspection-grid/component/grid-inspection-create-popup.js +740 -0
  40. package/dist-client/pages/building-inspection-grid/component/grid-inspection-create-popup.js.map +1 -0
  41. package/dist-client/pages/building-inspection-grid/component/notice-comment-popup.d.ts +1 -0
  42. package/dist-client/pages/building-inspection-grid/component/notice-comment-popup.js +304 -0
  43. package/dist-client/pages/building-inspection-grid/component/notice-comment-popup.js.map +1 -0
  44. package/dist-client/pages/building-inspection-grid/component/plan-preview-popup.d.ts +15 -0
  45. package/dist-client/pages/building-inspection-grid/component/plan-preview-popup.js +430 -0
  46. package/dist-client/pages/building-inspection-grid/component/plan-preview-popup.js.map +1 -0
  47. package/dist-client/pages/checklist/attachment-list-popup.d.ts +1 -0
  48. package/dist-client/pages/checklist/attachment-list-popup.js +250 -67
  49. package/dist-client/pages/checklist/attachment-list-popup.js.map +1 -1
  50. package/dist-client/pages/checklist/checklist-view.d.ts +7 -0
  51. package/dist-client/pages/checklist/checklist-view.js +363 -185
  52. package/dist-client/pages/checklist/checklist-view.js.map +1 -1
  53. package/dist-client/pages/checklist/comment-list-popup.js +14 -3
  54. package/dist-client/pages/checklist/comment-list-popup.js.map +1 -1
  55. package/dist-client/pages/checklist/file-preview-popup.js +0 -1
  56. package/dist-client/pages/checklist/file-preview-popup.js.map +1 -1
  57. package/dist-client/pages/checklist/inspection-info-popup.d.ts +50 -0
  58. package/dist-client/pages/checklist/inspection-info-popup.js +684 -0
  59. package/dist-client/pages/checklist/inspection-info-popup.js.map +1 -0
  60. package/dist-client/pages/checklist/inspection-tab-popup.d.ts +18 -0
  61. package/dist-client/pages/checklist/inspection-tab-popup.js +196 -0
  62. package/dist-client/pages/checklist/inspection-tab-popup.js.map +1 -0
  63. package/dist-client/pages/checklist-template/checklist-template-item.js +8 -3
  64. package/dist-client/pages/checklist-template/checklist-template-item.js.map +1 -1
  65. package/dist-client/pages/checklist-template/checklist-template-list.js +2 -2
  66. package/dist-client/pages/checklist-template/checklist-template-list.js.map +1 -1
  67. package/dist-client/route.d.ts +1 -1
  68. package/dist-client/route.js +3 -0
  69. package/dist-client/route.js.map +1 -1
  70. package/dist-client/stt/speech-to-text.d.ts +36 -0
  71. package/dist-client/stt/speech-to-text.js +89 -0
  72. package/dist-client/stt/speech-to-text.js.map +1 -0
  73. package/dist-client/stt/stt-utils.d.ts +28 -0
  74. package/dist-client/stt/stt-utils.js +146 -0
  75. package/dist-client/stt/stt-utils.js.map +1 -0
  76. package/dist-client/tsconfig.tsbuildinfo +1 -1
  77. package/dist-server/service/action-plan/index.d.ts +0 -1
  78. package/dist-server/service/action-plan/index.js +1 -2
  79. package/dist-server/service/action-plan/index.js.map +1 -1
  80. package/dist-server/service/building-inspection/building-inspection-history.d.ts +1 -0
  81. package/dist-server/service/building-inspection/building-inspection-history.js +5 -0
  82. package/dist-server/service/building-inspection/building-inspection-history.js.map +1 -1
  83. package/dist-server/service/building-inspection/building-inspection-mutation.d.ts +3 -3
  84. package/dist-server/service/building-inspection/building-inspection-mutation.js +145 -34
  85. package/dist-server/service/building-inspection/building-inspection-mutation.js.map +1 -1
  86. package/dist-server/service/building-inspection/building-inspection-query.d.ts +3 -4
  87. package/dist-server/service/building-inspection/building-inspection-query.js +46 -30
  88. package/dist-server/service/building-inspection/building-inspection-query.js.map +1 -1
  89. package/dist-server/service/building-inspection/building-inspection-type.d.ts +28 -9
  90. package/dist-server/service/building-inspection/building-inspection-type.js +96 -17
  91. package/dist-server/service/building-inspection/building-inspection-type.js.map +1 -1
  92. package/dist-server/service/building-inspection/building-inspection.d.ts +13 -0
  93. package/dist-server/service/building-inspection/building-inspection.js +55 -2
  94. package/dist-server/service/building-inspection/building-inspection.js.map +1 -1
  95. package/dist-server/service/building-inspection/index.d.ts +3 -5
  96. package/dist-server/service/building-inspection/index.js +10 -4
  97. package/dist-server/service/building-inspection/index.js.map +1 -1
  98. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-mutation.d.ts +6 -0
  99. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-mutation.js +56 -0
  100. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-mutation.js.map +1 -0
  101. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-query.d.ts +14 -0
  102. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-query.js +135 -0
  103. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-query.js.map +1 -0
  104. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-type.d.ts +19 -0
  105. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-type.js +74 -0
  106. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog-type.js.map +1 -0
  107. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog.d.ts +27 -0
  108. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog.js +104 -0
  109. package/dist-server/service/building-inspection-daily-worklog/building-inspection-daily-worklog.js.map +1 -0
  110. package/dist-server/service/building-inspection-daily-worklog/index.d.ts +5 -0
  111. package/dist-server/service/building-inspection-daily-worklog/index.js +9 -0
  112. package/dist-server/service/building-inspection-daily-worklog/index.js.map +1 -0
  113. package/dist-server/service/checklist/checklist-history.d.ts +8 -0
  114. package/dist-server/service/checklist/checklist-history.js +36 -0
  115. package/dist-server/service/checklist/checklist-history.js.map +1 -1
  116. package/dist-server/service/checklist/checklist-mutation.d.ts +0 -5
  117. package/dist-server/service/checklist/checklist-mutation.js +1 -67
  118. package/dist-server/service/checklist/checklist-mutation.js.map +1 -1
  119. package/dist-server/service/checklist/checklist-query.d.ts +6 -0
  120. package/dist-server/service/checklist/checklist-query.js +63 -0
  121. package/dist-server/service/checklist/checklist-query.js.map +1 -1
  122. package/dist-server/service/checklist/checklist-type.d.ts +0 -13
  123. package/dist-server/service/checklist/checklist-type.js +1 -49
  124. package/dist-server/service/checklist/checklist-type.js.map +1 -1
  125. package/dist-server/service/checklist/checklist.d.ts +38 -3
  126. package/dist-server/service/checklist/checklist.js +131 -15
  127. package/dist-server/service/checklist/checklist.js.map +1 -1
  128. package/dist-server/service/checklist/index.d.ts +0 -2
  129. package/dist-server/service/checklist/index.js +1 -3
  130. package/dist-server/service/checklist/index.js.map +1 -1
  131. package/dist-server/service/checklist-item/checklist-item-query.d.ts +1 -1
  132. package/dist-server/service/checklist-item/checklist-item-query.js +5 -3
  133. package/dist-server/service/checklist-item/checklist-item-query.js.map +1 -1
  134. package/dist-server/service/checklist-item-comment/checklist-item-comment-mutation.d.ts +1 -0
  135. package/dist-server/service/checklist-item-comment/checklist-item-comment-mutation.js +33 -6
  136. package/dist-server/service/checklist-item-comment/checklist-item-comment-mutation.js.map +1 -1
  137. package/dist-server/service/checklist-item-comment/index.d.ts +0 -2
  138. package/dist-server/service/checklist-item-comment/index.js +1 -3
  139. package/dist-server/service/checklist-item-comment/index.js.map +1 -1
  140. package/dist-server/service/checklist-template-item/checklist-template-item.js +2 -4
  141. package/dist-server/service/checklist-template-item/checklist-template-item.js.map +1 -1
  142. package/dist-server/service/index.d.ts +3 -2
  143. package/dist-server/service/index.js +8 -13
  144. package/dist-server/service/index.js.map +1 -1
  145. package/dist-server/service/issue/index.d.ts +0 -1
  146. package/dist-server/service/issue/index.js +1 -2
  147. package/dist-server/service/issue/index.js.map +1 -1
  148. package/dist-server/service/project-report/index.d.ts +0 -1
  149. package/dist-server/service/project-report/index.js +1 -2
  150. package/dist-server/service/project-report/index.js.map +1 -1
  151. package/dist-server/service/project-report/project-report.d.ts +0 -2
  152. package/dist-server/service/project-report/project-report.js +0 -6
  153. package/dist-server/service/project-report/project-report.js.map +1 -1
  154. package/dist-server/service/supervisor/index.d.ts +0 -1
  155. package/dist-server/service/supervisor/index.js +1 -2
  156. package/dist-server/service/supervisor/index.js.map +1 -1
  157. package/dist-server/tsconfig.tsbuildinfo +1 -1
  158. package/package.json +13 -13
  159. package/things-factory.config.js +3 -1
  160. package/dist-server/service/building-inspection/event-subscriber.d.ts +0 -7
  161. package/dist-server/service/building-inspection/event-subscriber.js +0 -21
  162. package/dist-server/service/building-inspection/event-subscriber.js.map +0 -1
  163. package/dist-server/service/checklist/event-subscriber.d.ts +0 -7
  164. package/dist-server/service/checklist/event-subscriber.js +0 -21
  165. package/dist-server/service/checklist/event-subscriber.js.map +0 -1
  166. package/dist-server/service/checklist-item-comment/event-subscriber.d.ts +0 -7
  167. package/dist-server/service/checklist-item-comment/event-subscriber.js +0 -21
  168. package/dist-server/service/checklist-item-comment/event-subscriber.js.map +0 -1
@@ -1,11 +1,32 @@
1
1
  import { User } from '@things-factory/auth-base';
2
- import { Task } from '@dssp/project';
3
2
  import { ChecklistItem } from '../checklist-item/checklist-item';
4
3
  import { BuildingInspection } from '../building-inspection/building-inspection';
4
+ import { ProjectType } from '../building-inspection/building-inspection';
5
+ export declare enum ChecklistReferenceType {
6
+ INSPECTION = "INSPECTION",// 검측
7
+ TASK = "TASK"
8
+ }
9
+ export declare enum DocumentNoType {
10
+ CHECKLIST = "01",// 체크리스트
11
+ INSPECTION_REQUEST = "02",// 검측 요청서
12
+ INSPECTION_RESULT = "03",// 검측 결과 통보서
13
+ DAILY_WORKLOG = "04"
14
+ }
15
+ export declare enum InspectionResultStatus {
16
+ PASS = "PASS",// 합격
17
+ FAIL = "FAIL"
18
+ }
19
+ export declare enum InspectionResultType {
20
+ GENERAL = "GENERAL",// 일반
21
+ FOCUS = "FOCUS",// 중점
22
+ CONCEALED_WORK = "CONCEALED_WORK"
23
+ }
5
24
  export declare class Checklist {
6
25
  readonly id: string;
7
26
  name?: string;
8
27
  documentNo?: string;
28
+ projectType?: ProjectType;
29
+ checklistReferenceType?: ChecklistReferenceType;
9
30
  constructionType?: string;
10
31
  constructionDetailType?: string;
11
32
  location?: string;
@@ -17,10 +38,24 @@ export declare class Checklist {
17
38
  taskConstructorSignature?: string;
18
39
  overallSupervisorySignature?: string;
19
40
  taskSupervisorySignature?: string;
20
- task?: Task;
21
- taskId?: string;
41
+ overallConstructor?: User;
42
+ overallConstructorId?: string;
43
+ taskConstructor?: User;
44
+ taskConstructorId?: string;
45
+ overallSupervisory?: User;
46
+ overallSupervisoryId?: string;
47
+ taskSupervisory?: User;
48
+ taskSupervisoryId?: string;
22
49
  checklistItems?: ChecklistItem[];
23
50
  buildingInspection?: BuildingInspection;
51
+ inspectionRequestDocumentNo?: string;
52
+ inspectionRequestMemo?: string;
53
+ inspectionRequestUpdatedAt?: Date;
54
+ inspectionResultDocumentNo?: string;
55
+ inspectionResultMemo?: string;
56
+ inspectionResultStatus?: InspectionResultStatus;
57
+ inspectionResultType?: InspectionResultType;
58
+ inspectionResultUpdatedAt?: Date;
24
59
  createdAt?: Date;
25
60
  updatedAt?: Date;
26
61
  deletedAt?: Date;
@@ -1,13 +1,52 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Checklist = void 0;
3
+ exports.Checklist = exports.InspectionResultType = exports.InspectionResultStatus = exports.DocumentNoType = exports.ChecklistReferenceType = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const typeorm_1 = require("typeorm");
6
6
  const type_graphql_1 = require("type-graphql");
7
7
  const auth_base_1 = require("@things-factory/auth-base");
8
- const project_1 = require("@dssp/project");
9
8
  const checklist_item_1 = require("../checklist-item/checklist-item");
10
9
  const building_inspection_1 = require("../building-inspection/building-inspection");
10
+ const building_inspection_2 = require("../building-inspection/building-inspection");
11
+ var ChecklistReferenceType;
12
+ (function (ChecklistReferenceType) {
13
+ ChecklistReferenceType["INSPECTION"] = "INSPECTION";
14
+ ChecklistReferenceType["TASK"] = "TASK"; // 공정표
15
+ })(ChecklistReferenceType || (exports.ChecklistReferenceType = ChecklistReferenceType = {}));
16
+ var DocumentNoType;
17
+ (function (DocumentNoType) {
18
+ DocumentNoType["CHECKLIST"] = "01";
19
+ DocumentNoType["INSPECTION_REQUEST"] = "02";
20
+ DocumentNoType["INSPECTION_RESULT"] = "03";
21
+ DocumentNoType["DAILY_WORKLOG"] = "04"; // 일일 업무일지
22
+ })(DocumentNoType || (exports.DocumentNoType = DocumentNoType = {}));
23
+ var InspectionResultStatus;
24
+ (function (InspectionResultStatus) {
25
+ InspectionResultStatus["PASS"] = "PASS";
26
+ InspectionResultStatus["FAIL"] = "FAIL"; // 불합격
27
+ })(InspectionResultStatus || (exports.InspectionResultStatus = InspectionResultStatus = {}));
28
+ var InspectionResultType;
29
+ (function (InspectionResultType) {
30
+ InspectionResultType["GENERAL"] = "GENERAL";
31
+ InspectionResultType["FOCUS"] = "FOCUS";
32
+ InspectionResultType["CONCEALED_WORK"] = "CONCEALED_WORK"; // 매몰부위
33
+ })(InspectionResultType || (exports.InspectionResultType = InspectionResultType = {}));
34
+ (0, type_graphql_1.registerEnumType)(ChecklistReferenceType, {
35
+ name: 'ChecklistReferenceType',
36
+ description: '체크리스트 참조 타입'
37
+ });
38
+ (0, type_graphql_1.registerEnumType)(DocumentNoType, {
39
+ name: 'DocumentNoType',
40
+ description: '문서 번호 타입'
41
+ });
42
+ (0, type_graphql_1.registerEnumType)(InspectionResultStatus, {
43
+ name: 'InspectionResultStatus',
44
+ description: '검측 결과 상태'
45
+ });
46
+ (0, type_graphql_1.registerEnumType)(InspectionResultType, {
47
+ name: 'InspectionResultType',
48
+ description: '검측 결과 타입'
49
+ });
11
50
  let Checklist = class Checklist {
12
51
  };
13
52
  exports.Checklist = Checklist;
@@ -22,27 +61,37 @@ tslib_1.__decorate([
22
61
  tslib_1.__metadata("design:type", String)
23
62
  ], Checklist.prototype, "name", void 0);
24
63
  tslib_1.__decorate([
25
- (0, typeorm_1.Column)({ nullable: true, comment: '문서 번호 동(4자리)-층(3자리)-시퀀스(6자리)' }),
64
+ (0, typeorm_1.Column)({ nullable: true, comment: '문서 번호 - 검측: 동(4자리)-층(3자리)-시퀀스(6자리), 공정표: 날짜(6자리)-시퀀스(6자리)' }),
26
65
  (0, type_graphql_1.Field)({ nullable: true }),
27
66
  tslib_1.__metadata("design:type", String)
28
67
  ], Checklist.prototype, "documentNo", void 0);
29
68
  tslib_1.__decorate([
30
- (0, typeorm_1.Column)({ nullable: false, comment: '공종' }),
69
+ (0, typeorm_1.Column)({ nullable: false, comment: '프로젝트 타입', default: building_inspection_2.ProjectType.DSSP }),
70
+ (0, type_graphql_1.Field)({ nullable: true }),
71
+ tslib_1.__metadata("design:type", String)
72
+ ], Checklist.prototype, "projectType", void 0);
73
+ tslib_1.__decorate([
74
+ (0, typeorm_1.Column)({ nullable: false, comment: '체크리스트 참조 타입 (구분 용)', default: ChecklistReferenceType.INSPECTION }),
75
+ (0, type_graphql_1.Field)({ nullable: true }),
76
+ tslib_1.__metadata("design:type", String)
77
+ ], Checklist.prototype, "checklistReferenceType", void 0);
78
+ tslib_1.__decorate([
79
+ (0, typeorm_1.Column)({ nullable: true, comment: '공종' }),
31
80
  (0, type_graphql_1.Field)({ nullable: true }),
32
81
  tslib_1.__metadata("design:type", String)
33
82
  ], Checklist.prototype, "constructionType", void 0);
34
83
  tslib_1.__decorate([
35
- (0, typeorm_1.Column)({ nullable: false, comment: '세부 공종' }),
84
+ (0, typeorm_1.Column)({ nullable: true, comment: '세부 공종' }),
36
85
  (0, type_graphql_1.Field)({ nullable: true }),
37
86
  tslib_1.__metadata("design:type", String)
38
87
  ], Checklist.prototype, "constructionDetailType", void 0);
39
88
  tslib_1.__decorate([
40
- (0, typeorm_1.Column)({ nullable: false, comment: '위치 (x동 x층)' }),
89
+ (0, typeorm_1.Column)({ nullable: true, comment: '위치 (x동 x층)' }),
41
90
  (0, type_graphql_1.Field)({ nullable: true }),
42
91
  tslib_1.__metadata("design:type", String)
43
92
  ], Checklist.prototype, "location", void 0);
44
93
  tslib_1.__decorate([
45
- (0, typeorm_1.Column)({ nullable: false, comment: '검측 도면 타입', default: '' }),
94
+ (0, typeorm_1.Column)({ nullable: true, comment: '검측 도면 타입', default: '' }),
46
95
  (0, type_graphql_1.Field)({ nullable: true }),
47
96
  tslib_1.__metadata("design:type", String)
48
97
  ], Checklist.prototype, "inspectionDrawingType", void 0);
@@ -82,15 +131,41 @@ tslib_1.__decorate([
82
131
  tslib_1.__metadata("design:type", String)
83
132
  ], Checklist.prototype, "taskSupervisorySignature", void 0);
84
133
  tslib_1.__decorate([
85
- (0, typeorm_1.ManyToOne)(() => project_1.Task),
86
- (0, typeorm_1.JoinColumn)(),
87
- (0, type_graphql_1.Field)(() => project_1.Task),
88
- tslib_1.__metadata("design:type", project_1.Task)
89
- ], Checklist.prototype, "task", void 0);
134
+ (0, typeorm_1.ManyToOne)(type => auth_base_1.User, { nullable: true }),
135
+ (0, type_graphql_1.Field)(type => auth_base_1.User, { nullable: true, description: '총괄 시공 책임자' }),
136
+ tslib_1.__metadata("design:type", auth_base_1.User)
137
+ ], Checklist.prototype, "overallConstructor", void 0);
138
+ tslib_1.__decorate([
139
+ (0, typeorm_1.RelationId)((checklist) => checklist.overallConstructor),
140
+ tslib_1.__metadata("design:type", String)
141
+ ], Checklist.prototype, "overallConstructorId", void 0);
142
+ tslib_1.__decorate([
143
+ (0, typeorm_1.ManyToOne)(type => auth_base_1.User, { nullable: true }),
144
+ (0, type_graphql_1.Field)(type => auth_base_1.User, { nullable: true, description: '공종별 시공 관리자' }),
145
+ tslib_1.__metadata("design:type", auth_base_1.User)
146
+ ], Checklist.prototype, "taskConstructor", void 0);
147
+ tslib_1.__decorate([
148
+ (0, typeorm_1.RelationId)((checklist) => checklist.taskConstructor),
149
+ tslib_1.__metadata("design:type", String)
150
+ ], Checklist.prototype, "taskConstructorId", void 0);
151
+ tslib_1.__decorate([
152
+ (0, typeorm_1.ManyToOne)(type => auth_base_1.User, { nullable: true }),
153
+ (0, type_graphql_1.Field)(type => auth_base_1.User, { nullable: true, description: '총괄 감리 책임자' }),
154
+ tslib_1.__metadata("design:type", auth_base_1.User)
155
+ ], Checklist.prototype, "overallSupervisory", void 0);
156
+ tslib_1.__decorate([
157
+ (0, typeorm_1.RelationId)((checklist) => checklist.overallSupervisory),
158
+ tslib_1.__metadata("design:type", String)
159
+ ], Checklist.prototype, "overallSupervisoryId", void 0);
160
+ tslib_1.__decorate([
161
+ (0, typeorm_1.ManyToOne)(type => auth_base_1.User, { nullable: true }),
162
+ (0, type_graphql_1.Field)(type => auth_base_1.User, { nullable: true, description: '건축사보 (공종별 감리 관리자)' }),
163
+ tslib_1.__metadata("design:type", auth_base_1.User)
164
+ ], Checklist.prototype, "taskSupervisory", void 0);
90
165
  tslib_1.__decorate([
91
- (0, typeorm_1.RelationId)((checklist) => checklist.task),
166
+ (0, typeorm_1.RelationId)((checklist) => checklist.taskSupervisory),
92
167
  tslib_1.__metadata("design:type", String)
93
- ], Checklist.prototype, "taskId", void 0);
168
+ ], Checklist.prototype, "taskSupervisoryId", void 0);
94
169
  tslib_1.__decorate([
95
170
  (0, typeorm_1.OneToMany)(() => checklist_item_1.ChecklistItem, checklistItem => checklistItem.checklist),
96
171
  (0, type_graphql_1.Field)(() => [checklist_item_1.ChecklistItem]),
@@ -101,6 +176,48 @@ tslib_1.__decorate([
101
176
  (0, type_graphql_1.Field)(() => building_inspection_1.BuildingInspection),
102
177
  tslib_1.__metadata("design:type", building_inspection_1.BuildingInspection)
103
178
  ], Checklist.prototype, "buildingInspection", void 0);
179
+ tslib_1.__decorate([
180
+ (0, typeorm_1.Column)({ nullable: true, comment: '검측 요청서 문서번호 - {네이밍} 검측 제02-00001호)' }) // DocumentNoType 참조
181
+ ,
182
+ (0, type_graphql_1.Field)({ nullable: true }),
183
+ tslib_1.__metadata("design:type", String)
184
+ ], Checklist.prototype, "inspectionRequestDocumentNo", void 0);
185
+ tslib_1.__decorate([
186
+ (0, typeorm_1.Column)({ nullable: true, comment: '검측 요청서 - 검측 사항' }),
187
+ (0, type_graphql_1.Field)({ nullable: true }),
188
+ tslib_1.__metadata("design:type", String)
189
+ ], Checklist.prototype, "inspectionRequestMemo", void 0);
190
+ tslib_1.__decorate([
191
+ (0, typeorm_1.Column)({ nullable: true, comment: '검측 요청서 - 요청 시간' }),
192
+ (0, type_graphql_1.Field)({ nullable: true }),
193
+ tslib_1.__metadata("design:type", Date)
194
+ ], Checklist.prototype, "inspectionRequestUpdatedAt", void 0);
195
+ tslib_1.__decorate([
196
+ (0, typeorm_1.Column)({ nullable: true, comment: '검측 결과 통보서 문서번호 - {네이밍} 검측 제03-00001호)' }) // DocumentNoType 참조
197
+ ,
198
+ (0, type_graphql_1.Field)({ nullable: true }),
199
+ tslib_1.__metadata("design:type", String)
200
+ ], Checklist.prototype, "inspectionResultDocumentNo", void 0);
201
+ tslib_1.__decorate([
202
+ (0, typeorm_1.Column)({ nullable: true, comment: '검측 결과 통보서 - 지시 사항' }),
203
+ (0, type_graphql_1.Field)({ nullable: true }),
204
+ tslib_1.__metadata("design:type", String)
205
+ ], Checklist.prototype, "inspectionResultMemo", void 0);
206
+ tslib_1.__decorate([
207
+ (0, typeorm_1.Column)({ nullable: true, comment: '검측 결과 통보서 - 검측 결과 여부' }),
208
+ (0, type_graphql_1.Field)({ nullable: true }),
209
+ tslib_1.__metadata("design:type", String)
210
+ ], Checklist.prototype, "inspectionResultStatus", void 0);
211
+ tslib_1.__decorate([
212
+ (0, typeorm_1.Column)({ nullable: true, comment: '검측 결과 통보서 - 검측 결과 타입' }),
213
+ (0, type_graphql_1.Field)({ nullable: true }),
214
+ tslib_1.__metadata("design:type", String)
215
+ ], Checklist.prototype, "inspectionResultType", void 0);
216
+ tslib_1.__decorate([
217
+ (0, typeorm_1.Column)({ nullable: true, comment: '검측 결과 통보서 - 검측 결과 통보 시간' }),
218
+ (0, type_graphql_1.Field)({ nullable: true }),
219
+ tslib_1.__metadata("design:type", Date)
220
+ ], Checklist.prototype, "inspectionResultUpdatedAt", void 0);
104
221
  tslib_1.__decorate([
105
222
  (0, typeorm_1.CreateDateColumn)(),
106
223
  (0, type_graphql_1.Field)({ nullable: true }),
@@ -136,7 +253,6 @@ tslib_1.__decorate([
136
253
  ], Checklist.prototype, "updaterId", void 0);
137
254
  exports.Checklist = Checklist = tslib_1.__decorate([
138
255
  (0, typeorm_1.Entity)({ comment: '체크리스트' }),
139
- (0, typeorm_1.Index)('ix_checklist_0', (checklist) => [checklist.task], { where: '"deleted_at" IS NULL' }),
140
256
  (0, typeorm_1.Index)('ix_checklist_1', (checklist) => [checklist.documentNo, checklist.createdAt], { where: '"deleted_at" IS NULL' }),
141
257
  (0, type_graphql_1.ObjectType)()
142
258
  ], Checklist);
@@ -1 +1 @@
1
- {"version":3,"file":"checklist.js","sourceRoot":"","sources":["../../../server/service/checklist/checklist.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n CreateDateColumn,\n UpdateDateColumn,\n DeleteDateColumn,\n Entity,\n Index,\n Column,\n RelationId,\n ManyToOne,\n OneToMany,\n OneToOne,\n JoinColumn,\n PrimaryGeneratedColumn\n} from 'typeorm'\nimport { ObjectType, Field, ID, registerEnumType } from 'type-graphql'\n\nimport { User } from '@things-factory/auth-base'\nimport { Task } from '@dssp/project'\nimport { ChecklistItem } from '../checklist-item/checklist-item'\nimport { BuildingInspection } from '../building-inspection/building-inspection'\n\n@Entity({ comment: '체크리스트' })\n@Index('ix_checklist_0', (checklist: Checklist) => [checklist.task], { where: '\"deleted_at\" IS NULL' })\n@Index('ix_checklist_1', (checklist: Checklist) => [checklist.documentNo, checklist.createdAt], { where: '\"deleted_at\" IS NULL' })\n@ObjectType()\nexport class Checklist {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @Column({ nullable: true, comment: '이름' })\n @Field({ nullable: true })\n name?: string\n\n @Column({ nullable: true, comment: '문서 번호 동(4자리)-층(3자리)-시퀀스(6자리)' })\n @Field({ nullable: true })\n documentNo?: string\n\n @Column({ nullable: false, comment: '공종' })\n @Field({ nullable: true })\n constructionType?: string\n\n @Column({ nullable: false, comment: '세부 공종' })\n @Field({ nullable: true })\n constructionDetailType?: string\n\n @Column({ nullable: false, comment: '위치 (x동 x층)' })\n @Field({ nullable: true })\n location?: string\n\n @Column({ nullable: false, comment: '검측 도면 타입', default: '' })\n @Field({ nullable: true })\n inspectionDrawingType?: string\n\n @Column('simple-array', { nullable: true, comment: '검측 부위' })\n @Field(() => [String], { nullable: true })\n inspectionParts?: string[]\n\n @Column({ nullable: true, comment: '시공자 점검일' })\n @Field({ nullable: true })\n constructionInspectionDate?: Date\n\n @Column({ nullable: true, comment: '감리자 점검일' })\n @Field({ nullable: true })\n supervisorInspectionDate?: Date\n\n @Column({ nullable: true, comment: '총괄 시공 책임자 사인' })\n @Field({ nullable: true })\n overallConstructorSignature?: string\n\n @Column({ nullable: true, comment: '공종별 시공 관리자 사인' })\n @Field({ nullable: true })\n taskConstructorSignature?: string\n\n @Column({ nullable: true, comment: '총괄 감리 책임자 사인' })\n @Field({ nullable: true })\n overallSupervisorySignature?: string\n\n @Column({ nullable: true, comment: '건축사보 (공종별 감리 관리자) 사인' })\n @Field({ nullable: true })\n taskSupervisorySignature?: string\n\n // 공정표 작업 정보 (상위 테이블 참조)\n @ManyToOne(() => Task)\n @JoinColumn()\n @Field(() => Task)\n task?: Task\n\n @RelationId((checklist: Checklist) => checklist.task)\n taskId?: string\n\n // 체크리스트 아이템 정보 (하위 테이블 참조)\n @OneToMany(() => ChecklistItem, checklistItem => checklistItem.checklist)\n @Field(() => [ChecklistItem])\n checklistItems?: ChecklistItem[]\n\n // 검측 정보 (1:1 하위 테이블 참조)\n @OneToOne(() => BuildingInspection, buildingInspection => buildingInspection.checklist)\n @Field(() => BuildingInspection)\n buildingInspection?: BuildingInspection\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n\n @UpdateDateColumn()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @DeleteDateColumn()\n @Field({ nullable: true })\n deletedAt?: Date\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n creator?: User\n\n @RelationId((checklist: Checklist) => checklist.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n updater?: User\n\n @RelationId((checklist: Checklist) => checklist.updater)\n updaterId?: string\n}\n"]}
1
+ {"version":3,"file":"checklist.js","sourceRoot":"","sources":["../../../server/service/checklist/checklist.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n CreateDateColumn,\n UpdateDateColumn,\n DeleteDateColumn,\n Entity,\n Index,\n Column,\n RelationId,\n ManyToOne,\n OneToMany,\n OneToOne,\n PrimaryGeneratedColumn\n} from 'typeorm'\nimport { ObjectType, Field, ID, registerEnumType } from 'type-graphql'\n\nimport { User } from '@things-factory/auth-base'\nimport { ChecklistItem } from '../checklist-item/checklist-item'\nimport { BuildingInspection } from '../building-inspection/building-inspection'\nimport { ProjectType } from '../building-inspection/building-inspection'\n\nexport enum ChecklistReferenceType {\n INSPECTION = 'INSPECTION', // 검측\n TASK = 'TASK' // 공정표\n}\n\nexport enum DocumentNoType {\n CHECKLIST = '01', // 체크리스트\n INSPECTION_REQUEST = '02', // 검측 요청서\n INSPECTION_RESULT = '03', // 검측 결과 통보서\n DAILY_WORKLOG = '04' // 일일 업무일지\n}\n\nexport enum InspectionResultStatus {\n PASS = 'PASS', // 합격\n FAIL = 'FAIL' // 불합격\n}\n\nexport enum InspectionResultType {\n GENERAL = 'GENERAL', // 일반\n FOCUS = 'FOCUS', // 중점\n CONCEALED_WORK = 'CONCEALED_WORK' // 매몰부위\n}\n\nregisterEnumType(ChecklistReferenceType, {\n name: 'ChecklistReferenceType',\n description: '체크리스트 참조 타입'\n})\n\nregisterEnumType(DocumentNoType, {\n name: 'DocumentNoType',\n description: '문서 번호 타입'\n})\n\nregisterEnumType(InspectionResultStatus, {\n name: 'InspectionResultStatus',\n description: '검측 결과 상태'\n})\n\nregisterEnumType(InspectionResultType, {\n name: 'InspectionResultType',\n description: '검측 결과 타입'\n})\n\n@Entity({ comment: '체크리스트' })\n@Index('ix_checklist_1', (checklist: Checklist) => [checklist.documentNo, checklist.createdAt], { where: '\"deleted_at\" IS NULL' })\n@ObjectType()\nexport class Checklist {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @Column({ nullable: true, comment: '이름' })\n @Field({ nullable: true })\n name?: string\n\n @Column({ nullable: true, comment: '문서 번호 - 검측: 동(4자리)-층(3자리)-시퀀스(6자리), 공정표: 날짜(6자리)-시퀀스(6자리)' })\n @Field({ nullable: true })\n documentNo?: string\n\n @Column({ nullable: false, comment: '프로젝트 타입', default: ProjectType.DSSP })\n @Field({ nullable: true })\n projectType?: ProjectType\n\n @Column({ nullable: false, comment: '체크리스트 참조 타입 (구분 용)', default: ChecklistReferenceType.INSPECTION })\n @Field({ nullable: true })\n checklistReferenceType?: ChecklistReferenceType\n\n @Column({ nullable: true, comment: '공종' })\n @Field({ nullable: true })\n constructionType?: string\n\n @Column({ nullable: true, comment: '세부 공종' })\n @Field({ nullable: true })\n constructionDetailType?: string\n\n @Column({ nullable: true, comment: '위치 (x동 x층)' })\n @Field({ nullable: true })\n location?: string\n\n @Column({ nullable: true, comment: '검측 도면 타입', default: '' })\n @Field({ nullable: true })\n inspectionDrawingType?: string\n\n @Column('simple-array', { nullable: true, comment: '검측 부위' })\n @Field(() => [String], { nullable: true })\n inspectionParts?: string[]\n\n @Column({ nullable: true, comment: '시공자 점검일' })\n @Field({ nullable: true })\n constructionInspectionDate?: Date\n\n @Column({ nullable: true, comment: '감리자 점검일' })\n @Field({ nullable: true })\n supervisorInspectionDate?: Date\n\n @Column({ nullable: true, comment: '총괄 시공 책임자 사인' })\n @Field({ nullable: true })\n overallConstructorSignature?: string\n\n @Column({ nullable: true, comment: '공종별 시공 관리자 사인' })\n @Field({ nullable: true })\n taskConstructorSignature?: string\n\n @Column({ nullable: true, comment: '총괄 감리 책임자 사인' })\n @Field({ nullable: true })\n overallSupervisorySignature?: string\n\n @Column({ nullable: true, comment: '건축사보 (공종별 감리 관리자) 사인' })\n @Field({ nullable: true })\n taskSupervisorySignature?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true, description: '총괄 시공 책임자' })\n overallConstructor?: User\n\n @RelationId((checklist: Checklist) => checklist.overallConstructor)\n overallConstructorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true, description: '공종별 시공 관리자' })\n taskConstructor?: User\n\n @RelationId((checklist: Checklist) => checklist.taskConstructor)\n taskConstructorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true, description: '총괄 감리 책임자' })\n overallSupervisory?: User\n\n @RelationId((checklist: Checklist) => checklist.overallSupervisory)\n overallSupervisoryId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true, description: '건축사보 (공종별 감리 관리자)' })\n taskSupervisory?: User\n\n @RelationId((checklist: Checklist) => checklist.taskSupervisory)\n taskSupervisoryId?: string\n\n // 체크리스트 아이템 정보 (하위 테이블 참조)\n @OneToMany(() => ChecklistItem, checklistItem => checklistItem.checklist)\n @Field(() => [ChecklistItem])\n checklistItems?: ChecklistItem[]\n\n // 검측 정보 (1:1 하위 테이블 참조)\n @OneToOne(() => BuildingInspection, buildingInspection => buildingInspection.checklist)\n @Field(() => BuildingInspection)\n buildingInspection?: BuildingInspection\n\n @Column({ nullable: true, comment: '검측 요청서 문서번호 - {네이밍} 검측 제02-00001호)' }) // DocumentNoType 참조\n @Field({ nullable: true })\n inspectionRequestDocumentNo?: string\n\n @Column({ nullable: true, comment: '검측 요청서 - 검측 사항' })\n @Field({ nullable: true })\n inspectionRequestMemo?: string\n\n @Column({ nullable: true, comment: '검측 요청서 - 요청 시간' })\n @Field({ nullable: true })\n inspectionRequestUpdatedAt?: Date\n\n @Column({ nullable: true, comment: '검측 결과 통보서 문서번호 - {네이밍} 검측 제03-00001호)' }) // DocumentNoType 참조\n @Field({ nullable: true })\n inspectionResultDocumentNo?: string\n\n @Column({ nullable: true, comment: '검측 결과 통보서 - 지시 사항' })\n @Field({ nullable: true })\n inspectionResultMemo?: string\n\n @Column({ nullable: true, comment: '검측 결과 통보서 - 검측 결과 여부' })\n @Field({ nullable: true })\n inspectionResultStatus?: InspectionResultStatus\n\n @Column({ nullable: true, comment: '검측 결과 통보서 - 검측 결과 타입' })\n @Field({ nullable: true })\n inspectionResultType?: InspectionResultType\n\n @Column({ nullable: true, comment: '검측 결과 통보서 - 검측 결과 통보 시간' })\n @Field({ nullable: true })\n inspectionResultUpdatedAt?: Date\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n\n @UpdateDateColumn()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @DeleteDateColumn()\n @Field({ nullable: true })\n deletedAt?: Date\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n creator?: User\n\n @RelationId((checklist: Checklist) => checklist.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n updater?: User\n\n @RelationId((checklist: Checklist) => checklist.updater)\n updaterId?: string\n}\n"]}
@@ -2,7 +2,5 @@ import { Checklist } from './checklist';
2
2
  import { ChecklistQuery } from './checklist-query';
3
3
  import { ChecklistHistory } from './checklist-history';
4
4
  import { ChecklistMutation } from './checklist-mutation';
5
- import { ChecklistHistoryEntitySubscriber } from './event-subscriber';
6
5
  export declare const entities: (typeof Checklist | typeof ChecklistHistory)[];
7
6
  export declare const resolvers: (typeof ChecklistQuery | typeof ChecklistMutation)[];
8
- export declare const subscribers: (typeof ChecklistHistoryEntitySubscriber)[];
@@ -1,12 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.subscribers = exports.resolvers = exports.entities = void 0;
3
+ exports.resolvers = exports.entities = void 0;
4
4
  const checklist_1 = require("./checklist");
5
5
  const checklist_query_1 = require("./checklist-query");
6
6
  const checklist_history_1 = require("./checklist-history");
7
7
  const checklist_mutation_1 = require("./checklist-mutation");
8
- const event_subscriber_1 = require("./event-subscriber");
9
8
  exports.entities = [checklist_1.Checklist, checklist_history_1.ChecklistHistory];
10
9
  exports.resolvers = [checklist_query_1.ChecklistQuery, checklist_mutation_1.ChecklistMutation];
11
- exports.subscribers = [event_subscriber_1.ChecklistHistoryEntitySubscriber];
12
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/service/checklist/index.ts"],"names":[],"mappings":";;;AAAA,2CAAuC;AACvC,uDAAkD;AAClD,2DAAsD;AACtD,6DAAwD;AACxD,yDAAqE;AAExD,QAAA,QAAQ,GAAG,CAAC,qBAAS,EAAE,oCAAgB,CAAC,CAAA;AACxC,QAAA,SAAS,GAAG,CAAC,gCAAc,EAAE,sCAAiB,CAAC,CAAA;AAC/C,QAAA,WAAW,GAAG,CAAC,mDAAgC,CAAC,CAAA","sourcesContent":["import { Checklist } from './checklist'\nimport { ChecklistQuery } from './checklist-query'\nimport { ChecklistHistory } from './checklist-history'\nimport { ChecklistMutation } from './checklist-mutation'\nimport { ChecklistHistoryEntitySubscriber } from './event-subscriber'\n\nexport const entities = [Checklist, ChecklistHistory]\nexport const resolvers = [ChecklistQuery, ChecklistMutation]\nexport const subscribers = [ChecklistHistoryEntitySubscriber]\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/service/checklist/index.ts"],"names":[],"mappings":";;;AAAA,2CAAuC;AACvC,uDAAkD;AAClD,2DAAsD;AACtD,6DAAwD;AAE3C,QAAA,QAAQ,GAAG,CAAC,qBAAS,EAAE,oCAAgB,CAAC,CAAA;AACxC,QAAA,SAAS,GAAG,CAAC,gCAAc,EAAE,sCAAiB,CAAC,CAAA","sourcesContent":["import { Checklist } from './checklist'\nimport { ChecklistQuery } from './checklist-query'\nimport { ChecklistHistory } from './checklist-history'\nimport { ChecklistMutation } from './checklist-mutation'\n\nexport const entities = [Checklist, ChecklistHistory]\nexport const resolvers = [ChecklistQuery, ChecklistMutation]\n"]}
@@ -11,7 +11,7 @@ export declare class ChecklistItemQuery {
11
11
  inspectionByChecklistItemId(checklistItemId: string): Promise<BuildingInspection>;
12
12
  checklistItemComments(checklistItem: ChecklistItem): Promise<ChecklistItemComment[]>;
13
13
  checklistItemCommentCount(checklistItem: ChecklistItem): Promise<number>;
14
- checklistItemAttachments(checklistItem: ChecklistItem): Promise<Attachment[]>;
14
+ checklistItemAttachments(checklistItem: ChecklistItem, description?: string): Promise<Attachment[]>;
15
15
  checklistItemAttachmentCount(checklistItem: ChecklistItem): Promise<number>;
16
16
  updater(checklistItem: ChecklistItem): Promise<User>;
17
17
  creator(checklistItem: ChecklistItem): Promise<User>;
@@ -39,11 +39,12 @@ let ChecklistItemQuery = class ChecklistItemQuery {
39
39
  async checklistItemCommentCount(checklistItem) {
40
40
  return await (0, shell_1.getRepository)(checklist_item_comment_1.ChecklistItemComment).countBy({ checklistItem: { id: checklistItem.id } });
41
41
  }
42
- async checklistItemAttachments(checklistItem) {
42
+ async checklistItemAttachments(checklistItem, description) {
43
43
  return await (0, shell_1.getRepository)(attachment_base_1.Attachment).find({
44
44
  where: {
45
45
  refType: checklist_item_1.ChecklistItem.name,
46
- refBy: checklistItem.id
46
+ refBy: checklistItem.id,
47
+ description: description // 검측 상태로 받으며 어떤 스탭에 올렸는지로 시공자/감리자 구분
47
48
  },
48
49
  order: {
49
50
  createdAt: 'DESC'
@@ -105,8 +106,9 @@ tslib_1.__decorate([
105
106
  tslib_1.__decorate([
106
107
  (0, type_graphql_1.FieldResolver)(type => [attachment_base_1.Attachment]),
107
108
  tslib_1.__param(0, (0, type_graphql_1.Root)()),
109
+ tslib_1.__param(1, (0, type_graphql_1.Arg)('description', { nullable: true })),
108
110
  tslib_1.__metadata("design:type", Function),
109
- tslib_1.__metadata("design:paramtypes", [checklist_item_1.ChecklistItem]),
111
+ tslib_1.__metadata("design:paramtypes", [checklist_item_1.ChecklistItem, String]),
110
112
  tslib_1.__metadata("design:returntype", Promise)
111
113
  ], ChecklistItemQuery.prototype, "checklistItemAttachments", null);
112
114
  tslib_1.__decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"checklist-item-query.js","sourceRoot":"","sources":["../../../server/service/checklist-item/checklist-item-query.ts"],"names":[],"mappings":";;;;AAAA,+CAAmF;AACnF,qEAA4D;AAC5D,iDAA+F;AAC/F,yDAAgD;AAChD,qDAAgD;AAChD,+DAAyD;AACzD,6FAAuF;AACvF,oFAA+E;AAGxE,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAEvB,AAAN,KAAK,CAAC,aAAa,CAAY,EAAU,EAAS,OAAwB;QACxE,OAAO,MAAM,IAAA,qBAAa,EAAC,8BAAa,CAAC,CAAC,OAAO,CAAC;YAChD,KAAK,EAAE,EAAE,EAAE,EAAE;SACd,CAAC,CAAA;IACJ,CAAC;IAGK,AAAN,KAAK,CAAC,cAAc,CAAS,MAAiB,EAAS,OAAwB;QAC7E,MAAM,YAAY,GAAG,IAAA,qCAA6B,EAAC;YACjD,MAAM;YACN,UAAU,EAAE,MAAM,IAAA,qBAAa,EAAC,8BAAa,CAAC;YAC9C,WAAW,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC;SACrC,CAAC,CAAA;QAEF,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,YAAY,CAAC,eAAe,EAAE,CAAA;QAE3D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAGK,AAAN,KAAK,CAAC,2BAA2B,CAAC,eAAuB;QACvD,OAAO,IAAA,qBAAa,EAAC,wCAAkB,CAAC;aACrC,kBAAkB,CAAC,IAAI,CAAC;aACxB,SAAS,CAAC,YAAY,EAAE,GAAG,EAAE,wBAAwB,CAAC;aACtD,SAAS,CAAC,iBAAiB,EAAE,IAAI,EAAE,wBAAwB,CAAC;aAC5D,KAAK,CAAC,0BAA0B,EAAE,EAAE,eAAe,EAAE,CAAC;aACtD,MAAM,EAAE,CAAA;IACb,CAAC;IAGK,AAAN,KAAK,CAAC,qBAAqB,CAAS,aAA4B;QAC9D,OAAO,MAAM,IAAA,qBAAa,EAAC,6CAAoB,CAAC,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IACtG,CAAC;IAGK,AAAN,KAAK,CAAC,yBAAyB,CAAS,aAA4B;QAClE,OAAO,MAAM,IAAA,qBAAa,EAAC,6CAAoB,CAAC,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;IACvG,CAAC;IAGK,AAAN,KAAK,CAAC,wBAAwB,CAAS,aAA4B;QACjE,OAAO,MAAM,IAAA,qBAAa,EAAC,4BAAU,CAAC,CAAC,IAAI,CAAC;YAC1C,KAAK,EAAE;gBACL,OAAO,EAAE,8BAAa,CAAC,IAAI;gBAC3B,KAAK,EAAE,aAAa,CAAC,EAAE;aACxB;YACD,KAAK,EAAE;gBACL,SAAS,EAAE,MAAM;aAClB;SACF,CAAC,CAAA;IACJ,CAAC;IAGK,AAAN,KAAK,CAAC,4BAA4B,CAAS,aAA4B;QACrE,OAAO,MAAM,IAAA,qBAAa,EAAC,4BAAU,CAAC,CAAC,KAAK,CAAC;YAC3C,KAAK,EAAE;gBACL,OAAO,EAAE,8BAAa,CAAC,IAAI;gBAC3B,KAAK,EAAE,aAAa,CAAC,EAAE;aACxB;SACF,CAAC,CAAA;IACJ,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAS,aAA4B;QAChD,OAAO,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,SAAS,EAAE,CAAC,CAAA;IAC7E,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAS,aAA4B;QAChD,OAAO,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,SAAS,EAAE,CAAC,CAAA;IAC7E,CAAC;CACF,CAAA;AAzEY,gDAAkB;AAEvB;IADL,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,8BAAc,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,0BAA0B,EAAE,CAAC;IACzE,mBAAA,IAAA,kBAAG,EAAC,IAAI,CAAC,CAAA;IAAc,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;uDAIhD;AAGK;IADL,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,uCAAiB,EAAE,EAAE,WAAW,EAAE,kCAAkC,EAAE,CAAC;IACnE,mBAAA,IAAA,mBAAI,GAAE,CAAA;IAAqB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;6CAAjB,iBAAS;;wDAU7C;AAGK;IADL,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,wCAAkB,EAAE,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC;;;;qEAQ9F;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,6CAAoB,CAAC,CAAC;IACjB,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAgB,8BAAa;;+DAE/D;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;IACG,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAgB,8BAAa;;mEAEnE;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,4BAAU,CAAC,CAAC;IACJ,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAgB,8BAAa;;kEAUlE;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;IACM,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAgB,8BAAa;;sEAOtE;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,CAAC;IACb,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAgB,8BAAa;;iDAEjD;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,CAAC;IACb,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAgB,8BAAa;;iDAEjD;6BAxEU,kBAAkB;IAD9B,IAAA,uBAAQ,EAAC,8BAAa,CAAC;GACX,kBAAkB,CAyE9B","sourcesContent":["import { Resolver, Query, FieldResolver, Root, Args, Arg, Ctx } from 'type-graphql'\nimport { Attachment } from '@things-factory/attachment-base'\nimport { getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'\nimport { User } from '@things-factory/auth-base'\nimport { ChecklistItem } from './checklist-item'\nimport { ChecklistItemList } from './checklist-item-type'\nimport { ChecklistItemComment } from '../checklist-item-comment/checklist-item-comment'\nimport { BuildingInspection } from '../building-inspection/building-inspection'\n\n@Resolver(ChecklistItem)\nexport class ChecklistItemQuery {\n @Query(returns => ChecklistItem!, { nullable: true, description: 'To fetch a ChecklistItem' })\n async checklistItem(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<ChecklistItem> {\n return await getRepository(ChecklistItem).findOne({\n where: { id }\n })\n }\n\n @Query(returns => ChecklistItemList, { description: 'To fetch multiple ChecklistItems' })\n async checklistItems(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ChecklistItemList> {\n const queryBuilder = getQueryBuilderFromListParams({\n params,\n repository: await getRepository(ChecklistItem),\n searchables: ['name', 'description']\n })\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @Query(returns => BuildingInspection, { description: 'BuildingInspection By ChecklistItemId' })\n async inspectionByChecklistItemId(checklistItemId: string): Promise<BuildingInspection> {\n return getRepository(BuildingInspection)\n .createQueryBuilder('bi')\n .innerJoin('checklists', 'c', 'bi.checklist_id = c.id')\n .innerJoin('checklist_items', 'ci', 'c.id = ci.checklist_id')\n .where('ci.id = :checklistItemId', { checklistItemId })\n .getOne()\n }\n\n @FieldResolver(type => [ChecklistItemComment])\n async checklistItemComments(@Root() checklistItem: ChecklistItem): Promise<ChecklistItemComment[]> {\n return await getRepository(ChecklistItemComment).findBy({ checklistItem: { id: checklistItem.id } })\n }\n\n @FieldResolver(type => Number)\n async checklistItemCommentCount(@Root() checklistItem: ChecklistItem): Promise<number> {\n return await getRepository(ChecklistItemComment).countBy({ checklistItem: { id: checklistItem.id } })\n }\n\n @FieldResolver(type => [Attachment])\n async checklistItemAttachments(@Root() checklistItem: ChecklistItem): Promise<Attachment[]> {\n return await getRepository(Attachment).find({\n where: {\n refType: ChecklistItem.name,\n refBy: checklistItem.id\n },\n order: {\n createdAt: 'DESC'\n }\n })\n }\n\n @FieldResolver(type => Number)\n async checklistItemAttachmentCount(@Root() checklistItem: ChecklistItem): Promise<number> {\n return await getRepository(Attachment).count({\n where: {\n refType: ChecklistItem.name,\n refBy: checklistItem.id\n }\n })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() checklistItem: ChecklistItem): Promise<User> {\n return await getRepository(User).findOneBy({ id: checklistItem.updaterId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() checklistItem: ChecklistItem): Promise<User> {\n return await getRepository(User).findOneBy({ id: checklistItem.creatorId })\n }\n}\n"]}
1
+ {"version":3,"file":"checklist-item-query.js","sourceRoot":"","sources":["../../../server/service/checklist-item/checklist-item-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Resolver, Query, FieldResolver, Root, Args, Arg, Ctx } from 'type-graphql'\nimport { Attachment } from '@things-factory/attachment-base'\nimport { getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'\nimport { User } from '@things-factory/auth-base'\nimport { ChecklistItem } from './checklist-item'\nimport { ChecklistItemList } from './checklist-item-type'\nimport { ChecklistItemComment } from '../checklist-item-comment/checklist-item-comment'\nimport { BuildingInspection } from '../building-inspection/building-inspection'\n\n@Resolver(ChecklistItem)\nexport class ChecklistItemQuery {\n @Query(returns => ChecklistItem!, { nullable: true, description: 'To fetch a ChecklistItem' })\n async checklistItem(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<ChecklistItem> {\n return await getRepository(ChecklistItem).findOne({\n where: { id }\n })\n }\n\n @Query(returns => ChecklistItemList, { description: 'To fetch multiple ChecklistItems' })\n async checklistItems(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<ChecklistItemList> {\n const queryBuilder = getQueryBuilderFromListParams({\n params,\n repository: await getRepository(ChecklistItem),\n searchables: ['name', 'description']\n })\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @Query(returns => BuildingInspection, { description: 'BuildingInspection By ChecklistItemId' })\n async inspectionByChecklistItemId(checklistItemId: string): Promise<BuildingInspection> {\n return getRepository(BuildingInspection)\n .createQueryBuilder('bi')\n .innerJoin('checklists', 'c', 'bi.checklist_id = c.id')\n .innerJoin('checklist_items', 'ci', 'c.id = ci.checklist_id')\n .where('ci.id = :checklistItemId', { checklistItemId })\n .getOne()\n }\n\n @FieldResolver(type => [ChecklistItemComment])\n async checklistItemComments(@Root() checklistItem: ChecklistItem): Promise<ChecklistItemComment[]> {\n return await getRepository(ChecklistItemComment).findBy({ checklistItem: { id: checklistItem.id } })\n }\n\n @FieldResolver(type => Number)\n async checklistItemCommentCount(@Root() checklistItem: ChecklistItem): Promise<number> {\n return await getRepository(ChecklistItemComment).countBy({ checklistItem: { id: checklistItem.id } })\n }\n\n @FieldResolver(type => [Attachment])\n async checklistItemAttachments(\n @Root() checklistItem: ChecklistItem,\n @Arg('description', { nullable: true }) description?: string\n ): Promise<Attachment[]> {\n return await getRepository(Attachment).find({\n where: {\n refType: ChecklistItem.name,\n refBy: checklistItem.id,\n description: description // 검측 상태로 받으며 어떤 스탭에 올렸는지로 시공자/감리자 구분\n },\n order: {\n createdAt: 'DESC'\n }\n })\n }\n\n @FieldResolver(type => Number)\n async checklistItemAttachmentCount(@Root() checklistItem: ChecklistItem): Promise<number> {\n return await getRepository(Attachment).count({\n where: {\n refType: ChecklistItem.name,\n refBy: checklistItem.id\n }\n })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() checklistItem: ChecklistItem): Promise<User> {\n return await getRepository(User).findOneBy({ id: checklistItem.updaterId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() checklistItem: ChecklistItem): Promise<User> {\n return await getRepository(User).findOneBy({ id: checklistItem.creatorId })\n }\n}\n"]}
@@ -1,6 +1,7 @@
1
1
  import { ChecklistItemComment } from './checklist-item-comment';
2
2
  import { NewChecklistItemComment, ChecklistItemCommentPatch } from './checklist-item-comment-type';
3
3
  export declare class ChecklistItemCommentMutation {
4
+ private getStatusByChecklistItemId;
4
5
  createChecklistItemComment(checklistItemComment: NewChecklistItemComment, context: ResolverContext): Promise<ChecklistItemComment>;
5
6
  updateChecklistItemComment(id: string, patch: ChecklistItemCommentPatch, context: ResolverContext): Promise<ChecklistItemComment>;
6
7
  deleteChecklistItemComment(id: string, context: ResolverContext): Promise<boolean>;
@@ -8,14 +8,39 @@ const checklist_item_comment_1 = require("./checklist-item-comment");
8
8
  const checklist_item_comment_type_1 = require("./checklist-item-comment-type");
9
9
  const building_inspection_1 = require("../building-inspection/building-inspection");
10
10
  const checklist_item_query_1 = require("../checklist-item/checklist-item-query");
11
+ const checklist_1 = require("../checklist/checklist");
12
+ const checklist_item_1 = require("../checklist-item/checklist-item");
11
13
  let ChecklistItemCommentMutation = class ChecklistItemCommentMutation {
14
+ async getStatusByChecklistItemId(checklistItemId, tx) {
15
+ var _a;
16
+ // 1. ChecklistItem에서 Checklist 정보 조회
17
+ const checklistItem = await (0, shell_1.getRepository)(checklist_item_1.ChecklistItem, tx).findOne({
18
+ where: { id: checklistItemId },
19
+ relations: ['checklist']
20
+ });
21
+ if (!checklistItem || !checklistItem.checklist) {
22
+ throw new Error('체크리스트 아이템을 찾을 수 없습니다.');
23
+ }
24
+ const checklist = checklistItem.checklist;
25
+ // 2. checklistReferenceType에 따라 분기 처리
26
+ if (checklist.checklistReferenceType === checklist_1.ChecklistReferenceType.INSPECTION) {
27
+ // INSPECTION: 기존 방식 - BuildingInspection에서 status 조회
28
+ const checklistItemQuery = new checklist_item_query_1.ChecklistItemQuery();
29
+ const inspection = await checklistItemQuery.inspectionByChecklistItemId(checklistItemId);
30
+ return inspection === null || inspection === void 0 ? void 0 : inspection.status;
31
+ }
32
+ else if (checklist.checklistReferenceType === checklist_1.ChecklistReferenceType.TASK) {
33
+ // TASK: TaskChecklistBinding에서 status 조회
34
+ const result = await tx.query('SELECT status FROM task_checklist_bindings WHERE checklist_id = $1', [checklist.id]);
35
+ return (_a = result === null || result === void 0 ? void 0 : result[0]) === null || _a === void 0 ? void 0 : _a.status;
36
+ }
37
+ }
12
38
  async createChecklistItemComment(checklistItemComment, context) {
13
39
  const { user, tx } = context.state;
14
40
  const { comment, checklistItemId } = checklistItemComment;
15
41
  // 합격 상태인지 체크
16
- const checklistItemQuery = new checklist_item_query_1.ChecklistItemQuery();
17
- const inspection = await checklistItemQuery.inspectionByChecklistItemId(checklistItemId);
18
- if (inspection.status === building_inspection_1.BuildingInspectionStatus.PASS) {
42
+ const status = await this.getStatusByChecklistItemId(checklistItemId, tx);
43
+ if (status === building_inspection_1.BuildingInspectionStatus.PASS) {
19
44
  throw new Error('완료 상태인 검측정보를 변경할 수 없습니다.');
20
45
  }
21
46
  const result = await (0, shell_1.getRepository)(checklist_item_comment_1.ChecklistItemComment, tx).save({
@@ -42,10 +67,12 @@ let ChecklistItemCommentMutation = class ChecklistItemCommentMutation {
42
67
  const checklistItemComment = await repository.findOne({
43
68
  where: { id }
44
69
  });
70
+ if (!checklistItemComment) {
71
+ throw new Error('체크리스트 아이템 코멘트를 찾을 수 없습니다.');
72
+ }
45
73
  // 합격 상태인지 체크
46
- const checklistItemQuery = new checklist_item_query_1.ChecklistItemQuery();
47
- const inspection = await checklistItemQuery.inspectionByChecklistItemId(checklistItemComment.checklistItemId);
48
- if (inspection.status === building_inspection_1.BuildingInspectionStatus.PASS) {
74
+ const status = await this.getStatusByChecklistItemId(checklistItemComment.checklistItemId, tx);
75
+ if (status === building_inspection_1.BuildingInspectionStatus.PASS) {
49
76
  throw new Error('완료 상태인 검측정보를 변경할 수 없습니다.');
50
77
  }
51
78
  await repository.softDelete({ id });
@@ -1 +1 @@
1
- {"version":3,"file":"checklist-item-comment-mutation.js","sourceRoot":"","sources":["../../../server/service/checklist-item-comment/checklist-item-comment-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'\nimport { getRepository } from '@things-factory/shell'\nimport { ChecklistItemComment } from './checklist-item-comment'\nimport { NewChecklistItemComment, ChecklistItemCommentPatch } from './checklist-item-comment-type'\nimport { BuildingInspectionStatus } from '../building-inspection/building-inspection'\nimport { ChecklistItemQuery } from '../checklist-item/checklist-item-query'\n\n@Resolver(ChecklistItemComment)\nexport class ChecklistItemCommentMutation {\n @Directive('@transaction')\n @Mutation(returns => ChecklistItemComment, { description: 'To create new ChecklistItemComment' })\n async createChecklistItemComment(\n @Arg('checklistItemComment') checklistItemComment: NewChecklistItemComment,\n @Ctx() context: ResolverContext\n ): Promise<ChecklistItemComment> {\n const { user, tx } = context.state\n const { comment, checklistItemId } = checklistItemComment\n\n // 합격 상태인지 체크\n const checklistItemQuery = new ChecklistItemQuery()\n const inspection = await checklistItemQuery.inspectionByChecklistItemId(checklistItemId)\n if (inspection.status === BuildingInspectionStatus.PASS) {\n throw new Error('완료 상태인 검측정보를 변경할 수 없습니다.')\n }\n\n const result = await getRepository(ChecklistItemComment, tx).save({\n comment,\n checklistItem: { id: checklistItemId },\n createdAt: new Date(),\n creator: user,\n updater: user\n })\n\n return result\n }\n\n @Directive('@transaction')\n @Mutation(returns => ChecklistItemComment, { description: 'To modify ChecklistItemComment information' })\n async updateChecklistItemComment(\n @Arg('id') id: string,\n @Arg('patch') patch: ChecklistItemCommentPatch,\n @Ctx() context: ResolverContext\n ): Promise<ChecklistItemComment> {\n const { user, tx } = context.state\n\n const repository = getRepository(ChecklistItemComment, tx)\n const checklistItemComment = await repository.findOne({\n where: { id }\n })\n\n const result = await repository.save({\n ...checklistItemComment,\n ...patch,\n updater: user\n })\n\n return result\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete ChecklistItemComment' })\n async deleteChecklistItemComment(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<boolean> {\n const { tx } = context.state\n const repository = getRepository(ChecklistItemComment, tx)\n const checklistItemComment = await repository.findOne({\n where: { id }\n })\n\n // 합격 상태인지 체크\n const checklistItemQuery = new ChecklistItemQuery()\n const inspection = await checklistItemQuery.inspectionByChecklistItemId(checklistItemComment.checklistItemId)\n if (inspection.status === BuildingInspectionStatus.PASS) {\n throw new Error('완료 상태인 검측정보를 변경할 수 없습니다.')\n }\n\n await repository.softDelete({ id })\n\n return true\n }\n}\n"]}
1
+ {"version":3,"file":"checklist-item-comment-mutation.js","sourceRoot":"","sources":["../../../server/service/checklist-item-comment/checklist-item-comment-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'\nimport { getRepository } from '@things-factory/shell'\nimport { ChecklistItemComment } from './checklist-item-comment'\nimport { NewChecklistItemComment, ChecklistItemCommentPatch } from './checklist-item-comment-type'\nimport { BuildingInspectionStatus } from '../building-inspection/building-inspection'\nimport { ChecklistItemQuery } from '../checklist-item/checklist-item-query'\nimport { ChecklistReferenceType } from '../checklist/checklist'\nimport { ChecklistItem } from '../checklist-item/checklist-item'\n\n@Resolver(ChecklistItemComment)\nexport class ChecklistItemCommentMutation {\n private async getStatusByChecklistItemId(checklistItemId: string, tx: any) {\n // 1. ChecklistItem에서 Checklist 정보 조회\n const checklistItem = await getRepository(ChecklistItem, tx).findOne({\n where: { id: checklistItemId },\n relations: ['checklist']\n })\n\n if (!checklistItem || !checklistItem.checklist) {\n throw new Error('체크리스트 아이템을 찾을 수 없습니다.')\n }\n\n const checklist = checklistItem.checklist\n\n // 2. checklistReferenceType에 따라 분기 처리\n if (checklist.checklistReferenceType === ChecklistReferenceType.INSPECTION) {\n // INSPECTION: 기존 방식 - BuildingInspection에서 status 조회\n const checklistItemQuery = new ChecklistItemQuery()\n const inspection = await checklistItemQuery.inspectionByChecklistItemId(checklistItemId)\n return inspection?.status\n } else if (checklist.checklistReferenceType === ChecklistReferenceType.TASK) {\n // TASK: TaskChecklistBinding에서 status 조회\n const result = await tx.query('SELECT status FROM task_checklist_bindings WHERE checklist_id = $1', [checklist.id])\n return result?.[0]?.status\n }\n }\n\n @Directive('@transaction')\n @Mutation(returns => ChecklistItemComment, { description: 'To create new ChecklistItemComment' })\n async createChecklistItemComment(\n @Arg('checklistItemComment') checklistItemComment: NewChecklistItemComment,\n @Ctx() context: ResolverContext\n ): Promise<ChecklistItemComment> {\n const { user, tx } = context.state\n const { comment, checklistItemId } = checklistItemComment\n\n // 합격 상태인지 체크\n const status = await this.getStatusByChecklistItemId(checklistItemId, tx)\n if (status === BuildingInspectionStatus.PASS) {\n throw new Error('완료 상태인 검측정보를 변경할 수 없습니다.')\n }\n\n const result = await getRepository(ChecklistItemComment, tx).save({\n comment,\n checklistItem: { id: checklistItemId },\n createdAt: new Date(),\n creator: user,\n updater: user\n })\n\n return result\n }\n\n @Directive('@transaction')\n @Mutation(returns => ChecklistItemComment, { description: 'To modify ChecklistItemComment information' })\n async updateChecklistItemComment(\n @Arg('id') id: string,\n @Arg('patch') patch: ChecklistItemCommentPatch,\n @Ctx() context: ResolverContext\n ): Promise<ChecklistItemComment> {\n const { user, tx } = context.state\n\n const repository = getRepository(ChecklistItemComment, tx)\n const checklistItemComment = await repository.findOne({\n where: { id }\n })\n\n const result = await repository.save({\n ...checklistItemComment,\n ...patch,\n updater: user\n })\n\n return result\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete ChecklistItemComment' })\n async deleteChecklistItemComment(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<boolean> {\n const { tx } = context.state\n const repository = getRepository(ChecklistItemComment, tx)\n const checklistItemComment = await repository.findOne({\n where: { id }\n })\n\n if (!checklistItemComment) {\n throw new Error('체크리스트 아이템 코멘트를 찾을 수 없습니다.')\n }\n\n // 합격 상태인지 체크\n const status = await this.getStatusByChecklistItemId(checklistItemComment.checklistItemId, tx)\n if (status === BuildingInspectionStatus.PASS) {\n throw new Error('완료 상태인 검측정보를 변경할 수 없습니다.')\n }\n\n await repository.softDelete({ id })\n\n return true\n }\n}\n"]}
@@ -1,7 +1,5 @@
1
1
  import { ChecklistItemComment } from './checklist-item-comment';
2
- import { ChecklistItemCommentHistoryEntitySubscriber } from './event-subscriber';
3
2
  import { ChecklistItemCommentQuery } from './checklist-item-comment-query';
4
3
  import { ChecklistItemCommentMutation } from './checklist-item-comment-mutation';
5
4
  export declare const entities: (typeof ChecklistItemComment)[];
6
5
  export declare const resolvers: (typeof ChecklistItemCommentQuery | typeof ChecklistItemCommentMutation)[];
7
- export declare const subscribers: (typeof ChecklistItemCommentHistoryEntitySubscriber)[];
@@ -1,12 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.subscribers = exports.resolvers = exports.entities = void 0;
3
+ exports.resolvers = exports.entities = void 0;
4
4
  const checklist_item_comment_1 = require("./checklist-item-comment");
5
5
  const checklist_item_comment_history_1 = require("./checklist-item-comment-history");
6
- const event_subscriber_1 = require("./event-subscriber");
7
6
  const checklist_item_comment_query_1 = require("./checklist-item-comment-query");
8
7
  const checklist_item_comment_mutation_1 = require("./checklist-item-comment-mutation");
9
8
  exports.entities = [checklist_item_comment_1.ChecklistItemComment, checklist_item_comment_history_1.ChecklistItemCommentHistory];
10
9
  exports.resolvers = [checklist_item_comment_query_1.ChecklistItemCommentQuery, checklist_item_comment_mutation_1.ChecklistItemCommentMutation];
11
- exports.subscribers = [event_subscriber_1.ChecklistItemCommentHistoryEntitySubscriber];
12
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/service/checklist-item-comment/index.ts"],"names":[],"mappings":";;;AAAA,qEAA+D;AAC/D,qFAA8E;AAC9E,yDAAgF;AAChF,iFAA0E;AAC1E,uFAAgF;AAEnE,QAAA,QAAQ,GAAG,CAAC,6CAAoB,EAAE,4DAA2B,CAAC,CAAA;AAC9D,QAAA,SAAS,GAAG,CAAC,wDAAyB,EAAE,8DAA4B,CAAC,CAAA;AACrE,QAAA,WAAW,GAAG,CAAC,8DAA2C,CAAC,CAAA","sourcesContent":["import { ChecklistItemComment } from './checklist-item-comment'\nimport { ChecklistItemCommentHistory } from './checklist-item-comment-history'\nimport { ChecklistItemCommentHistoryEntitySubscriber } from './event-subscriber'\nimport { ChecklistItemCommentQuery } from './checklist-item-comment-query'\nimport { ChecklistItemCommentMutation } from './checklist-item-comment-mutation'\n\nexport const entities = [ChecklistItemComment, ChecklistItemCommentHistory]\nexport const resolvers = [ChecklistItemCommentQuery, ChecklistItemCommentMutation]\nexport const subscribers = [ChecklistItemCommentHistoryEntitySubscriber]\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/service/checklist-item-comment/index.ts"],"names":[],"mappings":";;;AAAA,qEAA+D;AAC/D,qFAA8E;AAC9E,iFAA0E;AAC1E,uFAAgF;AAEnE,QAAA,QAAQ,GAAG,CAAC,6CAAoB,EAAE,4DAA2B,CAAC,CAAA;AAC9D,QAAA,SAAS,GAAG,CAAC,wDAAyB,EAAE,8DAA4B,CAAC,CAAA","sourcesContent":["import { ChecklistItemComment } from './checklist-item-comment'\nimport { ChecklistItemCommentHistory } from './checklist-item-comment-history'\nimport { ChecklistItemCommentQuery } from './checklist-item-comment-query'\nimport { ChecklistItemCommentMutation } from './checklist-item-comment-mutation'\n\nexport const entities = [ChecklistItemComment, ChecklistItemCommentHistory]\nexport const resolvers = [ChecklistItemCommentQuery, ChecklistItemCommentMutation]\n"]}
@@ -79,10 +79,8 @@ tslib_1.__decorate([
79
79
  ], ChecklistTemplateItem.prototype, "updaterId", void 0);
80
80
  exports.ChecklistTemplateItem = ChecklistTemplateItem = tslib_1.__decorate([
81
81
  (0, typeorm_1.Entity)({ comment: '체크리스트 템플릿 아이템' }),
82
- (0, typeorm_1.Index)('ix_checklist_template_item_0', (checklistTemplateItem) => [checklistTemplateItem.name], {
83
- unique: true
84
- }),
85
- (0, typeorm_1.Index)('ix_checklist_template_item_1', (checklistTemplateItem) => [checklistTemplateItem.detailType]),
82
+ (0, typeorm_1.Index)('ix_checklist_template_item_0', (cti) => [cti.checklistTemplate, cti.mainType, cti.detailType, cti.name], { unique: true }),
83
+ (0, typeorm_1.Index)('ix_checklist_template_item_1', (cti) => [cti.detailType]),
86
84
  (0, type_graphql_1.ObjectType)()
87
85
  ], ChecklistTemplateItem);
88
86
  //# sourceMappingURL=checklist-template-item.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"checklist-template-item.js","sourceRoot":"","sources":["../../../server/service/checklist-template-item/checklist-template-item.ts"],"names":[],"mappings":"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","sourcesContent":["import { CreateDateColumn, UpdateDateColumn, Entity, Index, Column, RelationId, ManyToOne, PrimaryGeneratedColumn } from 'typeorm'\nimport { ObjectType, Field, ID, Int } from 'type-graphql'\n\nimport { User } from '@things-factory/auth-base'\nimport { ChecklistTemplate } from '../checklist-template/checklist-template'\nimport { ChecklistTypeMainType } from '../checklist-type/checklist-type'\n\n@Entity({ comment: '체크리스트 템플릿 아이템' })\n@Index('ix_checklist_template_item_0', (checklistTemplateItem: ChecklistTemplateItem) => [checklistTemplateItem.name], {\n unique: true\n})\n@Index('ix_checklist_template_item_1', (checklistTemplateItem: ChecklistTemplateItem) => [checklistTemplateItem.detailType])\n@ObjectType()\nexport class ChecklistTemplateItem {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @Column({ nullable: false, comment: '검사 항목' })\n @Field({ nullable: false })\n name: string\n\n @Column({ nullable: true, comment: '검사 기준' })\n @Field({ nullable: true })\n inspctionCriteria?: string\n\n @Column({ nullable: true, comment: '시퀀스' })\n @Field(type => Int, { nullable: true })\n sequence?: number\n\n @Column({ nullable: false, comment: '메인 구분 (10: 기본 업무, 20: 기본 외 업무)' })\n @Field({ nullable: false })\n mainType: ChecklistTypeMainType\n\n @Column({ nullable: false, comment: '상세 구분 ID (F.K)' })\n @Field({ nullable: false })\n detailType: string\n\n // 체크리스트 템플릿 정보 (상위 테이블 참조)\n @ManyToOne(type => ChecklistTemplate)\n @Field(type => ChecklistTemplate, { nullable: true })\n checklistTemplate?: ChecklistTemplate\n\n @RelationId((checklistTemplateItem: ChecklistTemplateItem) => checklistTemplateItem.checklistTemplate)\n checklistTemplateId?: string\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n\n @UpdateDateColumn()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n creator?: User\n\n @RelationId((checklistTemplateItem: ChecklistTemplateItem) => checklistTemplateItem.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n updater?: User\n\n @RelationId((checklistTemplateItem: ChecklistTemplateItem) => checklistTemplateItem.updater)\n updaterId?: string\n}\n"]}
1
+ {"version":3,"file":"checklist-template-item.js","sourceRoot":"","sources":["../../../server/service/checklist-template-item/checklist-template-item.ts"],"names":[],"mappings":"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","sourcesContent":["import { CreateDateColumn, UpdateDateColumn, Entity, Index, Column, RelationId, ManyToOne, PrimaryGeneratedColumn } from 'typeorm'\nimport { ObjectType, Field, ID, Int } from 'type-graphql'\n\nimport { User } from '@things-factory/auth-base'\nimport { ChecklistTemplate } from '../checklist-template/checklist-template'\nimport { ChecklistTypeMainType } from '../checklist-type/checklist-type'\n\n@Entity({ comment: '체크리스트 템플릿 아이템' })\n@Index(\n 'ix_checklist_template_item_0',\n (cti: ChecklistTemplateItem) => [cti.checklistTemplate, cti.mainType, cti.detailType, cti.name],\n { unique: true }\n)\n@Index('ix_checklist_template_item_1', (cti: ChecklistTemplateItem) => [cti.detailType])\n@ObjectType()\nexport class ChecklistTemplateItem {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @Column({ nullable: false, comment: '검사 항목' })\n @Field({ nullable: false })\n name: string\n\n @Column({ nullable: true, comment: '검사 기준' })\n @Field({ nullable: true })\n inspctionCriteria?: string\n\n @Column({ nullable: true, comment: '시퀀스' })\n @Field(type => Int, { nullable: true })\n sequence?: number\n\n @Column({ nullable: false, comment: '메인 구분 (10: 기본 업무, 20: 기본 외 업무)' })\n @Field({ nullable: false })\n mainType: ChecklistTypeMainType\n\n @Column({ nullable: false, comment: '상세 구분 ID (F.K)' })\n @Field({ nullable: false })\n detailType: string\n\n // 체크리스트 템플릿 정보 (상위 테이블 참조)\n @ManyToOne(type => ChecklistTemplate)\n @Field(type => ChecklistTemplate, { nullable: true })\n checklistTemplate?: ChecklistTemplate\n\n @RelationId((checklistTemplateItem: ChecklistTemplateItem) => checklistTemplateItem.checklistTemplate)\n checklistTemplateId?: string\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n\n @UpdateDateColumn()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n creator?: User\n\n @RelationId((checklistTemplateItem: ChecklistTemplateItem) => checklistTemplateItem.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n updater?: User\n\n @RelationId((checklistTemplateItem: ChecklistTemplateItem) => checklistTemplateItem.updater)\n updaterId?: string\n}\n"]}