Description of Business and Summary of Significant Accounting Policies - Condensed Consolidated Statements of Income (Details) - USD ($) $ / shares in Units, $ in Thousands |
3 Months Ended |
12 Months Ended |
Apr. 03, 2020 |
Dec. 31, 2019 |
Sep. 27, 2019 |
Jun. 28, 2019 |
Mar. 29, 2019 |
Dec. 31, 2019 |
Dec. 31, 2018 |
Dec. 31, 2017 |
| Error Corrections and Prior Period Adjustments Restatement [Line Items] |
|
|
|
|
|
|
|
|
| Revenue |
$ 351,734
|
|
|
|
$ 325,906
|
|
|
|
| Operating income |
12,483
|
|
|
|
10,391
|
|
|
|
| Income from operations before income taxes |
10,780
|
|
|
|
8,816
|
|
|
|
| Income tax expense |
2,112
|
|
|
|
1,742
|
|
|
|
| Net income |
$ 8,668
|
|
|
|
$ 7,074
|
|
|
|
| Earnings per share |
|
|
|
|
|
|
|
|
| Basic (in dollars per share) |
$ 0.75
|
|
|
|
$ 0.63
|
|
|
|
| Diluted (in dollars per share) |
$ 0.74
|
|
|
|
$ 0.62
|
|
|
|
| As Previously Reported |
|
|
|
|
|
|
|
|
| Error Corrections and Prior Period Adjustments Restatement [Line Items] |
|
|
|
|
|
|
|
|
| Revenue |
|
|
|
|
$ 325,928
|
|
|
|
| Operating income |
|
|
|
|
10,413
|
|
|
|
| Income from operations before income taxes |
|
|
|
|
8,838
|
|
|
|
| Income tax expense |
|
|
|
|
1,747
|
|
|
|
| Net income |
|
|
|
|
$ 7,091
|
|
|
|
| Earnings per share |
|
|
|
|
|
|
|
|
| Basic (in dollars per share) |
|
|
|
|
$ 0.63
|
|
|
|
| Diluted (in dollars per share) |
|
|
|
|
$ 0.62
|
|
|
|
| Correction |
|
|
|
|
|
|
|
|
| Error Corrections and Prior Period Adjustments Restatement [Line Items] |
|
|
|
|
|
|
|
|
| Revenue |
|
|
|
|
$ (22)
|
|
|
|
| Operating income |
|
|
|
|
(22)
|
|
|
|
| Income from operations before income taxes |
|
|
|
|
(22)
|
|
|
|
| Income tax expense |
|
|
|
|
(5)
|
|
|
|
| Net income |
|
|
|
|
$ (17)
|
$ (1,500)
|
|
|
| Earnings per share |
|
|
|
|
|
|
|
|
| Basic (in dollars per share) |
|
|
|
|
$ 0.00
|
|
|
|
| Diluted (in dollars per share) |
|
$ 0.00
|
$ (0.13)
|
$ 0.00
|
$ 0.00
|
$ (0.13)
|
$ (0.02)
|
$ (0.01)
|