@universis/accommodation 1.1.2 → 1.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config/models/AccommodationPlace.json +45 -38
- package/dist/config/models/AccommodationRoom.json +13 -6
- package/dist/config/models/RoomType.json +246 -240
- package/dist/config/models/StudentAccommodationCard.json +73 -79
- package/dist/config/scope.access.js +37 -1
- package/dist/config/scope.access.js.map +1 -1
- package/dist/listeners/StudentAccommodationCardSaveListener.js +22 -5
- package/dist/listeners/StudentAccommodationCardSaveListener.js.map +1 -1
- package/dist/models/StudentAccommodationCard.js +170 -47
- package/dist/models/StudentAccommodationCard.js.map +1 -1
- package/package.json +1 -1
- package/src/config/models/AccommodationPlace.json +45 -38
- package/src/config/models/AccommodationRoom.json +13 -6
- package/src/config/models/RoomType.json +246 -240
- package/src/config/models/StudentAccommodationCard.json +73 -79
- package/src/config/scope.access.js +37 -1
- package/src/listeners/StudentAccommodationCardSaveListener.js +23 -6
- package/src/models/StudentAccommodationCard.js +157 -34
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StudentAccommodationCard.js","names":["_data","require","_common","_dec","_dec2","_dec3","_class","_class2","_applyDecoratedDescriptor","target","property","decorators","descriptor","context","desc","Object","keys","forEach","key","enumerable","configurable","initializer","writable","slice","reverse","reduce","decorator","value","call","undefined","defineProperty","StudentAccommodationCard","EdmMapping","entityType","param","action","DataObject","constructor","cancel","data","cancelReason","DataError","executeInTransactionAsync","model","where","equal","getId","select","flatten","getItem","DataNotFoundError","active","cardStatus","alternateName","save","requestStatus","actionStatus","prototype","getOwnPropertyDescriptor","module","exports"],"sources":["../../src/models/StudentAccommodationCard.js"],"sourcesContent":["\nimport { DataObject, EdmMapping } from '@themost/data';\nimport { DataError, DataNotFoundError } from \"@themost/common\"\n\n/**\n * @class\n \n * @property {number} id \n * @property {number} serialNumber \n * @property {boolean} active \n * @property {string} cancelReason \n * @property {string} notes \n * @property {AccommodationRequestAction|any} action \n * @property {AcademicYear|any} academicYear\n * @property {AcademicPeriod|any} academicPeriod\n * @property {Date} dateCreated \n * @property {Date} dateModified \n * @property {Date} validFrom \n * @property {Date} validThrough \n * @property {User|any} student \n */\n@EdmMapping.entityType('StudentAccommodationCard')\nclass StudentAccommodationCard extends DataObject {\n /**\n * @constructor\n */\n constructor() {\n super();\n }\n /**\n * POST StudentAccommodationCards/:id/Cancel\n */\n @EdmMapping.param('data', 'Object', false, true)\n @EdmMapping.action('cancel', 'StudentAccommodationCard')\n\n async cancel(data) {\n\n if (!data.cancelReason) {\n throw new DataError('E_CANCEL_REASON', 'Cancel Reason should be provided');\n }\n\n await this.context.executeInTransactionAsync(async () => {\n // find StudentAccommodationCard from id\n const StudentAccommodationCard = await this.context.model('StudentAccommodationCard')\n .where('id')\n .equal(this.getId())\n .select('id', 'active', 'action', 'student', 'academicPeriod', 'academicYear')\n .flatten()\n .getItem();\n\n // validate existance and permission\n if (StudentAccommodationCard == null) {\n throw new DataNotFoundError('The specified Student Accommodation Card cannot be found or is inaccessible');\n }\n // StudentAccommodationCard already cancelled throw error\n if (StudentAccommodationCard.active === false) {\n throw new DataError('E_ACTIVE', 'The specified Student Accommodation Card is already cancelled')\n }\n\n //validate AccommodationRequestAction\n if (StudentAccommodationCard.action == null) {\n throw new DataError('E_ACTION', 'The Student Accommodation Card is not linked to a Accommodation Request Action')\n }\n\n // cancel StudentAccommodationCard\n StudentAccommodationCard.cardStatus = {alternateName: \"CancelledActionStatus\"};\n StudentAccommodationCard.cancelReason = data.cancelReason;\n await this.context.model('StudentAccommodationCard').save(StudentAccommodationCard);\n\n const action = await this.context.model('AccommodationRequestAction').where('id').equal(StudentAccommodationCard.action).select('id', 'actionStatus/alternateName as requestStatus').getItem();\n //validate AccommodationRequestAction\n if (action == null) {\n throw new DataError('E_ACTION', 'The specified AccommodationRequestAction cannot be found or is inaccessible')\n }\n\n if (action.requestStatus !== 'CompletedActionStatus') {\n throw new DataError('E_ACTION', 'The specified AccommodationRequestAction is not in Completed state')\n }\n\n action.actionStatus = {\n alternateName: \"ActiveActionStatus\"\n }\n\n delete action.requestStatus;\n await this.context.model('AccommodationRequestAction').save(action);\n });\n }\n\n\n}\n\nmodule.exports = StudentAccommodationCard;"],"mappings":";AACA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA,oBAA8D,IAAAE,IAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,MAAA,EAAAC,OAAA,UAAAC,0BAAAC,MAAA,EAAAC,QAAA,EAAAC,UAAA,EAAAC,UAAA,EAAAC,OAAA,OAAAC,IAAA,MAAAC,MAAA,CAAAC,IAAA,CAAAJ,UAAA,EAAAK,OAAA,WAAAC,GAAA,GAAAJ,IAAA,CAAAI,GAAA,IAAAN,UAAA,CAAAM,GAAA,KAAAJ,IAAA,CAAAK,UAAA,KAAAL,IAAA,CAAAK,UAAA,CAAAL,IAAA,CAAAM,YAAA,KAAAN,IAAA,CAAAM,YAAA,gBAAAN,IAAA,IAAAA,IAAA,CAAAO,WAAA,GAAAP,IAAA,CAAAQ,QAAA,SAAAR,IAAA,GAAAH,UAAA,CAAAY,KAAA,GAAAC,OAAA,GAAAC,MAAA,WAAAX,IAAA,EAAAY,SAAA,UAAAA,SAAA,CAAAjB,MAAA,EAAAC,QAAA,EAAAI,IAAA,KAAAA,IAAA,IAAAA,IAAA,MAAAD,OAAA,IAAAC,IAAA,CAAAO,WAAA,cAAAP,IAAA,CAAAa,KAAA,GAAAb,IAAA,CAAAO,WAAA,GAAAP,IAAA,CAAAO,WAAA,CAAAO,IAAA,CAAAf,OAAA,WAAAC,IAAA,CAAAO,WAAA,GAAAQ,SAAA,MAAAf,IAAA,CAAAO,WAAA,cAAAN,MAAA,CAAAe,cAAA,CAAArB,MAAA,EAAAC,QAAA,EAAAI,IAAA,EAAAA,IAAA,gBAAAA,IAAA;;AAE9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAhBA;;AAkBMiB,wBAAwB,IAAA5B,IAAA,GAD7B6B,gBAAU,CAACC,UAAU,CAAC,0BAA0B,CAAC,EAAA7B,KAAA;;;;;;;;;;AAW7C4B,gBAAU,CAACE,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,EAAA7B,KAAA;AAC/C2B,gBAAU,CAACG,MAAM,CAAC,QAAQ,EAAE,0BAA0B,CAAC,EAAAhC,IAAA,CAAAG,MAAA,IAAAC,OAAA,GAZ5D,MACMwB,wBAAwB,SAASK,gBAAU,CAAC,CAC9C;AACJ;AACA,IACIC,WAAWA,CAAA,EAAG,CACV,KAAK,EAAE,CACX,CAAC,CACD;AACJ;AACA,KACI,MAGMC,MAAMA,CAACC,IAAI,EAAE,CAEf,IAAI,CAACA,IAAI,CAACC,YAAY,EAAE;MACpB,MAAM,IAAIC,iBAAS,CAAC,iBAAiB,EAAE,kCAAkC,CAAC;IAC9E;;IAEA,MAAM,IAAI,CAAC5B,OAAO,CAAC6B,yBAAyB,CAAC,YAAY;MACrD;MACA,MAAMX,wBAAwB,GAAG,MAAM,IAAI,CAAClB,OAAO,CAAC8B,KAAK,CAAC,0BAA0B,CAAC;MAChFC,KAAK,CAAC,IAAI,CAAC;MACXC,KAAK,CAAC,IAAI,CAACC,KAAK,EAAE,CAAC;MACnBC,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,CAAC;MAC7EC,OAAO,EAAE;MACTC,OAAO,EAAE;;MAEd;MACA,IAAIlB,wBAAwB,IAAI,IAAI,EAAE;QAClC,MAAM,IAAImB,yBAAiB,CAAC,6EAA6E,CAAC;MAC9G;MACA;MACA,IAAInB,wBAAwB,CAACoB,MAAM,KAAK,KAAK,EAAE;QAC3C,MAAM,IAAIV,iBAAS,CAAC,UAAU,EAAE,+DAA+D,CAAC;MACpG;;MAEA;MACA,IAAIV,wBAAwB,CAACI,MAAM,IAAI,IAAI,EAAE;QACzC,MAAM,IAAIM,iBAAS,CAAC,UAAU,EAAE,gFAAgF,CAAC;MACrH;;MAEA;MACAV,wBAAwB,CAACqB,UAAU,GAAG,EAACC,aAAa,EAAE,uBAAuB,EAAC;MAC9EtB,wBAAwB,CAACS,YAAY,GAAGD,IAAI,CAACC,YAAY;MACzD,MAAM,IAAI,CAAC3B,OAAO,CAAC8B,KAAK,CAAC,0BAA0B,CAAC,CAACW,IAAI,CAACvB,wBAAwB,CAAC;;MAEnF,MAAMI,MAAM,GAAG,MAAM,IAAI,CAACtB,OAAO,CAAC8B,KAAK,CAAC,4BAA4B,CAAC,CAACC,KAAK,CAAC,IAAI,CAAC,CAACC,KAAK,CAACd,wBAAwB,CAACI,MAAM,CAAC,CAACY,MAAM,CAAC,IAAI,EAAE,6CAA6C,CAAC,CAACE,OAAO,EAAE;MAC9L;MACA,IAAId,MAAM,IAAI,IAAI,EAAE;QAChB,MAAM,IAAIM,iBAAS,CAAC,UAAU,EAAE,6EAA6E,CAAC;MAClH;;MAEA,IAAIN,MAAM,CAACoB,aAAa,KAAK,uBAAuB,EAAE;QAClD,MAAM,IAAId,iBAAS,CAAC,UAAU,EAAE,oEAAoE,CAAC;MACzG;;MAEAN,MAAM,CAACqB,YAAY,GAAG;QAClBH,aAAa,EAAE;MACnB,CAAC;;MAED,OAAOlB,MAAM,CAACoB,aAAa;MAC3B,MAAM,IAAI,CAAC1C,OAAO,CAAC8B,KAAK,CAAC,4BAA4B,CAAC,CAACW,IAAI,CAACnB,MAAM,CAAC;IACvE,CAAC,CAAC;EACN;;;AAGJ,CAAC,GAAA3B,yBAAA,CAAAD,OAAA,CAAAkD,SAAA,aAAArD,KAAA,EAAAC,KAAA,GAAAU,MAAA,CAAA2C,wBAAA,CAAAnD,OAAA,CAAAkD,SAAA,aAAAlD,OAAA,CAAAkD,SAAA,IAAAlD,OAAA,MAAAD,MAAA;;AAEDqD,MAAM,CAACC,OAAO,GAAG7B,wBAAwB"}
|
|
1
|
+
{"version":3,"file":"StudentAccommodationCard.js","names":["_data","require","_common","_EnableAttachmentModel","_interopRequireDefault","_dec","_dec2","_dec3","_dec4","_dec5","_dec6","_dec7","_dec8","_dec9","_class","_class2","obj","__esModule","default","_applyDecoratedDescriptor","target","property","decorators","descriptor","context","desc","Object","keys","forEach","key","enumerable","configurable","initializer","writable","slice","reverse","reduce","decorator","value","call","undefined","defineProperty","StudentAccommodationCard","EdmMapping","entityType","param","action","EnableAttachmentModel","constructor","cancel","data","Args","notEmpty","cancelReason","LangUtils","isDate","dateCancelled","DataError","executeInTransactionAsync","_currentStudentAccomm","_currentStudentAccomm2","currentStudentAccommodationCard","model","where","equal","getId","select","expand","getItem","notNull","cardStatus","alternateName","save","room","accommodationRoom","id","notNumber","calculateOccupancy","err","TraceUtils","log","changeRoom","_data$accommodationRo","validThrough","_currentStudentAccomm3","_currentStudentAccomm4","newCard","student","academicYear","validFrom","currentAccommodationRoom","addToRoom","_data$accommodationRo2","_currentStudentAccomm5","revertToPending","_currentStudentAccomm6","_currentStudentAccomm7","prototype","getOwnPropertyDescriptor","currentOccupancy","and","groupBy","silent","totalOccupancy","total","maxOccupancy","module","exports"],"sources":["../../src/models/StudentAccommodationCard.js"],"sourcesContent":["\nimport { EdmMapping } from '@themost/data';\nimport { DataError, DataNotFoundError, Args, TraceUtils, LangUtils } from \"@themost/common\"\nimport EnableAttachmentModel from './EnableAttachmentModel';\n\n/**\n * @class\n \n * @property {number} id \n * @property {number} serialNumber \n * @property {boolean} active \n * @property {string} cancelReason \n * @property {string} notes \n * @property {AccommodationRequestAction|any} action \n * @property {AcademicYear|any} academicYear\n * @property {AcademicPeriod|any} academicPeriod\n * @property {Date} dateCreated \n * @property {Date} dateModified \n * @property {Date} validFrom \n * @property {Date} validThrough \n * @property {User|any} student \n */\n@EdmMapping.entityType('StudentAccommodationCard')\nclass StudentAccommodationCard extends EnableAttachmentModel {\n /**\n * @constructor\n */\n constructor() {\n super();\n }\n /**\n * POST StudentAccommodationCards/:id/Cancel\n */\n @EdmMapping.param('data', 'Object', false, true)\n @EdmMapping.action('cancel', 'StudentAccommodationCard')\n\n async cancel(data) {\n\n Args.notEmpty(data.cancelReason, 'Cancel Reason');\n\n if ( !LangUtils.isDate(data.dateCancelled) ) {\n throw new DataError('E_STATE', 'Cancel date can not be empty or invalid date');\n }\n await this.context.executeInTransactionAsync(async () => {\n // find StudentAccommodationCard from id\n const currentStudentAccommodationCard = await this.context.model('StudentAccommodationCard')\n .where('id')\n .equal(this.getId())\n .select('id', 'serialNumber', 'action', 'student', 'cardStatus', 'academicYear', 'isActive', 'validThrough', 'accommodationRoom')\n .expand('cardStatus')\n .getItem();\n\n Args.notNull(currentStudentAccommodationCard, 'The specified Student Accommodation Card' )\n // StudentAccommodationCard already cancelled throw error\n if ( currentStudentAccommodationCard?.cardStatus?.alternateName === 'CompletedActionStatus') {\n throw new DataError('E_ACTIVE', 'The specified Student Accommodation Card in not active')\n }\n // cancel StudentAccommodationCard\n currentStudentAccommodationCard.cardStatus = { alternateName: 'CompletedActionStatus' };\n currentStudentAccommodationCard.cancelReason = data.cancelReason;\n currentStudentAccommodationCard.dateCancelled = data.dateCancelled;\n await this.context.model('StudentAccommodationCard').save(currentStudentAccommodationCard);\n const room = currentStudentAccommodationCard.accommodationRoom?.id || currentStudentAccommodationCard?.accommodationRoom;\n Args.notNull(room, 'Accommodation room can not be empty');\n Args.notNumber(room, 'Accommodation room should be a number');\n await calculateOccupancy(this.context, room);\n },(err)=>{\n TraceUtils.log(err);\n });\n }\n\n @EdmMapping.param('data', 'Object', false, true)\n @EdmMapping.action('changeRoom', 'StudentAccommodationCard')\n\n async changeRoom(data) {\n\n const room = data.accommodationRoom?.id || data?.accommodationRoom;\n Args.notNull(room, 'Accommodation room can not be empty');\n Args.notNumber(room, 'Accommodation room should be a number');\n\n if ( !LangUtils.isDate(data.validThrough) ) {\n throw new DataError('E_STATE', 'Valid through date can not be empty or it is not a valid date');\n }\n \n Args.notEmpty(data.cancelReason, 'Cancel Reason cannot be empty');\n\n if ( !LangUtils.isDate(data.dateCancelled) ) {\n throw new DataError('E_STATE', 'Cancel date can not be empty or invalid date');\n }\n\n await this.context.executeInTransactionAsync(async () => {\n const currentStudentAccommodationCard = await this.context.model('StudentAccommodationCard')\n .where('id')\n .equal(this.getId())\n .select('id', 'serialNumber', 'action', 'student', 'cardStatus', 'academicYear', 'isActive', 'validThrough', 'accommodationRoom')\n .expand('cardStatus')\n .getItem();\n\n Args.notNull(currentStudentAccommodationCard, 'The specified Student Accommodation Card cannot be found or is inaccessible');\n\n if (currentStudentAccommodationCard?.cardStatus?.alternateName !== 'ActiveActionStatus') {\n throw new DataError('E_STATE', 'The accommodation room cannot be changed for inactive accommodation card');\n }\n const newCard = {\n action: currentStudentAccommodationCard.action,\n student: currentStudentAccommodationCard.student,\n accommodationRoom: room,\n academicYear: currentStudentAccommodationCard.academicYear,\n validFrom: data.validThrough,\n validThrough: currentStudentAccommodationCard.validThrough,\n cardStatus: {\n alternateName: 'ActiveActionStatus'\n }\n }\n\n currentStudentAccommodationCard.cancelReason = data.cancelReason;\n currentStudentAccommodationCard.dateCancelled = data.dateCancelled;\n currentStudentAccommodationCard.validThrough = data.dateCancelled;\n delete currentStudentAccommodationCard.cardStatus ;\n currentStudentAccommodationCard.cardStatus= { alternateName : 'CompletedActionStatus'};\n\n await this.context.model('StudentAccommodationCard').save(currentStudentAccommodationCard);\n const currentAccommodationRoom = currentStudentAccommodationCard.accommodationRoom?.id || currentStudentAccommodationCard?.accommodationRoom;\n Args.notNull(currentAccommodationRoom, 'The specified Student Accommodation Card does not contain any room');\n await calculateOccupancy(this.context, currentAccommodationRoom);\n await this.context.model('StudentAccommodationCards').save(newCard);\n await calculateOccupancy(this.context, room);\n },(err)=>{\n TraceUtils.log(err);\n });\n }\n\n @EdmMapping.param('data', 'Object', false, true)\n @EdmMapping.action('addToRoom', 'StudentAccommodationCard')\n\n async addToRoom(data) {\n const room = data.accommodationRoom?.id || data?.accommodationRoom;\n Args.notNull(room, 'Accommodation room can not be empty');\n Args.notNumber(room, 'Accommodation room should be a number');\n if (!LangUtils.isDate(data.validFrom)) {\n throw new DataError('E_STATE', 'Valid through date can not be empty or it is not a valid date');\n }\n await this.context.executeInTransactionAsync(async () => {\n const currentStudentAccommodationCard = await this.context.model('StudentAccommodationCard')\n .where('id')\n .equal(this.getId())\n .select('id', 'serialNumber', 'action', 'student', 'cardStatus', 'academicYear', 'isActive', 'validThrough')\n .expand('cardStatus')\n .getItem();\n Args.notNull(currentStudentAccommodationCard, 'The specified Student Accommodation Card cannot be found or is inaccessible');\n if (currentStudentAccommodationCard?.cardStatus?.alternateName !== 'ActiveActionStatus') {\n throw new DataError('E_STATE', 'Add to room action can only be applied when student accommodation card status is Active');\n }\n currentStudentAccommodationCard.accommodationRoom = room;\n currentStudentAccommodationCard.validFrom = data.validFrom;\n await this.context.model('StudentAccommodationCard').save(currentStudentAccommodationCard);\n await calculateOccupancy(this.context, room); // calculate occupancy after new room updated \n }, (err) => {\n TraceUtils.log(err);\n });\n }\n\n @EdmMapping.param('data', 'Object', false, true)\n @EdmMapping.action('revertToPending', 'StudentAccommodationCard')\n\n async revertToPending(data) {\n await this.context.executeInTransactionAsync(async () => {\n const currentStudentAccommodationCard = await this.context.model('StudentAccommodationCard')\n .where('id')\n .equal(this.getId())\n .select('id', 'serialNumber', 'action', 'student', 'cardStatus', 'academicYear', 'isActive', 'validThrough', 'accommodationRoom')\n .expand('cardStatus')\n .getItem();\n\n Args.notNull(currentStudentAccommodationCard, 'The specified Student Accommodation Card cannot be found or is inaccessible');\n if (currentStudentAccommodationCard?.cardStatus?.alternateName !== 'ActiveActionStatus') {\n throw new DataError('E_STATE', 'Inactive accommodation card');\n }\n\n const accommodationRoom = currentStudentAccommodationCard.accommodationRoom?.id || currentStudentAccommodationCard?.accommodationRoom;\n currentStudentAccommodationCard.cardStatus = { alternateName: 'ActiveActionStatus' };\n currentStudentAccommodationCard.accommodationRoom = null;\n await this.context.model('StudentAccommodationCard').save(currentStudentAccommodationCard);\n await calculateOccupancy(this.context, accommodationRoom);\n });\n }\n\n\n}\nasync function calculateOccupancy(context, accommodationRoom) {\n if (accommodationRoom == null) {\n return;\n }\n const currentOccupancy = await context.model('StudentAccommodationCard')\n .where('accommodationRoom').equal(accommodationRoom)\n .and('cardStatus/alternateName').equal('ActiveActionStatus')\n .and('accommodationRoom/outOfService').equal(0)\n .and('accommodationRoom/roomType/accessibleType').equal(1)\n .select('count(id) as total', 'accommodationRoom/occupancy as maxOccupancy')\n .groupBy('accommodationRoom/occupancy')\n .silent()\n .getItem();\n\n const totalOccupancy = (currentOccupancy && currentOccupancy.total) || 0;\n if (totalOccupancy && totalOccupancy > currentOccupancy.maxOccupancy) {\n throw new DataError('E_STATE', 'No room space for new resident');\n }\n\n await context.model('AccommodationRoom').save({\n id: accommodationRoom,\n currentOccupancy: totalOccupancy\n });\n}\n\nmodule.exports = StudentAccommodationCard;"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"sealed": false,
|
|
9
9
|
"implements": "Place",
|
|
10
10
|
"classPath": "./models/AccommodationPlace",
|
|
11
|
-
"version": "1.
|
|
11
|
+
"version": "1.1",
|
|
12
12
|
"fields": [
|
|
13
13
|
{
|
|
14
14
|
"@id": "http://schema.org/identifier",
|
|
@@ -25,13 +25,6 @@
|
|
|
25
25
|
"type": "Boolean",
|
|
26
26
|
"default": true
|
|
27
27
|
},
|
|
28
|
-
{
|
|
29
|
-
"name": "numberOfRooms",
|
|
30
|
-
"description": "The number of rooms (excluding bathrooms and closets) of the accommodation.",
|
|
31
|
-
"type": "Number",
|
|
32
|
-
"nullable": false,
|
|
33
|
-
"editable": true
|
|
34
|
-
},
|
|
35
28
|
{
|
|
36
29
|
"@id": "http://schema.org/events",
|
|
37
30
|
"name": "events",
|
|
@@ -56,6 +49,8 @@
|
|
|
56
49
|
"name": "address",
|
|
57
50
|
"title": "address",
|
|
58
51
|
"description": "Physical address of the item.",
|
|
52
|
+
"nested": true,
|
|
53
|
+
"many": true,
|
|
59
54
|
"type": "PostalAddress",
|
|
60
55
|
"mapping": {
|
|
61
56
|
"parentModel": "AccommodationPlace",
|
|
@@ -73,20 +68,20 @@
|
|
|
73
68
|
"description": "The geo coordinates of the accommodation.",
|
|
74
69
|
"type": "Json",
|
|
75
70
|
"additionalType": "GeoCoordinates"
|
|
76
|
-
|
|
77
|
-
|
|
71
|
+
},
|
|
72
|
+
{
|
|
78
73
|
"name": "locales",
|
|
79
74
|
"type": "AccommodationPlaceLocale",
|
|
80
75
|
"mapping": {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
76
|
+
"associationType": "association",
|
|
77
|
+
"cascade": "delete",
|
|
78
|
+
"parentModel": "AccommodationPlace",
|
|
79
|
+
"parentField": "id",
|
|
80
|
+
"childModel": "AccommodationPlaceLocale",
|
|
81
|
+
"childField": "object"
|
|
87
82
|
}
|
|
88
|
-
|
|
89
|
-
|
|
83
|
+
},
|
|
84
|
+
{
|
|
90
85
|
"name": "locale",
|
|
91
86
|
"type": "AccommodationPlaceLocale",
|
|
92
87
|
"readonly": true,
|
|
@@ -95,35 +90,47 @@
|
|
|
95
90
|
"expandable": true,
|
|
96
91
|
"multiplicity": "ZeroOrOne",
|
|
97
92
|
"mapping": {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
93
|
+
"associationType": "association",
|
|
94
|
+
"cascade": "delete",
|
|
95
|
+
"parentModel": "AccommodationPlace",
|
|
96
|
+
"parentField": "id",
|
|
97
|
+
"childModel": "AccommodationPlaceLocale",
|
|
98
|
+
"childField": "object",
|
|
99
|
+
"options": {
|
|
100
|
+
"$filter": "inLanguage eq lang()",
|
|
101
|
+
"$first": true
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"name": "rooms",
|
|
107
|
+
"type": "AccommodationRoom",
|
|
108
|
+
"mapping": {
|
|
109
|
+
"associationType": "association",
|
|
110
|
+
"cascade": "delete",
|
|
111
|
+
"parentModel": "AccommodationPlace",
|
|
112
|
+
"parentField": "id",
|
|
113
|
+
"childModel": "AccommodationRoom",
|
|
114
|
+
"childField": "containedInPlace"
|
|
108
115
|
}
|
|
109
|
-
|
|
116
|
+
}
|
|
110
117
|
],
|
|
111
118
|
"eventListeners": [
|
|
112
119
|
{
|
|
113
|
-
|
|
120
|
+
"type": "@themost/data/previous-state-listener"
|
|
114
121
|
},
|
|
115
122
|
{
|
|
116
|
-
|
|
123
|
+
"type": "./listeners/data-localization"
|
|
117
124
|
}
|
|
118
125
|
],
|
|
119
126
|
"constraints": [
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
+
{
|
|
128
|
+
"type": "unique",
|
|
129
|
+
"fields": [
|
|
130
|
+
"identifier"
|
|
131
|
+
]
|
|
132
|
+
}
|
|
133
|
+
],
|
|
127
134
|
"privileges": [
|
|
128
135
|
{
|
|
129
136
|
"mask": 1,
|
|
@@ -9,11 +9,6 @@
|
|
|
9
9
|
"implements": "AccommodationPlace",
|
|
10
10
|
"version": "2.0.1",
|
|
11
11
|
"fields": [
|
|
12
|
-
{
|
|
13
|
-
"name": "bed",
|
|
14
|
-
"type": "Text",
|
|
15
|
-
"size": 500
|
|
16
|
-
},
|
|
17
12
|
{
|
|
18
13
|
"name": "floor",
|
|
19
14
|
"type": "Text",
|
|
@@ -24,7 +19,7 @@
|
|
|
24
19
|
"type": "Text",
|
|
25
20
|
"size": 500
|
|
26
21
|
},
|
|
27
|
-
|
|
22
|
+
{
|
|
28
23
|
"name": "roomType",
|
|
29
24
|
"description": "Tύπος δωματίου",
|
|
30
25
|
"type": "RoomType",
|
|
@@ -161,7 +156,19 @@
|
|
|
161
156
|
"$first": true
|
|
162
157
|
}
|
|
163
158
|
}
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
"name": "cards",
|
|
162
|
+
"type": "StudentAccommodationCard",
|
|
163
|
+
"mapping": {
|
|
164
|
+
"associationType": "association",
|
|
165
|
+
"cascade": "delete",
|
|
166
|
+
"parentModel": "AccommodationRoom",
|
|
167
|
+
"parentField": "id",
|
|
168
|
+
"childModel": "StudentAccommodationCard",
|
|
169
|
+
"childField": "accommodationRoom"
|
|
164
170
|
}
|
|
171
|
+
}
|
|
165
172
|
],
|
|
166
173
|
"eventListeners": [
|
|
167
174
|
{
|