<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 訂單物流 ### 訂單物流 #### 1、已售訂單管理 文件路徑:shop/controllers/Seller/Trade/OrderCtl.php ###### 1.1、所有訂單(physical()) ``` <pre class="calibre14">``` $condition<span class="token1">[</span><span class="token4">'chain_id'</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> ``` ``` ###### 1.2、待付款(getPhysicalNew()) ``` <pre class="calibre14">``` $condi<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_WAIT_PAY<span class="token1">;</span> $condi<span class="token1">[</span><span class="token4">'chain_id'</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> ``` ``` ###### 1.3、已付款(getPhysicalPay()) ``` <pre class="calibre14">``` $condi<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_PAYED<span class="token1">;</span> $condi<span class="token1">[</span><span class="token4">'chain_id'</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> ``` ``` ###### 1.4、已發貨(getPhysicalSend()) ``` <pre class="calibre14">``` $condi<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_WAIT_CONFIRM_GOODS<span class="token1">;</span> $condi<span class="token1">[</span><span class="token4">'chain_id'</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> ``` ``` ###### 1.5、已完成(getPhysicalSuccess()) ``` <pre class="calibre14">``` $condi<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_FINISH<span class="token1">;</span> $condi<span class="token1">[</span><span class="token4">'chain_id'</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> ``` ``` ###### 1.6、已取消(getPhysicalCancel()) ``` <pre class="calibre14">``` $condi<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_CANCEL<span class="token1">;</span> $condi<span class="token1">[</span><span class="token4">'chain_id'</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> ``` ``` ###### 1.7、回收站(getPhysicalHideOrder()) ``` <pre class="calibre14">``` $condi<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_CANCEL<span class="token1">;</span> $condi<span class="token1">[</span><span class="token4">'chain_id'</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> ``` ``` ###### 1.8、搜索訂單: ``` <pre class="calibre14">``` <span class="token2">function</span> <span class="token3">formSub</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> $<span class="token1">(</span><span class="token4">'.search-form'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">parents</span><span class="token1">(</span><span class="token4">'form'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">submit</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> ``` ``` ###### 1.9、取消訂單 ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'a[dialog_id="seller_order_cancel_order"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> var order_id <span class="token">=</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">data</span><span class="token1">(</span><span class="token4">'order_id'</span><span class="token1">)</span><span class="token1">,</span>url <span class="token">=</span> SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Trade_Order&met=orderCancel&typ='</span><span class="token1">;</span> $<span class="token1">.</span><span class="token3">dialog</span><span class="token1">(</span><span class="token1">{</span> title<span class="token1">:</span> <span class="token4">'<?=__('</span>取消訂單<span class="token4">')?>'</span><span class="token1">,</span> content<span class="token1">:</span> <span class="token4">'url: '</span> <span class="token">+</span> url <span class="token">+</span> <span class="token4">'e'</span><span class="token1">,</span> data<span class="token1">:</span> <span class="token1">{</span> order_id<span class="token1">:</span> order_id <span class="token1">}</span><span class="token1">,</span> height<span class="token1">:</span> <span class="token6">250</span><span class="token1">,</span> width<span class="token1">:</span> <span class="token6">400</span><span class="token1">,</span> lock<span class="token1">:</span> <span class="token6">true</span><span class="token1">,</span> drag<span class="token1">:</span> <span class="token6">false</span><span class="token1">,</span> ok<span class="token1">:</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> var form_ser <span class="token">=</span> $<span class="token1">(</span>this<span class="token1">.</span>content<span class="token1">.</span>order_cancel_form<span class="token1">)</span><span class="token1">.</span><span class="token3">serialize</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">.</span><span class="token3">post</span><span class="token1">(</span>url <span class="token">+</span> <span class="token4">'json'</span><span class="token1">,</span> form_ser<span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span>data<span class="token1">)</span> <span class="token1">{</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//獲取訂單詳情,判斷訂單的當前狀態與下單這是否為當前用戶</span> $order_base <span class="token">=</span> $Order_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">getOne</span><span class="token1">(</span>$order_id<span class="token1">)</span><span class="token1">;</span> <span class="token2">if</span><span class="token1">(</span> <span class="token1">(</span>$order_base<span class="token1">[</span><span class="token4">'payment_id'</span><span class="token1">]</span> <span class="token">==</span> PaymentChannlModel<span class="token1">:</span><span class="token1">:</span>PAY_CONFIRM<span class="token">&&</span> $order_base<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">==</span>Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_WAIT_PREPARE_GOODS<span class="token1">)</span> <span class="token5">//貨到付款+等待發貨</span> $order_base<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">==</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_WAIT_PAY<span class="token">&&</span> $order_base<span class="token1">[</span><span class="token4">'seller_user_id'</span><span class="token1">]</span> <span class="token">==</span> Perm<span class="token1">:</span><span class="token1">:</span>$userId<span class="token1">)</span> <span class="token1">{</span> <span class="token5">//加入取消時間</span> $edit_flag <span class="token">=</span> $Order_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">editBase</span><span class="token1">(</span>$order_id<span class="token1">,</span> $condition<span class="token1">)</span><span class="token1">;</span> <span class="token5">//修改訂單商品表中的訂單狀態</span> $edit_flag1 <span class="token">=</span> $Order_GoodsModel<span class="token">-</span><span class="token">></span><span class="token3">editGoods</span><span class="token1">(</span>$order_goods_id<span class="token1">,</span> $edit_row<span class="token1">)</span><span class="token1">;</span> <span class="token5">//退還訂單商品的庫存</span> <span class="token2">if</span><span class="token1">(</span>$order_base<span class="token1">[</span><span class="token4">'chain_id'</span><span class="token1">]</span><span class="token">!=</span><span class="token6">0</span><span class="token1">)</span><span class="token1">{</span> $edit_flag2 <span class="token">=</span> $Chain_GoodsModel<span class="token">-</span><span class="token">></span><span class="token3">editGoods</span><span class="token1">(</span>$chain_goods_id<span class="token1">,</span> $goods_stock<span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token2">else</span><span class="token1">{</span> $edit_flag2 <span class="token">=</span> $Goods_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">returnGoodsStock</span><span class="token1">(</span>$order_goods_id<span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token5">//將需要取消的訂單號遠程發送給Paycenter修改訂單狀態</span> <span class="token5">//遠程修改paycenter中的訂單狀態</span> $rs <span class="token">=</span> <span class="token3">get_url_with_encrypt</span><span class="token1">(</span>$key<span class="token1">,</span> <span class="token3">sprintf</span><span class="token1">(</span><span class="token4">'%s?ctl=Api_Pay_Pay&met=cancelOrder&typ=json'</span><span class="token1">,</span> $url<span class="token1">)</span><span class="token1">,</span> $formvars<span class="token1">)</span><span class="token1">;</span> <span class="token5">//如果是供貨商取消進貨訂單,同時取消買家的訂單或減少買家訂單的金額</span> $dist_goods_order <span class="token">=</span> $Order_GoodsModel <span class="token">-</span><span class="token">></span> <span class="token3">getByWhere</span><span class="token1">(</span><span class="token3">array</span><span class="token1">(</span><span class="token4">'order_id'</span> <span class="token">=</span><span class="token">></span> $dist_order<span class="token1">[</span><span class="token4">'order_id'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">)</span><span class="token1">;</span> <span class="token2">if</span><span class="token1">(</span><span class="token3">count</span><span class="token1">(</span>$dist_goods_order<span class="token1">)</span> <span class="token">==</span> <span class="token6">1</span><span class="token1">)</span><span class="token1">{</span> $Order_BaseModel<span class="token">-</span><span class="token">></span> <span class="token3">editBase</span><span class="token1">(</span>$dist_order<span class="token1">[</span><span class="token4">'order_id'</span><span class="token1">]</span><span class="token1">,</span> $condition<span class="token1">)</span><span class="token1">;</span> $Order_GoodsModel<span class="token">-</span><span class="token">></span> <span class="token3">editGoods</span><span class="token1">(</span>$dist_goods_order<span class="token1">[</span><span class="token6">0</span><span class="token1">]</span><span class="token1">[</span><span class="token4">'order_goods_id'</span><span class="token1">]</span><span class="token1">,</span> $edit_row<span class="token1">)</span><span class="token1">;</span> $Goods_BaseModel <span class="token">-</span><span class="token">></span> <span class="token3">returnGoodsStock</span><span class="token1">(</span>$dist_goods_order<span class="token1">[</span><span class="token6">0</span><span class="token1">]</span><span class="token1">[</span><span class="token4">'order_goods_id'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token2">else</span><span class="token1">{</span> $Order_BaseModel<span class="token">-</span><span class="token">></span> <span class="token3">editBase</span><span class="token1">(</span>$dist_order<span class="token1">[</span><span class="token4">'order_id'</span><span class="token1">]</span><span class="token1">,</span> $dist_edit_row<span class="token1">)</span><span class="token1">;</span> $Order_GoodsModel<span class="token">-</span><span class="token">></span> <span class="token3">editGoods</span><span class="token1">(</span>$dist_goods_order<span class="token1">[</span>$key<span class="token1">]</span><span class="token1">[</span><span class="token4">'order_goods_id'</span><span class="token1">]</span><span class="token1">,</span> $edit_row<span class="token1">)</span><span class="token1">;</span> $Goods_BaseModel <span class="token">-</span><span class="token">></span> <span class="token3">returnGoodsStock</span><span class="token1">(</span>$dist_goods_order<span class="token1">[</span>$key<span class="token1">]</span><span class="token1">[</span><span class="token4">'order_goods_id'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> $formvars<span class="token1">[</span><span class="token4">'order_id'</span><span class="token1">]</span> <span class="token">=</span> $dist_order<span class="token1">[</span><span class="token4">'order_id'</span><span class="token1">]</span><span class="token1">;</span> $rs <span class="token">=</span> <span class="token3">get_url_with_encrypt</span><span class="token1">(</span>$key<span class="token1">,</span> <span class="token3">sprintf</span><span class="token1">(</span><span class="token4">'%s?ctl=Api_Pay_Pay&met=cancelOrder&typ=json'</span><span class="token1">,</span> $url<span class="token1">)</span><span class="token1">,</span> $formvars<span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> ``` ``` ###### 1.10、刪除訂單 ``` <pre class="calibre14">``` window<span class="token1">.</span>hideOrder <span class="token">=</span> <span class="token2">function</span> <span class="token1">(</span>e<span class="token1">)</span> <span class="token1">{</span> $<span class="token1">.</span><span class="token3">dialog</span><span class="token1">(</span><span class="token1">{</span> title<span class="token1">:</span> <span class="token4">'刪除訂單'</span><span class="token1">,</span> content<span class="token1">:</span> <span class="token4">'您確定要刪除嗎?刪除后的訂單可在回收站找回,或徹底刪除! '</span><span class="token1">,</span> height<span class="token1">:</span> <span class="token6">100</span><span class="token1">,</span> width<span class="token1">:</span> <span class="token6">405</span><span class="token1">,</span> lock<span class="token1">:</span> <span class="token6">true</span><span class="token1">,</span> drag<span class="token1">:</span> <span class="token6">false</span><span class="token1">,</span> ok<span class="token1">:</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> $<span class="token1">.</span><span class="token3">post</span><span class="token1">(</span>SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Buyer_Order&met=hideOrder&typ=json'</span><span class="token1">,</span><span class="token1">{</span>order_id<span class="token1">:</span>e<span class="token1">,</span>user<span class="token1">:</span><span class="token4">'buyer'</span><span class="token1">}</span><span class="token1">,</span><span class="token2">function</span><span class="token1">(</span>data<span class="token1">)</span> <span class="token1">{</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span> <span class="token5">//判斷訂單狀態是否是已完成(6)或者已取消(7)狀態</span> <span class="token2">if</span><span class="token1">(</span>$order_base<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">>=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_FINISH<span class="token1">)</span> <span class="token1">{</span> <span class="token5">//判斷當前用戶是否是賣家</span> <span class="token2">if</span><span class="token1">(</span>$order_base<span class="token1">[</span><span class="token4">'seller_user_id'</span><span class="token1">]</span> <span class="token">==</span> Perm<span class="token1">:</span><span class="token1">:</span>$userId<span class="token1">)</span> <span class="token1">{</span> $edit_row<span class="token1">[</span><span class="token4">'order_shop_hidden'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>IS_SELLER_HIDDEN<span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span> $flag <span class="token">=</span> $Order_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">editBase</span><span class="token1">(</span>$order_id<span class="token1">,</span> $edit_row<span class="token1">)</span><span class="token1">;</span> ``` ``` ###### 1.11、徹底刪除 ``` <pre class="calibre14">``` window<span class="token1">.</span>delOrder <span class="token">=</span> <span class="token2">function</span> <span class="token1">(</span>e<span class="token1">)</span> <span class="token1">{</span> $<span class="token1">.</span><span class="token3">dialog</span><span class="token1">(</span><span class="token1">{</span> title<span class="token1">:</span> <span class="token4">'刪除訂單'</span><span class="token1">,</span> content<span class="token1">:</span> <span class="token4">'您確定要永久刪除嗎?永久刪除后您將無法再查看該訂單,也無法進行投訴維權,請謹慎操作!'</span><span class="token1">,</span> height<span class="token1">:</span> <span class="token6">100</span><span class="token1">,</span> width<span class="token1">:</span> <span class="token6">610</span><span class="token1">,</span> lock<span class="token1">:</span> <span class="token6">true</span><span class="token1">,</span> drag<span class="token1">:</span> <span class="token6">false</span><span class="token1">,</span> ok<span class="token1">:</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> $<span class="token1">.</span><span class="token3">post</span><span class="token1">(</span>SITE_URL <span class="token">+</span><span class="token">?</span><span class="token4">'ctl=Buyer_Order&met=hideOrder&typ=json'</span><span class="token1">{</span>order_id<span class="token1">:</span>e<span class="token1">,</span>user<span class="token1">:</span><span class="token4">'buyer'</span><span class="token1">,</span>op<span class="token1">:</span><span class="token4">'del'</span><span class="token1">}</span><span class="token1">,</span><span class="token2">function</span><span class="token1">(</span>data<span class="token1">)</span> <span class="token1">{</span> <span class="token1">}</span> <span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span> <span class="token5">//判斷訂單狀態是否是已完成(6)或者已取消(7)狀態</span> <span class="token2">if</span><span class="token1">(</span>$order_base<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">>=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_FINISH<span class="token1">)</span> <span class="token1">{</span> <span class="token5">//判斷當前用戶是否是賣家</span> <span class="token2">if</span><span class="token1">(</span>$order_base<span class="token1">[</span><span class="token4">'seller_user_id'</span><span class="token1">]</span> <span class="token">==</span> Perm<span class="token1">:</span><span class="token1">:</span>$userId<span class="token1">)</span> <span class="token1">{</span> $edit_row<span class="token1">[</span><span class="token4">'order_shop_hidden'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>IS_SELLER_REMOVE<span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span> $flag <span class="token">=</span> $Order_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">editBase</span><span class="token1">(</span>$order_id<span class="token1">,</span> $edit_row<span class="token1">)</span><span class="token1">;</span> ``` ``` ###### 1.12、還原訂單 ``` <pre class="calibre14">``` window<span class="token1">.</span>restoreOrder <span class="token">=</span> <span class="token2">function</span> <span class="token1">(</span>e<span class="token1">)</span> <span class="token1">{</span> $<span class="token1">.</span><span class="token3">dialog</span><span class="token1">(</span><span class="token1">{</span> title<span class="token1">:</span> <span class="token4">'還原刪除訂單'</span><span class="token1">,</span> content<span class="token1">:</span> <span class="token4">'您確定要還原嗎?'</span><span class="token1">,</span> height<span class="token1">:</span> <span class="token6">100</span><span class="token1">,</span> width<span class="token1">:</span> <span class="token6">610</span><span class="token1">,</span> lock<span class="token1">:</span> <span class="token6">true</span><span class="token1">,</span> drag<span class="token1">:</span> <span class="token6">false</span><span class="token1">,</span> ok<span class="token1">:</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> $<span class="token1">.</span><span class="token3">post</span><span class="token1">(</span>SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Buyer_Order&met=restoreOrder&typ=json'</span><span class="token1">,</span><span class="token1">{</span>order_id<span class="token1">:</span>e<span class="token1">,</span>user<span class="token1">:</span><span class="token4">'buyer'</span><span class="token1">}</span><span class="token1">,</span><span class="token2">function</span><span class="token1">(</span>data<span class="token1">)</span> <span class="token1">{</span> <span class="token1">}</span> <span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span> $edit_row<span class="token1">[</span><span class="token4">'order_shop_hidden'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>NO_SELLER_HIDDEN<span class="token1">;</span> $flag <span class="token">=</span> $Order_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">editBase</span><span class="token1">(</span>$order_id<span class="token1">,</span> $edit_row<span class="token1">)</span><span class="token1">;</span> ``` ``` #### 2、虛擬兌換訂單 文件路徑:shop/controllers/Seller/Trade/OrderCtl.php ###### 2.1、所有訂單(virtual()) ``` <pre class="calibre14">``` $condition<span class="token1">[</span><span class="token4">'shop_id'</span><span class="token1">]</span> <span class="token">=</span> Perm<span class="token1">:</span><span class="token1">:</span>$shopId<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_is_virtual'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>ORDER_IS_VIRTUAL<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_shop_hidden'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>ORDER_IS_REAL<span class="token1">;</span> ``` ``` ###### 2.2、待付款(getVirtualNew()) ``` <pre class="calibre14">``` $condition<span class="token1">[</span><span class="token4">'shop_id'</span><span class="token1">]</span> <span class="token">=</span> Perm<span class="token1">:</span><span class="token1">:</span>$shopId<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_is_virtual'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>ORDER_IS_VIRTUAL<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_shop_hidden'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>ORDER_IS_REAL<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_WAIT_PAY<span class="token1">;</span> ``` ``` ###### 2.3、已發貨(getVirtualPay()) ``` <pre class="calibre14">``` $condition<span class="token1">[</span><span class="token4">'shop_id'</span><span class="token1">]</span> <span class="token">=</span> Perm<span class="token1">:</span><span class="token1">:</span>$shopId<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_is_virtual'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>ORDER_IS_VIRTUAL<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_shop_hidden'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>ORDER_IS_REAL<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_WAIT_CONFIRM_GOODS<span class="token1">;</span> ``` ``` ###### 2.4、已完成(getVirtualSuccess()) ``` <pre class="calibre14">``` $condition<span class="token1">[</span><span class="token4">'shop_id'</span><span class="token1">]</span> <span class="token">=</span> Perm<span class="token1">:</span><span class="token1">:</span>$shopId<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_is_virtual'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>ORDER_IS_VIRTUAL<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_shop_hidden'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>ORDER_IS_REAL<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_FINISH<span class="token1">;</span> ``` ``` ###### 2.5、已取消(getVirtualCancel()) ``` <pre class="calibre14">``` $condition<span class="token1">[</span><span class="token4">'shop_id'</span><span class="token1">]</span> <span class="token">=</span> Perm<span class="token1">:</span><span class="token1">:</span>$shopId<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_is_virtual'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>ORDER_IS_VIRTUAL<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_shop_hidden'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>ORDER_IS_REAL<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_CANCEL<span class="token1">;</span> ``` ``` ###### 2.6、回收站(getVirtualHideOrder()) ``` <pre class="calibre14">``` $condition<span class="token1">[</span><span class="token4">'order_shop_hidden'</span><span class="token1">]</span> <span class="token">=</span> $Order_BaseModel<span class="token1">:</span><span class="token1">:</span>IS_SELLER_HIDDEN<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'shop_id'</span><span class="token1">]</span> <span class="token">=</span> Perm<span class="token1">:</span><span class="token1">:</span>$shopId<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_is_virtual'</span><span class="token1">]</span> <span class="token">=</span> Order_BaseModel<span class="token1">:</span><span class="token1">:</span>ORDER_IS_VIRTUAL<span class="token1">;</span> ``` ``` ###### 2.7、校驗兌換碼(virtualExchange()) ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'#_submit'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> <span class="token3">exPost</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token2">function</span> <span class="token3">exPost</span><span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> $<span class="token1">(</span><span class="token4">'#vr_code_waring'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">html</span><span class="token1">(</span><span class="token4">''</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">.</span><span class="token3">getJSON</span><span class="token1">(</span> SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Trade_Order&met=virtualExchange&typ=json&vr_code='</span><span class="token">+</span>$<span class="token1">(</span><span class="token4">"#vr_code"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token1">)</span><span class="token1">,</span> <span class="token2">null</span><span class="token1">,</span> <span class="token2">function</span><span class="token1">(</span>data<span class="token1">)</span><span class="token1">{</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token5">//修改兌換碼狀態</span> $update<span class="token1">[</span><span class="token4">'virtual_code_status'</span><span class="token1">]</span> <span class="token">=</span> Order_GoodsVirtualCodeModel<span class="token1">:</span><span class="token1">:</span>VIRTUAL_CODE_USED<span class="token1">;</span> $update<span class="token1">[</span><span class="token4">'virtual_code_usetime'</span><span class="token1">]</span> <span class="token">=</span> <span class="token3">date</span><span class="token1">(</span><span class="token4">'Y-m-d H:i:s'</span><span class="token1">,</span> <span class="token3">time</span><span class="token1">(</span><span class="token1">)</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//兌換時間</span> $result <span class="token">=</span> $this<span class="token">-</span><span class="token">></span><span class="token3">editCode</span><span class="token1">(</span>$virtual_code_id<span class="token1">,</span> $update<span class="token1">)</span><span class="token1">;</span> <span class="token5">//判斷該筆訂單中有多少虛擬商品,如果是最后一筆虛擬商品,則修改訂單狀態為已完成,將訂單金額轉到商家賬戶</span> $edit_flag <span class="token">=</span> $orderBaseModel<span class="token">-</span><span class="token">></span><span class="token3">editBase</span><span class="token1">(</span>$order_data<span class="token1">[</span><span class="token4">'order_id'</span><span class="token1">]</span><span class="token1">,</span> <span class="token3">array</span><span class="token1">(</span><span class="token4">'order_status'</span> <span class="token">=</span><span class="token">></span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_FINISH <span class="token1">,</span> <span class="token4">'order_finished_time'</span> <span class="token">=</span><span class="token">></span> <span class="token3">get_date_time</span><span class="token1">(</span><span class="token1">)</span><span class="token1">)</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//遠程同步paycenter中的訂單狀態</span> $rs <span class="token">=</span> <span class="token3">get_url_with_encrypt</span><span class="token1">(</span>$key<span class="token1">,</span> <span class="token3">sprintf</span><span class="token1">(</span><span class="token4">'%s?ctl=Api_Pay_Pay&met=confirmOrder&typ=json'</span><span class="token1">,</span> $url<span class="token1">)</span><span class="token1">,</span> $formvars<span class="token1">)</span> ``` ``` ###### 2.8、其他 ``` <pre class="calibre14">``` 訂單搜索、取消訂單、刪除訂單、徹底刪除訂單、還原訂單與上文已售訂單管理中一致 ``` ``` #### 3、門店自提訂單 文件路徑:shop/controllers/Seller/Trade/OrderCtl.php ###### 3.1、所有訂單(chain()) ``` <pre class="calibre14">``` $condition<span class="token1">[</span><span class="token4">'chain_id:!='</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> ``` ``` ###### 3.2、待付款(getChainNew()) ``` <pre class="calibre14">``` $condi<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_WAIT_PAY<span class="token1">;</span> $condi<span class="token1">[</span><span class="token4">'chain_id:!='</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> ``` ``` ###### 3.3、待自提(getChainNotakes()) ``` <pre class="calibre14">``` $condi<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_SELF_PICKUP<span class="token1">;</span> $condi<span class="token1">[</span><span class="token4">'chain_id:!='</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> ``` ``` ###### 3.4、已完成(getChainSuccess()) ``` <pre class="calibre14">``` $condi<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_FINISH<span class="token1">;</span> $condi<span class="token1">[</span><span class="token4">'chain_id:!='</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> ``` ``` ###### 3.5、已取消(getChainCancel()) ``` <pre class="calibre14">``` $condi<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_CANCEL<span class="token1">;</span> $condi<span class="token1">[</span><span class="token4">'chain_id:!='</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> ``` ``` ###### 3.6、回收站(getChainHideOrder()) ``` <pre class="calibre14">``` $condition<span class="token1">[</span><span class="token4">'order_shop_hidden'</span><span class="token1">]</span> <span class="token">=</span> $Order_BaseModel<span class="token1">:</span><span class="token1">:</span>IS_SELLER_HIDDEN<span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'chain_id:!='</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> ``` ``` ###### 3.7、其他 ``` <pre class="calibre14">``` 訂單搜索、取消訂單、刪除訂單、徹底刪除訂單、還原訂單與上文已售訂單管理中一致 ``` ``` #### 4、發貨 文件路徑:shop/controllers/Seller/Trade/DeliverCtl.php ###### 4.1、待發貨(deliver()) ``` <pre class="calibre14">``` $condition<span class="token1">[</span><span class="token4">'order_status:IN'</span><span class="token1">]</span> <span class="token">=</span> <span class="token3">array</span><span class="token1">(</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_PAYED<span class="token1">,</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_WAIT_PREPARE_GOODS <span class="token1">)</span><span class="token1">;</span> ``` ``` ###### 4.2、發貨(shop/controllers/Seller/Trade/OrderCtl.php,send()) 編輯收貨人信息: ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'a[dialog_id="edit_buyer_address"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> var _this <span class="token">=</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">,</span> buyer_address <span class="token">=</span> $<span class="token1">(</span><span class="token4">'#buyer_address_span'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">html</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> address_data <span class="token">=</span> _this<span class="token1">.</span><span class="token3">data</span><span class="token1">(</span><span class="token1">)</span><span class="token1">,</span> address_data<span class="token1">.</span>order_id <span class="token">=</span> $<span class="token1">(</span><span class="token4">'#order_id'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">.</span><span class="token3">dialog</span><span class="token1">(</span><span class="token1">{</span> title<span class="token1">:</span> <span class="token4">'<?=__('</span>選擇收貨地址<span class="token4">')?>'</span><span class="token1">,</span> content<span class="token1">:</span> <span class="token4">'url: '</span> <span class="token">+</span> SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Trade_Order&met=editBuyerAddress&typ=e'</span><span class="token1">,</span> height<span class="token1">:</span> <span class="token6">200</span><span class="token1">,</span> width<span class="token1">:</span> <span class="token6">550</span><span class="token1">,</span> lock<span class="token1">:</span> <span class="token6">true</span><span class="token1">,</span> drag<span class="token1">:</span> <span class="token6">false</span><span class="token1">,</span> data<span class="token1">:</span> <span class="token1">{</span> address_data<span class="token1">:</span> address_data<span class="token1">,</span> callback<span class="token1">:</span> <span class="token2">function</span> <span class="token1">(</span> data <span class="token1">)</span> <span class="token1">{</span> <span class="token1">}</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> $update_data<span class="token1">[</span><span class="token4">'order_receiver_name'</span><span class="token1">]</span> <span class="token">=</span> <span class="token3">request_string</span><span class="token1">(</span><span class="token4">'order_receiver_name'</span><span class="token1">)</span><span class="token1">;</span> $update_data<span class="token1">[</span><span class="token4">'order_receiver_address'</span><span class="token1">]</span> <span class="token">=</span> <span class="token3">request_string</span><span class="token1">(</span><span class="token4">'order_receiver_address'</span><span class="token1">)</span><span class="token1">;</span> $update_data<span class="token1">[</span><span class="token4">'order_receiver_contact'</span><span class="token1">]</span> <span class="token">=</span> <span class="token3">request_string</span><span class="token1">(</span><span class="token4">'order_receiver_contact'</span><span class="token1">)</span><span class="token1">;</span> $flag <span class="token">=</span> $Order_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">editBase</span><span class="token1">(</span>$order_id<span class="token1">,</span> $update_data<span class="token1">)</span><span class="token1">;</span> ``` ``` 編輯我的發貨信息: ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'a[dialog_id="edit_seller_address"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> var order_id <span class="token">=</span> $<span class="token1">(</span><span class="token4">'#order_id'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token1">)</span><span class="token1">,</span> shop_id <span class="token">=</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">data</span><span class="token1">(</span><span class="token4">'shop_id'</span><span class="token1">)</span><span class="token1">,</span> url <span class="token">=</span> SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Trade_Order&met=chooseSendAddress&typ='</span><span class="token1">;</span> $<span class="token1">.</span><span class="token3">dialog</span><span class="token1">(</span><span class="token1">{</span> title<span class="token1">:</span> <span class="token4">'<?=__('</span>選擇發貨地址<span class="token4">')?>'</span><span class="token1">,</span> content<span class="token1">:</span> <span class="token4">'url: '</span> <span class="token">+</span> url <span class="token">+</span> <span class="token4">'e&shop_id='</span> <span class="token">+</span> shop_id<span class="token1">,</span> height<span class="token1">:</span> <span class="token6">400</span><span class="token1">,</span> width<span class="token1">:</span> <span class="token6">640</span><span class="token1">,</span> lock<span class="token1">:</span> <span class="token6">true</span><span class="token1">,</span> drag<span class="token1">:</span> <span class="token6">false</span><span class="token1">,</span> data<span class="token1">:</span> <span class="token1">{</span> callback<span class="token1">:</span> <span class="token2">function</span> <span class="token1">(</span> send_address<span class="token1">,</span> win <span class="token1">)</span> <span class="token1">{</span> $<span class="token1">.</span><span class="token3">post</span><span class="token1">(</span>url <span class="token">+</span> <span class="token4">'json&order_id='</span> <span class="token">+</span> order_id<span class="token1">,</span> <span class="token1">{</span> send_address<span class="token1">:</span> send_address <span class="token1">}</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span>data<span class="token1">)</span> <span class="token1">{</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> $update_data<span class="token1">[</span><span class="token4">'order_seller_name'</span><span class="token1">]</span> <span class="token">=</span> $send_address<span class="token1">[</span><span class="token4">'order_seller_name'</span><span class="token1">]</span><span class="token1">;</span> $update_data<span class="token1">[</span><span class="token4">'order_seller_address'</span><span class="token1">]</span> <span class="token">=</span> $send_address<span class="token1">[</span><span class="token4">'order_seller_address'</span><span class="token1">]</span><span class="token1">;</span> $update_data<span class="token1">[</span><span class="token4">'order_seller_contact'</span><span class="token1">]</span> <span class="token">=</span> $send_address<span class="token1">[</span><span class="token4">'order_seller_contact'</span><span class="token1">]</span><span class="token1">;</span> $flag <span class="token">=</span> $Order_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">editBase</span><span class="token1">(</span>$order_id<span class="token1">,</span> $update_data<span class="token1">)</span><span class="token1">;</span> ``` ``` 提交表單: ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'a[nc_value]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> $<span class="token1">.</span><span class="token3">post</span><span class="token1">(</span>SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Trade_Order&met=send&typ=json'</span><span class="token1">,</span> send_data<span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span>data<span class="token1">)</span><span class="token1">{</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//判斷該筆訂單是否是自己的單子</span> $order_base <span class="token">=</span> $Order_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">getOne</span><span class="token1">(</span>$order_id<span class="token1">)</span><span class="token1">;</span> <span class="token5">//判斷賬號是否可以發貨</span> $check_send <span class="token">=</span> $this<span class="token">-</span><span class="token">></span><span class="token3">checkSend</span><span class="token1">(</span>$order_base<span class="token1">[</span><span class="token4">'seller_user_id'</span><span class="token1">]</span><span class="token1">,</span>$order_base<span class="token1">[</span><span class="token4">'shop_id'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//設置發貨</span> <span class="token5">//配送時間 收貨時間</span> $edit_flag <span class="token">=</span> $Order_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">editBase</span><span class="token1">(</span>$order_id<span class="token1">,</span> $update_data<span class="token1">)</span><span class="token1">;</span> $order_list <span class="token">=</span> $Order_GoodsModel <span class="token">-</span><span class="token">></span> <span class="token3">getByWhere</span><span class="token1">(</span><span class="token3">array</span><span class="token1">(</span><span class="token4">'order_id'</span> <span class="token">=</span><span class="token">></span>$order_base<span class="token1">[</span><span class="token4">'order_source_id'</span><span class="token1">]</span><span class="token1">,</span><span class="token4">'order_goods_source_id'</span> <span class="token">=</span><span class="token">></span> <span class="token4">''</span><span class="token1">)</span><span class="token1">)</span><span class="token1">;</span><span class="token5">//查看不是分銷商品的訂單</span> <span class="token2">if</span><span class="token1">(</span><span class="token">!</span><span class="token3">empty</span><span class="token1">(</span>$order_list<span class="token1">)</span> <span class="token">&&</span> $order_base<span class="token1">[</span><span class="token4">'order_source_id'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">{</span> foreach <span class="token1">(</span>$order_list as $key <span class="token">=</span><span class="token">></span> $value<span class="token1">)</span> <span class="token1">{</span> $edit_flag1 <span class="token">=</span> $Order_GoodsModel <span class="token">-</span><span class="token">></span> <span class="token3">editGoods</span><span class="token1">(</span>$key<span class="token1">,</span><span class="token3">array</span><span class="token1">(</span><span class="token4">'order_goods_source_ship'</span> <span class="token">=</span><span class="token">></span> $update_data<span class="token1">[</span><span class="token4">'order_shipping_code'</span><span class="token1">]</span><span class="token1">.</span><span class="token4">'-'</span><span class="token1">.</span>$update_data<span class="token1">[</span><span class="token4">'order_shipping_express_id'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">)</span><span class="token1">;</span> <span class="token3">check_rs</span><span class="token1">(</span>$edit_flag1<span class="token1">,</span>$rs_row<span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span> <span class="token5">//如果為采購單,改變 "買家<-->分銷商" 訂單狀態</span> <span class="token5">/* 只有訂單中不含分銷商自己的商品時改變訂單狀態,如果含有分銷商自己的商品, 供貨商發貨改變訂單狀態,分銷商自己就發不了貨了. 所以如果訂單中含有分銷商自己的商品,只有分銷商的商品發貨了,才能改變訂單狀態 */</span> $dist_flag <span class="token">=</span> $Order_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">editBase</span><span class="token1">(</span>$dist_order<span class="token1">[</span><span class="token4">'order_id'</span><span class="token1">]</span><span class="token1">,</span> $update_data<span class="token1">)</span><span class="token1">;</span> <span class="token5">//買家商品訂單表里添加物流單號</span> $order_goods_id <span class="token">=</span> $Order_GoodsModel<span class="token">-</span><span class="token">></span><span class="token3">getKeyByWhere</span><span class="token1">(</span><span class="token3">array</span><span class="token1">(</span><span class="token4">'order_goods_source_id'</span> <span class="token">=</span><span class="token">></span> $order_id<span class="token1">)</span><span class="token1">)</span><span class="token1">;</span> $edit_flag2 <span class="token">=</span> $Order_GoodsModel <span class="token">-</span><span class="token">></span> <span class="token3">editGoods</span><span class="token1">(</span>$order_goods_id<span class="token1">,</span><span class="token3">array</span><span class="token1">(</span><span class="token4">'order_goods_source_ship'</span> <span class="token">=</span><span class="token">></span> $update_data<span class="token1">[</span><span class="token4">'order_shipping_code'</span><span class="token1">]</span><span class="token1">.</span><span class="token4">'-'</span><span class="token1">.</span>$update_data<span class="token1">[</span><span class="token4">'order_shipping_express_id'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">)</span><span class="token1">;</span> ``` ``` ##### 4.3、發貨中(delivering()) 獲取訂單列表 ``` <pre class="calibre14">``` $Order_BaseModel <span class="token">=</span> <span class="token2">new</span> <span class="token3">Order_BaseModel</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> $condition<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_WAIT_CONFIRM_GOODS<span class="token1">;</span> $data <span class="token">=</span> $Order_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">getPhysicalList</span><span class="token1">(</span>$condition<span class="token1">)</span><span class="token1">;</span> foreach <span class="token1">(</span>$data<span class="token1">[</span><span class="token4">'items'</span><span class="token1">]</span> as $key <span class="token">=</span><span class="token">></span> $val<span class="token1">)</span> <span class="token1">{</span> <span class="token2">if</span> <span class="token1">(</span><span class="token3">strtotime</span><span class="token1">(</span>$val<span class="token1">[</span><span class="token4">'order_receiver_date'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">)</span> <span class="token1">{</span> $data<span class="token1">[</span><span class="token4">'items'</span><span class="token1">]</span><span class="token1">[</span>$key<span class="token1">]</span><span class="token1">[</span><span class="token4">'order_receiver_date'</span><span class="token1">]</span> <span class="token">=</span> $val<span class="token1">[</span><span class="token4">'order_receiver_date'</span><span class="token1">]</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span> ``` ``` 延遲收貨 ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'a[dialog_id="seller_order_delay_receive"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> var $this <span class="token">=</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">,</span> order_id <span class="token">=</span> $this<span class="token1">.</span><span class="token3">data</span><span class="token1">(</span><span class="token4">'order_id'</span><span class="token1">)</span><span class="token1">,</span> buyer_name <span class="token">=</span> $this<span class="token1">.</span><span class="token3">data</span><span class="token1">(</span><span class="token4">'buyer_user_name'</span><span class="token1">)</span><span class="token1">,</span> order_receiver_date <span class="token">=</span> $this<span class="token1">.</span><span class="token3">data</span><span class="token1">(</span><span class="token4">'order_receiver_date'</span><span class="token1">)</span><span class="token1">,</span> url <span class="token">=</span> SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Trade_Deliver&met=delayReceive&typ='</span><span class="token1">;</span> $<span class="token1">.</span><span class="token3">dialog</span><span class="token1">(</span><span class="token1">{</span> title<span class="token1">:</span> <span class="token4">'<?=__('</span>延遲收貨<span class="token4">')?>'</span><span class="token1">,</span> content<span class="token1">:</span> <span class="token4">'url: '</span> <span class="token">+</span> url <span class="token">+</span> <span class="token4">'e'</span><span class="token1">,</span> data<span class="token1">:</span> <span class="token1">{</span> order_id<span class="token1">:</span> order_id<span class="token1">,</span> order_receiver_date<span class="token1">:</span> order_receiver_date<span class="token1">,</span> buyer_name<span class="token1">:</span> buyer_name <span class="token1">}</span><span class="token1">,</span> height<span class="token1">:</span> <span class="token6">250</span><span class="token1">,</span> width<span class="token1">:</span> <span class="token6">500</span><span class="token1">,</span> lock<span class="token1">:</span> <span class="token6">true</span><span class="token1">,</span> drag<span class="token1">:</span> <span class="token6">false</span><span class="token1">,</span> ok<span class="token1">:</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span><span class="token1">)</span> $order_receiver_date <span class="token">=</span> <span class="token3">strtotime</span><span class="token1">(</span>$order_receiver_date<span class="token1">)</span><span class="token1">;</span> $order_receiver_date <span class="token">=</span> <span class="token3">strtotime</span><span class="token1">(</span><span class="token4">"+$delayDays days"</span><span class="token1">,</span> $order_receiver_date<span class="token1">)</span><span class="token1">;</span> $update<span class="token1">[</span><span class="token4">'order_receiver_date'</span><span class="token1">]</span> <span class="token">=</span> <span class="token3">date</span><span class="token1">(</span><span class="token4">'Y-m-d H:i:s'</span><span class="token1">,</span> $order_receiver_date<span class="token1">)</span><span class="token1">;</span> $flag <span class="token">=</span> $Order_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">editBase</span><span class="token1">(</span>$order_id<span class="token1">,</span> $update<span class="token1">)</span><span class="token1">;</span> ``` ``` ##### 4.4、已發貨(delivered()) ``` <pre class="calibre14">``` $condition<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">=</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_FINISH<span class="token1">;</span> ``` ``` ##### 4.5、其他 ``` <pre class="calibre14">``` 訂單搜索、取消訂單、刪除訂單、徹底刪除訂單、還原訂單與上文已售訂單管理中一致 ``` ``` #### 5、發貨設置 文件路徑:shop/controllers/Seller/Trade/DeliverCtl.php ##### 5.1、地址庫(deliverSetting()) 獲取地址列表: $cond\_row\['shop\_id'\] = Perm::$shopId; $data = $this->shopShippingAddressModel->getBaseList($cond\_row, array('shipping\_address\_time' => 'desc'), $page, $rows); 新增/編輯地址: ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'#form'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">validator</span><span class="token1">(</span><span class="token1">{</span> debug<span class="token1">:</span><span class="token6">true</span><span class="token1">,</span> ignore<span class="token1">:</span> <span class="token4">':hidden'</span><span class="token1">,</span> theme<span class="token1">:</span> <span class="token4">'yellow_right'</span><span class="token1">,</span> timely<span class="token1">:</span> <span class="token6">1</span><span class="token1">,</span> stopOnError<span class="token1">:</span> <span class="token6">false</span><span class="token1">,</span> rules<span class="token1">:</span> <span class="token1">{</span> phone<span class="token1">:</span> <span class="token1">[</span><span class="token">/</span><span class="token">^</span><span class="token6">1</span><span class="token1">[</span>\d<span class="token1">]</span><span class="token1">{</span><span class="token6">10</span><span class="token1">}</span>$<span class="token">/</span><span class="token1">,</span> <span class="token4">'<?=__('</span>請輸入正確的手機號<span class="token4">')?>'</span><span class="token1">]</span> <span class="token1">}</span><span class="token1">,</span> fields<span class="token1">:</span> <span class="token1">{</span> <span class="token4">'shipping_address_contact'</span><span class="token1">:</span> <span class="token4">'required;length[2~10]'</span><span class="token1">,</span> <span class="token4">'select_1'</span><span class="token1">:</span><span class="token4">'required'</span><span class="token1">,</span> <span class="token4">'select_2'</span><span class="token1">:</span><span class="token4">'required'</span><span class="token1">,</span> <span class="token4">'select_3'</span><span class="token1">:</span><span class="token4">'required'</span><span class="token1">,</span> <span class="token4">'shipping_address_address'</span> <span class="token1">:</span> <span class="token4">'required'</span><span class="token1">,</span> <span class="token4">'shipping_address_phone'</span><span class="token1">:</span><span class="token4">'required;phone'</span> <span class="token1">}</span><span class="token1">,</span> valid<span class="token1">:</span> <span class="token2">function</span><span class="token1">(</span>form<span class="token1">)</span><span class="token1">{</span> var me <span class="token">=</span> this<span class="token1">;</span> <span class="token5">// 提交表單之前,hold住表單,并且在以后每次hold住時執行回調</span> me<span class="token1">.</span><span class="token3">holdSubmit</span><span class="token1">(</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> Public<span class="token1">.</span>tips<span class="token1">.</span><span class="token3">error</span><span class="token1">(</span><span class="token4">'<?=__('</span>正在處理中<span class="token4">')?>...'</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">.</span><span class="token3">ajax</span><span class="token1">(</span><span class="token1">{</span> url<span class="token1">:</span> ajax_url<span class="token1">,</span> data<span class="token1">:</span> $<span class="token1">(</span>form<span class="token1">)</span><span class="token1">.</span><span class="token3">serialize</span><span class="token1">(</span><span class="token1">)</span><span class="token1">,</span> type<span class="token1">:</span> <span class="token4">"POST"</span><span class="token1">,</span> success<span class="token1">:</span><span class="token2">function</span><span class="token1">(</span>e<span class="token1">)</span><span class="token1">{</span> me<span class="token1">.</span><span class="token3">holdSubmit</span><span class="token1">(</span><span class="token6">false</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> ``` ``` 刪除地址: ``` <pre class="calibre14">``` <span class="token"><</span>span class<span class="token">=</span><span class="token4">"del"</span><span class="token">></span><span class="token"><</span>a data<span class="token">-</span>param<span class="token">=</span><span class="token4">"{'ctl':'Seller_Trade_Deliver','met':'delAddress','id':'<?= $val['shipping_address_id'] ?>'}"</span> href<span class="token">=</span><span class="token4">"javascript:void(0)"</span><span class="token">></span><span class="token"><</span>i class<span class="token">=</span><span class="token4">"iconfont icon-lajitong"</span><span class="token">></span><span class="token"><</span><span class="token">/</span>i<span class="token">></span><span class="token"><</span><span class="token">?</span><span class="token">=</span><span class="token3">__</span><span class="token1">(</span><span class="token4">'刪除'</span><span class="token1">)</span><span class="token">?</span><span class="token">></span><span class="token"><</span><span class="token">/</span>a<span class="token">></span><span class="token"><</span><span class="token">/</span>span<span class="token">></span> ``` ``` 更改默認地址: ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'input[name="is_default"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> $<span class="token1">.</span><span class="token3">get</span><span class="token1">(</span><span class="token4">'index.php?ctl=Seller_Trade_Deliver&met=setDefaultAddress&shipping_address_id='</span><span class="token">+</span>$<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token1">)</span><span class="token1">,</span><span class="token2">function</span><span class="token1">(</span>result<span class="token1">)</span><span class="token1">{</span><span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//獲取店鋪已設置默認地址信息</span> $data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span><span class="token3">getByWhere</span><span class="token1">(</span><span class="token3">array</span><span class="token1">(</span><span class="token4">'shop_id'</span> <span class="token">=</span><span class="token">></span> $shop_id<span class="token1">,</span><span class="token4">'shipping_address_default'</span> <span class="token">=</span><span class="token">></span> <span class="token6">1</span><span class="token1">)</span><span class="token1">)</span><span class="token1">;</span> <span class="token2">if</span> <span class="token1">(</span><span class="token">!</span><span class="token3">empty</span><span class="token1">(</span>$data<span class="token1">)</span><span class="token1">)</span> <span class="token1">{</span> foreach <span class="token1">(</span>$data as $key <span class="token">=</span><span class="token">></span> $val<span class="token1">)</span> <span class="token1">{</span> <span class="token5">//已有默認地址置為0</span> $this<span class="token">-</span><span class="token">></span><span class="token3">edit</span><span class="token1">(</span>$val<span class="token1">[</span><span class="token4">'shipping_address_id'</span><span class="token1">]</span><span class="token1">,</span> <span class="token3">array</span><span class="token1">(</span><span class="token4">'shipping_address_default'</span> <span class="token">=</span><span class="token">></span> <span class="token6">0</span><span class="token1">)</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span> <span class="token5">//設置新的默認地址</span> $this<span class="token">-</span><span class="token">></span><span class="token3">edit</span><span class="token1">(</span>$shipping_address_id<span class="token1">,</span> $field_row<span class="token1">)</span><span class="token1">;</span> ``` ``` ##### 5.2、默認物流公司(express) 循環顯示所有物流公司 ``` <pre class="calibre14">``` <span class="token"><</span><span class="token">?</span>php <span class="token3">foreach</span><span class="token1">(</span>$data<span class="token1">[</span><span class="token4">'items'</span><span class="token1">]</span> as $key<span class="token">=</span><span class="token">></span>$val<span class="token1">)</span><span class="token1">{</span> <span class="token">?</span><span class="token">></span> <span class="token"><</span>td class<span class="token">=</span><span class="token4">"tl"</span><span class="token">></span> <span class="token"><</span>label class<span class="token">=</span><span class="token4">"checkbox"</span><span class="token">></span><span class="token"><</span>input type<span class="token">=</span><span class="token4">"checkbox"</span> <span class="token"><</span><span class="token">?</span>php <span class="token2">if</span><span class="token1">(</span>$val<span class="token1">[</span><span class="token4">'checked'</span><span class="token1">]</span><span class="token">==</span><span class="token6">1</span><span class="token1">)</span> echo <span class="token4">"checked"</span><span class="token1">;</span> <span class="token">?</span><span class="token">></span> name<span class="token">=</span><span class="token4">"id[]"</span> value<span class="token">=</span><span class="token4">"<?=$val['express_id']?>"</span><span class="token">></span><span class="token"><</span><span class="token">/</span>label<span class="token">></span><span class="token"><</span><span class="token">?</span><span class="token">=</span><span class="token3">__</span><span class="token1">(</span>$val<span class="token1">[</span><span class="token4">'express_name'</span><span class="token1">]</span><span class="token1">)</span><span class="token">?</span><span class="token">></span> <span class="token"><</span><span class="token">/</span>td<span class="token">></span> <span class="token"><</span><span class="token">?</span>php <span class="token2">if</span><span class="token1">(</span><span class="token1">(</span>$key<span class="token">+</span><span class="token6">1</span><span class="token1">)</span><span class="token">%</span><span class="token6">4</span><span class="token">==</span><span class="token6">0</span><span class="token1">)</span><span class="token1">{</span> <span class="token">?</span><span class="token">></span><span class="token"><</span><span class="token">/</span>tr<span class="token">></span><span class="token"><</span>tr<span class="token">></span><span class="token"><</span><span class="token">?</span>php <span class="token1">}</span> <span class="token">?</span><span class="token">></span> <span class="token"><</span><span class="token">?</span>php <span class="token1">}</span> <span class="token">?</span><span class="token">></span> ``` ``` 保存修改 ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'#form'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">validator</span><span class="token1">(</span><span class="token1">{</span> $<span class="token1">.</span><span class="token3">ajax</span><span class="token1">(</span><span class="token1">{</span> url<span class="token1">:</span> <span class="token4">"index.php?ctl=Seller_Trade_Deliver&met=express&typ=json&op=save"</span><span class="token1">,</span> data<span class="token1">:</span> $<span class="token1">(</span>form<span class="token1">)</span><span class="token1">.</span><span class="token3">serialize</span><span class="token1">(</span><span class="token1">)</span><span class="token1">,</span> type<span class="token1">:</span> <span class="token4">"POST"</span><span class="token1">,</span> success<span class="token1">:</span><span class="token2">function</span><span class="token1">(</span>e<span class="token1">)</span><span class="token1">{</span> me<span class="token1">.</span><span class="token3">holdSubmit</span><span class="token1">(</span><span class="token6">false</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//獲取店鋪默認物流公司ID</span> $express_rows <span class="token">=</span> $this<span class="token">-</span><span class="token">></span><span class="token3">getShopExpressId</span><span class="token1">(</span><span class="token3">array</span><span class="token1">(</span><span class="token4">'shop_id'</span> <span class="token">=</span><span class="token">></span> $shop_id<span class="token1">)</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//不在已有默認物流公司ID內,插入</span> $this<span class="token">-</span><span class="token">></span><span class="token3">add</span><span class="token1">(</span>$field<span class="token1">)</span><span class="token1">;</span> <span class="token5">//如果已有ID,不在提交的數組里,刪除</span> $cond_row<span class="token1">[</span><span class="token4">'shop_id'</span><span class="token1">]</span> <span class="token">=</span> $shop_id<span class="token1">;</span> $cond_row<span class="token1">[</span><span class="token4">'express_id'</span><span class="token1">]</span> <span class="token">=</span> $v<span class="token1">;</span> <span class="token5">//獲取主鍵值,合并數組</span> $key_row <span class="token">=</span> $this<span class="token">-</span><span class="token">></span><span class="token3">getKeyByWhere</span><span class="token1">(</span>$cond_row<span class="token1">)</span><span class="token1">;</span> $del_row <span class="token">=</span> <span class="token3">array_merge</span><span class="token1">(</span>$del_row<span class="token1">,</span> $key_row<span class="token1">)</span><span class="token1">;</span> ``` ``` ##### 5.3、免運費額度(freightAmount()) 保存修改 ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'#form'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">validator</span><span class="token1">(</span><span class="token1">{</span> $<span class="token1">.</span><span class="token3">ajax</span><span class="token1">(</span><span class="token1">{</span> url<span class="token1">:</span> <span class="token4">"index.php?ctl=Seller_Trade_Deliver&met=freightAmount&op=save&typ=json"</span><span class="token1">,</span> data<span class="token1">:</span> $<span class="token1">(</span>form<span class="token1">)</span><span class="token1">.</span><span class="token3">serialize</span><span class="token1">(</span><span class="token1">)</span><span class="token1">,</span> type<span class="token1">:</span> <span class="token4">"POST"</span><span class="token1">,</span> success<span class="token1">:</span><span class="token2">function</span><span class="token1">(</span>e<span class="token1">)</span><span class="token1">{</span> me<span class="token1">.</span><span class="token3">holdSubmit</span><span class="token1">(</span><span class="token6">false</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> $update_flag <span class="token">=</span> $this<span class="token">-</span><span class="token">></span><span class="token3">edit</span><span class="token1">(</span>$shop_id<span class="token1">,</span> <span class="token3">array</span><span class="token1">(</span><span class="token4">'shop_free_shipping'</span> <span class="token">=</span><span class="token">></span> <span class="token3">request_int</span><span class="token1">(</span><span class="token4">'free_shipping'</span><span class="token1">)</span><span class="token1">)</span><span class="token1">)</span><span class="token1">;</span> ``` ``` ##### 5.4、發貨單打印設置(printSetting()) 圖片上傳 ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'#logo_upload'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> $<span class="token1">.</span><span class="token3">dialog</span><span class="token1">(</span><span class="token1">{</span> title<span class="token1">:</span> <span class="token4">'<?=__('</span>圖片裁剪<span class="token4">')?>'</span><span class="token1">,</span> content<span class="token1">:</span> <span class="token4">"url: <?= Yf_Registry::get('url') ?>?ctl=Upload&met=cropperImage&typ=e"</span><span class="token1">,</span> data<span class="token1">:</span> <span class="token1">{</span>width<span class="token1">:</span><span class="token6">120</span><span class="token1">,</span>height<span class="token1">:</span><span class="token6">120</span> <span class="token1">,</span> callback<span class="token1">:</span> callback1 <span class="token1">}</span><span class="token1">,</span> <span class="token5">// 需要截取圖片的寬高比例</span> width<span class="token1">:</span> <span class="token4">'800px'</span><span class="token1">,</span> lock<span class="token1">:</span> <span class="token6">true</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token2">function</span> <span class="token3">callback1</span><span class="token1">(</span> respone <span class="token1">,</span> api <span class="token1">)</span> <span class="token1">{</span> $<span class="token1">(</span><span class="token4">'#image_review'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'src'</span><span class="token1">,</span> respone<span class="token1">.</span>url<span class="token1">)</span><span class="token1">;</span> $<span class="token1">(</span><span class="token4">'.image_review'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">show</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">(</span><span class="token4">'#shop_stamp'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'value'</span><span class="token1">,</span> respone<span class="token1">.</span>url<span class="token1">)</span><span class="token1">;</span> api<span class="token1">.</span><span class="token3">close</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token2">if</span> <span class="token1">(</span> window<span class="token1">.</span>isIE8 <span class="token1">)</span> <span class="token1">{</span> $<span class="token1">(</span><span class="token4">'#logo_upload'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">off</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">)</span><span class="token1">;</span> logo_uploadss <span class="token">=</span> <span class="token2">new</span> <span class="token3">UploadImage</span><span class="token1">(</span><span class="token1">{</span> thumbnailWidth<span class="token1">:</span> <span class="token6">200</span><span class="token1">,</span> thumbnailHeight<span class="token1">:</span> <span class="token6">60</span><span class="token1">,</span> imageContainer<span class="token1">:</span> <span class="token4">'#image_review'</span><span class="token1">,</span> uploadButton<span class="token1">:</span> <span class="token4">'#logo_upload'</span><span class="token1">,</span> inputHidden<span class="token1">:</span> <span class="token4">'#shop_stamp'</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> ``` ``` 保存修改: ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'#form'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">validator</span><span class="token1">(</span><span class="token1">{</span> $<span class="token1">.</span><span class="token3">ajax</span><span class="token1">(</span><span class="token1">{</span> url<span class="token1">:</span> <span class="token4">"index.php?ctl=Seller_Trade_Deliver&met=printSetting&op=save&typ=json"</span><span class="token1">,</span> data<span class="token1">:</span> $<span class="token1">(</span>form<span class="token1">)</span><span class="token1">.</span><span class="token3">serialize</span><span class="token1">(</span><span class="token1">)</span><span class="token1">,</span> type<span class="token1">:</span> <span class="token4">"POST"</span><span class="token1">,</span> success<span class="token1">:</span><span class="token2">function</span><span class="token1">(</span>e<span class="token1">)</span><span class="token1">{</span> me<span class="token1">.</span><span class="token3">holdSubmit</span><span class="token1">(</span><span class="token6">false</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">)</span><span class="token1">;</span> $field_row<span class="token1">[</span><span class="token4">'shop_print_desc'</span><span class="token1">]</span> <span class="token">=</span> <span class="token3">request_string</span><span class="token1">(</span><span class="token4">'shop_print_desc'</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//打印描述</span> $field_row<span class="token1">[</span><span class="token4">'shop_stamp'</span><span class="token1">]</span> <span class="token">=</span> <span class="token3">request_string</span><span class="token1">(</span><span class="token4">'shop_stamp'</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//店鋪印章</span> $flag <span class="token">=</span> $Shop_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">setPrint</span><span class="token1">(</span>$shop_id<span class="token1">,</span> $field_row<span class="token1">)</span><span class="token1">;</span> ``` ``` #### 6、運單模板 文件路徑:shop/controllers/Seller/Trade/WaybillCtl.php ##### 6.1、模板綁定(waybillManage()) 設為默認/解綁 ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'span[data-action]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> var user_express_id <span class="token1">,</span> tpl_id <span class="token1">,</span> param <span class="token">=</span> <span class="token1">{</span><span class="token1">}</span> <span class="token1">,</span> action <span class="token">=</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">data</span><span class="token1">(</span><span class="token4">'action'</span><span class="token1">)</span> <span class="token1">,</span> url <span class="token">=</span> SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Trade_Waybill&met=operateByManage&typ=json&action='</span> <span class="token1">;</span> <span class="token2">if</span> <span class="token1">(</span>action <span class="token">==</span> <span class="token4">'set_default'</span> <span class="token">||</span> action <span class="token">==</span> <span class="token4">'unbind_tpl'</span><span class="token1">)</span> <span class="token1">{</span> param <span class="token">=</span> <span class="token1">{</span> user_express_id<span class="token1">:</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">data</span><span class="token1">(</span><span class="token4">'user_express_id'</span><span class="token1">)</span><span class="token1">,</span> waybill_tpl_id<span class="token1">:</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">data</span><span class="token1">(</span><span class="token4">'waybill_tpl_id'</span><span class="token1">)</span> <span class="token1">}</span><span class="token1">;</span> url <span class="token">+</span><span class="token">=</span> action<span class="token1">;</span> $<span class="token1">.</span><span class="token3">post</span><span class="token1">(</span>url<span class="token1">,</span> param<span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span>data<span class="token1">)</span> <span class="token1">{</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span> <span class="token5">//只能有一條數據為default</span> $shop_express_search<span class="token1">[</span><span class="token4">'user_is_default'</span><span class="token1">]</span> <span class="token">=</span> Shop_ExpressModel<span class="token1">:</span><span class="token1">:</span>DEFAULT_TRUE<span class="token1">;</span> $shop_express_base <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>shopExpressModel<span class="token">-</span><span class="token">></span><span class="token3">getOneByWhere</span><span class="token1">(</span>$shop_express_search<span class="token1">)</span><span class="token1">;</span> $this<span class="token">-</span><span class="token">></span>shopExpressModel<span class="token">-</span><span class="token">></span><span class="token3">editExpress</span><span class="token1">(</span>$u_express_id<span class="token1">,</span> $shop_express_search<span class="token1">)</span><span class="token1">;</span> $shop_express_search<span class="token1">[</span><span class="token4">'user_is_default'</span><span class="token1">]</span> <span class="token">=</span> Shop_ExpressModel<span class="token1">:</span><span class="token1">:</span>DEFAULT_TRUE<span class="token1">;</span> $flag <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>shopExpressModel<span class="token">-</span><span class="token">></span><span class="token3">editExpress</span><span class="token1">(</span>$user_express_id<span class="token1">,</span> $shop_express_search<span class="token1">)</span><span class="token1">;</span> ``` ``` ##### 6.2、選擇模板(waybillBind()) 綁定 ``` <pre class="calibre14">``` var user_express_id <span class="token">=</span> <span class="token"><</span><span class="token">?</span>php <span class="token2">if</span> <span class="token1">(</span> <span class="token">!</span><span class="token3">empty</span><span class="token1">(</span>$user_express_id<span class="token1">)</span> <span class="token1">)</span> <span class="token1">{</span> echo $user_express_id<span class="token1">;</span> <span class="token1">}</span> <span class="token2">else</span> <span class="token1">{</span> echo <span class="token6">0</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">;</span> <span class="token">?</span><span class="token">></span><span class="token1">;</span> $<span class="token1">(</span><span class="token4">'a[nctype="btn_bind"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> var waybill_tpl_id <span class="token">=</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">data</span><span class="token1">(</span><span class="token4">'waybill_tpl_id'</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">.</span><span class="token3">post</span><span class="token1">(</span>SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Trade_Waybill&met=waybillBind&typ=json'</span><span class="token1">,</span> <span class="token1">{</span>waybill_tpl_id<span class="token1">:</span> waybill_tpl_id<span class="token1">,</span> user_express_id<span class="token1">:</span> user_express_id<span class="token1">}</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span>data<span class="token1">)</span> <span class="token1">{</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span><span class="token1">)</span> $waybill_tpl_id <span class="token">=</span> <span class="token3">request_int</span><span class="token1">(</span><span class="token4">'waybill_tpl_id'</span><span class="token1">)</span><span class="token1">;</span> $shop_express_data<span class="token1">[</span><span class="token4">'waybill_tpl_id'</span><span class="token1">]</span> <span class="token">=</span> $waybill_tpl_id<span class="token1">;</span> $flag <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>shopExpressModel<span class="token">-</span><span class="token">></span><span class="token3">editExpress</span><span class="token1">(</span>$user_express_id<span class="token1">,</span> $shop_express_data<span class="token1">)</span><span class="token1">;</span> ``` ``` ##### 6.3、模板設置(waybillSetting()) 初始化 ``` <pre class="calibre14">``` <span class="token"><</span><span class="token">?</span>php <span class="token2">if</span> <span class="token1">(</span> <span class="token">!</span><span class="token3">empty</span><span class="token1">(</span>$shop_express_data<span class="token1">[</span><span class="token4">'user_tpl_item'</span><span class="token1">]</span><span class="token1">)</span> <span class="token1">)</span> <span class="token1">{</span> <span class="token">?</span><span class="token">></span> <span class="token"><</span><span class="token">?</span>php foreach <span class="token1">(</span> $shop_express_data<span class="token1">[</span><span class="token4">'user_tpl_item'</span><span class="token1">]</span> as $key <span class="token">=</span><span class="token">></span> $val <span class="token1">)</span> <span class="token1">{</span> <span class="token">?</span><span class="token">></span> <span class="token"><</span><span class="token">?</span>php echo $val<span class="token1">;</span> <span class="token">?</span><span class="token">></span><span class="token1">.</span>checked <span class="token">=</span> <span class="token6">true</span><span class="token1">;</span> <span class="token"><</span><span class="token">?</span>php <span class="token1">}</span> <span class="token">?</span><span class="token">></span> <span class="token"><</span><span class="token">?</span>php <span class="token1">}</span> <span class="token">?</span><span class="token">></span> ``` ``` 表單提交 ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'#form'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">validator</span><span class="token1">(</span><span class="token1">{</span> theme<span class="token1">:</span> <span class="token4">'yellow_right'</span><span class="token1">,</span> timely<span class="token1">:</span> <span class="token6">true</span><span class="token1">,</span> rules<span class="token1">:</span> <span class="token1">{</span><span class="token1">}</span><span class="token1">,</span> fields<span class="token1">:</span> <span class="token1">{</span> <span class="token4">'store_waybill_left'</span><span class="token1">:</span><span class="token4">'required;range[0.01~9999];'</span><span class="token1">,</span> <span class="token4">'store_waybill_top'</span><span class="token1">:</span> <span class="token4">'required;range[0.01~9999];'</span><span class="token1">,</span> <span class="token1">}</span><span class="token1">,</span> valid<span class="token1">:</span> <span class="token2">function</span><span class="token1">(</span>form<span class="token1">)</span><span class="token1">{</span> <span class="token5">//表單驗證通過,提交表單到服務器</span> $<span class="token1">.</span><span class="token3">post</span><span class="token1">(</span> SITE_URL <span class="token">+</span> <span class="token4">"?ctl=Seller_Trade_Waybill&met=waybillSetting&typ=json"</span><span class="token1">,</span> $<span class="token1">(</span><span class="token4">'#form'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">serialize</span><span class="token1">(</span><span class="token1">)</span><span class="token1">,</span> <span class="token2">function</span><span class="token1">(</span>data<span class="token1">)</span> <span class="token1">{</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> $express_data<span class="token1">[</span><span class="token4">'user_tpl_item'</span><span class="token1">]</span> <span class="token">=</span> <span class="token3">array_keys</span><span class="token1">(</span>$data<span class="token1">)</span><span class="token1">;</span> $express_data<span class="token1">[</span><span class="token4">'user_tpl_top'</span><span class="token1">]</span> <span class="token">=</span> <span class="token3">request_int</span><span class="token1">(</span><span class="token4">'store_waybill_top'</span><span class="token1">)</span><span class="token1">;</span> $express_data<span class="token1">[</span><span class="token4">'user_tpl_left'</span><span class="token1">]</span> <span class="token">=</span> <span class="token3">request_int</span><span class="token1">(</span><span class="token4">'store_waybill_left'</span><span class="token1">)</span><span class="token1">;</span> $flag <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>shopExpressModel<span class="token">-</span><span class="token">></span><span class="token3">editExpress</span><span class="token1">(</span>$user_express_id<span class="token1">,</span> $express_data<span class="token1">)</span><span class="token1">;</span> ``` ``` ##### 6.4、自建模板(waybillIndex()) 6.4.1、添加模板(addTpl()) 視圖文件: ``` <pre class="calibre14">``` $this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'waybillAdd'</span><span class="token1">)</span><span class="token1">;</span> ``` ``` 提交表單 ``` <pre class="calibre14">``` $<span class="token1">.</span><span class="token3">post</span><span class="token1">(</span> SITE_URL <span class="token">+</span> <span class="token4">"?ctl=Seller_Trade_Waybill&typ=json&met="</span> <span class="token">+</span> met<span class="token1">,</span> $<span class="token1">(</span><span class="token4">'#form'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">serialize</span><span class="token1">(</span><span class="token1">)</span><span class="token1">,</span> <span class="token2">function</span><span class="token1">(</span>data<span class="token1">)</span> <span class="token1">{</span> <span class="token2">if</span><span class="token1">(</span> data<span class="token1">.</span>status <span class="token">==</span> <span class="token6">200</span> <span class="token1">)</span> <span class="token1">{</span> Public<span class="token1">.</span><span class="token3">tips</span><span class="token1">(</span><span class="token1">{</span> content<span class="token1">:</span> <span class="token4">'<?=__('</span>保存成功<span class="token4">')?>!'</span><span class="token1">,</span> type<span class="token1">:</span> <span class="token6">3</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token3">setTimeout</span><span class="token1">(</span><span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> window<span class="token1">.</span>location<span class="token1">.</span>href <span class="token">=</span> SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Trade_Waybill&met=waybillIndex&typ=e'</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">,</span> <span class="token6">1000</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token2">else</span> <span class="token1">{</span> Public<span class="token1">.</span><span class="token3">tips</span><span class="token1">(</span><span class="token1">{</span> content<span class="token1">:</span> <span class="token4">'<?=__('</span>保存失敗<span class="token4">')?>!'</span><span class="token1">,</span> type<span class="token1">:</span> <span class="token6">1</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span> ``` ``` 6.4.2、編輯模板(editTpl()) 視圖文件: ``` <pre class="calibre14">``` $this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'waybillAdd'</span><span class="token1">)</span><span class="token1">;</span> ``` ``` 表單提交與6.4.1中表單提交一致。 6.4.3、刪除模板 ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'a[nctype="btn_del"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> var _this <span class="token">=</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">,</span>waybill_tpl_id <span class="token">=</span> _this<span class="token1">.</span><span class="token3">data</span><span class="token1">(</span><span class="token4">'waybill_tpl_id'</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">.</span><span class="token3">post</span><span class="token1">(</span>SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Trade_Waybill&met=removeTpl&typ=json'</span><span class="token1">,</span> <span class="token1">{</span>waybill_tpl_id<span class="token1">:</span> waybill_tpl_id<span class="token1">}</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span>data<span class="token1">)</span> <span class="token1">{</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span><span class="token1">)</span> $flag <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>logisticsWaybillModel<span class="token">-</span><span class="token">></span><span class="token3">removeTpl</span><span class="token1">(</span>$waybill_tpl_id<span class="token1">)</span><span class="token1">;</span> ``` ``` 6.4.4、測試模板(testTpl()) 視圖文件: ``` <pre class="calibre14">``` $this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'waybillTest'</span><span class="token1">)</span><span class="token1">;</span> ``` ``` 打印運單: ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'#btn'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span> <span class="token2">function</span><span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> <span class="token3">pos</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">(</span><span class="token4">'.waybill_back'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">hide</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">(</span><span class="token4">'.control'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">hide</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> window<span class="token1">.</span><span class="token3">print</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> var pos <span class="token">=</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> var top <span class="token">=</span> <span class="token"><</span><span class="token">?</span><span class="token">=</span> $waybill_data<span class="token1">[</span><span class="token4">'waybill_tpl_top'</span><span class="token1">]</span><span class="token1">;</span> <span class="token">?</span><span class="token">></span><span class="token1">;</span> var left <span class="token">=</span> <span class="token"><</span><span class="token">?</span><span class="token">=</span> $waybill_data<span class="token1">[</span><span class="token4">'waybill_tpl_left'</span><span class="token1">]</span><span class="token1">;</span> <span class="token">?</span><span class="token">></span><span class="token1">;</span> $<span class="token1">(</span><span class="token4">".waybill_design"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">each</span><span class="token1">(</span><span class="token2">function</span><span class="token1">(</span>index<span class="token1">)</span> <span class="token1">{</span> var offset <span class="token">=</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">offset</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> var offset_top <span class="token">=</span> offset<span class="token1">.</span>top <span class="token">+</span> top<span class="token1">;</span> var offset_left <span class="token">=</span> offset<span class="token1">.</span>left <span class="token">+</span> left<span class="token1">;</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">offset</span><span class="token1">(</span><span class="token1">{</span> top<span class="token1">:</span> offset_top<span class="token1">,</span> left<span class="token1">:</span> offset_left<span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">;</span> ``` ``` 6.4.5、設計模板(designTpl()) 視圖文件: ``` <pre class="calibre14">``` $this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'waybillDesign'</span><span class="token1">)</span><span class="token1">;</span> ``` ``` 提交表單 ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'#submit'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> $<span class="token1">.</span><span class="token3">post</span><span class="token1">(</span>SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Trade_Waybill&met=designTpl&typ=json'</span><span class="token1">,</span> $<span class="token1">(</span><span class="token4">'#form'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">serialize</span><span class="token1">(</span><span class="token1">)</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span>data<span class="token1">)</span><span class="token1">{</span> <span class="token2">if</span><span class="token1">(</span> data<span class="token1">.</span>status <span class="token">==</span> <span class="token6">200</span> <span class="token1">)</span> <span class="token1">{</span> Public<span class="token1">.</span><span class="token3">tips</span><span class="token1">(</span><span class="token1">{</span> content<span class="token1">:</span> <span class="token4">"<?=__('修改成功')?>"</span><span class="token1">,</span> type<span class="token1">:</span> <span class="token6">3</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token3">setTimeout</span><span class="token1">(</span><span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> window<span class="token1">.</span>location<span class="token1">.</span>href <span class="token">=</span> SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Trade_Waybill&met=waybillIndex&typ=e'</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span> <span class="token2">else</span> <span class="token1">{</span> Public<span class="token1">.</span><span class="token3">tips</span><span class="token1">(</span><span class="token1">{</span> content<span class="token1">:</span> <span class="token4">"<?=__('修改失敗')?>"</span><span class="token1">,</span> type<span class="token1">:</span> <span class="token6">1</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span> <span class="token1">}</span><span class="token1">)</span> $flag <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>logisticsWaybillModel<span class="token">-</span><span class="token">></span><span class="token3">editTpl</span><span class="token1">(</span>$waybill_tpl_id<span class="token1">,</span> $waybill_edit_data<span class="token1">)</span><span class="token1">;</span> ``` ``` #### 7、評價管理 文件路徑:shop/controllers/Seller/Goods/Evaluation.php 來自買家的評價(evaluation()) ``` <pre class="calibre14">``` $data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>goodsEvaluationModel<span class="token">-</span><span class="token">></span><span class="token3">getEvaluationList</span><span class="token1">(</span>$cond_row<span class="token1">,</span> $order_row<span class="token1">,</span> $page<span class="token1">,</span> $rows<span class="token1">)</span><span class="token1">;</span> ``` ``` 解釋: 視圖文件 ``` <pre class="calibre14">``` $this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'explain'</span><span class="token1">)</span><span class="token1">;</span> ``` ``` 表單提交 ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">"#add_form"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">ajaxSubmit</span><span class="token1">(</span><span class="token2">function</span><span class="token1">(</span>message<span class="token1">)</span><span class="token1">{</span> <span class="token2">if</span><span class="token1">(</span>message<span class="token1">.</span>status <span class="token">==</span> <span class="token6">200</span><span class="token1">)</span> <span class="token1">{</span> location<span class="token1">.</span>href<span class="token">=</span><span class="token4">"<?=Yf_Registry::get('url')?>?ctl=Seller_Goods_Evaluation&met=evaluation"</span><span class="token1">;</span> <span class="token1">}</span> <span class="token2">else</span> <span class="token1">{</span> Public<span class="token1">.</span>tips<span class="token1">.</span><span class="token3">error</span><span class="token1">(</span><span class="token4">'<?=__('</span>操作失敗!<span class="token4">')?>'</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> ``` ``` #### 8、物流工具 文件路徑:shop/controllers/Seller/TransportlCtl.php 8.1、運費模板設置(transport()) 視圖文件: ``` <pre class="calibre14">``` $this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'template'</span><span class="token1">)</span><span class="token1">;</span> ``` ``` 數據獲取: ``` <pre class="calibre14">``` $data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span><span class="token3">template</span><span class="token1">(</span>$shop_id<span class="token1">)</span><span class="token1">;</span> ``` ``` 8.2、添加/編輯運費模板(transport()) 數據獲取: ``` <pre class="calibre14">``` $data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span><span class="token3">transport_default</span><span class="token1">(</span>$id<span class="token1">,</span>$shop_id<span class="token1">)</span><span class="token1">;</span> ``` ``` 添加規則: ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'.trans-line'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span><span class="token4">'.t_addRule'</span><span class="token1">,</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> StartNum <span class="token">+</span><span class="token">=</span><span class="token6">1</span><span class="token1">;</span> cell <span class="token">=</span> RuleCell<span class="token1">.</span><span class="token3">replace</span><span class="token1">(</span><span class="token">/</span>CurNum<span class="token">/</span>g<span class="token1">,</span>StartNum<span class="token1">)</span><span class="token1">;</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.tbl-except'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'table'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">append</span><span class="token1">(</span>cell<span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> ``` ``` 編輯規則: ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'.trans-line'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span><span class="token4">'a[entype="t_editArea"]'</span><span class="token1">,</span><span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span> <span class="token1">{</span> curTransType <span class="token">=</span> <span class="token4">'kd'</span><span class="token1">;</span> <span class="token5">//取消所有已選擇的checkbox</span> $<span class="token1">(</span><span class="token4">'#J_CityList'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'input[type="checkbox"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'checked'</span><span class="token1">,</span><span class="token6">false</span><span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'disabled'</span><span class="token1">,</span><span class="token6">false</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//取消顯示所有統計數量</span> $<span class="token1">(</span><span class="token4">'#J_CityList'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.check_num'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">html</span><span class="token1">(</span><span class="token4">''</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//記錄當前行的標識n1,n2,n3....</span> curIndex <span class="token">=</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'data-group'</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//記錄當前操作的行,選擇完地區會向該區域拋出值</span> objCurlArea <span class="token">=</span> $<span class="token1">(</span><span class="token4">'tr[data-group="'</span><span class="token">+</span>curIndex<span class="token">+</span><span class="token4">'"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">children</span><span class="token1">(</span><span class="token6">1</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//記錄已選擇的所有省及市的value,SelectArea下標為value值,值為true,如江蘇省SelectArea[320000]=true,南京市SelectArea[320100]=true</span> SelectArea <span class="token">=</span> <span class="token2">new</span> <span class="token3">Array</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//取得當前行隱藏域內的city值,放入SelectArea數組中</span> var expAreas <span class="token">=</span> $<span class="token1">(</span><span class="token4">'input[name="areas['</span><span class="token">+</span>curTransType<span class="token">+</span><span class="token4">']['</span><span class="token">+</span>curIndex<span class="token1">.</span><span class="token3">substring</span><span class="token1">(</span><span class="token6">1</span><span class="token1">)</span><span class="token">+</span><span class="token4">']"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> expAreas <span class="token">=</span> expAreas<span class="token1">.</span><span class="token3">split</span><span class="token1">(</span><span class="token4">'|||'</span><span class="token1">)</span><span class="token1">;</span> expAreas <span class="token">=</span> expAreas<span class="token1">[</span><span class="token6">0</span><span class="token1">]</span><span class="token1">.</span><span class="token3">split</span><span class="token1">(</span><span class="token4">','</span><span class="token1">)</span><span class="token1">;</span> <span class="token2">try</span><span class="token1">{</span> <span class="token2">if</span><span class="token1">(</span>expAreas<span class="token1">[</span><span class="token6">0</span><span class="token1">]</span> <span class="token">!=</span> <span class="token4">''</span><span class="token1">)</span><span class="token1">{</span> <span class="token2">for</span><span class="token1">(</span>var v <span class="token2">in</span> expAreas<span class="token1">)</span><span class="token1">{</span> SelectArea<span class="token1">[</span>expAreas<span class="token1">[</span>v<span class="token1">]</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">true</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span> <span class="token5">//初始化已選中的checkbox</span> $<span class="token1">(</span><span class="token4">'#J_CityList'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.district-province'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">each</span><span class="token1">(</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> var count <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'input[type="checkbox"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">each</span><span class="token1">(</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> <span class="token2">if</span><span class="token1">(</span>SelectArea<span class="token1">[</span>$<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token1">)</span><span class="token1">]</span><span class="token">==</span><span class="token6">true</span><span class="token1">)</span><span class="token1">{</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'checked'</span><span class="token1">,</span><span class="token6">true</span><span class="token1">)</span><span class="token1">;</span> <span class="token2">if</span><span class="token1">(</span>$<span class="token1">(</span>this<span class="token1">)</span><span class="token1">[</span><span class="token6">0</span><span class="token1">]</span><span class="token1">.</span>className<span class="token">!=</span><span class="token4">'J_Province'</span><span class="token1">)</span> count<span class="token">++</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token2">if</span> <span class="token1">(</span>count <span class="token">></span> <span class="token6">0</span><span class="token1">)</span><span class="token1">{</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.check_num'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">html</span><span class="token1">(</span><span class="token4">'('</span><span class="token">+</span>count<span class="token">+</span><span class="token4">')'</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//循環每一行,如果一行省都選中,則大區載選中</span> $<span class="token1">(</span><span class="token4">'#J_CityList>li'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">each</span><span class="token1">(</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.region_group'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'checked'</span><span class="token1">,</span><span class="token6">true</span><span class="token1">)</span><span class="token1">;</span> father <span class="token">=</span> this<span class="token1">;</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.J_Province'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">each</span><span class="token1">(</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> <span class="token2">if</span> <span class="token1">(</span><span class="token">!</span>$<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'checked'</span><span class="token1">)</span><span class="token1">)</span><span class="token1">{</span> $<span class="token1">(</span>father<span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.region_group'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'checked'</span><span class="token1">,</span><span class="token6">false</span><span class="token1">)</span><span class="token1">;</span> <span class="token2">return</span> <span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token2">catch</span><span class="token1">(</span>ex<span class="token1">)</span><span class="token1">{</span><span class="token1">}</span> <span class="token5">//其它行已選擇的地區,不能再選擇了</span> $<span class="token1">(</span>objCurlArea<span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.area-group'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">each</span><span class="token1">(</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> <span class="token2">if</span> <span class="token1">(</span>$<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">next</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'name'</span><span class="token1">)</span> <span class="token">!=</span> <span class="token4">'areas['</span><span class="token">+</span>curTransType<span class="token">+</span><span class="token4">']['</span><span class="token">+</span>curIndex<span class="token1">.</span><span class="token3">substring</span><span class="token1">(</span><span class="token6">1</span><span class="token1">)</span><span class="token">+</span><span class="token4">']'</span><span class="token1">)</span><span class="token1">{</span> expAreas <span class="token">=</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">next</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">split</span><span class="token1">(</span><span class="token4">'|||'</span><span class="token1">)</span><span class="token1">;</span> expAreas <span class="token">=</span> expAreas<span class="token1">[</span><span class="token6">0</span><span class="token1">]</span><span class="token1">.</span><span class="token3">split</span><span class="token1">(</span><span class="token4">','</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//重置SelectArea</span> SelectArea <span class="token">=</span> <span class="token2">new</span> <span class="token3">Array</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> <span class="token2">try</span><span class="token1">{</span> <span class="token2">if</span><span class="token1">(</span>expAreas<span class="token1">[</span><span class="token6">0</span><span class="token1">]</span> <span class="token">!=</span> <span class="token4">''</span><span class="token1">)</span><span class="token1">{</span> <span class="token2">for</span><span class="token1">(</span>var v <span class="token2">in</span> expAreas<span class="token1">)</span><span class="token1">{</span> SelectArea<span class="token1">[</span>expAreas<span class="token1">[</span>v<span class="token1">]</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">true</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span> <span class="token5">//其它行已選中的在這里都置灰</span> $<span class="token1">(</span><span class="token4">'#J_CityList'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'input[type="checkbox"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">each</span><span class="token1">(</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> <span class="token2">if</span><span class="token1">(</span>SelectArea<span class="token1">[</span>$<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token1">)</span><span class="token1">]</span><span class="token">==</span><span class="token6">true</span><span class="token1">)</span><span class="token1">{</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'disabled'</span><span class="token1">,</span><span class="token6">true</span><span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'checked'</span><span class="token1">,</span><span class="token6">false</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//循環每一行,如果一行的省都被disabled,則大區域也disabled</span> $<span class="token1">(</span><span class="token4">'#J_CityList>li'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">each</span><span class="token1">(</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.region_group'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'disabled'</span><span class="token1">,</span><span class="token6">true</span><span class="token1">)</span><span class="token1">;</span> father <span class="token">=</span> this<span class="token1">;</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.J_Province'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">each</span><span class="token1">(</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> <span class="token2">if</span> <span class="token1">(</span><span class="token">!</span>$<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'disabled'</span><span class="token1">)</span><span class="token1">)</span><span class="token1">{</span> $<span class="token1">(</span>father<span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.region_group'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'disabled'</span><span class="token1">,</span><span class="token6">false</span><span class="token1">)</span><span class="token1">;</span> <span class="token2">return</span> <span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token2">catch</span><span class="token1">(</span>ex<span class="token1">)</span><span class="token1">{</span><span class="token1">}</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//定位彈出層的坐標</span> $<span class="token1">(</span><span class="token4">"#dialog_areas"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">css</span><span class="token1">(</span><span class="token1">{</span><span class="token4">'position'</span> <span class="token1">:</span> <span class="token4">'absolute'</span><span class="token1">,</span><span class="token4">'display'</span> <span class="token1">:</span> <span class="token4">'block'</span><span class="token1">,</span> <span class="token4">'z-index'</span> <span class="token1">:</span> <span class="token4">'9999'</span><span class="token1">,</span><span class="token4">'top'</span><span class="token1">:</span><span class="token4">'20%'</span><span class="token1">,</span><span class="token4">'border'</span><span class="token1">:</span><span class="token4">'1px solid #E6E6E6'</span><span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">(</span><span class="token4">'.ks-ext-mask'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">css</span><span class="token1">(</span><span class="token4">'display'</span><span class="token1">,</span><span class="token4">'block'</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> ``` ``` 刪除一行規則: ``` <pre class="calibre14">``` $<span class="token1">(</span><span class="token4">'.trans-line'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">'click'</span><span class="token1">,</span><span class="token4">'.t_deleteRule'</span><span class="token1">,</span><span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> curDelNum <span class="token">=</span> $<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">attr</span><span class="token1">(</span><span class="token4">'ncNum'</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">.</span>dialog<span class="token1">.</span><span class="token3">confirm</span><span class="token1">(</span><span class="token4">'<?=__('</span>確認刪除嗎<span class="token4">')?>?'</span><span class="token1">,</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> curTransType <span class="token">=</span> <span class="token4">'kd'</span><span class="token1">;</span> obj_parent <span class="token">=</span> $<span class="token1">(</span><span class="token4">'tr[data-group="'</span><span class="token">+</span>curDelNum<span class="token">+</span><span class="token4">'"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">(</span><span class="token4">'tr[data-group="'</span><span class="token">+</span>curDelNum<span class="token">+</span><span class="token4">'"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">remove</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> <span class="token2">if</span> <span class="token1">(</span>$<span class="token1">(</span>obj_parent<span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'tr'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">html</span><span class="token1">(</span><span class="token1">)</span> <span class="token">==</span> <span class="token2">null</span><span class="token1">)</span><span class="token1">{</span> $<span class="token1">(</span>obj_parent<span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.batch'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">css</span><span class="token1">(</span><span class="token4">'display'</span><span class="token1">,</span><span class="token4">'none'</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">(</span>obj_parent<span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.J_ToggleBatch'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">css</span><span class="token1">(</span><span class="token4">'display'</span><span class="token1">,</span><span class="token4">'none'</span><span class="token1">)</span><span class="token1">;</span> $<span class="token1">(</span>obj_parent<span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">parent</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'.batch'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">next</span><span class="token1">(</span><span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'span'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">css</span><span class="token1">(</span><span class="token4">'display'</span><span class="token1">,</span><span class="token4">'none'</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token2">else</span><span class="token1">{</span> <span class="token5">//如果該配送方式,地區都不為空,隱藏地區的提示層</span> isRemove <span class="token">=</span> <span class="token6">true</span><span class="token1">;</span> $<span class="token1">(</span><span class="token4">'div[data-delivery="'</span><span class="token">+</span>curTransType<span class="token">+</span><span class="token4">'"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'input[type="hidden"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">each</span><span class="token1">(</span><span class="token2">function</span><span class="token1">(</span><span class="token1">)</span><span class="token1">{</span> <span class="token2">if</span> <span class="token1">(</span>$<span class="token1">(</span>this<span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token1">)</span><span class="token">==</span><span class="token4">''</span><span class="token1">)</span><span class="token1">{</span> isRemove <span class="token">=</span> <span class="token6">false</span><span class="token1">;</span><span class="token2">return</span> <span class="token6">false</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token2">if</span> <span class="token1">(</span>isRemove <span class="token">==</span> <span class="token6">true</span><span class="token1">)</span><span class="token1">{</span> $<span class="token1">(</span><span class="token4">'div[data-delivery="'</span><span class="token">+</span>curTransType<span class="token">+</span><span class="token4">'"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">find</span><span class="token1">(</span><span class="token4">'span[error_type="area"]'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">css</span><span class="token1">(</span><span class="token4">'display'</span><span class="token1">,</span><span class="token4">'none'</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> ``` ``` 表單提交: ``` <pre class="calibre14">``` var form_data <span class="token">=</span> $<span class="token1">(</span><span class="token4">'#transport_form'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">serialize</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span> var url <span class="token">=</span> <span class="token4">"<?=Yf_Registry::get('url')?>?ctl=Seller_Transport&met=transportSubmit&typ=json"</span><span class="token1">;</span> $<span class="token1">.</span><span class="token3">post</span><span class="token1">(</span>url<span class="token1">,</span>form_data<span class="token1">,</span><span class="token2">function</span><span class="token1">(</span>resp<span class="token1">)</span><span class="token1">{</span> <span class="token2">if</span><span class="token1">(</span>resp<span class="token1">.</span>status <span class="token">==</span> <span class="token6">200</span><span class="token1">)</span><span class="token1">{</span> window<span class="token1">.</span>location<span class="token1">.</span>href <span class="token">=</span> <span class="token4">"<?=Yf_Registry::get('url')?>?ctl=Seller_Transport&met=transport&typ=e"</span><span class="token1">;</span> <span class="token1">}</span><span class="token2">else</span><span class="token1">{</span> Public<span class="token1">.</span><span class="token3">tips</span><span class="token1">(</span><span class="token1">{</span>type<span class="token1">:</span> <span class="token6">1</span><span class="token1">,</span> content<span class="token1">:</span> resp<span class="token1">.</span>msg<span class="token1">}</span><span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> <span class="token1">}</span><span class="token1">,</span><span class="token4">'json'</span><span class="token1">)</span><span class="token1">;</span> <span class="token5">//修改模板</span> $res_info <span class="token">=</span> $Transport_TemplateModel<span class="token">-</span><span class="token">></span><span class="token3">templateAdd</span><span class="token1">(</span>$template_data<span class="token1">)</span><span class="token1">;</span> <span class="token5">//添加模板</span> $res_info <span class="token">=</span> $Transport_TemplateModel<span class="token">-</span><span class="token">></span><span class="token3">templateModify</span><span class="token1">(</span>$template_id<span class="token1">,</span>$template_data<span class="token1">)</span><span class="token1">;</span> <span class="token5">//批量刪除規則</span> $flag2 <span class="token">=</span> $Transport_RuleModel<span class="token">-</span><span class="token">></span><span class="token3">delAllRule</span><span class="token1">(</span>$template_id<span class="token1">)</span><span class="token1">;</span> <span class="token5">//批量添加規則</span> foreach <span class="token1">(</span>$transport<span class="token1">[</span>$type<span class="token1">]</span> as $key<span class="token">=</span><span class="token">></span>$value<span class="token1">)</span><span class="token1">{</span> $flag <span class="token">=</span> $Transport_RuleModel<span class="token">-</span><span class="token">></span><span class="token3">addRule</span><span class="token1">(</span>$rule_data<span class="token1">)</span><span class="token1">;</span> <span class="token1">}</span> ``` ``` 8.3、刪除模板 ``` <pre class="calibre14">``` <span class="token"><</span>span class<span class="token">=</span><span class="token4">"del"</span><span class="token">></span><span class="token"><</span>a data<span class="token">-</span>param<span class="token">=</span><span class="token4">"{'ctl':'Seller_Transport','met':'delTemplate','id':'<?=$value['id']?>'}"</span> href<span class="token">=</span><span class="token4">"javascript:void(0)"</span><span class="token">></span><span class="token"><</span>i class<span class="token">=</span><span class="token4">"iconfont icon-lajitong"</span><span class="token">></span><span class="token"><</span><span class="token">/</span>i<span class="token">></span><span class="token"><</span><span class="token">?</span><span class="token">=</span><span class="token3">__</span><span class="token1">(</span><span class="token4">'刪除'</span><span class="token1">)</span><span class="token">?</span><span class="token">></span><span class="token"><</span><span class="token">/</span>a<span class="token">></span><span class="token"><</span><span class="token">/</span>span<span class="token">></span> $flag <span class="token">=</span> $Transport_TemplateModel<span class="token">-</span><span class="token">></span><span class="token3">templateDel</span><span class="token1">(</span>$transport_template_id<span class="token1">,</span>$shop_id<span class="token1">)</span><span class="token1">;</span> ``` ``` #### 9、售賣區域 文件路徑:shop/controllers/Seller/TransportlCtl.php 9.1、售賣區域模板設置(tplarea()) 視圖文件: ``` <pre class="calibre14">``` $this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'transportArea'</span><span class="token1">)</span><span class="token1">;</span> ``` ``` 數據獲取: ``` <pre class="calibre14">``` $data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span><span class="token3">transport_area</span><span class="token1">(</span>$shop_id<span class="token1">)</span><span class="token1">;</span> ``` ``` 9.2、添加/編輯售賣區域模板(act=area) 視圖文件: ``` <pre class="calibre14">``` $this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'area'</span><span class="token1">)</span><span class="token1">;</span> ``` ``` 自定義中循環生成區域地址: ``` <pre class="calibre14">``` <span class="token"><</span><span class="token">?</span>php <span class="token3">foreach</span><span class="token1">(</span>$val<span class="token1">[</span><span class="token4">'city'</span><span class="token1">]</span> as $citykey <span class="token">=</span><span class="token">></span> $cityval<span class="token1">)</span><span class="token1">{</span><span class="token">?</span><span class="token">></span> <span class="token"><</span>li<span class="token">></span><span class="token"><</span>label class<span class="token">=</span><span class="token4">"checkbox city"</span><span class="token">></span> <span class="token"><</span>input <span class="token"><</span><span class="token">?</span>php <span class="token2">if</span><span class="token1">(</span>$data<span class="token1">[</span><span class="token4">'data'</span><span class="token1">]</span><span class="token1">[</span><span class="token4">'area_ids_arr'</span><span class="token1">]</span> <span class="token">&&</span> <span class="token3">in_array</span><span class="token1">(</span>$cityval<span class="token1">[</span><span class="token4">'district_id'</span><span class="token1">]</span><span class="token1">,</span>$data<span class="token1">[</span><span class="token4">'data'</span><span class="token1">]</span><span class="token1">[</span><span class="token4">'area_ids_arr'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">)</span><span class="token1">{</span><span class="token">?</span><span class="token">></span>checked<span class="token">=</span><span class="token4">"checked"</span><span class="token"><</span><span class="token">?</span>php <span class="token1">}</span><span class="token">?</span><span class="token">></span> type<span class="token">=</span><span class="token4">"checkbox"</span> name<span class="token">=</span><span class="token4">"city[]"</span> data<span class="token">-</span>province<span class="token">=</span><span class="token4">"<?=($val['district_id'])?>"</span> value<span class="token">=</span><span class="token4">"<?=($cityval['district_id'])?>"</span> <span class="token">/</span><span class="token">></span><span class="token"><</span><span class="token">?</span><span class="token">=</span><span class="token1">(</span>$cityval<span class="token1">[</span><span class="token4">'district_name'</span><span class="token1">]</span><span class="token1">)</span><span class="token">?</span><span class="token">></span> <span class="token"><</span><span class="token">/</span>label<span class="token">></span><span class="token"><</span><span class="token">/</span>li<span class="token">></span> <span class="token"><</span><span class="token">?</span>php <span class="token1">}</span><span class="token">?</span><span class="token">></span> ``` ``` 表單提交路徑: ``` <pre class="calibre14">``` var ajax_url <span class="token">=</span> <span class="token4">'<?= Yf_Registry::get('</span>url<span class="token4">') ?>?ctl=Seller_Transport&met=areaSubmit&typ=json'</span><span class="token1">;</span> <span class="token5">//全國</span> $area_ids <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> <span class="token5">//非全國</span> $province_ids <span class="token">=</span> <span class="token3">is_array</span><span class="token1">(</span>$area_province<span class="token1">)</span> <span class="token">&&</span> $area_province <span class="token">?</span> <span class="token3">implode</span><span class="token1">(</span><span class="token4">','</span><span class="token1">,</span> $area_province<span class="token1">)</span> <span class="token1">:</span> <span class="token4">''</span><span class="token1">;</span> $area_ids <span class="token">=</span> <span class="token3">trim</span><span class="token1">(</span>$city_ids<span class="token1">.</span><span class="token4">','</span><span class="token1">.</span>$province_ids<span class="token1">,</span><span class="token4">','</span><span class="token1">)</span><span class="token1">;</span> $result <span class="token">=</span> $Transport_AreaModel<span class="token">-</span><span class="token">></span><span class="token3">areaAdd</span><span class="token1">(</span>$data<span class="token1">)</span><span class="token1">;</span> ``` ``` 11.9.3、刪除模板 ``` <pre class="calibre15">``` <span class="token"><</span>span class<span class="token">=</span><span class="token4">"del"</span><span class="token">></span><span class="token"><</span>a data<span class="token">-</span>param<span class="token">=</span><span class="token4">"{'ctl':'Seller_Transport','met':'delArea','id':'<?=$value['id']?>'}"</span> <span class="token">></span><span class="token"><</span>i class<span class="token">=</span><span class="token4">"iconfont icon-lajitong"</span><span class="token">></span><span class="token"><</span><span class="token">/</span>i<span class="token">></span><span class="token"><</span><span class="token">?</span><span class="token">=</span><span class="token3">__</span><span class="token1">(</span><span class="token4">'刪除'</span><span class="token1">)</span><span class="token">?</span><span class="token">></span><span class="token"><</span><span class="token">/</span>a<span class="token">></span><span class="token"><</span><span class="token">/</span>span<span class="token">></span> $flag <span class="token">=</span> $Transport_AreaModel<span class="token">-</span><span class="token">></span><span class="token3">typeDel</span><span class="token1">(</span>$type_id<span class="token1">,</span>$shop_id<span class="token1">)</span><span class="token1">;</span> ``` ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看