mirror of
https://github.com/plankanban/planka.git
synced 2025-07-19 13:19:44 +02:00
parent
ad7fb51cfa
commit
2ee1166747
1557 changed files with 76832 additions and 47042 deletions
46
server/api/hooks/query-methods/models/BoardSubscription.js
Normal file
46
server/api/hooks/query-methods/models/BoardSubscription.js
Normal file
|
@ -0,0 +1,46 @@
|
|||
/*!
|
||||
* Copyright (c) 2024 PLANKA Software GmbH
|
||||
* Licensed under the Fair Use License: https://github.com/plankanban/planka/blob/master/LICENSE.md
|
||||
*/
|
||||
|
||||
const defaultFind = (criteria) => BoardSubscription.find(criteria).sort('id');
|
||||
|
||||
/* Query methods */
|
||||
|
||||
const createOne = (values) => BoardSubscription.create({ ...values }).fetch();
|
||||
|
||||
const getByIds = (ids) => defaultFind(ids);
|
||||
|
||||
const getByBoardId = (boardId, { exceptUserIdOrIds } = {}) => {
|
||||
const criteria = {
|
||||
boardId,
|
||||
};
|
||||
|
||||
if (exceptUserIdOrIds) {
|
||||
criteria.userId = {
|
||||
'!=': exceptUserIdOrIds,
|
||||
};
|
||||
}
|
||||
|
||||
return defaultFind(criteria);
|
||||
};
|
||||
|
||||
const getOneByBoardIdAndUserId = (boardId, userId) =>
|
||||
BoardSubscription.findOne({
|
||||
boardId,
|
||||
userId,
|
||||
});
|
||||
|
||||
// eslint-disable-next-line no-underscore-dangle
|
||||
const delete_ = (criteria) => BoardSubscription.destroy(criteria).fetch();
|
||||
|
||||
const deleteOne = (criteria) => BoardSubscription.destroyOne(criteria);
|
||||
|
||||
module.exports = {
|
||||
createOne,
|
||||
getByIds,
|
||||
getByBoardId,
|
||||
getOneByBoardIdAndUserId,
|
||||
deleteOne,
|
||||
delete: delete_,
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue