wugg 8 months ago
parent
commit
a53264defd
2 changed files with 10 additions and 9 deletions
  1. 2 2
      app/admin/controller/Payment.php
  2. 8 7
      app/admin/listener/ComonQrd.php

+ 2 - 2
app/admin/controller/Payment.php

@@ -2123,12 +2123,12 @@ class Payment extends Base
 			if(empty($pay))throw new Exception("对账详情未找到");
 			$invup =Db::name("pay_payment")->where($invinfo)->update(["status"=>5,"updatetime"=>date("Y-m-d H:i:s")]);
 			if($invup==false)throw new Exception("付款更新失败");
-
+            if($pay['apay_fee']<$invinfo['pay_fee'])throw new Exception('已付款金额不足');
 			$paydata=[
 				 "apay_fee"=>$pay['apay_fee']-$invinfo['pay_fee'],
                   "wpay_fee"=>$pay['wpay_fee']+$invinfo['pay_fee'],
                   "pay_status" => $pay['pay_fee']==0 &&($pay['apay_fee']-$invinfo['pay_fee'])==0?1:2,
-                   "updatetime" => date("Y-m-d H:i:s")
+                  "updatetime" => date("Y-m-d H:i:s")
 			];
 			$oayup =Db::name("pay")->where($pay)->update($paydata);
 			if($oayup==false)throw new Exception("对账更新失败");

+ 8 - 7
app/admin/listener/ComonQrd.php

@@ -109,6 +109,7 @@ class ComonQrd
     	$this->CheckComonOrder($payinfo);
     	$tag=[];
     	$qrdSave=[];
+    	$payfee=$payinfo['apay_fee'];
     	foreach ($qrdinfo as $item){
     		$tag_temp=[
     			"code"=>$item->sequenceNo,
@@ -127,15 +128,15 @@ class ComonQrd
 	            "pay_tag_fee"=>0,
 	            "pay_tag" => 1
 	            ];
-    		if($item->wpay_fee>$data['pay_fee']){
-    			$tag_temp['tag_fee'] = $data['pay_fee'];
-    			$qrd['pay_tag_fee'] = $data['pay_fee'];
-    			$qrd['wpay_fee'] = $item->wpay_fee-$data['pay_fee'];
-    			$qrd['apay_fee'] = $item->apay_fee+$data['pay_fee'];
+    		if($item->wpay_fee>$payfee){
+    			$tag_temp['tag_fee'] = $payfee;
+    			$qrd['pay_tag_fee'] = $payfee;
+    			$qrd['wpay_fee'] = $item->wpay_fee-$payfee;
+    			$qrd['apay_fee'] = $item->apay_fee+$payfee;
     			$qrd['pay_status'] = ($qrd['wpay_fee']==0 &&$item->pay_fee==0) ? 3:($qrd['apay_fee']==0?1:2);
-    			$data['pay_fee']=0;
+    			$payfee=0;
     		}else{
-    			$data['pay_fee']=$data['pay_fee']-$item->wpay_fee;
+    			$payfee=$payfee-$item->wpay_fee;
     			$tag_temp['tag_fee'] =$item->wpay_fee;
     			$qrd['pay_tag_fee'] = $item->wpay_fee;
     			$qrd['wpay_fee'] = 0;