Customer Ticket Template

Customer Ticket Template

Hello,

is there a way to create a new ticket format when customers opens new ticket 
so that every time any customer wants to open a ticket he has to fill some fields 
like Ticket Reason ( issue , question , request )
Ticket Department  (Reporting , Support , Developer ) 
Ticket Level ( System Down , Serious , Medium , Low ) 
and if this option is available can the answers be in a drop down list or will it be empty places he needs to fill
is there a way to customize that ?