@universis/candidates
Version:
Universis api server plugin for study program candidates, internship selection etc
60 lines (44 loc) • 3.28 kB
JavaScript
;var _data = require("@themost/data");
var _common = require("@themost/common");var _dec, _class;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
StudyProgramEnrollmentEvent = (_dec =
_data.EdmMapping.func('showRequests', _data.EdmType.CollectionOf('StudyProgramRegisterAction')), (_class = class StudyProgramEnrollmentEvent extends _data.DataObject {constructor() {super();}
getStudyProgramRegisterActions() {var _this = this;return _asyncToGenerator(function* () {
const enrollmentEvent = yield _this.context.
model('StudyProgramEnrollmentEvent').
where('viewers/name').
equal(_this.context.user.name).
and("id").
equal(_this.getId()).
select('id').
getItem();
if (enrollmentEvent) {
return _this.context.model('StudyProgramRegisterAction').
where('studyProgramEnrollmentEvent').
equal(enrollmentEvent.id).
and('actionStatus/alternateName').
notEqual('PotentialActionStatus').
select('requests').
expand(
{
'name': 'reviews',
'options': {
'$expand': 'createdBy($select=UserInfo)' } },
{
'name': 'attachments' },
{
'name': 'messages',
'options': {
'$expand': 'attachments,sender($select=id,name,alternateName)',
'$orderby': 'dateCreated desc' } },
{
'name': 'specialization',
'options': {
'$select': 'id, name, specialty' } }).
silent().
prepare();
} else {
throw new _common.HttpForbiddenError("User is not a viewer of the given enrollment event");
}})();
}}, (_applyDecoratedDescriptor(_class.prototype, "getStudyProgramRegisterActions", [_dec], Object.getOwnPropertyDescriptor(_class.prototype, "getStudyProgramRegisterActions"), _class.prototype)), _class));
module.exports = StudyProgramEnrollmentEvent;
//# sourceMappingURL=StudyProgramEnrollmentEvent.js.map