stanley-king 4 năm trước cách đây
mục cha
commit
46584c745d
3 tập tin đã thay đổi với 29 bổ sung16 xóa
  1. 17 7
      data/model/card_key.model.php
  2. 9 3
      helper/refill/RefillBase.php
  3. 3 6
      test/TestCardKey.php

+ 17 - 7
data/model/card_key.model.php

@@ -54,22 +54,32 @@ class card_keyModel extends Model
     {
         //只有已经预留了的卡才可以重新回收使用。
         return $this->where(['card_id' => $card_id, 'card_state' => ReserveCard])
-                    ->update(['card_state' => UnusedCard,'member_id' => 0,'order_id' => 0,
-                              'receive_card_no' => '','receive_card_type' => '', 'out_store_id' => 0,
-                              'reserved_time' => 0, 'assigned_time' => 0]);
+                    ->update(['card_state' => UnusedCard, 'order_id' => 0,
+                        'member_id' => 0,
+                        'out_store_id' => 0,
+                        'receive_card_no' => '',
+                        'receive_card_type' => 0,
+                        'reserved_time' => 0,
+                        'assigned_time' => 0]);
     }
     public function freeze($card_id)
     {
         //只有已经预留了的卡才可以重新回收使用。
         return $this->where(['card_id' => $card_id,'card_state' => ReserveCard])
-                    ->update(['card_state' => FreezedCard,'member_id' => 0,'order_id' => 0,
-                              'receive_card_no' => '','receive_card_type' => '',
-                              'reserved_time' => 0, 'assigned_time' => 0]);
+                    ->update(['card_state' => FreezedCard]);
     }
     public function unfreeze($card_id)
     {
         //只有已经预留了的卡才可以重新回收使用。
         return $this->where(['card_id' => $card_id, 'card_state' => FreezedCard])
-                    ->update(['card_state' => UnusedCard]);
+                    ->update(['card_state' => UnusedCard,
+                        'order_id' => 0,
+                        'member_id' => 0,
+                        'out_store_id' => 0,
+                        'receive_card_no' => '',
+                        'receive_card_type' => 0,
+                        'reserved_time' => 0,
+                        'assigned_time' => 0,
+                        'errmsg' => '']);
     }
 }

+ 9 - 3
helper/refill/RefillBase.php

@@ -216,8 +216,8 @@ class RefillBase
     //说明:错误码为true 表示成功
     //     其它情况,则需要判断订单ID
     public function add($mchid, $buyer_id, $amount, $card_no,
-                        $mch_order, $idcard, $card_name, $notify_url,$quality,$org_quality,
-                        $order_time, $commit_times,$last_orderid = 0,$card_type = 0)
+                        $mch_order, $idcard, $card_name, $notify_url, $quality, $org_quality,
+                        $order_time, $commit_times, $last_orderid = 0, $card_type = 0)
     {
         if($card_type == 0) {
             $card_type = mtopcard\card_type($card_no);
@@ -311,9 +311,15 @@ class RefillBase
 
             $order_success = true;
             util::incr_order($channel_name,$card_type,$amount,$quality);
+
             $params = ['order_sn' => $order_sn, 'idcard' => $idcard, 'card_name' => $card_name,'quality' => $quality];
-            [$state, $errmsg,$neterr] = $provider->add($card_no, $card_type, $amount, $params);
+            if($quality == Quality::CardKey) {
+                $params['store_id'] = 0;
+                $params['order_id'] = $order_id;
+                $params['member_id'] = $buyer_id;
+            }
 
+            [$state, $errmsg,$neterr] = $provider->add($card_no, $card_type, $amount, $params);
             if ($state)
             {
                 //提交成功

+ 3 - 6
test/TestCardKey.php

@@ -14,9 +14,6 @@ require_once(BASE_HELPER_PATH . '/mcard/mcard.php');
 require_once(BASE_HELPER_PATH . '/mtopcard/mtopcard.php');
 require_once(BASE_HELPER_PATH . '/util_helper.php');
 
-require_once(BASE_HELPER_PATH . '/order_helper.php');
-require_once(BASE_HELPER_PATH . '/bonus_helper.php');
-require_once(BASE_HELPER_PATH . '/vrorder_helper.php');
 
 
 class TestCardKey extends TestCase
@@ -29,9 +26,9 @@ class TestCardKey extends TestCase
     public function testGetUsable()
     {
         $amount = 1000;
-        [$ret,$info] = mtopcard\cards_helper::reserve(mtopcard\OilCardPaper,1000,35268,'xxxyyyzzzkkkdj',mtopcard\PetroChinaCard,0);
-
-
+        [$ret,$card] = mtopcard\cards_helper::reserve(mtopcard\OilCardPaper,1000,35268,'xxxyyyzzzkkkdj',mtopcard\PetroChinaCard,0);
 
+        $card_no = $card->card_no();
+        $card_key = $card->card_key();
     }
 }