Shlomo had a second dream after he finished the beis hamikdash and his house. The question is how did shlomo only have 2 dreams the whole time he was building the beis hamikdash and the answer was he did have another dream but it was sent through a navi which means that it wasn't the full level so we don't count it.
This is all now King Hiram's
Hashem told Shlomo that if the jews listen to hashem then they will have the beis hamikdash and if they don't it will be destroyed. People will say why did hashem destroy the beis hamikdash and the jews will have to say it was because we did bad.
This turn in to
Shlomo and Hiram each gave 20 cities to each other. Shlomo's cities were marshland
This turn in to
Hiram saw the lands and he was disappointed because this was what he got after all the work he did , but he trusted shlomo and believe the land wasn't as bad as it looked.
Shlomo gave marshland, because in israel, jews can make marshlands good and shlomo didn't want Hiram's men to be in israel so if he has the jews working than that wouldn't be a problem. So shlomo gave all the produce to Hiram.
There was a path that was called the milo that was used as a shortcut to the beis hamikdash instead of having to go all the way around. The milo was right next to Batya's palace and she needed to have a place for her servants. Shlomo thought it was okay to build the houses on the milo so they did. Many years later it effected the people going to the beis hamikdash because they had to go all the way around