@magic.batua/recharge
Version:
The Recharge module manages all the mobile prepaid, datacard and DTH recharge functionalities of the Magic Batua platform.
51 lines • 1.96 kB
JavaScript
;
/**
* @module RechargeBill
* @overview Defines the model for a `RechargeBill`
*
* @author Animesh Mishra <hello@animesh.ltd>
* @copyright © Animesh Ltd. All Rights Reserved.
*/
Object.defineProperty(exports, "__esModule", { value: true });
const Operator_1 = require("./Source/Operator");
exports.Operator = Operator_1.Operator;
const DTH_1 = require("./Source/DTH");
exports.DTH = DTH_1.DTH;
const Datacard_1 = require("./Source/Datacard");
exports.Datacard = Datacard_1.Datacard;
const MobilePrepaid_1 = require("./Source/Mobile/MobilePrepaid");
exports.MobilePrepaid = MobilePrepaid_1.MobilePrepaid;
const MobilePostpaid_1 = require("./Source/Mobile/MobilePostpaid");
exports.MobilePostpaid = MobilePostpaid_1.MobilePostpaid;
const Fixedline_1 = require("./Source/Fixedline");
exports.Fixedline = Fixedline_1.Fixedline;
class RechargeBill {
constructor(instructions, response) {
// Set transaction category
switch (instructions.constructor) {
case Datacard_1.Datacard:
this.service = "Datacard";
break;
case DTH_1.DTH:
this.service = "DTH";
break;
case MobilePrepaid_1.MobilePrepaid:
this.service = "Mobile Prepaid";
break;
case MobilePostpaid_1.MobilePostpaid:
this.service = "Mobile Postpaid";
break;
default:
this.service = "Fixedline and Broadband";
}
this.instructions = instructions;
this.status = response.status;
this.vendorReference = response.rocket_trans_id;
this.operatorReference = response.opr_transid;
this.amountCharged = Number(response.charged_amount);
this.commission = response.commission;
this.date = new Date(response.datetime);
}
}
exports.RechargeBill = RechargeBill;
//# sourceMappingURL=index.js.map