Explorar o código

Merge branch 'raccount' of 39.97.239.116:gyfl/xyzshop into rpage

stanley-king %!s(int64=3) %!d(string=hai) anos
pai
achega
0c662ffad5

+ 3 - 1
admin/config/config.ini.php

@@ -11,7 +11,9 @@ $config['receive_bank'] = [
         '椰子浦发',
         '国研浦发',
         '国研招行',
-        '趣带娃建行'
+        '趣带娃建行',
+        '椰子交行',
+        '国研交行'
     ],
     'LZKJ_COMPANY' => [
         '琳珠收款'

+ 1 - 4
admin/control/merchant.php

@@ -480,7 +480,7 @@ class merchantControl extends SystemControl
                 } else {
                     echo 'false';
                 }
-                exit;
+                break;
 
             /**
              * 验证机构是否存在
@@ -493,7 +493,6 @@ class merchantControl extends SystemControl
                 } else {
                     echo 'false';
                 }
-                exit;
         }
     }
 
@@ -744,7 +743,6 @@ class merchantControl extends SystemControl
             if ($evidence_info['is_operation'] == 2) {
                 $trans->commit();
                 showMessage('已经处理', 'index.php?act=refill_evidence&op=index', 'html', 'error');
-                exit;
             }
 
             //扣除冻结的预存款
@@ -775,7 +773,6 @@ class merchantControl extends SystemControl
             $trans->rollback();
             $this->log($log_msg, 0);
             showMessage($e->getMessage(), 'index.php?act=refill_evidence&op=index', 'html', 'error');
-            exit;
         }
     }
 

+ 0 - 1
admin/control/merchant_info.php

@@ -183,7 +183,6 @@ class merchant_infoControl extends SystemControl
             $result=move_uploaded_file($tmp_name,$upload_filename);
             if(!$result){
                 showMessage('上传失败,稍后再试!');
-                exit;
             }
 
             $fileType = PHPExcel_IOFactory::identify($upload_filename);

+ 0 - 48
admin/control/orderstats.php

@@ -3,17 +3,6 @@
 
 class orderstatsControl extends SystemControl
 {
-    private $task_type = [
-        'refill_order_export' => '订单导出'
-    ];
-
-    private $task_state = [
-        1   => '待处理',
-        2   => '处理中',
-        3   => '已处理',
-        4   => '处理错误'
-    ];
-
     public function __construct()
     {
         parent::__construct();
@@ -91,7 +80,6 @@ class orderstatsControl extends SystemControl
         $result['data'] = $stats_list;
         $result['total_stats'] = $stats;
         echo(json_encode($result));
-        exit;
     }
 
     private function stats($condition)
@@ -132,40 +120,4 @@ class orderstatsControl extends SystemControl
         }
         return $result;
     }
-    public function refill_taskOp()
-    {
-        $model = Model('task');
-        $condition['is_show'] = 1;
-        if(!empty($_GET['type'])) {
-            $condition['type'] = $_GET['type'];
-        }
-        if(!empty($_GET['task_id'])) {
-            $condition['task_id'] = $_GET['task_id'];
-        }
-        if(!empty($_GET['state'])) {
-            $condition['state'] = $_GET['state'];
-        }
-        $task_list = $model->getList($condition, 50);
-        foreach ($task_list as $key => $value) {
-            $task_list[$key]['condition'] = unserialize($value['task_params']);
-            $task_list[$key]['result'] = unserialize($value['result']);
-        }
-
-        Tpl::output('list', $task_list);
-        Tpl::output('task_type', $this->task_type);
-        Tpl::output('task_state', $this->task_state);
-        Tpl::showpage('refill.task');
-    }
-
-    public function task_delOp()
-    {
-        $task_id = $_GET['task_id'];
-        $model = Model('task');
-        $resp = $model->Del($task_id);
-        if($resp) {
-            showMessage('删除成功', 'index.php?act=OrderStats&&op=refill_task');
-        }else{
-            showMessage('任务删除失败');
-        }
-    }
 }

+ 1 - 2
admin/control/provider_group.php

@@ -120,7 +120,7 @@ class provider_groupControl extends SystemControl
         $infos = explode(',', $group_info['info']);
         if(empty($group_info['info'])) {
             echo(json_encode([]));
-            exit;
+            return;
         }
         $provider_list = Model('')->table('refill_provider,store')
             ->field('refill_provider.provider_id,store.store_name')
@@ -144,7 +144,6 @@ class provider_groupControl extends SystemControl
         $result['data'] = $datas;
         $result['is_only'] = $group_info['is_only'];
         echo(json_encode($result));
-        exit;
     }
 
     public function set_provider_group_infoOp()

+ 0 - 3
admin/control/provider_info.php

@@ -200,7 +200,6 @@ class provider_infoControl extends SystemControl
             }
         }
         echo json_encode(['to_bank_username' =>$to_bank_username, 'to_bank_name' => $to_bank_name]);
-        exit;
     }
 
     public function provider_evidenceOp()
@@ -389,7 +388,6 @@ class provider_infoControl extends SystemControl
             $result=move_uploaded_file($tmp_name,$upload_filename);
             if(!$result){
                 showMessage('上传失败,稍后再试!');
-                exit;
             }
 
             $fileType = PHPExcel_IOFactory::identify($upload_filename);
@@ -495,6 +493,5 @@ class provider_infoControl extends SystemControl
         $excel_obj->addArray($excel_data);
         $excel_obj->addWorksheet($excel_obj->charset(L('exp_od_order'), CHARSET));
         $excel_obj->generateXML($excel_obj->charset(L('exp_od_order'), CHARSET) . date('Y-m-d-H', time()));
-        exit;
     }
 }

+ 1 - 1
admin/control/refill_evidence.php

@@ -91,7 +91,7 @@ class refill_evidenceControl extends SystemControl
             $result['data'] = $evidence_list;
             $result['stats'] = $stats;
             echo(json_encode($result));
-            exit;
+            return;
         }
         global $config;
         $receive_bank_text = $config['receive_bank'][COMPANY_NAME];

+ 1 - 51
admin/control/refill_order.php

@@ -195,58 +195,10 @@ class refill_orderControl extends SystemControl
             readfile($file_path);
         } else {
             $task_id = $task->task_id();
-            showMessage("录入成功,任务ID:{$task_id},请稍后以相同条件再次导出,或在任务列表直接下载。","index.php?act=orderstats&op=refill_task&task_id={$task_id}");
+            showMessage("录入成功,任务ID:{$task_id},请稍后以相同条件再次导出,或在任务列表直接下载。","index.php?act=task&op=index&task_id={$task_id}");
         }
     }
 
-    private function createExcel($data = array())
-    {
-        Language::read('export');
-        import('libraries.excel');
-        $excel_obj = new Excel();
-        $excel_data = array();
-        //设置样式
-        $excel_obj->setStyle(array('id' => 's_title', 'Font' => array('FontName' => '宋体', 'Size' => '12', 'Bold' => '1')));
-        //header
-        $excel_data[0][] = array('styleid' => 's_title', 'data' => '商户号');
-        $excel_data[0][] = array('styleid' => 's_title', 'data' => '客户订单号');
-        $excel_data[0][] = array('styleid' => 's_title', 'data' => '平台单号');
-        $excel_data[0][] = array('styleid' => 's_title', 'data' => '面额');
-        $excel_data[0][] = array('styleid' => 's_title', 'data' => '充值卡号');
-        $excel_data[0][] = array('styleid' => 's_title', 'data' => '充值卡类型');
-        $excel_data[0][] = array('styleid' => 's_title', 'data' => '下单日期');
-        $excel_data[0][] = array('styleid' => 's_title', 'data' => '完成日期');
-        $excel_data[0][] = array('styleid' => 's_title', 'data' => '官方流水号');
-        $excel_data[0][] = array('styleid' => 's_title', 'data' => '订单状态');
-        $excel_data[0][] = array('styleid' => 's_title', 'data' => '扣款金额');
-        //data
-        foreach ((array)$data as $k => $v) {
-            $tmp = array();
-            $tmp[] = array('data' => $v['mchid']);
-            $tmp[] = array('data' => $v['mch_order']);
-            $tmp[] = array('data' => $v['order_sn']);
-            $tmp[] = array('data' => $v['refill_amount']);
-            $tmp[] = array('data' => $v['card_no']);
-            $tmp[] = array('data' => $this->scard_type($v['card_type']));
-            $tmp[] = array('data' => date('Y-m-d H:i:s', $v['order_time']));
-            if (empty($v['notify_time'])) {
-                $tmp[] = array('data' => '');
-            } else {
-                $tmp[] = array('data' => date('Y-m-d H:i:s', $v['notify_time']));
-            }
-
-            $tmp[] = array('data' => $v['official_sn']);
-            $tmp[] = array('data' => orderState($v));
-            $tmp[] = array('data' => $v['mch_amount']);
-            $excel_data[] = $tmp;
-        }
-        $excel_data = $excel_obj->charset($excel_data, CHARSET);
-        $excel_obj->addArray($excel_data);
-        $excel_obj->addWorksheet($excel_obj->charset(L('exp_od_order'), CHARSET));
-        $excel_obj->generateXML($excel_obj->charset(L('exp_od_order'), CHARSET) . date('Y-m-d-H', time()));
-        exit;
-    }
-
     private function all_order_state_stat($condition)
     {
         $counts = Model('')->table('refill_order,vr_order')->join('inner')
@@ -289,7 +241,6 @@ class refill_orderControl extends SystemControl
             $result[] = $data;
         }
         echo json_encode($result);
-        exit;
     }
 
     public function provider_dataOp()
@@ -302,7 +253,6 @@ class refill_orderControl extends SystemControl
             $result[] = $data;
         }
         echo json_encode($result);
-        exit;
     }
 
     public function refill_third_infoOp()

+ 41 - 6
admin/control/refill_order_manual.php

@@ -65,7 +65,7 @@ class refill_order_manualControl extends SystemControl
     {
         $model_refill_order = Model('refill_order');
         $condition = [];
-        $order_list = [];
+        $orders = [];
         $_GET['query_start_time'] = $_GET['query_start_time'] ?? date("Y-m-d 00:00:00");
         if (in_array($_GET['order_state'], ['0', '10', '20', '30', '40']))
         {
@@ -114,12 +114,48 @@ class refill_order_manualControl extends SystemControl
                 $condition['refill_order.order_time'] = ['egt', $start];
                 $condition['vr_order.add_time'] = ['egt', $start];
             }
-            $order_list = $model_refill_order->getMerchantOrderList($condition, 400, 'refill_order.*,vr_order.order_state', 'refill_order.channel_name DESC ');
-            $order_list = $this->OrderDataFormat($order_list, $merchant_list);
+            $int_array = function ($sids) {
+                $result = [];
+                foreach ($sids as $sid) {
+                    $result[] = intval($sid);
+                }
+
+                return $result;
+            };
+
+            $unique_array = function ($ids)
+            {
+                $ids = array_unique($ids);
+                sort($ids);
+                return $ids;
+            };
+
+            $orders = $model_refill_order->getMerchantOrderList($condition, 400, 'refill_order.*,vr_order.order_state', 'refill_order.channel_name DESC ');
+            $orders = $this->OrderDataFormat($orders, $merchant_list);
+            $order_ids = array_column($orders,'order_id');
+            $order_ids = $unique_array($order_ids);
+            $refill_buyback_model = Model('refill_buyback');
+            $buybacks = $refill_buyback_model->getList(['order_id' => ['in',$order_ids]]);
+            $buyback_ids = array_column($buybacks, 'order_id');
+            $buyback_ids = $int_array($buyback_ids);
+            $buyback_ids = $unique_array($buyback_ids);
+            foreach ($orders as $key => $order)
+            {
+                if($order['order_state'] != ORDER_STATE_SUCCESS) {
+                    $order[$key]['buyback'] = false;
+                    continue;
+                }
+                $order_id = intval($order['order_id']);
+                if(algorithm::binary_search($buyback_ids,$order_id)) {
+                    $orders[$key]['buyback'] = true;
+                }else{
+                    $orders[$key]['buyback'] = false;
+                }
+            }
         }
         Tpl::output('merchant_list', $merchant_list);
         Tpl::output('provider_list', $provider_list);
-        Tpl::output('order_list', $order_list);
+        Tpl::output('order_list', $orders);
         Tpl::output('show_page', $model_refill_order->showpage());
         Tpl::showpage('refill.order.batch');
     }
@@ -145,8 +181,7 @@ class refill_order_manualControl extends SystemControl
         $oid_reader = function ($sids) use ($int_array,$unique_array) {
             $sids = explode(',',$sids);
             $ids = $int_array($sids);
-            $result = $unique_array($ids);
-            return $result;
+            return $unique_array($ids);
         };
 
         $oper_type = $_GET['type'];

+ 2 - 3
admin/control/refill_successful.php

@@ -50,7 +50,7 @@ class refill_successfulControl extends SystemControl
         $data = http_request($url);
         if(empty($data)) {
             echo(json_encode(''));
-            exit;
+            return;
         }
 
         if($type == 'system') {
@@ -61,7 +61,7 @@ class refill_successfulControl extends SystemControl
         $conds = $matches[0];
         if(empty($conds)) {
             echo(json_encode(''));
-            exit;
+            return;
         }
         foreach ($conds as $cond) {
             $arr = explode('/',$cond);
@@ -109,7 +109,6 @@ class refill_successfulControl extends SystemControl
         ksort($qualityData);
         $result['quality'] = $qualityData;
         echo(json_encode($result));
-        exit;
     }
 
     public function merchant_ratiosOp()

+ 58 - 0
admin/control/task.php

@@ -0,0 +1,58 @@
+<?php
+
+
+class taskControl extends SystemControl
+{
+    private $task_type = [
+        'refill_order_export' => '订单导出'
+    ];
+
+    private $task_state = [
+        1   => '待处理',
+        2   => '处理中',
+        3   => '已处理',
+        4   => '处理错误'
+    ];
+
+    public function __construct()
+    {
+        parent::__construct();
+    }
+
+    public function indexOp()
+    {
+        $model = Model('task');
+        $condition['is_show'] = 1;
+        if(!empty($_GET['type'])) {
+            $condition['type'] = $_GET['type'];
+        }
+        if(!empty($_GET['task_id'])) {
+            $condition['task_id'] = $_GET['task_id'];
+        }
+        if(!empty($_GET['state'])) {
+            $condition['state'] = $_GET['state'];
+        }
+        $task_list = $model->getList($condition, 50);
+        foreach ($task_list as $key => $value) {
+            $task_list[$key]['condition'] = unserialize($value['task_params']);
+            $task_list[$key]['result'] = unserialize($value['result']);
+        }
+
+        Tpl::output('list', $task_list);
+        Tpl::output('task_type', $this->task_type);
+        Tpl::output('task_state', $this->task_state);
+        Tpl::showpage('refill.task');
+    }
+
+    public function task_delOp()
+    {
+        $task_id = $_GET['task_id'];
+        $model = Model('task');
+        $resp = $model->Del($task_id);
+        if($resp) {
+            showMessage('删除成功', 'index.php?act=task&op=index');
+        }else{
+            showMessage('任务删除失败');
+        }
+    }
+}

+ 1 - 0
admin/include/limit.php

@@ -50,6 +50,7 @@ $_limit =  array(
         array('name'=> '客服订单查询', 'op'=>null, 'act'=>'order_search'),
         array('name'=> '接单查询', 'op'=>null, 'act'=>'refill_detail'),
         array('name'=> '通道价格明细', 'op'=>null, 'act'=>'provider_price'),
+        array('name'=> '任务列表', 'op'=>null, 'act'=>'task'),
     )),
 	array('name'=>$lang['nc_store'], 'child'=>array(
 		array('name'=>$lang['nc_store_manage'], 'op'=>null, 'act'=>'store'),

+ 1 - 0
admin/include/menu.php

@@ -114,6 +114,7 @@ $arr = array(
 					array('args'=>'index,order_search,merchant',			'text'=>'客服订单查询'),
 					array('args'=>'index,refill_detail,merchant',			'text'=>'接单查询'),
 					array('args'=>'index,provider_price&card_type=2,merchant',			'text'=>'通道价格明细'),
+					array('args'=>'index,task,merchant',					'text'=>'任务列表'),
 				)
 			),
 			4 => array(

+ 0 - 2
admin/templates/default/merchant.order.stats.php

@@ -31,8 +31,6 @@
                 <li><a href="index.php?act=OrderStats&op=index&type=system"><span>平台对账记录</span></a></li>
                 <li><a href="index.php?act=OrderStats&op=index&type=provider"><span>上游对账记录</span></a></li>
                 <li><a href="JavaScript:void(0);" class="current"><span>下游对账记录</span></a></li>
-<!--                <li><a href="index.php?act=OrderStats&op=refill_task"><span>任务列表</span></a></li>-->
-<!--                <li><a href="index.php?act=OrderStats&op=task_add"><span>任务录入</span></a></li>-->
             </ul>
         </div>
     </div>

+ 0 - 2
admin/templates/default/provider.order.stats.php

@@ -31,8 +31,6 @@
                 <li><a href="index.php?act=OrderStats&op=index&type=system"><span>平台对账记录</span></a></li>
                 <li><a href="JavaScript:void(0);" class="current"><span>上游对账记录</span></a></li>
                 <li><a href="index.php?act=OrderStats&op=index&type=merchant"><span>下游对账记录</span></a></li>
-<!--                <li><a href="index.php?act=OrderStats&op=refill_task"><span>任务列表</span></a></li>-->
-<!--                <li><a href="index.php?act=OrderStats&op=task_add"><span>任务录入</span></a></li>-->
             </ul>
         </div>
     </div>

+ 5 - 1
admin/templates/default/refill.order.batch.php

@@ -298,7 +298,8 @@
             <th class="align-right">下单日期</th>
             <th class="align-right">耗时</th>
             <th class="align-center">订单状态</th>
-            <th class="align-center">运营商流水号</th>
+            <th class="align-left">返销状态</th>
+            <th class="align-left">运营商流水号</th>
             <th class="align-center">通道质量</th>
             <th class="align-center">失败原因</th>
             <th class="align-center">商家单号</th>
@@ -344,6 +345,9 @@
                         <?php } ?>
                     </td>
                     <td class="align-center"><?php echo orderState($order); ?></td>
+                    <td class="align-left">
+                        <?php echo $order['buyback'] == true ? '已反销': '/';?>
+                    </td>
                     <td class="align-left"><?php echo $order['official_sn']; ?></td>
                     <td class="align-left"><?php echo $order['quality_text']; ?></td>
                     <td class="align-left"><?php echo $order['err_msg']; ?></td>

+ 1 - 1
admin/templates/default/refill.order.neterr.index.php

@@ -68,7 +68,7 @@
             <h3>问题订单监控</h3>
             <ul class="tab-base">
                 <li><a href="index.php?act=ordersendlist&op=index"><span>商户超时订单监控</span></a></li>
-                <li><a href="index.php?act=ordersendlist&op=monitor_notify"><span>渠道回调超时监控</span></a></li>
+<!--                <li><a href="index.php?act=ordersendlist&op=monitor_notify"><span>渠道回调超时监控</span></a></li>-->
                 <li><a href="JavaScript:void(0);" class="current"><span>网络错误订单监控</span></a></li>
                 <li><a href="index.php?act=ordersendlist&op=notify_err_order"><span>未回调订单监控</span></a></li>
             </ul>

+ 1 - 1
admin/templates/default/refill.order.notify.err.index.php

@@ -68,7 +68,7 @@
             <h3>问题订单监控</h3>
             <ul class="tab-base">
                 <li><a href="index.php?act=ordersendlist&op=index"><span>商户超时订单监控</span></a></li>
-                <li><a href="index.php?act=ordersendlist&op=monitor_notify"><span>渠道回调超时监控</span></a></li>
+<!--                <li><a href="index.php?act=ordersendlist&op=monitor_notify"><span>渠道回调超时监控</span></a></li>-->
                 <li><a href="index.php?act=ordersendlist&op=neterr_order"><span>网络错误订单监控</span></a></li>
                 <li><a href="JavaScript:void(0);" class="current"><span>未回调订单监控</span></a></li>
             </ul>

+ 1 - 1
admin/templates/default/refill.order.send.index.php

@@ -68,7 +68,7 @@
             <h3>问题订单监控</h3>
             <ul class="tab-base">
                 <li><a href="index.php?act=ordersendlist&op=index" class="classA" data-type="index"><span>商户超时订单监控</span></a></li>
-                <li><a href="index.php?act=ordersendlist&op=monitor_notify" class="classA" data-type="monitor_notify"><span>渠道回调超时监控</span></a></li>
+<!--                <li><a href="index.php?act=ordersendlist&op=monitor_notify" class="classA" data-type="monitor_notify"><span>渠道回调超时监控</span></a></li>-->
                 <li><a href="index.php?act=ordersendlist&op=neterr_order"><span>网络错误订单监控</span></a></li>
                 <li><a href="index.php?act=ordersendlist&op=notify_err_order"><span>未回调订单监控</span></a></li>
             </ul>

+ 3 - 6
admin/templates/default/refill.task.php

@@ -111,11 +111,8 @@
 <div class="page">
     <div class="fixed-bar">
         <div class="item-title">
-            <h3>对账管理</h3>
+            <h3>任务列表</h3>
             <ul class="tab-base">
-                <li><a href="index.php?act=OrderStats&op=index&type=system"><span>上游对账记录</span></a></li>
-                <li><a href="index.php?act=OrderStats&op=index&type=provider"><span>上游对账记录</span></a></li>
-                <li><a href="index.php?act=OrderStats&op=index&type=merchant"><span>下游对账记录</span></a></li>
                 <li><a href="JavaScript:void(0);" class="current"><span>任务列表</span></a></li>
             </ul>
         </div>
@@ -123,7 +120,7 @@
     <div class="fixed-empty"></div>
     <form method="get" action="index.php" name="formSearch" id="formSearch">
         <input type="hidden" name="act" value="orderstats"/>
-        <input type="hidden" name="op" value="refill_task"/>
+        <input type="hidden" name="op" value="index"/>
         <table class="tb-type1 noborder search">
             <tr>
                 <th><label>处理状态</label></th>
@@ -199,7 +196,7 @@
                         <?php }?>
                     </td>
                     <td class="align-center">
-                        <a href="index.php?act=OrderStats&op=task_del&task_id=<?php echo $value['task_id'] ?>">删除</a>
+                        <a href="index.php?act=task&op=task_del&task_id=<?php echo $value['task_id'] ?>">删除</a>
                     </td>
                 </tr>
             <?php } ?>

+ 0 - 3
admin/templates/default/system.order.stats.php

@@ -17,9 +17,6 @@
                 <li><a href="JavaScript:void(0);" class="current"><span>平台对账记录</span></a></li>
                 <li><a href="index.php?act=OrderStats&op=index&type=provider"><span>上游对账记录</span></a></li>
                 <li><a href="index.php?act=OrderStats&op=index&type=merchant"><span>下游对账记录</span></a></li>
-
-                <li><a href="index.php?act=OrderStats&op=refill_task"><span>任务列表</span></a></li>
-<!--                <li><a href="index.php?act=OrderStats&op=task_add"><span>任务录入</span></a></li>-->
             </ul>
         </div>
     </div>