monorepo/services/services/literature-item.service.ts

43 lines
1022 B
TypeScript

import { Context, Service, ServiceBroker, ServiceSchema } from 'moleculer'
import DbConnection from '../mixins/db.mixin'
import { LiteratureItem } from '../models/literature-list'
export default class LiteratureItemService extends Service {
private DbMixin = new DbConnection(LiteratureItem).start()
// @ts-ignore
public constructor (public broker: ServiceBroker, schema: ServiceSchema<{}> = {}) {
super(broker)
this.parseServiceSchema(Service.mergeSchemas({
name: 'literature-item',
mixins: [this.DbMixin],
settings: {
fields: [
'_id',
'authors',
'name',
'publicationYear',
'publisher'
]
},
methods: {
async seedDB() {
await this.adapter.insertMany([
{
authors: [
'Friedrich Engels',
'Karl Marx'
],
name: 'Das Kapital',
publicationYear: 1867,
publisher: 'Verlag von Otto Meisner'
},
])
}
}
}, schema))
}
}