Files
djhackersdev_minime/src/idz/userdb/handler/createTeam.ts
T
2020-09-01 01:10:31 +00:00

35 lines
894 B
TypeScript

import { _fixupPrevTeam } from "./_team";
import { CreateTeamRequest } from "../request/createTeam";
import { CreateTeamResponse } from "../response/createTeam";
import { Repositories } from "../repo";
export async function createTeam(
w: Repositories,
req: CreateTeamRequest
): Promise<CreateTeamResponse> {
const profileId = await w.profile().find(req.aimeId);
const prevTeamId = await w.teamMembers().findTeam(profileId);
const now = new Date();
// Create the new team...
const teamSpec = {
name: req.teamName,
nameBg: req.nameBg,
nameFx: 0,
registerTime: now,
};
const [teamId, teamExtId] = await w.teams().create(teamSpec);
await w.teamMembers().join(teamId, profileId, now);
await w.teamMembers().makeLeader(teamId, profileId);
await _fixupPrevTeam(w, prevTeamId);
return {
type: "create_team_res",
status: 0,
teamExtId,
};
}