theendsoaper
Version:
Access Untill Tills with SOAP from Node.js and parse the results as objects, some extra useful functions in as well.
48 lines (43 loc) • 1.77 kB
JavaScript
const ReportOrder = require('./report-order');
const Bill = require('./bill');
module.exports = class Report {
constructor(report) {
this.id = report['Id'];
this.openDateTime = report['OpenDateTime'];
this.closeDateTime = report['CloseDateTime'];
this.tranNumber = report['TranNumber'];
this.tableNumber = report['TableNumber'];
this.tablePart = report['TablePart'];
this.covers = report['Covers'];
this.userId = report['UserId'];
this.discountOnTotal = report['DiscountOnTotal'];
this.serviceCharge = report['ServiceCharge'];
this.clientName = report['ClientName'];
var list = [];
if (report['Orders']['item'] === undefined) {
// console.log(report);
} else if (report['Orders']['item'].length === undefined) {
list.push(new ReportOrder(report['Orders']['item']));
} else {
for (var i in report['Orders']['item']) {
list.push(new ReportOrder(report['Orders']['item'][i]));
}
}
this.orders = list;
var bList = [];
if (report['Bills'] && report['Bills']['item']) {
if (report['Bills']['item'].length === undefined) {
bList.push(new Bill(report['Bills']['item']));
} else {
for (var i in report['Bills']['item'][i]) {
bList.push(new Bill(report['Bills']['item'][i]))
}
}
}
this.bills = bList;
this.proformas = report['Proformas'];
this.billReprints = report['BillReprints'];
this.extra = report['Extra'];
this.clientId = report['ClientId'];
}
}