@@ -201,7 +201,7 @@ const listEmployees = async (req, res) => {
201201 if ( userIds . length > 0 ) {
202202 const counts = await ProjectAssignment . aggregate ( [
203203 { $match : { userId : { $in : userIds } } } ,
204- { $group : { _id : ' $userId' , count : { $sum : 1 } } } ,
204+ { $group : { _id : " $userId" , count : { $sum : 1 } } } ,
205205 ] ) . exec ( ) ;
206206 counts . forEach ( ( c ) => projectCountsMap . set ( String ( c . _id ) , c . count ) ) ;
207207 }
@@ -263,7 +263,9 @@ const getEmployee = async (req, res) => {
263263 const response = userDto . mapUserToUserResponse ( user ) ;
264264 // attach project count for this employee
265265 try {
266- const projCount = await ProjectAssignment . countDocuments ( { userId : user . _id } ) ;
266+ const projCount = await ProjectAssignment . countDocuments ( {
267+ userId : user . _id ,
268+ } ) ;
267269 response . projectCount = projCount ;
268270 } catch ( e ) {
269271 // non-fatal: if counting fails, default to 0
@@ -802,32 +804,33 @@ const parseCv = async (req, res) => {
802804const getColleagues = async ( req , res ) => {
803805 try {
804806 const currentUserId = req . user . id || req . user . _id ;
805- const currentUser = await User . findById ( currentUserId ) . select ( 'role managerId' ) . lean ( ) ;
807+ const currentUser = await User . findById ( currentUserId )
808+ . select ( "role managerId" )
809+ . lean ( ) ;
806810
807811 if ( ! currentUser ) {
808812 return res . status ( 404 ) . json ( {
809813 success : false ,
810814 error : "Not Found" ,
811- message : "Current user not found"
815+ message : "Current user not found" ,
812816 } ) ;
813817 }
814818
815819 let colleagues = [ ] ;
816820 let directManager = null ;
817821
818- if ( currentUser . role === ' manager' ) {
822+ if ( currentUser . role === " manager" ) {
819823 // If user is manager, get all direct subordinates (members with managerId = currentUser._id)
820824 colleagues = await User . find ( {
821825 managerId : currentUserId ,
822826 active : true ,
823- _id : { $ne : currentUserId } // Exclude self
827+ _id : { $ne : currentUserId } , // Exclude self
824828 } )
825829 . populate ( "position" , "name" )
826830 . populate ( "skills" , "name" )
827831 . select ( "_id name email role position skills" )
828832 . sort ( { name : 1 } )
829833 . lean ( ) ;
830-
831834 } else {
832835 // If user is staff or HR, get teammates (colleagues with same manager) and include direct manager
833836 if ( currentUser . managerId ) {
@@ -841,7 +844,7 @@ const getColleagues = async (req, res) => {
841844 const teammates = await User . find ( {
842845 managerId : currentUser . managerId ,
843846 active : true ,
844- _id : { $ne : currentUserId } // Exclude self
847+ _id : { $ne : currentUserId } , // Exclude self
845848 } )
846849 . populate ( "position" , "name" )
847850 . populate ( "skills" , "name" )
@@ -854,28 +857,32 @@ const getColleagues = async (req, res) => {
854857 }
855858
856859 // Format response
857- const formattedColleagues = colleagues . map ( colleague => ( {
860+ const formattedColleagues = colleagues . map ( ( colleague ) => ( {
858861 id : colleague . _id ,
859862 name : colleague . name ,
860863 email : colleague . email ,
861864 role : colleague . role ,
862- position : colleague . position ? {
863- id : colleague . position . _id ,
864- name : colleague . position . name
865- } : null ,
866- skills : colleague . skills ? colleague . skills . map ( skill => ( {
867- id : skill . _id ,
868- name : skill . name
869- } ) ) : [ ]
865+ position : colleague . position
866+ ? {
867+ id : colleague . position . _id ,
868+ name : colleague . position . name ,
869+ }
870+ : null ,
871+ skills : colleague . skills
872+ ? colleague . skills . map ( ( skill ) => ( {
873+ id : skill . _id ,
874+ name : skill . name ,
875+ } ) )
876+ : [ ] ,
870877 } ) ) ;
871878
872879 const response = {
873880 success : true ,
874881 data : {
875882 userRole : currentUser . role ,
876883 colleagues : formattedColleagues ,
877- totalColleagues : formattedColleagues . length
878- }
884+ totalColleagues : formattedColleagues . length ,
885+ } ,
879886 } ;
880887
881888 // Include manager info if it exists
@@ -885,10 +892,12 @@ const getColleagues = async (req, res) => {
885892 name : directManager . name ,
886893 email : directManager . email ,
887894 role : directManager . role ,
888- position : directManager . position ? {
889- id : directManager . position . _id ,
890- name : directManager . position . name
891- } : null
895+ position : directManager . position
896+ ? {
897+ id : directManager . position . _id ,
898+ name : directManager . position . name ,
899+ }
900+ : null ,
892901 } ;
893902 }
894903
@@ -897,7 +906,7 @@ const getColleagues = async (req, res) => {
897906 return res . status ( 500 ) . json ( {
898907 success : false ,
899908 error : "Internal Server Error" ,
900- message : err . message
909+ message : err . message ,
901910 } ) ;
902911 }
903912} ;
0 commit comments