rabin 1 سال پیش
والد
کامیت
aab65c3200
4فایلهای تغییر یافته به همراه13 افزوده شده و 9 حذف شده
  1. 1 1
      database/yspay_merchant.php
  2. 8 5
      lib/Yspay.php
  3. 3 3
      yspay/Cash.php
  4. 1 0
      yspay/Merchant.php

+ 1 - 1
database/yspay_merchant.php

@@ -50,7 +50,7 @@ return array
     'lang' => '银联商户列表',
     # 后台菜单排序
     'order' => -100,
-    //'check' => 'mid',
+    'check' => 'account_id,project_id,mid',
     'menu' => false,
     # 数据结构
     'struct' => array

+ 8 - 5
lib/Yspay.php

@@ -189,22 +189,25 @@ class Yspay extends Core
 				if (isset($v['fenzhang']) && $v['fenzhang'] > 0) {
 					$fenzhang = $v['fenzhang'];
 				}
-				Dever::load('pay/yspay/cash')->add($subOrders['mid'], $subOrders['totalAmount'], $subOrders['merOrderId'], $v['order_id'], $fenzhang);
+				if (isset($v['merchant_id']) && $v['merchant_id']) {
+					Dever::load('pay/yspay/cash')->add($v['merchant_id'], $subOrders['mid'], $subOrders['totalAmount'], $subOrders['merOrderId'], $v['order_id'], $fenzhang);
+				}
+				
 			}
 			if ($request['subOrders']) {
 				$request['divisionFlag'] = true;
 				if ($request['platformAmount'] > 0) {
-					$mid = Dever::load('pay/yspay/cash')->getMid($this->config['id']);
-					if ($mid) {
+					$merchant = Dever::load('pay/yspay/cash')->getMid($this->config['id']);
+					if ($merchant) {
 						$subOrders = array
 						(
 							'totalAmount' => $request['platformAmount'],
-							'mid' => $mid,
+							'mid' => $merchant['mid'],
 							'merOrderId' => $request['merOrderId'] . '_O',
 						);
 						$request['subOrders'][] = $subOrders;
 						$request['platformAmount'] = 0;
-						Dever::load('pay/yspay/cash')->add($subOrders['mid'], $subOrders['totalAmount'], $subOrders['merOrderId'], $v['order_id']);
+						Dever::load('pay/yspay/cash')->add($merchant['id'], $subOrders['totalAmount'], $subOrders['merOrderId'], $v['order_id']);
 					}
 				}
 			}

+ 3 - 3
yspay/Cash.php

@@ -4,9 +4,9 @@ use Dever;
 class Cash
 {
 	# 入账:待确认
-    public function add($mid, $amount, $order_num, $source_order_num, $fenzhang = 0)
+    public function add($merchant_id, $amount, $order_num, $source_order_num, $fenzhang = 0)
     {
-    	$merchant = Dever::db('pay/yspay_merchant')->one(array('mid' => $mid));
+    	$merchant = Dever::db('pay/yspay_merchant')->one($merchant_id);
     	if ($merchant) {
     		$data = array();
     		$data['account_id'] = $merchant['account_id'];
@@ -218,7 +218,7 @@ class Cash
     	if ($merchant) {
     		$key = array_rand($merchant);
     		if (isset($merchant[$key])) {
-    			return $merchant[$key]['mid'];
+    			return $merchant[$key];
     		}
     	}
     	return false;

+ 1 - 0
yspay/Merchant.php

@@ -79,6 +79,7 @@ class Merchant
             }
             if ($merchant && $merchant['mid']) {
                 $result = array(
+                    'merchant_id' => $merchant['id'],
                     'mid' => $merchant['mid'],
                     'order_id' => $order_num,
                     'amount' => $cash,