@things-factory/product-base 6.2.170 → 6.2.178
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.
- package/dist-server/constants/index.d.ts +1 -0
- package/dist-server/constants/product.d.ts +21 -0
- package/dist-server/controllers/index.d.ts +0 -0
- package/dist-server/index.d.ts +2 -0
- package/dist-server/middlewares/index.d.ts +0 -0
- package/dist-server/migrations/index.d.ts +1 -0
- package/dist-server/service/index.d.ts +20 -0
- package/dist-server/service/product/index.d.ts +5 -0
- package/dist-server/service/product/product-mutation.d.ts +16 -0
- package/dist-server/service/product/product-mutation.js +6 -6
- package/dist-server/service/product/product-mutation.js.map +1 -1
- package/dist-server/service/product/product-query.d.ts +28 -0
- package/dist-server/service/product/product-query.js +2 -2
- package/dist-server/service/product/product-query.js.map +1 -1
- package/dist-server/service/product/product-types.d.ts +151 -0
- package/dist-server/service/product/product-types.js +7 -8
- package/dist-server/service/product/product-types.js.map +1 -1
- package/dist-server/service/product/product.d.ts +112 -0
- package/dist-server/service/product/product.js +10 -12
- package/dist-server/service/product/product.js.map +1 -1
- package/dist-server/service/product/validate-product.d.ts +2 -0
- package/dist-server/service/product/validate-product.js +1 -2
- package/dist-server/service/product/validate-product.js.map +1 -1
- package/dist-server/service/product-bundle/index.d.ts +5 -0
- package/dist-server/service/product-bundle/product-bundle-mutation.d.ts +9 -0
- package/dist-server/service/product-bundle/product-bundle-mutation.js +2 -2
- package/dist-server/service/product-bundle/product-bundle-mutation.js.map +1 -1
- package/dist-server/service/product-bundle/product-bundle-query.d.ts +12 -0
- package/dist-server/service/product-bundle/product-bundle-query.js +2 -2
- package/dist-server/service/product-bundle/product-bundle-query.js.map +1 -1
- package/dist-server/service/product-bundle/product-bundle-types.d.ts +20 -0
- package/dist-server/service/product-bundle/product-bundle-types.js +6 -6
- package/dist-server/service/product-bundle/product-bundle-types.js.map +1 -1
- package/dist-server/service/product-bundle/product-bundle.d.ts +25 -0
- package/dist-server/service/product-bundle/product-bundle.js +3 -4
- package/dist-server/service/product-bundle/product-bundle.js.map +1 -1
- package/dist-server/service/product-bundle-setting/index.d.ts +5 -0
- package/dist-server/service/product-bundle-setting/product-bundle-setting-mutation.d.ts +10 -0
- package/dist-server/service/product-bundle-setting/product-bundle-setting-mutation.js +4 -4
- package/dist-server/service/product-bundle-setting/product-bundle-setting-mutation.js.map +1 -1
- package/dist-server/service/product-bundle-setting/product-bundle-setting-query.d.ts +6 -0
- package/dist-server/service/product-bundle-setting/product-bundle-setting-query.js +2 -2
- package/dist-server/service/product-bundle-setting/product-bundle-setting-query.js.map +1 -1
- package/dist-server/service/product-bundle-setting/product-bundle-setting-types.d.ts +16 -0
- package/dist-server/service/product-bundle-setting/product-bundle-setting-types.js +4 -4
- package/dist-server/service/product-bundle-setting/product-bundle-setting-types.js.map +1 -1
- package/dist-server/service/product-bundle-setting/product-bundle-setting.d.ts +12 -0
- package/dist-server/service/product-bundle-setting/product-bundle-setting.js +2 -2
- package/dist-server/service/product-bundle-setting/product-bundle-setting.js.map +1 -1
- package/dist-server/service/product-combination/index.d.ts +5 -0
- package/dist-server/service/product-combination/product-combination-mutation.d.ts +9 -0
- package/dist-server/service/product-combination/product-combination-mutation.js +2 -2
- package/dist-server/service/product-combination/product-combination-mutation.js.map +1 -1
- package/dist-server/service/product-combination/product-combination-query.d.ts +11 -0
- package/dist-server/service/product-combination/product-combination-query.js +2 -2
- package/dist-server/service/product-combination/product-combination-query.js.map +1 -1
- package/dist-server/service/product-combination/product-combination-type.d.ts +20 -0
- package/dist-server/service/product-combination/product-combination-type.js +6 -6
- package/dist-server/service/product-combination/product-combination-type.js.map +1 -1
- package/dist-server/service/product-combination/product-combination.d.ts +33 -0
- package/dist-server/service/product-combination/product-combination.js +3 -3
- package/dist-server/service/product-combination/product-combination.js.map +1 -1
- package/dist-server/service/product-combination-setting/index.d.ts +5 -0
- package/dist-server/service/product-combination-setting/product-combination-setting-mutation.d.ts +11 -0
- package/dist-server/service/product-combination-setting/product-combination-setting-mutation.js +4 -4
- package/dist-server/service/product-combination-setting/product-combination-setting-mutation.js.map +1 -1
- package/dist-server/service/product-combination-setting/product-combination-setting-query.d.ts +14 -0
- package/dist-server/service/product-combination-setting/product-combination-setting-query.js +2 -2
- package/dist-server/service/product-combination-setting/product-combination-setting-query.js.map +1 -1
- package/dist-server/service/product-combination-setting/product-combination-setting-type.d.ts +18 -0
- package/dist-server/service/product-combination-setting/product-combination-setting-type.js +6 -6
- package/dist-server/service/product-combination-setting/product-combination-setting-type.js.map +1 -1
- package/dist-server/service/product-combination-setting/product-combination-setting.d.ts +22 -0
- package/dist-server/service/product-combination-setting/product-combination-setting.js +2 -2
- package/dist-server/service/product-combination-setting/product-combination-setting.js.map +1 -1
- package/dist-server/service/product-detail/index.d.ts +5 -0
- package/dist-server/service/product-detail/product-detail-mutation.d.ts +11 -0
- package/dist-server/service/product-detail/product-detail-mutation.js +18 -23
- package/dist-server/service/product-detail/product-detail-mutation.js.map +1 -1
- package/dist-server/service/product-detail/product-detail-query.d.ts +12 -0
- package/dist-server/service/product-detail/product-detail-query.js +2 -2
- package/dist-server/service/product-detail/product-detail-query.js.map +1 -1
- package/dist-server/service/product-detail/product-detail-types.d.ts +98 -0
- package/dist-server/service/product-detail/product-detail-types.js +6 -6
- package/dist-server/service/product-detail/product-detail-types.js.map +1 -1
- package/dist-server/service/product-detail/product-detail.d.ts +121 -0
- package/dist-server/service/product-detail/product-detail.js +7 -8
- package/dist-server/service/product-detail/product-detail.js.map +1 -1
- package/dist-server/service/product-detail-bizplace-setting/index.d.ts +5 -0
- package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-mutation.d.ts +8 -0
- package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-mutation.js +2 -2
- package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-mutation.js.map +1 -1
- package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-query.d.ts +11 -0
- package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-query.js +2 -2
- package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-query.js.map +1 -1
- package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-types.d.ts +24 -0
- package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-types.js +6 -6
- package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-types.js.map +1 -1
- package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting.d.ts +34 -0
- package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting.js +2 -2
- package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting.js.map +1 -1
- package/dist-server/service/product-set/index.d.ts +5 -0
- package/dist-server/service/product-set/product-set-mutation.d.ts +39 -0
- package/dist-server/service/product-set/product-set-mutation.js +5 -5
- package/dist-server/service/product-set/product-set-mutation.js.map +1 -1
- package/dist-server/service/product-set/product-set-query.d.ts +12 -0
- package/dist-server/service/product-set/product-set-query.js +2 -2
- package/dist-server/service/product-set/product-set-query.js.map +1 -1
- package/dist-server/service/product-set/product-set-types.d.ts +18 -0
- package/dist-server/service/product-set/product-set-types.js +6 -6
- package/dist-server/service/product-set/product-set-types.js.map +1 -1
- package/dist-server/service/product-set/product-set.d.ts +22 -0
- package/dist-server/service/product-set/product-set.js +3 -4
- package/dist-server/service/product-set/product-set.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/dist-server/utils/index.d.ts +1 -0
- package/dist-server/utils/product-util.d.ts +3 -0
- package/package.json +4 -4
- package/server/service/product/product.ts +1 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ProductCombination } from './product-combination';
|
|
2
|
+
import { NewProductCombination, ProductCombinationPatch } from './product-combination-type';
|
|
3
|
+
export declare class ProductCombinationMutation {
|
|
4
|
+
createProductCombination(productCombination: NewProductCombination, context: ResolverContext): Promise<ProductCombination>;
|
|
5
|
+
updateProductCombination(id: string, patch: ProductCombinationPatch, context: ResolverContext): Promise<ProductCombination>;
|
|
6
|
+
updateMultipleProductCombination(productDetailId: string, patches: ProductCombinationPatch[], context: ResolverContext): Promise<ProductCombination[]>;
|
|
7
|
+
deleteProductCombination(id: string, context: ResolverContext): Promise<boolean>;
|
|
8
|
+
deleteProductCombinations(ids: string[], context: ResolverContext): Promise<boolean>;
|
|
9
|
+
}
|
|
@@ -75,6 +75,7 @@ let ProductCombinationMutation = class ProductCombinationMutation {
|
|
|
75
75
|
return true;
|
|
76
76
|
}
|
|
77
77
|
};
|
|
78
|
+
exports.ProductCombinationMutation = ProductCombinationMutation;
|
|
78
79
|
tslib_1.__decorate([
|
|
79
80
|
(0, type_graphql_1.Directive)('@transaction'),
|
|
80
81
|
(0, type_graphql_1.Mutation)(returns => product_combination_1.ProductCombination, { description: 'To create new ProductCombination' }),
|
|
@@ -122,8 +123,7 @@ tslib_1.__decorate([
|
|
|
122
123
|
tslib_1.__metadata("design:paramtypes", [Array, Object]),
|
|
123
124
|
tslib_1.__metadata("design:returntype", Promise)
|
|
124
125
|
], ProductCombinationMutation.prototype, "deleteProductCombinations", null);
|
|
125
|
-
ProductCombinationMutation = tslib_1.__decorate([
|
|
126
|
+
exports.ProductCombinationMutation = ProductCombinationMutation = tslib_1.__decorate([
|
|
126
127
|
(0, type_graphql_1.Resolver)(product_combination_1.ProductCombination)
|
|
127
128
|
], ProductCombinationMutation);
|
|
128
|
-
exports.ProductCombinationMutation = ProductCombinationMutation;
|
|
129
129
|
//# sourceMappingURL=product-combination-mutation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-combination-mutation.js","sourceRoot":"","sources":["../../../server/service/product-combination/product-combination-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { In, Repository } from 'typeorm'\n\nimport { ProductDetail } from '../product-detail/product-detail'\nimport { ProductCombination, ProductCombinationStatus } from './product-combination'\nimport { NewProductCombination, ProductCombinationPatch } from './product-combination-type'\n\n@Resolver(ProductCombination)\nexport class ProductCombinationMutation {\n @Directive('@transaction')\n @Mutation(returns => ProductCombination, { description: 'To create new ProductCombination' })\n async createProductCombination(\n @Arg('productCombination') productCombination: NewProductCombination,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombination> {\n const { domain, user, tx } = context.state\n\n return await tx.getRepository(ProductCombination).save({\n ...productCombination,\n domain,\n creator: user,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => ProductCombination, { description: 'To modify ProductCombination information' })\n async updateProductCombination(\n @Arg('id') id: string,\n @Arg('patch') patch: ProductCombinationPatch,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombination> {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(ProductCombination)\n const productCombination = await repository.findOne({\n where: { domain: { id: domain.id }, id }\n })\n\n return await repository.save({\n ...productCombination,\n ...patch,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => [ProductCombination], { description: \"To modify multiple ProductCombinations' information\" })\n async updateMultipleProductCombination(\n @Arg('productDetailId', type => String) productDetailId: string,\n @Arg('patches', type => [ProductCombinationPatch]) patches: ProductCombinationPatch[],\n @Ctx() context: ResolverContext\n ): Promise<ProductCombination[]> {\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 productDetailRepo = tx.getRepository(ProductDetail)\n const productCombinationRepo = tx.getRepository(ProductCombination)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n let newRecord = _createRecords[i]\n const productDetail: ProductDetail = await productDetailRepo.findOne({\n where: { id: productDetailId },\n relations: ['product']\n })\n\n delete newRecord.id\n\n if (!newRecord?.status) {\n newRecord.status = ProductCombinationStatus.INACTIVE\n }\n\n const result = await productCombinationRepo.save({\n ...newRecord,\n domain,\n productDetail,\n product: productDetail.product,\n status: newRecord.status.toUpperCase(),\n creator: user,\n updater: user\n })\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const newRecord = _updateRecords[i]\n const productCombination = await productCombinationRepo.findOneBy({\n domain: { id: domain.id },\n id: newRecord.id\n })\n\n if (newRecord.status) {\n newRecord.status = newRecord.status.toUpperCase()\n }\n\n const result = await productCombinationRepo.save({\n ...productCombination,\n ...newRecord,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete ProductCombination' })\n async deleteProductCombination(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<boolean> {\n const { user, tx } = context.state\n\n await tx.getRepository(ProductCombination).update({ id }, { deletedAt: new Date(), deletedBy: user })\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete multiple productCombinations' })\n async deleteProductCombinations(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { user, tx } = context.state\n\n const productCombinationRepo: Repository<ProductCombination> = tx.getRepository(ProductCombination)\n\n let productCombinations = await productCombinationRepo.find({ where: { id: In(ids) } })\n\n for (let i = 0; i < productCombinations.length; i++) {\n const product = productCombinations[i]\n\n await productCombinationRepo.save({\n ...product,\n status: ProductCombinationStatus.DELETED,\n updater: user\n })\n }\n\n return true\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"product-combination-mutation.js","sourceRoot":"","sources":["../../../server/service/product-combination/product-combination-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { In, Repository } from 'typeorm'\n\nimport { ProductDetail } from '../product-detail/product-detail'\nimport { ProductCombination, ProductCombinationStatus } from './product-combination'\nimport { NewProductCombination, ProductCombinationPatch } from './product-combination-type'\n\n@Resolver(ProductCombination)\nexport class ProductCombinationMutation {\n @Directive('@transaction')\n @Mutation(returns => ProductCombination, { description: 'To create new ProductCombination' })\n async createProductCombination(\n @Arg('productCombination') productCombination: NewProductCombination,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombination> {\n const { domain, user, tx } = context.state\n\n return await tx.getRepository(ProductCombination).save({\n ...productCombination,\n domain,\n creator: user,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => ProductCombination, { description: 'To modify ProductCombination information' })\n async updateProductCombination(\n @Arg('id') id: string,\n @Arg('patch') patch: ProductCombinationPatch,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombination> {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(ProductCombination)\n const productCombination = await repository.findOne({\n where: { domain: { id: domain.id }, id }\n })\n\n return await repository.save({\n ...productCombination,\n ...patch,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => [ProductCombination], { description: \"To modify multiple ProductCombinations' information\" })\n async updateMultipleProductCombination(\n @Arg('productDetailId', type => String) productDetailId: string,\n @Arg('patches', type => [ProductCombinationPatch]) patches: ProductCombinationPatch[],\n @Ctx() context: ResolverContext\n ): Promise<ProductCombination[]> {\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 productDetailRepo = tx.getRepository(ProductDetail)\n const productCombinationRepo = tx.getRepository(ProductCombination)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n let newRecord = _createRecords[i]\n const productDetail: ProductDetail = await productDetailRepo.findOne({\n where: { id: productDetailId },\n relations: ['product']\n })\n\n delete newRecord.id\n\n if (!newRecord?.status) {\n newRecord.status = ProductCombinationStatus.INACTIVE\n }\n\n const result = await productCombinationRepo.save({\n ...newRecord,\n domain,\n productDetail,\n product: productDetail.product,\n status: newRecord.status.toUpperCase(),\n creator: user,\n updater: user\n })\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const newRecord = _updateRecords[i]\n const productCombination = await productCombinationRepo.findOneBy({\n domain: { id: domain.id },\n id: newRecord.id\n })\n\n if (newRecord.status) {\n newRecord.status = newRecord.status.toUpperCase()\n }\n\n const result = await productCombinationRepo.save({\n ...productCombination,\n ...newRecord,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete ProductCombination' })\n async deleteProductCombination(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<boolean> {\n const { user, tx } = context.state\n\n await tx.getRepository(ProductCombination).update({ id }, { deletedAt: new Date(), deletedBy: user })\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete multiple productCombinations' })\n async deleteProductCombinations(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { user, tx } = context.state\n\n const productCombinationRepo: Repository<ProductCombination> = tx.getRepository(ProductCombination)\n\n let productCombinations = await productCombinationRepo.find({ where: { id: In(ids) } })\n\n for (let i = 0; i < productCombinations.length; i++) {\n const product = productCombinations[i]\n\n await productCombinationRepo.save({\n ...product,\n status: ProductCombinationStatus.DELETED,\n updater: user\n })\n }\n\n return true\n }\n}\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { User } from '@things-factory/auth-base';
|
|
2
|
+
import { Domain, ListParam } from '@things-factory/shell';
|
|
3
|
+
import { ProductCombination } from './product-combination';
|
|
4
|
+
import { ProductCombinationList } from './product-combination-type';
|
|
5
|
+
export declare class ProductCombinationQuery {
|
|
6
|
+
productCombination(name: string, context: ResolverContext): Promise<ProductCombination>;
|
|
7
|
+
productCombinations(params: ListParam, context: ResolverContext): Promise<ProductCombinationList>;
|
|
8
|
+
domain(productCombination: ProductCombination): Promise<Domain>;
|
|
9
|
+
updater(productCombination: ProductCombination): Promise<User>;
|
|
10
|
+
creator(productCombination: ProductCombination): Promise<User>;
|
|
11
|
+
}
|
|
@@ -29,6 +29,7 @@ let ProductCombinationQuery = class ProductCombinationQuery {
|
|
|
29
29
|
return await (0, shell_1.getRepository)(auth_base_1.User).findOneBy({ id: productCombination.creatorId });
|
|
30
30
|
}
|
|
31
31
|
};
|
|
32
|
+
exports.ProductCombinationQuery = ProductCombinationQuery;
|
|
32
33
|
tslib_1.__decorate([
|
|
33
34
|
(0, type_graphql_1.Query)(returns => product_combination_1.ProductCombination, { description: 'To fetch a ProductCombination' }),
|
|
34
35
|
tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
|
|
@@ -66,8 +67,7 @@ tslib_1.__decorate([
|
|
|
66
67
|
tslib_1.__metadata("design:paramtypes", [product_combination_1.ProductCombination]),
|
|
67
68
|
tslib_1.__metadata("design:returntype", Promise)
|
|
68
69
|
], ProductCombinationQuery.prototype, "creator", null);
|
|
69
|
-
ProductCombinationQuery = tslib_1.__decorate([
|
|
70
|
+
exports.ProductCombinationQuery = ProductCombinationQuery = tslib_1.__decorate([
|
|
70
71
|
(0, type_graphql_1.Resolver)(product_combination_1.ProductCombination)
|
|
71
72
|
], ProductCombinationQuery);
|
|
72
|
-
exports.ProductCombinationQuery = ProductCombinationQuery;
|
|
73
73
|
//# sourceMappingURL=product-combination-query.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-combination-query.js","sourceRoot":"","sources":["../../../server/service/product-combination/product-combination-query.ts"],"names":[],"mappings":";;;;AAAA,+CAAmF;AAEnF,yDAAgD;AAChD,iDAA2F;AAE3F,+DAA0D;AAC1D,yEAAmE;AAG5D,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAE5B,AAAN,KAAK,CAAC,kBAAkB,CAAY,IAAY,EAAS,OAAwB;QAC/E,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEpC,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,wCAAkB,CAAC,CAAC,OAAO,CAAC;YACxD,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE;SAC3C,CAAC,CAAA;IACJ,CAAC;IAGK,AAAN,KAAK,CAAC,mBAAmB,CACf,MAAiB,EAClB,OAAwB;QAE/B,MAAM,eAAe,GAAG,IAAA,yBAAiB,EAAC,MAAM,CAAC,CAAA;QACjD,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,IAAA,qBAAa,EAAC,wCAAkB,CAAC,CAAC,YAAY,iCACtE,eAAe,KAClB,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC,IACvC,CAAA;QAEF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,CAAS,kBAAsC;QACzD,OAAO,MAAM,IAAA,qBAAa,EAAC,cAAM,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAAA;IACnF,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAS,kBAAsC;QAC1D,OAAO,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,SAAS,EAAE,CAAC,CAAA;IAClF,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAS,kBAAsC;QAC1D,OAAO,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,SAAS,EAAE,CAAC,CAAA;IAClF,CAAC;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"product-combination-query.js","sourceRoot":"","sources":["../../../server/service/product-combination/product-combination-query.ts"],"names":[],"mappings":";;;;AAAA,+CAAmF;AAEnF,yDAAgD;AAChD,iDAA2F;AAE3F,+DAA0D;AAC1D,yEAAmE;AAG5D,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAE5B,AAAN,KAAK,CAAC,kBAAkB,CAAY,IAAY,EAAS,OAAwB;QAC/E,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEpC,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,wCAAkB,CAAC,CAAC,OAAO,CAAC;YACxD,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE;SAC3C,CAAC,CAAA;IACJ,CAAC;IAGK,AAAN,KAAK,CAAC,mBAAmB,CACf,MAAiB,EAClB,OAAwB;QAE/B,MAAM,eAAe,GAAG,IAAA,yBAAiB,EAAC,MAAM,CAAC,CAAA;QACjD,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,IAAA,qBAAa,EAAC,wCAAkB,CAAC,CAAC,YAAY,iCACtE,eAAe,KAClB,SAAS,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC,IACvC,CAAA;QAEF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,CAAS,kBAAsC;QACzD,OAAO,MAAM,IAAA,qBAAa,EAAC,cAAM,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAAA;IACnF,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAS,kBAAsC;QAC1D,OAAO,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,SAAS,EAAE,CAAC,CAAA;IAClF,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAS,kBAAsC;QAC1D,OAAO,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,SAAS,EAAE,CAAC,CAAA;IAClF,CAAC;CACF,CAAA;AAtCY,0DAAuB;AAE5B;IADL,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,wCAAkB,EAAE,EAAE,WAAW,EAAE,+BAA+B,EAAE,CAAC;IAC7D,mBAAA,IAAA,kBAAG,EAAC,IAAI,CAAC,CAAA;IAAgB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;iEAMvD;AAGK;IADL,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,iDAAsB,EAAE,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC;IAEhG,mBAAA,IAAA,mBAAI,GAAE,CAAA;IACN,mBAAA,IAAA,kBAAG,GAAE,CAAA;;6CADU,iBAAS;;kEAU1B;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,cAAM,CAAC;IAChB,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAqB,wCAAkB;;qDAE1D;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,CAAC;IACb,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAqB,wCAAkB;;sDAE3D;AAGK;IADL,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,CAAC;IACb,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAqB,wCAAkB;;sDAE3D;kCArCU,uBAAuB;IADnC,IAAA,uBAAQ,EAAC,wCAAkB,CAAC;GAChB,uBAAuB,CAsCnC","sourcesContent":["import { Arg, Args, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'\n\nimport { User } from '@things-factory/auth-base'\nimport { convertListParams, Domain, getRepository, ListParam } from '@things-factory/shell'\n\nimport { ProductCombination } from './product-combination'\nimport { ProductCombinationList } from './product-combination-type'\n\n@Resolver(ProductCombination)\nexport class ProductCombinationQuery {\n @Query(returns => ProductCombination, { description: 'To fetch a ProductCombination' })\n async productCombination(@Arg('id') name: string, @Ctx() context: ResolverContext): Promise<ProductCombination> {\n const { domain, tx } = context.state\n\n return await tx.getRepository(ProductCombination).findOne({\n where: { domain: { id: domain.id }, name }\n })\n }\n\n @Query(returns => ProductCombinationList, { description: 'To fetch multiple ProductCombinations' })\n async productCombinations(\n @Args() params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombinationList> {\n const convertedParams = convertListParams(params)\n const [items, total] = await getRepository(ProductCombination).findAndCount({\n ...convertedParams,\n relations: ['product', 'productDetail']\n })\n\n return { items, total }\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() productCombination: ProductCombination): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: productCombination.domainId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() productCombination: ProductCombination): Promise<User> {\n return await getRepository(User).findOneBy({ id: productCombination.updaterId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() productCombination: ProductCombination): Promise<User> {\n return await getRepository(User).findOneBy({ id: productCombination.creatorId })\n }\n}\n"]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ObjectRef } from '@things-factory/shell';
|
|
2
|
+
import { ProductCombination } from './product-combination';
|
|
3
|
+
export declare class NewProductCombination {
|
|
4
|
+
name: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
status?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare class ProductCombinationPatch {
|
|
9
|
+
id?: string;
|
|
10
|
+
name?: string;
|
|
11
|
+
description?: string;
|
|
12
|
+
status?: string;
|
|
13
|
+
product?: ObjectRef;
|
|
14
|
+
productDetail?: ObjectRef;
|
|
15
|
+
cuFlag?: string;
|
|
16
|
+
}
|
|
17
|
+
export declare class ProductCombinationList {
|
|
18
|
+
items: ProductCombination[];
|
|
19
|
+
total: number;
|
|
20
|
+
}
|
|
@@ -7,6 +7,7 @@ const shell_1 = require("@things-factory/shell");
|
|
|
7
7
|
const product_combination_1 = require("./product-combination");
|
|
8
8
|
let NewProductCombination = class NewProductCombination {
|
|
9
9
|
};
|
|
10
|
+
exports.NewProductCombination = NewProductCombination;
|
|
10
11
|
tslib_1.__decorate([
|
|
11
12
|
(0, type_graphql_1.Field)(),
|
|
12
13
|
tslib_1.__metadata("design:type", String)
|
|
@@ -19,12 +20,12 @@ tslib_1.__decorate([
|
|
|
19
20
|
(0, type_graphql_1.Field)(type => product_combination_1.ProductCombinationStatus, { nullable: true }),
|
|
20
21
|
tslib_1.__metadata("design:type", String)
|
|
21
22
|
], NewProductCombination.prototype, "status", void 0);
|
|
22
|
-
NewProductCombination = tslib_1.__decorate([
|
|
23
|
+
exports.NewProductCombination = NewProductCombination = tslib_1.__decorate([
|
|
23
24
|
(0, type_graphql_1.InputType)()
|
|
24
25
|
], NewProductCombination);
|
|
25
|
-
exports.NewProductCombination = NewProductCombination;
|
|
26
26
|
let ProductCombinationPatch = class ProductCombinationPatch {
|
|
27
27
|
};
|
|
28
|
+
exports.ProductCombinationPatch = ProductCombinationPatch;
|
|
28
29
|
tslib_1.__decorate([
|
|
29
30
|
(0, type_graphql_1.Field)(type => type_graphql_1.ID, { nullable: true }),
|
|
30
31
|
tslib_1.__metadata("design:type", String)
|
|
@@ -53,12 +54,12 @@ tslib_1.__decorate([
|
|
|
53
54
|
(0, type_graphql_1.Field)({ nullable: true }),
|
|
54
55
|
tslib_1.__metadata("design:type", String)
|
|
55
56
|
], ProductCombinationPatch.prototype, "cuFlag", void 0);
|
|
56
|
-
ProductCombinationPatch = tslib_1.__decorate([
|
|
57
|
+
exports.ProductCombinationPatch = ProductCombinationPatch = tslib_1.__decorate([
|
|
57
58
|
(0, type_graphql_1.InputType)()
|
|
58
59
|
], ProductCombinationPatch);
|
|
59
|
-
exports.ProductCombinationPatch = ProductCombinationPatch;
|
|
60
60
|
let ProductCombinationList = class ProductCombinationList {
|
|
61
61
|
};
|
|
62
|
+
exports.ProductCombinationList = ProductCombinationList;
|
|
62
63
|
tslib_1.__decorate([
|
|
63
64
|
(0, type_graphql_1.Field)(type => [product_combination_1.ProductCombination]),
|
|
64
65
|
tslib_1.__metadata("design:type", Array)
|
|
@@ -67,8 +68,7 @@ tslib_1.__decorate([
|
|
|
67
68
|
(0, type_graphql_1.Field)(type => type_graphql_1.Int),
|
|
68
69
|
tslib_1.__metadata("design:type", Number)
|
|
69
70
|
], ProductCombinationList.prototype, "total", void 0);
|
|
70
|
-
ProductCombinationList = tslib_1.__decorate([
|
|
71
|
+
exports.ProductCombinationList = ProductCombinationList = tslib_1.__decorate([
|
|
71
72
|
(0, type_graphql_1.ObjectType)()
|
|
72
73
|
], ProductCombinationList);
|
|
73
|
-
exports.ProductCombinationList = ProductCombinationList;
|
|
74
74
|
//# sourceMappingURL=product-combination-type.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-combination-type.js","sourceRoot":"","sources":["../../../server/service/product-combination/product-combination-type.ts"],"names":[],"mappings":";;;;AAAA,+CAAoE;AAEpE,iDAAiD;AAEjD,+DAAoF;AAG7E,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;CASjC,CAAA;
|
|
1
|
+
{"version":3,"file":"product-combination-type.js","sourceRoot":"","sources":["../../../server/service/product-combination/product-combination-type.ts"],"names":[],"mappings":";;;;AAAA,+CAAoE;AAEpE,iDAAiD;AAEjD,+DAAoF;AAG7E,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;CASjC,CAAA;AATY,sDAAqB;AAEhC;IADC,IAAA,oBAAK,GAAE;;mDACI;AAGZ;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;0DACN;AAGpB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,8CAAwB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDAC7C;gCARJ,qBAAqB;IADjC,IAAA,wBAAS,GAAE;GACC,qBAAqB,CASjC;AAGM,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;CAqBnC,CAAA;AArBY,0DAAuB;AAElC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDAC3B;AAGX;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACb;AAGb;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;4DACN;AAGpB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;uDACX;AAGf;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCAChB,iBAAS;wDAAA;AAGnB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCACV,iBAAS;8DAAA;AAGzB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;uDACX;kCApBJ,uBAAuB;IADnC,IAAA,wBAAS,GAAE;GACC,uBAAuB,CAqBnC;AAGM,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;CAMlC,CAAA;AANY,wDAAsB;AAEjC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,wCAAkB,CAAC,CAAC;;qDACT;AAG3B;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,kBAAG,CAAC;;qDACN;iCALF,sBAAsB;IADlC,IAAA,yBAAU,GAAE;GACA,sBAAsB,CAMlC","sourcesContent":["import { Field, ID, InputType, Int, ObjectType } from 'type-graphql'\n\nimport { ObjectRef } from '@things-factory/shell'\n\nimport { ProductCombination, ProductCombinationStatus } from './product-combination'\n\n@InputType()\nexport class NewProductCombination {\n @Field()\n name: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field(type => ProductCombinationStatus, { nullable: true })\n status?: string\n}\n\n@InputType()\nexport class ProductCombinationPatch {\n @Field(type => ID, { nullable: true })\n id?: string\n\n @Field({ nullable: true })\n name?: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n status?: string\n\n @Field({ nullable: true })\n product?: ObjectRef\n\n @Field({ nullable: true })\n productDetail?: ObjectRef\n\n @Field({ nullable: true })\n cuFlag?: string\n}\n\n@ObjectType()\nexport class ProductCombinationList {\n @Field(type => [ProductCombination])\n items: ProductCombination[]\n\n @Field(type => Int)\n total: number\n}\n"]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { User } from '@things-factory/auth-base';
|
|
2
|
+
import { Domain } from '@things-factory/shell';
|
|
3
|
+
import { ProductCombinationSetting } from '../product-combination-setting/product-combination-setting';
|
|
4
|
+
import { ProductDetail } from '../product-detail/product-detail';
|
|
5
|
+
import { Product } from '../product/product';
|
|
6
|
+
export declare enum ProductCombinationStatus {
|
|
7
|
+
ACTIVE = "ACTIVE",
|
|
8
|
+
ACTIVATED = "ACTIVATED",
|
|
9
|
+
DELETED = "DELETED",
|
|
10
|
+
INACTIVE = "INACTIVE"
|
|
11
|
+
}
|
|
12
|
+
export declare class ProductCombination {
|
|
13
|
+
readonly id: string;
|
|
14
|
+
domain?: Domain;
|
|
15
|
+
domainId?: string;
|
|
16
|
+
name: string;
|
|
17
|
+
productCombinationSettings?: ProductCombinationSetting[];
|
|
18
|
+
product?: Product;
|
|
19
|
+
productId?: string;
|
|
20
|
+
productDetail?: ProductDetail;
|
|
21
|
+
productDetailId?: string;
|
|
22
|
+
description?: string;
|
|
23
|
+
deletedAt: Date;
|
|
24
|
+
deletedBy: User;
|
|
25
|
+
deletedById?: string;
|
|
26
|
+
status?: string;
|
|
27
|
+
createdAt?: Date;
|
|
28
|
+
updatedAt?: Date;
|
|
29
|
+
creator?: User;
|
|
30
|
+
creatorId?: string;
|
|
31
|
+
updater?: User;
|
|
32
|
+
updaterId?: string;
|
|
33
|
+
}
|
|
@@ -15,13 +15,14 @@ var ProductCombinationStatus;
|
|
|
15
15
|
ProductCombinationStatus["ACTIVATED"] = "ACTIVATED";
|
|
16
16
|
ProductCombinationStatus["DELETED"] = "DELETED";
|
|
17
17
|
ProductCombinationStatus["INACTIVE"] = "INACTIVE";
|
|
18
|
-
})(ProductCombinationStatus
|
|
18
|
+
})(ProductCombinationStatus || (exports.ProductCombinationStatus = ProductCombinationStatus = {}));
|
|
19
19
|
(0, type_graphql_1.registerEnumType)(ProductCombinationStatus, {
|
|
20
20
|
name: 'ProductCombinationStatus',
|
|
21
21
|
description: 'status enumeration of a productCombination'
|
|
22
22
|
});
|
|
23
23
|
let ProductCombination = class ProductCombination {
|
|
24
24
|
};
|
|
25
|
+
exports.ProductCombination = ProductCombination;
|
|
25
26
|
tslib_1.__decorate([
|
|
26
27
|
(0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
|
|
27
28
|
(0, type_graphql_1.Field)(type => type_graphql_1.ID),
|
|
@@ -115,10 +116,9 @@ tslib_1.__decorate([
|
|
|
115
116
|
(0, typeorm_1.RelationId)((productCombination) => productCombination.updater),
|
|
116
117
|
tslib_1.__metadata("design:type", String)
|
|
117
118
|
], ProductCombination.prototype, "updaterId", void 0);
|
|
118
|
-
ProductCombination = tslib_1.__decorate([
|
|
119
|
+
exports.ProductCombination = ProductCombination = tslib_1.__decorate([
|
|
119
120
|
(0, typeorm_1.Entity)(),
|
|
120
121
|
(0, typeorm_1.Index)('ix_product_combination_0', (productCombination) => [productCombination.domain, productCombination.id], { unique: true }),
|
|
121
122
|
(0, type_graphql_1.ObjectType)({ description: 'Entity for ProductCombination' })
|
|
122
123
|
], ProductCombination);
|
|
123
|
-
exports.ProductCombination = ProductCombination;
|
|
124
124
|
//# sourceMappingURL=product-combination.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-combination.js","sourceRoot":"","sources":["../../../server/service/product-combination/product-combination.ts"],"names":[],"mappings":";;;;AAAA,+CAAsE;AACtE,qCAUgB;AAEhB,yDAAgD;AAChD,iDAA8C;AAE9C,4GAAsG;AACtG,qEAAgE;AAChE,gDAA4C;AAE5C,IAAY,wBAKX;AALD,WAAY,wBAAwB;IAClC,6CAAiB,CAAA;IACjB,mDAAuB,CAAA;IACvB,+CAAmB,CAAA;IACnB,iDAAqB,CAAA;AACvB,CAAC,EALW,wBAAwB,
|
|
1
|
+
{"version":3,"file":"product-combination.js","sourceRoot":"","sources":["../../../server/service/product-combination/product-combination.ts"],"names":[],"mappings":"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","sourcesContent":["import { Field, ID, ObjectType, registerEnumType } from 'type-graphql'\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n ManyToOne,\n OneToMany,\n PrimaryGeneratedColumn,\n RelationId,\n UpdateDateColumn\n} from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Domain } from '@things-factory/shell'\n\nimport { ProductCombinationSetting } from '../product-combination-setting/product-combination-setting'\nimport { ProductDetail } from '../product-detail/product-detail'\nimport { Product } from '../product/product'\n\nexport enum ProductCombinationStatus {\n ACTIVE = 'ACTIVE',\n ACTIVATED = 'ACTIVATED',\n DELETED = 'DELETED',\n INACTIVE = 'INACTIVE'\n}\n\nregisterEnumType(ProductCombinationStatus, {\n name: 'ProductCombinationStatus',\n description: 'status enumeration of a productCombination'\n})\n\n@Entity()\n@Index(\n 'ix_product_combination_0',\n (productCombination: ProductCombination) => [productCombination.domain, productCombination.id],\n { unique: true }\n)\n@ObjectType({ description: 'Entity for ProductCombination' })\nexport class ProductCombination {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @ManyToOne(type => Domain)\n @Field({ nullable: true })\n domain?: Domain\n\n @RelationId((productCombination: ProductCombination) => productCombination.domain)\n domainId?: string\n\n @Column()\n @Field()\n name: string\n\n @OneToMany(\n type => ProductCombinationSetting,\n productCombinationSetting => productCombinationSetting.productCombination\n )\n @Field(type => [ProductCombinationSetting], { nullable: true })\n productCombinationSettings?: ProductCombinationSetting[]\n\n @ManyToOne(type => Product)\n @Field(type => Product)\n product?: Product\n\n @RelationId((productCombination: ProductCombination) => productCombination.product)\n productId?: string\n\n @ManyToOne(type => ProductDetail, { nullable: false })\n @Field(type => ProductDetail)\n productDetail?: ProductDetail\n\n @RelationId((productCombination: ProductCombination) => productCombination.productDetail)\n productDetailId?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n description?: string\n\n @Column({ nullable: true })\n deletedAt: Date\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n deletedBy: User\n\n @RelationId((productCombination: ProductCombination) => productCombination.deletedBy)\n deletedById?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n status?: string\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n\n @UpdateDateColumn()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n creator?: User\n\n @RelationId((productCombination: ProductCombination) => productCombination.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n updater?: User\n\n @RelationId((productCombination: ProductCombination) => productCombination.updater)\n updaterId?: string\n}\n"]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ProductCombinationSetting } from './product-combination-setting';
|
|
2
|
+
import { ProductCombinationSettingQuery } from './product-combination-setting-query';
|
|
3
|
+
import { ProductCombinationSettingMutation } from './product-combination-setting-mutation';
|
|
4
|
+
export declare const entities: (typeof ProductCombinationSetting)[];
|
|
5
|
+
export declare const resolvers: (typeof ProductCombinationSettingQuery | typeof ProductCombinationSettingMutation)[];
|
package/dist-server/service/product-combination-setting/product-combination-setting-mutation.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ProductCombinationSetting } from './product-combination-setting';
|
|
2
|
+
import { NewProductCombinationSetting, ProductCombinationSettingPatch } from './product-combination-setting-type';
|
|
3
|
+
export declare class ProductCombinationSettingMutation {
|
|
4
|
+
createProductCombinationSetting(productCombinationSetting: NewProductCombinationSetting, context: ResolverContext): Promise<ProductCombinationSetting>;
|
|
5
|
+
updateProductCombinationSetting(id: string, patch: ProductCombinationSettingPatch, context: ResolverContext): Promise<ProductCombinationSetting>;
|
|
6
|
+
updateMultipleProductCombinationSetting(patches: ProductCombinationSettingPatch[], context: ResolverContext): Promise<ProductCombinationSetting[]>;
|
|
7
|
+
deleteProductCombinationSetting(id: string, context: ResolverContext): Promise<boolean>;
|
|
8
|
+
deleteProductCombinationSettings(ids: string[], context: ResolverContext): Promise<boolean>;
|
|
9
|
+
linkProductCombination(productCombinationId: string, patches: ProductCombinationSettingPatch[], context: ResolverContext): Promise<boolean>;
|
|
10
|
+
}
|
|
11
|
+
export declare function updateMultipleProductCombinationSetting(patches: any, context: ResolverContext): Promise<any[]>;
|
package/dist-server/service/product-combination-setting/product-combination-setting-mutation.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.ProductCombinationSettingMutation = void 0;
|
|
4
|
+
exports.updateMultipleProductCombinationSetting = updateMultipleProductCombinationSetting;
|
|
4
5
|
const tslib_1 = require("tslib");
|
|
5
6
|
const type_graphql_1 = require("type-graphql");
|
|
6
7
|
const typeorm_1 = require("typeorm");
|
|
@@ -120,6 +121,7 @@ let ProductCombinationSettingMutation = class ProductCombinationSettingMutation
|
|
|
120
121
|
}
|
|
121
122
|
}
|
|
122
123
|
};
|
|
124
|
+
exports.ProductCombinationSettingMutation = ProductCombinationSettingMutation;
|
|
123
125
|
tslib_1.__decorate([
|
|
124
126
|
(0, type_graphql_1.Directive)('@transaction'),
|
|
125
127
|
(0, type_graphql_1.Mutation)(returns => product_combination_setting_1.ProductCombinationSetting, { description: 'To create new ProductCombinationSetting' }),
|
|
@@ -178,10 +180,9 @@ tslib_1.__decorate([
|
|
|
178
180
|
tslib_1.__metadata("design:paramtypes", [String, Array, Object]),
|
|
179
181
|
tslib_1.__metadata("design:returntype", Promise)
|
|
180
182
|
], ProductCombinationSettingMutation.prototype, "linkProductCombination", null);
|
|
181
|
-
ProductCombinationSettingMutation = tslib_1.__decorate([
|
|
183
|
+
exports.ProductCombinationSettingMutation = ProductCombinationSettingMutation = tslib_1.__decorate([
|
|
182
184
|
(0, type_graphql_1.Resolver)(product_combination_setting_1.ProductCombinationSetting)
|
|
183
185
|
], ProductCombinationSettingMutation);
|
|
184
|
-
exports.ProductCombinationSettingMutation = ProductCombinationSettingMutation;
|
|
185
186
|
async function updateMultipleProductCombinationSetting(patches, context) {
|
|
186
187
|
const { domain, user, tx } = context.state;
|
|
187
188
|
let results = [];
|
|
@@ -205,5 +206,4 @@ async function updateMultipleProductCombinationSetting(patches, context) {
|
|
|
205
206
|
}
|
|
206
207
|
return results;
|
|
207
208
|
}
|
|
208
|
-
exports.updateMultipleProductCombinationSetting = updateMultipleProductCombinationSetting;
|
|
209
209
|
//# sourceMappingURL=product-combination-setting-mutation.js.map
|
package/dist-server/service/product-combination-setting/product-combination-setting-mutation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-combination-setting-mutation.js","sourceRoot":"","sources":["../../../server/service/product-combination-setting/product-combination-setting-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { In, SelectQueryBuilder } from 'typeorm'\n\nimport { ProductCombinationSetting } from './product-combination-setting'\nimport { NewProductCombinationSetting, ProductCombinationSettingPatch } from './product-combination-setting-type'\n\nconst debug = require('debug')('things-factory:product-base:productCombinationSetting')\n\n@Resolver(ProductCombinationSetting)\nexport class ProductCombinationSettingMutation {\n @Directive('@transaction')\n @Mutation(returns => ProductCombinationSetting, { description: 'To create new ProductCombinationSetting' })\n async createProductCombinationSetting(\n @Arg('productCombinationSetting') productCombinationSetting: NewProductCombinationSetting,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombinationSetting> {\n const { domain, user, tx } = context.state\n\n return await tx.getRepository(ProductCombinationSetting).save({\n ...(productCombinationSetting as any),\n domain,\n creator: user,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => ProductCombinationSetting, { description: 'To modify ProductCombinationSetting information' })\n async updateProductCombinationSetting(\n @Arg('id') id: string,\n @Arg('patch') patch: ProductCombinationSettingPatch,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombinationSetting> {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(ProductCombinationSetting)\n const productCombinationSetting = await repository.findOne({\n where: { id }\n })\n\n return await repository.save({\n ...productCombinationSetting,\n ...patch,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => [ProductCombinationSetting], {\n description: \"To modify multiple ProductCombinationSettings' information\"\n })\n async updateMultipleProductCombinationSetting(\n @Arg('patches', type => [ProductCombinationSettingPatch]) patches: ProductCombinationSettingPatch[],\n @Ctx() context: ResolverContext\n ): Promise<ProductCombinationSetting[]> {\n const { domain, user, tx } = context.state\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n const productCombinationSettingRepo = tx.getRepository(ProductCombinationSetting)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await productCombinationSettingRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const newRecord = _updateRecords[i]\n const productCombinationSetting = await productCombinationSettingRepo.findOneBy({ id: newRecord.id })\n\n const result = await productCombinationSettingRepo.save({\n ...productCombinationSetting,\n ...newRecord,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete ProductCombinationSetting' })\n async deleteProductCombinationSetting(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(ProductCombinationSetting).delete({ id })\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete multiple productCombinationSettings' })\n async deleteProductCombinationSettings(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(ProductCombinationSetting).delete({\n id: In(ids)\n })\n\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To link product combination for kitting process' })\n async linkProductCombination(\n @Arg('productCombinationId', type => String) productCombinationId: string,\n @Arg('patches', type => [ProductCombinationSettingPatch]) patches: ProductCombinationSettingPatch[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n try {\n const { domain, tx } = context.state\n\n const qb: SelectQueryBuilder<ProductCombinationSetting> = tx\n .getRepository(ProductCombinationSetting)\n .createQueryBuilder('pbs')\n .innerJoinAndSelect('pbs.product', 'prd')\n .innerJoinAndSelect('pbs.productDetail', 'pd')\n .innerJoinAndSelect('pbs.productCombination', 'pc')\n .where('pc.id = :productCombinationId', { productCombinationId })\n .andWhere('pc.domain_id = :domainId', { domainId: domain.id })\n\n const existingCombinationLink = await qb.getMany()\n\n let newCombinationLink: ProductCombinationSetting[] = patches.reduce((acc, curr) => {\n if (\n !existingCombinationLink.find(\n item => item.product.id === curr.product.id && item.productDetail.id === curr.productDetail.id\n )\n ) {\n acc.push({\n productCombination: { id: productCombinationId },\n product: { id: curr.product.id },\n productDetail: { id: curr.productDetail.id },\n qty: curr.qty,\n cuFlag: '+'\n })\n }\n // check if there is existing bundle link but changes in bundle qty\n else if (\n existingCombinationLink.find(\n item =>\n item.product.id === curr.product.id &&\n item.productDetail.id === curr.productDetail.id &&\n item.qty !== curr.qty\n )\n ) {\n acc.push({\n id: curr.id,\n productCombination: { id: productCombinationId },\n product: { id: curr.product.id },\n productDetail: { id: curr.productDetail.id },\n qty: curr.qty,\n cuFlag: 'M'\n })\n }\n return acc\n }, [])\n\n let removeCombinationLink: ProductCombinationSetting[] = existingCombinationLink.reduce((acc, curr) => {\n if (\n !patches.find(item => item.product.id == curr.product.id && item.productDetail.id == curr.productDetail.id)\n ) {\n acc.push({\n id: curr.id,\n productCombination: { id: productCombinationId },\n product: { id: curr.product.id },\n productDetail: { id: curr.productDetail.id },\n qty: curr.qty\n })\n }\n return acc\n }, [])\n\n if (newCombinationLink.length > 0) {\n await updateMultipleProductCombinationSetting(newCombinationLink, context)\n }\n\n if (removeCombinationLink.length > 0) {\n await tx.getRepository(ProductCombinationSetting).delete({\n id: In(removeCombinationLink.map(combinationLink => combinationLink.id))\n })\n }\n\n return true\n } catch (error) {\n debug('link-product-combination', error)\n throw error\n }\n }\n}\n\nexport async function updateMultipleProductCombinationSetting(patches: any, context: ResolverContext) {\n const { domain, user, tx } = context.state\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n const productCombinationSettingRepo = tx.getRepository(ProductCombinationSetting)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await productCombinationSettingRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const newRecord = _updateRecords[i]\n const productCombinationSetting = await productCombinationSettingRepo.findOneBy({ id: newRecord.id })\n\n const result = await productCombinationSettingRepo.save({\n ...productCombinationSetting,\n ...newRecord,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n}\n"]}
|
|
1
|
+
{"version":3,"file":"product-combination-setting-mutation.js","sourceRoot":"","sources":["../../../server/service/product-combination-setting/product-combination-setting-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { In, SelectQueryBuilder } from 'typeorm'\n\nimport { ProductCombinationSetting } from './product-combination-setting'\nimport { NewProductCombinationSetting, ProductCombinationSettingPatch } from './product-combination-setting-type'\n\nconst debug = require('debug')('things-factory:product-base:productCombinationSetting')\n\n@Resolver(ProductCombinationSetting)\nexport class ProductCombinationSettingMutation {\n @Directive('@transaction')\n @Mutation(returns => ProductCombinationSetting, { description: 'To create new ProductCombinationSetting' })\n async createProductCombinationSetting(\n @Arg('productCombinationSetting') productCombinationSetting: NewProductCombinationSetting,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombinationSetting> {\n const { domain, user, tx } = context.state\n\n return await tx.getRepository(ProductCombinationSetting).save({\n ...(productCombinationSetting as any),\n domain,\n creator: user,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => ProductCombinationSetting, { description: 'To modify ProductCombinationSetting information' })\n async updateProductCombinationSetting(\n @Arg('id') id: string,\n @Arg('patch') patch: ProductCombinationSettingPatch,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombinationSetting> {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(ProductCombinationSetting)\n const productCombinationSetting = await repository.findOne({\n where: { id }\n })\n\n return await repository.save({\n ...productCombinationSetting,\n ...patch,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => [ProductCombinationSetting], {\n description: \"To modify multiple ProductCombinationSettings' information\"\n })\n async updateMultipleProductCombinationSetting(\n @Arg('patches', type => [ProductCombinationSettingPatch]) patches: ProductCombinationSettingPatch[],\n @Ctx() context: ResolverContext\n ): Promise<ProductCombinationSetting[]> {\n const { domain, user, tx } = context.state\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n const productCombinationSettingRepo = tx.getRepository(ProductCombinationSetting)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await productCombinationSettingRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const newRecord = _updateRecords[i]\n const productCombinationSetting = await productCombinationSettingRepo.findOneBy({ id: newRecord.id })\n\n const result = await productCombinationSettingRepo.save({\n ...productCombinationSetting,\n ...newRecord,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete ProductCombinationSetting' })\n async deleteProductCombinationSetting(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(ProductCombinationSetting).delete({ id })\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete multiple productCombinationSettings' })\n async deleteProductCombinationSettings(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(ProductCombinationSetting).delete({\n id: In(ids)\n })\n\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To link product combination for kitting process' })\n async linkProductCombination(\n @Arg('productCombinationId', type => String) productCombinationId: string,\n @Arg('patches', type => [ProductCombinationSettingPatch]) patches: ProductCombinationSettingPatch[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n try {\n const { domain, tx } = context.state\n\n const qb: SelectQueryBuilder<ProductCombinationSetting> = tx\n .getRepository(ProductCombinationSetting)\n .createQueryBuilder('pbs')\n .innerJoinAndSelect('pbs.product', 'prd')\n .innerJoinAndSelect('pbs.productDetail', 'pd')\n .innerJoinAndSelect('pbs.productCombination', 'pc')\n .where('pc.id = :productCombinationId', { productCombinationId })\n .andWhere('pc.domain_id = :domainId', { domainId: domain.id })\n\n const existingCombinationLink = await qb.getMany()\n\n let newCombinationLink: ProductCombinationSetting[] = patches.reduce((acc, curr) => {\n if (\n !existingCombinationLink.find(\n item => item.product.id === curr.product.id && item.productDetail.id === curr.productDetail.id\n )\n ) {\n acc.push({\n productCombination: { id: productCombinationId },\n product: { id: curr.product.id },\n productDetail: { id: curr.productDetail.id },\n qty: curr.qty,\n cuFlag: '+'\n })\n }\n // check if there is existing bundle link but changes in bundle qty\n else if (\n existingCombinationLink.find(\n item =>\n item.product.id === curr.product.id &&\n item.productDetail.id === curr.productDetail.id &&\n item.qty !== curr.qty\n )\n ) {\n acc.push({\n id: curr.id,\n productCombination: { id: productCombinationId },\n product: { id: curr.product.id },\n productDetail: { id: curr.productDetail.id },\n qty: curr.qty,\n cuFlag: 'M'\n })\n }\n return acc\n }, [])\n\n let removeCombinationLink: ProductCombinationSetting[] = existingCombinationLink.reduce((acc, curr) => {\n if (\n !patches.find(item => item.product.id == curr.product.id && item.productDetail.id == curr.productDetail.id)\n ) {\n acc.push({\n id: curr.id,\n productCombination: { id: productCombinationId },\n product: { id: curr.product.id },\n productDetail: { id: curr.productDetail.id },\n qty: curr.qty\n })\n }\n return acc\n }, [])\n\n if (newCombinationLink.length > 0) {\n await updateMultipleProductCombinationSetting(newCombinationLink, context)\n }\n\n if (removeCombinationLink.length > 0) {\n await tx.getRepository(ProductCombinationSetting).delete({\n id: In(removeCombinationLink.map(combinationLink => combinationLink.id))\n })\n }\n\n return true\n } catch (error) {\n debug('link-product-combination', error)\n throw error\n }\n }\n}\n\nexport async function updateMultipleProductCombinationSetting(patches: any, context: ResolverContext) {\n const { domain, user, tx } = context.state\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n const productCombinationSettingRepo = tx.getRepository(ProductCombinationSetting)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await productCombinationSettingRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const newRecord = _updateRecords[i]\n const productCombinationSetting = await productCombinationSettingRepo.findOneBy({ id: newRecord.id })\n\n const result = await productCombinationSettingRepo.save({\n ...productCombinationSetting,\n ...newRecord,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n}\n"]}
|
package/dist-server/service/product-combination-setting/product-combination-setting-query.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ListParam } from '@things-factory/shell';
|
|
2
|
+
import { ProductCombination } from '../product-combination/product-combination';
|
|
3
|
+
import { ProductDetail } from '../product-detail/product-detail';
|
|
4
|
+
import { Product } from '../product/product';
|
|
5
|
+
import { ProductCombinationSetting } from './product-combination-setting';
|
|
6
|
+
import { ProductCombinationSettingList } from './product-combination-setting-type';
|
|
7
|
+
export declare class ProductCombinationSettingQuery {
|
|
8
|
+
productCombinationSetting(productCombinationId: string, context: ResolverContext): Promise<ProductCombinationSetting[]>;
|
|
9
|
+
productCombinationSettings(params: ListParam, context: ResolverContext): Promise<ProductCombinationSettingList>;
|
|
10
|
+
productCombinationSets(params: ListParam, context: ResolverContext): Promise<ProductCombinationSettingList>;
|
|
11
|
+
product(productCombinationSetting: ProductCombinationSetting): Promise<Product>;
|
|
12
|
+
productDetail(productCombinationSetting: ProductCombinationSetting): Promise<ProductDetail>;
|
|
13
|
+
productCombination(productCombinationSetting: ProductCombinationSetting): Promise<ProductCombination>;
|
|
14
|
+
}
|
package/dist-server/service/product-combination-setting/product-combination-setting-query.js
CHANGED
|
@@ -117,6 +117,7 @@ let ProductCombinationSettingQuery = class ProductCombinationSettingQuery {
|
|
|
117
117
|
return await (0, shell_1.getRepository)(product_combination_1.ProductCombination).findOneBy({ id: productCombinationSetting.productCombinationId });
|
|
118
118
|
}
|
|
119
119
|
};
|
|
120
|
+
exports.ProductCombinationSettingQuery = ProductCombinationSettingQuery;
|
|
120
121
|
tslib_1.__decorate([
|
|
121
122
|
(0, type_graphql_1.Query)(returns => product_combination_setting_1.ProductCombinationSetting, { description: 'To fetch a ProductCombinationSetting' }),
|
|
122
123
|
tslib_1.__param(0, (0, type_graphql_1.Arg)('productCombinationId')),
|
|
@@ -162,8 +163,7 @@ tslib_1.__decorate([
|
|
|
162
163
|
tslib_1.__metadata("design:paramtypes", [product_combination_setting_1.ProductCombinationSetting]),
|
|
163
164
|
tslib_1.__metadata("design:returntype", Promise)
|
|
164
165
|
], ProductCombinationSettingQuery.prototype, "productCombination", null);
|
|
165
|
-
ProductCombinationSettingQuery = tslib_1.__decorate([
|
|
166
|
+
exports.ProductCombinationSettingQuery = ProductCombinationSettingQuery = tslib_1.__decorate([
|
|
166
167
|
(0, type_graphql_1.Resolver)(product_combination_setting_1.ProductCombinationSetting)
|
|
167
168
|
], ProductCombinationSettingQuery);
|
|
168
|
-
exports.ProductCombinationSettingQuery = ProductCombinationSettingQuery;
|
|
169
169
|
//# sourceMappingURL=product-combination-setting-query.js.map
|
package/dist-server/service/product-combination-setting/product-combination-setting-query.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-combination-setting-query.js","sourceRoot":"","sources":["../../../server/service/product-combination-setting/product-combination-setting-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Args, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'\nimport { Brackets, SelectQueryBuilder } from 'typeorm'\n\nimport { Bizplace } from '@things-factory/biz-base'\nimport { buildCondition, buildQuery, convertListParams, Domain, getRepository, ListParam } from '@things-factory/shell'\n\nimport { ProductCombination } from '../product-combination/product-combination'\nimport { ProductDetail } from '../product-detail/product-detail'\nimport { Product } from '../product/product'\nimport { ProductCombinationSetting } from './product-combination-setting'\nimport { ProductCombinationSettingList } from './product-combination-setting-type'\n\n@Resolver(ProductCombinationSetting)\nexport class ProductCombinationSettingQuery {\n @Query(returns => ProductCombinationSetting, { description: 'To fetch a ProductCombinationSetting' })\n async productCombinationSetting(\n @Arg('productCombinationId') productCombinationId: string,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombinationSetting[]> {\n const productCombination: ProductCombination = await getRepository(ProductCombination).findOne({\n where: { id: productCombinationId },\n relations: ['productCombinationSetting']\n })\n\n const productCombinationSettings: ProductCombinationSetting[] = productCombination.productCombinationSettings\n\n return productCombinationSettings\n }\n\n @Query(returns => ProductCombinationSettingList, { description: 'To fetch multiple ProductCombinationSettings' })\n async productCombinationSettings(\n @Args() params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombinationSettingList> {\n const { domain } = context.state\n\n const convertedParams = convertListParams(params, { domain })\n const [items, total] = await getRepository(ProductCombinationSetting).findAndCount(convertedParams)\n\n return { items, total }\n }\n\n @Query(returns => ProductCombinationSettingList, { description: 'To fetch a set of product combinations' })\n async productCombinationSets(\n @Args() params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombinationSettingList> {\n const { domain } = context.state\n const page = params.pagination.page\n const limit = params.pagination.limit\n\n const filters = params.filters.filter(\n x => x.name !== 'product_info' && x.name !== 'productCombinationId' && x.name !== 'bizplace_id'\n )\n const bizplaceFilter = params.filters.find(x => x.name == 'bizplace_id')\n const productCombinationId = params.filters.find(x => x.name === 'productCombinationId')\n const productInfoFilter = params.filters.find(x => x.name === 'product_info')\n const productInfoColumns = ['sku', 'name', 'description']\n params.filters = [...filters]\n\n params.sortings = [\n { name: 'prd.sku' },\n { name: 'prdDet.gtin' },\n ...params.sortings.map(sorting => {\n const name = sorting.name.replace('product', '').toLowerCase()\n return {\n ...sorting,\n name\n }\n })\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 } /* CONFIRMME regarding TYPEORM - migrated correctly ? */,\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({\n where: { domain: { id: companyDomain.id } }\n })\n\n const bizplaceIds = [companyBizplace.id, foundBizplace.id]\n params.filters = [...filters, { name: 'bizplace_id', operator: 'in', value: [...new Set(bizplaceIds)] }]\n }\n } else {\n let bizplace: Bizplace = await getRepository(Bizplace).findOne({ where: { domain: { id: domain.id } } })\n params.filters = [...filters, { name: 'bizplace_id', operator: 'in', value: [bizplace.id] }]\n }\n\n const qb: SelectQueryBuilder<Product> = getRepository(Product).createQueryBuilder('prd')\n buildQuery(qb, params, context, {\n domainRef: false\n })\n\n qb.innerJoinAndSelect('product_details', 'prdDet', 'prdDet.product_id = prd.id')\n qb.leftJoinAndSelect(\n 'product_combination_settings',\n 'pcs',\n `pcs.product_id = prd.id and pcs.product_detail_id = prdDet.id ${\n productCombinationId && productCombinationId.operator === 'noteq' ? 'and pcs.product_detail_id = null' : ''\n }`\n )\n qb.leftJoinAndSelect('pcs.productCombination', 'pc')\n\n if (productInfoFilter) {\n qb.andWhere(\n new Brackets(qb2 => {\n productInfoColumns.forEach(filter => {\n const condition = buildCondition(\n qb.alias,\n filter,\n productInfoFilter.operator,\n productInfoFilter.value,\n productInfoFilter.relation,\n Object.keys(qb.getParameters()).length\n )\n\n qb2.orWhere(condition.clause, condition.parameters)\n })\n })\n )\n }\n\n if (productCombinationId && productCombinationId.operator === 'eq') {\n qb.andWhere('pc.id = :combinationId::uuid', {\n combinationId: productCombinationId.value\n })\n }\n\n let productCombinationSets = await qb\n .offset((page - 1) * limit)\n .limit(limit)\n .getRawMany()\n\n const items = productCombinationSets.map(item => {\n return {\n id: item.pcs_id,\n productDetailId: item.prdDet_id,\n gtin: item.prdDet_gtin,\n packingType: item.prdDet_packing_type,\n packingSize: item.prdDet_packing_size,\n productId: item.prd_id,\n productSku: item.prd_sku,\n productName: item.prd_name,\n productDescription: item.prd_description,\n productType: item.prd_type,\n combinationId: item.pc_id,\n qty: item.pcs_qty\n }\n })\n\n const total = await qb.getCount()\n\n return { items, total }\n }\n\n @FieldResolver(type => Product)\n async product(@Root() productCombinationSetting: ProductCombinationSetting): Promise<Product> {\n return await getRepository(Product).findOneBy({ id: productCombinationSetting.productId })\n }\n\n @FieldResolver(type => ProductDetail)\n async productDetail(@Root() productCombinationSetting: ProductCombinationSetting): Promise<ProductDetail> {\n return await getRepository(ProductDetail).findOneBy({ id: productCombinationSetting.productDetailId })\n }\n\n @FieldResolver(type => ProductCombination)\n async productCombination(@Root() productCombinationSetting: ProductCombinationSetting): Promise<ProductCombination> {\n return await getRepository(ProductCombination).findOneBy({ id: productCombinationSetting.productCombinationId })\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"product-combination-setting-query.js","sourceRoot":"","sources":["../../../server/service/product-combination-setting/product-combination-setting-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Args, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'\nimport { Brackets, SelectQueryBuilder } from 'typeorm'\n\nimport { Bizplace } from '@things-factory/biz-base'\nimport { buildCondition, buildQuery, convertListParams, Domain, getRepository, ListParam } from '@things-factory/shell'\n\nimport { ProductCombination } from '../product-combination/product-combination'\nimport { ProductDetail } from '../product-detail/product-detail'\nimport { Product } from '../product/product'\nimport { ProductCombinationSetting } from './product-combination-setting'\nimport { ProductCombinationSettingList } from './product-combination-setting-type'\n\n@Resolver(ProductCombinationSetting)\nexport class ProductCombinationSettingQuery {\n @Query(returns => ProductCombinationSetting, { description: 'To fetch a ProductCombinationSetting' })\n async productCombinationSetting(\n @Arg('productCombinationId') productCombinationId: string,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombinationSetting[]> {\n const productCombination: ProductCombination = await getRepository(ProductCombination).findOne({\n where: { id: productCombinationId },\n relations: ['productCombinationSetting']\n })\n\n const productCombinationSettings: ProductCombinationSetting[] = productCombination.productCombinationSettings\n\n return productCombinationSettings\n }\n\n @Query(returns => ProductCombinationSettingList, { description: 'To fetch multiple ProductCombinationSettings' })\n async productCombinationSettings(\n @Args() params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombinationSettingList> {\n const { domain } = context.state\n\n const convertedParams = convertListParams(params, { domain })\n const [items, total] = await getRepository(ProductCombinationSetting).findAndCount(convertedParams)\n\n return { items, total }\n }\n\n @Query(returns => ProductCombinationSettingList, { description: 'To fetch a set of product combinations' })\n async productCombinationSets(\n @Args() params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ProductCombinationSettingList> {\n const { domain } = context.state\n const page = params.pagination.page\n const limit = params.pagination.limit\n\n const filters = params.filters.filter(\n x => x.name !== 'product_info' && x.name !== 'productCombinationId' && x.name !== 'bizplace_id'\n )\n const bizplaceFilter = params.filters.find(x => x.name == 'bizplace_id')\n const productCombinationId = params.filters.find(x => x.name === 'productCombinationId')\n const productInfoFilter = params.filters.find(x => x.name === 'product_info')\n const productInfoColumns = ['sku', 'name', 'description']\n params.filters = [...filters]\n\n params.sortings = [\n { name: 'prd.sku' },\n { name: 'prdDet.gtin' },\n ...params.sortings.map(sorting => {\n const name = sorting.name.replace('product', '').toLowerCase()\n return {\n ...sorting,\n name\n }\n })\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 } /* CONFIRMME regarding TYPEORM - migrated correctly ? */,\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({\n where: { domain: { id: companyDomain.id } }\n })\n\n const bizplaceIds = [companyBizplace.id, foundBizplace.id]\n params.filters = [...filters, { name: 'bizplace_id', operator: 'in', value: [...new Set(bizplaceIds)] }]\n }\n } else {\n let bizplace: Bizplace = await getRepository(Bizplace).findOne({ where: { domain: { id: domain.id } } })\n params.filters = [...filters, { name: 'bizplace_id', operator: 'in', value: [bizplace.id] }]\n }\n\n const qb: SelectQueryBuilder<Product> = getRepository(Product).createQueryBuilder('prd')\n buildQuery(qb, params, context, {\n domainRef: false\n })\n\n qb.innerJoinAndSelect('product_details', 'prdDet', 'prdDet.product_id = prd.id')\n qb.leftJoinAndSelect(\n 'product_combination_settings',\n 'pcs',\n `pcs.product_id = prd.id and pcs.product_detail_id = prdDet.id ${\n productCombinationId && productCombinationId.operator === 'noteq' ? 'and pcs.product_detail_id = null' : ''\n }`\n )\n qb.leftJoinAndSelect('pcs.productCombination', 'pc')\n\n if (productInfoFilter) {\n qb.andWhere(\n new Brackets(qb2 => {\n productInfoColumns.forEach(filter => {\n const condition = buildCondition(\n qb.alias,\n filter,\n productInfoFilter.operator,\n productInfoFilter.value,\n productInfoFilter.relation,\n Object.keys(qb.getParameters()).length\n )\n\n qb2.orWhere(condition.clause, condition.parameters)\n })\n })\n )\n }\n\n if (productCombinationId && productCombinationId.operator === 'eq') {\n qb.andWhere('pc.id = :combinationId::uuid', {\n combinationId: productCombinationId.value\n })\n }\n\n let productCombinationSets = await qb\n .offset((page - 1) * limit)\n .limit(limit)\n .getRawMany()\n\n const items = productCombinationSets.map(item => {\n return {\n id: item.pcs_id,\n productDetailId: item.prdDet_id,\n gtin: item.prdDet_gtin,\n packingType: item.prdDet_packing_type,\n packingSize: item.prdDet_packing_size,\n productId: item.prd_id,\n productSku: item.prd_sku,\n productName: item.prd_name,\n productDescription: item.prd_description,\n productType: item.prd_type,\n combinationId: item.pc_id,\n qty: item.pcs_qty\n }\n })\n\n const total = await qb.getCount()\n\n return { items, total }\n }\n\n @FieldResolver(type => Product)\n async product(@Root() productCombinationSetting: ProductCombinationSetting): Promise<Product> {\n return await getRepository(Product).findOneBy({ id: productCombinationSetting.productId })\n }\n\n @FieldResolver(type => ProductDetail)\n async productDetail(@Root() productCombinationSetting: ProductCombinationSetting): Promise<ProductDetail> {\n return await getRepository(ProductDetail).findOneBy({ id: productCombinationSetting.productDetailId })\n }\n\n @FieldResolver(type => ProductCombination)\n async productCombination(@Root() productCombinationSetting: ProductCombinationSetting): Promise<ProductCombination> {\n return await getRepository(ProductCombination).findOneBy({ id: productCombinationSetting.productCombinationId })\n }\n}\n"]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ObjectRef } from '@things-factory/shell';
|
|
2
|
+
import { ProductCombinationSetting } from './product-combination-setting';
|
|
3
|
+
export declare class NewProductCombinationSetting {
|
|
4
|
+
name: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare class ProductCombinationSettingPatch {
|
|
8
|
+
id?: string;
|
|
9
|
+
product?: ObjectRef;
|
|
10
|
+
productDetail?: ObjectRef;
|
|
11
|
+
productCombination?: ObjectRef;
|
|
12
|
+
qty: number;
|
|
13
|
+
cuFlag?: string;
|
|
14
|
+
}
|
|
15
|
+
export declare class ProductCombinationSettingList {
|
|
16
|
+
items: ProductCombinationSetting[];
|
|
17
|
+
total: number;
|
|
18
|
+
}
|