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