[TOC]
# 關于人人運費模板
之前就分享過一篇文章,這里就不過多的講解了,反正設計人人運費光看后臺就有很多種,
看order里的``create.php``里搜索``discountprice``就知道有多么的復雜了
這里直接貼代碼
## 重量的計算
`
$zhongliang=0;
$order_goods = pdo_getall('ewei_shop_order_goods', array('orderid' => $order['id']));
foreach ($order_goods as $key => $value) {
$goods = pdo_get('ewei_shop_goods', array('id' => $value['goodsid']));
$order_goods[$key]['thumb'] =tomedia($goods['thumb']) ;
if($value['optionname']==$goods['guige1']){
$zhongliang+=intval($goods['guige1']);
}else if($value['optionname']==$goods['guige2']){
$zhongliang+=intval($goods['guige2']);
}else if($value['optionname']==$goods['guige3']){
$zhongliang+=intval($goods['guige3']);
}
}
`
## 具體代碼
```
$cart= pdo_getall('ewei_shop_goods', array('id' => $order_goods['goodsid']));
if($cart[0]['dispatchtype']==1){
$yunfei=$cart[0]['dispatchprice'];
}else{
//默認模版
if(empty($cart[0]['dispatchid'])){
//calculatetype 0按重量計費 1按件計費
$dispatch = pdo_get('ewei_shop_dispatch', array('isdefault' => 1,"uniacid"=>$_W['uniacid']));
}else{
$dispatch = pdo_get('ewei_shop_dispatch', array('id' => $cart[0]['dispatchid']));
}
$kuaidi = pdo_get('ewei_shop_express', array('express' => $dispatch['express']));
//isdispatcharea 0 不配送區域 1 只配送區域
//nodispatchareas 不配送區域
$ispeisong=0;
if($dispatch['isdispatcharea']==1){
if(strpos($dispatch['nodispatchareas'],$address['city']) !== false){
}else{
$ispeisong=1;
$noadd="當前區域不支持配送";
}
}else{
if(strpos($dispatch['nodispatchareas'],$address['city']) !== false){
$ispeisong=1;
$noadd=$address['city']."不支持配送";
}
}
$area=iunserializer($dispatch['areas']);
$areaid=0;
foreach ($area as $key => $value) {
if(strpos($value['citys'],$address['city']) !== false){
$areaid=$key+1;
}
}
if(empty($dispatch)){
$yunfei=0;
}else{
//jfguige 按件計費
//firstnum 首件
//firstnumprice 運費
//secondnum 續件
//secondnumprice 續費
//按件計費
if($dispatch['calculatetype']==1){
$jianshu=count($order_goods);
if(!empty($areaid)){
$areaid=$areaid-1;
if($jianshu<=$area[$areaid]['firstnum']){
$yunfei=$area[$areaid]['firstnumprice'];
}else{
$yunfei=intval(($jianshu-$area[$areaid]['firstnum'])/$area[$areaid]['secondnum'])*$area[$areaid]['secondnumprice']+$area[$areaid]['firstnumprice'];
}
//freeprice 滿額
if($yunfei>=$area[$areaid]['freeprice']&&!empty($area[$areaid]['freeprice'])){
$yunfei=0;
}
}else{
if($jianshu<=$dispatch['firstnum']){
$yunfei=$dispatch['firstnumprice'];
}else{
$yunfei=intval(($jianshu-$dispatch['firstnum'])/$dispatch['secondnum'])*$dispatch['secondnumprice']+$dispatch['firstnumprice'];
}
//freeprice 滿額
if($yunfei>=$dispatch['freeprice']&&!empty($dispatch['freeprice'])){
$yunfei=0;
}
}
}else{
//firstweight 默認重量
//secondweight 續重
//secondprice 續費
//firstprice 默認價格
if(!empty($areaid)){
$areaid=$areaid-1;
if($zhongliang<=$area[$areaid]['firstweight']){
$yunfei=$area[$areaid]['firstprice'];
}else{
$yunfei=intval(($zhongliang-$area[$areaid]['firstweight'])/$area[$areaid]['secondweight'])*$area[$areaid]['secondprice']+$area[$areaid]['firstprice'];
}
//freeprice 滿額
if($yunfei>=$area[$areaid]['freeprice']&&!empty($area[$areaid]['freeprice'])){
$yunfei=0;
}
}else{
if($zhongliang<=$dispatch['firstweight']){
$yunfei=$dispatch['firstprice'];
}else{
$yunfei=intval(($zhongliang-$dispatch['firstweight'])/$dispatch['secondweight'])*$dispatch['secondprice']+$dispatch['firstprice'];
}
//freeprice 滿額
if($yunfei>=$dispatch['freeprice']&&!empty($dispatch['freeprice'])){
$yunfei=0;
}
}
}
}
}
```
## 不配送區域
- 【11.18更新】人人商城彈出框
- 人人常用方法
- 人人分銷【12.13更新】
- 分銷走的升級邏輯
- 獲取無限上級
- 【12.13更新】獲取無限下級
- 統計傘下客戶所有業績
- 關于會員
- 注冊走的邏輯
- 會員等級升級
- 關于商品
- 關于小程序
- 人人運費模板邏輯
- 訂單創建
- 導入導出
- 導入
- 導出
- 人人快速導出
- 修改收貨地址
- 人人客服消息
- 人人商城企業支付到零錢
- 人人商城DIY頁面
- 訂單【20201210更新】
- 支付邏輯【2020 12月10日更新】
- 訂單創建1【20201210更新】
- 訂單完成
- 人人權限修復
- 人人權限應用不出來修復
- 微信API
- 獲取access_token
- 獲取openid
- 修改公眾號推送消息
- 問題修復
- 打印機開發
- 拼團
- 訂單
- 拼團常用方法
- 余額詳細不詳細更改
- 修改菜單
- 關于微擎的事務處理邏輯
- 【11.20更新】余額記錄不顯示前端獲得的余額
- BUG集合【2020年12月11日更新】
- 海報黑屏或者出不來
- 人人商城多商戶無法上傳圖片解決辦法
- 秒殺超賣解決方案【20210225更新】