浏览代码

Merge branch 'rmaster' of 39.97.239.116:gyfl/xyzshop into rmaster

stanley-king 3 年之前
父节点
当前提交
8793efbd9a

+ 27 - 12
admin/control/merchant.php

@@ -1121,21 +1121,32 @@ class merchantControl extends SystemControl
         }
         $type = $stats_data['type'];
         if (chksubmit()) {
-            $corder_success_count = $_POST['corder_success_count'];
-            $corder_success_amounts = $_POST['corder_success_amounts'];
-            $corder_success_refill_amounts = $_POST['corder_success_refill_amounts'];
+            $corder_success_count = $_POST['corder_success_count'] ?? 0;
+            $corder_success_amounts = $_POST['corder_success_amounts'] ?? 0;
+            $corder_success_refill_amounts = $_POST['corder_success_refill_amounts'] ?? 0;
+            $refund = $_POST['refund'] ?? 0;
             $remark = $_POST['remark'];
             $gap_order_count = $gap_success_amounts = $gap_success_refill_amounts = 0;
             if($type == 'provider') {
-                $gap_order_count = $corder_success_count - $stats_data['success_count'];
-                $gap_success_amounts = $corder_success_amounts - $stats_data['success_channel_amounts'];
+                if(!empty($corder_success_amounts)) {
+                    $gap_success_amounts = $corder_success_amounts - $stats_data['success_channel_amounts'];
+                }
+                if(!empty($corder_success_count)) {
+                    $gap_order_count = $corder_success_count - $stats_data['success_count'];
+                }
             }elseif ($type == 'merchant') {
-                $gap_order_count = $stats_data['success_count'] - $corder_success_count;
-                $gap_success_amounts = $stats_data['success_channel_amounts'] - $corder_success_amounts;
+                if(!empty($corder_success_count)) {
+                    $gap_order_count = $stats_data['success_count'] - $corder_success_count;
+                }
+                if(!empty($corder_success_amounts)) {
+                    $gap_success_amounts = $stats_data['success_channel_amounts'] - $corder_success_amounts;
+                }
             }else{
                 showMessage('对账数据类型错误', 'index.php?act=OrderStats&op=index');
             }
-            $gap_success_refill_amounts = $corder_success_refill_amounts - $stats_data['success_refill_amounts'];
+            if(!empty($corder_success_refill_amounts)) {
+                $gap_success_refill_amounts = $corder_success_refill_amounts - $stats_data['success_refill_amounts'];
+            }
 
             $updata['corder_success_count'] = $corder_success_count;
             $updata['corder_success_amounts'] = $corder_success_amounts;
@@ -1144,10 +1155,13 @@ class merchantControl extends SystemControl
             $updata['gap_success_amounts'] = $gap_success_amounts;
             $updata['gap_success_refill_amounts'] = $gap_success_refill_amounts;
             $updata['remark'] = $remark;
-            if($gap_order_count == 0 && $gap_success_amounts == 0) {
-                $updata['check_status'] = 1;
-            }else{
-                $updata['check_status'] = 2;
+            $updata['refund'] = $refund;
+            if(!empty($corder_success_count) && !empty($corder_success_amounts) && !empty($corder_success_refill_amounts)) {
+                if($gap_order_count == 0 && $gap_success_amounts == 0 && $gap_success_refill_amounts == 0 ) {
+                    $updata['check_status'] = 1;
+                }else{
+                    $updata['check_status'] = 2;
+                }
             }
             $res = $mod_stat->edit($stat_id, $updata);
 
@@ -1159,6 +1173,7 @@ class merchantControl extends SystemControl
         } else {
             $type_text = ['provider' => '上游', 'merchant' => '商户'];
             Tpl::output('stats_type', $type_text[$type]);
+            Tpl::output('stats_data', $stats_data);
             Tpl::showpage('order.stats.check');
         }
     }

+ 53 - 0
admin/control/order_search.php

@@ -0,0 +1,53 @@
+<?php
+
+
+class order_searchControl extends SystemControl
+{
+    public function __construct()
+    {
+        parent::__construct();
+    }
+
+    public function indexOp()
+    {
+        $model_refill_order = Model('refill_order');
+        $order_list = [];
+        $_GET['query_start_time'] = $_GET['query_start_time'] ?? date("Y-m-d 00:00:00");
+        if(!empty($_GET['card_nos'])) {
+            $condition['refill_order.inner_status'] = 0;
+            $card_nos = $_GET['card_nos'];
+            $card_nos = str_replace(["\r\n", "\r", "\n"], ",", $card_nos);
+            $condition['refill_order.card_no'] = ['in', $card_nos];
+
+            $start_unixtime = intval(strtotime($_GET['query_start_time']));
+            $end_unixtime = intval(strtotime($_GET['query_end_time']));
+
+            if ($start_unixtime > 0 && $end_unixtime > $start_unixtime) {
+                $condition['refill_order.order_time'] = [['egt', $start_unixtime], ['lt', $end_unixtime], 'and'];
+            } elseif ($start_unixtime > 0) {
+                $condition['refill_order.order_time'] = ['egt', $start_unixtime];
+            } elseif ($end_unixtime > 0) {
+                $condition['refill_order.order_time'] = ['lt', $end_unixtime];
+            } else {
+                $start = strtotime(date('Y-m-d', time()));
+                $condition['refill_order.order_time'] = ['egt', $start];
+            }
+            $order_list = $model_refill_order->getMerchantOrderList($condition, 50, 'refill_order.*,vr_order.order_state', 'refill_order.channel_name DESC ');
+
+            $merchant_list = Model('')->table('merchant')->limit(1000)->select();
+            foreach ($merchant_list as  $value) {
+                $merchants[$value['mchid']] = $value;
+            }
+            foreach ($order_list as $order_id => $order_info) {
+                $order_list[$order_id]['card_type_text'] = $this->scard_type($order_info['card_type']);
+                $order_list[$order_id]['mch_name'] = $merchants[$order_info['mchid']]['company_name'];
+                $order_list[$order_id]['diff_time_text'] = $this->elapse_time(time() - $order_info['order_time']);
+                $order_list[$order_id]['diff_time'] = time() - $order_info['order_time'];
+                $order_list[$order_id]['quality_text'] = $this->quality_format($order_info['quality'],$order_info['card_type']);
+            }
+        }
+        Tpl::output('order_list', $order_list);
+        Tpl::output('show_page', $model_refill_order->showpage());
+        Tpl::showpage('refill.order.search');
+    }
+}

+ 1 - 1
admin/control/orderstats.php

@@ -15,7 +15,7 @@ class orderstatsControl extends SystemControl
         $model_refill_order = Model('refill_order');
         $condition['type'] = $type;
         if (!empty($_GET['cid'])) {
-            $condition['cid'] = $_GET['cid'];
+            $condition['cid'] = ['in', $_GET['cid']];
         }
         if (!empty($_GET['order_time_type'])) {
             $condition['order_time_type'] = $_GET['order_time_type'];

+ 20 - 2
admin/control/refill_order.php

@@ -110,8 +110,8 @@ class refill_orderControl extends SystemControl
             $this->RefillOrderExport($condition);
         }
         $merchants = [];
-        $merchant_list = Model('')->table('merchant')->limit(1000)->select();
-        foreach ($merchant_list as $key => $value) {
+        $merchant_list = Model('')->table('merchant')->limit(1000)->order('name asc')->select();
+        foreach ($merchant_list as $value) {
             $merchants[$value['mchid']] = $value;
         }
         $order_list = $model_refill_order->getMerchantOrderList($condition, 50, 'refill_order.*,vr_order.order_state', 'refill_order.order_time desc');
@@ -268,6 +268,24 @@ class refill_orderControl extends SystemControl
         exit;
     }
 
+    public function provider_dataOp()
+    {
+        $provider_list = Model('')->table('refill_provider,store')
+            ->field('refill_provider.*,store.store_name')
+            ->join('inner')
+            ->on('store.store_id=refill_provider.store_id')
+            ->order('opened asc, name asc')
+            ->limit(1000)
+            ->select();
+        foreach ($provider_list as $value) {
+            $data['name'] = $value['store_name'] ?? $value['name'];
+            $data['value'] = $value['store_id'];
+            $result[] = $data;
+        }
+        echo json_encode($result);
+        exit;
+    }
+
     public function refill_third_infoOP()
     {
         $order_id = $_GET['order_id'];

+ 59 - 0
admin/control/refill_refund.php

@@ -47,6 +47,8 @@ class refill_refundControl extends SystemControl
 
             $refund_list[$key]['merchant_name'] = $merchants[$value['mchid']]['name'];
             $refund_list[$key]['company_name'] = $merchants[$value['mchid']]['company_name'];
+
+            $refund_list[$key]['card_type_text'] = $this->scard_type($value['card_type']);
         }
         Tpl::output('provider_list', $providers);
         Tpl::output('merchants', $merchants);
@@ -86,6 +88,9 @@ class refill_refundControl extends SystemControl
                 $insert_array['mch_amount'] = $_POST['mch_amount'];
                 $insert_array['channel_amount'] = $_POST['channel_amount'];
                 $insert_array['refund_time'] = strtotime($_POST['refund_time']);
+                $insert_array['card_no'] = $_POST['card_no'];
+                $insert_array['card_type'] = $_POST['card_type'];
+                $insert_array['refill_amount'] = $_POST['refill_amount'];
                 $insert_array['bz'] = $_POST['bz'] ?? '';
                 $insert_array['add_time'] = time();
                 $result = $mod->addRefund($insert_array);
@@ -108,6 +113,60 @@ class refill_refundControl extends SystemControl
         }
     }
 
+    public function editOp()
+    {
+        $id = $_GET['id'] ?? $_POST['id'];
+        $mod = Model('refill_refund');
+        $refund_info = $mod->getRefundInfo(['id' => $id]);
+        if (empty($refund_info)) {
+            showMessage('退款信息不存在');
+        }
+        if (chksubmit()) {
+            $obj_validate = new Validator();
+            $obj_validate->validateparam = [
+                ["input" => $_POST["mchid"], "require" => "true", "message" => '机构不能为空'],
+                ["input" => $_POST["provider_id"], "require" => "true", "message" => '通道不能为空'],
+                ["input" => $_POST["mch_amount"], "require" => "true", "message" => '机构退款金额不能为空'],
+                ["input" => $_POST["channel_amount"], "require" => "true", "message" => '通道退款金额不能为空'],
+                ["input" => $_POST["refund_time"], "require" => "true", "message" => '退款日期不能为空'],
+                ["input" => $_POST["card_no"], "require" => "true", "message" => '退款卡号不能为空'],
+                ["input" => $_POST["card_type"], "require" => "true", "message" => '卡类型不能为空'],
+                ["input" => $_POST["refill_amount"], "require" => "true", "message" => '面值不能为空']
+            ];
+            $error = $obj_validate->validate();
+            if ($error != '') {
+                showMessage($error);
+                exit;
+            }
+            $update['mchid'] = trim($_POST['mchid']);
+            $update['provider_id'] = trim($_POST['provider_id']);
+            $update['mch_amount'] = trim($_POST['mch_amount']);
+            $update['channel_amount'] = trim($_POST['channel_amount']);
+            $update['refund_time'] = strtotime($_POST['refund_time']);
+            $update['card_no'] = trim($_POST['card_no']);
+            $update['card_type'] = trim($_POST['card_type']);
+            $update['refill_amount'] = trim($_POST['refill_amount']);
+            $update['bz'] = $_POST['bz'] ?? '';
+
+            $result = $mod->editRefund($update, ['id' => $id]);
+            if (!$result) {
+                showMessage('编辑失败');
+            }
+            showMessage('编辑成功','index.php?act=refill_refund&op=index');
+        }
+        else
+        {
+            $merchant_list = Model('')->table('merchant')->limit(1000)->select();
+            $provider_list = Model('')->table('refill_provider,store')->field('refill_provider.provider_id,store.store_name')->join('inner')
+                ->on('store.store_id=refill_provider.store_id')->limit(1000)->select();
+
+            Tpl::output('provider_list', $provider_list);
+            Tpl::output('merchant_list', $merchant_list);
+            Tpl::output('refund_info', $refund_info);
+            Tpl::showpage('refill.refund.edit');
+        }
+    }
+
     public function delOp()
     {
         $id = $_GET['id'];

+ 1 - 0
admin/include/limit.php

@@ -46,6 +46,7 @@ $_limit =  array(
         array('name'=> '订单排队查询', 'op'=>null, 'act'=>'refill_cron'),
         array('name'=> '充值系统设置', 'op'=>null, 'act'=>'refill_config'),
         array('name'=> '退款信息管理', 'op'=>null, 'act'=>'refill_refund'),
+        array('name'=> '客服订单查询', 'op'=>null, 'act'=>'order_search'),
     )),
 	array('name'=>$lang['nc_store'], 'child'=>array(
 		array('name'=>$lang['nc_store_manage'], 'op'=>null, 'act'=>'store'),

+ 1 - 0
admin/include/menu.php

@@ -109,6 +109,7 @@ $arr = array(
 					array('args'=>'index,refill_cron,merchant',				'text'=>'订单排队查询'),
 					array('args'=>'index,refill_config,merchant',			'text'=>'充值系统设置'),
 					array('args'=>'index,refill_refund,merchant',			'text'=>'退款信息管理'),
+					array('args'=>'index,order_search,merchant',			'text'=>'客服订单查询'),
 				)
 			),
 			4 => array(

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

@@ -40,6 +40,8 @@
         <input type="hidden" value="OrderStats" name="act">
         <input type="hidden" value="index" name="op">
         <input type="hidden" value="merchant" name="type">
+        <input type="hidden" value="<?php echo $_GET['cid']; ?>" name="cid">
+        
         <table class="tb-type1 noborder search">
             <tbody>
             <tr>
@@ -61,14 +63,15 @@
                 </td>
                 <th><label>商户名称</label></th>
                 <td>
-                    <select name="cid" id="cid" class="querySelect" lay-verify="" lay-search>
+                    <!-- <select name="cid" id="cid" class="querySelect" lay-verify="" lay-search>
                         <option value=""><?php echo $lang['nc_please_choose']; ?></option>
                         <?php foreach($output['merchant_list'] as $merchant){?>
                             <option value="<?php echo $merchant['mchid']?>"
                                     <?php if ($_GET['cid'] == $merchant['mchid']){ ?>selected<?php } ?>><?php echo $merchant['company_name'] == '' ? $merchant['name'] : $merchant['company_name'];?>
                             </option>
                         <?php }?>
-                    </select>
+                    </select> -->
+                    <div id="selest_nc"></div>
                 </td>
                 <td><a href="javascript:void(0);" id="ncsubmit" class="btn-search "
                        title="<?php echo $lang['nc_query']; ?>">&nbsp;</a>
@@ -134,6 +137,7 @@
                 <th class="align-center">单量误差</th>
                 <th class="align-center">扣款金额误差</th>
                 <th class="align-center">面值误差</th>
+                <th class="align-center">退款</th>
                 <th class="align-center">备注</th>
                 <th class="align-center">匹配状态</th>
                 <th class="align-center">统计日期类型</th>
@@ -161,6 +165,7 @@
                         <td class="align-center"><?php echo $v['gap_order_count']; ?></td>
                         <td class="align-center"><?php echo $v['gap_success_amounts']; ?></td>
                         <td class="align-center"><?php echo $v['gap_success_refill_amounts']; ?></td>
+                        <td class="align-center"><?php echo $v['refund']; ?></td>
                         <td class="align-center"><?php echo $v['remark']; ?></td>
                         <td class="align-center">
                             <?php if($v['check_status'] == 1){?>
@@ -197,6 +202,7 @@
 </div>
 <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/js/jquery.edit.js" charset="utf-8"></script>
 <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/laydate/laydate.js"></script>
+<script type="text/javascript" src="<?php echo ADMIN_TEMPLATES_URL;?>/js/xm-select.js"></script>
 <script type="text/javascript" src="<?php echo ADMIN_TEMPLATES_URL;?>/layui/layui.js"></script>
 <link rel="stylesheet" type="text/css"
       href="<?php echo ADMIN_TEMPLATES_URL; ?>/layui/css/layui.css"/>
@@ -204,6 +210,14 @@
     $(function () {
         $('#ncsubmit').click(function () {
             $('input[name="op"]').val('index');
+            let selectArr = selest_nc.getValue();
+            let selectStr = ''
+            for (let i = 0; i < selectArr.length; i++) {
+                selectStr += selectArr[i].value+','
+            }
+            selectStr = selectStr.substr(0, selectStr.length-1)
+            $('input[name="cid"]').val(selectStr);
+            console.log("selectStr", selectStr);
             $('#formSearch').submit();
         });
         // 日期选择器
@@ -344,5 +358,37 @@
                 // console.log('data', data);
             })
         })
+        //多选
+        let selest_nc
+        let cid = $('input[name="cid"]').val().split(',');
+        $.get('index.php?act=refill_order&op=merchant_data', function(data) {
+            data = JSON.parse(data)
+            if (cid) {
+                for(let index = 0; index < cid.lenght; index++) {
+                    for (let j = 0; j < data.length; j++) {
+                        if(cid[index] == data[j].value) {
+                            data[j].selected = true
+                            
+                        }
+                    }
+                }
+            }
+
+ 
+
+
+            selest_nc = xmSelect.render({
+                    el: '#selest_nc',
+                    size: 'mini',
+                    style: {
+                        minHeight: '27px',
+                        lineHeight: '27px',
+                        marginLeft: '4px',
+                        width: '250px'
+                    },
+                    
+                    data:data
+                })
+        })
     });
 </script>

+ 13 - 28
admin/templates/default/order.stats.check.php

@@ -22,28 +22,35 @@
                 <td colspan="2" class="required"><label class="validation" for="corder_success_count"><?php echo $output['stats_type'];?>成功订单数量:</label></td>
             </tr>
             <tr class="noborder">
-                <td class="vatop rowform"><input type="text" value="" name="corder_success_count" id="corder_success_count" class="txt"></td>
+                <td class="vatop rowform"><input type="text" value="<?php echo $output['stats_data']['corder_success_count'];?>" name="corder_success_count" id="corder_success_count" class="txt"></td>
                 <td class="vatop tips"></td>
             </tr>
             <tr class="noborder">
-                <td colspan="2" class="required"><label class="validation" for="name"><?php echo $output['stats_type'];?>成功订单金额:</label></td>
+                <td colspan="2" class="required"><label class="validation" for="corder_success_refill_amounts"><?php echo $output['stats_type'];?>成功订单面值金额:</label></td>
             </tr>
             <tr class="noborder">
-                <td class="vatop rowform"><input type="text" value="" name="corder_success_amounts" id="corder_success_amounts" class="txt"></td>
+                <td class="vatop rowform"><input type="text" value="<?php echo $output['stats_data']['corder_success_refill_amounts'];?>" name="corder_success_refill_amounts" id="corder_success_refill_amounts" class="txt"></td>
                 <td class="vatop tips"></td>
             </tr>
             <tr class="noborder">
-                <td colspan="2" class="required"><label class="validation" for="name"><?php echo $output['stats_type'];?>成功订单面值金额:</label></td>
+                <td colspan="2" class="required"><label class="validation" for="corder_success_amounts"><?php echo $output['stats_type'];?>成功订单扣款金额:</label></td>
             </tr>
             <tr class="noborder">
-                <td class="vatop rowform"><input type="text" value="" name="corder_success_refill_amounts" id="corder_success_refill_amounts" class="txt"></td>
+                <td class="vatop rowform"><input type="text" value="<?php echo $output['stats_data']['corder_success_amounts'];?>" name="corder_success_amounts" id="corder_success_amounts" class="txt"></td>
+                <td class="vatop tips"></td>
+            </tr>
+            <tr class="noborder">
+                <td colspan="2" class="required"><label class="validation" for="refund"><?php echo $output['stats_type'];?>退款:</label></td>
+            </tr>
+            <tr class="noborder">
+                <td class="vatop rowform"><input type="text" value="<?php echo $output['stats_data']['refund'];?>" name="refund" id="refund" class="txt"></td>
                 <td class="vatop tips"></td>
             </tr>
             <tr>
                 <td colspan="2" class="required"><label>备注信息:</label></td>
             </tr>
             <tr class="noborder">
-                <td class="vatop rowform"><textarea name="remark" rows="6" class="tarea"></textarea></td>
+                <td class="vatop rowform"><textarea name="remark" rows="6" class="tarea"><?php echo $output['stats_data']['remark'];?></textarea></td>
                 <td class="vatop tips"></td>
             </tr>
             </tbody>
@@ -73,28 +80,6 @@
         $('#user_form').validate({
             errorPlacement: function (error, element) {
             error.appendTo(element.parent().parent().prev().find('td:first'));
-            },
-            rules: {
-                corder_success_count: {
-                    required: true,
-                },
-                corder_success_amounts: {
-                    required: true,
-                },
-                corder_success_refill_amounts: {
-                    required: true,
-                }
-            },
-            messages: {
-                corder_success_count: {
-                    required: '不能为空',
-                },
-                corder_success_amounts: {
-                    required: '不能为空',
-                },
-                corder_success_refill_amounts: {
-                    required: '不能为空',
-                }
             }
         });
     });

+ 44 - 83
admin/templates/default/provider.order.stats.php

@@ -39,6 +39,8 @@
         <input type="hidden" value="OrderStats" name="act">
         <input type="hidden" value="index" name="op">
         <input type="hidden" value="provider" name="type">
+        <input type="hidden" name="cid" value=""/>
+        <input type="hidden" name="cid" value="<?php echo $_GET['cid']; ?>"/>
         <table class="tb-type1 noborder search">
             <tbody>
             <tr>
@@ -60,14 +62,7 @@
                 </td>
                 <th><label>通道名称</label></th>
                 <td>
-                    <select name="cid" id="cid" class="querySelect" lay-verify="" lay-search>
-                        <option value=""><?php echo $lang['nc_please_choose']; ?></option>
-                        <?php foreach($output['provider_list'] as $provider){?>
-                            <option value="<?php echo $provider['store_id']?>"
-                                    <?php if ($_GET['cid'] == $provider['store_id']){ ?>selected<?php } ?>><?php echo $provider['store_name']?>
-                            </option>
-                        <?php }?>
-                    </select>
+                 <div id="selest_nc"></div>
                 </td>
                 <td><a href="javascript:void(0);" id="ncsubmit" class="btn-search "
                        title="<?php echo $lang['nc_query']; ?>">&nbsp;</a>
@@ -133,6 +128,7 @@
                 <th class="align-center">单量误差</th>
                 <th class="align-center">扣款金额误差</th>
                 <th class="align-center">面值误差</th>
+                <th class="align-center">退款</th>
                 <th class="align-center">备注</th>
                 <th class="align-center">匹配状态</th>
                 <th class="align-center">统计日期类型</th>
@@ -160,6 +156,7 @@
                         <td class="align-center"><?php echo $v['gap_order_count']; ?></td>
                         <td class="align-center"><?php echo $v['gap_success_amounts']; ?></td>
                         <td class="align-center"><?php echo $v['gap_success_refill_amounts']; ?></td>
+                        <td class="align-center"><?php echo $v['refund']; ?></td>
                         <td class="align-center"><?php echo $v['remark']; ?></td>
                         <td class="align-center">
                             <?php if($v['check_status'] == 1){?>
@@ -201,6 +198,7 @@
 <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/js/jquery.Jcrop/jquery.Jcrop.js"></script>
 <link href="<?php echo RESOURCE_SITE_URL; ?>/js/jquery.Jcrop/jquery.Jcrop.min.css" rel="stylesheet" type="text/css"
       id="cssfile2"/>
+<script type="text/javascript" src="<?php echo ADMIN_TEMPLATES_URL;?>/js/xm-select.js"></script>
 <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/js/jquery.edit.js" charset="utf-8"></script>
 <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/laydate/laydate.js"></script>
 <script type="text/javascript" src="<?php echo ADMIN_TEMPLATES_URL;?>/layui/layui.js"></script>
@@ -209,6 +207,14 @@
     $(function () {
         $('#ncsubmit').click(function () {
             $('input[name="op"]').val('index');
+            let selectArr = selest_nc.getValue();
+            let selectStr = ''
+            for (let i = 0; i < selectArr.length; i++) {
+                selectStr += selectArr[i].value+','
+            }
+            selectStr = selectStr.substr(0, selectStr.length-1)
+            
+            $('input[name="cid"]').val(selectStr);
             $('#formSearch').submit();
         });
         // 日期选择器
@@ -349,80 +355,35 @@
                 // console.log('data', data);
             })
         })
-    //     $('.examine').click(function() {
-    //         layer.open({
-    //         type: 1,
-    //         title: "对账",
-    //         area: ['900px', '500px'],
-    //         shadeClose: true, //点击遮罩关闭
-    //         content: `<form id="user_form" enctype="multipart/form-data" method="post">
-    //                     <input type="hidden" name="form_submit" value="ok"/>
-    //                     <input type="hidden" name="stat_id" value="<?php echo $_GET['stat_id'];?>"/>
-    //                     <table class="table tb-type2">
-    //                     <tbody>
-    //                     <tr class="noborder">
-    //                     <td colspan="2" class="required"><label class="validation" for="corder_success_count"><?php echo $output['stats_type'];?>成功订单数量:</label></td>
-    //                     </tr>
-    //                     <tr class="noborder">
-    //                     <td class="vatop rowform"><input type="text" value="" name="corder_success_count" id="corder_success_count" class="txt"></td>
-    //                     <td class="vatop tips"></td>
-    //                     </tr>
-    //                     <tr class="noborder">
-    //                     <td colspan="2" class="required"><label class="validation" for="name"><?php echo $output['stats_type'];?>成功订单金额:</label></td>
-    //                     </tr>
-    //                     <tr class="noborder">
-    //                     <td class="vatop rowform"><input type="text" value="" name="corder_success_amounts" id="corder_success_amounts" class="txt"></td>
-    //                     <td class="vatop tips"></td>
-    //                     </tr>
-    //                     <tr>
-    //                     <td colspan="2" class="required"><label>备注信息:</label></td>
-    //                     </tr>
-    //                     <tr class="noborder">
-    //                     <td class="vatop rowform"><textarea name="remark" rows="6" class="tarea"></textarea></td>
-    //                     <td class="vatop tips"></td>
-    //                     </tr>
-    //                     </tbody>
-    //                     <tfoot>
-    //                     <tr class="tfoot">
-    //                     <td colspan="15"><a href="JavaScript:void(0);" class="btn" id="submitBtn"><span><?php echo $lang['nc_submit']; ?></span></a></td>
-    //                     </tr>
-    //                     </tfoot>
-    //                     </table>
-    //                     </form>`,
-  
-             
-
-    //                     //按钮先执行验证再提交表单
-    //                     $("#submitBtn").click(function () {
-    //                     if ($("#user_form").valid()) {
-    //                         $("#user_form").submit();
-    //                     }
-    //                 });
-    //                 $('#user_form').validate({
-    //                     errorPlacement: function (error, element) {
-    //                     error.appendTo(element.parent().parent().prev().find(td:first));
-    //                     },
-    //                     rules: {
-    //                         corder_success_count: {
-    //                             required: true,
-    //                         },
-    //                         corder_success_amounts: {
-    //                             required: true,
-    //                         },
-    //                     },
-    //                     messages: {
-    //                         corder_success_count: {
-    //                             required: '不能为空',
-    //                         },
-    //                         corder_success_amounts: {
-    //                             required: '不能为空',
-    //                         }
-    //                     }
-    //                 });
-
-
-    // });
-
-    //     });
+        //多选
+        let selest_nc
+        let default_no_mch = $('input[name="cid"]').val().split(',');
+        
+        $.get('index.php?act=refill_order&op=provider_data',function(data) {
+            data = JSON.parse(data)
+          
+            if (default_no_mch) {
+                for (let index = 0; index < default_no_mch.length; index++) {
+                    for (let j = 0; j < data.length; j++) {
+                        if (default_no_mch[index] == data[j].value) {
+                            data[j].selected = true
+                            
+                        }
+                    }
+                }
+            }
+            selest_nc = xmSelect.render({
+                    el: '#selest_nc',
+                    size: 'mini',
+                    style: {
+                        minHeight: '27px',
+                        lineHeight: '27px',
+                        marginLeft: '4px',
+                        width: '250px'
+                    },
+                    language: 'zn',
+                    data:data
+                })
+        })
     });
 </script>

+ 16 - 3
admin/templates/default/refill.order.index.php

@@ -27,12 +27,12 @@
     .layui-form-selected dl {
     display: flex!important;
     flex-wrap: wrap!important;
-}
+    }
     .layui-form-select dl {
       
         top: 29px !important;
         left: 4px!important;
-        min-width: 590%!important;
+        min-width: 883%!important;
         max-height: 280px!important;
         padding: 14px 0!important;
     }
@@ -63,9 +63,18 @@
     .xm-tips{
     color: #333!important;
     font-size: 12px;
-}
+    }
+    .layui-form-select dl dd.layui-this{
+        display: none;
+    }
+    .layui-form-select dl dd {
+    cursor: pointer;
+    width: 130px;
+    
 
     }
+
+
 </style>
 <?php defined('InShopNC') or exit('Access Invalid!'); ?>
 <div class="page">
@@ -500,7 +509,9 @@
         let default_no_mch = $('input[name="default_no_mch"]').val().split(',');
         $.get('index.php?act=refill_order&op=merchant_data',function(data) {
             data = JSON.parse(data)
+        
             if (default_no_mch) {
+                
                 for (let index = 0; index < default_no_mch.length; index++) {
                     for (let j = 0; j < data.length; j++) {
                         if (default_no_mch[index] == data[j].value) {
@@ -509,6 +520,7 @@
                     }
                 }
             }
+           
             selest_nc = xmSelect.render({
                 el: '#selest_nc',
                 size: 'mini',
@@ -534,6 +546,7 @@
                 selectStr += selectArr[i].value+','
             }
             selectStr = selectStr.substr(0, selectStr.length-1)
+            console.log(selectStr);
             $('input[name="no_mchid"]').val(selectStr);
             // console.log('selectArr', selectArr, selectStr);
             $('#formSearch').submit();

+ 198 - 0
admin/templates/default/refill.order.search.php

@@ -0,0 +1,198 @@
+<style>
+    th label {
+        display: inline-block;
+        width: 100px;
+    }
+</style>
+
+<?php defined('InShopNC') or exit('Access Invalid!'); ?>
+<div class="page">
+    <div class="fixed-bar">
+        <div class="item-title">
+            <h3>客服查单</h3>
+            <ul class="tab-base">
+                <li><a href="JavaScript:void(0);" class="current"><span>订单列表</span></a></li>
+            </ul>
+        </div>
+    </div>
+    <div class="fixed-empty"></div>
+    <form method="get" action="index.php" name="formSearch" id="formSearch">
+        <input type="hidden" name="act" value="order_search"/>
+        <input type="hidden" name="op" value="index"/>
+        <table class="tb-type1 noborder search">
+            <tr>
+                <th><label for="query_start_time">下单时间</label></th>
+                <td>
+                    <input class="txt date" type="text" value="<?php echo $_GET['query_start_time']; ?>"
+                           id="startTime" name="query_start_time" autocomplete="off" style="width:120px" />
+                    <label for="query_start_time">~</label>
+                    <input class="txt date" type="text" value="<?php echo $_GET['query_end_time']; ?>"
+                           id="endTime" name="query_end_time" autocomplete="off" style="width:120px" />
+                </td>
+                <th><label>充值卡号(多行查询)</label></th>
+                <td><textarea name="card_nos" id="card_nos" cols="30" rows="10"><?php echo $_GET['card_nos'];?></textarea></td>
+                <td>
+                    <a href="javascript:void(0);" id="ncsubmit" class="btn-search "
+                       title="<?php echo $lang['nc_query']; ?>">&nbsp;
+                    </a>
+                </td>
+            </tr>
+            <tr>
+                <td></td>
+                <td>
+                    <a href="#" class="btns" onclick="hCopyCardNo(event)">
+                        <span><i class="icon-edit"></i>拷贝充值卡号+渠道商</span>
+                    </a>
+                </td>
+            </tr>
+        </table>
+    </form>
+
+    <table class="table tb-type2 nobdb">
+        <thead>
+        <tr class="thead">
+            <th class="align-center">编号</th>
+            <th class="align-center">订单号</th>
+            <th class="align-center">机构编号</th>
+            <th class="align-center">机构名称</th>
+            <th class="align-center">充值卡号</th>
+            <th class="align-center">充值卡类型</th>
+            <th class="align-center">充值额度</th>
+            <th class="align-right">下单日期</th>
+            <th class="align-right">耗时</th>
+            <th class="align-center">订单状态</th>
+            <th class="align-center">通道质量</th>
+            <th class="align-center">失败原因</th>
+            <th class="align-center">商家单号</th>
+            <th class="align-center">扣款金额</th>
+            <th class="align-center">渠道单号</th>
+            <th class="align-center">渠道名称</th>
+        </tr>
+        </thead>
+        <tbody id="tbody">
+        <?php if (count($output['order_list']) > 0) { ?>
+            <?php
+            foreach ($output['order_list'] as $key => $order) { ?>
+                <tr class="hover trFlex">
+                    <td class="align-center"><?php echo $key + 1; ?></td>
+                    <td class="align-left"><?php echo $order['order_sn']; ?></td>
+                    <td class="align-center"><?php echo $order['mchid']; ?></td>
+                    <td class="align-center"><?php echo $order['mch_name']; ?></td>
+                    <td class="align-left"><?php echo $order['card_no']; ?></td>
+                    <td class="align-center"><?php echo $order['card_type_text']; ?></td>
+                    <td class="align-center"><?php echo $order['refill_amount']; ?></td>
+                    <td class="align-right"><?php echo date('Y-m-d H:i:s', $order['order_time']); ?></td>
+                    <td class="align-right">
+                        <?php if (empty($order['notify_time'])) {
+                            if ($order['diff_time'] >= 1800 && $order['diff_time'] <= 3600) {
+                                ?>
+                                <span style="color: #fd9d0e"><?php echo $order['diff_time_text'] ?></span>
+                            <?php } elseif ($order['diff_time'] > 3600) { ?>
+                                <span style="color: #f30707"><?php echo $order['diff_time_text'] ?></span>
+                            <?php } else {
+                                ?>
+                                <?php echo $order['diff_time_text'] ?>
+                            <?php } ?>
+                        <?php } else { ?>
+                            <?php echo $order['diff_time_text'] ?>
+                        <?php } ?>
+                    </td>
+                    <td class="align-center"><?php echo orderState($order); ?></td>
+                    <td class="align-left"><?php echo $order['quality_text']; ?></td>
+                    <td class="align-left"><?php echo $order['err_msg']; ?></td>
+                    <td class="align-left"><?php echo $order['mch_order']; ?></td>
+                    <td class="align-center"><?php echo $order['mch_amount']; ?></td>
+                    <td class="align-left" class="ch_trade_no"><?php echo $order['ch_trade_no']; ?></td>
+                    <td class="align-center"><?php echo $order['channel_name']; ?></td>
+                </tr>
+            <?php } ?>
+        <?php } else { ?>
+            <tr class="no_data">
+                <td colspan="18"><?php echo $lang['nc_no_record']; ?></td>
+            </tr>
+        <?php } ?>
+        </tbody>
+        <tfoot>
+        <tr class="tfoot">
+            <td colspan="18" id="dataFuncs">
+                <div class="pagination"> <?php echo $output['show_page']; ?> </div>
+            </td>
+        </tr>
+        </tfoot>
+    </table>
+    <!-- 预警提示 -->
+    <audio id="auto" src="<?php echo RESOURCE_SITE_URL; ?>/warning.mp3"></audio>
+</div>
+<script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/laydate/laydate.js"></script>
+<script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/js/jquery-ui/jquery.ui.js"></script>
+<script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/js/jquery-ui/i18n/zh-CN.js"
+        charset="utf-8"></script>
+<link rel="stylesheet" type="text/css"
+      href="<?php echo RESOURCE_SITE_URL; ?>/js/jquery-ui/themes/ui-lightness/jquery.ui.css"/>
+<script type="text/javascript">
+    $(function () {
+        $('#ncsubmit').click(function () {
+            $('#formSearch').submit();
+        });
+        $('#query_start_time').datepicker({dateFormat: 'yy-mm-dd'});
+        $('#query_end_time').datepicker({dateFormat: 'yy-mm-dd'});
+        // 日期选择器
+        laydate.render({
+            elem: '#startTime',
+            type: 'datetime'
+        });
+        laydate.render({
+            elem: '#endTime',
+            type: 'datetime'
+        });
+        let isWring = '<?php echo $output['count'][1];?>';
+        // console.log('isWring', Number(isWring));
+        let setTimer
+        let num
+        if (Number(isWring) > 0) {
+            window.clearTimeout(setTimer)
+            setTimer = setTimeout(function () {
+                $("#auto")[0].play();
+                // $("#auto").attr("src", '<?php echo RESOURCE_SITE_URL; ?>/warning.mp3');
+            }, 1000);
+            window.clearTimeout(num)
+            num = setTimeout(function () {
+                window.location.reload();
+            }, 60000);
+        }
+        // 表格hover时背景
+        $('.trFlex').each(function () {
+            $(this).hover(function () {
+                $(this)[0].style.backgroundColor = '#cbe9f3'
+            }, function () {
+                $(this)[0].style.backgroundColor = '#fff'
+            })
+        })
+        // 供方名称颜色
+        $('.textColor').each(function () {
+            let color = $(this).attr('data-color')
+            if (color == '1') {
+                $(this).css('color', 'green')
+            } else {
+                $(this).css('color', 'red')
+            }
+        })
+    });
+
+    function hCopyCardNo(e) {
+        let str = ''
+        $('#tbody tr').each(function () {
+            let card_no = $(this).find('td').eq(4).text()
+            let channel_name = $(this).find('td').eq(15).text()
+            str += card_no + '+' + channel_name + '\n'
+        })
+        let oInput = document.createElement("textarea");
+        oInput.style.border = "0 none";
+        oInput.style.color = "transparent";
+        oInput.value = str;
+        document.body.appendChild(oInput);
+        oInput.select(); // 选择对象
+        document.execCommand("Copy"); // 执行浏览器复制命令
+        oInput.parentNode.removeChild(oInput)
+    }
+</script> 

+ 11 - 2
admin/templates/default/refill.refund.add.php

@@ -89,8 +89,17 @@
             <tr class="noborder">
                 <td colspan="2" class="required"><label class="validation" for="card_type">卡类型:</label></td>
             </tr>
-            <tr class="noborder">
-                <td class="vatop rowform"><input type="text" value="" name="card_type" id="card_type" class="txt"></td>
+            <tr class="">
+                <td class="">
+                    <select name="card_type" id="card_type"  class="layui_in" lay-verify="" lay-search>
+                        <option value=""><?php echo $lang['nc_please_choose']; ?></option>
+                        <option value="<?php echo mtopcard\PetroChinaCard;?>">中石油</option>
+                        <option value="<?php echo mtopcard\SinopecCard;?>">中石化</option>
+                        <option value="<?php echo mtopcard\ChinaMobileCard;?>">中国移动</option>
+                        <option value="<?php echo mtopcard\ChinaUnicomCard;?>">中国联通</option>
+                        <option value="<?php echo mtopcard\ChinaTelecomCard;?>">中国电信</option>
+                    </select>
+                </td>
                 <td class="vatop tips"></td>
             </tr>
             <tr class="noborder">

+ 226 - 0
admin/templates/default/refill.refund.edit.php

@@ -0,0 +1,226 @@
+<?php defined('InShopNC') or exit('Access Invalid!'); ?>
+<style>
+   .layui-form-select .layui-input {
+    padding: 13px 5px;
+}
+.layui-form-select dl {
+    top: 29px !important;
+}
+.layui-form-select {
+    width: 85%;
+}
+.layui-select-title {
+    width: 100%;
+}
+.page .fixed-bar .item-title h3 {
+    margin-top: 18px !important;
+    margin-bottom: 10px !important;
+    font-weight: 700 !important;
+}
+.tab-base li span {
+    font-size: 12px !important;
+}
+</style>
+<div class="page">
+    <div class="fixed-bar">
+        <div class="item-title">
+            <h3>退款信息管理</h3>
+            <ul class="tab-base">
+                <li><a href="index.php?act=refill_refund&op=index"><span>退款信息管理</span></a></li>
+                <li><a href="JavaScript:void(0);" class="current"><span>编辑</span></a></li>
+            </ul>
+        </div>
+    </div>
+    <div class="fixed-empty"></div>
+    <form id="user_form" enctype="multipart/form-data" method="post" class="layui-form">
+        <input type="hidden" name="form_submit" value="ok"/>
+        <input type="hidden" name="id" value="<?php echo $_GET['id'];?>"/>
+        <table class="table tb-type2 nobdb">
+            <tbody>
+            <tr class="noborder">
+                <td colspan="2" class="required"><label class="validation" for="provider_id">通道选择:</label></td>
+            </tr>
+            <tr class="">
+                <td class="">
+                    <select name="provider_id" id="provider_id" lay-verify="" lay-search>
+                        <option value=""><?php echo $lang['nc_please_choose']; ?></option>
+                        <?php foreach($output['provider_list'] as $provider){?>
+                            <option value="<?php echo $provider['provider_id']?>" <?php if($output['refund_info']['provider_id'] == $provider['provider_id']){ echo 'selected';}?>><?php echo $provider['store_name']?></option>
+                        <?php }?>
+                    </select>
+                </td>
+                <td class="vatop tips"></td>
+            </tr>
+            <tr class="noborder">
+                <td colspan="2" class="required"><label class="validation" for="channel_amount">通道退款金额:</label></td>
+            </tr>
+            <tr class="noborder">
+                <td class="vatop rowform"><input type="text" value="<?php echo $output['refund_info']['channel_amount'];?>" name="channel_amount" id="channel_amount" class="txt"></td>
+                <td class="vatop tips"></td>
+            </tr>
+
+            <tr class="noborder">
+                <td colspan="2" class="required"><label class="validation" for="mchid">机构选择:</label></td>
+            </tr>
+            <tr class="">
+                <td class="">
+                    <select name="mchid" id="mchid" class="layui_in" lay-verify="" lay-search>
+                        <option value=""><?php echo $lang['nc_please_choose']; ?></option>
+                        <?php foreach($output['merchant_list'] as $merchant){?>
+                            <option value="<?php echo $merchant['mchid']?>" <?php if($output['refund_info']['mchid'] == $merchant['mchid']){ echo 'selected';}?>><?php echo $merchant['company_name']??$merchant['name'];?></option>
+                        <?php }?>
+                    </select>
+                </td>
+                <td class="vatop tips"></td>
+            </tr>
+            <tr class="noborder">
+                <td colspan="2" class="required"><label class="validation" for="mch_amount">机构退款金额:</label></td>
+            </tr>
+            <tr class="noborder">
+                <td class="vatop rowform"><input type="text" value="<?php echo $output['refund_info']['mch_amount'];?>" name="mch_amount" id="mch_amount" class="txt"></td>
+                <td class="vatop tips"></td>
+            </tr>
+            <tr class="noborder">
+                <td colspan="2" class="required"><label class="validation" for="card_no">退款卡号:</label></td>
+            </tr>
+            <tr class="noborder">
+                <td class="vatop rowform"><input type="text" value="<?php echo $output['refund_info']['card_no'];?>" name="card_no" id="card_no" class="txt"></td>
+                <td class="vatop tips"></td>
+            </tr>
+            <tr class="noborder">
+                <td colspan="2" class="required"><label class="validation" for="card_type">卡类型:</label></td>
+            </tr>
+            <tr class="">
+                <td class="">
+                    <select name="card_type" id="card_type"  class="layui_in" lay-verify="" lay-search>
+                        <option value=""><?php echo $lang['nc_please_choose'];?></option>
+                        <option value="<?php echo mtopcard\PetroChinaCard;?>" <?php if($output['refund_info']['card_type'] == mtopcard\PetroChinaCard){ echo 'selected';}?>>中石油</option>
+                        <option value="<?php echo mtopcard\SinopecCard;?>" <?php if($output['refund_info']['card_type'] == mtopcard\SinopecCard){ echo 'selected';}?>>中石化</option>
+                        <option value="<?php echo mtopcard\ChinaMobileCard;?>" <?php if($output['refund_info']['card_type'] == mtopcard\ChinaMobileCard){ echo 'selected';}?>>中国移动</option>
+                        <option value="<?php echo mtopcard\ChinaUnicomCard;?>" <?php if($output['refund_info']['card_type'] == mtopcard\ChinaUnicomCard){ echo 'selected';}?>>中国联通</option>
+                        <option value="<?php echo mtopcard\ChinaTelecomCard;?>" <?php if($output['refund_info']['card_type'] == mtopcard\ChinaTelecomCard){ echo 'selected';}?>>中国电信</option>
+                    </select>
+                </td>
+                <td class="vatop tips"></td>
+            </tr>
+            <tr class="noborder">
+                <td colspan="2" class="required"><label class="validation" for="refill_amount">面值:</label></td>
+            </tr>
+            <tr class="noborder">
+                <td class="vatop rowform"><input type="text" value="<?php echo $output['refund_info']['refill_amount'];?>" name="refill_amount" id="refill_amount" class="txt"></td>
+                <td class="vatop tips"></td>
+            </tr>
+            <tr class="noborder">
+                <td colspan="2" class="required"><label class="validation">退款日期:</label></td>
+            </tr>
+            <tr class="noborder">
+                <td class="vatop rowform">
+                    <input class="txt date" type="text" id="refund_time" value="<?php echo date("Y-m-d H:i:s",$output['refund_info']['refund_time']);?>" name="refund_time"  autocomplete="off" style="width:230px" />
+                <td class="vatop tips"></td>
+            </tr>
+            <tr>
+                <td colspan="2" class="required"><label>备注:</label></td>
+            </tr>
+            <tr class="noborder">
+                <td class="vatop rowform"><textarea name="bz" rows="6" class="tarea"><?php echo $output['refund_info']['bz'];?></textarea></td>
+            </tr>
+            </tbody>
+            <tfoot>
+            <tr class="tfoot">
+                <td colspan="15"><a href="JavaScript:void(0);" class="btn" id="submitBtn"><span><?php echo $lang['nc_submit']; ?></span></a></td>
+            </tr>
+            </tfoot>
+        </table>
+    </form>
+</div>
+<script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/laydate/laydate.js"></script>
+<script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/js/jquery-ui/jquery.ui.js"></script>
+<script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/js/jquery-ui/i18n/zh-CN.js"
+        charset="utf-8"></script>
+ <link rel="stylesheet" type="text/css"
+      href="<?php echo RESOURCE_SITE_URL; ?>/js/jquery-ui/themes/ui-lightness/jquery.ui.css"/>
+<script type="text/javascript" src="<?php echo RESOURCE_SITE_URL;?>/refill/layer.js"></script>
+<script type="text/javascript" src="<?php echo ADMIN_TEMPLATES_URL;?>/layui/layui.js"></script>
+<link rel="stylesheet" type="text/css" href="<?php echo ADMIN_TEMPLATES_URL; ?>/layui/css/layui.css"/>
+<script type="text/javascript">
+    $(function () {
+     
+        //按钮先执行验证再提交表单
+        $("#submitBtn").click(function () {
+            if ($("#user_form").valid()) {
+                $("#user_form").submit();
+            }
+        });
+        $('#user_form').validate({
+            errorPlacement: function (error, element) {
+                error.appendTo(element.parent().parent().prev().find('td:first'));
+            },
+            rules: {
+                mchid: {
+                    required: true,
+                },
+                provider_id: {
+                    required: true,
+                },
+                mch_amount: {
+                    required: true,
+                },
+                channel_amount: {
+                    required: true,
+                },
+                refund_time: {
+                    required: true,
+                },
+                card_no: {
+                    required: true,
+                },
+                card_type: {
+                    required: true,
+                },
+                refill_amount: {
+                    required: true,
+                },
+            },
+            messages: {
+                mchid: {
+                    required: '必须选择机构',
+                },
+                provider_id: {
+                    required: '必须选择通道',
+                },
+                mch_amount: {
+                    required: '不能为空',
+                },
+                channel_amount: {
+                    required: '不能为空',
+                },
+                refund_time: {
+                    required: '不能为空',
+                },
+                card_no: {
+                    required: '不能为空',
+                },
+                card_type: {
+                    required: '不能为空',
+                },
+                refill_amount: {
+                    required: '不能为空',
+                },
+            }
+        });
+  
+       // 日期选择器
+       laydate.render({
+            elem: '#refund_time',
+            type: 'datetime',
+            trigger: 'click'
+        });
+       function trim(str) {
+      if (str && typeof str === "text") {
+        return str.replace(/(^\s*)|(\s*)$/g,""); //去除前后空白符
+      }
+    }
+});
+
+ 
+</script>

+ 3 - 2
admin/templates/default/refill.refund.php

@@ -103,13 +103,14 @@
                         <td class="align-center"><?php echo $v['company_name'] ?? $v['name']; ?></td>
                         <td class="align-center"><?php echo $v['mch_amount']; ?></td>
                         <td class="align-center"><?php echo $v['card_no']; ?></td>
-                        <td class="align-center"><?php echo $v['card_type']; ?></td>
+                        <td class="align-center"><?php echo $v['card_type_text']; ?></td>
                         <td class="align-center"><?php echo $v['refill_amount']; ?></td>
                         <td class="align-center"><?php echo date('Y-m-d H:i:s', $v['refund_time']); ?></td>
                         <td class="align-center"><?php echo date('Y-m-d H:i:s', $v['add_time']); ?></td>
                         <td class="align-center"><?php echo $v['bz']; ?></td>
                         <td class="align-center w200">
-                            <a href="index.php?act=refill_refund&op=del&id=<?php echo $v['id'] ?>">删除</a>
+<!--                            <a href="index.php?act=refill_refund&op=del&id=--><?php //echo $v['id'] ?><!--">删除</a>-->
+                            <a href="index.php?act=refill_refund&op=edit&id=<?php echo $v['id'] ?>">编辑</a>
                         </td>
                     </tr>
                 <?php } ?>

+ 29 - 1
data/config/xyzadm/refill.ini.php

@@ -1202,6 +1202,32 @@ $yuanmai_phone = ['name' => 'yuanmai', 'store_id' => 71, 'qualitys' => '2',
     ],
     'official_sn' => true, 'refill_type' => 'api'];
 
+$langke_phone = ['name' => 'langke', 'store_id' => 72, 'qualitys' => '1',
+    'amount' => [
+        10 => [['goods_id' => 6700, 'price' => 9.75, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        20 => [['goods_id' => 6701, 'price' => 19.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        30 => [['goods_id' => 6702, 'price' => 29.25, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        50 => [['goods_id' => 6703, 'price' => 48.75, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        100 => [['goods_id' => 6704, 'price' => 97.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        200 => [['goods_id' => 6705, 'price' => 195, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        300 => [['goods_id' => 6706, 'price' => 292.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        500 => [['goods_id' => 6707, 'price' => 487.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']]
+    ],
+    'official_sn' => true, 'refill_type' => 'api'];
+
+$yunlingds_phone = ['name' => 'yunlingds', 'store_id' => 73, 'qualitys' => '1',
+    'amount' => [
+        10 => [['goods_id' => 6708, 'price' => 9.53, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        20 => [['goods_id' => 6709, 'price' => 19.06, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        30 => [['goods_id' => 6710, 'price' => 28.59, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        50 => [['goods_id' => 6711, 'price' => 47.65, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        100 => [['goods_id' => 6712, 'price' => 95.3, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        200 => [['goods_id' => 6713, 'price' => 190.6, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        300 => [['goods_id' => 6714, 'price' => 285.9, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        500 => [['goods_id' => 6715, 'price' => 476.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']]
+    ],
+    'official_sn' => true, 'refill_type' => 'api'];
+
 $phone_providers = [
 //    ['name' => 'beixt', 'cfg' => $beixt_phone],
 //    ['name' => 'bxtwt', 'cfg' => $bxtwt_phone],
@@ -1248,7 +1274,9 @@ $phone_providers = [
     ['name' => 'fengyeman24', 'cfg' => $fengyeman24_phone],
     ['name' => 'moxj_yd', 'cfg' => $moxj_yd_phone],
     ['name' => 'xingzy', 'cfg' => $xingzy_phone],
-    ['name' => 'yuanmai', 'cfg' => $yuanmai_phone]
+    ['name' => 'yuanmai', 'cfg' => $yuanmai_phone],
+    ['name' => 'langke', 'cfg' => $langke_phone],
+    ['name' => 'yunlingds', 'cfg' => $yunlingds_phone]
 ];
 $config['phone_providers'] = $phone_providers;
 

+ 2 - 2
test/TestRefill.php

@@ -38,8 +38,8 @@ class TestRefill extends TestCase
         } else {
             $this->mReqHost = 'https://www.xyzshops.cn';
 //            $this->mReqHost = 'http://121.89.196.45';
-            $this->mMchid = 10153;
-            $this->mKey = 'By1078cb5d044a5145ac6ea20210524';
+            $this->mMchid = 1092;
+            $this->mKey = '210fe406954220f56085997d6a4c5b80';
         }
     }