Merge branch 'develop' into feature/#71-settings-store
# Conflicts: # src/data-source.ts
This commit is contained in:
commit
753cfdd5da
8 changed files with 85 additions and 11 deletions
|
@ -1,4 +1,4 @@
|
|||
import { Brackets, Like, SelectQueryBuilder } from "typeorm";
|
||||
import { Brackets, Like, Not, SelectQueryBuilder } from "typeorm";
|
||||
import { dataSource } from "../../../data-source";
|
||||
import { member } from "../../../entity/club/member/member";
|
||||
import DatabaseActionException from "../../../exceptions/databaseActionException";
|
||||
|
@ -29,9 +29,12 @@ export default abstract class MemberService {
|
|||
let searchBits = search.split(" ");
|
||||
|
||||
if (searchBits.length < 2) {
|
||||
query = query.where(`member.firstname LIKE :searchQuery OR member.lastname LIKE :searchQuery`, {
|
||||
searchQuery: `%${searchBits[0]}%`,
|
||||
});
|
||||
query = query.where(
|
||||
`member.firstname LIKE :searchQuery OR member.lastname LIKE :searchQuery OR member.internalId LIKE :searchQuery`,
|
||||
{
|
||||
searchQuery: `%${searchBits[0]}%`,
|
||||
}
|
||||
);
|
||||
} else {
|
||||
searchBits
|
||||
.flatMap((v, i) => searchBits.slice(i + 1).map((w) => [v, w]))
|
||||
|
@ -155,6 +158,28 @@ export default abstract class MemberService {
|
|||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* @description get latest inserted memberId
|
||||
* @returns {Promise<string>}
|
||||
*/
|
||||
static async getLatestInternalId(): Promise<string> {
|
||||
return await dataSource
|
||||
.getRepository(member)
|
||||
.createQueryBuilder("member")
|
||||
.where("member.internalId IS NOT NULL")
|
||||
.andWhere({ internalId: Not("") })
|
||||
.orderBy("member.createdAt", "DESC")
|
||||
.addOrderBy("member.internalId", "DESC")
|
||||
.limit(1)
|
||||
.getOne()
|
||||
.then((res) => {
|
||||
return res?.internalId ?? "";
|
||||
})
|
||||
.catch((err) => {
|
||||
throw new DatabaseActionException("SELECT", "memberId", err);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* @description apply member joins to query
|
||||
* @returns {SelectQueryBuilder<member>}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue