title: how to make bidding table structure for different type of users
body: <p>Here is my scenario. There're 3 types of users(roles). Client, Service Provider, Admin. </p>
  
  <blockquote>
    <p>Client - Adds new orders</p>
    
    <p>Service-Provider - Executes added orders</p>
    
    <p>Admin - makes sure client's added order is correct, finds
    service-provider and gives it to service-provider.</p>
  </blockquote>
  
  <p>When client added new order, what should happen is there must be bidding system between client and admin. maybe the price of order while adding was 50$. client can bid 40$, then admin can agree on this or bid another price. then client can choose to accept or try another price and so on. This is idea. When price has been negotiated, the same process has to go between service-provider and admin. </p>
  
  <p>So I need a table where I store biddings between client and admin and admin and service-provider and I also need to store bidding histories and not the latest bid.</p>
  
  <p>Users table</p>
  
  <pre><code>+----+--------+---------------------------------+-------------+
  | id |  name  |          userable_type          | userable_id |
  +----+--------+---------------------------------+-------------+
  |  1 | George | App\Http\Models\Client          |           2 |
  |  2 | John   | App\Http\Models\ServiceProvider |           3 |
  |  3 | Ben    | App\Http\Models\Admin           |           4 |
  +----+--------+---------------------------------+-------------+
  </code></pre>
  
  <p>Client table/Admin table/ Service provider table both look same for now</p>
  
  <pre><code>+----+--+
  | id |  |
  +----+--+
  |  1 |  |
  |  2 |  |
  |  3 |  |
  +----+--+
  </code></pre>
  
  <p>Now if I want to make bidding table, I don't want to make new table for service provider, admin and client separately. I prefer to make it the only one.</p>
  
  <p>Let's take this example:</p>
  
  <pre><code>+----+----------+---------+-------+
  | id | order_id | user_id | price |
  +----+----------+---------+-------+
  |  1 |        2 |       1 |    50 |
  |  1 |        2 |       1 |    60 |
  |  1 |        2 |       3 |    70 |
  +----+----------+---------+-------+
  </code></pre>
  
  <p>Now how do I know which bid is for admin, which is for client and which is for service provider? basically, what I want is to get all client bids and admin bids for order_id 2 and also provider bids and admin bids for order_id 2 too. I tried my best but still can't figure this out. Maybe better version you can advise me to use.</p>