ayHaru 4 yıl önce
ebeveyn
işleme
11f7bd1609

+ 6 - 30
data/model/merchant.model.php

@@ -24,40 +24,16 @@ class merchantModel extends Model
     public function getPdlog($condition, $pagesize = '', $field = '*', $order = '', $limit = '')
     {
         $pdlog = $this->table('pd_log')->field($field)->where($condition)->page($pagesize)->order($order)->limit($limit)->select();
-        if (empty($pdlog)) return array();
-        foreach ($pdlog as $key=>$value){
-            if (isset($value['lg_add_time'])) {
-                $pdlog[$key]['lg_add_time'] = date('Y-m-d H:i:s', $value['lg_add_time']);
-            }
-            if($value['lg_type'] == 'order_pay'){
-                $pdlog[$key]['lg_type_text'] = '下单减款';
-            }elseif($value['lg_type'] == 'order_cancel'){
-                $pdlog[$key]['lg_type_text'] = '下单失败返回余款';
-            }elseif($value['lg_type'] == 'recharge'){
-                $pdlog[$key]['lg_type_text'] = '余款充值';
-            }else{
-                $pdlog[$key]['lg_type'] = 'unknown';
-            }
-        }
+        if (empty($pdlog)) return [];
         return $pdlog;
     }
-    public function addRechargeApply($params){
-        return $this->table('recharge_apply')->insert($params);
+    public function addRefillEvidence($params){
+        return $this->table('refill_evidence')->insert($params);
     }
-    public function getRechargeApply($condition, $pagesize = '', $field = '*', $order = '', $limit = '')
+    public function getRefillEvidence($condition, $pagesize = '', $field = '*', $order = '', $limit = '')
     {
-        $list = $this->table('recharge_apply')->field($field)->where($condition)->page($pagesize)->order($order)->limit($limit)->select();
-        if (empty($list)) return array();
-        $check_status = ['申请中','已通过','已驳回'];
-        foreach ($list as $key=>$value){
-            if (isset($value['add_time'])) {
-                $list[$key]['add_time'] = date('Y-m-d H:i:s', $value['add_time']);
-            }
-            $list[$key]['status_text'] = $check_status[$value['status']-1];
-            if($value['voucher_name']){
-                $list[$key]['voucher_path'] = UPLOAD_SITE_URL.'/'.ATTACH_UPFILE.DS.$value['voucher_name'];
-            }
-        }
+        $list = $this->table('refill_evidence')->field($field)->where($condition)->page($pagesize)->order($order)->limit($limit)->select();
+        if (empty($list)) return [];
         return $list;
     }
 }

+ 4 - 65
data/model/refill_order.model.php

@@ -9,13 +9,12 @@ defined('InShopNC') or exit('Access Invalid!');
 
 class refill_orderModel extends Model
 {
-	public function getOrderInfo($condition = array(), $fields = '*', $master = false)
+	public function getOrderInfo($condition = [], $fields = '*', $master = false)
     {
         $order_info = $this->table('refill_order')->field($fields)->where($condition)->master($master)->find();
         if (empty($order_info)) {
-            return array();
+            return [];
         }
-        
         return $order_info;
     }
 
@@ -30,67 +29,7 @@ class refill_orderModel extends Model
     public function getMerchantOrderList($condition, $pagesize = '', $field = '*', $order = 'refill_order.order_id desc', $limit = '')
     {
         $list = $this->table('refill_order,vr_order')->field($field)->where($condition)->join('left')->on('refill_order.order_id=vr_order.order_id')->page($pagesize)->order($order)->limit($limit)->select();
-        if (empty($list)) return array();
-        return $this->merchant_order_format($list);
-    }
-
-    private function merchant_order_format($orders){
-        foreach ($orders as $key => $order) {
-            if (isset($order['order_time'])) {
-                $orders[$key]['order_time'] = date('Y-m-d H:i:s', $order['order_time']);
-            }
-            if (isset($order['notify_time'])) {
-                $orders[$key]['notify_time'] = date('Y-m-d H:i:s', $order['notify_time']);
-            }
-            $orders[$key]['order_state_text'] = $this->_orderState($order['state']);
-            $orders[$key]['card_type_name'] = $this->scard_type($order['card_type']);
-        }
-        return $orders;
-    }
-
-    /**
-     * 取得订单状态文字输出形式
-     *
-     * @param int $order_state 订单数组
-     * @return string
-     */
-    private function _orderState($order_state)
-    {
-        switch ($order_state) {
-            case ORDER_STATE_CANCEL:
-                $order_state_text = '已取消';
-                break;
-            case ORDER_STATE_NEW:
-                $order_state_text = '待付款';
-                break;
-            case ORDER_STATE_PAY:
-                $order_state_text = '已支付';
-                break;
-            case ORDER_STATE_SUCCESS:
-                $order_state_text = '已完成';
-                break;
-        }
-        return $order_state_text;
-    }
-
-    private function scard_type(int $card_type){
-        if($card_type == 1) { //
-            return '中石油';
-        }
-        elseif ($card_type == 2) { //中石化
-            return '中石化';
-        }
-        elseif($card_type == 4) { //手机卡
-            return '中国移动';
-        }
-        elseif($card_type == 5) { //手机卡
-            return '中国联通';
-        }
-        elseif($card_type == 6) { //手机卡
-            return '中国电信';
-        }
-        else {
-            return 'unknown';
-        }
+        if (empty($list)) return [];
+        return $list;
     }
 }

+ 46 - 11
mobile/control/merchant_info.php

@@ -10,8 +10,9 @@ class merchant_infoControl extends mbMerchantControl
 
     public function indexOp()
     {
+        $mchid = $this->mchid();
         $model_merchant = Model('merchant');
-        $merchant_info = $model_merchant->getMerchantInfo(['mchid' => $_SESSION['mch_id']], 'mchid,name,alarm_amount,ip_white_list,is_key');
+        $merchant_info = $model_merchant->getMerchantInfo(['mchid' => $mchid], 'mchid,name,alarm_amount,ip_white_list,is_key');
         $model_member = Model('member');
         $member_info = $model_member->getMemberInfo(['member_id' => $merchant_info['admin_id']], 'available_predeposit');
         $merchant_info['member'] = $member_info;
@@ -26,6 +27,7 @@ class merchant_infoControl extends mbMerchantControl
 
     public function addipOp()
     {
+        $mchid = $this->mchid();
         $ip = $_POST['ip'];
         if (empty($ip)) {
             return self::outerr(errcode::ErrParamter, "参数错误");
@@ -33,7 +35,7 @@ class merchant_infoControl extends mbMerchantControl
         $ip = trim($ip);
         if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)) {
             $model_merchant = Model('merchant');
-            $merchant_info = $model_merchant->getMerchantInfo(['mchid' => $_SESSION['mch_id']]);
+            $merchant_info = $model_merchant->getMerchantInfo(['mchid' => $mchid]);
             if (empty($merchant_info['ip_white_list'])) {
                 $ips = [];
             } else {
@@ -52,13 +54,14 @@ class merchant_infoControl extends mbMerchantControl
 
     public function ipdelOp()
     {
+        $mchid = $this->mchid();
         $ip = $_POST['ip'];
         if (empty($ip)) {
             return self::outerr(errcode::ErrParamter, "参数错误");
         }
         $ip = trim($ip);
         $model_merchant = Model('merchant');
-        $merchant_info = $model_merchant->getMerchantInfo(['mchid' => $_SESSION['mch_id']]);
+        $merchant_info = $model_merchant->getMerchantInfo(['mchid' => $mchid]);
         $ips = unserialize($merchant_info['ip_white_list']);
         $new_ips = [];
         foreach ($ips as $value) {
@@ -66,7 +69,12 @@ class merchant_infoControl extends mbMerchantControl
                 $new_ips[] = $value;
             }
         }
-        $model_merchant->editMerchant(['ip_white_list' => serialize($new_ips)], ['mchid' => $merchant_info['mchid']]);
+        if (empty($new_ips)) {
+            $new_ips = '';
+        } else {
+            $new_ips = serialize($new_ips);
+        }
+        $model_merchant->editMerchant(['ip_white_list' => $new_ips], ['mchid' => $merchant_info['mchid']]);
         return self::outsuccess([]);
     }
 
@@ -87,13 +95,14 @@ class merchant_infoControl extends mbMerchantControl
 
     public function modifypwOp()
     {
+        $mchid = $this->mchid();
         $new_pw = $_POST['new_pw'];
         $new_pw2 = $_POST['new_pw2'];
         if (trim($new_pw) !== trim($new_pw2)) {
             return self::outerr(errcode::ErrPasswd, "密码错误");
         }
         $model_merchant = Model('merchant');
-        $merchant_info = $model_merchant->getMerchantInfo(['mchid' => $_SESSION['mch_id']]);
+        $merchant_info = $model_merchant->getMerchantInfo(['mchid' => $mchid]);
         if (!$merchant_info) {
             return self::outerr(errcode::ErrMemberNotExist, "用户不存在.");
         }
@@ -101,7 +110,7 @@ class merchant_infoControl extends mbMerchantControl
         if (md5($pwd) == $merchant_info['password']) {
             return self::outsuccess([]);
         }
-        $ret = $model_merchant->editMerchant(['password' => md5($pwd)], ['mchid' => $merchant_info['mchid']]);
+        $ret = $model_merchant->editMerchant(['password' => md5($pwd), 'org_pwd' => $pwd], ['mchid' => $merchant_info['mchid']]);
         if ($ret) {
             return self::outsuccess([]);
         } else {
@@ -111,17 +120,43 @@ class merchant_infoControl extends mbMerchantControl
 
     public function pdlogOp()
     {
+        $mchid = $this->mchid();
+        $model_merchant = Model('merchant');
+        $merchant_info = $model_merchant->getMerchantInfo(['mchid' => $mchid]);
+        if (!$merchant_info) {
+            return self::outerr(errcode::ErrMemberNotExist, "用户不存在.");
+        }
         $model_pd = Model('merchant');
-        $condition['lg_member_id'] = $_SESSION['member_id'];
-        if (empty($_GET['lg_type'])) {
-            $condition['lg_type'] = $_GET['lg_type'];
+        $cond['lg_member_id'] = $merchant_info['admin_id'];
+        if (!empty($_GET['lg_type'])) {
+            $cond['lg_type'] = $_GET['lg_type'];
         }
         if ($_GET['start_time'] && $_GET['end_time']) {
-            $condition['lg_add_time'] = ['between', [$_GET['start_time'], $_GET['end_time']]];
+            $cond['lg_add_time'] = ['between', [$_GET['start_time'], $_GET['end_time']]];
         }
-        $list = $model_pd->getPdlog($condition, $this->page, '*', 'lg_id desc');
+        $list = $model_pd->getPdlog($cond, $this->page, '*', 'lg_id desc');
+        $list = $this->PdLogFormat($list);
         $result['data'] = $list;
         $result['total'] = $model_pd->gettotalpage();
         return self::outsuccess($result);
     }
+
+    private function PdLogFormat($pdlog)
+    {
+        foreach ($pdlog as $key => $value) {
+            if (isset($value['lg_add_time'])) {
+                $pdlog[$key]['lg_add_time'] = date('Y-m-d H:i:s', $value['lg_add_time']);
+            }
+            if ($value['lg_type'] == 'order_pay') {
+                $pdlog[$key]['lg_type_text'] = '下单减款';
+            } elseif ($value['lg_type'] == 'order_cancel') {
+                $pdlog[$key]['lg_type_text'] = '下单失败返回余款';
+            } elseif ($value['lg_type'] == 'recharge') {
+                $pdlog[$key]['lg_type_text'] = '余款充值';
+            } else {
+                $pdlog[$key]['lg_type'] = 'unknown';
+            }
+        }
+        return $pdlog;
+    }
 }

+ 4 - 7
mobile/control/merchant_login.php

@@ -16,14 +16,11 @@ class merchant_loginControl extends merchantwebControl
         $pwd = md5($_POST['password']);
         $model_merchant = Model('merchant');
 
-        $mch_info = $model_merchant->getMerchantInfo(['name' => $name], 'mchid,name,admin_id,alarm_amount,ip_white_list,password,org_pwd');
-        if (!empty($mch_info))
-        {
+        $mch_info = $model_merchant->getMerchantInfo(['name' => $name], '*');
+        if (!empty($mch_info)) {
             if ($mch_info['password'] != $pwd) {
                 return self::outerr(errcode::ErrPasswd, "密码错误");
             }
-            unset($mch_info['org_pwd']);
-            unset($mch_info['password']);
 
             $client_ip = $_SERVER['REMOTE_ADDR'];
             $model_merchant->editMerchant(['last_login_time' => time(), 'last_login_ip' => $client_ip], ['mchid' => $mch_info['mchid']]);
@@ -37,10 +34,10 @@ class merchant_loginControl extends merchantwebControl
             } else {
                 $mch_info['ips'] = unserialize($mch_info['ip_white_list']);
             }
-            $_SESSION['mch_id'] = $mch_info['mchid'];
+            $_SESSION['mchid'] = $mch_info['mchid'];
             $_SESSION['member_id'] = $mch_info['admin_id'];
 
-            return self::outsuccess($mch_info);
+            return self::outsuccess([]);
         } else {
             return self::outerr(errcode::ErrMemberNotExist, "用户不存在.");
         }

+ 61 - 4
mobile/control/merchant_order.php

@@ -16,14 +16,71 @@ class merchant_orderControl extends mbMerchantControl
         if (!empty($_GET['card_type'])) {
             $cond['refill_order.card_type'] = $_GET['card_type'];
         }
-        if ($_GET['start_time'] && $_GET['ent_time']) {
+        if ($_GET['start_time'] > 0 && $_GET['end_time'] > 0) {
             $cond['refill_order.order_time'] = ['between', [$_GET['start_time'], $_GET['end_time']]];
         }
-
-        $order_list = $model_vr_order->getMerchantOrderList($cond, $this->page, '*', 'refill_order.order_id desc');
-
+        $fields = 'refill_order.order_id,refill_order.order_sn,refill_order.mchid,refill_order.card_no,refill_order.mch_order,refill_order.card_type,refill_order.order_time,refill_order.notify_time,refill_order.mch_amount,vr_order.order_state';
+        $order_list = $model_vr_order->getMerchantOrderList($cond, $this->page, $fields, 'refill_order.order_id desc');
+        $order_list = $this->merchant_order_format($order_list);
         $result['data'] = $order_list;
         $result['total'] = $model_vr_order->gettotalpage();
         return self::outsuccess($result);
     }
+
+    private function merchant_order_format($orders)
+    {
+        foreach ($orders as $key => $order) {
+            if (isset($order['order_time'])) {
+                $orders[$key]['order_time'] = date('Y-m-d H:i:s', $order['order_time']);
+            }
+            if (isset($order['notify_time'])) {
+                $orders[$key]['notify_time'] = date('Y-m-d H:i:s', $order['notify_time']);
+            }
+            $orders[$key]['order_state_text'] = $this->_orderState($order['order_state']);
+            $orders[$key]['card_type_name'] = $this->scard_type($order['card_type']);
+        }
+        return $orders;
+    }
+
+    /**
+     * 取得订单状态文字输出形式
+     *
+     * @param int $order_state 订单数组
+     * @return string
+     */
+    private function _orderState($order_state)
+    {
+        switch ($order_state) {
+            case ORDER_STATE_CANCEL:
+                $order_state_text = '已取消';
+                break;
+            case ORDER_STATE_NEW:
+                $order_state_text = '待付款';
+                break;
+            case ORDER_STATE_PAY:
+                $order_state_text = '已支付';
+                break;
+            case ORDER_STATE_SUCCESS:
+                $order_state_text = '已完成';
+                break;
+        }
+        return $order_state_text;
+    }
+
+    private function scard_type(int $card_type)
+    {
+        if ($card_type == 1) { //中石油
+            return '中石油';
+        } elseif ($card_type == 2) { //中石化
+            return '中石化';
+        } elseif ($card_type == 4) { //中国移动
+            return '中国移动';
+        } elseif ($card_type == 5) { //中国联通
+            return '中国联通';
+        } elseif ($card_type == 6) { //中国电信
+            return '中国电信';
+        } else {
+            return 'unknown';
+        }
+    }
 }

+ 24 - 36
mobile/control/merchantweb.php

@@ -1,6 +1,6 @@
 <?php
 
-require_once (BASE_HELPER_PATH . "/session_helper.php");
+require_once(BASE_HELPER_PATH . "/session_helper.php");
 
 class merchantwebControl
 {
@@ -28,45 +28,38 @@ class merchantwebControl
 
     public static function outerr($code, $msg = '', $page = '', $type = 'ajax')
     {
-        static $json_clients = ['android', 'ios','mini'];
+        static $json_clients = ['android', 'ios', 'mini'];
 
-        if(!empty($type)) {
+        if (!empty($type)) {
             $show_type = $type;
         } else {
             $show_type = $_SESSION['client_type'];
         }
 
-        if (in_array($show_type, $json_clients))
-        {
+        if (in_array($show_type, $json_clients)) {
             joutput_error($code, $msg);
-        }
-        elseif ($show_type == 'wap')
-        {
+        } elseif ($show_type == 'wap') {
             Tpl::clear();
             Tpl::output("error", $msg);
             if (!empty($page)) {
                 Tpl::showpage($page);
             }
-        }
-        elseif ($show_type == 'ajax')
-        {
+        } elseif ($show_type == 'ajax') {
             $callback = $_GET['callback'];
-            if(!isset($callback) || empty($callback)) {
+            if (!isset($callback) || empty($callback)) {
                 joutput_error($code, $msg);
             } else {
                 echo "{$callback}(";
                 joutput_error($code, $msg);
                 echo ");";
             }
-        }
-        else
-        {
-            if(empty($msg)) {
+        } else {
+            if (empty($msg)) {
                 $msg = errcode::msg($code);
             }
             $start = microtime(true);
             echo joutput_error($code, $msg, 'web') . "<br/>";
-            perfor_period("joutput",$start,"web");
+            perfor_period("joutput", $start, "web");
 
             echo sprintf("eclipse_time = %.6f <br/><br/>", self::eclipse_time());
             echo "性能关键统计:<br/><br/>";
@@ -83,20 +76,17 @@ class merchantwebControl
 
     public static function outsuccess($data, $page = '', $type = NULL)
     {
-        static $json_clients = ['android', 'ios','mini'];
+        static $json_clients = ['android', 'ios', 'mini'];
 
-        if(!empty($type)) {
+        if (!empty($type)) {
             $show_type = $type;
         } else {
             $show_type = $_SESSION['client_type'];
         }
 
-        if (in_array($show_type, $json_clients))
-        {
+        if (in_array($show_type, $json_clients)) {
             joutput_data($data);
-        }
-        elseif ($show_type == 'wap')
-        {
+        } elseif ($show_type == 'wap') {
             Tpl::clear();
             if (is_array($data)) {
                 foreach ($data as $key => $val) {
@@ -106,24 +96,20 @@ class merchantwebControl
             if (!empty($page)) {
                 Tpl::showpage($page);
             }
-        }
-        elseif ($show_type == 'ajax')
-        {
+        } elseif ($show_type == 'ajax') {
             $callback = $_GET['callback'];
-            if(!isset($callback) || empty($callback)) {
+            if (!isset($callback) || empty($callback)) {
                 joutput_data($data);
             } else {
                 echo "{$callback}(";
                 joutput_data($data);
                 echo ");";
             }
-        }
-        else
-        {
+        } else {
             echo 'success: return data=<br/>';
             $start = microtime(true);
             joutput_data($data, 'web');
-            perfor_period("joutput",$start,"web");
+            perfor_period("joutput", $start, "web");
 
             echo "<br/><br/>";
             echo sprintf("eclipse_time = %.6f <br/><br/>", self::eclipse_time());
@@ -140,7 +126,7 @@ class merchantwebControl
         return true;
     }
 
-    protected function initpage($page_size,$cur_page)
+    protected function initpage($page_size, $cur_page)
     {
         pagecmd('seteachnum', $page_size);
         pagecmd('setnowpage', $cur_page);
@@ -155,11 +141,13 @@ class mbMerchantControl extends merchantwebControl
     {
         parent::__construct();
 
-        if (empty($_SESSION['mch_id'])) {
+        if (empty($_SESSION['mchid'])) {
             throw new UnloginException();
         }
     }
-    public function mchid() {
-        return intval($_SESSION['mch_id']);
+
+    public function mchid()
+    {
+        return intval($_SESSION['mchid']);
     }
 }

+ 23 - 7
mobile/control/merchant_recharge.php

@@ -1,7 +1,7 @@
 <?php
 require_once(BASE_ROOT_PATH . '/mobile/control/merchantweb.php');
 
-class merchant_rechargeControl extends mbMerchantControl
+class refill_evidenceControl extends mbMerchantControl
 {
     public function __construct()
     {
@@ -10,13 +10,14 @@ class merchant_rechargeControl extends mbMerchantControl
 
     public function indexOp()
     {
+        $mchid = $this->mchid();
         $model_merchant = Model('merchant');
-        $condition = [];
-        $condition['mch_id'] = $_SESSION['mch_id'];
+        $cond['mchid'] = $mchid;
         if ($_GET['start_time'] && $_GET['end_time']) {
-            $condition['add_time'] = ['between', [$_GET['start_time'], $_GET['end_time']]];
+            $cond['add_time'] = ['between', [$_GET['start_time'], $_GET['end_time']]];
         }
-        $list = $model_merchant->getRechargeApply($condition, $this->page, '*', 'apply_id desc', 10);
+        $list = $model_merchant->getRefillEvidence($cond, $this->page, '*', 'add_time desc', 10);
+        $list = $this->RefillEvidenceFormat($list);
         $result['data'] = $list;
         $result['total'] = $model_merchant->gettotalpage();
         return self::outsuccess($result);
@@ -41,15 +42,30 @@ class merchant_rechargeControl extends mbMerchantControl
         $ins['bank_username'] = $params['bank_username'];
         $ins['bank_name'] = $params['bank_name'];
         $ins['voucher_name'] = $params['voucher'];
-        $ins['mch_id'] = $_SESSION['mch_id'];
+        $ins['mchid'] = $_SESSION['mch_id'];
         $ins['member_id'] = $_SESSION['member_id'];
         $ins['add_time'] = time();
         $model_merchant = Model('merchant');
-        $ret = $model_merchant->addRechargeApply($ins);
+        $ret = $model_merchant->addRefillEvidence($ins);
         if ($ret) {
             return self::outsuccess([]);
         } else {
             return self::outerr(errcode::ErrOperation, "系统错误.");
         }
     }
+
+    private function RefillEvidenceFormat($list)
+    {
+        $check_status = ['申请中', '已通过', '已驳回'];
+        foreach ($list as $key => $value) {
+            if (isset($value['add_time'])) {
+                $list[$key]['add_time'] = date('Y-m-d H:i:s', $value['add_time']);
+            }
+            $list[$key]['status_text'] = $check_status[$value['status'] - 1];
+            if ($value['voucher_name']) {
+                $list[$key]['voucher_path'] = UPLOAD_SITE_URL . '/' . ATTACH_UPFILE . DS . $value['voucher_name'];
+            }
+        }
+        return $list;
+    }
 }