Skip to content

Commit c27992a

Browse files
committed
fix: introduce includeDeleted param to cardMapper
Signed-off-by: grnd-alt <git@belakkaf.net>
1 parent cfd69d2 commit c27992a

File tree

2 files changed

+13
-7
lines changed

2 files changed

+13
-7
lines changed

lib/Command/UserExport.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ protected function execute(InputInterface $input, OutputInterface $output): int
6868
$stacks = $this->stackMapper->findAll($board->getId());
6969
foreach ($stacks as $stack) {
7070
$data[$board->getId()]['stacks'][$stack->getId()] = $stack->jsonSerialize();
71-
$cards = $this->cardMapper->findAllByStack($stack->getId());
71+
$cards = $this->cardMapper->findAllByStack($stackId = $stack->getId(), null, null, $includeDeleted = true);
7272
foreach ($cards as $card) {
7373
if ($card->getDeletedAt() > 0) {
7474
continue;

lib/Db/CardMapper.php

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -276,28 +276,34 @@ public function findAllArchivedForStacks(array $stackIds): array {
276276
return $cards;
277277
}
278278

279-
public function findAllByStack(int $stackId, ?int $limit = null, ?int $offset = null): array {
279+
public function findAllByStack(int $stackId, ?int $limit = null, ?int $offset = null, bool $includeDeleted = false): array {
280280
$qb = $this->db->getQueryBuilder();
281281
$qb->select('*')
282282
->from('deck_cards')
283283
->where($qb->expr()->eq('stack_id', $qb->createNamedParameter($stackId, IQueryBuilder::PARAM_INT)))
284-
->andWhere($qb->expr()->eq('archived', $qb->createNamedParameter(false, IQueryBuilder::PARAM_BOOL)))
285-
->setMaxResults($limit)
284+
->andWhere($qb->expr()->eq('archived', $qb->createNamedParameter(false, IQueryBuilder::PARAM_BOOL)));
285+
if (!$includeDeleted) {
286+
$qb->andWhere($qb->expr()->eq('deleted_at', $qb->createNamedParameter(0, IQueryBuilder::PARAM_INT)));
287+
}
288+
$qb->setMaxResults($limit)
286289
->setFirstResult($offset)
287290
->orderBy('order')
288291
->addOrderBy('id');
289292
return $this->findEntities($qb);
290293
}
291294

292-
public function findAllByBoardId(int $boardId, ?int $limit = null, ?int $offset = null): array {
295+
public function findAllByBoardId(int $boardId, ?int $limit = null, ?int $offset = null, bool $includeDeleted = false): array {
293296
$qb = $this->db->getQueryBuilder();
294297
$qb->select('c.*')
295298
->from('deck_cards', 'c')
296299
->innerJoin('c', 'deck_stacks', 's', 's.id = c.stack_id')
297300
->innerJoin('s', 'deck_boards', 'b', 'b.id = s.board_id')
298301
->where($qb->expr()->eq('board_id', $qb->createNamedParameter($boardId, IQueryBuilder::PARAM_INT)))
299-
->andWhere($qb->expr()->eq('archived', $qb->createNamedParameter(false, IQueryBuilder::PARAM_BOOL)))
300-
->setMaxResults($limit)
302+
->andWhere($qb->expr()->eq('archived', $qb->createNamedParameter(false, IQueryBuilder::PARAM_BOOL)));
303+
if (!$includeDeleted) {
304+
$qb->andWhere($qb->expr()->eq('c.deleted_at', $qb->createNamedParameter(0, IQueryBuilder::PARAM_INT)));
305+
}
306+
$qb->setMaxResults($limit)
301307
->setFirstResult($offset)
302308
->orderBy('c.lastmodified')
303309
->addOrderBy('c.id');

0 commit comments

Comments
 (0)