@things-factory/sales-base 8.0.3 → 8.0.6

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 (178) hide show
  1. package/dist-server/tsconfig.tsbuildinfo +1 -1
  2. package/package.json +12 -12
  3. package/server/constants/attachment-type.ts +0 -9
  4. package/server/constants/index.ts +0 -7
  5. package/server/constants/load-type.ts +0 -4
  6. package/server/constants/order.ts +0 -203
  7. package/server/constants/product-group-type.ts +0 -4
  8. package/server/constants/release-good.ts +0 -9
  9. package/server/constants/transfer-order-type.ts +0 -6
  10. package/server/constants/validation-error-code.ts +0 -3
  11. package/server/constants/vas-target-type.ts +0 -25
  12. package/server/controllers/ecommerce/ecommerce-controller.ts +0 -122
  13. package/server/controllers/ecommerce/index.ts +0 -2
  14. package/server/controllers/ecommerce/sellercraft-controller.ts +0 -182
  15. package/server/controllers/index.ts +0 -2
  16. package/server/controllers/order-controller.ts +0 -296
  17. package/server/errors/index.ts +0 -1
  18. package/server/errors/validation-error.ts +0 -25
  19. package/server/index.ts +0 -5
  20. package/server/migrations/index.ts +0 -9
  21. package/server/service/arrival-notice/arrival-notice-mutation.ts +0 -1152
  22. package/server/service/arrival-notice/arrival-notice-query.ts +0 -549
  23. package/server/service/arrival-notice/arrival-notice-types.ts +0 -310
  24. package/server/service/arrival-notice/arrival-notice.ts +0 -202
  25. package/server/service/arrival-notice/index.ts +0 -9
  26. package/server/service/claim/claim-mutation.ts +0 -308
  27. package/server/service/claim/claim-query.ts +0 -122
  28. package/server/service/claim/claim-types.ts +0 -130
  29. package/server/service/claim/claim.ts +0 -140
  30. package/server/service/claim/index.ts +0 -9
  31. package/server/service/claim-detail/claim-detail-mutation.ts +0 -102
  32. package/server/service/claim-detail/claim-detail-query.ts +0 -55
  33. package/server/service/claim-detail/claim-detail-types.ts +0 -47
  34. package/server/service/claim-detail/claim-detail.ts +0 -69
  35. package/server/service/claim-detail/index.ts +0 -9
  36. package/server/service/claim-order/claim-order-mutation.ts +0 -101
  37. package/server/service/claim-order/claim-order-query.ts +0 -47
  38. package/server/service/claim-order/claim-order-types.ts +0 -35
  39. package/server/service/claim-order/claim-order.ts +0 -81
  40. package/server/service/claim-order/index.ts +0 -9
  41. package/server/service/collection-order/collection-order-mutation.ts +0 -245
  42. package/server/service/collection-order/collection-order-query.ts +0 -97
  43. package/server/service/collection-order/collection-order-types.ts +0 -165
  44. package/server/service/collection-order/collection-order.ts +0 -135
  45. package/server/service/collection-order/index.ts +0 -9
  46. package/server/service/delivery-order/delivery-order-mutation.ts +0 -967
  47. package/server/service/delivery-order/delivery-order-query.ts +0 -631
  48. package/server/service/delivery-order/delivery-order-types.ts +0 -268
  49. package/server/service/delivery-order/delivery-order.ts +0 -258
  50. package/server/service/delivery-order/index.ts +0 -9
  51. package/server/service/draft-release-good/draft-release-good-mutation.ts +0 -765
  52. package/server/service/draft-release-good/draft-release-good-query.ts +0 -354
  53. package/server/service/draft-release-good/draft-release-good-type.ts +0 -261
  54. package/server/service/draft-release-good/draft-release-good.ts +0 -284
  55. package/server/service/draft-release-good/index.ts +0 -9
  56. package/server/service/goods-receival-note/goods-receival-note-mutation.ts +0 -129
  57. package/server/service/goods-receival-note/goods-receival-note-query.ts +0 -280
  58. package/server/service/goods-receival-note/goods-receival-note-types.ts +0 -105
  59. package/server/service/goods-receival-note/goods-receival-note.ts +0 -127
  60. package/server/service/goods-receival-note/index.ts +0 -9
  61. package/server/service/index.ts +0 -238
  62. package/server/service/inventory-check/index.ts +0 -9
  63. package/server/service/inventory-check/inventory-check-mutation.ts +0 -149
  64. package/server/service/inventory-check/inventory-check-query.ts +0 -48
  65. package/server/service/inventory-check/inventory-check-types.ts +0 -48
  66. package/server/service/inventory-check/inventory-check.ts +0 -90
  67. package/server/service/invoice/index.ts +0 -9
  68. package/server/service/invoice/invoice-mutation.ts +0 -95
  69. package/server/service/invoice/invoice-query.ts +0 -53
  70. package/server/service/invoice/invoice-types.ts +0 -279
  71. package/server/service/invoice/invoice.ts +0 -230
  72. package/server/service/invoice-product/index.ts +0 -9
  73. package/server/service/invoice-product/invoice-product-mutation.ts +0 -54
  74. package/server/service/invoice-product/invoice-product-query.ts +0 -54
  75. package/server/service/invoice-product/invoice-product-types.ts +0 -84
  76. package/server/service/invoice-product/invoice-product.ts +0 -92
  77. package/server/service/job-sheet/index.ts +0 -9
  78. package/server/service/job-sheet/job-sheet-mutation.ts +0 -92
  79. package/server/service/job-sheet/job-sheet-query.ts +0 -112
  80. package/server/service/job-sheet/job-sheet-types.ts +0 -78
  81. package/server/service/job-sheet/job-sheet.ts +0 -102
  82. package/server/service/manifest/index.ts +0 -6
  83. package/server/service/manifest/manifest-mutation.ts +0 -190
  84. package/server/service/manifest/manifest-query.ts +0 -149
  85. package/server/service/manifest/manifest-type.ts +0 -84
  86. package/server/service/manifest/manifest.ts +0 -114
  87. package/server/service/order-inventory/index.ts +0 -9
  88. package/server/service/order-inventory/order-inventory-mutation.ts +0 -54
  89. package/server/service/order-inventory/order-inventory-query.ts +0 -722
  90. package/server/service/order-inventory/order-inventory-types.ts +0 -238
  91. package/server/service/order-inventory/order-inventory.ts +0 -401
  92. package/server/service/order-product/index.ts +0 -9
  93. package/server/service/order-product/order-product-mutation.ts +0 -48
  94. package/server/service/order-product/order-product-query.ts +0 -89
  95. package/server/service/order-product/order-product-types.ts +0 -335
  96. package/server/service/order-product/order-product.ts +0 -362
  97. package/server/service/order-tote/index.ts +0 -9
  98. package/server/service/order-tote/order-tote-mutation.ts +0 -31
  99. package/server/service/order-tote/order-tote-query.ts +0 -112
  100. package/server/service/order-tote/order-tote-types.ts +0 -47
  101. package/server/service/order-tote/order-tote.ts +0 -73
  102. package/server/service/order-tote-item/index.ts +0 -9
  103. package/server/service/order-tote-item/order-tote-item-mutation.ts +0 -31
  104. package/server/service/order-tote-item/order-tote-item-query.ts +0 -82
  105. package/server/service/order-tote-item/order-tote-item-types.ts +0 -56
  106. package/server/service/order-tote-item/order-tote-item.ts +0 -72
  107. package/server/service/order-tote-seal/index.ts +0 -9
  108. package/server/service/order-tote-seal/order-tote-seal-mutation.ts +0 -31
  109. package/server/service/order-tote-seal/order-tote-seal-query.ts +0 -59
  110. package/server/service/order-tote-seal/order-tote-seal-types.ts +0 -41
  111. package/server/service/order-tote-seal/order-tote-seal.ts +0 -46
  112. package/server/service/order-vas/index.ts +0 -9
  113. package/server/service/order-vas/order-vas-mutation.ts +0 -20
  114. package/server/service/order-vas/order-vas-query.ts +0 -72
  115. package/server/service/order-vas/order-vas-types.ts +0 -159
  116. package/server/service/order-vas/order-vas.ts +0 -207
  117. package/server/service/others/index.ts +0 -5
  118. package/server/service/others/other-query.ts +0 -563
  119. package/server/service/others/other-types.ts +0 -115
  120. package/server/service/purchase-order/index.ts +0 -9
  121. package/server/service/purchase-order/purchase-order-mutation.ts +0 -458
  122. package/server/service/purchase-order/purchase-order-query.ts +0 -90
  123. package/server/service/purchase-order/purchase-order-types.ts +0 -154
  124. package/server/service/purchase-order/purchase-order.ts +0 -172
  125. package/server/service/purchase-order-other-charge/index.ts +0 -9
  126. package/server/service/purchase-order-other-charge/purchase-order-other-charge-mutation.ts +0 -31
  127. package/server/service/purchase-order-other-charge/purchase-order-other-charge-query.ts +0 -52
  128. package/server/service/purchase-order-other-charge/purchase-order-other-charge-types.ts +0 -44
  129. package/server/service/purchase-order-other-charge/purchase-order-other-charge.ts +0 -68
  130. package/server/service/release-good/index.ts +0 -9
  131. package/server/service/release-good/release-good-mutation.ts +0 -1686
  132. package/server/service/release-good/release-good-query.ts +0 -980
  133. package/server/service/release-good/release-good-types.ts +0 -662
  134. package/server/service/release-good/release-good.ts +0 -490
  135. package/server/service/retail-replenishment-order/index.ts +0 -9
  136. package/server/service/retail-replenishment-order/retail-replenishment-order-mutation.ts +0 -382
  137. package/server/service/retail-replenishment-order/retail-replenishment-order-query.ts +0 -54
  138. package/server/service/retail-replenishment-order/retail-replenishment-order-types.ts +0 -101
  139. package/server/service/retail-replenishment-order/retail-replenishment-order.ts +0 -115
  140. package/server/service/return-order/index.ts +0 -9
  141. package/server/service/return-order/return-order-mutation.ts +0 -516
  142. package/server/service/return-order/return-order-query.ts +0 -226
  143. package/server/service/return-order/return-order-types.ts +0 -196
  144. package/server/service/return-order/return-order.ts +0 -127
  145. package/server/service/reverse-kitting-order/index.ts +0 -9
  146. package/server/service/reverse-kitting-order/reverse-kitting-order-mutation.ts +0 -500
  147. package/server/service/reverse-kitting-order/reverse-kitting-order-query.ts +0 -197
  148. package/server/service/reverse-kitting-order/reverse-kitting-order-type.ts +0 -173
  149. package/server/service/reverse-kitting-order/reverse-kitting-order.ts +0 -121
  150. package/server/service/reverse-kitting-order-inventory/index.ts +0 -9
  151. package/server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-mutation.ts +0 -129
  152. package/server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-query.ts +0 -52
  153. package/server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory-type.ts +0 -95
  154. package/server/service/reverse-kitting-order-inventory/reverse-kitting-order-inventory.ts +0 -143
  155. package/server/service/shipping-order/index.ts +0 -9
  156. package/server/service/shipping-order/shipping-order-mutation.ts +0 -61
  157. package/server/service/shipping-order/shipping-order-query.ts +0 -61
  158. package/server/service/shipping-order/shipping-order-types.ts +0 -89
  159. package/server/service/shipping-order/shipping-order.ts +0 -129
  160. package/server/service/transfer-order/index.ts +0 -9
  161. package/server/service/transfer-order/transfer-order-mutation.ts +0 -309
  162. package/server/service/transfer-order/transfer-order-query.ts +0 -66
  163. package/server/service/transfer-order/transfer-order-types.ts +0 -97
  164. package/server/service/transfer-order/transfer-order.ts +0 -117
  165. package/server/service/vas/index.ts +0 -9
  166. package/server/service/vas/vas-mutation.ts +0 -106
  167. package/server/service/vas/vas-query.ts +0 -60
  168. package/server/service/vas/vas-types.ts +0 -71
  169. package/server/service/vas/vas.ts +0 -77
  170. package/server/service/vas-order/index.ts +0 -9
  171. package/server/service/vas-order/vas-order-mutation.ts +0 -259
  172. package/server/service/vas-order/vas-order-query.ts +0 -119
  173. package/server/service/vas-order/vas-order-types.ts +0 -49
  174. package/server/service/vas-order/vas-order.ts +0 -81
  175. package/server/utils/datetime-util.ts +0 -54
  176. package/server/utils/index.ts +0 -3
  177. package/server/utils/inventory-util.ts +0 -1155
  178. package/server/utils/order-no-generator.ts +0 -146
@@ -1,308 +0,0 @@
1
- import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'
2
- import { In, MoreThan } from 'typeorm'
3
-
4
- import { Bizplace } from '@things-factory/biz-base'
5
- import { getRepository } from '@things-factory/shell'
6
- import { TransportDriver, TransportVehicle } from '@things-factory/transport-base'
7
-
8
- import {
9
- ClaimDetail,
10
- ClaimDetailPatch,
11
- ClaimOrder,
12
- ClaimPatch,
13
- CollectionOrder,
14
- DeliveryOrder,
15
- NewClaim,
16
- NewClaimDetail
17
- } from '../'
18
- import { Claim } from './claim'
19
-
20
- @Resolver(Claim)
21
- export class ClaimMutation {
22
- @Directive('@privilege(category: "claim", privilege: "mutation" )')
23
- @Directive('@transaction')
24
- @Mutation(returns => Claim)
25
- async createClaim(@Arg('claim', type => NewClaim) claim: NewClaim, @Ctx() context: ResolverContext): Promise<Claim> {
26
- const { tx } = context.state
27
-
28
- let arrClaimOrdersName = claim.claimOrders.map(item => {
29
- return item.name
30
- })
31
-
32
- let newClaimOrders = []
33
- let deliveryOrder = await getRepository(DeliveryOrder).find({
34
- where: { name: In(arrClaimOrdersName), domain: { id: context.state.domain.id } }
35
- })
36
-
37
- let collectionOrder = await getRepository(CollectionOrder).find({
38
- where: { name: In(arrClaimOrdersName), domain: { id: context.state.domain.id } }
39
- })
40
-
41
- deliveryOrder.map(order => {
42
- newClaimOrders.push({
43
- name: order.name,
44
- deliveryOrder: order
45
- })
46
- })
47
-
48
- collectionOrder.map(order => {
49
- newClaimOrders.push({
50
- name: order.name,
51
- collectionOrder: order
52
- })
53
- })
54
-
55
- let bizplace = await getRepository(Bizplace).findOne({
56
- where: {
57
- domain: { id: context.state.domain.id },
58
- id: claim.bizplace
59
- }
60
- })
61
-
62
- let transportDriver = await getRepository(TransportDriver).findOne({
63
- where: {
64
- domain: { id: context.state.domain.id },
65
- id: claim.transportDriver
66
- }
67
- })
68
-
69
- let transportVehicle = await getRepository(TransportVehicle).findOne({
70
- where: {
71
- domain: { id: context.state.domain.id },
72
- id: claim.transportVehicle
73
- }
74
- })
75
-
76
- // if (newClaimOrders.length > 0) {
77
- // await getRepository(ClaimOrder).findAndCount({
78
- // where: { deliveryOrder: In(), domain: { id: context.state.domain.id } }
79
- // })
80
- // throw new Error('Data Error')
81
- // }
82
-
83
- let today = new Date()
84
- let year = today.getFullYear()
85
- let month = today.getMonth()
86
- let date = today.getDate()
87
-
88
- const [items, total] = await getRepository(Claim).findAndCountBy({
89
- createdAt: MoreThan(new Date(year, month, date))
90
- })
91
-
92
- let claimName =
93
- 'CLAIM' +
94
- year.toString().substr(year.toString().length - 2) +
95
- ('0' + month.toString()).substr(('0' + (month + 1).toString()).toString().length - 2) +
96
- ('0' + date.toString()).substr(('0' + date.toString()).length - 2) +
97
- '/' +
98
- ('0000' + (total + 1).toString()).substr(('0000' + (total + 1).toString()).length - 4)
99
-
100
- // //Save All Data//
101
- const createdClaim: Claim = await tx.getRepository(Claim).save({
102
- ...claim,
103
- name: claimName,
104
- bizplace: bizplace,
105
- transportDriver: transportDriver,
106
- transportVehicle: transportVehicle,
107
- status: 'PENDING',
108
- domain: context.state.domain,
109
- creator: context.state.user,
110
- updater: context.state.user
111
- })
112
-
113
- const claimOrders = await Promise.all(
114
- newClaimOrders.map(async (claimOrder: ClaimOrder) => {
115
- return {
116
- ...claimOrder,
117
- claim: createdClaim,
118
- domain: context.state.domain,
119
- creator: context.state.user,
120
- updater: context.state.user
121
- }
122
- })
123
- )
124
-
125
- const claimDetails = await Promise.all(
126
- claim.claimDetails.map(async (claimDetail: NewClaimDetail) => {
127
- return {
128
- ...claimDetail,
129
- claim: createdClaim,
130
- domain: context.state.domain,
131
- creator: context.state.user,
132
- updater: context.state.user
133
- }
134
- })
135
- )
136
-
137
- await tx.getRepository(ClaimOrder).save(claimOrders)
138
- await tx.getRepository(ClaimDetail).save(claimDetails)
139
- //Save All Data//
140
-
141
- return createdClaim
142
- }
143
-
144
- @Directive('@transaction')
145
- @Mutation(returns => Claim)
146
- async updateClaim(
147
- @Arg('id') id: string,
148
- @Arg('patch', type => ClaimPatch) patch: ClaimPatch,
149
- @Ctx() context: ResolverContext
150
- ): Promise<Claim> {
151
- try {
152
- const { tx } = context.state
153
- const targetClaim: Claim = await tx.getRepository(Claim).findOne({
154
- where: { domain: { id: context.state.domain.id }, id },
155
- relations: ['claimDetails', 'claimOrders', 'bizplace', 'updater']
156
- })
157
- if (!targetClaim) throw new Error('claim not exists')
158
-
159
- let bizplace = await tx.getRepository(Bizplace).findOne({
160
- where: {
161
- domain: { id: context.state.domain.id },
162
- id: patch.bizplace
163
- }
164
- })
165
-
166
- tx.query(`
167
- DELETE FROM
168
- claim_orders
169
- WHERE
170
- claim_id = '${targetClaim.id}'
171
- `)
172
- tx.query(`
173
- DELETE FROM
174
- claim_details
175
- WHERE
176
- claim_id = '${targetClaim.id}'
177
- `)
178
-
179
- let arrClaimOrdersName = patch.claimOrders.map(item => {
180
- return item.name
181
- })
182
-
183
- let newClaimOrders = []
184
- let deliveryOrder = await tx.getRepository(DeliveryOrder).find({
185
- where: { name: In(arrClaimOrdersName), domain: { id: context.state.domain.id } }
186
- })
187
-
188
- let collectionOrder = await tx.getRepository(CollectionOrder).find({
189
- where: { name: In(arrClaimOrdersName), domain: { id: context.state.domain.id } }
190
- })
191
-
192
- deliveryOrder.map(order => {
193
- newClaimOrders.push({
194
- name: order.name,
195
- deliveryOrder: order
196
- })
197
- })
198
-
199
- collectionOrder.map(order => {
200
- newClaimOrders.push({
201
- name: order.name,
202
- collectionOrder: order
203
- })
204
- })
205
-
206
- debugger
207
- await tx.getRepository(Claim).save({
208
- ...targetClaim,
209
- ...patch,
210
- bizplace: bizplace,
211
- updater: context.state.user
212
- } as any)
213
-
214
- const claimOrders = await Promise.all(
215
- newClaimOrders.map(async (ClaimOrder: ClaimOrder) => {
216
- return {
217
- ...ClaimOrder,
218
- claim: targetClaim,
219
- domain: context.state.domain,
220
- creator: context.state.user,
221
- updater: context.state.user
222
- }
223
- })
224
- )
225
-
226
- const claimDetails = await Promise.all(
227
- patch.claimDetails.map(async (claimDetail: ClaimDetailPatch) => {
228
- return {
229
- ...claimDetail,
230
- claim: targetClaim,
231
- domain: context.state.domain,
232
- creator: context.state.user,
233
- updater: context.state.user
234
- }
235
- })
236
- )
237
-
238
- await tx.getRepository(ClaimOrder).save(claimOrders)
239
- await tx.getRepository(ClaimDetail).save(claimDetails)
240
-
241
- return targetClaim
242
- } catch (e) {
243
- throw e
244
- }
245
- }
246
-
247
- @Mutation(returns => [Claim])
248
- async updateMultipleClaim(
249
- @Arg('patches', type => [ClaimPatch]) patches: ClaimPatch[],
250
- @Ctx() context: ResolverContext
251
- ): Promise<Claim[]> {
252
- let results: Claim[] = []
253
- const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')
254
- const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')
255
- const claimRepo = getRepository(Claim)
256
-
257
- if (_createRecords.length > 0) {
258
- for (let i = 0; i < _createRecords.length; i++) {
259
- const newRecord = _createRecords[i]
260
-
261
- const result = await claimRepo.save({
262
- ...newRecord,
263
- domain: context.state.domain,
264
- creator: context.state.user,
265
- updater: context.state.user
266
- } as any)
267
-
268
- results.push(result)
269
- }
270
- }
271
-
272
- if (_updateRecords.length > 0) {
273
- for (let i = 0; i < _updateRecords.length; i++) {
274
- const newRecord = _updateRecords[i]
275
- const claim = await claimRepo.findOneBy({ id: newRecord.id })
276
-
277
- const result = await claimRepo.save({
278
- ...claim,
279
- ...newRecord,
280
- updater: context.state.user
281
- } as any)
282
-
283
- results.push(result)
284
- }
285
- }
286
-
287
- return results
288
- }
289
-
290
- @Mutation(returns => Boolean)
291
- async deleteClaim(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<boolean> {
292
- await getRepository(Claim).delete({ domain: { id: context.state.domain.id }, name })
293
- return true
294
- }
295
-
296
- @Mutation(returns => Boolean)
297
- async deleteClaims(
298
- @Arg('names', type => [String]) names: string[],
299
- @Ctx() context: ResolverContext
300
- ): Promise<boolean> {
301
- await getRepository(Claim).delete({
302
- domain: { id: context.state.domain.id },
303
- name: In(names)
304
- })
305
-
306
- return true
307
- }
308
- }
@@ -1,122 +0,0 @@
1
- import { Arg, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'
2
-
3
- import { User } from '@things-factory/auth-base'
4
- import { convertListParams, Domain, Filter, getRepository, Pagination, Sorting } from '@things-factory/shell'
5
-
6
- import { ClaimList } from '../'
7
- import { Claim } from './claim'
8
-
9
- @Resolver(Claim)
10
- export class ClaimQuery {
11
- @Query(returns => Claim)
12
- async claim(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<Claim> {
13
- return await getRepository(Claim).findOne({
14
- where: {
15
- domain: { id: context.state.domain.id },
16
- id
17
- },
18
- relations: [
19
- 'domain',
20
- 'claimDetails',
21
- 'claimOrders',
22
- 'transportDriver',
23
- 'transportVehicle',
24
- 'bizplace',
25
- 'creator',
26
- 'updater'
27
- ]
28
- })
29
- }
30
-
31
- @Query(returns => ClaimList)
32
- async claims(
33
- @Arg('filters', type => [Filter], { nullable: true }) filters?: [Filter],
34
- @Arg('pagination', type => Pagination, { nullable: true }) pagination?: Pagination,
35
- @Arg('sortings', type => [Sorting], { nullable: true }) sortings?: [Sorting]
36
- ): Promise<ClaimList> {
37
- const convertedParams = convertListParams({ filters, pagination, sortings })
38
- let [items, total] = await getRepository<Claim>(Claim).findAndCount({
39
- ...convertedParams,
40
- relations: ['domain', 'creator', 'updater', 'bizplace', 'transportVehicle', 'transportDriver', 'claimDetails']
41
- })
42
-
43
- return { items, total }
44
- }
45
-
46
- @Query(returns => [Claim])
47
- async claimOrderList(
48
- @Ctx() context: ResolverContext,
49
- @Arg('transportDriver', { nullable: true }) transportDriver?: string,
50
- @Arg('transportVehicle', { nullable: true }) transportVehicle?: string
51
- ): Promise<Claim[]> {
52
- let domainId = context.state.domain.id
53
- let arrOrders = []
54
- if (transportDriver && transportVehicle && transportDriver !== '' && transportVehicle !== '') {
55
- arrOrders = await getRepository(Claim).query(`
56
- select delOrd.id, delOrd.name AS name from transport_order_details transportOrd
57
- inner join delivery_orders delOrd on delOrd.id = transportord.delivery_order_id and delOrd.domain_id = transportOrd.domain_id
58
- where delOrd.name NOT IN (SELECT name FROM claim_orders) AND
59
- truck_no IS NULL AND delOrd.domain_id = '${domainId}' AND
60
- transport_driver_id = '${transportDriver}' and transport_vehicle_id = '${transportVehicle}'
61
- AND status = 'DONE'
62
- UNION
63
- select colOrd.id, colOrd.name AS name from transport_order_details transportOrd
64
- inner join collection_orders colOrd on colOrd.id = transportord.collection_order_id and colOrd.domain_id = transportOrd.domain_id
65
- where colOrd.name NOT IN (SELECT name FROM claim_orders) AND
66
- truck_no IS NULL AND colOrd.domain_id = '${domainId}' AND
67
- transport_driver_id = '${transportDriver}' and transport_vehicle_id = '${transportVehicle}'
68
- AND status = 'DONE'
69
- `)
70
- }
71
- return arrOrders
72
- }
73
-
74
- @Query(returns => Claim)
75
- async claimOrderDetail(
76
- @Ctx() context: ResolverContext,
77
- @Arg('filters', type => [Filter], { nullable: true }) filters?: Filter[]
78
- ): Promise<Claim> {
79
- let claim = new Claim()
80
- // let deliveryOrder = await getRepository(DeliveryOrder).findOne({
81
- // where: {
82
- // domain: { id: context.state.domain.id },
83
- // name: params.filters[0].value
84
- // },
85
- // relations: ['domain', 'bizplace', 'transportDriver', 'transportVehicle', 'creator', 'updater']
86
- // })
87
-
88
- // let collectionOrder = await getRepository(CollectionOrder).findOne({
89
- // where: {
90
- // domain: { id: context.state.domain.id },
91
- // name: params.filters[0].value
92
- // },
93
- // relations: ['domain', 'bizplace', 'transportDriver', 'transportVehicle', 'creator', 'updater']
94
- // })
95
- // var x = await getRepository(Claim).findOne({
96
- // where: {
97
- // domain: { id: context.state.domain.id },
98
- // deliveryOrder: 'DO-201992495155390'
99
- // },
100
- // relations: ['deliveryOrder']
101
- // })
102
-
103
- // claim.deliveryOrder = deliveryOrder
104
- // claim.collectionOrder = collectionOrder
105
- return claim
106
- }
107
-
108
- @FieldResolver(type => Domain)
109
- async domain(@Root() claim: Claim): Promise<Domain> {
110
- return await getRepository(Domain).findOneBy({ id: claim.domainId })
111
- }
112
-
113
- @FieldResolver(type => User)
114
- async creator(@Root() claim: Claim): Promise<User> {
115
- return await getRepository(User).findOneBy({ id: claim.creatorId })
116
- }
117
-
118
- @FieldResolver(type => User)
119
- async updater(@Root() claim: Claim): Promise<User> {
120
- return await getRepository(User).findOneBy({ id: claim.updaterId })
121
- }
122
- }
@@ -1,130 +0,0 @@
1
- import { Field, InputType, Int, ObjectType } from 'type-graphql'
2
- import { ClaimDetailPatch, NewClaimDetail } from '../claim-detail/claim-detail-types'
3
- import { ClaimOrderPatch, NewClaimOrder } from '../claim-order/claim-order-types'
4
- import { Claim } from './claim'
5
-
6
- @ObjectType()
7
- export class ClaimList {
8
- @Field(type => [Claim], { nullable: true })
9
- items: Claim[]
10
-
11
- @Field(type => Int, { nullable: true })
12
- total: number
13
- }
14
-
15
- @InputType()
16
- export class NewClaim {
17
- @Field({ nullable: true })
18
- name: string
19
-
20
- @Field({ nullable: true })
21
- description: string
22
-
23
- @Field({ nullable: true })
24
- billingMode: string
25
-
26
- @Field({ nullable: true })
27
- charges: number
28
-
29
- @Field({ nullable: true })
30
- transportDriver: string
31
-
32
- @Field({ nullable: true })
33
- transportVehicle: string
34
-
35
- @Field({ nullable: true })
36
- from: string
37
-
38
- @Field({ nullable: true })
39
- to: string
40
-
41
- @Field({ nullable: true })
42
- remark: string
43
-
44
- @Field({ nullable: true })
45
- bizplace: string
46
-
47
- @Field({ nullable: true })
48
- drum: number
49
-
50
- @Field({ nullable: true })
51
- pallet: number
52
-
53
- @Field({ nullable: true })
54
- carton: number
55
-
56
- @Field({ nullable: true })
57
- bag: number
58
-
59
- @Field({ nullable: true })
60
- other: number
61
-
62
- @Field(type => [NewClaimDetail], { nullable: true })
63
- claimDetails: NewClaimDetail[]
64
-
65
- @Field(type => [NewClaimOrder], { nullable: true })
66
- claimOrders: NewClaimOrder[]
67
- }
68
-
69
- @InputType()
70
- export class ClaimPatch {
71
- @Field({ nullable: true })
72
- id: string
73
-
74
- @Field({ nullable: true })
75
- name: string
76
-
77
- @Field({ nullable: true })
78
- description: string
79
-
80
- @Field({ nullable: true })
81
- cuFlag: string
82
-
83
- @Field({ nullable: true })
84
- billingMode: string
85
-
86
- @Field({ nullable: true })
87
- charges: number
88
-
89
- @Field({ nullable: true })
90
- transportDriver: string
91
-
92
- @Field({ nullable: true })
93
- transportVehicle: string
94
-
95
- @Field({ nullable: true })
96
- from: string
97
-
98
- @Field({ nullable: true })
99
- to: string
100
-
101
- @Field({ nullable: true })
102
- remark: string
103
-
104
- @Field({ nullable: true })
105
- bizplace: string
106
-
107
- @Field({ nullable: true })
108
- status: string
109
-
110
- @Field({ nullable: true })
111
- drum: number
112
-
113
- @Field({ nullable: true })
114
- pallet: number
115
-
116
- @Field({ nullable: true })
117
- carton: number
118
-
119
- @Field({ nullable: true })
120
- bag: number
121
-
122
- @Field({ nullable: true })
123
- other: number
124
-
125
- @Field(type => [ClaimDetailPatch], { nullable: true })
126
- claimDetails: ClaimDetailPatch[]
127
-
128
- @Field(type => [ClaimOrderPatch], { nullable: true })
129
- claimOrders: ClaimOrderPatch[]
130
- }
@@ -1,140 +0,0 @@
1
- import { User } from '@things-factory/auth-base'
2
- import { Bizplace } from '@things-factory/biz-base'
3
- import { Domain } from '@things-factory/shell'
4
- import { TransportDriver, TransportVehicle } from '@things-factory/transport-base'
5
- import { Field, ID, ObjectType } from 'type-graphql'
6
- import {
7
- Column,
8
- CreateDateColumn,
9
- Entity,
10
- Index,
11
- JoinColumn,
12
- ManyToOne,
13
- OneToMany,
14
- PrimaryGeneratedColumn,
15
- RelationId,
16
- UpdateDateColumn
17
- } from 'typeorm'
18
- import { ClaimDetail, ClaimOrder } from '../'
19
-
20
- @Entity()
21
- @Index('ix_claim_0', (claim: Claim) => [claim.domain, claim.id], { unique: true })
22
- @ObjectType()
23
- export class Claim {
24
- @PrimaryGeneratedColumn('uuid')
25
- @Field(type => ID)
26
- readonly id: string
27
-
28
- @ManyToOne(type => Domain)
29
- @Field(type => Domain, { nullable: true })
30
- domain: Domain
31
-
32
- @RelationId((claim: Claim) => claim.domain)
33
- domainId: string
34
-
35
- @Column()
36
- @Field()
37
- name: string
38
-
39
- @Column({ nullable: true })
40
- @Field({ nullable: true })
41
- description: string
42
-
43
- @Column({ nullable: true })
44
- @Field({ nullable: true })
45
- billingMode: string
46
-
47
- @Column({ nullable: true })
48
- @Field({ nullable: true })
49
- from: string
50
-
51
- @Column({ nullable: true })
52
- @Field({ nullable: true })
53
- to: string
54
-
55
- @Column({ nullable: true })
56
- @Field({ nullable: true })
57
- remark: string
58
-
59
- @Column({ nullable: true })
60
- @Field({ nullable: true })
61
- charges: number
62
-
63
- @Column({ nullable: true })
64
- @Field({ nullable: true })
65
- drum: number
66
-
67
- @Column({ nullable: true })
68
- @Field({ nullable: true })
69
- pallet: number
70
-
71
- @Column({ nullable: true })
72
- @Field({ nullable: true })
73
- carton: number
74
-
75
- @Column({ nullable: true })
76
- @Field({ nullable: true })
77
- bag: number
78
-
79
- @Column({ nullable: true })
80
- @Field({ nullable: true })
81
- other: number
82
-
83
- @Column()
84
- @Field()
85
- status: string
86
-
87
- @CreateDateColumn()
88
- @Field()
89
- createdAt: Date
90
-
91
- @UpdateDateColumn()
92
- @Field()
93
- updatedAt: Date
94
-
95
- @OneToMany(type => ClaimDetail, claimDetail => claimDetail.claim)
96
- @Field(type => [ClaimDetail], { nullable: true })
97
- claimDetails: ClaimDetail[]
98
-
99
- @OneToMany(type => ClaimOrder, claimOrder => claimOrder.claim)
100
- @Field(type => [ClaimOrder], { nullable: true })
101
- claimOrders: ClaimOrder[]
102
-
103
- @ManyToOne(type => TransportDriver)
104
- @JoinColumn()
105
- @Field(type => TransportDriver, { nullable: true })
106
- transportDriver: TransportDriver
107
-
108
- @RelationId((claim: Claim) => claim.transportDriver)
109
- transportDriverId: string
110
-
111
- @ManyToOne(type => TransportVehicle)
112
- @JoinColumn()
113
- @Field(type => TransportVehicle, { nullable: true })
114
- transportVehicle: TransportVehicle
115
-
116
- @RelationId((claim: Claim) => claim.transportVehicle)
117
- transportVehicleId: string
118
-
119
- @ManyToOne(type => Bizplace, { nullable: true })
120
- @JoinColumn()
121
- @Field(type => Bizplace, { nullable: true })
122
- bizplace: Bizplace
123
-
124
- @RelationId((claim: Claim) => claim.bizplace)
125
- bizplaceId: string
126
-
127
- @ManyToOne(type => User)
128
- @Field(type => User, { nullable: true })
129
- creator: User
130
-
131
- @RelationId((claim: Claim) => claim.creator)
132
- creatorId: string
133
-
134
- @ManyToOne(type => User)
135
- @Field(type => User, { nullable: true })
136
- updater: User
137
-
138
- @RelationId((claim: Claim) => claim.updater)
139
- updaterId: string
140
- }
@@ -1,9 +0,0 @@
1
- import { Claim } from './claim'
2
- import { ClaimMutation } from './claim-mutation'
3
- import { ClaimQuery } from './claim-query'
4
-
5
- export const entities = [Claim]
6
- export const resolvers = [ClaimQuery, ClaimMutation]
7
-
8
- export * from './claim-mutation'
9
- export * from './claim-query'