Database

[{_id:"3df61406-a65c-480d-b258-85786caa871e","model":["nnn","mmm"],childrens:["2a865da0-fbe1-4842-954d-8c7b527f8bd1","8d06e6af-5f68-4559-9712-706afed5c0db"]},{_id:"2a865da0-fbe1-4842-954d-8c7b527f8bd1","model":["nnn","mmm"],childrens:["4f84d69a-94da-4219-a85d-0293a615da8d","5e55c16f-1b39-48ca-8f79-7acc373dca13"]},{_id:"4f84d69a-94da-4219-a85d-0293a615da8d","model":["nnn","mmm"],childrens:[]},{_id:"5e55c16f-1b39-48ca-8f79-7acc373dca13","model":["nnn","mmm"],childrens:["fb47003b-8b9f-4c1c-bc6c-cf51c0dbb8bc"]},{_id:"8d06e6af-5f68-4559-9712-706afed5c0db","model":["nnn","mmm"],childrens:[]},{_id:"fb47003b-8b9f-4c1c-bc6c-cf51c0dbb8bc","model":["nnn","mmm"],childrens:[]}]

Query

db.collection.aggregate([{$match:{_id:"3df61406-a65c-480d-b258-85786caa871e"}},{$graphLookup:{from:"collection",startWith:"$childrens",connectFromField:"childrens",connectToField:"_id",depthField:"level",as:"children"}},{$unwind:{path:"$children",preserveNullAndEmptyArrays:true}},{$sort:{"children.level":-1}},{$group:{_id:"$childrens",parent_id:{$first:"$_id"},model:{$first:"$model"},children:{$push:"$children"}}},{$addFields:{children:{$reduce:{input:"$children",initialValue:{level:-1,presentChild:[],prevChild:[]},in:{$let:{vars:{prev:{$cond:[{$eq:["$$value.level","$$this.level"]},"$$value.prevChild","$$value.presentChild"]},current:{$cond:[{$eq:["$$value.level","$$this.level"]},"$$value.presentChild",[]]}},in:{level:"$$this.level",prevChild:"$$prev",presentChild:{$concatArrays:["$$current",[{$mergeObjects:["$$this",{children:{$filter:{input:"$$prev",as:"e",cond:{$in:["$$e._id","$$this.childrens"]}}}}]}]]}}}}}}}},{$addFields:{children:"$children.presentChild"}}])

Result