@things-factory/sales-base 8.0.2 → 8.0.5

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,102 +0,0 @@
1
- import { Arg, Ctx, Mutation, Resolver } from 'type-graphql'
2
- import { In } from 'typeorm'
3
-
4
- import { getRepository } from '@things-factory/shell'
5
-
6
- import { ClaimDetailPatch, NewClaimDetail } from '../'
7
- import { ClaimDetail } from './claim-detail'
8
-
9
- @Resolver(ClaimDetail)
10
- export class ClaimDetailMutation {
11
- @Mutation(returns => ClaimDetail)
12
- async createClaimDetail(
13
- @Arg('claimDetail', type => NewClaimDetail) claimDetail: NewClaimDetail,
14
- @Ctx() context: ResolverContext
15
- ): Promise<ClaimDetail> {
16
- return await getRepository(ClaimDetail).save({
17
- ...claimDetail,
18
- domain: context.state.domain,
19
- creator: context.state.user,
20
- updater: context.state.user
21
- })
22
- }
23
-
24
- @Mutation(returns => ClaimDetail)
25
- async updateClaimDetail(
26
- @Arg('name') name: string,
27
- @Arg('patch', type => ClaimDetailPatch) patch: ClaimDetailPatch,
28
- @Ctx() context: ResolverContext
29
- ): Promise<ClaimDetail> {
30
- const repository = getRepository(ClaimDetail)
31
- const claimDetail = await repository.findOne({
32
- where: { domain: { id: context.state.domain.id }, name }
33
- })
34
-
35
- return await repository.save({
36
- ...claimDetail,
37
- ...patch,
38
- updater: context.state.user
39
- })
40
- }
41
-
42
- @Mutation(returns => [ClaimDetail])
43
- async updateMultipleClaimDetail(
44
- @Arg('patches', type => [ClaimDetailPatch]) patches: ClaimDetailPatch[],
45
- @Ctx() context: ResolverContext
46
- ): Promise<ClaimDetail[]> {
47
- let results: ClaimDetail[] = []
48
- const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')
49
- const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')
50
- const claimDetailRepo = getRepository(ClaimDetail)
51
-
52
- if (_createRecords.length > 0) {
53
- for (let i = 0; i < _createRecords.length; i++) {
54
- const newRecord = _createRecords[i]
55
-
56
- const result = await claimDetailRepo.save({
57
- ...newRecord,
58
- domain: context.state.domain,
59
- creator: context.state.user,
60
- updater: context.state.user
61
- })
62
-
63
- results.push({ ...result, cuFlag: '+' })
64
- }
65
- }
66
-
67
- if (_updateRecords.length > 0) {
68
- for (let i = 0; i < _updateRecords.length; i++) {
69
- const newRecord = _updateRecords[i]
70
- const claimDetail = await claimDetailRepo.findOneBy({ id: newRecord.id })
71
-
72
- const result = await claimDetailRepo.save({
73
- ...claimDetail,
74
- ...newRecord,
75
- updater: context.state.user
76
- })
77
-
78
- results.push({ ...result, cuFlag: 'M' })
79
- }
80
- }
81
-
82
- return results
83
- }
84
-
85
- @Mutation(returns => Boolean)
86
- async deleteClaimDetail(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<boolean> {
87
- await getRepository(ClaimDetail).delete({ domain: { id: context.state.domain.id }, name })
88
- return true
89
- }
90
-
91
- @Mutation(returns => Boolean)
92
- async deleteClaimDetails(
93
- @Arg('names', type => [String]) names: string[],
94
- @Ctx() context: ResolverContext
95
- ): Promise<boolean> {
96
- await getRepository(ClaimDetail).delete({
97
- domain: { id: context.state.domain.id },
98
- name: In(names)
99
- })
100
- return true
101
- }
102
- }
@@ -1,55 +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 { ClaimDetailList } from '../'
7
- import { ClaimDetail } from './claim-detail'
8
-
9
- @Resolver(ClaimDetail)
10
- export class ClaimDetailQuery {
11
- @Query(returns => ClaimDetail)
12
- async claimDetail(
13
- @Ctx() context: ResolverContext,
14
- @Arg('name', { nullable: true }) name?: string
15
- ): Promise<ClaimDetail> {
16
- return await getRepository(ClaimDetail).findOne({
17
- where: { domain: { id: context.state.domain.id }, name },
18
- relations: ['domain', 'creator', 'updater']
19
- })
20
- }
21
-
22
- @Query(returns => ClaimDetailList)
23
- async claimDetails(
24
- @Arg('filters', type => [Filter], { nullable: true }) filters?: Filter[],
25
- @Arg('pagination', type => Pagination, { nullable: true }) pagination?: Pagination,
26
- @Arg('sortings', type => [Sorting], { nullable: true }) sortings?: Sorting[]
27
- ): Promise<ClaimDetailList> {
28
- const convertedParams = convertListParams({
29
- filters,
30
- pagination,
31
- sortings
32
- })
33
- const [items, total] = await getRepository<ClaimDetail>(ClaimDetail).findAndCount({
34
- ...convertedParams,
35
- relations: ['domain', 'creator', 'updater']
36
- })
37
-
38
- return { items, total }
39
- }
40
-
41
- @FieldResolver(type => Domain)
42
- async domain(@Root() claimDetail: ClaimDetail): Promise<Domain> {
43
- return await getRepository(Domain).findOneBy({ id: claimDetail.domainId })
44
- }
45
-
46
- @FieldResolver(type => User)
47
- async creator(@Root() claimDetail: ClaimDetail): Promise<User> {
48
- return await getRepository(User).findOneBy({ id: claimDetail.creatorId })
49
- }
50
-
51
- @FieldResolver(type => User)
52
- async updater(@Root() claimDetail: ClaimDetail): Promise<User> {
53
- return await getRepository(User).findOneBy({ id: claimDetail.updaterId })
54
- }
55
- }
@@ -1,47 +0,0 @@
1
- import { Field, InputType, Int, ObjectType } from 'type-graphql'
2
- import { ClaimDetail } from './claim-detail'
3
-
4
- @ObjectType()
5
- export class ClaimDetailList {
6
- @Field(type => [ClaimDetail], { nullable: true })
7
- items: ClaimDetail[]
8
-
9
- @Field(type => Int, { nullable: true })
10
- total: number
11
- }
12
-
13
- @InputType()
14
- export class NewClaimDetail {
15
- @Field()
16
- name: string
17
-
18
- @Field({ nullable: true })
19
- description: string
20
-
21
- @Field({ nullable: true })
22
- refNo: string
23
-
24
- @Field({ nullable: true })
25
- amount: number
26
- }
27
-
28
- @InputType()
29
- export class ClaimDetailPatch {
30
- @Field({ nullable: true })
31
- id: string
32
-
33
- @Field({ nullable: true })
34
- name: string
35
-
36
- @Field({ nullable: true })
37
- refNo: string
38
-
39
- @Field({ nullable: true })
40
- amount: number
41
-
42
- @Field({ nullable: true })
43
- description: string
44
-
45
- @Field({ nullable: true })
46
- cuFlag: string
47
- }
@@ -1,69 +0,0 @@
1
- import { User } from '@things-factory/auth-base'
2
- import { Domain, roundTransformer } from '@things-factory/shell'
3
- import { Field, ID, ObjectType } from 'type-graphql'
4
- import { Column, CreateDateColumn, Entity, Index, ManyToOne, PrimaryGeneratedColumn, RelationId, UpdateDateColumn } from 'typeorm'
5
- import { Claim } from '../'
6
-
7
- @Entity()
8
- @ObjectType()
9
- @Index('ix_claim-detail_0', (claimDetail: ClaimDetail) => [claimDetail.domain, claimDetail.id], { unique: true })
10
- export class ClaimDetail {
11
- @PrimaryGeneratedColumn('uuid')
12
- @Field(type => ID)
13
- readonly id: string
14
-
15
- @ManyToOne(type => Domain)
16
- @Field(type => Domain, { nullable: true })
17
- domain: Domain
18
-
19
- @RelationId((claimDetail: ClaimDetail) => claimDetail.domain)
20
- domainId: string
21
-
22
- @Column()
23
- @Field()
24
- name: string
25
-
26
- @Column({ nullable: true })
27
- @Field({ nullable: true })
28
- description: string
29
-
30
- @Column({ nullable: true })
31
- @Field({ nullable: true })
32
- refNo: String
33
-
34
- @Column('float', { transformer: roundTransformer })
35
- @Field()
36
- amount: number
37
-
38
- @CreateDateColumn()
39
- @Field()
40
- createdAt: Date
41
-
42
- @UpdateDateColumn()
43
- @Field()
44
- updatedAt: Date
45
-
46
- @ManyToOne(type => Claim)
47
- @Field(type => Claim, { nullable: true })
48
- claim: Claim
49
-
50
- @RelationId((claimDetail: ClaimDetail) => claimDetail.claim)
51
- claimId: string
52
-
53
- @ManyToOne(type => User)
54
- @Field(type => User, { nullable: true })
55
- creator: User
56
-
57
- @RelationId((claimDetail: ClaimDetail) => claimDetail.creator)
58
- creatorId: string
59
-
60
- @ManyToOne(type => User)
61
- @Field(type => User, { nullable: true })
62
- updater: User
63
-
64
- @RelationId((claimDetail: ClaimDetail) => claimDetail.updater)
65
- updaterId: string
66
-
67
- @Field({ nullable: true })
68
- cuFlag: string
69
- }
@@ -1,9 +0,0 @@
1
- import { ClaimDetail } from './claim-detail'
2
- import { ClaimDetailMutation } from './claim-detail-mutation'
3
- import { ClaimDetailQuery } from './claim-detail-query'
4
-
5
- export const entities = [ClaimDetail]
6
- export const resolvers = [ClaimDetailQuery, ClaimDetailMutation]
7
-
8
- export * from './claim-detail-mutation'
9
- export * from './claim-detail-query'
@@ -1,101 +0,0 @@
1
- import { Arg, Ctx, Mutation, Resolver } from 'type-graphql'
2
- import { In } from 'typeorm'
3
-
4
- import { getRepository } from '@things-factory/shell'
5
-
6
- import { ClaimOrderPatch, NewClaimOrder } from '../'
7
- import { ClaimOrder } from './claim-order'
8
-
9
- @Resolver(ClaimOrder)
10
- export class ClaimOrderMutation {
11
- @Mutation(returns => ClaimOrder)
12
- async createClaimOrder(
13
- @Arg('claimOrder', type => NewClaimOrder) claimOrder: NewClaimOrder,
14
- @Ctx() context: ResolverContext
15
- ): Promise<ClaimOrder> {
16
- return await getRepository(ClaimOrder).save({
17
- ...claimOrder,
18
- domain: context.state.domain,
19
- creator: context.state.user,
20
- updater: context.state.user
21
- })
22
- }
23
-
24
- @Mutation(returns => ClaimOrder)
25
- async updateClaimOrder(
26
- @Arg('name') name: string,
27
- @Arg('patch', type => ClaimOrderPatch) patch: ClaimOrderPatch,
28
- @Ctx() context: ResolverContext
29
- ): Promise<ClaimOrder> {
30
- const repository = getRepository(ClaimOrder)
31
- const claimOrder = await repository.findOne({
32
- where: { domain: { id: context.state.domain.id }, name }
33
- })
34
-
35
- return await repository.save({
36
- ...claimOrder,
37
- ...patch,
38
- updater: context.state.user
39
- })
40
- }
41
-
42
- @Mutation(returns => [ClaimOrder])
43
- async updateMultipleClaimOrder(
44
- @Arg('patches', type => [ClaimOrderPatch]) patches: ClaimOrderPatch[],
45
- @Ctx() context: ResolverContext
46
- ): Promise<ClaimOrder[]> {
47
- let results: ClaimOrder[] = []
48
- const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')
49
- const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')
50
- const claimOrderRepo = getRepository(ClaimOrder)
51
-
52
- if (_createRecords.length > 0) {
53
- for (let i = 0; i < _createRecords.length; i++) {
54
- const newRecord = _createRecords[i]
55
- const result = await claimOrderRepo.save({
56
- ...newRecord,
57
- domain: context.state.domain,
58
- creator: context.state.user,
59
- updater: context.state.user
60
- })
61
-
62
- results.push({ ...result, cuFlag: '+' })
63
- }
64
- }
65
-
66
- if (_updateRecords.length > 0) {
67
- for (let i = 0; i < _updateRecords.length; i++) {
68
- const newRecord = _updateRecords[i]
69
- const claimOrder = await claimOrderRepo.findOneBy({ id: newRecord.id })
70
-
71
- const result = await claimOrderRepo.save({
72
- ...claimOrder,
73
- ...newRecord,
74
- updater: context.state.user
75
- })
76
-
77
- results.push({ ...result, cuFlag: 'M' })
78
- }
79
- }
80
-
81
- return results
82
- }
83
-
84
- @Mutation(returns => Boolean)
85
- async deleteClaimOrder(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<boolean> {
86
- await getRepository(ClaimOrder).delete({ domain: { id: context.state.domain.id }, name })
87
- return true
88
- }
89
-
90
- @Mutation(returns => Boolean)
91
- async deleteClaimOrders(
92
- @Arg('names', type => [String]) names: string[],
93
- @Ctx() context: ResolverContext
94
- ): Promise<boolean> {
95
- await getRepository(ClaimOrder).delete({
96
- domain: { id: context.state.domain.id },
97
- name: In(names)
98
- })
99
- return true
100
- }
101
- }
@@ -1,47 +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 { ClaimOrderList } from '../'
7
- import { ClaimOrder } from './claim-order'
8
-
9
- @Resolver(ClaimOrder)
10
- export class ClaimOrderQuery {
11
- @Query(returns => ClaimOrderList)
12
- async claimOrders(
13
- @Arg('filters', type => [Filter], { nullable: true }) filters?: Filter[],
14
- @Arg('pagination', type => Pagination, { nullable: true }) pagination?: Pagination,
15
- @Arg('sortings', type => [Sorting], { nullable: true }) sortings?: [Sorting]
16
- ): Promise<ClaimOrderList> {
17
- const convertedParams = convertListParams({ filters, pagination, sortings })
18
- const [items, total] = await getRepository<ClaimOrder>(ClaimOrder).findAndCount({
19
- ...convertedParams,
20
- relations: ['domain', 'creator', 'updater']
21
- })
22
- return { items, total }
23
- }
24
-
25
- @Query(returns => ClaimOrder)
26
- async claimOrder(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<ClaimOrder> {
27
- return await getRepository(ClaimOrder).findOne({
28
- where: { domain: { id: context.state.domain.id }, name },
29
- relations: ['domain', 'creator', 'updater']
30
- })
31
- }
32
-
33
- @FieldResolver(type => Domain)
34
- async domain(@Root() claimOrder: ClaimOrder): Promise<Domain> {
35
- return await getRepository(Domain).findOneBy({ id: claimOrder.domainId })
36
- }
37
-
38
- @FieldResolver(type => User)
39
- async creator(@Root() claimOrder: ClaimOrder): Promise<User> {
40
- return await getRepository(User).findOneBy({ id: claimOrder.creatorId })
41
- }
42
-
43
- @FieldResolver(type => User)
44
- async updater(@Root() claimOrder: ClaimOrder): Promise<User> {
45
- return await getRepository(User).findOneBy({ id: claimOrder.updaterId })
46
- }
47
- }
@@ -1,35 +0,0 @@
1
- import { Field, InputType, Int, ObjectType } from 'type-graphql'
2
- import { ClaimOrder } from './claim-order'
3
-
4
- @ObjectType()
5
- export class ClaimOrderList {
6
- @Field(type => ClaimOrder, { nullable: true })
7
- items: ClaimOrder[]
8
-
9
- @Field(type => Int, { nullable: true })
10
- total: number
11
- }
12
-
13
- @InputType()
14
- export class NewClaimOrder {
15
- @Field()
16
- name: string
17
-
18
- @Field({ nullable: true })
19
- description: string
20
- }
21
-
22
- @InputType()
23
- export class ClaimOrderPatch {
24
- @Field({ nullable: true })
25
- id: string
26
-
27
- @Field({ nullable: true })
28
- name: string
29
-
30
- @Field({ nullable: true })
31
- description: string
32
-
33
- @Field({ nullable: true })
34
- cuFlag: string
35
- }
@@ -1,81 +0,0 @@
1
- import { User } from '@things-factory/auth-base'
2
- import { Domain } from '@things-factory/shell'
3
- import { Field, ID, ObjectType } from 'type-graphql'
4
- import {
5
- Column,
6
- CreateDateColumn,
7
- Entity,
8
- Index,
9
- JoinColumn,
10
- ManyToOne,
11
- PrimaryGeneratedColumn,
12
- RelationId,
13
- UpdateDateColumn
14
- } from 'typeorm'
15
- import { Claim, CollectionOrder, DeliveryOrder } from '../'
16
-
17
- @Entity()
18
- @ObjectType()
19
- @Index('ix_claim-order_0', (claimOrder: ClaimOrder) => [claimOrder.domain, claimOrder.id], { unique: true })
20
- export class ClaimOrder {
21
- @PrimaryGeneratedColumn('uuid')
22
- @Field(type => ID)
23
- readonly id: string
24
-
25
- @ManyToOne(type => Domain)
26
- @Field(type => Domain, { nullable: true })
27
- domain: Domain
28
-
29
- @RelationId((claimOrder: ClaimOrder) => claimOrder.domain)
30
- domainId: string
31
-
32
- @Column()
33
- @Field()
34
- name: string
35
-
36
- @Column({ nullable: true })
37
- @Field({ nullable: true })
38
- description: string
39
-
40
- @CreateDateColumn()
41
- @Field()
42
- createdAt: Date
43
-
44
- @UpdateDateColumn()
45
- @Field()
46
- updatedAt: Date
47
-
48
- @ManyToOne(type => Claim)
49
- @Field(type => Claim, { nullable: true })
50
- claim: Claim
51
-
52
- @RelationId((claimOrder: ClaimOrder) => claimOrder.claim)
53
- claimId: string
54
-
55
- @ManyToOne(type => CollectionOrder)
56
- @JoinColumn()
57
- @Field(type => CollectionOrder, { nullable: true })
58
- collectionOrder: CollectionOrder
59
-
60
- @ManyToOne(type => DeliveryOrder)
61
- @JoinColumn()
62
- @Field(type => DeliveryOrder, { nullable: true })
63
- deliveryOrder: DeliveryOrder
64
-
65
- @ManyToOne(type => User)
66
- @Field(type => User, { nullable: true })
67
- creator: User
68
-
69
- @RelationId((claimOrder: ClaimOrder) => claimOrder.creator)
70
- creatorId: string
71
-
72
- @ManyToOne(type => User)
73
- @Field(type => User, { nullable: true })
74
- updater: User
75
-
76
- @RelationId((claimOrder: ClaimOrder) => claimOrder.updater)
77
- updaterId: string
78
-
79
- @Field({ nullable: true })
80
- cuFlag: string
81
- }
@@ -1,9 +0,0 @@
1
- import { ClaimOrder } from './claim-order'
2
- import { ClaimOrderMutation } from './claim-order-mutation'
3
- import { ClaimOrderQuery } from './claim-order-query'
4
-
5
- export const entities = [ClaimOrder]
6
- export const resolvers = [ClaimOrderQuery, ClaimOrderMutation]
7
-
8
- export * from './claim-order-mutation'
9
- export * from './claim-order-query'