Database
db={"department":[{"_id":99,"name":"Erick Kalewe","faculty":"Zazio","lecturers":[{"lecturerID":31,"name":"Granny Kinton","email":"gkintonu@answers.com","imparts":[{"groupID":70,"codCourse":99}]},{"lecturerID":36,"name":"Michale Dahmel","email":"mdahmelz@artisteer.com","imparts":[{"groupID":100,"codCourse":60}]}]}],"group":[{"_id":100,"codCourse":11,"language":"Romanian","max_students":196,"students":[{"studentID":1}],"classes":[{"date":new Date(),"cod_classroom":100}]}]}
Query
db.department.aggregate([{$lookup:{from:"group",localField:"lecturers.imparts.groupID",foreignField:"_id",as:"group"}},{$addFields:{lecturers:{$map:{input:"$lecturers",in:{$mergeObjects:["$$this",{imparts:{$map:{input:"$$this.imparts",as:"i",in:{$mergeObjects:["$$i",{$arrayElemAt:[{$filter:{input:"$group",cond:{$eq:["$$this._id","$$i.groupID"]}}},0]}]}}}}]}}},group:"$$REMOVE"}}])