• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

khu-khlug / sight-backend / 13014680052

28 Jan 2025 04:11PM UTC coverage: 57.757% (+0.01%) from 57.744%
13014680052

push

github

web-flow
fix: 회원 목록 조회 기능이 정상적으로 동작하도록 수정 (#90)

504 of 1412 branches covered (35.69%)

Branch coverage included in aggregate %.

0 of 4 new or added lines in 2 files covered. (0.0%)

9 existing lines in 3 files now uncovered.

1391 of 1869 relevant lines covered (74.42%)

6.43 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/src/app/application/user/query/listUser/ListUserQueryHandler.ts
1
import { EntityRepository } from '@mikro-orm/mysql';
2
import { InjectRepository } from '@mikro-orm/nestjs';
×
3
import { Injectable } from '@nestjs/common';
×
4
import { IQueryHandler, QueryHandler } from '@nestjs/cqrs';
×
5

×
6
import { ListUserQuery } from '@khlug/app/application/user/query/listUser/ListUserQuery';
7
import { ListUserQueryResult } from '@khlug/app/application/user/query/listUser/ListUserQueryResult';
8
import { UserListView } from '@khlug/app/application/user/query/view/UserListView';
×
9

10
import { User } from '@khlug/app/domain/user/model/User';
11

×
12
@Injectable()
×
13
@QueryHandler(ListUserQuery)
14
export class ListUserQueryHandler
15
  implements IQueryHandler<ListUserQuery, ListUserQueryResult>
16
{
17
  constructor(
18
    @InjectRepository(User)
19
    private readonly userRepository: EntityRepository<User>,
20
  ) {}
21

22
  async execute(query: ListUserQuery): Promise<ListUserQueryResult> {
23
    const { email, name, college, grade, state, limit, offset } = query;
24

25
    const qb = this.userRepository.createQueryBuilder('user');
×
26

27
    if (email) {
NEW
28
      qb.andWhere('email LIKE ?', [`%${email}%`]);
×
29
    }
×
30

×
31
    if (name) {
×
32
      qb.andWhere('realname LIKE ?', [`%${name}%`]);
33
    }
34

35
    if (college) {
×
NEW
36
      qb.andWhere('college LIKE ?', [`%${college}%`]);
×
37
    }
38

39
    if (grade) {
NEW
40
      qb.andWhere('grade = ?', [grade]);
×
41
    }
×
42

43
    if (state) {
44
      qb.andWhere('state = ?', [state]);
45
    }
×
46

×
47
    const [users, count] = await qb
48
      .limit(limit)
49
      .offset(offset)
50
      .orderBy({ id: 'ASC' })
×
51
      .getResultAndCount();
×
52

53
    const listView: UserListView = { count, users };
54
    return new ListUserQueryResult(listView);
55
  }
×
56
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc