tududi/backend/modules/views/repository.js
Chris 542be2c1e9
Fix bug 366 (#764)
* Optimize DB

* Clean up names

* fixup! Clean up names

* fixup! fixup! Clean up names
2026-01-07 18:18:07 +02:00

39 lines
958 B
JavaScript

'use strict';
const BaseRepository = require('../../shared/database/BaseRepository');
const { View } = require('../../models');
class ViewsRepository extends BaseRepository {
constructor() {
super(View);
}
async findAllByUser(userId) {
return this.model.findAll({
where: { user_id: userId },
order: [
['is_pinned', 'DESC'],
['created_at', 'DESC'],
],
});
}
async findPinnedByUser(userId) {
return this.model.findAll({
where: { user_id: userId, is_pinned: true },
order: [['created_at', 'DESC']],
});
}
async findByUidAndUser(uid, userId) {
return this.model.findOne({
where: { uid, user_id: userId },
});
}
async createForUser(userId, data) {
return this.model.create({ ...data, user_id: userId });
}
}
module.exports = new ViewsRepository();