dever 6 年之前
父节点
当前提交
627ca27a96
共有 2 个文件被更改,包括 69 次插入0 次删除
  1. 13 0
      code/database/info.php
  2. 56 0
      main/lib/Cron.php

+ 13 - 0
code/database/info.php

@@ -285,5 +285,18 @@ return array
             'page' => array(30, 'list'),
             'col' => '*',
         ),
+
+        'getData' => array
+        (
+            # 匹配的正则或函数 选填项
+            'option' => array
+            (
+                'order_id' => 'yes',
+                'state' => 1,
+            ),
+            'type' => 'all',
+            'order' => array('type' => 'desc', 'cdate' => 'desc'),
+            'col' => '*',
+        ),
     )
 );

+ 56 - 0
main/lib/Cron.php

@@ -6,6 +6,62 @@ use Dever;
 
 class Cron
 {
+    # 收回多余的兑换码
+    public function deleteCode_api()
+    {
+        $order_id = Dever::input('order_id');
+        if ($order_id) {
+            $where['order_id'] = $order_id;
+        }
+        $where['product_id'] = 28;
+        //$where['refund_status'] = 1;
+        $where['type'] = 3;
+        $data = Dever::db('journal/order')->state($where);
+
+        $test = Dever::input('test');
+        if ($test == 1) {
+            print_r($data);
+        }
+
+        if ($data) {
+            foreach ($data as $k => $v) {
+                $this->deleteCode($v);
+            }
+        }
+    }
+
+    private function deleteCode($data)
+    {
+        # 获取该订单所能拥有的兑换码数
+        $code_num = 1;
+        $uid = $order['uid'];
+        if ($data['buy_id'] > 0) {
+            $buy = Dever::db('journal/buy_num')->one($data['buy_id']);
+            $code_num = $buy['code'];
+        }
+
+        # 这个订单下所有码
+        $code_where['order_id'] = $data['order_id'];
+        $code = Dever::db('code/info')->getData($code_where);
+
+        # code_num = 1
+        # code = 21
+        $test = Dever::input('test');
+        if ($test == 1) {
+            echo $code_num;
+            print_r($code);die;
+        }
+        if ($code) {
+            $i = 1;
+            foreach ($code as $k => $v) {
+                if ($i > $code_num) {
+                    Dever::db('code/info')->update(array('where_id' => $v['id'], 'state' => 2));
+                }
+                $i++;
+            }
+        }
+    }
+
     public function refund_api()
     {
         $order_id = Dever::input('order_id');