@things-factory/product-base 5.0.1 → 5.0.11

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 (92) hide show
  1. package/dist-server/constants/index.js +2 -15
  2. package/dist-server/constants/index.js.map +1 -1
  3. package/dist-server/constants/product.js.map +1 -1
  4. package/dist-server/controllers/index.js.map +1 -1
  5. package/dist-server/index.js +3 -16
  6. package/dist-server/index.js.map +1 -1
  7. package/dist-server/middlewares/index.js.map +1 -1
  8. package/dist-server/migrations/index.js.map +1 -1
  9. package/dist-server/service/index.js +17 -30
  10. package/dist-server/service/index.js.map +1 -1
  11. package/dist-server/service/product/index.js.map +1 -1
  12. package/dist-server/service/product/product-mutation.js +61 -73
  13. package/dist-server/service/product/product-mutation.js.map +1 -1
  14. package/dist-server/service/product/product-query.js +78 -89
  15. package/dist-server/service/product/product-query.js.map +1 -1
  16. package/dist-server/service/product/product-types.js +261 -272
  17. package/dist-server/service/product/product-types.js.map +1 -1
  18. package/dist-server/service/product/product.js +179 -187
  19. package/dist-server/service/product/product.js.map +1 -1
  20. package/dist-server/service/product/validate-product.js +2 -4
  21. package/dist-server/service/product/validate-product.js.map +1 -1
  22. package/dist-server/service/product-bundle/index.js.map +1 -1
  23. package/dist-server/service/product-bundle/product-bundle-mutation.js +33 -44
  24. package/dist-server/service/product-bundle/product-bundle-mutation.js.map +1 -1
  25. package/dist-server/service/product-bundle/product-bundle-query.js +35 -46
  26. package/dist-server/service/product-bundle/product-bundle-query.js.map +1 -1
  27. package/dist-server/service/product-bundle/product-bundle-types.js +30 -38
  28. package/dist-server/service/product-bundle/product-bundle-types.js.map +1 -1
  29. package/dist-server/service/product-bundle/product-bundle.js +40 -48
  30. package/dist-server/service/product-bundle/product-bundle.js.map +1 -1
  31. package/dist-server/service/product-bundle-setting/index.js.map +1 -1
  32. package/dist-server/service/product-bundle-setting/product-bundle-setting-mutation.js +27 -38
  33. package/dist-server/service/product-bundle-setting/product-bundle-setting-mutation.js.map +1 -1
  34. package/dist-server/service/product-bundle-setting/product-bundle-setting-query.js +14 -25
  35. package/dist-server/service/product-bundle-setting/product-bundle-setting-query.js.map +1 -1
  36. package/dist-server/service/product-bundle-setting/product-bundle-setting-types.js +23 -31
  37. package/dist-server/service/product-bundle-setting/product-bundle-setting-types.js.map +1 -1
  38. package/dist-server/service/product-bundle-setting/product-bundle-setting.js +16 -24
  39. package/dist-server/service/product-bundle-setting/product-bundle-setting.js.map +1 -1
  40. package/dist-server/service/product-combination/index.js.map +1 -1
  41. package/dist-server/service/product-combination/product-combination-mutation.js +34 -45
  42. package/dist-server/service/product-combination/product-combination-mutation.js.map +1 -1
  43. package/dist-server/service/product-combination/product-combination-query.js +29 -40
  44. package/dist-server/service/product-combination/product-combination-query.js.map +1 -1
  45. package/dist-server/service/product-combination/product-combination-type.js +28 -36
  46. package/dist-server/service/product-combination/product-combination-type.js.map +1 -1
  47. package/dist-server/service/product-combination/product-combination.js +42 -50
  48. package/dist-server/service/product-combination/product-combination.js.map +1 -1
  49. package/dist-server/service/product-combination-setting/index.js.map +1 -1
  50. package/dist-server/service/product-combination-setting/product-combination-setting-mutation.js +40 -51
  51. package/dist-server/service/product-combination-setting/product-combination-setting-mutation.js.map +1 -1
  52. package/dist-server/service/product-combination-setting/product-combination-setting-query.js +35 -46
  53. package/dist-server/service/product-combination-setting/product-combination-setting-query.js.map +1 -1
  54. package/dist-server/service/product-combination-setting/product-combination-setting-type.js +24 -32
  55. package/dist-server/service/product-combination-setting/product-combination-setting-type.js.map +1 -1
  56. package/dist-server/service/product-combination-setting/product-combination-setting.js +36 -44
  57. package/dist-server/service/product-combination-setting/product-combination-setting.js.map +1 -1
  58. package/dist-server/service/product-detail/index.js.map +1 -1
  59. package/dist-server/service/product-detail/product-detail-mutation.js +30 -51
  60. package/dist-server/service/product-detail/product-detail-mutation.js.map +1 -1
  61. package/dist-server/service/product-detail/product-detail-query.js +33 -44
  62. package/dist-server/service/product-detail/product-detail-query.js.map +1 -1
  63. package/dist-server/service/product-detail/product-detail-types.js +180 -188
  64. package/dist-server/service/product-detail/product-detail-types.js.map +1 -1
  65. package/dist-server/service/product-detail/product-detail.js +127 -135
  66. package/dist-server/service/product-detail/product-detail.js.map +1 -1
  67. package/dist-server/service/product-detail-bizplace-setting/index.js.map +1 -1
  68. package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-mutation.js +28 -39
  69. package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-mutation.js.map +1 -1
  70. package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-query.js +29 -40
  71. package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-query.js.map +1 -1
  72. package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-types.js +36 -44
  73. package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-types.js.map +1 -1
  74. package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting.js +32 -40
  75. package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting.js.map +1 -1
  76. package/dist-server/service/product-set/index.js.map +1 -1
  77. package/dist-server/service/product-set/product-set-mutation.js +33 -44
  78. package/dist-server/service/product-set/product-set-mutation.js.map +1 -1
  79. package/dist-server/service/product-set/product-set-query.js +35 -46
  80. package/dist-server/service/product-set/product-set-query.js.map +1 -1
  81. package/dist-server/service/product-set/product-set-types.js +26 -34
  82. package/dist-server/service/product-set/product-set-types.js.map +1 -1
  83. package/dist-server/service/product-set/product-set.js +34 -42
  84. package/dist-server/service/product-set/product-set.js.map +1 -1
  85. package/dist-server/tsconfig.tsbuildinfo +1 -0
  86. package/dist-server/utils/index.js +2 -15
  87. package/dist-server/utils/index.js.map +1 -1
  88. package/dist-server/utils/product-util.js.map +1 -1
  89. package/package.json +4 -4
  90. package/server/service/product/product-mutation.ts +2 -0
  91. package/server/service/product/product-query.ts +1 -1
  92. package/server/service/product/product.ts +2 -2
@@ -1,29 +1,8 @@
1
1
  "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var __param = (this && this.__param) || function (paramIndex, decorator) {
12
- return function (target, key) { decorator(target, key, paramIndex); }
13
- };
14
- var __asyncValues = (this && this.__asyncValues) || function (o) {
15
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
16
- var m = o[Symbol.asyncIterator], i;
17
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
18
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
19
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
20
- };
21
- var __importDefault = (this && this.__importDefault) || function (mod) {
22
- return (mod && mod.__esModule) ? mod : { "default": mod };
23
- };
24
2
  Object.defineProperty(exports, "__esModule", { value: true });
25
3
  exports.updateMultipleProductDetail = exports.updateProductDetail = exports.createProductDetail = exports.ProductDetailMutation = void 0;
26
- const lodash_1 = __importDefault(require("lodash"));
4
+ const tslib_1 = require("tslib");
5
+ const lodash_1 = tslib_1.__importDefault(require("lodash"));
27
6
  const type_graphql_1 = require("type-graphql");
28
7
  const typeorm_1 = require("typeorm");
29
8
  const product_1 = require("../product/product");
@@ -55,45 +34,45 @@ let ProductDetailMutation = class ProductDetailMutation {
55
34
  return true;
56
35
  }
57
36
  };
58
- __decorate([
37
+ tslib_1.__decorate([
59
38
  (0, type_graphql_1.Directive)('@transaction'),
60
39
  (0, type_graphql_1.Mutation)(returns => product_detail_1.ProductDetail),
61
- __param(0, (0, type_graphql_1.Arg)('id')),
62
- __param(1, (0, type_graphql_1.Arg)('patch')),
63
- __param(2, (0, type_graphql_1.Ctx)()),
64
- __metadata("design:type", Function),
65
- __metadata("design:paramtypes", [String, product_detail_types_1.ProductDetailPatch, Object]),
66
- __metadata("design:returntype", Promise)
40
+ tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
41
+ tslib_1.__param(1, (0, type_graphql_1.Arg)('patch')),
42
+ tslib_1.__param(2, (0, type_graphql_1.Ctx)()),
43
+ tslib_1.__metadata("design:type", Function),
44
+ tslib_1.__metadata("design:paramtypes", [String, product_detail_types_1.ProductDetailPatch, Object]),
45
+ tslib_1.__metadata("design:returntype", Promise)
67
46
  ], ProductDetailMutation.prototype, "updateProductDetail", null);
68
- __decorate([
47
+ tslib_1.__decorate([
69
48
  (0, type_graphql_1.Directive)('@transaction'),
70
49
  (0, type_graphql_1.Mutation)(returns => [product_detail_1.ProductDetail]),
71
- __param(0, (0, type_graphql_1.Arg)('productId')),
72
- __param(1, (0, type_graphql_1.Arg)('patches', type => [product_detail_types_1.ProductDetailPatch])),
73
- __param(2, (0, type_graphql_1.Ctx)()),
74
- __metadata("design:type", Function),
75
- __metadata("design:paramtypes", [String, Array, Object]),
76
- __metadata("design:returntype", Promise)
50
+ tslib_1.__param(0, (0, type_graphql_1.Arg)('productId')),
51
+ tslib_1.__param(1, (0, type_graphql_1.Arg)('patches', type => [product_detail_types_1.ProductDetailPatch])),
52
+ tslib_1.__param(2, (0, type_graphql_1.Ctx)()),
53
+ tslib_1.__metadata("design:type", Function),
54
+ tslib_1.__metadata("design:paramtypes", [String, Array, Object]),
55
+ tslib_1.__metadata("design:returntype", Promise)
77
56
  ], ProductDetailMutation.prototype, "updateMultipleProductDetail", null);
78
- __decorate([
57
+ tslib_1.__decorate([
79
58
  (0, type_graphql_1.Directive)('@transaction'),
80
59
  (0, type_graphql_1.Mutation)(returns => Boolean),
81
- __param(0, (0, type_graphql_1.Arg)('name')),
82
- __param(1, (0, type_graphql_1.Ctx)()),
83
- __metadata("design:type", Function),
84
- __metadata("design:paramtypes", [String, Object]),
85
- __metadata("design:returntype", Promise)
60
+ tslib_1.__param(0, (0, type_graphql_1.Arg)('name')),
61
+ tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
62
+ tslib_1.__metadata("design:type", Function),
63
+ tslib_1.__metadata("design:paramtypes", [String, Object]),
64
+ tslib_1.__metadata("design:returntype", Promise)
86
65
  ], ProductDetailMutation.prototype, "deleteProductDetail", null);
87
- __decorate([
66
+ tslib_1.__decorate([
88
67
  (0, type_graphql_1.Directive)('@transaction'),
89
68
  (0, type_graphql_1.Mutation)(returns => Boolean),
90
- __param(0, (0, type_graphql_1.Arg)('names', type => [String])),
91
- __param(1, (0, type_graphql_1.Ctx)()),
92
- __metadata("design:type", Function),
93
- __metadata("design:paramtypes", [Array, Object]),
94
- __metadata("design:returntype", Promise)
69
+ tslib_1.__param(0, (0, type_graphql_1.Arg)('names', type => [String])),
70
+ tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
71
+ tslib_1.__metadata("design:type", Function),
72
+ tslib_1.__metadata("design:paramtypes", [Array, Object]),
73
+ tslib_1.__metadata("design:returntype", Promise)
95
74
  ], ProductDetailMutation.prototype, "deleteProductDetails", null);
96
- ProductDetailMutation = __decorate([
75
+ ProductDetailMutation = tslib_1.__decorate([
97
76
  (0, type_graphql_1.Resolver)(product_detail_1.ProductDetail)
98
77
  ], ProductDetailMutation);
99
78
  exports.ProductDetailMutation = ProductDetailMutation;
@@ -152,7 +131,7 @@ async function updateMultipleProductDetail(productId, patches, context) {
152
131
  }
153
132
  await productDetailRepo.delete({ id: (0, typeorm_1.In)(deleteIds) });
154
133
  try {
155
- for (var _b = __asyncValues(patches.filter(x => x.childProductDetail)), _c; _c = await _b.next(), !_c.done;) {
134
+ for (var _b = tslib_1.__asyncValues(patches.filter(x => x.childProductDetail)), _c; _c = await _b.next(), !_c.done;) {
156
135
  let patch = _c.value;
157
136
  let matchedChildProductDetail = results.find(itm => itm.gtin == patch.childProductDetail);
158
137
  if (matchedChildProductDetail) {
@@ -1 +1 @@
1
- {"version":3,"file":"product-detail-mutation.js","sourceRoot":"","sources":["../../../server/service/product-detail/product-detail-mutation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"product-detail-mutation.js","sourceRoot":"","sources":["../../../server/service/product-detail/product-detail-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import _ from 'lodash'\nimport { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { getRepository, In, Raw } from 'typeorm'\n\nimport { Product } from '../product/product'\nimport { ProductDetail } from './product-detail'\nimport { ProductDetailPatch } from './product-detail-types'\n\n@Resolver(ProductDetail)\nexport class ProductDetailMutation {\n @Directive('@transaction')\n @Mutation(returns => ProductDetail)\n async updateProductDetail(\n @Arg('id') id: string,\n @Arg('patch') patch: ProductDetailPatch,\n @Ctx() context: any\n ): Promise<ProductDetail> {\n return await updateProductDetail(id, patch, context)\n }\n\n @Directive('@transaction')\n @Mutation(returns => [ProductDetail])\n async updateMultipleProductDetail(\n @Arg('productId') productId: string,\n @Arg('patches', type => [ProductDetailPatch]) patches: ProductDetailPatch[],\n @Ctx() context: any\n ): Promise<ProductDetail[]> {\n try {\n return await updateMultipleProductDetail(productId, patches, context)\n } catch (error) {\n throw error\n }\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async deleteProductDetail(@Arg('name') name: string, @Ctx() context: any): Promise<Boolean> {\n const { domain, user } = context.state\n\n await getRepository(ProductDetail).delete({ domain, name })\n\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async deleteProductDetails(@Arg('names', type => [String]) names: string[], @Ctx() context: any): Promise<Boolean> {\n const { domain, user } = context.state\n\n await getRepository(ProductDetail).delete({\n domain,\n name: In(names)\n })\n\n return true\n }\n}\n\nexport async function createProductDetail(productDetail: any, context: any) {\n const { domain, user, tx } = context.state\n\n return await tx.getRepository(ProductDetail).save({\n ...productDetail,\n domain,\n creator: user,\n updater: user\n })\n}\n\nexport async function updateProductDetail(id: string, patch: any, context: any) {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(ProductDetail)\n const productDetail: ProductDetail = await repository.findOne({ where: { id } })\n\n if (patch.gtin == undefined) {\n delete patch.gtin\n }\n\n return await repository.save({\n ...productDetail,\n ...patch,\n updater: user\n })\n}\n\nexport async function updateMultipleProductDetail(productId, patches, context: any) {\n try {\n const { domain, user, tx } = context.state\n\n let results = []\n const _createRecords = patches.filter((patch: any) => !patch.id)\n const _updateRecords = patches.filter((patch: any) => patch.id)\n // const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n\n const productRepo = tx.getRepository(Product)\n const productDetailRepo = tx.getRepository(ProductDetail)\n\n const product: Product = await productRepo.findOne({ where: { id: productId }, relations: ['productDetails'] })\n\n const defaultProductDetail: ProductDetail = patches.find(x => x.isDefault)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = {\n ..._createRecords[i],\n name: _createRecords[i].gtin,\n product,\n childProductDetail: null,\n childQty: 0,\n domain: domain,\n creator: user,\n updater: user\n }\n\n if (newRecord.gtin == null || newRecord.gtin == undefined) {\n throw new Error('GTIN cannot be empty.')\n }\n\n const result = await productDetailRepo.save(newRecord)\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n let deleteIds = []\n for (let x = 0; x < product.productDetails.length; x++) {\n let updateRecords = _updateRecords.find(ur => ur.id == product.productDetails[x].id)\n\n if (updateRecords) {\n const productDetail: ProductDetail = await productDetailRepo.findOne({ id: updateRecords.id })\n\n const updateRecord = {\n ...productDetail,\n ...updateRecords,\n name: updateRecords.gtin,\n product,\n childProductDetail: null,\n childQty: 0,\n updater: user\n }\n\n if (updateRecord.gtin == '' || updateRecord.gtin == null || updateRecord.gtin == undefined) {\n throw new Error('GTIN cannot be empty.')\n }\n\n const result = await productDetailRepo.save({\n ...productDetail,\n ...updateRecord,\n name: updateRecord.gtin,\n product,\n childProductDetail: null,\n childQty: 0,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n } else {\n deleteIds.push(product.productDetails[x].id)\n }\n }\n\n await productDetailRepo.delete({ id: In(deleteIds) })\n\n for await (let patch of patches.filter(x => x.childProductDetail)) {\n let matchedChildProductDetail = results.find(itm => itm.gtin == patch.childProductDetail)\n\n if (matchedChildProductDetail) {\n const childProductDetail: ProductDetail = await productDetailRepo.findOne({\n where: { id: matchedChildProductDetail.id },\n relations: ['product']\n })\n const productDetail: ProductDetail = await productDetailRepo.findOne({\n where: { gtin: patch.gtin, product: childProductDetail.product }\n })\n\n await productDetailRepo.save({\n ...productDetail,\n childQty: patch.childQty,\n childProductDetail: childProductDetail,\n updater: user\n })\n }\n }\n\n let defaultProductUpdate: Product\n\n //// Temporary solution, to fetch the first case packing type of SKU and update Case data in Product Table.\n //// To be removed\n let firstCase: ProductDetail = await productDetailRepo.findOne({\n where: { product: product, packingType: Raw(alias => `lower(${alias}) = 'case'`) },\n order: {\n name: 'ASC'\n }\n })\n if (firstCase) {\n defaultProductUpdate = {\n ...defaultProductUpdate,\n caseGtin: firstCase.gtin,\n caseWidth: firstCase.width,\n caseHeight: firstCase.height,\n caseDepth: firstCase.depth,\n caseGrossWeight: firstCase.grossWeight,\n caseWeight: firstCase.nettWeight,\n caseVolume: firstCase.volume\n }\n }\n /////////////////////////////////////////////////////\n\n if (defaultProductDetail) {\n defaultProductUpdate = {\n ...defaultProductUpdate,\n packingType: defaultProductDetail.packingType,\n primaryUnit: defaultProductDetail.uom,\n primaryValue: defaultProductDetail.uomValue,\n cogsAccountCode: defaultProductDetail.cogsAccountCode\n }\n }\n\n if (!_.isEmpty(defaultProductUpdate)) {\n await productRepo.update(\n {\n id: product.id\n },\n defaultProductUpdate\n )\n }\n\n return results\n } catch (error) {\n throw error\n }\n}\n"]}
@@ -1,19 +1,8 @@
1
1
  "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var __param = (this && this.__param) || function (paramIndex, decorator) {
12
- return function (target, key) { decorator(target, key, paramIndex); }
13
- };
14
2
  var _a;
15
3
  Object.defineProperty(exports, "__esModule", { value: true });
16
4
  exports.ProductDetailQuery = void 0;
5
+ const tslib_1 = require("tslib");
17
6
  const type_graphql_1 = require("type-graphql");
18
7
  const typeorm_1 = require("typeorm");
19
8
  const auth_base_1 = require("@things-factory/auth-base");
@@ -137,49 +126,49 @@ let ProductDetailQuery = class ProductDetailQuery {
137
126
  return await (0, typeorm_1.getRepository)(auth_base_1.User).findOne(productDetail.creator.id);
138
127
  }
139
128
  };
140
- __decorate([
129
+ tslib_1.__decorate([
141
130
  (0, type_graphql_1.Directive)('@transaction'),
142
131
  (0, type_graphql_1.Query)(returns => product_detail_1.ProductDetail),
143
- __param(0, (0, type_graphql_1.Arg)('gtin')),
144
- __param(1, (0, type_graphql_1.Arg)('productId')),
145
- __param(2, (0, type_graphql_1.Arg)('customerCompanyDomainId')),
146
- __param(3, (0, type_graphql_1.Ctx)()),
147
- __metadata("design:type", Function),
148
- __metadata("design:paramtypes", [String, String, String, Object]),
149
- __metadata("design:returntype", Promise)
132
+ tslib_1.__param(0, (0, type_graphql_1.Arg)('gtin')),
133
+ tslib_1.__param(1, (0, type_graphql_1.Arg)('productId')),
134
+ tslib_1.__param(2, (0, type_graphql_1.Arg)('customerCompanyDomainId')),
135
+ tslib_1.__param(3, (0, type_graphql_1.Ctx)()),
136
+ tslib_1.__metadata("design:type", Function),
137
+ tslib_1.__metadata("design:paramtypes", [String, String, String, Object]),
138
+ tslib_1.__metadata("design:returntype", Promise)
150
139
  ], ProductDetailQuery.prototype, "productDetail", null);
151
- __decorate([
140
+ tslib_1.__decorate([
152
141
  (0, type_graphql_1.Query)(returns => product_detail_types_1.ProductDetailList),
153
- __param(0, (0, type_graphql_1.Ctx)()),
154
- __param(1, (0, type_graphql_1.Arg)('filters', type => [shell_1.Filter], { nullable: true })),
155
- __param(2, (0, type_graphql_1.Arg)('pagination', type => shell_1.Pagination, { nullable: true })),
156
- __param(3, (0, type_graphql_1.Arg)('sortings', type => [shell_1.Sorting], { nullable: true })),
157
- __metadata("design:type", Function),
158
- __metadata("design:paramtypes", [Object, Array, typeof (_a = typeof shell_1.Pagination !== "undefined" && shell_1.Pagination) === "function" ? _a : Object, Array]),
159
- __metadata("design:returntype", Promise)
142
+ tslib_1.__param(0, (0, type_graphql_1.Ctx)()),
143
+ tslib_1.__param(1, (0, type_graphql_1.Arg)('filters', type => [shell_1.Filter], { nullable: true })),
144
+ tslib_1.__param(2, (0, type_graphql_1.Arg)('pagination', type => shell_1.Pagination, { nullable: true })),
145
+ tslib_1.__param(3, (0, type_graphql_1.Arg)('sortings', type => [shell_1.Sorting], { nullable: true })),
146
+ tslib_1.__metadata("design:type", Function),
147
+ tslib_1.__metadata("design:paramtypes", [Object, Array, typeof (_a = typeof shell_1.Pagination !== "undefined" && shell_1.Pagination) === "function" ? _a : Object, Array]),
148
+ tslib_1.__metadata("design:returntype", Promise)
160
149
  ], ProductDetailQuery.prototype, "productDetails", null);
161
- __decorate([
150
+ tslib_1.__decorate([
162
151
  (0, type_graphql_1.FieldResolver)(type => shell_1.Domain),
163
- __param(0, (0, type_graphql_1.Root)()),
164
- __metadata("design:type", Function),
165
- __metadata("design:paramtypes", [product_detail_1.ProductDetail]),
166
- __metadata("design:returntype", Promise)
152
+ tslib_1.__param(0, (0, type_graphql_1.Root)()),
153
+ tslib_1.__metadata("design:type", Function),
154
+ tslib_1.__metadata("design:paramtypes", [product_detail_1.ProductDetail]),
155
+ tslib_1.__metadata("design:returntype", Promise)
167
156
  ], ProductDetailQuery.prototype, "domain", null);
168
- __decorate([
157
+ tslib_1.__decorate([
169
158
  (0, type_graphql_1.FieldResolver)(type => auth_base_1.User),
170
- __param(0, (0, type_graphql_1.Root)()),
171
- __metadata("design:type", Function),
172
- __metadata("design:paramtypes", [product_detail_1.ProductDetail]),
173
- __metadata("design:returntype", Promise)
159
+ tslib_1.__param(0, (0, type_graphql_1.Root)()),
160
+ tslib_1.__metadata("design:type", Function),
161
+ tslib_1.__metadata("design:paramtypes", [product_detail_1.ProductDetail]),
162
+ tslib_1.__metadata("design:returntype", Promise)
174
163
  ], ProductDetailQuery.prototype, "updater", null);
175
- __decorate([
164
+ tslib_1.__decorate([
176
165
  (0, type_graphql_1.FieldResolver)(type => auth_base_1.User),
177
- __param(0, (0, type_graphql_1.Root)()),
178
- __metadata("design:type", Function),
179
- __metadata("design:paramtypes", [product_detail_1.ProductDetail]),
180
- __metadata("design:returntype", Promise)
166
+ tslib_1.__param(0, (0, type_graphql_1.Root)()),
167
+ tslib_1.__metadata("design:type", Function),
168
+ tslib_1.__metadata("design:paramtypes", [product_detail_1.ProductDetail]),
169
+ tslib_1.__metadata("design:returntype", Promise)
181
170
  ], ProductDetailQuery.prototype, "creator", null);
182
- ProductDetailQuery = __decorate([
171
+ ProductDetailQuery = tslib_1.__decorate([
183
172
  (0, type_graphql_1.Resolver)(product_detail_1.ProductDetail)
184
173
  ], ProductDetailQuery);
185
174
  exports.ProductDetailQuery = ProductDetailQuery;
@@ -1 +1 @@
1
- {"version":3,"file":"product-detail-query.js","sourceRoot":"","sources":["../../../server/service/product-detail/product-detail-query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"product-detail-query.js","sourceRoot":"","sources":["../../../server/service/product-detail/product-detail-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, FieldResolver, Query, Resolver, Root } from 'type-graphql'\nimport { Brackets, getRepository, SelectQueryBuilder } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Bizplace, getCompaniesBizplaces, getPartnersCompanyBizplaces } from '@things-factory/biz-base'\nimport { buildCondition, buildQuery, Domain, Filter, Pagination, Sorting } from '@things-factory/shell'\n\nimport { ProductDetail } from './product-detail'\nimport { ProductDetailList } from './product-detail-types'\n\n@Resolver(ProductDetail)\nexport class ProductDetailQuery {\n @Directive('@transaction')\n @Query(returns => ProductDetail)\n async productDetail(\n @Arg('gtin') gtin: string,\n @Arg('productId') productId: string,\n @Arg('customerCompanyDomainId') customerCompanyDomainId: string,\n @Ctx() context: any\n ): Promise<ProductDetail> {\n const { tx } = context.state\n\n const customerDomainId: Domain = await tx.getRepository(Domain).findOne(customerCompanyDomainId)\n if (!customerDomainId) throw new Error('Unable to find company domain')\n var foundProductDetail\n if (gtin == '') {\n foundProductDetail = await tx.getRepository(ProductDetail).findOne({\n where: { domain: customerDomainId, product: productId },\n relations: ['product']\n })\n } else {\n foundProductDetail = await tx.getRepository(ProductDetail).findOne({\n where: { domain: customerDomainId, gtin },\n relations: ['product']\n })\n }\n\n if (!foundProductDetail) throw new Error('No product candidate found')\n\n return foundProductDetail\n }\n\n @Query(returns => ProductDetailList)\n async productDetails(\n @Ctx() context: any,\n @Arg('filters', type => [Filter], { nullable: true }) filters?: Filter[],\n @Arg('pagination', type => Pagination, { nullable: true }) pagination?: Pagination,\n @Arg('sortings', type => [Sorting], { nullable: true }) sortings?: Sorting[]\n ): Promise<ProductDetailList> {\n const { domain, user } = context.state\n const { domains }: { domains: Domain[] } = user\n\n const params = { filters, pagination }\n const productInfoFilters = params.filters.find(\n x =>\n x.name == 'product_info' || x.name == 'sku' || x.name == 'name' || x.name == 'description' || x.name == 'type'\n )\n\n const bizplaceFilter = params.filters.find(x => x.name == 'bizplace_id')\n const productFilter = params.filters.find(x => x.name == 'product')\n const createArrivalNotice = params.filters.find(x => x.name == 'create_arrival_notice')\n const productInfoFilterColumns = ['sku', 'name', 'description', 'type', 'brand']\n params.filters = params.filters.filter(\n x =>\n x.name != 'product_info' &&\n x.name != 'bizplace_id' &&\n x.name != 'product' &&\n x.name != 'sku' &&\n x.name != 'brand' &&\n x.name != 'name' &&\n x.name != 'description' &&\n x.name != 'type' &&\n x.name != 'create_arrival_notice'\n )\n\n const qb: SelectQueryBuilder<ProductDetail> = getRepository(ProductDetail).createQueryBuilder('ProductDetail')\n qb.innerJoinAndSelect('ProductDetail.product', 'Product', '\"Product\".\"deleted_at\" IS NULL')\n qb.innerJoinAndSelect('Product.bizplace', 'Bizplace')\n qb.leftJoinAndSelect('ProductDetail.childProductDetail', 'ChildProductDetail')\n qb.leftJoinAndSelect('Product.creator', 'Creator')\n qb.leftJoinAndSelect('Product.updater', 'Updater')\n\n buildQuery(qb, params, context, {\n domainRef: false,\n searchables: ['name']\n })\n\n if (bizplaceFilter?.value) {\n const bizplaceId: string[] = bizplaceFilter.value\n\n const foundBizplace: Bizplace = await getRepository(Bizplace).findOne({\n where: { id: bizplaceId },\n relations: ['company', 'company.domain']\n })\n\n if (foundBizplace) {\n const companyDomain: Domain = foundBizplace.company?.domain\n const companyBizplace: Bizplace = await getRepository(Bizplace).findOne({ where: { domain: companyDomain } })\n\n const bizplaceIds = [companyBizplace.id, foundBizplace.id]\n qb.andWhere('Bizplace.id IN (:...bizplaceIds)', { bizplaceIds: [...new Set(bizplaceIds)] })\n }\n } else {\n const warehouseDomain: Domain = domain\n let bizplaceIds = []\n if (warehouseDomain?.extType === 'company') {\n const companyBizplace: Bizplace = await getRepository(Bizplace).findOne({\n where: { domain: warehouseDomain }\n })\n bizplaceIds.push(companyBizplace.id)\n } else {\n const companiesBizplaces: Bizplace[] = await getCompaniesBizplaces(domains, warehouseDomain)\n const partnersCompanyBizplaces: Bizplace[] = await getPartnersCompanyBizplaces(domain, user)\n bizplaceIds = [\n ...bizplaceIds,\n ...companiesBizplaces.map(biz => biz.id),\n ...partnersCompanyBizplaces.map(biz => biz.id)\n ]\n }\n\n qb.andWhere('Product.bizplace_id IN (:...bizplaceIds)', { bizplaceIds: bizplaceIds })\n }\n\n if (productFilter?.value) {\n qb.andWhere('ProductDetail.product_id = :productId', { productId: productFilter.value })\n }\n\n if (productInfoFilters?.value) {\n let productInfo = productInfoFilters\n qb.andWhere(\n new Brackets(qb2 => {\n productInfoFilterColumns.forEach(filter => {\n const condition = buildCondition(\n 'Product',\n filter,\n productInfo.operator,\n productInfo.value,\n productInfo.relation,\n Object.keys(qb.getParameters()).length\n )\n\n qb2.orWhere(condition.clause, condition.parameters)\n })\n })\n )\n }\n\n if (createArrivalNotice?.value) {\n qb.andWhere(\n '(Product.isRequireSerialNumberScanning = false OR (Product.isRequireSerialNumberScanning = true AND ProductDetail.isDefault = true))'\n )\n }\n\n let [items, total] = await qb.getManyAndCount()\n\n items = items.map(item => {\n return {\n ...item,\n productId: item.product.id,\n name: item.product.name,\n description: item.product.description,\n type: item.product.type,\n sku: item.product.sku,\n isRequireSerialNumberScanningInbound: item.product.isRequireSerialNumberScanningInbound,\n isRequireSerialNumberScanningOutbound: item.product.isRequireSerialNumberScanningOutbound\n }\n })\n\n return { items, total }\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() productDetail: ProductDetail): Promise<Domain> {\n return await getRepository(Domain).findOne(productDetail.domain.id)\n }\n\n @FieldResolver(type => User)\n async updater(@Root() productDetail: ProductDetail): Promise<User> {\n return await getRepository(User).findOne(productDetail.updater.id)\n }\n\n @FieldResolver(type => User)\n async creator(@Root() productDetail: ProductDetail): Promise<User> {\n return await getRepository(User).findOne(productDetail.creator.id)\n }\n}\n"]}