Database
[{"final":[{"key":"TP-1","status_map":[{"status":"Closed","final":["a","b"]},{"status":"Done","final":["c","d"]}]},{"key":"TP-2","status_map":[{"status":"Closed","final":["x","y"]}]}],"start":[{"key":"TP-1","status_map":[{"status":"Closed","start":["h"]},{"status":"Done","start":["a"]}]},{"key":"TP-2","status_map":[{"status":"Done","start":["l","m"]}]}]}]
Query
db.collection.aggregate([{$project:{concat:{$concatArrays:["$final","$start"]}}},{$unwind:"$concat"},{$unwind:"$concat.status_map"},{$group:{_id:{k:"$concat.key",status:"$concat.status_map.status"},final:{$push:"$concat.status_map.final"},start:{$push:"$concat.status_map.start"}}},{$group:{_id:"$_id.k",status_map:{$push:{status:"$_id.status",final:"$final",start:"$start"}}}},{$project:{key:"$_id",status_map:1,_id:0}}])