XML 47 R28.htm IDEA: XBRL DOCUMENT
v3.20.1

Revenue (Tables) | 3 Months Ended
--- | ---
Mar. 31, 2020
Revenue |
Schedule of contract assets | Contract assets consist of the following (in thousands):
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | March 31, | ​ | December 31, | ​
​ |  | 2020 |  | 2019 | ​
Unbilled revenue | ​ | $ | 268,282 | ​ | $ | 251,429 | ​
Retention receivable | ​ | ​ | 78,216 | ​ | ​ | 81,393 | ​
Contract materials (not yet installed) | ​ |  | 12,872 | ​ |  | 11,984 | ​
​ | ​ | $ | 359,370 | ​ | $ | 344,806 | ​
Schedule of contract liabilities | Contract liabilities consist of the following (in thousands):
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | March 31, | ​ | December 31, | ​
​ |  | 2020 |  | 2019 | ​
Deferred revenue | ​ | $ | 171,553 | ​ | $ | 186,081 | ​
Accrued loss provision | ​ |  | 5,294 | ​ |  | 6,316 | ​
​ | ​ | $ | 176,847 | ​ | $ | 192,397 | ​
Schedule of revenue disaggregation by various categories | Master Service Agreements (“MSA”) and Non-MSA revenue was as follows (in thousands): ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the three months ended March 31, 2020 |
Segment | ​ | MSA | ​ | Non-MSA | ​ | Total | ​
Power | ​ | $ | 37,095 | ​ | ​ | 159,098 | ​ | ​ | 196,193 | ​
Pipeline | ​ | ​ | 46,732 | ​ | ​ | 144,791 | ​ | ​ | 191,523 | ​
Utilities | ​ |  | 104,011 | ​ | ​ | 43,159 | ​ | ​ | 147,170 | ​
Transmission | ​ | ​ | 81,774 | ​ | ​ | 21,010 | ​ | ​ | 102,784 | ​
Civil | ​ |  | 796 | ​ | ​ | 104,777 | ​ | ​ | 105,573 | ​
Total | ​ | $ | 270,408 |  | $ | 472,835 |  | $ | 743,243 | ​
​ ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the three months ended March 31, 2019 |
Segment | ​ | MSA | ​ | Non-MSA | ​ | Total | ​
Power | ​ | $ | 49,195 |  | $ | 96,188 |  | $ | 145,383 | ​
Pipeline | ​ | ​ | 21,849 | ​ | ​ | 112,965 | ​ | ​ | 134,814 | ​
Utilities | ​ |  | 119,462 |  |  | 26,744 |  |  | 146,206 | ​
Transmission | ​ | ​ | 101,723 | ​ | ​ | 16,720 | ​ | ​ | 118,443 | ​
Civil | ​ |  | 650 |  |  | 116,062 |  |  | 116,712 | ​
Total | ​ | $ | 292,879 |  | $ | 368,679 |  | $ | 661,558 | ​
​ Revenue by contract type was as follows (in thousands): ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the three months ended March 31, 2020 |
Segment | ​ | Fixed-price | ​ | Unit-price | ​ | Cost reimbursable (1) | ​ | Total | ​
Power | ​ | $ | 144,850 | ​ | ​ | 181 | ​ | ​ | 51,162 | ​ | ​ | 196,193 | ​
Pipeline | ​ | ​ | 15,345 | ​ | ​ | 81,830 | ​ | ​ | 94,348 | ​ | ​ | 191,523 | ​
Utilities | ​ |  | 24,089 | ​ | ​ | 80,639 | ​ | ​ | 42,442 | ​ | ​ | 147,170 | ​
Transmission | ​ | ​ | 13,636 | ​ | ​ | 88,789 | ​ | ​ | 359 | ​ | ​ | 102,784 | ​
Civil | ​ |  | 19,859 | ​ | ​ | 75,447 | ​ | ​ | 10,267 | ​ | ​ | 105,573 | ​
Total | ​ | $ | 217,779 |  | $ | 326,886 |  | $ | 198,578 |  | $ | 743,243 | ​
(1) | Includes time and material and cost reimbursable plus fee contracts.
​ ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the three months ended March 31, 2019 |
Segment | ​ | Fixed-price | ​ | Unit-price | ​ | Cost reimbursable (1) | ​ | Total | ​
Power | ​ | $ | 75,143 |  | $ | 6,613 |  | $ | 63,627 |  | $ | 145,383 | ​
Pipeline | ​ | ​ | 17,227 | ​ | ​ | 374 | ​ | ​ | 117,213 | ​ | ​ | 134,814 | ​
Utilities | ​ |  | 22,767 |  |  | 67,878 |  |  | 55,561 |  |  | 146,206 | ​
Transmission | ​ | ​ | 8,463 | ​ | ​ | 105,841 | ​ | ​ | 4,139 | ​ | ​ | 118,443 | ​
Civil | ​ |  | 22,685 |  |  | 78,494 |  |  | 15,533 |  |  | 116,712 | ​
Total | ​ | $ | 146,285 |  | $ | 259,200 |  | $ | 256,073 |  | $ | 661,558 | ​
(1) | Includes time and material and cost reimbursable plus fee contracts.
​

X
- Definition Tabular disclosure of contract assets balances and changes in contract assets balances. + References No definition available. + Details
Name: | prim_ContractWithCustomerAssetTableTextBlock
Namespace Prefix: | prim_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of contract liabilities balances and changes in contract liabilities balances. + References No definition available. + Details
Name: | prim_ContractWithCustomerLiabilityTableTextBlock
Namespace Prefix: | prim_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 5 -URI http://asc.fasb.org/extlink&oid=118956577&loc=SL49130545-203045 + Details
Name: | us-gaap_DisaggregationOfRevenueTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_RevenueFromContractWithCustomerAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration