UNPKG

reldens

Version:
72 lines (65 loc) 1.95 kB
/** * * Reldens - ObjectsItemsInventoryModel * */ const { MikroOrmCore } = require('@reldens/storage'); const { EntitySchema } = MikroOrmCore; class ObjectsItemsInventoryModel { constructor(id, owner_id, item_id, qty, remaining_uses, is_active) { this.id = id; this.owner_id = owner_id; this.item_id = item_id; this.qty = qty; this.remaining_uses = remaining_uses; this.is_active = is_active; } static createByProps(props) { const {id, owner_id, item_id, qty, remaining_uses, is_active} = props; return new this(id, owner_id, item_id, qty, remaining_uses, is_active); } } const schema = new EntitySchema({ class: ObjectsItemsInventoryModel, tableName: 'objects_items_inventory', properties: { id: { type: 'number', primary: true }, owner_id: { type: 'number', persist: false }, item_id: { type: 'number', persist: false }, qty: { type: 'number', nullable: true }, remaining_uses: { type: 'number', nullable: true }, is_active: { type: 'number', nullable: true }, related_objects: { kind: 'm:1', entity: 'ObjectsModel', joinColumn: 'owner_id' }, related_items_item: { kind: 'm:1', entity: 'ItemsItemModel', joinColumn: 'item_id' } }, }); schema._fkMappings = { "owner_id": { "relationKey": "related_objects", "entityName": "ObjectsModel", "referencedColumn": "id", "nullable": false }, "item_id": { "relationKey": "related_items_item", "entityName": "ItemsItemModel", "referencedColumn": "id", "nullable": false } }; module.exports = { ObjectsItemsInventoryModel, entity: ObjectsItemsInventoryModel, schema: schema };