UNPKG

@universis/candidates

Version:

Universis api server plugin for study program candidates, internship selection etc

47 lines (31 loc) 3.37 kB
"use strict";var _data = require("@themost/data");var _dec, _dec2, _dec3, _dec4, _class, _class2;function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {try {var info = gen[key](arg);var value = info.value;} catch (error) {reject(error);return;}if (info.done) {resolve(value);} else {Promise.resolve(value).then(_next, _throw);}}function _asyncToGenerator(fn) {return function () {var self = this,args = arguments;return new Promise(function (resolve, reject) {var gen = fn.apply(self, args);function _next(value) {asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);}function _throw(err) {asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);}_next(undefined);});};}function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) {var desc = {};Object.keys(descriptor).forEach(function (key) {desc[key] = descriptor[key];});desc.enumerable = !!desc.enumerable;desc.configurable = !!desc.configurable;if ('value' in desc || desc.initializer) {desc.writable = true;}desc = decorators.slice().reverse().reduce(function (desc, decorator) {return decorator(target, property, desc) || desc;}, desc);if (context && desc.initializer !== void 0) {desc.value = desc.initializer ? desc.initializer.call(context) : void 0;desc.initializer = undefined;}if (desc.initializer === void 0) {Object.defineProperty(target, property, desc);desc = null;}return desc;}let InternshipRegisterAction = (_dec = _data.EdmMapping.entityType('InternshipRegisterAction'), _dec2 = _data.EdmMapping.func('review', 'InternshipRegisterActionReview'), _dec3 = _data.EdmMapping.param('item', 'InternshipRegisterActionReview', true, true), _dec4 = _data.EdmMapping.action('review', 'InternshipRegisterActionReview'), _dec(_class = (_class2 = class InternshipRegisterAction extends _data.DataObject {/** * Gets item review */getReview() {return this.context.model('InternshipRegisterActionReview').where('itemReviewed').equal(this.getId()).prepare();} /** * Set item review * @param {*} item */setReview(item) {var _this = this;return _asyncToGenerator(function* () {const InternshipRegisterActionReviews = _this.context.model('InternshipRegisterActionReview'); // infer object state const currentReview = yield InternshipRegisterActionReviews.where('itemReviewed').equal(_this.getId()).getItem();if (currentReview == null) {if (item == null) { return; } // a new item is going to be inserted delete item.id; // set reviewed item item.itemReviewed = _this.getId(); } else { if (item == null) { // delete review InternshipRegisterActionReviews.remove(currentReview); } // up item.id = currentReview.id; // set reviewed item item.itemReviewed = _this.getId(); } return InternshipRegisterActionReviews.save(item);})(); }}, (_applyDecoratedDescriptor(_class2.prototype, "getReview", [_dec2], Object.getOwnPropertyDescriptor(_class2.prototype, "getReview"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, "setReview", [_dec3, _dec4], Object.getOwnPropertyDescriptor(_class2.prototype, "setReview"), _class2.prototype)), _class2)) || _class); module.exports = InternshipRegisterAction; //# sourceMappingURL=InternshipRegisterAction.js.map