the Workflow for this project is as follow: 
1. Lottery creator creates a Lottery specifying which Token should be used to buy the tickets.  (e.g : UNI token)
Generating a contract address; 

2. User X wants to buy Lottery Tickets if user has UNI token, buys tickets and receives NFT (as a Tickets), UNI Token are sent to the Lottery Contract Address; 
if User X does not have UNI token but has GTC token, User Clicks on Convert Tokens, and Converts GTC token into UNI token Before buying tickets, 

3. when all tickets are Sold/ or Countdown is over; ChainLink Keepers initiates "VRF (Verifiable Random Function), which sends Random number of winner to Lottery Contracts, 

4. Lottery Contract Uses all the Funds in Lottery Contract address and distribute to the winners according to the  VRF numbers received from Chainlink. 

5. Lottery is ended. 
Note that Company cuts a commission at the Purchasing level of the ticket, and a very small conversion commission of 0.025% when converting Tokens.