XML 134 R55.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue Recognition - Revenue by Source (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended 9 Months Ended 12 Months Ended
Dec. 31, 2019
Sep. 30, 2019
Jun. 30, 2019
Mar. 31, 2019
Dec. 31, 2018
Sep. 30, 2018
Jun. 30, 2018
Mar. 31, 2018
Jun. 30, 2019
Jun. 30, 2018
Sep. 30, 2019
Sep. 30, 2018
Dec. 31, 2019
Dec. 31, 2018
Dec. 31, 2017
Disaggregation of Revenue [Line Items]                              
Revenue from contracts with customers                         $ 724,788    
Total revenue from contract with customers                           $ 575,123  
Total revenue $ 213,543 $ 224,307 $ 200,326 $ 147,001 $ 157,145 $ 168,619 $ 138,302 $ 168,582 $ 347,327 $ 306,884 $ 571,634 $ 475,503 785,177 632,648 $ 365,623
Product                              
Disaggregation of Revenue [Line Items]                              
Revenue from contracts with customers                         557,336    
Total revenue from contract with customers                           400,638  
Total revenue 158,427 163,902 144,081 90,926 103,937 102,433 78,497 115,771 235,007 194,268 398,909 296,701 557,336 400,638 157,192
Installation                              
Disaggregation of Revenue [Line Items]                              
Revenue from contracts with customers                         60,826    
Total revenue from contract with customers                           68,195  
Total revenue 14,429 21,102 13,076 12,219 11,066 24,691 19,643 12,795 25,295 32,438 46,397 57,129 60,826 68,195 57,937
Service                              
Disaggregation of Revenue [Line Items]                              
Revenue from contracts with customers                         95,786    
Total revenue from contract with customers                           83,267  
Total revenue 25,628 23,665 23,026 23,467 21,778 21,056 20,299 20,134 46,493 40,433 70,158 61,489 95,786 83,267 74,892
Electricity                              
Disaggregation of Revenue [Line Items]                              
Revenue from contracts with customers                         10,840    
Total revenue from contract with customers                           23,023  
Operating lease revenue                         60,389 57,525  
Total revenue $ 15,059 $ 15,638 $ 20,143 $ 20,389 $ 20,364 $ 20,439 $ 19,863 $ 19,882 $ 40,532 $ 39,745 $ 56,170 $ 60,184 $ 71,229 $ 80,548 $ 75,602