Example #1
0
 /**
  * 生成订单各种状态显示html
  * 
  * @param array $order
  * @return string
  */
 static function genStatusHtml(array &$order)
 {
     $html = '';
     $order['active_order'] = 0;
     //便于区分订单显示样式
     $br = '<br/>';
     if (!in_array($order['order_status'], [OS_CANCELED, OS_INVALID, OS_RETURNED])) {
         //订单“活动中”
         $order['active_order'] = 1;
         if ($order['pay_status'] == PS_UNPAYED) {
             //未支付
             $html .= '<p class="order-status-txt">' . Fn::pay_status($order['pay_status']) . '</p>';
             $html .= '<p class="order-status-op"><a href="javascript:;" class="btn btn-orange btn-order-topay" data-order_id="' . $order['order_id'] . '">立即付款</a></p>';
             $html .= '<p class="order-status-op last"><a href="javascript:;" class="btn-order-cancel" data-order_id="' . $order['order_id'] . '">取消订单</a></p>';
         } elseif ($order['pay_status'] == PS_PAYED) {
             //已支付
             $html .= '<p class="order-status-txt">' . Fn::pay_status($order['pay_status']) . $br . Fn::shipping_status($order['shipping_status']);
             if ($order['shipping_status'] == SS_RECEIVED) {
                 $html .= $br . '<span style="color:green">' . Fn::zonghe_status(CS_FINISHED) . '</span>';
                 //订单完成
                 $html .= '</p>';
                 $order['active_order'] = 0;
             } elseif ($order['shipping_status'] == SS_SHIPPED) {
                 $html .= '</p><p class="order-status-op"><a href="javascript:;" class="btn btn-orange btn-ship-confirm" data-order_id="' . $order['order_id'] . '">确认收货</a></p>';
             } else {
                 $html .= '</p>';
             }
         } else {
             //支付中
             $html .= '<p class="order-status-txt">' . Fn::order_status(OS_CONFIRMED) . $br . Fn::pay_status($order['pay_status']) . '</p>';
         }
     } else {
         $html .= '<p>' . Fn::order_status($order['order_status']) . '</p>';
     }
     return $html;
 }