import {Field, FieldType, Model} from '@extollo/orm' import {Injectable} from '@extollo/di' import {User} from "./User.model"; export enum ServerRequestEndpoint { LIST_THREADS = 'sre.threads.list' } /** * ServerSentRequest Model */ @Injectable() export class ServerSentRequest extends Model { protected static table = 'server_request' protected static key = 'server_request_id' @Field(FieldType.serial) public server_request_id!: number @Field(FieldType.varchar) public endpoint!: ServerRequestEndpoint @Field(FieldType.int4, 'user_id') public userId!: number @Field(FieldType.boolean) public serviced!: boolean @Field(FieldType.json, 'request_data') public requestData: any @Field(FieldType.json, 'response_data') public responseData: any user() { return User.query() .where('user_id', '=', this.userId) .limit(1) .get() .first() } }