@apihawk/billia-sdk
Version:
The ApiHawk Billia SDK
71 lines (70 loc) • 2.79 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
const billia_sdk_service_base_1 = require("../lib/billia-sdk-service-base");
const to_rest_resource_1 = require("./common/to-rest-resource");
class BilliaSDKCommunication extends billia_sdk_service_base_1.BilliaSDKServiceBase {
/**
* Get communication item
* @param {number | string} id
* @param {IApihawkSession} session
* @returns {Promise<ICustomerGearTask>}
*/
getCommunicationItem(id, session) {
return __awaiter(this, void 0, void 0, function* () {
return yield this.api.call({
url: `/customer_gear_task/${id}`,
method: 'GET',
session,
headers: {
'Accept-Response': 'Advanced'
}
});
});
}
/**
* Get communications
* @param {IApihawkSession} session
* @param query
* @returns {Promise<IRestPaginatedResource<IAffiliateCommissionEntity>>}
*/
getCommunications(session, query = {}) {
return __awaiter(this, void 0, void 0, function* () {
const q = query || {};
const filterData = {
where: [
{
field: 'type',
where: 'and',
type: 'equalTo',
value: 'Mail'
}
]
};
if (q.sort_by && q.sort_order) {
switch (q.sort_by) {
case 'job_id':
filterData.order = [{ field: 'job_id', sort: q.sort_order }];
break;
}
}
filterData.page = q.page || 1;
filterData.page_size = q.page_size || 25;
const commission = yield this.api.call({
url: '/customer_gear_task',
method: 'GET',
query: filterData,
session
});
return to_rest_resource_1.toRestResource(commission, 'customer_gear_task');
});
}
}
exports.BilliaSDKCommunication = BilliaSDKCommunication;