All through their struggling months, the Portland Sea Dogs insisted they had the talent to win baseball games.

That truth is starting to surface. Portland completed a four-game sweep of the New Hampshire Fisher Cats with a 7-2 victory Sunday afternoon at Hadlock Field.

It marked the first series sweep and the first four-game winning streak this season for the Sea Dogs (39-63). New Hampshire dropped to 50-48.

Aneury Tavarez homered, and Manuel Margot went 3 for 5 with an RBI triple, stolen base and two runs scored to pace the Sea Dogs.

“Everyone is enjoying the game,” Tavarez said. “Everybody is confident.”

Portland starter Justin Haley (4-11) got his first home victory of the season with five innings of six-hit ball (two runs).

“Finally,” Haley said. “Everything was feeling good today. I felt like I had a good fastball, a good change-up, and threw some good breaking pitches.”

Sunday featured one of Portland’s best lineups as the team gets healthy, along with reinforcements.

Catcher Tim Roberson, who spent a month on the disabled list, went 2 for 4 with a walk and an RBI. He’s batting .351.

Right fielder Henry Ramos, who missed three months because of knee surgery, doubled in the second inning and scored Portland’s first run.

Third baseman Mike Miller, who has been filling in at Triple-A Pawtucket the last two months, singled twice.

Shortstop Tzu-Wei Lin, promoted from Class A Salem 10 days ago, was 1 for 3 with a sacrifice fly.

First baseman Sam Travis, promoted last month, singled home a run and also scored.

Tavarez, promoted from Salem in May, hit his third home run for the Sea Dogs – off a change-up from Casey Lawrence (10-9) – while also playing a solid left field, including a nifty sliding catch.

And Margot, the center-field prospect who arrived from Salem last month, continues to dazzle with his speed, fielding and consistency, having hit safety in 17 of his last 20 games.

“The season is almost coming to an end, and how you finish is what matters,” Margot said through interpreter and teammate Carlos Asuaje.

Margot’s name is likely to come up often this week as rumors surface before the July 31 trade deadline.

“I don’t take much account of that,” Margot said. “But we all know in the minor leagues, you are playing for all 30 teams.”

Margot’s triple drove home David Chester in the sixth inning. Margot scored on Asuaje’s groundout for the 7-2 lead.

Haley’s ERA dropped to 5.38.

“Sometimes you (have) to have a building year,” Haley said. “This year I have had some struggles – I wouldn’t call them setbacks – and I’m trying to learn from them.”

Heri Quevedo and Jorge Marban followed Haley with two innings each of scoreless relief. Marban’s ERA dropped to 0.31 in 20 appearances.

NOTES: The announced paid attendance was 5.982. Among the roster moves Sunday were infielder Reed Gragnani going to the disabled list, catcher Alixon Suarez being sent back to Lowell, and catcher Jordan Weems joining the team from Salem. Weems was a third-round draft pick in 2011.