@things-factory/product-base 4.3.59 → 4.3.60
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.
|
@@ -28,7 +28,7 @@ let ProductDetailQuery = class ProductDetailQuery {
|
|
|
28
28
|
if (!customerDomainId)
|
|
29
29
|
throw new Error('Unable to find company domain');
|
|
30
30
|
var foundProductDetail;
|
|
31
|
-
if (
|
|
31
|
+
if (productId) {
|
|
32
32
|
foundProductDetail = await tx.getRepository(product_detail_1.ProductDetail).findOne({
|
|
33
33
|
where: { domain: customerDomainId, product: productId },
|
|
34
34
|
relations: ['product']
|
|
@@ -124,6 +124,25 @@ let ProductDetailQuery = class ProductDetailQuery {
|
|
|
124
124
|
});
|
|
125
125
|
return { items, total };
|
|
126
126
|
}
|
|
127
|
+
async checkGtin(gtin, customerCompanyDomainId, context) {
|
|
128
|
+
try {
|
|
129
|
+
const { tx } = context.state;
|
|
130
|
+
const customerDomainId = await (0, typeorm_1.getRepository)(shell_1.Domain).findOne(customerCompanyDomainId);
|
|
131
|
+
if (!customerDomainId)
|
|
132
|
+
throw new Error('Unable to find company domain');
|
|
133
|
+
var foundProductDetails;
|
|
134
|
+
let [items, total] = await (0, typeorm_1.getRepository)(product_detail_1.ProductDetail).findAndCount({
|
|
135
|
+
where: { domain: customerDomainId, gtin },
|
|
136
|
+
relations: ['product']
|
|
137
|
+
});
|
|
138
|
+
if ((items === null || items === void 0 ? void 0 : items.length) <= 0)
|
|
139
|
+
throw new Error('No product candidate found');
|
|
140
|
+
return { items, total };
|
|
141
|
+
}
|
|
142
|
+
catch (e) {
|
|
143
|
+
throw new Error(e);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
127
146
|
async domain(productDetail) {
|
|
128
147
|
return await (0, typeorm_1.getRepository)(shell_1.Domain).findOne(productDetail.domain.id);
|
|
129
148
|
}
|
|
@@ -155,6 +174,15 @@ __decorate([
|
|
|
155
174
|
__metadata("design:paramtypes", [Object, Array, typeof (_a = typeof shell_1.Pagination !== "undefined" && shell_1.Pagination) === "function" ? _a : Object, Array]),
|
|
156
175
|
__metadata("design:returntype", Promise)
|
|
157
176
|
], ProductDetailQuery.prototype, "productDetails", null);
|
|
177
|
+
__decorate([
|
|
178
|
+
(0, type_graphql_1.Query)(returns => product_detail_types_1.ProductDetailList),
|
|
179
|
+
__param(0, (0, type_graphql_1.Arg)('gtin')),
|
|
180
|
+
__param(1, (0, type_graphql_1.Arg)('customerCompanyDomainId')),
|
|
181
|
+
__param(2, (0, type_graphql_1.Ctx)()),
|
|
182
|
+
__metadata("design:type", Function),
|
|
183
|
+
__metadata("design:paramtypes", [String, String, Object]),
|
|
184
|
+
__metadata("design:returntype", Promise)
|
|
185
|
+
], ProductDetailQuery.prototype, "checkGtin", null);
|
|
158
186
|
__decorate([
|
|
159
187
|
(0, type_graphql_1.FieldResolver)(type => shell_1.Domain),
|
|
160
188
|
__param(0, (0, type_graphql_1.Root)()),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-detail-query.js","sourceRoot":"","sources":["../../../server/service/product-detail/product-detail-query.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAAwF;AACxF,qCAAqE;AAErE,yDAAgD;AAChD,uDAAuG;AACvG,iDAAuG;AAEvG,qDAAgD;AAChD,iEAA0D;AAG1D,IAAa,kBAAkB,GAA/B,MAAa,kBAAkB;IAG7B,KAAK,CAAC,aAAa,CACJ,IAAY,EACP,SAAiB,EACH,uBAA+B,EACxD,OAAY;QAEnB,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAE5B,MAAM,gBAAgB,GAAW,MAAM,EAAE,CAAC,aAAa,CAAC,cAAM,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAA;QAChG,IAAI,CAAC,gBAAgB;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;QACvE,IAAI,kBAAkB,CAAA;QACtB,IAAI,
|
|
1
|
+
{"version":3,"file":"product-detail-query.js","sourceRoot":"","sources":["../../../server/service/product-detail/product-detail-query.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@things-factory/product-base",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.60",
|
|
4
4
|
"main": "dist-server/index.js",
|
|
5
5
|
"browser": "client/index.js",
|
|
6
6
|
"things-factory": true,
|
|
@@ -27,5 +27,5 @@
|
|
|
27
27
|
"@things-factory/biz-base": "^4.3.47",
|
|
28
28
|
"@things-factory/routing-base": "^4.3.59"
|
|
29
29
|
},
|
|
30
|
-
"gitHead": "
|
|
30
|
+
"gitHead": "f6d91662623840970866e2db5e92b9613cad0a41"
|
|
31
31
|
}
|
|
@@ -23,7 +23,7 @@ export class ProductDetailQuery {
|
|
|
23
23
|
const customerDomainId: Domain = await tx.getRepository(Domain).findOne(customerCompanyDomainId)
|
|
24
24
|
if (!customerDomainId) throw new Error('Unable to find company domain')
|
|
25
25
|
var foundProductDetail
|
|
26
|
-
if (
|
|
26
|
+
if (productId) {
|
|
27
27
|
foundProductDetail = await tx.getRepository(ProductDetail).findOne({
|
|
28
28
|
where: { domain: customerDomainId, product: productId },
|
|
29
29
|
relations: ['product']
|
|
@@ -166,6 +166,32 @@ export class ProductDetailQuery {
|
|
|
166
166
|
return { items, total }
|
|
167
167
|
}
|
|
168
168
|
|
|
169
|
+
@Query(returns => ProductDetailList)
|
|
170
|
+
async checkGtin(
|
|
171
|
+
@Arg('gtin') gtin: string,
|
|
172
|
+
@Arg('customerCompanyDomainId') customerCompanyDomainId: string,
|
|
173
|
+
@Ctx() context: any
|
|
174
|
+
): Promise<ProductDetailList> {
|
|
175
|
+
try {
|
|
176
|
+
const { tx } = context.state
|
|
177
|
+
|
|
178
|
+
const customerDomainId: Domain = await getRepository(Domain).findOne(customerCompanyDomainId)
|
|
179
|
+
if (!customerDomainId) throw new Error('Unable to find company domain')
|
|
180
|
+
var foundProductDetails
|
|
181
|
+
|
|
182
|
+
let [items, total] = await getRepository(ProductDetail).findAndCount({
|
|
183
|
+
where: { domain: customerDomainId, gtin },
|
|
184
|
+
relations: ['product']
|
|
185
|
+
})
|
|
186
|
+
|
|
187
|
+
if (items?.length <= 0) throw new Error('No product candidate found')
|
|
188
|
+
|
|
189
|
+
return { items, total }
|
|
190
|
+
} catch (e) {
|
|
191
|
+
throw new Error(e)
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
|
|
169
195
|
@FieldResolver(type => Domain)
|
|
170
196
|
async domain(@Root() productDetail: ProductDetail): Promise<Domain> {
|
|
171
197
|
return await getRepository(Domain).findOne(productDetail.domain.id)
|