One28Parse.php 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207
  1. <?php
  2. namespace App\Lib\Biz\Game\Parse;
  3. /**
  4. * Created by PhpStorm.
  5. * User: admin
  6. * Date: 2017/11/30
  7. * Time: 16:42
  8. */
  9. class One28Parse extends BaseParse {
  10. protected $game='one28';
  11. protected $name='极速28';
  12. /**
  13. * 开奖号吗解析
  14. */
  15. function prizeParse($data,$game=''){
  16. $prize=json_decode($data['prizes'],1);
  17. if(is_array($prize)&&count($prize)>0){
  18. $prize=current($prize);
  19. foreach ($prize as $k=>$v){
  20. if(is_array($prize)&&count($prize)>0){
  21. foreach ($v as $key=>$value){
  22. $data[$k]=trans($this->game.'.'.$k.'-'.$key);
  23. }
  24. }
  25. }
  26. }
  27. unset($data['prizes']);
  28. //解析开奖补充号码
  29. if(isset($data['extra'])&&!empty($data['extra'])){
  30. $extra=json_decode($data['extra'],1);
  31. foreach ($extra as $kq=>$vq){
  32. if(!is_numeric($vq)){
  33. $data[$kq]=trans($this->game.'.'.$vq);
  34. }else{
  35. $data[$kq]=$vq;
  36. }
  37. }
  38. $data['prizes_code']=$extra['one'].'+'.$extra['two'].'+'.$extra['three'].'='.$extra['code'];
  39. $data['leopard']=$extra['leopard'];
  40. $data['limit']=trans($this->game.'.'.$extra['limit']);
  41. }
  42. unset( $data['specialCode']);
  43. unset($data['extra']);
  44. // unset($data['one']);
  45. // unset($data['two']);
  46. // unset($data['three']);
  47. // unset($data['code']);
  48. $data['name']=$this->name;
  49. //中奖撤单未中奖状态的处理
  50. if($data['status']==4){
  51. $data['game_status']=4;
  52. }
  53. unset($data['status']);
  54. return $data;
  55. }
  56. /**
  57. *
  58. */
  59. function betParse($data,$game=''){
  60. }
  61. //投注内容
  62. function packbet($data, $game='') {
  63. // $this->game = $game;
  64. // $this->name = trans('common.' . $game);
  65. //获取开奖号码
  66. if (isset($data['extra']) && !empty($data['extra'])) {
  67. $extra = json_decode($data['extra'], 1);
  68. if (is_array($extra) && count($extra) > 0) {
  69. if (isset($extra['one'])) {
  70. $data['prizes_code'] = $extra['one'] . '+' . $extra['two'] . '+' . $extra['three'] . '=' . $extra['code'];
  71. $data['sum_code']=$extra['code'];
  72. } else if (isset($data['prizes_code'])) {
  73. $data['prizes_code'] = $data['prizes_code'];
  74. }
  75. }
  76. }
  77. if (!isset($data['prizes_code'])) {
  78. $data['prizes_code'] = $data['codes'];
  79. }
  80. $data['name'] = $this->name;
  81. $data['game'] = $this->game;
  82. //投注号码解析
  83. $data['bet_'] = '';
  84. if (isset($data['codes']) && !empty($data['codes'])) {
  85. $codes = json_decode($data['codes'], 1);
  86. if (is_array($codes) && count($codes) > 0) {
  87. foreach ($codes as $k => $v) {
  88. if (is_array($v) && count($v) > 0) {
  89. $data['bet_'] .= '<b>' . trans($this->game . '.' . $k) . '</b>:'; //玩法
  90. foreach ($v as $ka => $va) {
  91. if (is_numeric($ka) || preg_match("/^\d+_\d+$/", $ka)) {
  92. $data['bet_'] .= $ka . '¥'.$va[0].' ';
  93. } else {
  94. $data['bet_'] .= trans($this->game . '.' . $ka) . '¥'.$va[0].' ';
  95. }
  96. }
  97. $data['bet_'] .= '<br/>';
  98. }
  99. }
  100. }
  101. }
  102. // $data['ceshi'] = $data['game_status'];
  103. //中奖撤单未中奖状态的处理
  104. if (isset($data['game_status'])) {
  105. if ($data['status'] == 4) {
  106. $data['game_status'] = 4;
  107. }
  108. $lang = trans('status.money_buy.game_status');
  109. $data['game_status'] = $lang[$data['game_status']];
  110. }
  111. unset($data['status']);
  112. return $data;
  113. }
  114. /**
  115. * 单注可赢金额计算
  116. */
  117. function winMomey($data){
  118. $winMoney=0;
  119. $data=json_decode($data,1);
  120. foreach ($data as $k=>$v){
  121. if(is_array($v)&&count($v)>0){
  122. foreach ($v as $key=>$value){
  123. if(isset($value['settings']['multiple']['max'])){
  124. $winMoney=$value[0]*$value['settings']['multiple']['max'];
  125. }else{
  126. $winMoney=$value[0]*$value['settings']['multiple'];
  127. }
  128. }
  129. }
  130. }
  131. return $winMoney;
  132. }
  133. /**
  134. * 单注号码解析
  135. * @param $data 号码json
  136. * @param $game
  137. * @return array
  138. */
  139. function dataChange($data){
  140. $args=array();
  141. $buy_code = json_decode($data['codes'],1);//该注购买号码
  142. $prize_code =json_decode($data['prize'],1);//改注中奖号码
  143. //购买号码解析
  144. if(is_array($buy_code) && count($buy_code)>0)
  145. {
  146. $i=0;
  147. foreach($buy_code as $k=>$v)
  148. {
  149. if(is_array($v) && count($v)>0)
  150. {
  151. foreach($v as $k1=>$v1)
  152. {
  153. $args[$i]=array(
  154. 'gameType'=>trans($data['game_name'].'.'.$k),
  155. 'codes'=>trans($data['game_name'].'.'.$k.'-'.$k1),
  156. 'money'=>$v1[0],
  157. 'maybe'=>$v1[0]*$v1['settings']['multiple'],
  158. 'play'=>$k,
  159. 'p_code'=>$k1,
  160. );
  161. if(isset($v1['settings']['multiple']['max'])){
  162. $args[$i]['odds']=$v1['settings']['multiple']['max'];
  163. }else{
  164. $args[$i]['odds']=$v1['settings']['multiple'];
  165. }
  166. if($data['status']==4){
  167. $args[$i]['prize_status']='撤单';
  168. }else if($data['game_status']==0){
  169. $args[$i]['prize_status']='待开奖';
  170. }
  171. $i++;
  172. }
  173. }
  174. }
  175. }
  176. //中奖判断
  177. if(is_array($prize_code)&&count($prize_code)){
  178. //中奖号码
  179. foreach ($prize_code as $p_k=>$p_v){
  180. //购买号码
  181. foreach ($args as $num=>$v){
  182. if($v['play']==$p_k){
  183. if(is_array($p_v)&&count($p_v)>0){
  184. foreach ($p_v as $p_k1 =>$p_v2){
  185. if($v['p_code']==$p_v2){
  186. $args[$num]['prize_status']='中奖';
  187. }else{
  188. $args[$num]['prize_status']='未中奖';
  189. }
  190. }
  191. }
  192. }
  193. }
  194. }
  195. }
  196. return $args;
  197. }
  198. }