XML 40 R29.htm IDEA: XBRL DOCUMENT
v3.8.0.1

Contracts Receivable and Retainage (Details) $ in Thousands | 3 Months Ended |
--- | --- | ---
Mar. 31, 2018 USD ($) module | Dec. 31, 2017 USD ($)
Long-term Contracts or Programs Disclosure [Line Items] |  |
Contract receivable | $ 27,359 | $ 28,466
Allowance for bad debt | $ 2,000 |
Customer within Fabrication Division |  |
Long-term Contracts or Programs Disclosure [Line Items] |  |
Number of modules with contract receivables | module | 4 |
Contract Receivable | Customer Concentration Risk | Two Major Customers |  |
Long-term Contracts or Programs Disclosure [Line Items] |  |
Contract receivable | $ 18,500 |
Percentage of contract receivable | 67.70% |

X
- Definition Contracts Receivable, Number of Modules + References No definition available. + Details
Name: | gifi_ContractsReceivableNumberofModules
Namespace Prefix: | gifi_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Long-term Contracts or Programs Disclosure [Line Items] + References No definition available. + Details
Name: | gifi_LongtermContractsOrProgramsDisclosureLineItems
Namespace Prefix: | gifi_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition For an unclassified balance sheet, a valuation allowance for receivables due a company that are expected to be uncollectible. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 4 -URI http://asc.fasb.org/extlink&oid=84173941&loc=d3e5074-111524 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.4) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 + Details
Name: | us-gaap_AllowanceForDoubtfulAccountsReceivable
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 275 -SubTopic 10 -Section 50 -Paragraph 18 -URI http://asc.fasb.org/extlink&oid=84177426&loc=d3e6351-108592 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 20 -URI http://asc.fasb.org/extlink&oid=77997519&loc=d3e13531-108611 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 275 -SubTopic 10 -Section 50 -Paragraph 20 -URI http://asc.fasb.org/extlink&oid=84177426&loc=d3e6404-108592 Reference 4: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 21 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=77997519&loc=d3e13537-108611 + Details
Name: | us-gaap_ConcentrationRiskPercentage1
Namespace Prefix: | us-gaap_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount billed to customers under long-term contracts or programs to be collected in the next fiscal year following the latest fiscal year. Excludes amounts due that have been withheld because of retainage provisions in a contract. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date. + References No definition available. + Details
Name: | us-gaap_ContractReceivableDueOneYearOrLess
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Details
Name: | us-gaap_MajorCustomersAxis=gifi_CustomerWithinFabricationDivisionMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByBenchmarkAxis=gifi_ContractReceivableMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_MajorCustomersAxis=gifi_TwoMajorCustomersMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |