11import prisma from "~/configs/prisma" ;
22import { paginate } from "~/utils/pagination" ;
33import userRespository from "./user.repository" ;
4+ import { RoleType } from "~/constants/enums" ;
45
56class TeamRepository {
6- findWithPagination = async ( { page , limit , mentorId } : { page ?: number ; limit ?: number ; mentorId ?: string } ) => {
7+ findWithPagination = async ( ) => {
78 const includeUser = {
89 omit : {
910 password : true ,
1011 candidateId : true ,
12+ email : true ,
13+ role : true ,
14+ createdAt : true ,
15+ updatedAt : true ,
1116 } ,
1217 } ;
1318 const include = {
1419 candidates : {
1520 include : {
1621 user : includeUser ,
1722 } ,
23+ omit : {
24+ phone : true ,
25+ // major: true,
26+ semester : true ,
27+ mentorNote : true ,
28+ createdAt : true ,
29+ updatedAt : true ,
30+ teamId : true ,
31+ } ,
1832 } ,
1933 mentorship : {
2034 select : {
@@ -31,17 +45,27 @@ class TeamRepository {
3145 topic : true ,
3246 } ;
3347
34- const { data, meta } = await paginate < any > ( prisma . team , {
35- page,
36- limit,
37- orderBy : { id : "desc" } ,
48+ // const { data, meta } = await paginate<any>(prisma.team, {
49+ // page,
50+ // limit,
51+ // orderBy: { id: "desc" },
52+ // include,
53+ // omit: {
54+ // mentorNote: true,
55+ // },
56+ // });
57+ const data = prisma . team . findMany ( {
58+ orderBy : { group : "asc" } ,
3859 include,
60+ omit : {
61+ mentorNote : true ,
62+ } ,
3963 } ) ;
4064
41- return { teams : data , meta } ;
65+ return data ;
4266 } ;
4367
44- findByIdWithMembers = async ( id : string , displayScore : boolean = false ) => {
68+ findByIdWithMembers = async ( id : string , displayScore : boolean = false , role : RoleType ) => {
4569 const include = {
4670 candidates : {
4771 omit : {
@@ -72,12 +96,13 @@ class TeamRepository {
7296 } ,
7397 topic : true ,
7498 } ;
99+ console . log ( "role" , role ) ;
75100
76101 let team = await prisma . team . findUnique ( {
77102 where : { id } ,
78103 include,
79104 omit : {
80- // mentorNote: true,
105+ ... ( [ RoleType . MENTOR , RoleType . ADMIN ] . includes ( role ) ? { } : { mentorNote : true } ) ,
81106 } ,
82107 } ) ;
83108
@@ -127,7 +152,7 @@ class TeamRepository {
127152 const data = [ ] ;
128153 console . log ( "mentorTeams" , mentorTeams ) ;
129154 for ( const t of mentorTeams ) {
130- data . push ( await this . findByIdWithMembers ( t . id , displayScore ) ) ;
155+ data . push ( await this . findByIdWithMembers ( t . id , displayScore , RoleType . MENTOR ) ) ;
131156 }
132157 return data ;
133158 } ;
0 commit comments