XML 92 R78.htm IDEA: XBRL DOCUMENT
v3.10.0.1

Reportable Segments (Details) $ in Thousands | 3 Months Ended | 7 Months Ended | 12 Months Ended
--- | --- | --- | ---
Dec. 31, 2018 USD ($) | Sep. 30, 2018 USD ($) | Jun. 30, 2018 USD ($) | Mar. 31, 2018 USD ($) | Dec. 31, 2017 USD ($) | Sep. 30, 2017 USD ($) | Jun. 30, 2017 USD ($) | Mar. 31, 2017 USD ($) | Dec. 31, 2018 USD ($) | Dec. 31, 2018 USD ($) segment | Dec. 31, 2017 USD ($) | Dec. 31, 2016 USD ($)
Segment reporting information |  |  |  |  |  |  |  |  |  |  |  |
Number of reportable segments | segment |  |  |  |  |  |  |  |  |  | 5 |  |
Revenue | $ 877,670 | $ 908,902 | $ 648,787 | $ 504,119 | $ 579,017 | $ 608,311 | $ 631,165 | $ 561,502 |  | $ 2,939,478 | $ 2,379,995 | $ 1,996,948
% of Total Revenue |  |  |  |  |  |  |  |  |  | 100.00% | 100.00% | 100.00%
Gross Profit | $ 103,253 | $ 106,505 | $ 71,419 | $ 44,560 | $ 68,477 | $ 70,421 | $ 84,483 | $ 55,053 |  | $ 325,737 | $ 278,434 | $ 201,307
% of Revenue |  |  |  |  |  |  |  |  |  | 11.10% | 11.70% | 10.10%
Power |  |  |  |  |  |  |  |  |  |  |  |
Segment reporting information |  |  |  |  |  |  |  |  |  |  |  |
Revenue |  |  |  |  |  |  |  |  |  | $ 694,048 | $ 606,125 | $ 478,653
% of Total Revenue |  |  |  |  |  |  |  |  |  | 23.60% | 25.50% | 24.00%
Gross Profit |  |  |  |  |  |  |  |  |  | $ 109,789 | $ 65,675 | $ 49,807
% of Revenue |  |  |  |  |  |  |  |  |  | 15.80% | 10.80% | 10.40%
Pipeline |  |  |  |  |  |  |  |  |  |  |  |
Segment reporting information |  |  |  |  |  |  |  |  |  |  |  |
Revenue |  |  |  |  |  |  |  |  |  | $ 590,937 | $ 465,570 | $ 401,931
% of Total Revenue |  |  |  |  |  |  |  |  |  | 20.10% | 19.50% | 20.10%
Gross Profit |  |  |  |  |  |  |  |  |  | $ 66,602 | $ 92,087 | $ 68,100
% of Revenue |  |  |  |  |  |  |  |  |  | 11.30% | 19.80% | 16.90%
Utilities |  |  |  |  |  |  |  |  |  |  |  |
Segment reporting information |  |  |  |  |  |  |  |  |  |  |  |
Revenue |  |  |  |  |  |  |  |  |  | $ 902,772 | $ 806,523 | $ 637,212
% of Total Revenue |  |  |  |  |  |  |  |  |  | 30.70% | 33.90% | 31.90%
Gross Profit |  |  |  |  |  |  |  |  |  | $ 111,825 | $ 113,037 | $ 100,071
% of Revenue |  |  |  |  |  |  |  |  |  | 12.40% | 14.00% | 15.70%
Transmission |  |  |  |  |  |  |  |  |  |  |  |
Segment reporting information |  |  |  |  |  |  |  |  |  |  |  |
Revenue |  |  |  |  |  |  |  |  | $ 286,749 | $ 286,749 |  |
% of Total Revenue |  |  |  |  |  |  |  |  | 9.80% |  |  |
Gross Profit |  |  |  |  |  |  |  |  | $ 31,904 |  |  |
% of Revenue |  |  |  |  |  |  |  |  | 11.10% |  |  |
Civil |  |  |  |  |  |  |  |  |  |  |  |
Segment reporting information |  |  |  |  |  |  |  |  |  |  |  |
Revenue |  |  |  |  |  |  |  |  |  | $ 464,972 | $ 501,777 | $ 479,152
% of Total Revenue |  |  |  |  |  |  |  |  |  | 15.80% | 21.10% | 24.00%
Gross Profit |  |  |  |  |  |  |  |  |  | $ 5,617 | $ 7,635 | $ (16,671)
% of Revenue |  |  |  |  |  |  |  |  |  | 1.20% | 1.50% | (3.50%)

X
- Definition Represents the gross profit represented as a percentage of total segment revenue. + References No definition available. + Details
Name: | prim_GrossProfitAsPercentageOfSegmentRevenue
Namespace Prefix: | prim_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition The percentage of revenue to total revenue. + References No definition available. + Details
Name: | prim_RevenuePercentage
Namespace Prefix: | prim_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03.1,2) -URI http://asc.fasb.org/extlink&oid=115205541&loc=SL114868664-224227 + Details
Name: | us-gaap_GrossProfit
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements. + References No definition available. + Details
Name: | us-gaap_NumberOfReportableSegments
Namespace Prefix: | us-gaap_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 4 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=109196051&loc=SL49130543-203045 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 1 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=109196051&loc=SL49130539-203045 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 5 -URI http://asc.fasb.org/extlink&oid=109196051&loc=SL49130545-203045 + Details
Name: | us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_SegmentReportingInformationLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=prim_PIAndESegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=prim_PAndUSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=prim_UAndDSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=prim_UtilityTransmissionAndDistributionMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=prim_CivilSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |