@things-factory/product-base 9.0.0-beta.8 → 9.0.0

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 (36) hide show
  1. package/dist-server/service/product/product-mutation.js +49 -27
  2. package/dist-server/service/product/product-mutation.js.map +1 -1
  3. package/dist-server/service/product/product-query.js +12 -8
  4. package/dist-server/service/product/product-query.js.map +1 -1
  5. package/dist-server/service/product/validate-product.js +1 -1
  6. package/dist-server/service/product/validate-product.js.map +1 -1
  7. package/dist-server/service/product-bundle/product-bundle-mutation.js +31 -8
  8. package/dist-server/service/product-bundle/product-bundle-mutation.js.map +1 -1
  9. package/dist-server/service/product-bundle/product-bundle-query.js +3 -1
  10. package/dist-server/service/product-bundle/product-bundle-query.js.map +1 -1
  11. package/dist-server/service/product-bundle-setting/product-bundle-setting-mutation.js +9 -4
  12. package/dist-server/service/product-bundle-setting/product-bundle-setting-mutation.js.map +1 -1
  13. package/dist-server/service/product-bundle-setting/product-bundle-setting-query.js +31 -5
  14. package/dist-server/service/product-bundle-setting/product-bundle-setting-query.js.map +1 -1
  15. package/dist-server/service/product-combination/product-combination-mutation.js +33 -9
  16. package/dist-server/service/product-combination/product-combination-mutation.js.map +1 -1
  17. package/dist-server/service/product-combination/product-combination-query.js +4 -1
  18. package/dist-server/service/product-combination/product-combination-query.js.map +1 -1
  19. package/dist-server/service/product-combination-setting/product-combination-setting-mutation.js +37 -10
  20. package/dist-server/service/product-combination-setting/product-combination-setting-mutation.js.map +1 -1
  21. package/dist-server/service/product-combination-setting/product-combination-setting-query.js +6 -4
  22. package/dist-server/service/product-combination-setting/product-combination-setting-query.js.map +1 -1
  23. package/dist-server/service/product-detail/product-detail-mutation.js +74 -33
  24. package/dist-server/service/product-detail/product-detail-mutation.js.map +1 -1
  25. package/dist-server/service/product-detail/product-detail-query.js +18 -10
  26. package/dist-server/service/product-detail/product-detail-query.js.map +1 -1
  27. package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-mutation.js +22 -5
  28. package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-mutation.js.map +1 -1
  29. package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-query.js +8 -1
  30. package/dist-server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-query.js.map +1 -1
  31. package/dist-server/service/product-set/product-set-mutation.js +25 -7
  32. package/dist-server/service/product-set/product-set-mutation.js.map +1 -1
  33. package/dist-server/service/product-set/product-set-query.js +4 -1
  34. package/dist-server/service/product-set/product-set-query.js.map +1 -1
  35. package/dist-server/tsconfig.tsbuildinfo +1 -1
  36. package/package.json +5 -5
@@ -15,7 +15,11 @@ let ProductDetailBizplaceSettingMutation = class ProductDetailBizplaceSettingMut
15
15
  const productDetailBizplaceSetting = await repository.findOne({
16
16
  where: { domain: { id: domain.id }, name }
17
17
  });
18
- return await repository.save(Object.assign(Object.assign(Object.assign({}, productDetailBizplaceSetting), patch), { updater: user }));
18
+ return await repository.save({
19
+ ...productDetailBizplaceSetting,
20
+ ...patch,
21
+ updater: user
22
+ });
19
23
  }
20
24
  async updateMultipleProductDetailBizplaceSetting(productId, patches, context) {
21
25
  const { domain, user, tx } = context.state;
@@ -29,8 +33,15 @@ let ProductDetailBizplaceSettingMutation = class ProductDetailBizplaceSettingMut
29
33
  delete newRecord.id;
30
34
  const productDetail = await tx.getRepository(product_detail_1.ProductDetail).findOneBy({ id: newRecord.productDetail.id });
31
35
  if (productDetail) {
32
- const result = await productDetailBizplaceSettingRepo.save(Object.assign(Object.assign({}, newRecord), { name: productDetail.gtin, productDetail, domain: domain, creator: user, updater: user }));
33
- results.push(Object.assign(Object.assign({}, result), { cuFlag: '+' }));
36
+ const result = await productDetailBizplaceSettingRepo.save({
37
+ ...newRecord,
38
+ name: productDetail.gtin,
39
+ productDetail,
40
+ domain: domain,
41
+ creator: user,
42
+ updater: user
43
+ });
44
+ results.push({ ...result, cuFlag: '+' });
34
45
  }
35
46
  }
36
47
  }
@@ -42,8 +53,14 @@ let ProductDetailBizplaceSettingMutation = class ProductDetailBizplaceSettingMut
42
53
  id: newRecord.id
43
54
  });
44
55
  const productDetail = await tx.getRepository(product_detail_1.ProductDetail).findOneBy({ id: newRecord.productDetail.id });
45
- const result = await productDetailBizplaceSettingRepo.save(Object.assign(Object.assign(Object.assign({}, productDetailBizplaceSetting), newRecord), { name: productDetail.gtin, productDetail, updater: user }));
46
- results.push(Object.assign(Object.assign({}, result), { cuFlag: 'M' }));
56
+ const result = await productDetailBizplaceSettingRepo.save({
57
+ ...productDetailBizplaceSetting,
58
+ ...newRecord,
59
+ name: productDetail.gtin,
60
+ productDetail,
61
+ updater: user
62
+ });
63
+ results.push({ ...result, cuFlag: 'M' });
47
64
  }
48
65
  }
49
66
  return results;
@@ -1 +1 @@
1
- {"version":3,"file":"product-detail-bizplace-setting-mutation.js","sourceRoot":"","sources":["../../../server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { In } from 'typeorm'\n\nimport { getRepository } from '@things-factory/shell'\n\nimport { ProductDetail } from '../product-detail/product-detail'\nimport { ProductDetailBizplaceSetting } from './product-detail-bizplace-setting'\nimport { ProductDetailBizplaceSettingPatch } from './product-detail-bizplace-setting-types'\n\n@Resolver(ProductDetailBizplaceSetting)\nexport class ProductDetailBizplaceSettingMutation {\n @Mutation(returns => ProductDetailBizplaceSetting)\n async updateProductDetailBizplaceSetting(\n @Arg('name') name: string,\n @Arg('patch') patch: ProductDetailBizplaceSettingPatch,\n @Ctx() context: ResolverContext\n ): Promise<ProductDetailBizplaceSetting> {\n const { domain, user } = context.state\n\n const repository = getRepository(ProductDetailBizplaceSetting)\n const productDetailBizplaceSetting = await repository.findOne({\n where: { domain: { id: domain.id }, name }\n })\n\n return await repository.save({\n ...productDetailBizplaceSetting,\n ...patch,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => [ProductDetailBizplaceSetting])\n async updateMultipleProductDetailBizplaceSetting(\n @Arg('productId') productId: string,\n @Arg('patches', type => [ProductDetailBizplaceSettingPatch]) patches: ProductDetailBizplaceSettingPatch[],\n @Ctx() context: ResolverContext\n ): Promise<ProductDetailBizplaceSettingPatch[]> {\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\n const productDetailBizplaceSettingRepo = tx.getRepository(ProductDetailBizplaceSetting)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n delete newRecord.id\n\n const productDetail = await tx.getRepository(ProductDetail).findOneBy({ id: newRecord.productDetail.id })\n\n if (productDetail) {\n const result = await productDetailBizplaceSettingRepo.save({\n ...newRecord,\n name: productDetail.gtin,\n productDetail,\n domain: domain,\n creator: user,\n updater: user\n })\n results.push({ ...result, cuFlag: '+' })\n }\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const newRecord = _updateRecords[i]\n const productDetailBizplaceSetting = await productDetailBizplaceSettingRepo.findOneBy({\n domain: { id: domain.id },\n id: newRecord.id\n })\n const productDetail = await tx.getRepository(ProductDetail).findOneBy({ id: newRecord.productDetail.id })\n\n const result = await productDetailBizplaceSettingRepo.save({\n ...productDetailBizplaceSetting,\n ...newRecord,\n name: productDetail.gtin,\n productDetail,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Mutation(returns => Boolean)\n async deleteProductDetailBizplaceSetting(\n @Arg('name') name: string,\n @Ctx() context: ResolverContext\n ): Promise<Boolean> {\n const { domain } = context.state\n\n await getRepository(ProductDetailBizplaceSetting).delete({ domain: { id: domain.id }, name })\n\n return true\n }\n\n @Mutation(returns => Boolean)\n async deleteProductDetailBizplaceSettings(\n @Arg('names', type => [String]) names: string[],\n @Ctx() context: ResolverContext\n ): Promise<Boolean> {\n const { domain } = context.state\n\n await getRepository(ProductDetailBizplaceSetting).delete({\n domain: { id: domain.id },\n name: In(names)\n })\n\n return true\n }\n}\n"]}
1
+ {"version":3,"file":"product-detail-bizplace-setting-mutation.js","sourceRoot":"","sources":["../../../server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { In } from 'typeorm'\n\nimport { getRepository } from '@things-factory/shell'\n\nimport { ProductDetail } from '../product-detail/product-detail'\nimport { ProductDetailBizplaceSetting } from './product-detail-bizplace-setting'\nimport { ProductDetailBizplaceSettingPatch } from './product-detail-bizplace-setting-types'\n\n@Resolver(ProductDetailBizplaceSetting)\nexport class ProductDetailBizplaceSettingMutation {\n @Mutation(returns => ProductDetailBizplaceSetting)\n async updateProductDetailBizplaceSetting(\n @Arg('name') name: string,\n @Arg('patch') patch: ProductDetailBizplaceSettingPatch,\n @Ctx() context: ResolverContext\n ): Promise<ProductDetailBizplaceSetting> {\n const { domain, user } = context.state\n\n const repository = getRepository(ProductDetailBizplaceSetting)\n const productDetailBizplaceSetting = await repository.findOne({\n where: { domain: { id: domain.id }, name }\n })\n\n return await repository.save({\n ...productDetailBizplaceSetting,\n ...patch,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => [ProductDetailBizplaceSetting])\n async updateMultipleProductDetailBizplaceSetting(\n @Arg('productId') productId: string,\n @Arg('patches', type => [ProductDetailBizplaceSettingPatch]) patches: ProductDetailBizplaceSettingPatch[],\n @Ctx() context: ResolverContext\n ): Promise<ProductDetailBizplaceSettingPatch[]> {\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\n const productDetailBizplaceSettingRepo = tx.getRepository(ProductDetailBizplaceSetting)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n delete newRecord.id\n\n const productDetail = await tx.getRepository(ProductDetail).findOneBy({ id: newRecord.productDetail.id })\n\n if (productDetail) {\n const result = await productDetailBizplaceSettingRepo.save({\n ...newRecord,\n name: productDetail.gtin,\n productDetail,\n domain: domain,\n creator: user,\n updater: user\n })\n results.push({ ...result, cuFlag: '+' })\n }\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const newRecord = _updateRecords[i]\n const productDetailBizplaceSetting = await productDetailBizplaceSettingRepo.findOneBy({\n domain: { id: domain.id },\n id: newRecord.id\n })\n const productDetail = await tx.getRepository(ProductDetail).findOneBy({ id: newRecord.productDetail.id })\n\n const result = await productDetailBizplaceSettingRepo.save({\n ...productDetailBizplaceSetting,\n ...newRecord,\n name: productDetail.gtin,\n productDetail,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Mutation(returns => Boolean)\n async deleteProductDetailBizplaceSetting(\n @Arg('name') name: string,\n @Ctx() context: ResolverContext\n ): Promise<Boolean> {\n const { domain } = context.state\n\n await getRepository(ProductDetailBizplaceSetting).delete({ domain: { id: domain.id }, name })\n\n return true\n }\n\n @Mutation(returns => Boolean)\n async deleteProductDetailBizplaceSettings(\n @Arg('names', type => [String]) names: string[],\n @Ctx() context: ResolverContext\n ): Promise<Boolean> {\n const { domain } = context.state\n\n await getRepository(ProductDetailBizplaceSetting).delete({\n domain: { id: domain.id },\n name: In(names)\n })\n\n return true\n }\n}\n"]}
@@ -32,7 +32,14 @@ let ProductDetailBizplaceSettingQuery = class ProductDetailBizplaceSettingQuery
32
32
  return {
33
33
  items: items.map(itm => {
34
34
  let productDetailBizplaceSetting = itm.productDetailBizplaceSettings[0];
35
- return Object.assign({ requirePacking: false, bufferQty: 0, minQty: 0, maxQty: 0, productDetail: itm }, productDetailBizplaceSetting);
35
+ return {
36
+ requirePacking: false,
37
+ bufferQty: 0,
38
+ minQty: 0,
39
+ maxQty: 0,
40
+ productDetail: itm,
41
+ ...productDetailBizplaceSetting
42
+ };
36
43
  }),
37
44
  total
38
45
  };
@@ -1 +1 @@
1
- {"version":3,"file":"product-detail-bizplace-setting-query.js","sourceRoot":"","sources":["../../../server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Args, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'\n\nimport { User } from '@things-factory/auth-base'\nimport { buildQuery, Domain, getRepository, ListParam } from '@things-factory/shell'\n\nimport { ProductDetail } from '../product-detail/product-detail'\nimport { ProductDetailBizplaceSetting } from './product-detail-bizplace-setting'\nimport { ProductDetailBizplaceSettingList } from './product-detail-bizplace-setting-types'\n\n@Resolver(ProductDetailBizplaceSetting)\nexport class ProductDetailBizplaceSettingQuery {\n @Query(returns => ProductDetailBizplaceSetting)\n async productDetailBizplaceSetting(\n @Arg('name') name: string,\n @Ctx() context: ResolverContext\n ): Promise<ProductDetailBizplaceSetting> {\n const { domain } = context.state\n const repository = getRepository(ProductDetailBizplaceSetting)\n\n return await repository.findOne({\n where: { domain: { id: domain.id }, name }\n })\n }\n\n @Query(returns => ProductDetailBizplaceSettingList)\n async productDetailBizplaceSettings(\n @Args(type => ListParam) params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ProductDetailBizplaceSettingList> {\n const { domain, user: updater }: { domain: Domain; user: User } = context.state\n\n const queryBuilder = getRepository(ProductDetail).createQueryBuilder('productDetail')\n\n buildQuery(queryBuilder, params, context, {\n domainRef: false\n })\n\n let qb = queryBuilder\n .leftJoinAndSelect(\n 'productDetail.productDetailBizplaceSettings',\n 'pdbs',\n '\"pdbs\".\"product_detail_id\"=\"productDetail\".\"id\"'\n )\n .leftJoinAndSelect('productDetail.domain', 'domain')\n .leftJoinAndSelect('productDetail.creator', 'creator')\n .leftJoinAndSelect('productDetail.updater', 'updater')\n\n // qb.andWhere('pdbs.bizplace_id = :bizplaceId', { bizplaceId: bizplace.id })\n\n const [items, total] = await qb.getManyAndCount()\n\n return {\n items: items.map(itm => {\n let productDetailBizplaceSetting = itm.productDetailBizplaceSettings[0]\n\n return {\n requirePacking: false,\n bufferQty: 0,\n minQty: 0,\n maxQty: 0,\n productDetail: itm,\n ...productDetailBizplaceSetting\n }\n }),\n total\n }\n\n // const convertedParams = convertListParams(params)\n // const [items, total] = await getRepository(ProductDetailBizplaceSettingEntity).findAndCount({\n // ...convertedParams\n // })\n\n // return { items, total }\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() productDetailBizplaceSetting: ProductDetailBizplaceSetting): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: productDetailBizplaceSetting.domain.id })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() productDetailBizplaceSetting: ProductDetailBizplaceSetting): Promise<User> {\n return await getRepository(User).findOneBy({ id: productDetailBizplaceSetting.updater.id })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() productDetailBizplaceSetting: ProductDetailBizplaceSetting): Promise<User> {\n return await getRepository(User).findOneBy({ id: productDetailBizplaceSetting.creator.id })\n }\n}\n"]}
1
+ {"version":3,"file":"product-detail-bizplace-setting-query.js","sourceRoot":"","sources":["../../../server/service/product-detail-bizplace-setting/product-detail-bizplace-setting-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Args, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'\n\nimport { User } from '@things-factory/auth-base'\nimport { buildQuery, Domain, getRepository, ListParam } from '@things-factory/shell'\n\nimport { ProductDetail } from '../product-detail/product-detail'\nimport { ProductDetailBizplaceSetting } from './product-detail-bizplace-setting'\nimport { ProductDetailBizplaceSettingList } from './product-detail-bizplace-setting-types'\n\n@Resolver(ProductDetailBizplaceSetting)\nexport class ProductDetailBizplaceSettingQuery {\n @Query(returns => ProductDetailBizplaceSetting)\n async productDetailBizplaceSetting(\n @Arg('name') name: string,\n @Ctx() context: ResolverContext\n ): Promise<ProductDetailBizplaceSetting> {\n const { domain } = context.state\n const repository = getRepository(ProductDetailBizplaceSetting)\n\n return await repository.findOne({\n where: { domain: { id: domain.id }, name }\n })\n }\n\n @Query(returns => ProductDetailBizplaceSettingList)\n async productDetailBizplaceSettings(\n @Args(type => ListParam) params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ProductDetailBizplaceSettingList> {\n const { domain, user: updater }: { domain: Domain; user: User } = context.state\n\n const queryBuilder = getRepository(ProductDetail).createQueryBuilder('productDetail')\n\n buildQuery(queryBuilder, params, context, {\n domainRef: false\n })\n\n let qb = queryBuilder\n .leftJoinAndSelect(\n 'productDetail.productDetailBizplaceSettings',\n 'pdbs',\n '\"pdbs\".\"product_detail_id\"=\"productDetail\".\"id\"'\n )\n .leftJoinAndSelect('productDetail.domain', 'domain')\n .leftJoinAndSelect('productDetail.creator', 'creator')\n .leftJoinAndSelect('productDetail.updater', 'updater')\n\n // qb.andWhere('pdbs.bizplace_id = :bizplaceId', { bizplaceId: bizplace.id })\n\n const [items, total] = await qb.getManyAndCount()\n\n return {\n items: items.map(itm => {\n let productDetailBizplaceSetting = itm.productDetailBizplaceSettings[0]\n\n return {\n requirePacking: false,\n bufferQty: 0,\n minQty: 0,\n maxQty: 0,\n productDetail: itm,\n ...productDetailBizplaceSetting\n }\n }),\n total\n }\n\n // const convertedParams = convertListParams(params)\n // const [items, total] = await getRepository(ProductDetailBizplaceSettingEntity).findAndCount({\n // ...convertedParams\n // })\n\n // return { items, total }\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() productDetailBizplaceSetting: ProductDetailBizplaceSetting): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: productDetailBizplaceSetting.domain.id })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() productDetailBizplaceSetting: ProductDetailBizplaceSetting): Promise<User> {\n return await getRepository(User).findOneBy({ id: productDetailBizplaceSetting.updater.id })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() productDetailBizplaceSetting: ProductDetailBizplaceSetting): Promise<User> {\n return await getRepository(User).findOneBy({ id: productDetailBizplaceSetting.creator.id })\n }\n}\n"]}
@@ -25,14 +25,14 @@ let ProductSetMutation = class ProductSetMutation {
25
25
  for (let i = 0; i < _createRecords.length; i++) {
26
26
  const patch = _createRecords[i];
27
27
  const result = await createProductSet(patch, context);
28
- results.push(Object.assign(Object.assign({}, result), { cuFlag: '+' }));
28
+ results.push({ ...result, cuFlag: '+' });
29
29
  }
30
30
  }
31
31
  if (_updateRecords.length > 0) {
32
32
  for (let i = 0; i < _updateRecords.length; i++) {
33
33
  const patch = _updateRecords[i];
34
34
  const result = await updateProductSet(patch.id, patch, context);
35
- results.push(Object.assign(Object.assign({}, result), { cuFlag: 'M' }));
35
+ results.push({ ...result, cuFlag: 'M' });
36
36
  }
37
37
  }
38
38
  return results;
@@ -41,7 +41,11 @@ let ProductSetMutation = class ProductSetMutation {
41
41
  const { tx, user } = context.state;
42
42
  const productSetRepo = tx.getRepository(product_set_1.ProductSet);
43
43
  const productSet = await productSetRepo.findOneBy({ id });
44
- await productSetRepo.save(Object.assign(Object.assign({}, productSet), { status: constants_1.PRODUCT_SET_STATUS.DELETED, updater: user }));
44
+ await productSetRepo.save({
45
+ ...productSet,
46
+ status: constants_1.PRODUCT_SET_STATUS.DELETED,
47
+ updater: user
48
+ });
45
49
  return true;
46
50
  }
47
51
  async deleteProductSets(ids, context) {
@@ -51,8 +55,12 @@ let ProductSetMutation = class ProductSetMutation {
51
55
  let productSets = productSetRepo.findByIds(ids);
52
56
  for (let i = 0; i < (await productSets).length; i++) {
53
57
  const productSet = productSets[i];
54
- const result = await productSetRepo.save(Object.assign(Object.assign({}, productSet), { status: constants_1.PRODUCT_SET_STATUS.DELETED, updater: user }));
55
- results.push(Object.assign({}, result));
58
+ const result = await productSetRepo.save({
59
+ ...productSet,
60
+ status: constants_1.PRODUCT_SET_STATUS.DELETED,
61
+ updater: user
62
+ });
63
+ results.push({ ...result });
56
64
  }
57
65
  return true;
58
66
  }
@@ -123,13 +131,23 @@ async function createProductSet(productSet, context) {
123
131
  // bizplace = await bizplaceRepo.findOne({ where: { name: domain.name } })
124
132
  // }
125
133
  bizplace = await bizplaceRepo.findOne({ where: { name: domain.name } });
126
- return await productSetRepo.save(Object.assign(Object.assign({}, productSet), { code: utils_1.ProductUtil.productSetCode(), bizplace, creator: user, updater: user }));
134
+ return await productSetRepo.save({
135
+ ...productSet,
136
+ code: utils_1.ProductUtil.productSetCode(),
137
+ bizplace,
138
+ creator: user,
139
+ updater: user
140
+ });
127
141
  }
128
142
  async function updateProductSet(id, patch, context) {
129
143
  const { user, tx } = context.state;
130
144
  const bizplaceRepo = tx.getRepository(biz_base_1.Bizplace);
131
145
  const productRepo = tx.getRepository(product_set_1.ProductSet);
132
146
  const productSet = await productRepo.findOneBy({ id });
133
- return productRepo.save(Object.assign(Object.assign(Object.assign({}, productSet), patch), { updater: user }));
147
+ return productRepo.save({
148
+ ...productSet,
149
+ ...patch,
150
+ updater: user
151
+ });
134
152
  }
135
153
  //# sourceMappingURL=product-set-mutation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"product-set-mutation.js","sourceRoot":"","sources":["../../../server/service/product-set/product-set-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { Repository } from 'typeorm'\n\nimport { Bizplace } from '@things-factory/biz-base'\n\nimport { PRODUCT_SET_STATUS } from '../../constants'\nimport { ProductUtil } from '../../utils'\nimport { ProductSet } from './product-set'\nimport { NewProductSet, ProductSetPatch } from './product-set-types'\n\n@Resolver(ProductSet)\nexport class ProductSetMutation {\n @Directive('@privilege(category: \"order\", privilege: \"mutation\")')\n @Directive('@transaction')\n @Mutation(returns => ProductSet)\n async createProductSet(\n @Arg('productSet') productSet: NewProductSet,\n @Ctx() context: ResolverContext\n ): Promise<ProductSet> {\n return await createProductSet(productSet, context)\n }\n\n @Directive('@privilege(category: \"order\", privilege: \"mutation\")')\n @Directive('@transaction')\n @Mutation(returns => ProductSet)\n async updateProductSet(\n @Arg('id') id: string,\n @Arg('patch') patch: ProductSetPatch,\n @Ctx() context: ResolverContext\n ): Promise<ProductSet> {\n return await updateProductSet(id, patch, context)\n }\n\n @Directive('@privilege(category: \"order\", privilege: \"mutation\")')\n @Directive('@transaction')\n @Mutation(returns => [ProductSet])\n async updateMultipleProductSet(\n @Arg('patches', type => [ProductSetPatch]) patches: ProductSetPatch[],\n @Ctx() context: ResolverContext\n ): Promise<ProductSet[]> {\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\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const patch = _createRecords[i]\n const result = await createProductSet(patch as NewProductSet, context)\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const patch: ProductSetPatch = _updateRecords[i]\n const result = await updateProductSet(patch.id, patch, context)\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@privilege(category: \"order\", privilege: \"mutation\")')\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async deleteProductSet(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<Boolean> {\n const { tx, user } = context.state\n const productSetRepo: Repository<ProductSet> = tx.getRepository(ProductSet)\n const productSet = await productSetRepo.findOneBy({ id })\n\n await productSetRepo.save({\n ...productSet,\n status: PRODUCT_SET_STATUS.DELETED,\n updater: user\n })\n\n return true\n }\n\n @Directive('@privilege(category: \"order\", privilege: \"mutation\")')\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async deleteProductSets(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<Boolean> {\n const { tx, user } = context.state\n const productSetRepo = tx.getRepository(ProductSet)\n\n let results = []\n let productSets = productSetRepo.findByIds(ids)\n\n for (let i = 0; i < (await productSets).length; i++) {\n const productSet = productSets[i]\n\n const result = await productSetRepo.save({\n ...productSet,\n status: PRODUCT_SET_STATUS.DELETED,\n updater: user\n })\n\n results.push({ ...result })\n }\n\n return true\n }\n}\n\nexport async function createProductSet(productSet: NewProductSet, context: ResolverContext) {\n const { domain, user, tx } = context.state\n\n const productSetRepo: Repository<ProductSet> = tx.getRepository(ProductSet)\n const bizplaceRepo: Repository<Bizplace> = tx.getRepository(Bizplace)\n\n let bizplace: Bizplace\n // if (productSet.bizplace?.id) {\n // bizplace = await bizplaceRepo.findOneBy({ id: productSet.bizplace.id })\n // } else {\n // bizplace = await bizplaceRepo.findOne({ where: { name: domain.name } })\n // }\n bizplace = await bizplaceRepo.findOne({ where: { name: domain.name } })\n\n return await productSetRepo.save({\n ...productSet,\n code: ProductUtil.productSetCode(),\n bizplace,\n creator: user,\n updater: user\n })\n}\n\nexport async function updateProductSet(\n id: string,\n patch: ProductSetPatch,\n context: ResolverContext\n): Promise<ProductSet> {\n const { user, tx } = context.state\n\n const bizplaceRepo: Repository<Bizplace> = tx.getRepository(Bizplace)\n const productRepo: Repository<ProductSet> = tx.getRepository(ProductSet)\n const productSet = await productRepo.findOneBy({ id })\n\n return productRepo.save({\n ...productSet,\n ...patch,\n updater: user\n })\n}\n"]}
1
+ {"version":3,"file":"product-set-mutation.js","sourceRoot":"","sources":["../../../server/service/product-set/product-set-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { Repository } from 'typeorm'\n\nimport { Bizplace } from '@things-factory/biz-base'\n\nimport { PRODUCT_SET_STATUS } from '../../constants'\nimport { ProductUtil } from '../../utils'\nimport { ProductSet } from './product-set'\nimport { NewProductSet, ProductSetPatch } from './product-set-types'\n\n@Resolver(ProductSet)\nexport class ProductSetMutation {\n @Directive('@privilege(category: \"order\", privilege: \"mutation\")')\n @Directive('@transaction')\n @Mutation(returns => ProductSet)\n async createProductSet(\n @Arg('productSet') productSet: NewProductSet,\n @Ctx() context: ResolverContext\n ): Promise<ProductSet> {\n return await createProductSet(productSet, context)\n }\n\n @Directive('@privilege(category: \"order\", privilege: \"mutation\")')\n @Directive('@transaction')\n @Mutation(returns => ProductSet)\n async updateProductSet(\n @Arg('id') id: string,\n @Arg('patch') patch: ProductSetPatch,\n @Ctx() context: ResolverContext\n ): Promise<ProductSet> {\n return await updateProductSet(id, patch, context)\n }\n\n @Directive('@privilege(category: \"order\", privilege: \"mutation\")')\n @Directive('@transaction')\n @Mutation(returns => [ProductSet])\n async updateMultipleProductSet(\n @Arg('patches', type => [ProductSetPatch]) patches: ProductSetPatch[],\n @Ctx() context: ResolverContext\n ): Promise<ProductSet[]> {\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\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const patch = _createRecords[i]\n const result = await createProductSet(patch as NewProductSet, context)\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const patch: ProductSetPatch = _updateRecords[i]\n const result = await updateProductSet(patch.id, patch, context)\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@privilege(category: \"order\", privilege: \"mutation\")')\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async deleteProductSet(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<Boolean> {\n const { tx, user } = context.state\n const productSetRepo: Repository<ProductSet> = tx.getRepository(ProductSet)\n const productSet = await productSetRepo.findOneBy({ id })\n\n await productSetRepo.save({\n ...productSet,\n status: PRODUCT_SET_STATUS.DELETED,\n updater: user\n })\n\n return true\n }\n\n @Directive('@privilege(category: \"order\", privilege: \"mutation\")')\n @Directive('@transaction')\n @Mutation(returns => Boolean)\n async deleteProductSets(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<Boolean> {\n const { tx, user } = context.state\n const productSetRepo = tx.getRepository(ProductSet)\n\n let results = []\n let productSets = productSetRepo.findByIds(ids)\n\n for (let i = 0; i < (await productSets).length; i++) {\n const productSet = productSets[i]\n\n const result = await productSetRepo.save({\n ...productSet,\n status: PRODUCT_SET_STATUS.DELETED,\n updater: user\n })\n\n results.push({ ...result })\n }\n\n return true\n }\n}\n\nexport async function createProductSet(productSet: NewProductSet, context: ResolverContext) {\n const { domain, user, tx } = context.state\n\n const productSetRepo: Repository<ProductSet> = tx.getRepository(ProductSet)\n const bizplaceRepo: Repository<Bizplace> = tx.getRepository(Bizplace)\n\n let bizplace: Bizplace\n // if (productSet.bizplace?.id) {\n // bizplace = await bizplaceRepo.findOneBy({ id: productSet.bizplace.id })\n // } else {\n // bizplace = await bizplaceRepo.findOne({ where: { name: domain.name } })\n // }\n bizplace = await bizplaceRepo.findOne({ where: { name: domain.name } })\n\n return await productSetRepo.save({\n ...productSet,\n code: ProductUtil.productSetCode(),\n bizplace,\n creator: user,\n updater: user\n })\n}\n\nexport async function updateProductSet(\n id: string,\n patch: ProductSetPatch,\n context: ResolverContext\n): Promise<ProductSet> {\n const { user, tx } = context.state\n\n const bizplaceRepo: Repository<Bizplace> = tx.getRepository(Bizplace)\n const productRepo: Repository<ProductSet> = tx.getRepository(ProductSet)\n const productSet = await productRepo.findOneBy({ id })\n\n return productRepo.save({\n ...productSet,\n ...patch,\n updater: user\n })\n}\n"]}
@@ -48,7 +48,10 @@ let ProductSetQuery = class ProductSetQuery {
48
48
  bizplaceFilter = { name: 'bizplace_id', operator: 'in', value: [companyBizplace.id, myBizplace.id] };
49
49
  }
50
50
  const convertedParams = (0, shell_1.convertListParams)(params);
51
- const [items, total] = await (0, shell_1.getRepository)(product_set_1.ProductSet).findAndCount(Object.assign(Object.assign({}, convertedParams), { relations: ['domain', 'creator', 'updater', 'product'] }));
51
+ const [items, total] = await (0, shell_1.getRepository)(product_set_1.ProductSet).findAndCount({
52
+ ...convertedParams,
53
+ relations: ['domain', 'creator', 'updater', 'product']
54
+ });
52
55
  return { items, total };
53
56
  }
54
57
  async productSet(name, context) {
@@ -1 +1 @@
1
- {"version":3,"file":"product-set-query.js","sourceRoot":"","sources":["../../../server/service/product-set/product-set-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Args, Ctx, Directive, FieldResolver, Query, Resolver, Root } from 'type-graphql'\nimport { Brackets, SelectQueryBuilder } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Bizplace, getCompanyBizplace, getMyBizplace } from '@things-factory/biz-base'\nimport { buildCondition, buildQuery, convertListParams, Domain, getRepository, ListParam } from '@things-factory/shell'\n\nimport { ProductSet } from './product-set'\nimport { ProductSetList } from './product-set-types'\n\n@Resolver(ProductSet)\nexport class ProductSetQuery {\n @Directive('@privilege(category: \"order\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ProductSetList)\n async myBizplaceProductSets(\n @Args(type => ListParam) params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ProductSetList> {\n const { domain, user } = context.state\n const qb: SelectQueryBuilder<ProductSet> = getRepository(ProductSet).createQueryBuilder()\n\n const productFilters = params.filters.filter(x => x.name == 'product_set_info')\n const filters = params.filters.filter(x => x.name != 'product_set_info')\n const productFilterColumns = ['name', 'description']\n\n if (!params.filters.find(filter => filter.name === 'bizplace_id')) {\n const companyBizplace: Bizplace = await getCompanyBizplace(domain, user)\n const myBizplace: Bizplace = await getMyBizplace(domain, user)\n params.filters = [...filters, { name: 'bizplace_id', operator: 'in', value: [companyBizplace.id, myBizplace.id] }]\n }\n\n buildQuery(qb, params, context, { domainRef: false })\n if (productFilters && productFilters.length > 0) {\n let productInfo = productFilters[0]\n qb.andWhere(\n new Brackets(qb2 => {\n productFilterColumns.forEach(filter => {\n const condition = buildCondition(\n qb.alias,\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 const [items, total] = await qb\n .leftJoinAndSelect('ProductSet.bizplace', 'Bizplace')\n .leftJoinAndSelect('ProductSet.creator', 'Creator')\n .leftJoinAndSelect('ProductSet.updater', 'Updater')\n .leftJoinAndSelect('ProductSet.product', 'Product')\n .getManyAndCount()\n\n return { items, total }\n }\n\n @Directive('@privilege(category: \"order\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ProductSetList)\n async productSets(\n @Args(type => ListParam) params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ProductSetList> {\n const { domain, user } = context.state\n\n if (!params.filters.find((filter: any) => filter.name === 'bizplace_id')) {\n let bizplaceFilter = params.filters.find((filter: any) => filter.name === 'bizplace_id')\n const companyBizplace: Bizplace = await getCompanyBizplace(domain, user)\n const myBizplace: Bizplace = await getMyBizplace(domain, user)\n\n bizplaceFilter = { name: 'bizplace_id', operator: 'in', value: [companyBizplace.id, myBizplace.id] }\n }\n\n const convertedParams = convertListParams(params)\n const [items, total] = await getRepository(ProductSet).findAndCount({\n ...convertedParams,\n relations: ['domain', 'creator', 'updater', 'product']\n })\n\n return { items, total }\n }\n\n @Directive('@privilege(category: \"order\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ProductSet)\n async productSet(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<ProductSet> {\n const { domain, user } = context.state\n const repository = getRepository(ProductSet)\n\n return await repository.findOne({\n where: { domain: { id: domain.id }, name },\n relations: ['domain', 'creator', 'updater']\n })\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() productSet: ProductSet): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: productSet.domainId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() productSet: ProductSet): Promise<User> {\n return await getRepository(User).findOneBy({ id: productSet.creatorId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() productSet: ProductSet): Promise<User> {\n return await getRepository(User).findOneBy({ id: productSet.updaterId })\n }\n}\n"]}
1
+ {"version":3,"file":"product-set-query.js","sourceRoot":"","sources":["../../../server/service/product-set/product-set-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Args, Ctx, Directive, FieldResolver, Query, Resolver, Root } from 'type-graphql'\nimport { Brackets, SelectQueryBuilder } from 'typeorm'\n\nimport { User } from '@things-factory/auth-base'\nimport { Bizplace, getCompanyBizplace, getMyBizplace } from '@things-factory/biz-base'\nimport { buildCondition, buildQuery, convertListParams, Domain, getRepository, ListParam } from '@things-factory/shell'\n\nimport { ProductSet } from './product-set'\nimport { ProductSetList } from './product-set-types'\n\n@Resolver(ProductSet)\nexport class ProductSetQuery {\n @Directive('@privilege(category: \"order\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ProductSetList)\n async myBizplaceProductSets(\n @Args(type => ListParam) params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ProductSetList> {\n const { domain, user } = context.state\n const qb: SelectQueryBuilder<ProductSet> = getRepository(ProductSet).createQueryBuilder()\n\n const productFilters = params.filters.filter(x => x.name == 'product_set_info')\n const filters = params.filters.filter(x => x.name != 'product_set_info')\n const productFilterColumns = ['name', 'description']\n\n if (!params.filters.find(filter => filter.name === 'bizplace_id')) {\n const companyBizplace: Bizplace = await getCompanyBizplace(domain, user)\n const myBizplace: Bizplace = await getMyBizplace(domain, user)\n params.filters = [...filters, { name: 'bizplace_id', operator: 'in', value: [companyBizplace.id, myBizplace.id] }]\n }\n\n buildQuery(qb, params, context, { domainRef: false })\n if (productFilters && productFilters.length > 0) {\n let productInfo = productFilters[0]\n qb.andWhere(\n new Brackets(qb2 => {\n productFilterColumns.forEach(filter => {\n const condition = buildCondition(\n qb.alias,\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 const [items, total] = await qb\n .leftJoinAndSelect('ProductSet.bizplace', 'Bizplace')\n .leftJoinAndSelect('ProductSet.creator', 'Creator')\n .leftJoinAndSelect('ProductSet.updater', 'Updater')\n .leftJoinAndSelect('ProductSet.product', 'Product')\n .getManyAndCount()\n\n return { items, total }\n }\n\n @Directive('@privilege(category: \"order\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ProductSetList)\n async productSets(\n @Args(type => ListParam) params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<ProductSetList> {\n const { domain, user } = context.state\n\n if (!params.filters.find((filter: any) => filter.name === 'bizplace_id')) {\n let bizplaceFilter = params.filters.find((filter: any) => filter.name === 'bizplace_id')\n const companyBizplace: Bizplace = await getCompanyBizplace(domain, user)\n const myBizplace: Bizplace = await getMyBizplace(domain, user)\n\n bizplaceFilter = { name: 'bizplace_id', operator: 'in', value: [companyBizplace.id, myBizplace.id] }\n }\n\n const convertedParams = convertListParams(params)\n const [items, total] = await getRepository(ProductSet).findAndCount({\n ...convertedParams,\n relations: ['domain', 'creator', 'updater', 'product']\n })\n\n return { items, total }\n }\n\n @Directive('@privilege(category: \"order\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => ProductSet)\n async productSet(@Arg('name') name: string, @Ctx() context: ResolverContext): Promise<ProductSet> {\n const { domain, user } = context.state\n const repository = getRepository(ProductSet)\n\n return await repository.findOne({\n where: { domain: { id: domain.id }, name },\n relations: ['domain', 'creator', 'updater']\n })\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() productSet: ProductSet): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: productSet.domainId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() productSet: ProductSet): Promise<User> {\n return await getRepository(User).findOneBy({ id: productSet.creatorId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() productSet: ProductSet): Promise<User> {\n return await getRepository(User).findOneBy({ id: productSet.updaterId })\n }\n}\n"]}