@things-factory/operato-hub 6.1.83 → 6.1.85

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 (189) hide show
  1. package/dist-server/tsconfig.tsbuildinfo +1 -1
  2. package/package.json +46 -46
  3. package/server/controllers/bizplace-initializer/codes.ts +0 -32
  4. package/server/controllers/bizplace-initializer/dataset/codes.ts +0 -398
  5. package/server/controllers/bizplace-initializer/dataset/groups.ts +0 -21
  6. package/server/controllers/bizplace-initializer/dataset/index.ts +0 -5
  7. package/server/controllers/bizplace-initializer/dataset/menus.ts +0 -500
  8. package/server/controllers/bizplace-initializer/dataset/roles-privileges.ts +0 -402
  9. package/server/controllers/bizplace-initializer/dataset/settings.ts +0 -91
  10. package/server/controllers/bizplace-initializer/generate-bizplace-domain-roles.ts +0 -29
  11. package/server/controllers/bizplace-initializer/generate-bizplace-domain.ts +0 -56
  12. package/server/controllers/bizplace-initializer/groups.ts +0 -19
  13. package/server/controllers/bizplace-initializer/index.ts +0 -5
  14. package/server/controllers/bizplace-initializer/menus.ts +0 -42
  15. package/server/controllers/bizplace-initializer/settings.ts +0 -20
  16. package/server/controllers/company-initializer/business-register.ts +0 -59
  17. package/server/controllers/company-initializer/codes.ts +0 -147
  18. package/server/controllers/company-initializer/generate-company-roles.ts +0 -119
  19. package/server/controllers/company-initializer/index.ts +0 -6
  20. package/server/controllers/company-initializer/menus.ts +0 -359
  21. package/server/controllers/company-initializer/settings.ts +0 -33
  22. package/server/controllers/company-initializer/transporter.ts +0 -20
  23. package/server/controllers/index.ts +0 -0
  24. package/server/controllers/invitation.ts +0 -132
  25. package/server/controllers/utils/make-invitation-token.ts +0 -5
  26. package/server/controllers/utils/save-invitation-token.ts +0 -9
  27. package/server/entities/index.ts +0 -0
  28. package/server/errors/index.ts +0 -1
  29. package/server/errors/validation-error.ts +0 -17
  30. package/server/graphql/index.ts +0 -7
  31. package/server/graphql/resolvers/generators/generate-bizplace.ts +0 -40
  32. package/server/graphql/resolvers/generators/generate-company.ts +0 -76
  33. package/server/graphql/resolvers/generators/index.ts +0 -9
  34. package/server/graphql/resolvers/generators/update-domain-extType.ts +0 -55
  35. package/server/graphql/resolvers/index.ts +0 -8
  36. package/server/graphql/resolvers/invitations/index.ts +0 -5
  37. package/server/graphql/resolvers/invitations/partner-invitation.ts +0 -62
  38. package/server/graphql/resolvers/oauth2/company-roles-by-scope.ts +0 -38
  39. package/server/graphql/resolvers/oauth2/index.ts +0 -5
  40. package/server/graphql/resolvers/synchronization/auto-update-all-marketplace-product-variation-quantity.ts +0 -180
  41. package/server/graphql/resolvers/synchronization/create-dat-shipments.ts +0 -64
  42. package/server/graphql/resolvers/synchronization/fetch-sync-invoices.ts +0 -52
  43. package/server/graphql/resolvers/synchronization/fetch-sync-products.ts +0 -99
  44. package/server/graphql/resolvers/synchronization/fetch-sync-purchase-orders.ts +0 -75
  45. package/server/graphql/resolvers/synchronization/index.ts +0 -26
  46. package/server/graphql/resolvers/synchronization/sellercraft-pack-marketplace-order.ts +0 -91
  47. package/server/graphql/resolvers/synchronization/sync-all-products-to-sellercraft.ts +0 -39
  48. package/server/graphql/resolvers/synchronization/sync-products-from-account.ts +0 -40
  49. package/server/graphql/resolvers/synchronization/sync-products-to-account.ts +0 -64
  50. package/server/graphql/resolvers/synchronization/sync-products-to-sellercraft.ts +0 -176
  51. package/server/graphql/types/generators/generate-bizplace-input.ts +0 -11
  52. package/server/graphql/types/generators/generate-company-input.ts +0 -11
  53. package/server/graphql/types/generators/index.ts +0 -11
  54. package/server/graphql/types/generators/update-domain-type-input.ts +0 -8
  55. package/server/graphql/types/index.ts +0 -10
  56. package/server/graphql/types/invitations/index.ts +0 -5
  57. package/server/graphql/types/oauth2/company-role.ts +0 -8
  58. package/server/graphql/types/oauth2/index.ts +0 -7
  59. package/server/graphql/types/synchronization/index.ts +0 -33
  60. package/server/graphql/types/synchronization/sync-invoice-list.ts +0 -8
  61. package/server/graphql/types/synchronization/sync-invoice-set.ts +0 -38
  62. package/server/graphql/types/synchronization/sync-product-list.ts +0 -8
  63. package/server/graphql/types/synchronization/sync-product-set.ts +0 -8
  64. package/server/graphql/types/synchronization/sync-purchase-order-list.ts +0 -8
  65. package/server/graphql/types/synchronization/sync-purchase-order-set.ts +0 -28
  66. package/server/index.ts +0 -37
  67. package/server/middlewares/business-middleware.ts +0 -32
  68. package/server/middlewares/index.ts +0 -20
  69. package/server/middlewares/store-middleware.ts +0 -36
  70. package/server/middlewares/warehouse-middleware.ts +0 -36
  71. package/server/migrations/1597668478399-SeedBusinessDomain.ts +0 -34
  72. package/server/migrations/1597668478401-SeedBusinessRoles.ts +0 -377
  73. package/server/migrations/1608009991065-SeedUser.ts +0 -64
  74. package/server/migrations/index.ts +0 -9
  75. package/server/routers/api/index.ts +0 -3
  76. package/server/routers/api/restful-apis/unstable/add-contact-point.ts +0 -89
  77. package/server/routers/api/restful-apis/unstable/add-draft-release-order.ts +0 -198
  78. package/server/routers/api/restful-apis/unstable/add-inbound-order.ts +0 -246
  79. package/server/routers/api/restful-apis/unstable/add-marketplace-order.ts +0 -171
  80. package/server/routers/api/restful-apis/unstable/add-products.ts +0 -112
  81. package/server/routers/api/restful-apis/unstable/add-release-order.ts +0 -1061
  82. package/server/routers/api/restful-apis/unstable/add-sales-invoice.ts +0 -144
  83. package/server/routers/api/restful-apis/unstable/bizplace.ts +0 -45
  84. package/server/routers/api/restful-apis/unstable/cancel-marketplace-order.ts +0 -81
  85. package/server/routers/api/restful-apis/unstable/cancel-release-order.ts +0 -91
  86. package/server/routers/api/restful-apis/unstable/get-contact-point-list.ts +0 -110
  87. package/server/routers/api/restful-apis/unstable/get-delivery-order-detail.ts +0 -46
  88. package/server/routers/api/restful-apis/unstable/get-delivery-order-list.ts +0 -121
  89. package/server/routers/api/restful-apis/unstable/get-delivery-orders.ts +0 -178
  90. package/server/routers/api/restful-apis/unstable/get-goods-received-notes.ts +0 -134
  91. package/server/routers/api/restful-apis/unstable/get-inbound-order-detail.ts +0 -128
  92. package/server/routers/api/restful-apis/unstable/get-inbound-order-list.ts +0 -126
  93. package/server/routers/api/restful-apis/unstable/get-inventory-overall-product-group.ts +0 -99
  94. package/server/routers/api/restful-apis/unstable/get-inventory-product-group.ts +0 -107
  95. package/server/routers/api/restful-apis/unstable/get-marketplace-order-shipping-list.ts +0 -156
  96. package/server/routers/api/restful-apis/unstable/get-marketplace-store-list.ts +0 -81
  97. package/server/routers/api/restful-apis/unstable/get-onhand-inventories.ts +0 -125
  98. package/server/routers/api/restful-apis/unstable/get-partners.ts +0 -26
  99. package/server/routers/api/restful-apis/unstable/get-products.ts +0 -216
  100. package/server/routers/api/restful-apis/unstable/get-release-order-detail.ts +0 -138
  101. package/server/routers/api/restful-apis/unstable/get-release-order-list.ts +0 -199
  102. package/server/routers/api/restful-apis/unstable/get-warehouses.ts +0 -19
  103. package/server/routers/api/restful-apis/unstable/index.ts +0 -32
  104. package/server/routers/api/restful-apis/unstable/reject-inbound-order.ts +0 -46
  105. package/server/routers/api/restful-apis/unstable/set-marketplace-order-delivered.ts +0 -60
  106. package/server/routers/api/restful-apis/unstable/set-marketplace-order-failed-delivery.ts +0 -60
  107. package/server/routers/api/restful-apis/unstable/update-marketplace-order.ts +0 -111
  108. package/server/routers/api/restful-apis/unstable/update-marketplace-shipping-order.ts +0 -107
  109. package/server/routers/api/restful-apis/unstable/update-release-order-details.ts +0 -94
  110. package/server/routers/api/restful-apis/v1/add-contact-point.ts +0 -77
  111. package/server/routers/api/restful-apis/v1/add-draft-release-order.ts +0 -196
  112. package/server/routers/api/restful-apis/v1/add-inbound-order.ts +0 -243
  113. package/server/routers/api/restful-apis/v1/add-marketplace-order.ts +0 -172
  114. package/server/routers/api/restful-apis/v1/add-products.ts +0 -112
  115. package/server/routers/api/restful-apis/v1/add-release-order.ts +0 -967
  116. package/server/routers/api/restful-apis/v1/bizplace.ts +0 -45
  117. package/server/routers/api/restful-apis/v1/cancel-marketplace-order.ts +0 -81
  118. package/server/routers/api/restful-apis/v1/cancel-release-order.ts +0 -91
  119. package/server/routers/api/restful-apis/v1/get-contact-point-list.ts +0 -110
  120. package/server/routers/api/restful-apis/v1/get-delivery-order-detail.ts +0 -46
  121. package/server/routers/api/restful-apis/v1/get-delivery-order-list.ts +0 -121
  122. package/server/routers/api/restful-apis/v1/get-delivery-orders.ts +0 -178
  123. package/server/routers/api/restful-apis/v1/get-goods-received-notes.ts +0 -134
  124. package/server/routers/api/restful-apis/v1/get-inbound-order-detail.ts +0 -128
  125. package/server/routers/api/restful-apis/v1/get-inbound-order-list.ts +0 -126
  126. package/server/routers/api/restful-apis/v1/get-inventory-overall-product-group.ts +0 -99
  127. package/server/routers/api/restful-apis/v1/get-inventory-product-group.ts +0 -112
  128. package/server/routers/api/restful-apis/v1/get-marketplace-order-shipping-list.ts +0 -156
  129. package/server/routers/api/restful-apis/v1/get-marketplace-store-list.ts +0 -81
  130. package/server/routers/api/restful-apis/v1/get-onhand-inventories.ts +0 -125
  131. package/server/routers/api/restful-apis/v1/get-partners.ts +0 -26
  132. package/server/routers/api/restful-apis/v1/get-products.ts +0 -216
  133. package/server/routers/api/restful-apis/v1/get-release-order-detail.ts +0 -134
  134. package/server/routers/api/restful-apis/v1/get-release-order-list.ts +0 -198
  135. package/server/routers/api/restful-apis/v1/get-warehouses.ts +0 -19
  136. package/server/routers/api/restful-apis/v1/index.ts +0 -31
  137. package/server/routers/api/restful-apis/v1/reject-inbound-order.ts +0 -46
  138. package/server/routers/api/restful-apis/v1/set-marketplace-order-delivered.ts +0 -60
  139. package/server/routers/api/restful-apis/v1/set-marketplace-order-failed-delivery.ts +0 -60
  140. package/server/routers/api/restful-apis/v1/update-marketplace-order.ts +0 -111
  141. package/server/routers/api/restful-apis/v1/update-marketplace-shipping-order.ts +0 -104
  142. package/server/routers/api/restful-apis/v1/update-release-order-details.ts +0 -94
  143. package/server/routers/api/restful-apis/v2/add-contact-point.ts +0 -77
  144. package/server/routers/api/restful-apis/v2/add-draft-release-order.ts +0 -196
  145. package/server/routers/api/restful-apis/v2/add-inbound-order.ts +0 -243
  146. package/server/routers/api/restful-apis/v2/add-marketplace-order.ts +0 -172
  147. package/server/routers/api/restful-apis/v2/add-products.ts +0 -112
  148. package/server/routers/api/restful-apis/v2/add-release-order.ts +0 -967
  149. package/server/routers/api/restful-apis/v2/bizplace.ts +0 -45
  150. package/server/routers/api/restful-apis/v2/cancel-marketplace-order.ts +0 -81
  151. package/server/routers/api/restful-apis/v2/cancel-release-order.ts +0 -91
  152. package/server/routers/api/restful-apis/v2/get-contact-point-list.ts +0 -110
  153. package/server/routers/api/restful-apis/v2/get-delivery-order-detail.ts +0 -46
  154. package/server/routers/api/restful-apis/v2/get-delivery-order-list.ts +0 -121
  155. package/server/routers/api/restful-apis/v2/get-delivery-orders.ts +0 -178
  156. package/server/routers/api/restful-apis/v2/get-goods-received-notes.ts +0 -134
  157. package/server/routers/api/restful-apis/v2/get-inbound-order-detail.ts +0 -128
  158. package/server/routers/api/restful-apis/v2/get-inbound-order-list.ts +0 -126
  159. package/server/routers/api/restful-apis/v2/get-inventory-overall-product-group.ts +0 -99
  160. package/server/routers/api/restful-apis/v2/get-inventory-product-group.ts +0 -112
  161. package/server/routers/api/restful-apis/v2/get-marketplace-order-shipping-list.ts +0 -156
  162. package/server/routers/api/restful-apis/v2/get-marketplace-store-list.ts +0 -81
  163. package/server/routers/api/restful-apis/v2/get-onhand-inventories.ts +0 -125
  164. package/server/routers/api/restful-apis/v2/get-partners.ts +0 -26
  165. package/server/routers/api/restful-apis/v2/get-products.ts +0 -216
  166. package/server/routers/api/restful-apis/v2/get-release-order-detail.ts +0 -134
  167. package/server/routers/api/restful-apis/v2/get-release-order-list.ts +0 -198
  168. package/server/routers/api/restful-apis/v2/get-warehouses.ts +0 -19
  169. package/server/routers/api/restful-apis/v2/index.ts +0 -31
  170. package/server/routers/api/restful-apis/v2/reject-inbound-order.ts +0 -46
  171. package/server/routers/api/restful-apis/v2/set-marketplace-order-delivered.ts +0 -60
  172. package/server/routers/api/restful-apis/v2/set-marketplace-order-failed-delivery.ts +0 -60
  173. package/server/routers/api/restful-apis/v2/update-marketplace-order.ts +0 -111
  174. package/server/routers/api/restful-apis/v2/update-marketplace-shipping-order.ts +0 -104
  175. package/server/routers/api/restful-apis/v2/update-release-order-details.ts +0 -94
  176. package/server/routers/auth-invitation-router.ts +0 -25
  177. package/server/routers/business/bizplace-register-router.ts +0 -31
  178. package/server/routers/business/business-register-router.ts +0 -32
  179. package/server/routers/business/index.ts +0 -3
  180. package/server/routers/business/path-base-business-router.ts +0 -15
  181. package/server/routes.ts +0 -28
  182. package/server/templates/account-unlock-email.ts +0 -64
  183. package/server/templates/invitation-email.ts +0 -65
  184. package/server/templates/reset-password-email.ts +0 -64
  185. package/server/templates/verification-email.ts +0 -65
  186. package/server/utils/build-map.ts +0 -18
  187. package/server/utils/get-warehouses.ts +0 -115
  188. package/server/utils/index.ts +0 -3
  189. package/server/utils/order-no-generator.ts +0 -8
@@ -1,45 +0,0 @@
1
- import gql from 'graphql-tag'
2
- import { restfulApiRouter as router } from '@things-factory/api'
3
-
4
- const debug = require('debug')('things-factory:operato-hub:restful-api:v1:bizplace')
5
-
6
- router.get('/v1/bizplace/:id', async (context, next) => {
7
- const { client } = context.state
8
- const { id } = context.params
9
-
10
- debug('params', context.params)
11
-
12
- context.body = {
13
- result: (
14
- await client.query({
15
- query: gql`
16
- query bizplace($id: String!) {
17
- bizplace(id: $id) {
18
- id
19
- name
20
- description
21
- address
22
- postalCode
23
- latlng
24
- status
25
- creator {
26
- name
27
- email
28
- }
29
- updater {
30
- name
31
- email
32
- }
33
- createdAt
34
- updatedAt
35
- }
36
- }
37
- `,
38
- variables: {
39
- id
40
- },
41
- context
42
- } as any)
43
- ).data
44
- }
45
- })
@@ -1,81 +0,0 @@
1
- /** Customer list to inform when there are changes */
2
- /** 1. Bridzia */
3
- /** 2. Sweetmag */
4
-
5
- import gql from 'graphql-tag'
6
-
7
- import { restfulApiRouter as router } from '@things-factory/api'
8
-
9
- import { businessMiddleware } from '../../../../middlewares/business-middleware'
10
- import { storeMiddleware } from '../../../../middlewares/store-middleware'
11
-
12
- const debug = require('debug')('things-factory:operato-hub:restful-api:v1:cancel-marketplace-order')
13
-
14
- router.post(
15
- '/v1/warehouse/:storeId/cancel-marketplace-order',
16
- businessMiddleware,
17
- storeMiddleware,
18
- async (context, next) => {
19
- const { client, marketplaceStore, domain } = context.state
20
- const { t } = context
21
- const bodyReq = context.request.body
22
-
23
- if (typeof bodyReq === undefined || !Object.keys(bodyReq)?.length) {
24
- context.throw(400, t('error.invalid body request format'))
25
- }
26
-
27
- await checkMandatoryKey(context, bodyReq)
28
- debug('post:/cancel-marketplace-order body request', bodyReq)
29
-
30
- const patch: any = Object.assign({}, bodyReq)
31
- delete patch.orderNo
32
-
33
- context.body = {
34
- result: (
35
- await client.mutate({
36
- mutation: gql`
37
- mutation cancelMarketplaceOrder($orderNo: String!, $patch: MarketplaceOrderPatch!) {
38
- cancelMarketplaceOrder(orderNo: $orderNo, patch: $patch) {
39
- id
40
- orderNo
41
- remark
42
- status
43
- marketplaceStore {
44
- id
45
- name
46
- storeId
47
- }
48
- }
49
- }
50
- `,
51
- variables: { orderNo: bodyReq.orderNo, patch },
52
- context: {
53
- ...context,
54
- state: {
55
- ...context.state,
56
- marketplaceStore,
57
- domain,
58
- type: 'api'
59
- }
60
- }
61
- } as any)
62
- ).data
63
- }
64
- }
65
- )
66
-
67
- export function checkMandatoryKey(context, params) {
68
- let noparams = []
69
-
70
- if (!params?.orderNo) {
71
- noparams.push('orderNo')
72
- }
73
-
74
- if (!params?.remark) {
75
- noparams.push('remark')
76
- }
77
-
78
- if (noparams.length > 0) {
79
- context.throw(400, context.t('error.required param x not found', { x: `${noparams.join(', ')}` }))
80
- }
81
- }
@@ -1,91 +0,0 @@
1
- import gql from 'graphql-tag'
2
-
3
- import { restfulApiRouter as router } from '@things-factory/api'
4
- import { Bizplace } from '@things-factory/biz-base'
5
- import { DraftReleaseGood, ReleaseGood } from '@things-factory/sales-base'
6
- import { getRepository } from '@things-factory/shell'
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:v1:cancel-release-order')
12
-
13
- router.post(
14
- '/v1/warehouse/:warehouseId/cancel-release-order',
15
- businessMiddleware,
16
- warehouseMiddleware,
17
- async (context, next) => {
18
- const { client, domain } = context.state
19
- const { warehouseId } = context.params
20
- const { t } = context
21
- const bodyReq = context.request.body
22
-
23
- if (typeof bodyReq === undefined || !Object.keys(bodyReq)?.length) {
24
- context.throw(400, t('error.invalid body request format'))
25
- }
26
-
27
- const customerBizplace: Bizplace = await getRepository(Bizplace).findOne({
28
- where: { id: warehouseId }
29
- })
30
-
31
- const releaseOrder: ReleaseGood = await getRepository(ReleaseGood).findOne({
32
- where: [{ id: bodyReq.releaseOrderId }, { refNo: bodyReq.orderNo }]
33
- })
34
-
35
- if (!releaseOrder) {
36
- const draftReleaseOrder: DraftReleaseGood = await getRepository(DraftReleaseGood).findOne({
37
- where: [{ refNo: bodyReq.orderNo }]
38
- })
39
- if (draftReleaseOrder) {
40
- context.body = {
41
- result: (
42
- await client.mutate({
43
- mutation: gql`
44
- mutation cancelDraftReleaseOrder($name: String!) {
45
- cancelDraftReleaseOrder(name: $name)
46
- }
47
- `,
48
- variables: { name: draftReleaseOrder.name },
49
- context: {
50
- ...context,
51
- state: {
52
- ...context.state,
53
- customerBizplace,
54
- domain,
55
- type: 'api'
56
- }
57
- }
58
- } as any)
59
- ).data
60
- }
61
- return
62
- } else {
63
- context.throw(400, t('error.release order not exist'))
64
- }
65
- }
66
-
67
- debug('post:/cancel-release-order body request', bodyReq)
68
-
69
- context.body = {
70
- result: (
71
- await client.mutate({
72
- mutation: gql`
73
- mutation pendingCancellationReleaseOrder($name: String!) {
74
- pendingCancellationReleaseOrder(name: $name)
75
- }
76
- `,
77
- variables: { name: releaseOrder.name },
78
- context: {
79
- ...context,
80
- state: {
81
- ...context.state,
82
- customerBizplace,
83
- domain,
84
- type: 'api'
85
- }
86
- }
87
- } as any)
88
- ).data
89
- }
90
- }
91
- )
@@ -1,110 +0,0 @@
1
- import gql from 'graphql-tag'
2
-
3
- import { restfulApiRouter as router } from '@things-factory/api'
4
-
5
- import { businessMiddleware } from '../../../../middlewares/business-middleware'
6
- import { warehouseMiddleware } from '../../../../middlewares/warehouse-middleware'
7
-
8
- router.get(
9
- '/v1/warehouse/:warehouseId/get-contact-point-list',
10
- businessMiddleware,
11
- warehouseMiddleware,
12
- async (context, next) => {
13
- const { client, warehouse: bizplace, domain } = context.state
14
- const { warehouseId } = context.params
15
- const { t } = context
16
- const { companyName, name, email, paginationEntriesPerPage, paginationOffset } = context.query
17
-
18
- if (!warehouseId) context.throw(404, t('error.warehouse id not found'))
19
-
20
- let filters: any = []
21
- let pagination: any = { page: 1, limit: 20 }
22
-
23
- filters = await validateFilters(filters, companyName, name, email)
24
- pagination = await validatePagination(context, pagination, paginationEntriesPerPage, paginationOffset)
25
-
26
- context.body = {
27
- result: (
28
- await client.query({
29
- query: gql`
30
- query contactPoints($filters: [Filter!], $pagination: Pagination, $sortings: [Sorting!]) {
31
- contactPoints(filters: $filters, pagination: $pagination, sortings: $sortings) {
32
- items {
33
- name
34
- companyName
35
- email
36
- fax
37
- phone
38
- address
39
- billingAddress
40
- accountNo
41
- address
42
- address2
43
- postalCode
44
- city
45
- type
46
- description
47
- type
48
- state
49
- updatedAt
50
- updater {
51
- name
52
- description
53
- }
54
- }
55
- total
56
- }
57
- }
58
- `,
59
- variables: {
60
- filters,
61
- pagination,
62
- sortings: [{ name: 'name' }]
63
- },
64
- context: {
65
- ...context,
66
- state: {
67
- ...context.state,
68
- bizplace,
69
- domain
70
- }
71
- }
72
- } as any)
73
- ).data
74
- }
75
- }
76
- )
77
-
78
- export async function validateFilters(filters, companyName, name, email) {
79
- if (companyName && companyName !== '')
80
- filters = [...filters, { name: 'companyName', operator: 'i_like', value: companyName }]
81
-
82
- if (name && name !== '') filters = [...filters, { name: 'name', operator: 'i_like', value: name }]
83
-
84
- if (email && email !== '') filters = [...filters, { name: 'email', operator: 'eq', value: email }]
85
-
86
- return filters
87
- }
88
-
89
- export async function validatePagination(context, pagination, entries, offset) {
90
- if (!entries) entries = ''
91
- if (!offset) offset = ''
92
-
93
- if (entries !== '' && offset !== '' && !isNaN(parseInt(entries)) && !isNaN(parseInt(offset))) {
94
- entries = parseInt(entries)
95
- offset = parseInt(offset)
96
-
97
- if (offset < 1) context.throw(400, context.t('paginationOffset cannot be less than 1'))
98
- else if (entries < 1) context.throw(400, context.t('paginationEntriesPerPage cannot be less than 1'))
99
- else if (entries > 100) context.throw(400, context.t('paginationEntriesPerPage cannot be more than 100'))
100
- else pagination = { ...pagination, page: offset, limit: entries }
101
- } else if (entries !== '' && offset === '' && !isNaN(parseInt(entries))) {
102
- entries = parseInt(entries)
103
-
104
- if (entries < 1) context.throw(400, context.t('paginationEntriesPerPage cannot be less than 1'))
105
- else if (entries > 100) context.throw(400, context.t('paginationEntriesPerPage cannot be more than 100'))
106
- else pagination = { ...pagination, limit: entries }
107
- }
108
-
109
- return pagination
110
- }
@@ -1,46 +0,0 @@
1
- import { restfulApiRouter as router } from '@things-factory/api'
2
- import gql from 'graphql-tag'
3
- import { businessMiddleware } from '../../../../middlewares/business-middleware'
4
- import { warehouseMiddleware } from '../../../../middlewares/warehouse-middleware'
5
-
6
- const debug = require('debug')('things-factory:operato-hub:restful-api:v1:get-delivery-order-detail')
7
-
8
- router.get('/v1/get-delivery-order-detail/', businessMiddleware, warehouseMiddleware, async (context, next) => {
9
- const { client, warehouse: bizplace, domain } = context.state
10
- const { warehouseId } = context.params
11
- const { t } = context
12
- const { doNo } = context.query
13
-
14
- debug('query-params', context.query)
15
- debug('params', context.params)
16
-
17
- if (!warehouseId) context.throw(404, t('error.warehouse id not found'))
18
- if (!doNo) context.throw(400, t('error.required param x not found', { x: 'doNo' }))
19
-
20
- context.body = {
21
- result: (
22
- await client.query({
23
- query: gql`
24
- query deliveryOrderByWorksheet($doNo: String!) {
25
- deliveryOrderByWorksheet(name: $doNo) {
26
- deliveryOrderInfo {
27
- doStatus
28
- ownCollection
29
- truckNo
30
- }
31
- contactPointInfo {
32
- contactName
33
- address
34
- phone
35
- fax
36
- email
37
- }
38
- }
39
- }
40
- `,
41
- variables: { doNo },
42
- context
43
- } as any)
44
- ).data
45
- }
46
- })
@@ -1,121 +0,0 @@
1
- import gql from 'graphql-tag'
2
-
3
- import { restfulApiRouter as router } from '@things-factory/api'
4
-
5
- import { businessMiddleware } from '../../../../middlewares/business-middleware'
6
- import { warehouseMiddleware } from '../../../../middlewares/warehouse-middleware'
7
-
8
- const debug = require('debug')('things-factory:operato-hub:restful-api:v1:get-delivery-order-list')
9
-
10
- router.get(
11
- '/v1/warehouse/:warehouseId/get-delivery-order-list',
12
- businessMiddleware,
13
- warehouseMiddleware,
14
- async (context, next) => {
15
- const { client } = context.state
16
- const { warehouseId } = context.params
17
- const { t } = context
18
- const { fromDate, toDate, paginationEntriesPerPage, paginationOffset } = context.query
19
-
20
- if (!warehouseId) context.throw(404, t('error.warehouse id not found'))
21
-
22
- debug('params', context.params)
23
-
24
- let filters: any = [{ name: 'bizplace', operator: 'in', value: [warehouseId], relation: true }]
25
- let pagination: any = { page: 1, limit: 20 }
26
-
27
- filters = await validateFilters(context, filters, fromDate, toDate)
28
- pagination = await validatePagination(context, pagination, paginationEntriesPerPage, paginationOffset)
29
-
30
- context.body = {
31
- result: (
32
- await client.query({
33
- query: gql`
34
- query deliveryOrders($filters: [Filter!], $pagination: Pagination, $sortings: [Sorting!]) {
35
- deliveryOrders(filters: $filters, pagination: $pagination, sortings: $sortings) {
36
- items {
37
- name
38
- bizplace {
39
- name
40
- }
41
- attachments {
42
- name
43
- refBy
44
- path
45
- }
46
- to
47
- deliveryDate
48
- status
49
- releaseGood {
50
- name
51
- description
52
- refNo
53
- }
54
- ownCollection
55
- createdAt
56
- updatedAt
57
- updater {
58
- name
59
- }
60
- }
61
- total
62
- }
63
- }
64
- `,
65
- variables: {
66
- filters,
67
- pagination,
68
- sortings: [{ name: 'createdAt', desc: true }]
69
- },
70
- context
71
- } as any)
72
- ).data
73
- }
74
- }
75
- )
76
-
77
- export async function validateFilters(context, filters, fromDate, toDate) {
78
- if (fromDate && fromDate !== '') {
79
- fromDate = new Date(`${fromDate.split(' ').join('')} 00:00:00`)
80
- if (fromDate instanceof Date && !isNaN(fromDate.getTime())) fromDate = fromDate.toLocaleString()
81
- else context.throw(400, context.t('fromDate is invalid'))
82
- } else fromDate = ''
83
-
84
- if (toDate && toDate !== '') {
85
- toDate = new Date(`${toDate.split(' ').join('')} 23:59:59`)
86
- if (toDate instanceof Date && !isNaN(toDate.getTime())) toDate = toDate.toLocaleString()
87
- else context.throw(400, context.t('toDate is invalid'))
88
- } else toDate = ''
89
-
90
- if (fromDate !== '' && toDate !== '')
91
- filters = [...filters, { name: 'createdAt', operator: 'between', value: [fromDate, toDate] }]
92
- else if (fromDate !== '' && toDate === '')
93
- filters = [...filters, { name: 'createdAt', operator: 'gte', value: fromDate }]
94
- else if (fromDate === '' && toDate !== '')
95
- filters = [...filters, { name: 'createdAt', operator: 'lte', value: toDate }]
96
-
97
- return filters
98
- }
99
-
100
- export async function validatePagination(context, pagination, entries, offset) {
101
- if (!entries) entries = ''
102
- if (!offset) offset = ''
103
-
104
- if (entries !== '' && offset !== '' && !isNaN(parseInt(entries)) && !isNaN(parseInt(offset))) {
105
- entries = parseInt(entries)
106
- offset = parseInt(offset)
107
-
108
- if (offset < 1) context.throw(400, context.t('paginationOffset cannot be less than 1'))
109
- else if (entries < 1) context.throw(400, context.t('paginationEntriesPerPage cannot be less than 1'))
110
- else if (entries > 100) context.throw(400, context.t('paginationEntriesPerPage cannot be more than 100'))
111
- else pagination = { ...pagination, page: offset, limit: entries }
112
- } else if (entries !== '' && offset === '' && !isNaN(parseInt(entries))) {
113
- entries = parseInt(entries)
114
-
115
- if (entries < 1) context.throw(400, context.t('paginationEntriesPerPage cannot be less than 1'))
116
- else if (entries > 100) context.throw(400, context.t('paginationEntriesPerPage cannot be more than 100'))
117
- else pagination = { ...pagination, limit: entries }
118
- }
119
-
120
- return pagination
121
- }
@@ -1,178 +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
-
6
- import { businessMiddleware } from '../../../../middlewares/business-middleware'
7
- import { warehouseMiddleware } from '../../../../middlewares/warehouse-middleware'
8
-
9
- const debug = require('debug')('things-factory:operato-hub:restful-api:v1:get-delivery-orders')
10
-
11
- router.get(
12
- '/v1/warehouse/:warehouseId/get-delivery-orders',
13
- businessMiddleware,
14
- warehouseMiddleware,
15
- async (context, next) => {
16
- return await getConnection().transaction(async (tx: EntityManager) => {
17
- const { client, warehouse: bizplace, domain } = context.state
18
- const { warehouseId: customerBizplaceId } = context.params
19
- const { t } = context
20
-
21
- const { fromDate, toDate, limit = 10, page = 1 } = context.query
22
-
23
- if (!customerBizplaceId) context.throw(404, t('Error: Warehouse id not found'))
24
- if (!fromDate || !toDate) context.throw(400, t('Error: Date range not provided correctly'))
25
- if (limit > 100 || limit < 0) context.throw(400, t('Error: Limit value exceed 100 maximum threshold'))
26
-
27
- let noOfDays = (new Date(toDate).getTime() - new Date(fromDate).getTime()) / (1000 * 3600 * 24)
28
- if (noOfDays >= 31 || noOfDays <= 0)
29
- context.throw(400, t('Error: Date range value exceed 1 month maximum threshold'))
30
-
31
- let filters: any = [
32
- { name: 'bizplace', operator: 'in', value: [customerBizplaceId], relation: true },
33
- { name: 'createdAt', operator: 'between', value: [fromDate, toDate] },
34
- { name: 'orderProductsApi', operator: 'equal', value: true }
35
- ]
36
-
37
- let pagination: any = { page: parseInt(page), limit: parseInt(limit) }
38
-
39
- let data = {
40
- result: (
41
- await client.query({
42
- query: gql`
43
- query deliveryOrders($filters: [Filter!], $pagination: Pagination, $sortings: [Sorting!]) {
44
- deliveryOrders(filters: $filters, pagination: $pagination, sortings: $sortings) {
45
- items {
46
- name
47
- from
48
- to
49
- contactPointRefId
50
- truckNo
51
- deliveryDate
52
- status
53
- ownCollection
54
- looseItem
55
- deliveryDateTime
56
- loadWeight
57
- cargoType
58
- urgency
59
- telNo
60
- refNo
61
- otherDriver
62
- palletQty
63
- remark
64
- description
65
- reusablePallet
66
- domain {
67
- name
68
- }
69
- bizplace {
70
- name
71
- }
72
- attachments {
73
- name
74
- refBy
75
- path
76
- }
77
- orderInventories {
78
- batchId
79
- batchIdRef
80
- packingType
81
- packingSize
82
- uom
83
- releaseQty
84
- releaseUomValue
85
- product {
86
- sku
87
- name
88
- description
89
- brand
90
- brandSku
91
- gtin
92
- type
93
- }
94
- orderToteItems {
95
- qty
96
- orderTote {
97
- name
98
- orderToteSeals {
99
- name
100
- }
101
- }
102
- }
103
- }
104
- releaseGood {
105
- name
106
- description
107
- refNo
108
- collectionOrderNo
109
- truckNo
110
- exportOption
111
- ownTransport
112
- crossDocking
113
- status
114
- releaseDate
115
- remark
116
- courierOption
117
- packingOption
118
- refNo2
119
- refNo3
120
- type
121
- acceptedAt
122
- marketplaceOrderStatus
123
- billingAddress
124
- deliveryAddress1
125
- deliveryAddress2
126
- deliveryAddress3
127
- deliveryAddress4
128
- deliveryAddress5
129
- attentionTo
130
- attentionCompany
131
- city
132
- state
133
- postalCode
134
- country
135
- phone1
136
- phone2
137
- email
138
- transporter
139
- trackingNo
140
- airwayBill
141
- invoice
142
- pickupAddress
143
- pickupTime
144
- handoverType
145
- dropoffAddress
146
- noOfItems
147
- }
148
- createdAt
149
- updatedAt
150
- updater {
151
- name
152
- }
153
- }
154
- total
155
- }
156
- }
157
- `,
158
- variables: {
159
- filters,
160
- pagination,
161
- sortings: [{ name: 'createdAt', desc: true }]
162
- },
163
- context: {
164
- ...context,
165
- state: {
166
- ...context.state,
167
- bizplace,
168
- domain
169
- }
170
- }
171
- } as any)
172
- ).data
173
- }
174
-
175
- context.body = data?.result?.deliveryOrders?.items?.length == 0 ? 'No data available' : data
176
- })
177
- }
178
- )