mirror of
https://github.com/r-ca/kidshift-be.git
synced 2024-10-25 16:14:02 +00:00
トークン生成ロジック追加
This commit is contained in:
parent
33a61b410f
commit
8623d6311e
|
@ -1,7 +1,7 @@
|
|||
import jsonwebtoken from "jsonwebtoken";
|
||||
import { Role } from "@src/enums";
|
||||
import { findUserById } from "./userUtils";
|
||||
import { User } from "@prisma/client";
|
||||
import { findUserById, findChildById } from "./userUtils";
|
||||
import { Child, User } from "@prisma/client";
|
||||
|
||||
async function issueTokenByUserId(userId: string) {
|
||||
const user: User = await findUserById(userId);
|
||||
|
@ -21,5 +21,23 @@ async function issueTokenByUserId(userId: string) {
|
|||
return jsonwebtoken.sign(payload, "secret", options);
|
||||
}
|
||||
|
||||
export { issueTokenByUserId };
|
||||
async function issueTokenByChildId(childId: string) {
|
||||
const child: Child = await findChildById(childId);
|
||||
if (!child) {
|
||||
throw new Error("見つかりません");
|
||||
}
|
||||
const payload = {
|
||||
sub: childId,
|
||||
role: Role.CHILD,
|
||||
home_group_id: child.home_group_id
|
||||
};
|
||||
|
||||
const options = {
|
||||
expiresIn: "9999h"
|
||||
};
|
||||
|
||||
return jsonwebtoken.sign(payload, "secret", options);
|
||||
}
|
||||
|
||||
export { issueTokenByUserId, issueTokenByChildId }
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user