@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
@@ -1,393 +0,0 @@
1
- import '@material/web/icon/icon.js'
2
- import '@material/web/button/elevated-button.js'
3
- import '@material/web/button/outlined-button.js'
4
- import '@material/web/progress/linear-progress.js'
5
- import '@material/web/textfield/filled-text-field.js'
6
-
7
- import { PageView } from '@operato/shell'
8
- import { css, html } from 'lit'
9
- import { customElement, state } from 'lit/decorators.js'
10
- import { ScopedElementsMixin } from '@open-wc/scoped-elements'
11
- import { client } from '@operato/graphql'
12
- import { openPopup } from '@operato/layout'
13
-
14
- import gql from 'graphql-tag'
15
- import './popup/popup-project-create'
16
- import { Project } from './project-list'
17
-
18
- @customElement('project-setting-list')
19
- export class ProjectSettingList extends ScopedElementsMixin(PageView) {
20
- static styles = [
21
- css`
22
- :host {
23
- display: flex;
24
- flex-direction: column;
25
- overflow-y: auto;
26
-
27
- width: 100%;
28
- height: 100%;
29
- background-color: var(--md-sys-color-background, #f6f6f6);
30
-
31
- --grid-record-emphasized-background-color: red;
32
- --grid-record-emphasized-color: yellow;
33
- }
34
-
35
- div[management-header-container] {
36
- display: flex;
37
- margin: var(--spacing-large, 12px);
38
- margin-bottom:0;
39
- gap: var(--spacing-medium, 8px);
40
- overflow-x: auto;
41
-
42
- a {
43
- flex:1;
44
- text-align: center;
45
- padding: var(--spacing-medium, 8px);
46
- background-color: var(--md-sys-color-on-primary);
47
- color: var(--md-sys-color-tertiary);
48
- font-weight: 700;
49
- border-radius: var(--md-sys-shape-corner-small, 5px);
50
- display: flex;
51
- flex-direction: column;
52
- justify-content: center;
53
- align-items: center;
54
- gap: var(--spacing-small, 4px);
55
- border: solid 1px #0000004d;
56
- text-decoration: none;
57
- cursor: pointer;
58
-
59
- md-icon {
60
- font-size: 35px;
61
- width: auto;
62
- height: auto;
63
- }
64
- div[label] {
65
- font-size: 14px;
66
- line-height:1.3;
67
- }
68
- }
69
-
70
- a[green] {
71
- background-color: #24be7b;
72
- color: var(--md-sys-color-on-primary);
73
- }
74
- }
75
-
76
- div[header] {
77
- display: flex;
78
- align-items: center;
79
- background-color: #2ea4df1a;
80
- border: 1px solid #2ea4df33;
81
- margin: var(--spacing-large, 12px);
82
- margin-bottom:var(--spacing-small, 5px);
83
- padding: var(--spacing-medium, 8px) var(--spacing-large, 12px);
84
- border-radius: var(--md-sys-shape-corner-small, 5px);
85
-
86
- md-filled-text-field[type='search'] {
87
- --md-filled-text-field-container-shape: 0px;
88
- --md-filled-text-field-container-color: transparent;
89
- --md-filled-text-field-label-text-color: #999999;
90
- --md-filled-text-field-input-text-color: #4e5055;
91
- }
92
- strong{
93
- flex:1;
94
- padding-right:var(--spacing-medium, 8px);
95
- text-align:right
96
- }
97
-
98
- md-elevated-button[add-project] {
99
- font-weight: bold;
100
- font-size: 16px;
101
- margin-left: 17px;
102
- padding: 13px 20px;
103
-
104
- --md-elevated-button-container-color: #24be7b;
105
- --md-elevated-button-label-text-color: var(--md-sys-color-on-primary);
106
- --md-elevated-button-hover-label-text-color:var(--md-sys-color-on-primary);
107
- --md-elevated-button-pressed-label-text-color:var(--md-sys-color-on-primary);
108
- --md-elevated-button-focus-label-text-color:var(--md-sys-color-on-primary);
109
- --md-elevated-button-icon-color:var(--md-sys-color-on-primary);
110
- --md-elevated-button-hover-icon-color:var(--md-sys-color-on-primary);
111
- --md-elevated-button-pressed-icon-color:var(--md-sys-color-on-primary);
112
- --md-elevated-button-focus-icon-color:var(--md-sys-color-on-primary);
113
-
114
- --md-elevated-button-container-shape: 7px;
115
- }
116
- }
117
-
118
- div[body] {
119
- div[project-container] {
120
- display: flex;
121
- flex-direction: row;
122
- min-height: 130px;
123
- margin: var(--spacing-large, 12px);
124
- background-color: var(--md-sys-color-on-primary);
125
- border: 1px solid #cccccc80;
126
- border-radius: var(--md-sys-shape-corner-small, 5px);
127
- align-items: center;
128
- gap: var(--spacing-medium, 8px);
129
- overflow:hidden;
130
-
131
- img[project-img] {
132
- width: 240px;
133
- height: 130px;
134
- aspect-ratio: 2;
135
- background-color: #cccccc80;
136
- }
137
- img[project-img][no-image] {
138
- object-fit: contain;
139
- opacity: 0.5;
140
- }
141
-
142
- span[project-info] {
143
- flex: 0.5;
144
- padding: var(--spacing-small, 4px);
145
- font-size: 14px;
146
-
147
- white-space: nowrap;
148
- overflow: hidden;
149
- text-overflow: ellipsis;
150
-
151
- div[name] {
152
- color: #2e79be;
153
- font-weight: bold;
154
- font-size: 18px;
155
- }
156
- }
157
-
158
- span[project-state] {
159
- flex: 0.5;
160
- padding: var(--spacing-medium, 8px);
161
- min-width: 340px;
162
-
163
- & > div {
164
- margin-bottom: var(--spacing-small, 4px);
165
- }
166
-
167
- div[progress] {
168
- position: relative;
169
-
170
- md-linear-progress {
171
- margin:var(--spacing-tiny, 2px) 0;
172
- --md-linear-progress-track-height: 18px;
173
- --md-linear-progress-active-indicator-height: 18px;
174
- --md-linear-progress-track-shape: 5px;
175
- --md-linear-progress-active-indicator-color: #0595e526;
176
- --md-linear-progress-track-color: #0595e52a;
177
- }
178
-
179
- span {
180
- position: absolute;
181
- top: 0;
182
- left: var(--spacing-large, 12px);
183
- font-size: 12px;
184
- font-weight: bold;
185
- color: #2e79be;
186
-
187
- &:last-child {
188
- left: unset;
189
- right: var(--spacing-large, 12px);
190
- }
191
- }
192
- }
193
-
194
- div[filled] div {
195
- margin-right: var(--spacing-large, 12px);
196
- display: inline-block;
197
- }
198
-
199
- strong[filled] {
200
- color: #1bb401;
201
- }
202
- strong[not-filled] {
203
- color: #ff4444;
204
- }
205
-
206
- md-outlined-button {
207
- min-height: 33px;
208
- padding: 0 var(--spacing-large, 12px);
209
- margin-right: var(--spacing-tiny, 2px);
210
- box-shadow: 1px 1px 1px 1px #0000001a;
211
- --md-outlined-button-label-text-color: #586878;
212
- --md-outlined-button-label-text-weight: bold;
213
- --md-sys-color-outline: rgba(51,51,51,.20);
214
- }
215
- }
216
- }
217
- }
218
- `
219
- ]
220
-
221
- get context() {
222
- return {
223
- title: '셋팅'
224
- }
225
- }
226
-
227
- @state() private projectName: string = ''
228
- @state() private projectList: Project[] = []
229
- @state() private projectCount: number = 0
230
-
231
- render() {
232
- return html`
233
- <div management-header>
234
- <div management-header-container>
235
- <a @click=${this._openCreateProjectPopup} green>
236
- <md-icon slot="leading-icon">add</md-icon>
237
- <div label>신규 프로젝트 생성</div>
238
- </a>
239
- <a href="employee-list">
240
- <md-icon slot="leading-icon">badge</md-icon>
241
- <div label>인력 관리</div>
242
- </a>
243
- <a href="construction-type-management">
244
- <md-icon slot="leading-icon">construction</md-icon>
245
- <div label>공종 관리</div>
246
- </a>
247
- <a href="inspection-drawing-type-management">
248
- <md-icon slot="leading-icon">stacks</md-icon>
249
- <div label>도면타입/검측부위<br/>관리</div>
250
- </a>
251
- <a href="checklist-type-management">
252
- <md-icon slot="leading-icon">rule</md-icon>
253
- <div label>체크리스트 구분 관리</div>
254
- </a>
255
- <a href="checklist-template-list">
256
- <md-icon slot="leading-icon">fact_check</md-icon>
257
- <div label>체크리스트 템플릿<br/>관리</div>
258
- </a>
259
- </div>
260
- </div>
261
-
262
- <div header>
263
- <md-filled-text-field
264
- name="projectName"
265
- type="search"
266
- label="프로젝트 이름"
267
- .value=${this.projectName}
268
- @input=${this._onInputChange}
269
- @keypress=${this._onKeypress}
270
- >
271
- <md-icon slot="leading-icon">search</md-icon>
272
- </md-filled-text-field>
273
-
274
- <strong>총 ${this.projectCount}개</strong>
275
- </div>
276
-
277
- <div body>
278
- ${this.projectList?.map((project: Project) => {
279
- const filledText = html`<strong filled>등록완료</strong>`
280
- const nonFilledText = html`<strong not-filled>미등록</strong>`
281
-
282
- const projectFilledState = project.buildingComplex.address ? filledText : nonFilledText
283
- const supervisoryFilledState = true ? filledText : nonFilledText
284
- const taskFilledState = false ? filledText : nonFilledText
285
-
286
- return html`
287
- <div project-container>
288
- <img
289
- ?no-image=${!project.mainPhoto?.fullpath}
290
- project-img
291
- src=${project.mainPhoto?.fullpath || '/assets/images/no-image.png'}
292
- />
293
-
294
- <span project-info>
295
- <div name>${project.name}</div>
296
- <div content>${project.buildingComplex.address}</div>
297
- <div content>면적: ${project.buildingComplex?.area?.toLocaleString() || ''}㎡</div>
298
- <div content>착공~준공: ${project.startDate}~${project.endDate}</div>
299
- <div content>발주처: <strong>${project.buildingComplex.clientCompany}</strong></div>
300
- </span>
301
-
302
- <span project-state>
303
- <div progress>
304
- <md-linear-progress buffer="100" max="100" value=${project.totalProgress || 0}> </md-linear-progress>
305
- <span>${project.totalProgress == 100 ? '완료' : '진행중'}</span>
306
- <span>${project.totalProgress || 0}%</span>
307
- </div>
308
- <div filled>
309
- <div>프로젝트 정보 ${projectFilledState}</div>
310
- <div>시공감리 자료 ${supervisoryFilledState}</div>
311
- <div>공정표 ${taskFilledState}</div>
312
- </div>
313
- <div>
314
- <md-outlined-button href="project-update/${project.id}">프로젝트 정보 수정</md-outlined-button>
315
- <md-outlined-button href="project-plan-management/${project.id}">도면 관리</md-outlined-button>
316
- <md-outlined-button href="project-task-management/${project.id}">공정표 관리</md-outlined-button>
317
- </div>
318
- </span>
319
- </div>
320
- `
321
- })}
322
- </div>
323
- `
324
- }
325
-
326
- async pageUpdated(changes: any, lifecycle: any) {
327
- if (this.active) {
328
- this.getProjectList()
329
- }
330
- }
331
-
332
- async getProjectList() {
333
- const response = await client.query({
334
- query: gql`
335
- query Projects($filters: [Filter!]) {
336
- projects(filters: $filters) {
337
- items {
338
- id
339
- name
340
- mainPhoto {
341
- fullpath
342
- }
343
- startDate
344
- endDate
345
- totalProgress
346
- buildingComplex {
347
- address
348
- area
349
- clientCompany
350
- }
351
- }
352
- total
353
- }
354
- }
355
- `,
356
- variables: {
357
- filters: this.projectName
358
- ? [
359
- {
360
- name: 'name',
361
- operator: 'search',
362
- value: `%${this.projectName}%`
363
- }
364
- ]
365
- : []
366
- }
367
- })
368
-
369
- this.projectList = response.data.projects?.items || []
370
- this.projectCount = response.data.projects?.total || 0
371
- }
372
-
373
- private _openCreateProjectPopup() {
374
- openPopup(html`<popup-project-create .refreshFn=${this.getProjectList.bind(this)}></popup-project-create>`, {
375
- backdrop: true,
376
- size: 'small',
377
- title: '신규 프로젝트 생성'
378
- })
379
- }
380
-
381
- // Input 요소의 값이 변경될 때 호출되는 콜백 함수
382
- private _onInputChange(event: InputEvent) {
383
- const target = event.target as HTMLInputElement
384
- this[target.name] = target.value
385
- }
386
-
387
- // 검색창에서 엔터입력시 검색
388
- private _onKeypress(event: KeyboardEvent) {
389
- if (event.code === 'Enter') {
390
- this.getProjectList()
391
- }
392
- }
393
- }