|
|
@@ -1380,21 +1380,23 @@ class Common
|
|
|
//获取赛事下所有单式注单
|
|
|
$select = ['money_buy_simplex.order_id', 'money_buy_simplex.match_id', 'money_buy_simplex.account_identity', 'money_buy_simplex.account_name','money_buy_simplex.money', 'money_buy_simplex.gain_money','money_buy_match.odds_code','st_odds_code.odds_name'];
|
|
|
//obj
|
|
|
- $match_order_sim_obj = $moneyBuyMatch->allsimplexorder($match_id,$game_code,$select);
|
|
|
+ $match_order_sim_obj = $moneyBuyMatch->allsimplexorder($match_id,$game_code,$select);
|
|
|
|
|
|
//获取赛事下所有串式注单
|
|
|
$select = ['money_buy_str.order_id', 'money_buy_match.match_id', 'money_buy_str.account_identity', 'money_buy_str.account_name','money_buy_str.money', 'money_buy_str.gain_money','st_odds_code.odds_name','money_buy_match.odds_code'];
|
|
|
//obj
|
|
|
$match_order_str_obj = $moneyBuyMatch->allstrorder($match_id,$game_code,$select);
|
|
|
|
|
|
- //如果赛事下有 单式 注单
|
|
|
- if(!empty($match_order_sim_obj)){
|
|
|
+ //如果赛事下有 单式 注单
|
|
|
+ $oddsData_sim = [];
|
|
|
+ if(count($match_order_sim_obj) > 0 ){
|
|
|
//获取单式注单中 待处理注单
|
|
|
$oddsData_sim = self::getOrderData($data,$match_order_sim_obj,$game_code);
|
|
|
}
|
|
|
|
|
|
- //如果赛事下有 串式 注单
|
|
|
- if(!empty($match_order_str_obj)){
|
|
|
+ //如果赛事下有 串式 注单
|
|
|
+ $oddsData_str = [];
|
|
|
+ if(count($match_order_str_obj) > 0){
|
|
|
//获取串式注单中 待处理注单
|
|
|
$oddsData_str = self::getOrderData($data,$match_order_str_obj,$game_code);
|
|
|
}
|
|
|
@@ -1404,31 +1406,37 @@ class Common
|
|
|
//合并上半场/全场 待处理 单式+串式订单
|
|
|
$oddsData = array_merge($oddsData_sim,$oddsData_str);
|
|
|
//去重
|
|
|
- $oddsData = self::uniquArrV2($oddsData,'order_id');
|
|
|
-
|
|
|
- $url = 'http://stadmin.bocai108.com:9094/UnsetOneOrder';
|
|
|
- $data_up = [
|
|
|
- 'token'=>session('adminInfo.token'),
|
|
|
- 'game_code'=>$game_code,
|
|
|
- 'match_id'=>$match_id,
|
|
|
- ];
|
|
|
-
|
|
|
- //返回请求状态码
|
|
|
- $set_status = [];
|
|
|
- foreach($oddsData as $k=>$v){
|
|
|
- $data_up['order_id'] = $v['order_id'];
|
|
|
- $ret_json = self::https_request($url,$data_up);
|
|
|
- $ret_arr = json_decode($ret_json,true);
|
|
|
- $set_status[] = $ret_arr['status'];
|
|
|
- }
|
|
|
- if(in_array(0,$set_status)){
|
|
|
- return responseToJson(-20003);
|
|
|
- }
|
|
|
+ $oddsData = self::uniquArrV2($oddsData,'order_id');
|
|
|
+
|
|
|
+ if(count($oddsData) > 0){
|
|
|
+ $url = 'http://stadmin.bocai108.com:9094/UnsetOneOrder';
|
|
|
+ $data_up = [
|
|
|
+ 'token'=>session('adminInfo.token'),
|
|
|
+ 'game_code'=>$game_code,
|
|
|
+ 'match_id'=>$match_id,
|
|
|
+ ];
|
|
|
+
|
|
|
+ //返回请求状态码
|
|
|
+ $set_status = [];
|
|
|
+ foreach($oddsData as $k=>$v){
|
|
|
+ $data_up['order_id'] = $v['order_id'];
|
|
|
+ $ret_json = self::https_request($url,$data_up);
|
|
|
+ $ret_arr = json_decode($ret_json,true);
|
|
|
+ $set_status[] = $ret_arr['status'];
|
|
|
+ }
|
|
|
+ //如果返回结果中有 0,则返回失败
|
|
|
+ if(in_array(0,$set_status)){
|
|
|
+ return responseToJson(-20003);
|
|
|
+ }
|
|
|
+ }
|
|
|
}else{
|
|
|
- //未结算赛事 处理 下单式注单作废,串关注单下此赛事按平局处理
|
|
|
- $oddsData_str = $oddsData_str->toArray();
|
|
|
+ //未结算赛事 处理 下单式注单作废,串关注单下此赛事按平局处理
|
|
|
+ if(count($oddsData_str) > 0){
|
|
|
+ $oddsData_str = $oddsData_str->toArray();
|
|
|
+ }
|
|
|
+ $type = 1;
|
|
|
$upapp = new \App\Models\SportsNoteList();
|
|
|
- $upapp->delorder($match_id,$game_code,$match_order_sim_obj,$oddsData_str);
|
|
|
+ $upapp->delorder($match_id,$game_code,$match_order_sim_obj,$oddsData_str,$type);
|
|
|
}
|
|
|
//=== end ===
|
|
|
}
|
|
|
@@ -1436,34 +1444,109 @@ class Common
|
|
|
* 获取赛事下 符合条件 待处理注单
|
|
|
*/
|
|
|
public static function getOrderData($data,$match_order,$game_code){
|
|
|
- //足球 获取 上半场/全场
|
|
|
+ //===足球===
|
|
|
if($game_code == 'zq'){
|
|
|
- // 获取上半场作废 需处理 单式注单
|
|
|
- $matchOdds_h = [];
|
|
|
- if($data['u_home_score'] == -1 and $data['u_guest_score'] == -1){
|
|
|
- foreach($match_order as $k=>$v){
|
|
|
- $tmparray = explode('上半场',$v->odds_name);
|
|
|
- if(count($tmparray) > 1){
|
|
|
- $matchOdds_h[] = $v;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- //获取全场作废 需处理 单式注单
|
|
|
- $matchOdds_f = [];
|
|
|
- if($data['home_score'] == -1 and $data['guest_score'] == -1){
|
|
|
- foreach($match_order as $k=>$v){
|
|
|
- $tmparray = explode('全场',$v->odds_name);
|
|
|
- if(count($tmparray) > 1){
|
|
|
- $matchOdds_f[] = $v;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ //上半场
|
|
|
+ $matchOdds_h = [];
|
|
|
+ //全场
|
|
|
+ $matchOdds_f = [];
|
|
|
+ foreach($match_order as $k=>$v){
|
|
|
+ //上半场条件
|
|
|
+ if($data['u_home_score'] == -1 and $data['u_guest_score'] == -1){
|
|
|
+ $matchOdds_h[] = self::getOrderJC('上半场',$v);
|
|
|
+ }
|
|
|
+ //全场条件
|
|
|
+ if($data['home_score'] == -1 and $data['guest_score'] == -1){
|
|
|
+ $matchOdds_f[] = self::getOrderJC('全场',$v);
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
+ //合并待处理 注单
|
|
|
$orderData = array_merge($matchOdds_h,$matchOdds_f);
|
|
|
- }
|
|
|
+ }
|
|
|
+ //====end===
|
|
|
+
|
|
|
+ //==篮球===
|
|
|
+ if($game_code == 'lq'){
|
|
|
+
|
|
|
+ //第一节
|
|
|
+ $matchOdds_o = [];
|
|
|
+ //第二节
|
|
|
+ $matchOdds_t = [];
|
|
|
+ //第三节
|
|
|
+ $matchOdds_s = [];
|
|
|
+ //第四节
|
|
|
+ $matchOdds_f = [];
|
|
|
+ //上半场
|
|
|
+ $matchOdds_hh = [];
|
|
|
+ //下半场
|
|
|
+ $matchOdds_ll = [];
|
|
|
+ //全场
|
|
|
+ $matchOdds_ff = [];
|
|
|
+
|
|
|
+ foreach($match_order as $k=>$v){
|
|
|
+ //第一节条件
|
|
|
+ if($data[0] == -1 and $data[4] == -1){
|
|
|
+ $matchOdds_o[] = self::getOrderJC('一节',$v);
|
|
|
+ }
|
|
|
+ //第二节条件
|
|
|
+ if($data[1] == -1 and $data[5] == -1){
|
|
|
+ $matchOdds_t[] = self::getOrderJC('二节',$v);
|
|
|
+ }
|
|
|
+ //第三节条件
|
|
|
+ if($data[2] == -1 and $data[6] == -1){
|
|
|
+ $matchOdds_s[] = self::getOrderJC('三节',$v);
|
|
|
+ }
|
|
|
+ //第四节条件
|
|
|
+ if($data[3] == -1 and $data[7] == -1){
|
|
|
+ $matchOdds_f[] = self::getOrderJC('四节',$v);
|
|
|
+ }
|
|
|
+ //上半场条件
|
|
|
+ if($data[0] == -1 and $data[4] == -1 and $data[1] == -1 and $data[5] == -1){
|
|
|
+ $matchOdds_hh[] = self::getOrderJC('上半场',$v);
|
|
|
+ }
|
|
|
+ //下半场条件
|
|
|
+ if($data[2] == -1 and $data[6] == -1 and $data[3] == -1 and $data[7] == -1){
|
|
|
+ $matchOdds_ll[] = self::getOrderJC('下半场',$v);
|
|
|
+ }
|
|
|
+ //全场条件
|
|
|
+ if($data[0] == -1 and $data[4] == -1 and $data[1] == -1 and $data[5] == -1 and $data[2] == -1 and $data[6] == -1 and $data[3] == -1 and $data[7] == -1){
|
|
|
+ $matchOdds_ff[] = self::getOrderJC('全场',$v);
|
|
|
+ $matchOdds_ff[] = self::getOrderJC('最后一位数',$v);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ //合并待处理 注单
|
|
|
+ $orderData = array_merge($matchOdds_o,$matchOdds_t,$matchOdds_s,$matchOdds_f,$matchOdds_hh,$matchOdds_ll,$matchOdds_ff);
|
|
|
+ }
|
|
|
+ //===end===
|
|
|
+
|
|
|
+ //===网球===
|
|
|
+ if($game_code == 'wq'){
|
|
|
+
|
|
|
+ }
|
|
|
+ //===end===
|
|
|
+
|
|
|
+ //===棒球===
|
|
|
+ if($game_code == 'bq'){
|
|
|
+
|
|
|
+ }
|
|
|
+ //===end===
|
|
|
|
|
|
return $orderData;
|
|
|
- }
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 匹配各进程注单
|
|
|
+ * $str str 搜索关键字
|
|
|
+ * $v arr 注单数据
|
|
|
+ */
|
|
|
+ public static function getOrderJC($str,$v){
|
|
|
+ $tmparray = explode($str,$v->odds_name);
|
|
|
+ if(count($tmparray) > 1){
|
|
|
+ return $v;
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
|
|
|
}
|