浏览代码

异常处理

彭俊 6 年之前
父节点
当前提交
c7d29bb71d

+ 2 - 6
app/Http/Controllers/Admin/SportsbkController.php

@@ -284,19 +284,15 @@ class SportsbkController extends Controller {
 
 		//获取赛事结算进程下的注单
 		$simplex = commonFunction::getOrderData($data = [],$simplex,$type,$process);
-		//$str = commonFunction::getOrderData($data = [],$str,$type,$process);
+		$str = commonFunction::getOrderData($data = [],$str,$type,$process);
 
 		//获取注单id组成一维数组
 		$simplex_ids = array_column($simplex['settle'],'order_id');
-		$str_ids = array();
-		foreach($str as $key){
-			$str_ids[]= $key['order_id'];
-		}
+		$str_ids = array_column($str['settle'],'order_id');
 
 		//去重
 		$simplex_ids = array_unique($simplex_ids);
 		$str_ids = array_unique($str_ids);
-//		print_r($simplex_ids);exit;
 
 		//判断赛事下注单输赢
 		$datas = array('noticeid' => $noticeid , 'token' => $token);

+ 2 - 5
app/Http/Controllers/Admin/SportsbqController.php

@@ -218,14 +218,11 @@ class SportsbqController extends Controller {
 
 		//获取赛事结算进程下的注单
 		$simplex = commonFunction::getOrderData($data = [],$simplex,$type,$process);
-		//$str = commonFunction::getOrderData($data = [],$str,$type,$process);
+		$str = commonFunction::getOrderData($data = [],$str,$type,$process);
 
 		//获取注单id组成一维数组
 		$simplex_ids = array_column($simplex['settle'],'order_id');
-		$str_ids = array();
-		foreach($str as $key){
-			$str_ids[]= $key['order_id'];
-		}
+		$str_ids = array_column($str['settle'],'order_id');
 
 		//去重
 		$simplex_ids = array_unique($simplex_ids);

+ 3 - 6
app/Http/Controllers/Admin/SportsfootController.php

@@ -63,18 +63,15 @@ class SportsfootController extends Controller {
 
 		//获取赛事结算进程下的注单
 		$simplex = commonFunction::getOrderData($data = [],$simplex,$type,$process);
-		//$str = commonFunction::getOrderData($data = [],$str,$type,$process);
+		$str = commonFunction::getOrderData($data = [],$str,$type,$process);
 
 		//获取注单id组成一维数组
 		$simplex_ids = array_column($simplex['settle'],'order_id');
-		$str_ids = array();
-		foreach($str as $key){
-			$str_ids[]= $key['order_id'];
-		}
+		$str_ids = array_column($str['settle'],'order_id');
+
 		//去重
 		$simplex_ids = array_unique($simplex_ids);
 		$str_ids = array_unique($str_ids);
-//		print_r($simplex_ids);exit;
 
 		//判断赛事下注单输赢
 		$datas = array('noticeid' => $noticeid , 'token' => $token);

+ 2 - 5
app/Http/Controllers/Admin/SportswqController.php

@@ -199,14 +199,11 @@ class SportswqController extends Controller {
 
 		//获取赛事结算进程下的注单
 		$simplex = commonFunction::getOrderData($data = [],$simplex,$type,$process);
-		//$str = commonFunction::getOrderData($data = [],$str,$type,$process);
+		$str = commonFunction::getOrderData($data = [],$str,$type,$process);
 
 		//获取注单id组成一维数组
 		$simplex_ids = array_column($simplex['settle'],'order_id');
-		$str_ids = array();
-		foreach($str as $key){
-			$str_ids[]= $key['order_id'];
-		}
+		$str_ids = array_column($str['settle'],'order_id');
 
 		//去重
 		$simplex_ids = array_unique($simplex_ids);

+ 1 - 1
app/Http/Model/StZqResult.php

@@ -376,7 +376,7 @@ class StZqResult extends Model
         
         //上半场
         $sql_h = "select a.match_id,a.home_team,a.guest_team,a.home_score,a.guest_score,a.corner_result,a.penalty_result,a.match_time as a_time,a.match_process,a.all_goal,a.first_score,a.last_score,a.match_score,a.match_winer from st_zq_result_record a,
-        (select match_id,max(id) id from st_zq_result_record where match_process = '半场' and match_id IN ($match_ids_str) group by match_id)b
+        (select match_id,max(id) id from st_zq_result_record where match_process = '半场' and match_id IN ($match_ids_str) group by match_id)b
         where a.match_id = b.match_id and a.id = b.id ";
 
         //全场

+ 114 - 8
app/Lib/Biz/Sport/Common.php

@@ -1459,6 +1459,10 @@ class Common
             $matchOdds_hch = [];
             //主队上半场角球(待结算)
             $matchOdds_halfch = [];
+            //上半场角球(作废)
+            $matchOdds_hc = [];
+            //上半场角球(待结算)
+            $matchOdds_halfc = [];
             //客队上半场角球(作废)
             $matchOdds_hcg = [];
             //客队上半场角球(待结算)
@@ -1467,6 +1471,10 @@ class Common
             $matchOdds_fch = [];
             //主队全场角球(待结算)
             $matchOdds_fallch = [];
+            //全场角球(作废)
+            $matchOdds_fc = [];
+            //全场角球(待结算)
+            $matchOdds_fallc = [];
             //客队全场角球(作废)
             $matchOdds_fcg = [];
             //客队全场角球(待结算)
@@ -1479,6 +1487,10 @@ class Common
             $matchOdds_hpg = [];
             //客队上半场罚牌(待结算)
             $matchOdds_halfpg = [];
+            //上半场罚牌(作废)
+            $matchOdds_hp = [];
+            //上半场罚牌(待结算)
+            $matchOdds_halfp = [];
             //主队全场罚牌(作废)
             $matchOdds_fph = [];
             //主队全场罚牌(待结算)
@@ -1487,6 +1499,10 @@ class Common
             $matchOdds_fpg = [];
             //客队全场罚牌(待结算)
             $matchOdds_fallpg = [];
+            //全场罚牌(作废)
+            $matchOdds_fp = [];
+            //全场罚牌(待结算)
+            $matchOdds_fallp = [];
             //上半场(作废)
             $matchOdds_h = [];
             //上半场(待结算)
@@ -1512,6 +1528,14 @@ class Common
                 }else{
                     $matchOdds_halfcg[] = self::getOrderJC('角球|上半场|客队',$v);
                 }
+                //上半场角球条件
+                if($data != [] and $data['half_corner']['home'] == -1 and $data['half_corner']['guest'] == -1){
+                    if($v->status == 1){
+                        $matchOdds_hc[] = self::getOrderJC('角球|上半场',$v);
+                    }
+                }else{
+                    $matchOdds_halfc[] = self::getOrderJC('角球|上半场',$v);
+                }
                 //主队全场角球条件
                 if($data != [] and $data['all_corner']['home'] == -1){
                     if($v->status == 1){
@@ -1528,6 +1552,14 @@ class Common
                 }else{
                     $matchOdds_fallcg[] = self::getOrderJC('角球|全场|客队',$v);
                 }
+                //全场角球条件
+                if($data != [] and $data['all_corner']['home'] == -1 and $data['all_corner']['guest'] == -1){
+                    if($v->status == 1){
+                        $matchOdds_fc[] = self::getOrderJC('角球|全场',$v);
+                    }
+                }else{
+                    $matchOdds_fallc[] = self::getOrderJC('角球|全场',$v);
+                }
                 //主队上半场罚牌条件
                 if($data != [] and $data['half_penalty']['home'] == -1){
                     if($v->status == 1){
@@ -1544,6 +1576,14 @@ class Common
                 }else{
                     $matchOdds_halfpg[] = self::getOrderJC('罚牌数|上半场|客队',$v);
                 }
+                //上半场罚牌条件
+                if($data != [] and $data['half_penalty']['home'] == -1 and $data['half_penalty']['guest'] == -1){
+                    if($v->status == 1){
+                        $matchOdds_hp[] = self::getOrderJC('罚牌数|上半场',$v);
+                    }
+                }else{
+                    $matchOdds_halfp[] = self::getOrderJC('罚牌数|上半场',$v);
+                }
                 //主队全场罚牌条件
                 if($data != [] and $data['all_penalty']['home'] == -1){
                     if($v->status == 1){
@@ -1560,6 +1600,14 @@ class Common
                 }else{
                     $matchOdds_fallpg[] = self::getOrderJC('罚牌数|全场|客队',$v);
                 }
+                //全场罚牌条件
+                if($data != [] and $data['all_penalty']['home'] == -1 and $data['all_penalty']['guest'] == -1){
+                    if($v->status == 1){
+                        $matchOdds_fp[] = self::getOrderJC('罚牌数|全场',$v);
+                    }
+                }else{
+                    $matchOdds_fallp[] = self::getOrderJC('罚牌数|全场',$v);
+                }
 
                 //上半场条件
                 if($data != [] and $data['half']['home'] == -1 and $data['half']['guest'] == -1){
@@ -1585,43 +1633,101 @@ class Common
             //合并待处理 注单
             $orderData['invalid'] = array();
             $orderData['settle'] = array();
-            if(in_array('half_corner_home',$process) || in_array('half_corner',$process)){
+            if(in_array('half_corner_home',$process)){
                 $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_hch);
                 $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_halfch);
             }
-            if(in_array('half_corner_guest',$process) || in_array('half_corner',$process)){
+            if(in_array('half_corner_guest',$process)){
                 $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_hcg);
                 $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_halfcg);
             }
-            if(in_array('all_corner_home',$process) || in_array('all_corner',$process)){
+            if(in_array('half_corner',$process)){
+                $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_hc);
+                $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_halfc);
+            }
+            if(in_array('all_corner_home',$process)){
                 $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_fch);
                 $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_fallch);
             }
-            if(in_array('all_corner_guest',$process) || in_array('all_corner',$process)){
+            if(in_array('all_corner_guest',$process)){
                 $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_fcg);
                 $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_fallcg);
             }
-            if(in_array('half_penalty_home',$process) || in_array('half_penalty',$process)){
+            if(in_array('all_corner',$process)){
+                $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_fc);
+                $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_fallc);
+            }
+            if(in_array('half_penalty_home',$process)){
                 $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_hph);
                 $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_halfph);
             }
-            if(in_array('half_penalty_guest',$process) || in_array('half_penalty',$process)){
+            if(in_array('half_penalty_guest',$process)){
                 $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_hpg);
                 $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_halfpg);
             }
-            if(in_array('all_penalty_home',$process) || in_array('all_penalty',$process)){
+            if(in_array('half_penalty',$process)){
+                $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_hp);
+                $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_halfp);
+            }
+            if(in_array('all_penalty_home',$process)){
                 $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_fph);
                 $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_fallph);
             }
-            if(in_array('all_penalty_guest',$process) || in_array('all_penalty',$process)){
+            if(in_array('all_penalty_guest',$process)){
                 $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_fpg);
                 $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_fallpg);
             }
+            if(in_array('all_penalty',$process)){
+                $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_fp);
+                $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_fallp);
+            }
             if(in_array('half',$process)){
+                //去除上半场角球注单
+                $matchOdds_hh = [];
+                foreach($matchOdds_h as $k){
+                    foreach($matchOdds_hc as $kk){
+                        if($k['order_id'] != $kk['order_id']){
+                            $matchOdds_hh[] = $k;
+                        }
+                    }
+                }
+                $matchOdds_h = $matchOdds_hh;
+
+                $matchOdds_halfh = [];
+                foreach($matchOdds_half as $k){
+                    foreach($matchOdds_halfc as $kk){
+                        if($k['order_id'] != $kk['order_id']){
+                            $matchOdds_halfh[] = $k;
+                        }
+                    }
+                }
+                $matchOdds_half = $matchOdds_halfh;
+
                 $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_h);
                 $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_half);
             }
             if(in_array('all',$process)){
+                //去除全场角球注单
+                $matchOdds_ff = [];
+                foreach($matchOdds_f as $k){
+                    foreach($matchOdds_fc as $kk){
+                        if($k['order_id'] != $kk['order_id']){
+                            $matchOdds_ff[] = $k;
+                        }
+                    }
+                }
+                $matchOdds_f = $matchOdds_ff;
+
+                $matchOdds_fallf = [];
+                foreach($matchOdds_fall as $k){
+                    foreach($matchOdds_fallc as $kk){
+                        if($k['order_id'] != $kk['order_id']){
+                            $matchOdds_fallf[] = $k;
+                        }
+                    }
+                }
+                $matchOdds_fall = $matchOdds_fallf;
+
                 $orderData['invalid'] = array_merge($orderData['invalid'],$matchOdds_f);
                 $orderData['settle'] = array_merge($orderData['settle'],$matchOdds_fall);
             }

+ 14 - 0
app/Lib/Settlement/SwInterface.php

@@ -85,6 +85,20 @@ class SwInterface
         return $ret;
     }
 
+    //普通 计算某个订单输赢   $bet_type 1单式  2串式
+    public function WinfailMulNomal($order_ids, $bet_type)
+    {
+        $url = self::$urlBase . '/WinfailMulNomal';
+        $data = [
+            'token' => self::$token,
+            'order_ids' => $order_ids,
+            'bet_type' => $bet_type,
+        ];
+        $ret = json_decode($this->request_post($url, $data), true);
+        return $ret;
+    }
+
+
     //结算处理接口  注意只能同一赛事的订单(区分单式串式) $order_ids为空表示单式全部或串式全部  $change_statuc全部时是否更新状态 $is_manurl是否手动结果(单条单式才动结算时为1)
     public function Setelement($game_code, $match_id, $bettype, $order_ids = '', $change_statuc = 0, $is_manurl = 0)
     {

+ 1 - 1
app/Models/MoneyBuyMatch.php

@@ -48,7 +48,7 @@ class MoneyBuyMatch extends Model
         $where[] = array('money_buy_match.bet_type', '=', 2);
         $where[] = array('money_buy_str.status', '=', 1);
 
-        $select = ['money_buy_str.order_id'];
+        $select = ['money_buy_str.order_id','money_buy_str.account_identity','money_buy_match.match_id','st_odds_code.odds_name'];
         $data = $this->join('money_buy_str', 'money_buy_match.order_id', '=', 'money_buy_str.order_id')->join('st_odds_code', 'money_buy_match.odds_code', '=', 'st_odds_code.odds_code')->select($select)->where($where)->distinct('money_buy_match.order_id')->get()->toArray();
 
         return $data;