# Sefun 運費計算 ### 運費 - 常溫 150 - 低溫 200 ### 門檻 - 常溫 - 送愛免運, 0 - 優惠常溫, 1000 - 一般常溫, 2000 - 低溫 - 送愛免運, 0 - 一班低溫, 3000 ### 測試商品 - [配送類型][配送門檻規則][商品單價] 1. 常溫_送愛_100元 2. 常溫_優惠_500元 3. 常溫_一般_100元 4. 常溫_一般_1000元 5. 低溫_送愛_100元 6. 低溫_一般_1000元 ### 運費計算邏輯 #### 原本運費邏輯 以常溫為例,取得購物車內常溫商品配合之最高的免運門檻, 只要購物車內,常溫商品總金額大於門檻就常溫免運。 ex. - 常溫_送愛_100元 * 5 - 常溫_優惠_500元 total: 1000元 因為總金額已達 優惠常溫, 1000 門檻,故常溫免運。 #### 更改後運費邏輯 以常溫為例,購物車內每項商品都要達到對應配合的免運門檻,才能免運, 只要有一項免運門檻未達標,就不算免運, 運費最多只計算一次(參考ex.2)。 ex.1 - 常溫_送愛_100元 * 5 - 常溫_優惠_500元 - 運費 150元 total: 1150元 常溫_送愛_100元 已達免運門檻, 常溫_優惠_500元 未達 優惠常溫, 1000 門檻, 所以運費 150 元。 ex.2 - 常溫_送愛_100元 * 5 - 常溫_優惠_500元 - 常溫_一般_1000元 - 運費 150元 total: 2150元 常溫_送愛_100元 已達免運門檻, 常溫_優惠_500元 未達 優惠常溫, 1000 門檻, 常溫_一般_1000元 未達 一般常溫, 2000 門檻, 但運費最多只計算一次,所以運費 150 元。 ### 測試案例 ## 現在的運費邏輯 #### 常溫 1. 常溫_送愛_100元, 運費: 0元 2. 常溫_送愛_100元 + 常溫_優惠_500元, 運費: 150元 3. 常溫_送愛_100元 + 常溫_優惠_500元 + 常溫_一般_1000元, 運費: 150元 4. 常溫_送愛_100元 + 常溫_優惠_500元*2 + 常溫_一般_1000元, 運費: 0元 5. 常溫_送愛_100元 + 常溫_優惠_500元*2 + 常溫_一般_1000元*2, 運費: 0元 6. 常溫_送愛_100元*15 + 常溫_優惠_500元, 運費: 0元 7. 常溫_送愛_100元*5 + 常溫_優惠_500元 + 常溫_一般_1000元, 運費: 0元 8. 常溫_送愛_100元*5 + 常溫_優惠_500元 + 常溫_一般_100元*5, 運費: 150元 9. 常溫_優惠_500元 + 常溫_一般_100元*15, 運費: 0元 10. 常溫_優惠_500元*2 + 常溫_一般_100元*10, 運費: 0元 #### 低溫 1. 低溫_送愛_100元, 運費: 0元 2. 低溫_送愛_100元 + 低溫_一般_1000元, 運費: 200元 3. 低溫_送愛_100元 + 低溫_一般_1000元*3, 運費: 0元 4. 低溫_送愛_100元*10 + 低溫_一般_1000元, 運費: 200元 5. 低溫_送愛_100元*10 + 低溫_一般_1000元*2, 運費: 0元 6. 低溫_送愛_100元*20 + 低溫_一般_1000元, 運費: 0元 #### 混合 1. 常溫_送愛_100元 + 低溫_送愛_100元, 運費: 0元 2. 常溫_優惠_500元 + 低溫_一般_1000元, 運費: 350元 3. 常溫_優惠_500元*2 + 低溫_一般_1000元, 運費: 200元 4. 常溫_一般_1000元 + 低溫_一般_1000元*3, 運費: 150元 5. 常溫_一般_100元*19 + 低溫_送愛_100元, 運費: 150元 6. 常溫_送愛_100元 + 常溫_一般_100元*19 + 低溫_送愛_100元, 運費: 0元 7. 常溫_一般_100元 + 常溫_優惠_500元 + 低溫_一般_1000元, 運費 350元 8. 常溫_一般_100元*15 + 常溫_優惠_500元 + 低溫_一般_1000元, 運費 200元 9. 常溫_一般_100元*15 + 常溫_優惠_500元 + 低溫_一般_1000元 + 低溫_送愛_100元*20, 運費 0元 ## 更改後的運費邏輯 #### 常溫 1. 常溫_送愛_100元, 運費: 0元 2. 常溫_送愛_100元 + 常溫_優惠_500元, 運費: 150元 3. 常溫_送愛_100元 + 常溫_優惠_500元 + 常溫_一般_1000元, 運費: 150元 4. 常溫_送愛_100元 + 常溫_優惠_500元*2 + 常溫_一般_1000元, 運費: 150元 * 5. 常溫_送愛_100元 + 常溫_優惠_500元*2 + 常溫_一般_1000元*2, 運費: 0元 6. 常溫_送愛_100元*15 + 常溫_優惠_500元, 運費: 150元 * 7. 常溫_送愛_100元*5 + 常溫_優惠_500元 + 常溫_一般_1000元, 運費: 150元 * 8. 常溫_送愛_100元*5 + 常溫_優惠_500元 + 常溫_一般_100元*5, 運費: 150元 9. 常溫_優惠_500元 + 常溫_一般_100元*15, 運費: 150元 * 10. 常溫_優惠_500元*2 + 常溫_一般_100元*10, 運費: 150元 * #### 低溫 1. 低溫_送愛_100元, 運費: 0元 2. 低溫_送愛_100元 + 低溫_一般_1000元, 運費: 200元 3. 低溫_送愛_100元 + 低溫_一般_1000元*3, 運費: 0元 4. 低溫_送愛_100元*10 + 低溫_一般_1000元, 運費: 200元 5. 低溫_送愛_100元*10 + 低溫_一般_1000元*2, 運費: 200元 * 6. 低溫_送愛_100元*20 + 低溫_一般_1000元, 運費: 200元 * #### 混合 1. 常溫_送愛_100元 + 低溫_送愛_100元, 運費: 0元 2. 常溫_優惠_500元 + 低溫_一般_1000元, 運費: 350元 3. 常溫_優惠_500元*2 + 低溫_一般_1000元, 運費: 200元 4. 常溫_一般_1000元 + 低溫_一般_1000元*3, 運費: 150元 5. 常溫_一般_100元*19 + 低溫_送愛_100元, 運費: 150元 6. 常溫_送愛_100元 + 常溫_一般_100元*19 + 低溫_送愛_100元, 運費: 150元 * 7. 常溫_一般_100元 + 常溫_優惠_500元 + 低溫_一般_1000元, 運費 350元 8. 常溫_一般_100元*15 + 常溫_優惠_500元 + 低溫_一般_1000元, 運費 350元 * 9. 常溫_一般_100元*15 + 常溫_優惠_500元 + 低溫_一般_1000元 + 低溫_送愛_100元*20, 運費 350元 *