(a) A municipality is prohibited from negotiating a contract except a contract: (1) Involving the expenditure of less than $250,000.00; (2) With a state agency or political subdivision as authorized by Code Sections 32-4-111 and 32-4-112; (3) With a railroad or railway company or a publicly or privately owned utility as authorized by Article 6 of Chapter 6 of this title; (4) For engineering or other kinds of professional or specialized services; (5) For emergency maintenance requiring immediate repairs to a public road, including but not limited to bridge repairs, snow and ice removal, and repairs due to flood conditions; or (6) Otherwise expressly authorized by law. (b) No contract involving an expenditure of more than $20,000.00 but less than $250,000.00 shall be awarded under this Code section without the submission of at least two estimates.