Ignore:
Timestamp:
2014/04/01 09:39:27 (10 years ago)
Author:
shutta
Message:

#2521 (受注メールの配送情報の税込単価が受注時の税率で計算されない)
受注メールの配送情報の単価を受注情報の税率で計算するよう修正。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_13-dev/data/class/helper/SC_Helper_Mail.php

    r23230 r23360  
    137137        $arrTplVar->arrOrderDetail = $objQuery->select('*', 'dtb_order_detail', $where, array($order_id)); 
    138138 
    139         $objProduct = new SC_Product_Ex(); 
    140         $objQuery->setOrder('shipping_id'); 
    141         $arrRet = $objQuery->select('*', 'dtb_shipping', 'order_id = ?', array($order_id)); 
    142         foreach ($arrRet as $key => $value) { 
    143             $objQuery->setOrder('shipping_id'); 
    144             $arrItems = $objQuery->select('*', 'dtb_shipment_item', 'order_id = ? AND shipping_id = ?', 
    145                                           array($order_id, $arrRet[$key]['shipping_id'])); 
    146             foreach ($arrItems as $arrDetail) { 
    147                 foreach ($arrDetail as $detailKey => $detailVal) { 
    148                     $arrRet[$key]['shipment_item'][$arrDetail['product_class_id']][$detailKey] = $detailVal; 
    149                 } 
    150  
    151                 $arrRet[$key]['shipment_item'][$arrDetail['product_class_id']]['productsClass'] =& $objProduct->getDetailAndProductsClass($arrDetail['product_class_id']); 
    152             } 
    153         } 
    154         $arrTplVar->arrShipping = $arrRet; 
     139        // 配送情報の取得 
     140        $arrTplVar->arrShipping = $this->sfGetShippingData($order_id); 
    155141 
    156142        $arrTplVar->Message_tmp = $arrOrder['message']; 
     
    215201 
    216202        return $objSendMail; 
     203    } 
     204 
     205    /** 
     206     * 配送情報の取得 
     207     * 
     208     * @param integer $order_id 受注ID 
     209     * @return array 配送情報を格納した配列 
     210     */ 
     211    function sfGetShippingData($order_id) 
     212    { 
     213        $objQuery =& SC_Query_Ex::getSingletonInstance(); 
     214 
     215        $objQuery->setOrder('shipping_id'); 
     216        $arrRet = $objQuery->select('*', 'dtb_shipping', 'order_id = ?', array($order_id)); 
     217        foreach ($arrRet as $key => $value) { 
     218            $col = 's_i.*, tax_rate, tax_rule'; 
     219            $from = 'dtb_shipment_item AS s_i JOIN dtb_order_detail AS o_d 
     220                USING(order_id, product_class_id)'; 
     221            $where = 'order_id = ? AND shipping_id = ?'; 
     222            $arrWhereVal = array($order_id, $arrRet[$key]['shipping_id']); 
     223            $arrItems = $objQuery->select($col, $from, $where, $arrWhereVal); 
     224            $arrRet[$key]['shipment_item'] = $arrItems; 
     225        } 
     226 
     227        return $arrRet; 
    217228    } 
    218229 
Note: See TracChangeset for help on using the changeset viewer.