新人求教關於拼車系統的設計問題

來源:互聯網
上載者:User
初來乍到,表達能力也一般,還望各位多包含、多指教
這個系統跟傳統的拼車有所區別,是根據我們這邊的一些私營車隊(類似汽車站線路車)作為參照物來思考的
系統的功能大致如下:
1、訂單
2、線路(某城市至某城市,往返)
3、車隊(類似使用者組,歸類屬於某城市至某城市線路的司機,並排序)
4、司機

根據自己觀察後思考所得的業務需求應該如下:
1、使用者下單至系統,資料包含出發城市、目的城市、人數、出發時間
2、系統按照如下條件完成分配:
2.1、根據使用者的出發地和目的地匹配到屬於該線路的車隊
2.2、根據使用者的出發地匹配到該車隊內目前在當前城市的司機(按照車隊內司機的先後順序)
2.3、檢索已指派給該司機的訂單,並統計其訂單內人數總和是否大於4,假設當前司機已存在系統分配訂單的人數總和已經達到3人,而當前新訂單的人數是2人,總和大於4,則將該新訂單自動分配給下一位司機
2.4、滿足以上條件後將該司機置於發車狀態

目前打算將車隊及車隊內司機用以下格式做redis緩衝

array(    array(        'name' => '車隊1',        'route' => '1,2', // 線路所屬的兩個城市的id,用這種格式比較好判斷        'members' => array(            array('司機1', '電話', 序號, 所在城市id, ...),            array('司機2', '電話', 序號, 所在城市id, ...),            array('司機3', '電話', 序號, 所在城市id, ...)        )    ),    array(        'name' => '車隊2',        'route' => '3,4', // 線路所屬的兩個城市的id,用這種格式比較好判斷        'members' => array(            array('司機1', '電話', 序號, 所在城市id, ...),            array('司機2', '電話', 序號, 所在城市id, ...),            array('司機3', '電話', 序號, 所在城市id, ...)        )    )    ...);

以上都是我自己思考而來,起初只是為了測試自己的程度,但是現在還沒走多遠就卡在了訂單分配這個環節,求大神指點一二,程式上也好,資料庫設計上的也好,非常感謝。

回複內容:

初來乍到,表達能力也一般,還望各位多包含、多指教
這個系統跟傳統的拼車有所區別,是根據我們這邊的一些私營車隊(類似汽車站線路車)作為參照物來思考的
系統的功能大致如下:
1、訂單
2、線路(某城市至某城市,往返)
3、車隊(類似使用者組,歸類屬於某城市至某城市線路的司機,並排序)
4、司機

根據自己觀察後思考所得的業務需求應該如下:
1、使用者下單至系統,資料包含出發城市、目的城市、人數、出發時間
2、系統按照如下條件完成分配:
2.1、根據使用者的出發地和目的地匹配到屬於該線路的車隊
2.2、根據使用者的出發地匹配到該車隊內目前在當前城市的司機(按照車隊內司機的先後順序)
2.3、檢索已指派給該司機的訂單,並統計其訂單內人數總和是否大於4,假設當前司機已存在系統分配訂單的人數總和已經達到3人,而當前新訂單的人數是2人,總和大於4,則將該新訂單自動分配給下一位司機
2.4、滿足以上條件後將該司機置於發車狀態

目前打算將車隊及車隊內司機用以下格式做redis緩衝

array(    array(        'name' => '車隊1',        'route' => '1,2', // 線路所屬的兩個城市的id,用這種格式比較好判斷        'members' => array(            array('司機1', '電話', 序號, 所在城市id, ...),            array('司機2', '電話', 序號, 所在城市id, ...),            array('司機3', '電話', 序號, 所在城市id, ...)        )    ),    array(        'name' => '車隊2',        'route' => '3,4', // 線路所屬的兩個城市的id,用這種格式比較好判斷        'members' => array(            array('司機1', '電話', 序號, 所在城市id, ...),            array('司機2', '電話', 序號, 所在城市id, ...),            array('司機3', '電話', 序號, 所在城市id, ...)        )    )    ...);

以上都是我自己思考而來,起初只是為了測試自己的程度,但是現在還沒走多遠就卡在了訂單分配這個環節,求大神指點一二,程式上也好,資料庫設計上的也好,非常感謝。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.