Livebeat is now able to send, store and show beats
This commit is contained in:
11
backend/models/beat/beat.interface.ts
Normal file
11
backend/models/beat/beat.interface.ts
Normal file
@@ -0,0 +1,11 @@
|
||||
import { Document } from 'mongoose';
|
||||
import { IPhone } from '../phone/phone.interface';
|
||||
|
||||
export interface IBeat extends Document {
|
||||
coordinate?: number[],
|
||||
accuracy: number,
|
||||
speed: number,
|
||||
battery?: number,
|
||||
phone: IPhone,
|
||||
createdAt?: Date
|
||||
}
|
||||
6
backend/models/beat/beat.model..ts
Normal file
6
backend/models/beat/beat.model..ts
Normal file
@@ -0,0 +1,6 @@
|
||||
import { Model, model } from 'mongoose';
|
||||
import { IBeat } from './beat.interface';
|
||||
import { schemaBeat } from './beat.schema';
|
||||
|
||||
const modelBeat: Model<IBeat> = model<IBeat>('Beat', schemaBeat, 'Beat');
|
||||
export { modelBeat as Beat };
|
||||
16
backend/models/beat/beat.schema.ts
Normal file
16
backend/models/beat/beat.schema.ts
Normal file
@@ -0,0 +1,16 @@
|
||||
import { Schema, SchemaTypes } from 'mongoose';
|
||||
import { Phone } from '../phone/phone.model';
|
||||
|
||||
const schemaBeat = new Schema({
|
||||
coordinate: { type: [Number], required: false },
|
||||
accuracy: { type: Number, required: false },
|
||||
speed: { type: Number, required: false },
|
||||
battery: { type: Number, required: false },
|
||||
phone: { type: SchemaTypes.ObjectId, required: true, default: 'user' }
|
||||
}, {
|
||||
timestamps: {
|
||||
createdAt: true
|
||||
}
|
||||
});
|
||||
|
||||
export { schemaBeat };
|
||||
Reference in New Issue
Block a user