mobyo-interfaces
Version:
Interfaces de Projetos Mobyo
85 lines • 12.3 kB
JavaScript
import { GTINTypeEnum } from '../enums';
import { EGtintype } from '../enums/gtin-type.enum';
import { ProductBrandEntity } from './product-brand.entity';
import { ProductNcmEntity } from './product-ncm.entity';
export class ProductGlobalEntity {
// #region Properties (26)
active = true;
avgPrice = 0;
barcodeImage = null;
brand = new ProductBrandEntity();
cest = null;
createdAt = new Date();
description = '';
grossWeight = 0;
gtin = null;
gtinType = GTINTypeEnum.THIRTEEN;
height = 0;
id = '';
length = 0;
maxPrice = 0;
measureQuantity = 1;
measureUnit = 'UN';
minPrice = 0;
name = '';
ncm = new ProductNcmEntity();
netWeight = 0;
createdBy = '';
price = 0;
tags = [];
thumbnail = null;
updatedAt = new Date();
width = 0;
// #endregion Properties (26)
// #region Constructors (1)
constructor(data, bluesoft) {
if (bluesoft) {
this.active = true;
this.avgPrice = bluesoft.avgPrice;
this.barcodeImage = bluesoft.barcodeImage;
this.brand = new ProductBrandEntity(bluesoft.brand);
this.cest = '';
this.createdAt = new Date();
this.description = bluesoft.description;
this.grossWeight = bluesoft.grossWeight || 0;
this.gtin = bluesoft.gtin || null;
this.gtinType = EGtintype.FOURTEEN;
this.height = bluesoft.height || 0;
this.id = '';
this.length = bluesoft.length || 0;
this.maxPrice = bluesoft.maxPrice || 0;
this.measureQuantity = this.getGtinFromGtins(bluesoft.gtin || 0, bluesoft.gtins)?.commercialUnit?.quantityPackaging || 1;
this.measureUnit = this.getGtinFromGtins(bluesoft.gtin || 0, bluesoft.gtins)?.commercialUnit?.typePackaging || 'Unidade';
this.minPrice = bluesoft.minPrice || 0;
this.name = bluesoft.description || '';
this.ncm = new ProductNcmEntity(bluesoft.ncm);
this.netWeight = bluesoft.netWeight || 0;
this.price = this.currencyStringToNumber(bluesoft.price);
this.tags = [];
this.thumbnail = bluesoft.thumbnail || '';
this.updatedAt = new Date();
this.width = bluesoft.width || 0;
}
if (data) {
for (let key in data) {
if (data.hasOwnProperty(key) && key in this) {
this[key] = data[key];
}
}
}
}
// #endregion Constructors (1)
// #region Private Methods (1)
getGtinFromGtins(ref, gtins) {
for (let i = 0; i < gtins.length; i++) {
if (gtins[i].gtin === ref) {
return gtins[i];
}
}
return null;
}
currencyStringToNumber(value) {
return Number(value.replace(/[^0-9.-]+/g, ''));
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC5lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcHJvZHVjdC1nbG9iYWwvZW50aXRpZXMvcHJvZHVjdC5lbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFcEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEQsTUFBTSxPQUFPLG1CQUFtQjtJQUM5QiwwQkFBMEI7SUFFbkIsTUFBTSxHQUFZLElBQUksQ0FBQztJQUN2QixRQUFRLEdBQVcsQ0FBQyxDQUFDO0lBQ3JCLFlBQVksR0FBa0IsSUFBSSxDQUFDO0lBQ25DLEtBQUssR0FBdUIsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO0lBQ3JELElBQUksR0FBa0IsSUFBSSxDQUFDO0lBQzNCLFNBQVMsR0FBUyxJQUFJLElBQUksRUFBRSxDQUFDO0lBQzdCLFdBQVcsR0FBVyxFQUFFLENBQUM7SUFDekIsV0FBVyxHQUFXLENBQUMsQ0FBQztJQUN4QixJQUFJLEdBQWtCLElBQUksQ0FBQztJQUMzQixRQUFRLEdBQWlCLFlBQVksQ0FBQyxRQUFRLENBQUM7SUFDL0MsTUFBTSxHQUFXLENBQUMsQ0FBQztJQUNuQixFQUFFLEdBQVcsRUFBRSxDQUFDO0lBQ2hCLE1BQU0sR0FBVyxDQUFDLENBQUM7SUFDbkIsUUFBUSxHQUFXLENBQUMsQ0FBQztJQUNyQixlQUFlLEdBQVcsQ0FBQyxDQUFDO0lBQzVCLFdBQVcsR0FBVyxJQUFJLENBQUM7SUFDM0IsUUFBUSxHQUFXLENBQUMsQ0FBQztJQUNyQixJQUFJLEdBQVcsRUFBRSxDQUFDO0lBQ2xCLEdBQUcsR0FBcUIsSUFBSSxnQkFBZ0IsRUFBRSxD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QUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxJQUFJLElBQUksRUFBRTtvQkFDMUMsSUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFJLElBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztpQkFDekM7YUFDRjtTQUNGO0lBQ0gsQ0FBQztJQUVELDhCQUE4QjtJQUU5Qiw4QkFBOEI7SUFFdEIsZ0JBQWdCLENBQUMsR0FBVyxFQUFFLEtBQXNCO1FBQzFELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3JDLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxHQUFHLEVBQUU7Z0JBQ3pCLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2pCO1NBQ0Y7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDTyxzQkFBc0IsQ0FBQyxLQUFhO1FBQzFDLE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDakQsQ0FBQztDQUdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUJsdWVTb2Z0IH0gZnJvbSAnLi4vLi4vYmx1ZXNvZnQnO1xyXG5pbXBvcnQgeyBJQmx1ZVNvZnRHdGluIH0gZnJvbSAnLi4vLi4vYmx1ZXNvZnQvaW50ZXJmYWNlcy9pLWJsdWVzb2Z0LWd0aW4nO1xyXG5pbXBvcnQgeyBHVElOVHlwZUVudW0gfSBmcm9tICcuLi9lbnVtcyc7XHJcbmltcG9ydCB7IEVHdGludHlwZSB9IGZyb20gJy4uL2VudW1zL2d0aW4tdHlwZS5lbnVtJztcclxuaW1wb3J0IHsgSVByb2R1Y3RHbG9iYWwgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgUHJvZHVjdEJyYW5kRW50aXR5IH0gZnJvbSAnLi9wcm9kdWN0LWJyYW5kLmVudGl0eSc7XHJcbmltcG9ydCB7IFByb2R1Y3ROY21FbnRpdHkgfSBmcm9tICcuL3Byb2R1Y3QtbmNtLmVudGl0eSc7XHJcblxyXG5leHBvcnQgY2xhc3MgUHJvZHVjdEdsb2JhbEVudGl0eSBpbXBsZW1lbnRzIElQcm9kdWN0R2xvYmFsIHtcclxuICAvLyAjcmVnaW9uIFByb3BlcnRpZXMgKDI2KVxyXG5cclxuICBwdWJsaWMgYWN0aXZlOiBib29sZWFuID0gdHJ1ZTtcclxuICBwdWJsaWMgYXZnUHJpY2U6IG51bWJlciA9IDA7XHJcbiAgcHVibGljIGJhcmNvZGVJbWFnZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcbiAgcHVibGljIGJyYW5kOiBQcm9kdWN0QnJhbmRFbnRpdHkgPSBuZXcgUHJvZHVjdEJyYW5kRW50aXR5KCk7XHJcbiAgcHVibGljIGNlc3Q6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG4gIHB1YmxpYyBjcmVhdGVkQXQ6IERhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gIHB1YmxpYyBkZXNjcmlwdGlvbjogc3RyaW5nID0gJyc7XHJcbiAgcHVibGljIGdyb3NzV2VpZ2h0OiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBndGluOiBudW1iZXIgfCBudWxsID0gbnVsbDtcclxuICBwdWJsaWMgZ3RpblR5cGU6IEdUSU5UeXBlRW51bSA9IEdUSU5UeXBlRW51bS5USElSVEVFTjtcclxuICBwdWJsaWMgaGVpZ2h0OiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBpZDogc3RyaW5nID0gJyc7XHJcbiAgcHVibGljIGxlbmd0aDogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgbWF4UHJpY2U6IG51bWJlciA9IDA7XHJcbiAgcHVibGljIG1lYXN1cmVRdWFudGl0eTogbnVtYmVyID0gMTtcclxuICBwdWJsaWMgbWVhc3VyZVVuaXQ6IHN0cmluZyA9ICdVTic7XHJcbiAgcHVibGljIG1pblByaWNlOiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBuYW1lOiBzdHJpbmcgPSAnJztcclxuICBwdWJsaWMgbmNtOiBQcm9kdWN0TmNtRW50aXR5ID0gbmV3IFByb2R1Y3ROY21FbnRpdHkoKTtcclxuICBwdWJsaWMgbmV0V2VpZ2h0OiBudW1iZXIgPSAwO1xyXG4gIHB1YmxpYyBjcmVhdGVkQnk6IHN0cmluZyA9ICcnO1xyXG4gIHB1YmxpYyBwcmljZTogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgdGFnczogc3RyaW5nW10gPSBbXTtcclxuICBwdWJsaWMgdGh1bWJuYWlsOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICBwdWJsaWMgdXBkYXRlZEF0OiBEYXRlID0gbmV3IERhdGUoKTtcclxuICBwdWJsaWMgd2lkdGg6IG51bWJlciA9IDA7XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHJvcGVydGllcyAoMjYpXHJcblxyXG4gIC8vICNyZWdpb24gQ29uc3RydWN0b3JzICgxKVxyXG5cclxuICBjb25zdHJ1Y3RvcihkYXRhPzogUGFydGlhbDxQcm9kdWN0R2xvYmFsRW50aXR5PiwgYmx1ZXNvZnQ/OiBJQmx1ZVNvZnQpIHtcclxuICAgIGlmIChibHVlc29mdCkge1xyXG4gICAgICB0aGlzLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgIHRoaXMuYXZnUHJpY2UgPSBibHVlc29mdC5hdmdQcmljZTtcclxuICAgICAgdGhpcy5iYXJjb2RlSW1hZ2UgPSBibHVlc29mdC5iYXJjb2RlSW1hZ2U7XHJcbiAgICAgIHRoaXMuYnJhbmQgPSBuZXcgUHJvZHVjdEJyYW5kRW50aXR5KGJsdWVzb2Z0LmJyYW5kKTtcclxuICAgICAgdGhpcy5jZXN0ID0gJyc7XHJcbiAgICAgIHRoaXMuY3JlYXRlZEF0ID0gbmV3IERhdGUoKTtcclxuICAgICAgdGhpcy5kZXNjcmlwdGlvbiA9IGJsdWVzb2Z0LmRlc2NyaXB0aW9uO1xyXG4gICAgICB0aGlzLmdyb3NzV2VpZ2h0ID0gYmx1ZXNvZnQuZ3Jvc3NXZWlnaHQgfHwgMDtcclxuICAgICAgdGhpcy5ndGluID0gYmx1ZXNvZnQuZ3RpbiB8fCBudWxsO1xyXG4gICAgICB0aGlzLmd0aW5UeXBlID0gRUd0aW50eXBlLkZPVVJURUVOO1xyXG4gICAgICB0aGlzLmhlaWdodCA9IGJsdWVzb2Z0LmhlaWdodCB8fCAwO1xyXG4gICAgICB0aGlzLmlkID0gJyc7XHJcbiAgICAgIHRoaXMubGVuZ3RoID0gYmx1ZXNvZnQubGVuZ3RoIHx8IDA7XHJcbiAgICAgIHRoaXMubWF4UHJpY2UgPSBibHVlc29mdC5tYXhQcmljZSB8fCAwO1xyXG4gICAgICB0aGlzLm1lYXN1cmVRdWFudGl0eSA9IHRoaXMuZ2V0R3RpbkZyb21HdGlucyhibHVlc29mdC5ndGluIHx8IDAsIGJsdWVzb2Z0Lmd0aW5zKT8uY29tbWVyY2lhbFVuaXQ/LnF1YW50aXR5UGFja2FnaW5nIHx8IDE7XHJcbiAgICAgIHRoaXMubWVhc3VyZVVuaXQgPSB0aGlzLmdldEd0aW5Gcm9tR3RpbnMoYmx1ZXNvZnQuZ3RpbiB8fCAwLCBibHVlc29mdC5ndGlucyk/LmNvbW1lcmNpYWxVbml0Py50eXBlUGFja2FnaW5nIHx8ICdVbmlkYWRlJztcclxuICAgICAgdGhpcy5taW5QcmljZSA9IGJsdWVzb2Z0Lm1pblByaWNlIHx8IDA7XHJcbiAgICAgIHRoaXMubmFtZSA9IGJsdWVzb2Z0LmRlc2NyaXB0aW9uIHx8ICcnO1xyXG4gICAgICB0aGlzLm5jbSA9IG5ldyBQcm9kdWN0TmNtRW50aXR5KGJsdWVzb2Z0Lm5jbSk7XHJcbiAgICAgIHRoaXMubmV0V2VpZ2h0ID0gYmx1ZXNvZnQubmV0V2VpZ2h0IHx8IDA7XHJcbiAgICAgIHRoaXMucHJpY2UgPSB0aGlzLmN1cnJlbmN5U3RyaW5nVG9OdW1iZXIoYmx1ZXNvZnQucHJpY2UpO1xyXG4gICAgICB0aGlzLnRhZ3MgPSBbXTtcclxuICAgICAgdGhpcy50aHVtYm5haWwgPSBibHVlc29mdC50aHVtYm5haWwgfHwgJyc7XHJcbiAgICAgIHRoaXMudXBkYXRlZEF0ID0gbmV3IERhdGUoKTtcclxuICAgICAgdGhpcy53aWR0aCA9IGJsdWVzb2Z0LndpZHRoIHx8IDA7XHJcbiAgICB9XHJcbiAgICBpZiAoZGF0YSkge1xyXG4gICAgICBmb3IgKGxldCBrZXkgaW4gZGF0YSkge1xyXG4gICAgICAgIGlmIChkYXRhLmhhc093blByb3BlcnR5KGtleSkgJiYga2V5IGluIHRoaXMpIHtcclxuICAgICAgICAgICh0aGlzIGFzIGFueSlba2V5XSA9IChkYXRhIGFzIGFueSlba2V5XTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gQ29uc3RydWN0b3JzICgxKVxyXG5cclxuICAvLyAjcmVnaW9uIFByaXZhdGUgTWV0aG9kcyAoMSlcclxuXHJcbiAgcHJpdmF0ZSBnZXRHdGluRnJvbUd0aW5zKHJlZjogbnVtYmVyLCBndGluczogSUJsdWVTb2Z0R3RpbltdKTogSUJsdWVTb2Z0R3RpbiB8IG51bGwge1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBndGlucy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBpZiAoZ3RpbnNbaV0uZ3RpbiA9PT0gcmVmKSB7XHJcbiAgICAgICAgcmV0dXJuIGd0aW5zW2ldO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbiAgcHJpdmF0ZSBjdXJyZW5jeVN0cmluZ1RvTnVtYmVyKHZhbHVlOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIE51bWJlcih2YWx1ZS5yZXBsYWNlKC9bXjAtOS4tXSsvZywgJycpKTtcclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHJpdmF0ZSBNZXRob2RzICgxKVxyXG59XHJcbiJdfQ==