@things-factory/operato-hub 4.3.3 → 4.4.0-alpha.1

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 (62) hide show
  1. package/client/pages/constants/setting.js +0 -1
  2. package/dist-server/controllers/bizplace-initializer/dataset/codes.js +0 -9
  3. package/dist-server/controllers/bizplace-initializer/dataset/codes.js.map +1 -1
  4. package/dist-server/controllers/bizplace-initializer/dataset/index.js +5 -1
  5. package/dist-server/controllers/bizplace-initializer/dataset/index.js.map +1 -1
  6. package/dist-server/controllers/bizplace-initializer/dataset/settings.js +0 -10
  7. package/dist-server/controllers/bizplace-initializer/dataset/settings.js.map +1 -1
  8. package/dist-server/controllers/bizplace-initializer/index.js +5 -1
  9. package/dist-server/controllers/bizplace-initializer/index.js.map +1 -1
  10. package/dist-server/controllers/company-initializer/index.js +5 -1
  11. package/dist-server/controllers/company-initializer/index.js.map +1 -1
  12. package/dist-server/graphql/index.js +5 -1
  13. package/dist-server/graphql/index.js.map +1 -1
  14. package/dist-server/graphql/resolvers/index.js +5 -1
  15. package/dist-server/graphql/resolvers/index.js.map +1 -1
  16. package/dist-server/graphql/types/index.js +5 -1
  17. package/dist-server/graphql/types/index.js.map +1 -1
  18. package/dist-server/index.js +5 -1
  19. package/dist-server/index.js.map +1 -1
  20. package/dist-server/routers/api/restful-apis/unstable/add-marketplace-order.js +75 -85
  21. package/dist-server/routers/api/restful-apis/unstable/add-marketplace-order.js.map +1 -1
  22. package/dist-server/routers/api/restful-apis/unstable/add-release-order.js +35 -147
  23. package/dist-server/routers/api/restful-apis/unstable/add-release-order.js.map +1 -1
  24. package/dist-server/routers/api/restful-apis/unstable/index.js +0 -1
  25. package/dist-server/routers/api/restful-apis/unstable/index.js.map +1 -1
  26. package/dist-server/routers/api/restful-apis/v1/add-marketplace-order.js +75 -85
  27. package/dist-server/routers/api/restful-apis/v1/add-marketplace-order.js.map +1 -1
  28. package/dist-server/routers/api/restful-apis/v1/add-release-order.js +34 -146
  29. package/dist-server/routers/api/restful-apis/v1/add-release-order.js.map +1 -1
  30. package/dist-server/routers/api/restful-apis/v1/index.js +0 -1
  31. package/dist-server/routers/api/restful-apis/v1/index.js.map +1 -1
  32. package/dist-server/routers/api/restful-apis/v2/add-marketplace-order.js +75 -85
  33. package/dist-server/routers/api/restful-apis/v2/add-marketplace-order.js.map +1 -1
  34. package/dist-server/routers/api/restful-apis/v2/add-release-order.js +34 -149
  35. package/dist-server/routers/api/restful-apis/v2/add-release-order.js.map +1 -1
  36. package/dist-server/routers/api/restful-apis/v2/index.js +0 -1
  37. package/dist-server/routers/api/restful-apis/v2/index.js.map +1 -1
  38. package/dist-server/routers/business/index.js +5 -1
  39. package/dist-server/routers/business/index.js.map +1 -1
  40. package/dist-server/utils/index.js +5 -1
  41. package/dist-server/utils/index.js.map +1 -1
  42. package/package.json +54 -54
  43. package/server/controllers/bizplace-initializer/dataset/codes.ts +0 -9
  44. package/server/controllers/bizplace-initializer/dataset/settings.ts +0 -10
  45. package/server/routers/api/restful-apis/unstable/add-marketplace-order.ts +85 -97
  46. package/server/routers/api/restful-apis/unstable/add-release-order.ts +28 -211
  47. package/server/routers/api/restful-apis/unstable/index.ts +0 -1
  48. package/server/routers/api/restful-apis/v1/add-marketplace-order.ts +85 -97
  49. package/server/routers/api/restful-apis/v1/add-release-order.ts +26 -209
  50. package/server/routers/api/restful-apis/v1/index.ts +0 -1
  51. package/server/routers/api/restful-apis/v2/add-marketplace-order.ts +85 -97
  52. package/server/routers/api/restful-apis/v2/add-release-order.ts +26 -212
  53. package/server/routers/api/restful-apis/v2/index.ts +0 -1
  54. package/dist-server/routers/api/restful-apis/unstable/add-draft-release-order.js +0 -171
  55. package/dist-server/routers/api/restful-apis/unstable/add-draft-release-order.js.map +0 -1
  56. package/dist-server/routers/api/restful-apis/v1/add-draft-release-order.js +0 -171
  57. package/dist-server/routers/api/restful-apis/v1/add-draft-release-order.js.map +0 -1
  58. package/dist-server/routers/api/restful-apis/v2/add-draft-release-order.js +0 -171
  59. package/dist-server/routers/api/restful-apis/v2/add-draft-release-order.js.map +0 -1
  60. package/server/routers/api/restful-apis/unstable/add-draft-release-order.ts +0 -196
  61. package/server/routers/api/restful-apis/v1/add-draft-release-order.ts +0 -196
  62. package/server/routers/api/restful-apis/v2/add-draft-release-order.ts +0 -196
@@ -1,196 +0,0 @@
1
- import gql from 'graphql-tag'
2
- import { EntityManager, getConnection } from 'typeorm'
3
-
4
- import { restfulApiRouter as router } from '@things-factory/api'
5
- import { Bizplace } from '@things-factory/biz-base'
6
- import { OrderInventory } from '@things-factory/sales-base'
7
-
8
- import { businessMiddleware } from '../../../../middlewares/business-middleware'
9
- import { warehouseMiddleware } from '../../../../middlewares/warehouse-middleware'
10
-
11
- const debug = require('debug')('things-factory:operato-hub:restful-api:unstable:add-draft-release-order')
12
-
13
- router.post(
14
- '/v1/warehouse/:warehouseId/add-draft-release-order',
15
- businessMiddleware,
16
- warehouseMiddleware,
17
- async (context, next) => {
18
- return await getConnection().transaction(async (tx: EntityManager) => {
19
- const { client, domain } = context.state
20
- const { warehouseId: customerBizplaceId } = context.params
21
- const { t } = context
22
-
23
- if (!customerBizplaceId) context.throw(404, t('error.warehouse id not found'))
24
-
25
- let bodyReq = context.request.body
26
- if (typeof bodyReq === undefined || !Object.keys(bodyReq)?.length) {
27
- context.throw(400, t('error.invalid body request format'))
28
- }
29
- debug('post:/add-draft-release-order request.body', bodyReq)
30
- await checkMandatoryKey(context, bodyReq)
31
-
32
- // get customer company's bizplace
33
- const customerBizplace: Bizplace = await tx.getRepository(Bizplace).findOne({
34
- where: { id: customerBizplaceId }
35
- })
36
-
37
- const orderInventories: OrderInventory[] = bodyReq.orderInventories
38
-
39
- context.body = {
40
- result: (
41
- await client.mutate({
42
- mutation: gql`
43
- mutation upsertDraftReleaseGood(
44
- $draftReleaseGood: DraftReleaseGoodPatch!
45
- $orderProducts: [OrderProductPatch!]!
46
- $files: [Upload!]
47
- ) {
48
- upsertDraftReleaseGood(
49
- draftReleaseGood: $draftReleaseGood
50
- orderProducts: $orderProducts
51
- files: $files
52
- ) {
53
- id
54
- name
55
- refNo
56
- refNo2
57
- refNo3
58
- status
59
- truckNo
60
- ownTransport
61
- marketplaceOrderStatus
62
- billingAddress
63
- deliveryAddress1
64
- deliveryAddress2
65
- deliveryAddress3
66
- deliveryAddress4
67
- deliveryAddress5
68
- attentionTo
69
- attentionCompany
70
- city
71
- state
72
- postalCode
73
- country
74
- phone1
75
- phone2
76
- email
77
- type
78
- exportOption
79
- releaseDate
80
- collectionOrderNo
81
- bizplace {
82
- name
83
- }
84
- orderProducts {
85
- product {
86
- sku
87
- name
88
- description
89
- }
90
- packingType
91
- packingSize
92
- releaseQty
93
- }
94
- }
95
- }
96
- `,
97
- variables: {
98
- draftReleaseGood: {
99
- bizplace: {
100
- id: customerBizplace.id
101
- },
102
- courierOption: bodyReq.courierOption,
103
- collectionOrderNo: bodyReq.collectionOrderNo,
104
- exportOption: bodyReq.exportOption,
105
- ownTransport: bodyReq.ownTransport,
106
- packingOption: bodyReq.packingOption,
107
- refNo: bodyReq.refNo,
108
- refNo2: bodyReq?.refNo2,
109
- refNo3: bodyReq?.refNo3,
110
- releaseDate: bodyReq.releaseDate,
111
- type: bodyReq.type,
112
- marketplaceOrderStatus: bodyReq?.marketplaceOrderStatus,
113
- remark: bodyReq?.remark || null,
114
- billingAddress: bodyReq?.billTo?.billingAddress || null,
115
- deliveryAddress1: bodyReq?.deliverTo?.deliveryAddress1 || null,
116
- deliveryAddress2: bodyReq?.deliverTo?.deliveryAddress2 || null,
117
- deliveryAddress3: bodyReq?.deliverTo?.deliveryAddress3 || null,
118
- deliveryAddress4: bodyReq?.deliverTo?.deliveryAddress4 || null,
119
- deliveryAddress5: bodyReq?.deliverTo?.deliveryAddress5 || null,
120
- attentionTo: bodyReq?.deliverTo?.attentionTo || null,
121
- attentionCompany: bodyReq?.deliverTo?.attentionCompany || null,
122
- city: bodyReq?.deliverTo?.city || null,
123
- state: bodyReq?.deliverTo?.state || null,
124
- postalCode: bodyReq?.deliverTo?.postalCode || null,
125
- country: bodyReq?.deliverTo?.country || null,
126
- phone1: bodyReq?.deliverTo?.phone1 || null,
127
- phone2: bodyReq?.deliverTo?.phone2 || null,
128
- email: bodyReq?.deliverTo?.email || null
129
- },
130
- orderProducts: orderInventories,
131
- files: []
132
- },
133
- context: {
134
- ...context,
135
- hasUpload: true,
136
- state: {
137
- ...context.state,
138
- customerBizplace,
139
- domain,
140
- type: 'api'
141
- }
142
- }
143
- } as any)
144
- ).data
145
- }
146
- })
147
- }
148
- )
149
-
150
- export async function checkMandatoryKey(context, params) {
151
- let noparams = ['releaseDate', 'exportOption'].filter(param => !(param in params))
152
-
153
- if ('ownTransport' in params) {
154
- if (params.ownTransport == true) {
155
- if (!params.hasOwnProperty('collectionOrderNo')) {
156
- noparams.push('collectionOrderNo')
157
- }
158
- }
159
- } else {
160
- noparams.push('ownTransport')
161
- }
162
-
163
- if ('exportOption' in params) {
164
- if (params.exportOption === true) {
165
- if (
166
- params.exportOption.filter(
167
- record =>
168
- !record.containerNo || !record.containerArrivalDate || !record.containerLeavingDate || !record.shipName
169
- ).length
170
- ) {
171
- noparams.push('exportOption')
172
- }
173
- }
174
- }
175
-
176
- if ('orderInventories' in params) {
177
- params.orderInventories.forEach((param, key) => {
178
- let noSubParams = []
179
-
180
- if (!param?.releaseQty) noSubParams.push('releaseQty')
181
-
182
- if (!param?.product) noSubParams.push('product')
183
-
184
- if (noSubParams?.length)
185
- context.throw(400, context.t('error.required param x not found', { x: `${noSubParams.join(', ')}` }))
186
- })
187
- } else {
188
- noparams.push('orderInventories')
189
- }
190
-
191
- if (noparams?.length) {
192
- context.throw(400, context.t('error.required param x not found', { x: `${noparams.join(', ')}` }))
193
- }
194
-
195
- return params
196
- }
@@ -1,196 +0,0 @@
1
- import gql from 'graphql-tag'
2
- import { EntityManager, getConnection } from 'typeorm'
3
-
4
- import { restfulApiRouter as router } from '@things-factory/api'
5
- import { Bizplace } from '@things-factory/biz-base'
6
- import { OrderInventory } from '@things-factory/sales-base'
7
-
8
- import { businessMiddleware } from '../../../../middlewares/business-middleware'
9
- import { warehouseMiddleware } from '../../../../middlewares/warehouse-middleware'
10
-
11
- const debug = require('debug')('things-factory:operato-hub:restful-api:unstable:add-draft-release-order')
12
-
13
- router.post(
14
- '/v2/warehouse/:warehouseId/add-draft-release-order',
15
- businessMiddleware,
16
- warehouseMiddleware,
17
- async (context, next) => {
18
- return await getConnection().transaction(async (tx: EntityManager) => {
19
- const { client, domain } = context.state
20
- const { warehouseId: customerBizplaceId } = context.params
21
- const { t } = context
22
-
23
- if (!customerBizplaceId) context.throw(404, t('error.warehouse id not found'))
24
-
25
- let bodyReq = context.request.body
26
- if (typeof bodyReq === undefined || !Object.keys(bodyReq)?.length) {
27
- context.throw(400, t('error.invalid body request format'))
28
- }
29
- debug('post:/add-draft-release-order request.body', bodyReq)
30
- await checkMandatoryKey(context, bodyReq)
31
-
32
- // get customer company's bizplace
33
- const customerBizplace: Bizplace = await tx.getRepository(Bizplace).findOne({
34
- where: { id: customerBizplaceId }
35
- })
36
-
37
- const orderInventories: OrderInventory[] = bodyReq.orderInventories
38
-
39
- context.body = {
40
- result: (
41
- await client.mutate({
42
- mutation: gql`
43
- mutation upsertDraftReleaseGood(
44
- $draftReleaseGood: DraftReleaseGoodPatch!
45
- $orderProducts: [OrderProductPatch!]!
46
- $files: [Upload!]
47
- ) {
48
- upsertDraftReleaseGood(
49
- draftReleaseGood: $draftReleaseGood
50
- orderProducts: $orderProducts
51
- files: $files
52
- ) {
53
- id
54
- name
55
- refNo
56
- refNo2
57
- refNo3
58
- status
59
- truckNo
60
- ownTransport
61
- marketplaceOrderStatus
62
- billingAddress
63
- deliveryAddress1
64
- deliveryAddress2
65
- deliveryAddress3
66
- deliveryAddress4
67
- deliveryAddress5
68
- attentionTo
69
- attentionCompany
70
- city
71
- state
72
- postalCode
73
- country
74
- phone1
75
- phone2
76
- email
77
- type
78
- exportOption
79
- releaseDate
80
- collectionOrderNo
81
- bizplace {
82
- name
83
- }
84
- orderProducts {
85
- product {
86
- sku
87
- name
88
- description
89
- }
90
- packingType
91
- packingSize
92
- releaseQty
93
- }
94
- }
95
- }
96
- `,
97
- variables: {
98
- draftReleaseGood: {
99
- bizplace: {
100
- id: customerBizplace.id
101
- },
102
- courierOption: bodyReq.courierOption,
103
- collectionOrderNo: bodyReq.collectionOrderNo,
104
- exportOption: bodyReq.exportOption,
105
- ownTransport: bodyReq.ownTransport,
106
- packingOption: bodyReq.packingOption,
107
- refNo: bodyReq.refNo,
108
- refNo2: bodyReq?.refNo2,
109
- refNo3: bodyReq?.refNo3,
110
- releaseDate: bodyReq.releaseDate,
111
- type: bodyReq.type,
112
- marketplaceOrderStatus: bodyReq?.marketplaceOrderStatus,
113
- remark: bodyReq?.remark || null,
114
- billingAddress: bodyReq?.billTo?.billingAddress || null,
115
- deliveryAddress1: bodyReq?.deliverTo?.deliveryAddress1 || null,
116
- deliveryAddress2: bodyReq?.deliverTo?.deliveryAddress2 || null,
117
- deliveryAddress3: bodyReq?.deliverTo?.deliveryAddress3 || null,
118
- deliveryAddress4: bodyReq?.deliverTo?.deliveryAddress4 || null,
119
- deliveryAddress5: bodyReq?.deliverTo?.deliveryAddress5 || null,
120
- attentionTo: bodyReq?.deliverTo?.attentionTo || null,
121
- attentionCompany: bodyReq?.deliverTo?.attentionCompany || null,
122
- city: bodyReq?.deliverTo?.city || null,
123
- state: bodyReq?.deliverTo?.state || null,
124
- postalCode: bodyReq?.deliverTo?.postalCode || null,
125
- country: bodyReq?.deliverTo?.country || null,
126
- phone1: bodyReq?.deliverTo?.phone1 || null,
127
- phone2: bodyReq?.deliverTo?.phone2 || null,
128
- email: bodyReq?.deliverTo?.email || null
129
- },
130
- orderProducts: orderInventories,
131
- files: []
132
- },
133
- context: {
134
- ...context,
135
- hasUpload: true,
136
- state: {
137
- ...context.state,
138
- customerBizplace,
139
- domain,
140
- type: 'api'
141
- }
142
- }
143
- } as any)
144
- ).data
145
- }
146
- })
147
- }
148
- )
149
-
150
- export async function checkMandatoryKey(context, params) {
151
- let noparams = ['releaseDate', 'exportOption'].filter(param => !(param in params))
152
-
153
- if ('ownTransport' in params) {
154
- if (params.ownTransport == true) {
155
- if (!params.hasOwnProperty('collectionOrderNo')) {
156
- noparams.push('collectionOrderNo')
157
- }
158
- }
159
- } else {
160
- noparams.push('ownTransport')
161
- }
162
-
163
- if ('exportOption' in params) {
164
- if (params.exportOption === true) {
165
- if (
166
- params.exportOption.filter(
167
- record =>
168
- !record.containerNo || !record.containerArrivalDate || !record.containerLeavingDate || !record.shipName
169
- ).length
170
- ) {
171
- noparams.push('exportOption')
172
- }
173
- }
174
- }
175
-
176
- if ('orderInventories' in params) {
177
- params.orderInventories.forEach((param, key) => {
178
- let noSubParams = []
179
-
180
- if (!param?.releaseQty) noSubParams.push('releaseQty')
181
-
182
- if (!param?.product) noSubParams.push('product')
183
-
184
- if (noSubParams?.length)
185
- context.throw(400, context.t('error.required param x not found', { x: `${noSubParams.join(', ')}` }))
186
- })
187
- } else {
188
- noparams.push('orderInventories')
189
- }
190
-
191
- if (noparams?.length) {
192
- context.throw(400, context.t('error.required param x not found', { x: `${noparams.join(', ')}` }))
193
- }
194
-
195
- return params
196
- }