cecon-interfaces
Version:
Interfaces de Projetos Cecon
81 lines • 10.6 kB
JavaScript
import { EPayioLicenseType } from "../../activation-key/enums/license-type.enum";
import { EPayioActivationBatchStatus } from "../enums/activation-batch-status.enum";
export class PayioActivationBatchEntity {
/** Prazo em dias para ativar as licenças (a partir da criação do lote) */
activationDeadlineDays = 180; // 6 meses;
/** Quantidade de licenças ativas */
activeLicenses = 0;
// === INFORMAÇÕES DO APLICATIVO ===
/** ID do aplicativo que será ativado */
appId = '';
/** Nome do aplicativo (para facilitar consultas) */
appName = '';
/** Slug do aplicativo */
appSlug = '';
/** Quantidade de licenças ativadas */
availableLicenses = 0;
/** Número sequencial do lote (ex: "2025/001", "2025/002") */
batchNumber = '';
// === CONTROLE DE TEMPO ===
/** Data de criação do lote */
createdAt = new Date();
// === AUDITORIA ===
/** ID do admin que criou o lote */
createdBy = '';
// === INFORMAÇÕES DO DISTRIBUIDOR ===
/** ID do distribuidor que receberá as licenças */
distributorId = '';
/** Nome do distribuidor (para facilitar consultas) */
distributorName = '';
/** Quantidade de licenças expiradas */
expiredLicenses = 0;
/** Dias de tolerância após expiração */
gracePeriodDays = 0;
id = '';
// === CONFIGURAÇÕES DE LICENÇA ===
/** Tipo de licença que será gerada neste lote */
licenseType = EPayioLicenseType.SUBSCRIPTION;
/** Logs de operações do lote */
logs = [];
/** Preço total negociado com o distribuidor */
negotiatedPrice = 0;
// === METADADOS ===
/** Observações ou notas sobre o lote */
notes;
/** Quantidade de licenças revogadas */
revokedLicenses = 0;
/** Indica se é ambiente sandbox */
sandbox = false;
/** Número sequencial dentro do ano */
sequentialNumber = 0;
/** Status atual do lote */
status = EPayioActivationBatchStatus.PROCESSING;
/** Tags para busca e indexação */
tags = [];
// === CONTROLE E ESTOQUE DE LICENÇAS ===
/** Quantidade total de licenças no lote */
totalLicenses = 0;
// === INFORMAÇÕES COMERCIAIS ===
/** Preço unitário por licença */
unitPrice = 0;
/** Data da última atualização */
updatedAt = new Date();
/** Período de validade da licença em meses (para definição comercial) */
validityPeriodMonths = 12;
/** Período de validade da licença do tipo trial em dias (para definição comercial) */
validityTrialPeriodDays = 0;
/** Versão ou intervalo de versões do software cobertas */
versionConstraint = [];
/** Ano de referência do lote */
year = new Date().getFullYear();
constructor(data) {
if (data) {
for (let key in data) {
if (data.hasOwnProperty(key) && key in this) {
this[key] = data[key];
}
}
}
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZhdGlvbi1iYXRjaC5lbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvcGF5aW8vYWN0aXZhdGlvbi1iYXRjaC9lbnRpdGllcy9hY3RpdmF0aW9uLWJhdGNoLmVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNqRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUdwRixNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDLDBFQUEwRTtJQUNuRSxzQkFBc0IsR0FBVyxHQUFHLENBQUMsQ0FBQyxXQUFXO0lBRXhELG9DQUFvQztJQUM3QixjQUFjLEdBQVcsQ0FBQyxDQUFDO0lBRWxDLG9DQUFvQztJQUNwQyx3Q0FBd0M7SUFDakMsS0FBSyxHQUFXLEVBQUUsQ0FBQztJQUUxQixvREFBb0Q7SUFDN0MsT0FBTyxHQUFXLEVBQUUsQ0FBQztJQUU1Qix5QkFBeUI7SUFDbEIsT0FBTyxHQUFXLEVBQUUsQ0FBQztJQUU1QixzQ0FBc0M7SUFDL0IsaUJBQWlCLEdBQVcsQ0FBQyxDQUFDO0lBRXJDLDZEQUE2RDtJQUN0RCxXQUFXLEdBQVcsRUFBRSxDQUFDO0lBRWhDLDRCQUE0QjtJQUM1Qiw4QkFBOEI7SUFDdkIsU0FBUyxHQUFTLElBQUksSUFBSSxFQUFFLENBQUM7SUFFcEMsb0JBQW9CO0lBQ3BCLG1DQUFtQztJQUM1QixTQUFTLEdBQVcsRUFBRSxDQUFDO0lBRTlCLHNDQUFzQztJQUN0QyxrREFBa0Q7SUFDM0MsYUFBYSxHQUFXLEVBQUUsQ0FBQztJQUVsQyxzREFBc0Q7SUFDL0MsZUFBZSxHQUFXLEVBQUUsQ0FBQztJQUVwQyx1Q0FBdUM7SUFDaEMsZUFBZSxHQUFXLENBQUMsQ0FBQztJQUVuQyx3Q0FBd0M7SUFDakMsZUFBZSxHQUFXLENBQUMsQ0FBQztJQUM1QixFQUFFLEdBQVcsRUFBRSxDQUFDO0lBRXZCLG1DQUFtQztJQUNuQyxpREFBaUQ7SUFDMUMsV0FBVyxHQUFzQixpQkFBaUIsQ0FBQyxZQUFZLENBQUM7SUFFdkUsZ0NBQWdDO0lBQ3pCLElBQUksR0FBYSxFQUFFLENBQUM7SUFFM0IsK0NBQStDO0lBQ3hDLGVBQWUsR0FBVyxDQUFDLENBQUM7SUFFbkMsb0JBQW9CO0lBQ3BCLHdDQUF3QztJQUNqQyxLQUFLLENBQVU7SUFFdEIsdUNBQXVDO0lBQ2hDLGVBQWUsR0FBVyxDQUFDLENBQUM7SUFFbkMsbUNBQW1DO0lBQzVCLE9BQU8sR0FBWSxLQUFLLENBQUM7SUFFaEMsc0NBQXNDO0lBQy9CLGdCQUFnQixHQUFXLENBQUMsQ0FBQztJQUVwQywyQkFBMkI7SUFDcEIsTUFBTSxHQUFnQywyQkFBMkIsQ0FBQyxVQUFVLENBQUM7SUFFcEYsa0NBQWtDO0lBQzNCLElBQUksR0FBYSxFQUFFLENBQUM7SUFFM0IseUNBQXlDO0lBQ3pDLDJDQUEyQztJQUNwQyxhQUFhLEdBQVcsQ0FBQyxDQUFDO0lBRWpDLGlDQUFpQztJQUNqQyxpQ0FBaUM7SUFDMUIsU0FBUyxHQUFXLENBQUMsQ0FBQztJQUU3QixpQ0FBaUM7SUFDMUIsU0FBUyxHQUFTLElBQUksSUFBSSxFQUFFLENBQUM7SUFFcEMseUVBQXlFO0lBQ2xFLG9CQUFvQixHQUFXLEVBQUUsQ0FBQztJQUV6QyxzRkFBc0Y7SUFDL0UsdUJBQXVCLEdBQVcsQ0FBQyxDQUFDO0lBRTNDLDBEQUEwRDtJQUNuRCxpQkFBaUIsR0FBYSxFQUFFLENBQUM7SUFFeEMsZ0NBQWdDO0lBQ3pCLElBQUksR0FBVyxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBRS9DLFlBQVksSUFBMEM7UUFDcEQsSUFBSSxJQUFJLEVBQUU7WUFDUixLQUFLLElBQUksR0FBRyxJQUFJLElBQUksRUFBRTtnQkFDcEIsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUU7b0JBQzFDLElBQVksQ0FBQyxHQUFHLENBQUMsR0FBSSxJQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQ3pDO2FBQ0Y7U0FDRjtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVQYXlpb0xpY2Vuc2VUeXBlIH0gZnJvbSBcIi4uLy4uL2FjdGl2YXRpb24ta2V5L2VudW1zL2xpY2Vuc2UtdHlwZS5lbnVtXCI7XHJcbmltcG9ydCB7IEVQYXlpb0FjdGl2YXRpb25CYXRjaFN0YXR1cyB9IGZyb20gXCIuLi9lbnVtcy9hY3RpdmF0aW9uLWJhdGNoLXN0YXR1cy5lbnVtXCI7XHJcbmltcG9ydCB7IElQYXlpb0FjdGl2YXRpb25CYXRjaCB9IGZyb20gXCIuLi9pbnRlcmZhY2VzL2ktYWN0aXZhdGlvbi1iYXRjaFwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFBheWlvQWN0aXZhdGlvbkJhdGNoRW50aXR5IGltcGxlbWVudHMgSVBheWlvQWN0aXZhdGlvbkJhdGNoIHtcclxuICAvKiogUHJhem8gZW0gZGlhcyBwYXJhIGF0aXZhciBhcyBsaWNlbsOnYXMgKGEgcGFydGlyIGRhIGNyaWHDp8OjbyBkbyBsb3RlKSAqL1xyXG4gIHB1YmxpYyBhY3RpdmF0aW9uRGVhZGxpbmVEYXlzOiBudW1iZXIgPSAxODA7IC8vIDYgbWVzZXM7XHJcblxyXG4gIC8qKiBRdWFudGlkYWRlIGRlIGxpY2Vuw6dhcyBhdGl2YXMgKi9cclxuICBwdWJsaWMgYWN0aXZlTGljZW5zZXM6IG51bWJlciA9IDA7XHJcblxyXG4gIC8vID09PSBJTkZPUk1Bw4fDlUVTIERPIEFQTElDQVRJVk8gPT09XHJcbiAgLyoqIElEIGRvIGFwbGljYXRpdm8gcXVlIHNlcsOhIGF0aXZhZG8gKi9cclxuICBwdWJsaWMgYXBwSWQ6IHN0cmluZyA9ICcnO1xyXG5cclxuICAvKiogTm9tZSBkbyBhcGxpY2F0aXZvIChwYXJhIGZhY2lsaXRhciBjb25zdWx0YXMpICovXHJcbiAgcHVibGljIGFwcE5hbWU6IHN0cmluZyA9ICcnO1xyXG5cclxuICAvKiogU2x1ZyBkbyBhcGxpY2F0aXZvICovXHJcbiAgcHVibGljIGFwcFNsdWc6IHN0cmluZyA9ICcnO1xyXG5cclxuICAvKiogUXVhbnRpZGFkZSBkZSBsaWNlbsOnYXMgYXRpdmFkYXMgKi9cclxuICBwdWJsaWMgYXZhaWxhYmxlTGljZW5zZXM6IG51bWJlciA9IDA7XHJcblxyXG4gIC8qKiBOw7ptZXJvIHNlcXVlbmNpYWwgZG8gbG90ZSAoZXg6IFwiMjAyNS8wMDFcIiwgXCIyMDI1LzAwMlwiKSAqL1xyXG4gIHB1YmxpYyBiYXRjaE51bWJlcjogc3RyaW5nID0gJyc7XHJcblxyXG4gIC8vID09PSBDT05UUk9MRSBERSBURU1QTyA9PT1cclxuICAvKiogRGF0YSBkZSBjcmlhw6fDo28gZG8gbG90ZSAqL1xyXG4gIHB1YmxpYyBjcmVhdGVkQXQ6IERhdGUgPSBuZXcgRGF0ZSgpO1xyXG5cclxuICAvLyA9PT0gQVVESVRPUklBID09PVxyXG4gIC8qKiBJRCBkbyBhZG1pbiBxdWUgY3Jpb3UgbyBsb3RlICovXHJcbiAgcHVibGljIGNyZWF0ZWRCeTogc3RyaW5nID0gJyc7XHJcblxyXG4gIC8vID09PSBJTkZPUk1Bw4fDlUVTIERPIERJU1RSSUJVSURPUiA9PT1cclxuICAvKiogSUQgZG8gZGlzdHJpYnVpZG9yIHF1ZSByZWNlYmVyw6EgYXMgbGljZW7Dp2FzICovXHJcbiAgcHVibGljIGRpc3RyaWJ1dG9ySWQ6IHN0cmluZyA9ICcnO1xyXG5cclxuICAvKiogTm9tZSBkbyBkaXN0cmlidWlkb3IgKHBhcmEgZmFjaWxpdGFyIGNvbnN1bHRhcykgKi9cclxuICBwdWJsaWMgZGlzdHJpYnV0b3JOYW1lOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgLyoqIFF1YW50aWRhZGUgZGUgbGljZW7Dp2FzIGV4cGlyYWRhcyAqL1xyXG4gIHB1YmxpYyBleHBpcmVkTGljZW5zZXM6IG51bWJlciA9IDA7XHJcblxyXG4gIC8qKiBEaWFzIGRlIHRvbGVyw6JuY2lhIGFww7NzIGV4cGlyYcOnw6NvICovXHJcbiAgcHVibGljIGdyYWNlUGVyaW9kRGF5czogbnVtYmVyID0gMDtcclxuICBwdWJsaWMgaWQ6IHN0cmluZyA9ICcnO1xyXG5cclxuICAvLyA9PT0gQ09ORklHVVJBw4fDlUVTIERFIExJQ0VOw4dBID09PVxyXG4gIC8qKiBUaXBvIGRlIGxpY2Vuw6dhIHF1ZSBzZXLDoSBnZXJhZGEgbmVzdGUgbG90ZSAqL1xyXG4gIHB1YmxpYyBsaWNlbnNlVHlwZTogRVBheWlvTGljZW5zZVR5cGUgPSBFUGF5aW9MaWNlbnNlVHlwZS5TVUJTQ1JJUFRJT047XHJcblxyXG4gIC8qKiBMb2dzIGRlIG9wZXJhw6fDtWVzIGRvIGxvdGUgKi9cclxuICBwdWJsaWMgbG9nczogc3RyaW5nW10gPSBbXTtcclxuXHJcbiAgLyoqIFByZcOnbyB0b3RhbCBuZWdvY2lhZG8gY29tIG8gZGlzdHJpYnVpZG9yICovXHJcbiAgcHVibGljIG5lZ290aWF0ZWRQcmljZTogbnVtYmVyID0gMDtcclxuXHJcbiAgLy8gPT09IE1FVEFEQURPUyA9PT1cclxuICAvKiogT2JzZXJ2YcOnw7VlcyBvdSBub3RhcyBzb2JyZSBvIGxvdGUgKi9cclxuICBwdWJsaWMgbm90ZXM/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBRdWFudGlkYWRlIGRlIGxpY2Vuw6dhcyByZXZvZ2FkYXMgKi9cclxuICBwdWJsaWMgcmV2b2tlZExpY2Vuc2VzOiBudW1iZXIgPSAwO1xyXG5cclxuICAvKiogSW5kaWNhIHNlIMOpIGFtYmllbnRlIHNhbmRib3ggKi9cclxuICBwdWJsaWMgc2FuZGJveDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKiogTsO6bWVybyBzZXF1ZW5jaWFsIGRlbnRybyBkbyBhbm8gKi9cclxuICBwdWJsaWMgc2VxdWVudGlhbE51bWJlcjogbnVtYmVyID0gMDtcclxuXHJcbiAgLyoqIFN0YXR1cyBhdHVhbCBkbyBsb3RlICovXHJcbiAgcHVibGljIHN0YXR1czogRVBheWlvQWN0aXZhdGlvbkJhdGNoU3RhdHVzID0gRVBheWlvQWN0aXZhdGlvbkJhdGNoU3RhdHVzLlBST0NFU1NJTkc7XHJcblxyXG4gIC8qKiBUYWdzIHBhcmEgYnVzY2EgZSBpbmRleGHDp8OjbyAqL1xyXG4gIHB1YmxpYyB0YWdzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAvLyA9PT0gQ09OVFJPTEUgRSBFU1RPUVVFIERFIExJQ0VOw4dBUyA9PT1cclxuICAvKiogUXVhbnRpZGFkZSB0b3RhbCBkZSBsaWNlbsOnYXMgbm8gbG90ZSAqL1xyXG4gIHB1YmxpYyB0b3RhbExpY2Vuc2VzOiBudW1iZXIgPSAwO1xyXG5cclxuICAvLyA9PT0gSU5GT1JNQcOHw5VFUyBDT01FUkNJQUlTID09PVxyXG4gIC8qKiBQcmXDp28gdW5pdMOhcmlvIHBvciBsaWNlbsOnYSAqL1xyXG4gIHB1YmxpYyB1bml0UHJpY2U6IG51bWJlciA9IDA7XHJcblxyXG4gIC8qKiBEYXRhIGRhIMO6bHRpbWEgYXR1YWxpemHDp8OjbyAqL1xyXG4gIHB1YmxpYyB1cGRhdGVkQXQ6IERhdGUgPSBuZXcgRGF0ZSgpO1xyXG5cclxuICAvKiogUGVyw61vZG8gZGUgdmFsaWRhZGUgZGEgbGljZW7Dp2EgZW0gbWVzZXMgKHBhcmEgZGVmaW5pw6fDo28gY29tZXJjaWFsKSAqL1xyXG4gIHB1YmxpYyB2YWxpZGl0eVBlcmlvZE1vbnRoczogbnVtYmVyID0gMTI7XHJcblxyXG4gIC8qKiBQZXLDrW9kbyBkZSB2YWxpZGFkZSBkYSBsaWNlbsOnYSBkbyB0aXBvIHRyaWFsIGVtIGRpYXMgKHBhcmEgZGVmaW5pw6fDo28gY29tZXJjaWFsKSAqL1xyXG4gIHB1YmxpYyB2YWxpZGl0eVRyaWFsUGVyaW9kRGF5czogbnVtYmVyID0gMDtcclxuXHJcbiAgLyoqIFZlcnPDo28gb3UgaW50ZXJ2YWxvIGRlIHZlcnPDtWVzIGRvIHNvZnR3YXJlIGNvYmVydGFzICovXHJcbiAgcHVibGljIHZlcnNpb25Db25zdHJhaW50OiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAvKiogQW5vIGRlIHJlZmVyw6puY2lhIGRvIGxvdGUgKi9cclxuICBwdWJsaWMgeWVhcjogbnVtYmVyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihkYXRhPzogUGFydGlhbDxQYXlpb0FjdGl2YXRpb25CYXRjaEVudGl0eT4pIHtcclxuICAgIGlmIChkYXRhKSB7XHJcbiAgICAgIGZvciAobGV0IGtleSBpbiBkYXRhKSB7XHJcbiAgICAgICAgaWYgKGRhdGEuaGFzT3duUHJvcGVydHkoa2V5KSAmJiBrZXkgaW4gdGhpcykge1xyXG4gICAgICAgICAgKHRoaXMgYXMgYW55KVtrZXldID0gKGRhdGEgYXMgYW55KVtrZXldO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=