728x90
백오피스 프로젝트가 시작됐고 펫시터 매칭(예약) 서비스를 만들어보기로했다.
프로젝트명: 집사가 없는 사이(집업사)
서비스 내용: 집사가 없는 사이에 반려동물 걱정을 덜어주는 프리미엄 펫시터 서비스
작업 진행 순서
와이어 프레임 작성 -> ERD작성 -> API명세서 작성 -> 역할 분담
내 역할: 유저와 관련한 CRUD 3분할(유저 정보, 상세정보 조회)
3계층 분리
레포
findUserByEmail = async (email) => {
return await this.prisma.users.findFirst({
where: { email: email }
});
}
getUserById = async (userId) => {
return await this.prisma.users.findMany({
where: { userId: +userId },
select: {
userId: true,
email: true,
createdAt: true,
updatedAt: true,
pets : {
select : {
name: true,
petId: true,
petType: true,
age: true,
}
}
}
})
}
서비스
findUserByEmail = async (email) => {
const user = await this.usersRepository.findUserByEmail(email);
return {
userId: user.userId,
email: user.email,
name: user.name,
age: user.age,
gender: user.gender,
intro: user.intro,
pets: {
select: {
petId: true,
name: true,
pettype: true,
},
},
};
};
}
컨트롤러
컨트롤러는 진행하지 못했다...
이것저것 하다가 팀장님이 하셨다고 하셔서 일단 금일 작업은 마무리했다...
많이 모자라지만 질문하고 천천히 3계층 분리를 진행하면서 조금씩 3계층 분리를 어떤 느낌으로 해야하는지 감을 잡아가는 하루였던 것 같다.