ZqRule.php 93 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Administrator
  5. * Date: 2019/4/25
  6. * Time: 14:10
  7. */
  8. namespace App\Lib\Settlement\Adapter;
  9. use Illuminate\Support\Facades\DB;
  10. use App\Lib\Biz\Sport\Common as commonFunction;
  11. class ZqRule
  12. {
  13. use RulePlus;
  14. /**
  15. * 全场|主队|让球
  16. * @param mixed $model 注单表数据
  17. * @param mixed $resultModel 结果表数据
  18. * @param mixed $resultRecords 结果记录表数据
  19. * @return string 1:赢 -1:输 2:平 3:赢半平半 4:输半平半
  20. */
  21. public function concede_home($model, $resultModels, $resultRecords)
  22. {
  23. $resultModel = $resultModels['0'];
  24. $home = intval($resultModel->home_score);
  25. $guest = intval($resultModel->guest_score);
  26. $word = $home . '-' . $guest . '(全场)';
  27. $ret = $this->zq_letball($home - $guest, $model->condition, $word);
  28. return $ret;
  29. }
  30. /**
  31. * 全场|客队|让球
  32. * @param mixed $model 注单表数据
  33. * @param mixed $resultModel 结果表数据
  34. * @param mixed $resultRecords 结果记录表数据
  35. * @return string 1:赢 -1:输 2:平 3:赢半平半 4:输半平半
  36. */
  37. public function concede_guest($model, $resultModels, $resultRecords)
  38. {
  39. $resultModel = $resultModels['0'];
  40. $home = intval($resultModel->home_score);
  41. $guest = intval($resultModel->guest_score);
  42. $word = $home . '-' . $guest . '(全场)';
  43. $ret = $this->zq_letball($guest - $home, $model->condition, $word);
  44. return $ret;
  45. }
  46. /**
  47. * 上半场|主队|让球
  48. * @param mixed $model 注单表数据
  49. * @param mixed $resultModel 结果表数据
  50. * @param mixed $resultRecords 结果记录表数据
  51. * @return string 1:赢 -1:输 2:平 3:赢半平半 4:输半平半
  52. */
  53. public function half_concede_home($model, $resultModels, $resultRecords)
  54. {
  55. $resultModel = $resultModels['0'];
  56. $home = intval($resultModel->u_home_score);
  57. $guest = intval($resultModel->u_guest_score);
  58. $word = $home . '-' . $guest . '(上半场)';
  59. $ret = $this->zq_letball($home - $guest, $model->condition, $word);
  60. return $ret;
  61. }
  62. /**
  63. * 上半场|客队|让球
  64. * @param mixed $model 注单表数据
  65. * @param mixed $resultModel 结果表数据
  66. * @param mixed $resultRecords 结果记录表数据
  67. * @return string 1:赢 -1:输 2:平 3:赢半平半 4:输半平半
  68. */
  69. public function half_concede_guest($model, $resultModels, $resultRecords)
  70. {
  71. $resultModel = $resultModels['0'];
  72. $home = intval($resultModel->u_home_score);
  73. $guest = intval($resultModel->u_guest_score);
  74. $word = $home . '-' . $guest . '(上半场)';
  75. $ret = $this->zq_letball($guest - $home, $model->condition, $word);
  76. return $ret;
  77. }
  78. /**
  79. * 进球|全场|大
  80. * @param mixed $model 注单表数据
  81. * @param mixed $resultModel 结果表数据
  82. * @param mixed $resultMgoal_size_smallodel 结果表数据
  83. * @param mixed $resultRecords 结果记录表数据
  84. * @return string 1:赢 -1:输 2:平 3:赢半平半 4:输半平半
  85. */
  86. public function goal_size_home($model, $resultModels, $resultRecords)
  87. {
  88. $resultModel = $resultModels['0'];
  89. $home = intval($resultModel->u_home_score);
  90. $guest = intval($resultModel->u_guest_score);
  91. $total = $home + $guest;
  92. $word = $home . '-' . $guest . '(全场)';
  93. $ret = $this->zq_inball_bigsmall($total, $model->condition, 2, $word);
  94. return $ret;
  95. }
  96. /**
  97. * 进球|全场|小
  98. * @param mixed $model 注单表数据
  99. * @param mixed $resultModel 结果表数据
  100. * @param mixed $resultRecords 结果记录表数据
  101. * @return string 1:赢 -1:输 2:平 3:赢半平半 4:输半平半
  102. */
  103. public function goal_size_guest($model, $resultModels, $resultRecords)
  104. {
  105. $resultModel = $resultModels['0'];
  106. $home = intval($resultModel->u_home_score);
  107. $guest = intval($resultModel->u_guest_score);
  108. $total = $home + $guest;
  109. $word = $home . '-' . $guest . '(全场)';
  110. $ret = $this->zq_inball_bigsmall($total, $model->condition, 1, $word);
  111. return $ret;
  112. }
  113. //全场|进球|大
  114. public function goal_size_big($model, $resultModels, $resultRecords)
  115. {
  116. $resultModel = $resultModels['0'];
  117. $allscore = intval($resultModel->home_score) + intval($resultModel->guest_score);
  118. $word = $resultModel->home_score . '-' . $resultModel->guest_score . "(全场)";
  119. $returnDatas = $this->zq_inball_bigsmall($allscore, $model->condition, 2, $word);
  120. return $returnDatas;
  121. }
  122. //全场|进球|小
  123. public function goal_size_small($model, $resultModels, $resultRecords)
  124. {
  125. $resultModel = $resultModels['0'];
  126. $allscore = intval($resultModel->home_score) + intval($resultModel->guest_score);
  127. $word = $resultModel->home_score . '-' . $resultModel->guest_score . "(全场)";
  128. $returnDatas = $this->zq_inball_bigsmall($allscore, $model->condition, 1, $word);
  129. return $returnDatas;
  130. }
  131. /**
  132. * 进球|上半场|大
  133. * @param mixed $model 注单表数据
  134. * @param mixed $resultModel 结果表数据
  135. * @param mixed $resultRecords 结果记录表数据
  136. * @return string 1:赢 -1:输 2:平 3:赢半平半 4:输半平半
  137. */
  138. public function half_goal_size_big($model, $resultModels, $resultRecords)
  139. {
  140. $resultModel = $resultModels['0'];
  141. $score = intval($resultModel->u_home_score) + intval($resultModel->u_guest_score);
  142. return $this->zq_inball_bigsmall($score, $model->condition, 2, $resultModel->u_home_score . '-' . $resultModel->u_guest_score . '(上半场)');
  143. }
  144. /**
  145. * 进球|上半场|小
  146. * @param mixed $model 注单表数据
  147. * @param mixed $resultModel 结果表数据
  148. * @param mixed $resultRecords 结果记录表数据
  149. * @return string 1:赢 -1:输 2:平 3:赢半平半 4:输半平半
  150. */
  151. public function half_goal_size_small($model, $resultModels, $resultRecords)
  152. {
  153. $resultModel = $resultModels['0'];
  154. $score = intval($resultModel->u_home_score) + intval($resultModel->u_guest_score);
  155. return $this->zq_inball_bigsmall($score, $model->condition, 1, $resultModel->u_home_score . '-' . $resultModel->u_guest_score . '(上半场)');
  156. }
  157. /**
  158. * 全场|主队|独赢
  159. * @param mixed $model 注单表数据
  160. * @param mixed $resultModel 结果表数据
  161. * @param mixed $resultRecords 结果记录表数据
  162. * @return string 1:赢 -1:输
  163. */
  164. public function capot_home($model, $resultModels, $resultRecords)
  165. {
  166. $resultModel = $resultModels['0'];
  167. $home = intval($resultModel->home_score);
  168. $guest = intval($resultModel->guest_score);
  169. $word = $home . '-' . $guest . '(全场)';
  170. $ret = $this->zq_duyingv2(1, 4, $resultModel, $word);
  171. return $ret;
  172. }
  173. /**
  174. * 全场|客队|独赢
  175. * @param mixed $model 注单表数据
  176. * @param mixed $resultModel 结果表数据
  177. * @param mixed $resultRecords 结果记录表数据
  178. * @return string 1:赢 -1:输
  179. */
  180. public function capot_guest($model, $resultModels, $resultRecords)
  181. {
  182. $resultModel = $resultModels['0'];
  183. $home = intval($resultModel->home_score);
  184. $guest = intval($resultModel->guest_score);
  185. $word = $home . '-' . $guest . '(全场)';
  186. $ret = $this->zq_duyingv2(2, 4, $resultModel, $word);
  187. return $ret;
  188. }
  189. /**
  190. * 全场|主客平|独赢
  191. * @param mixed $model 注单表数据
  192. * @param mixed $resultModel 结果表数据
  193. * @param mixed $resultRecords 结果记录表数据
  194. * @return string 1:赢 -1:输
  195. */
  196. public function capot_dogfall($model, $resultModels, $resultRecords)
  197. {
  198. $resultModel = $resultModels['0'];
  199. $home = intval($resultModel->home_score);
  200. $guest = intval($resultModel->guest_score);
  201. $word = $home . '-' . $guest . '(全场)';
  202. if ($home == $guest) {
  203. $return['result'] = 1;
  204. } else {
  205. $return['result'] = -1;
  206. }
  207. $return['matchResult'] = $word;
  208. return $return;
  209. }
  210. /**
  211. * 上半场|主队|独赢
  212. * @param mixed $model 注单表数据
  213. * @param mixed $resultModel 结果表数据
  214. * @param mixed $resultRecords 结果记录表数据
  215. * @return string 1:赢 -1:输
  216. */
  217. public function half_capot_home($model, $resultModels, $resultRecords)
  218. {
  219. $resultModel = $resultModels['0'];
  220. $word = $resultModel->u_home_score . '-' . $resultModel->u_guest_score . '(上半场)';
  221. return $this->zq_duyingv2(1, 1, $resultModel, $word);
  222. }
  223. /**
  224. * 上半场|客队|独赢
  225. * @param mixed $model 注单表数据
  226. * @param mixed $resultModel 结果表数据
  227. * @param mixed $resultRecords 结果记录表数据
  228. * @return string 1:赢 -1:输
  229. */
  230. public function half_capot_guest($model, $resultModels, $resultRecords)
  231. {
  232. $resultModel = $resultModels['0'];
  233. $word = $resultModel->u_home_score . '-' . $resultModel->u_guest_score . '(上半场)';
  234. return $this->zq_duyingv2(2, 1, $resultModel, $word);
  235. }
  236. /**
  237. * 上半场|主客平|独赢
  238. * @param mixed $model 注单表数据
  239. * @param mixed $resultModel 结果表数据
  240. * @param mixed $resultRecords 结果记录表数据
  241. * @return string 1:赢 -1:输
  242. */
  243. public function half_capot_dogfall($model, $resultModels, $resultRecords)
  244. {
  245. $resultModel = $resultModels['0'];
  246. $word = $resultModel->u_home_score . '-' . $resultModel->u_guest_score . '(上半场)';
  247. if ($resultModel->u_home_score == $resultModel->u_guest_score) {
  248. $result = 1;
  249. } else {
  250. $result = -1;
  251. }
  252. return ['result' => $result, 'matchResult' => $word];
  253. }
  254. // first_last_ball最先/最后进球 开始-----------------------
  255. //主队|最先进球
  256. public function first_ball_home($model, $resultModel, $resultRecords)
  257. {
  258. $resultModel = $resultModel['0'];
  259. $word = ($resultModel->first_score != '') ? (($resultModel->first_score == $model->home_team) ? '1:0' : '0:1') : '0:0';
  260. $word .= '(主客)';
  261. if (trim($resultModel->first_score) == trim($resultModel->home_team)) {
  262. return ['result' => 1, 'matchResult' => $word];
  263. } else {
  264. return ['result' => -1, 'matchResult' => $word];
  265. }
  266. }
  267. //客队|最先进球
  268. public function first_ball_guest($model, $resultModel, $resultRecords)
  269. {
  270. $resultModel = $resultModel['0'];
  271. $word = ($resultModel->first_score != '') ? (($resultModel->first_score == $model->guest_team) ? '0:1' : '1:0') : '0:0';
  272. $word .= '(主客)';
  273. if (trim($resultModel->first_score) == trim($resultModel->guest_team)) {
  274. return ['result' => 1, 'matchResult' => $word];
  275. } else {
  276. return ['result' => -1, 'matchResult' => $word];
  277. }
  278. }
  279. //主队|最后进球
  280. public function last_ball_home($model, $resultModel, $resultRecords)
  281. {
  282. $resultModel = $resultModel['0'];
  283. $word = ($resultModel->last_score != '') ? (($resultModel->last_score == $model->home_team) ? '1:0' : '0:1') : '0:0';
  284. $word .= '(主客)';
  285. if (trim($resultModel->last_score) == trim($resultModel->home_team)) {
  286. return ['result' => 1, 'matchResult' => $word];
  287. } else {
  288. return ['result' => -1, 'matchResult' => $word];
  289. }
  290. }
  291. //客队|最后进球
  292. public function last_ball_guest($model, $resultModel, $resultRecords)
  293. {
  294. $resultModel = $resultModel['0'];
  295. $word = ($resultModel->last_score != '') ? (($resultModel->last_score == $model->guest_team) ? '0:1' : '1:0') : '0:0';
  296. $word .= '(主客)';
  297. if (trim($resultModel->last_score) == trim($resultModel->guest_team)) {
  298. return ['result' => 1, 'matchResult' => $word];
  299. } else {
  300. return ['result' => -1, 'matchResult' => $word];
  301. }
  302. }
  303. //没有进球
  304. public function not_ball($model, $resultModel, $resultRecords)
  305. {
  306. $resultModel = $resultModel['0'];
  307. $home = intval($resultModel->home_score);
  308. $guest = intval($resultModel->guest_score);
  309. $all_score = $home + $guest;
  310. $word = ($home > 0 ? 1 : 0) . '-' . ($guest > 0 ? 1 : 0) . '(主客)';
  311. if ($all_score <= 0) {
  312. return ['result' => 1, 'matchResult' => $word];
  313. } else {
  314. return ['result' => -1, 'matchResult' => $word];
  315. }
  316. }
  317. ////////// first_last_ball最先/最后进球 结束-----------------------
  318. /**
  319. * 足球波胆 规则
  320. * @param $bet_match 投注赛事数据
  321. * @param $result_match 最终结果
  322. * @param $result_match_r 结果记录
  323. * User: Tank
  324. * Date: 2019/5/13
  325. * Time: 10:19
  326. */
  327. public function bodan($bet_match, $result_match, $result_match_r)
  328. {
  329. // $bet_match = DB::table('money_buy_match')->where(['match_id'=> 3219925,'p_code'=>'bodan'])->first();
  330. // $result_match = DB::table('st_zq_result')->where('match_id', 3224833)->limit(10)->get();
  331. // select * from st_zq_result where id=1317823 order by id desc limit 10 ;
  332. // $result_match_r = DB::table('st_zq_result_record')->where('match_id', 3150765)->get()->toArray();
  333. //获取父/子级赔率代码
  334. $p_code = $bet_match->p_code;
  335. $odds_code = $bet_match->odds_code;
  336. //==获取是否是滚球投注==
  337. $is_rolling = $bet_match->is_rolling;
  338. //如果是滚球投注,则进行危险球审核
  339. if($is_rolling == 1){
  340. $ret = commonFunction::WARN_CHECK($bet_match,$result_match_r);
  341. //如果审核不通过,则返回注单无效
  342. if($ret['code'] == -1){
  343. $data = [
  344. 'result' => -200,
  345. 'msg' => "滚球投注,危险球审核不通过",
  346. 'warn_more' => $ret['warn_more']
  347. ];
  348. return $data;
  349. }
  350. }
  351. //==end==
  352. //获取主客队投注比分
  353. $bet_score = explode('-', $bet_match->condition);
  354. $bet_home_score = (int)$bet_score[0];
  355. $bet_guest_score = isset($bet_score[1]) ? intval($bet_score[1]) : 0;
  356. if ($p_code != 'bodan') return false;
  357. //获取赛事最终结果数据
  358. $result_match = $this->getHalfData($result_match);
  359. if (strstr($odds_code, "half")) {//上半场
  360. //获取主客队上半场得分
  361. $home_score = $result_match->u_home_score;
  362. $guest_score = $result_match->u_guest_score;
  363. //返回结果
  364. $data = [
  365. 'result' => 1,
  366. 'matchResult' => "$home_score-$guest_score(上半场)"
  367. ];
  368. if (strstr($bet_match->condition, "其他")) {
  369. if (($home_score > 3) || ($guest_score > 3)) {
  370. return $data;
  371. }
  372. }
  373. //判断结果
  374. if ($bet_home_score == $home_score and $bet_guest_score == $guest_score) {
  375. return $data;
  376. }
  377. $data['result'] = -1;
  378. return $data;
  379. } else {//全场
  380. //获取主客队全场得分
  381. $home_score = $result_match->home_score;
  382. $guest_score = $result_match->guest_score;
  383. //返回结果
  384. $data = [
  385. 'result' => 1,
  386. 'matchResult' => "$home_score-$guest_score(全场)"
  387. ];
  388. if (strstr($bet_match->condition, "其他")) {
  389. if (($home_score > 4) || ($guest_score > 4)) {
  390. return $data;
  391. }
  392. }
  393. //判断结果
  394. if ($bet_home_score == $home_score and $bet_guest_score == $guest_score) {
  395. return $data;
  396. }
  397. $data['result'] = -1;
  398. return $data;
  399. }
  400. }
  401. //结果单/双 home_score 主队进球数 guest_score 客队进球数 home_rate 主队让球 guest_rate 客队让球 u_home_score 上半场主队进球 u_guest_score 上半场-客队进球数 two_sides_single 全场单 two_sides_double 全场双 half_two_sides_single 上半场单 half_two_sides_double 上半场双
  402. public function two_sides($model, $resultModels, $resultRecords)
  403. {
  404. $resultModel = $resultModels['0'];
  405. $resulttod = intval($resultModel->home_score) + intval($resultModel->guest_score);//全场
  406. $score_home = intval($resultModel->home_score);
  407. $guest_home = intval($resultModel->guest_score);
  408. $word_all = $score_home . '-' . $guest_home . '(全场)';
  409. $score_home_half = intval($resultModel->u_home_score);
  410. $guest_home_half = intval($resultModel->u_guest_score);
  411. $word_all_half = $score_home_half . '-' . $guest_home_half . '(半场)';
  412. if ($resulttod % 2 == 0) {
  413. $text = '双';
  414. } else {
  415. $text = '单';
  416. }
  417. if ($model->odds_code == "two_sides_single" || $model->odds_code == 'two_sides_double') {
  418. if ($text == $model->condition) {
  419. $dsresult = 1;
  420. } else {
  421. $dsresult = -1;
  422. }
  423. return ['result' => $dsresult, 'matchResult' => $word_all];
  424. } elseif ($model->odds_code == 'half_two_sides_single' || $model->odds_code == 'half_two_sides_double') {
  425. $hafs = intval($resultModel->u_home_score) + intval($resultModel->u_guest_score);
  426. $text = ($hafs % 2 == 0) ? '双' : '单';
  427. $dsresult = ($text == $model->condition) ? 1 : -1;
  428. return ['result' => $dsresult, 'matchResult' => $word_all_half];
  429. } else {
  430. $data = [
  431. 'result' => 100,
  432. 'matchResult' => "参数不存在",
  433. ];
  434. return $data;
  435. }
  436. }
  437. //结果总数 home_score 主队进球数 guest_score 客队进球数 home_rate 主队让球 guest_rate 客队让球 u_home_score 上半场-主队进球数 u_guest_score 上半场-客队进球数
  438. public function total_goal($model, $resultModels, $resultRecords)
  439. {
  440. $resultModel = $resultModels['0'];
  441. //全场总进球数
  442. $resulttod = intval($resultModel->home_score) + intval($resultModel->guest_score);
  443. $score_home = intval($resultModel->home_score);
  444. $guest_home = intval($resultModel->guest_score);
  445. $word_all = $score_home . '-' . $guest_home . '(全场)';
  446. $score_home_half = intval($resultModel->u_home_score);
  447. $guest_home_half = intval($resultModel->u_guest_score);
  448. $word_all_half = $score_home_half . '-' . $guest_home_half . '(半场)';
  449. //上半场总进球数
  450. $firsthalftod = intval($resultModel->u_home_score) + intval($resultModel->u_guest_score);
  451. $results = 0;
  452. $resultb = 0;
  453. if ($model->odds_code == "total_goal_four") {
  454. if (4 <= $resulttod and $resulttod <= 6) {
  455. $results = 1;
  456. } else {
  457. $results = -1;
  458. }
  459. }
  460. if ($model->odds_code == "total_goal_zero") {
  461. if (0 <= $resulttod and $resulttod <= 1) {
  462. $results = 1;
  463. } else {
  464. $results = -1;
  465. }
  466. }
  467. if ($model->odds_code == "total_goal_two") {
  468. if (2 <= $resulttod and $resulttod <= 3) {
  469. $results = 1;
  470. } else {
  471. $results = -1;
  472. }
  473. }
  474. if ($model->odds_code == "total_goal_seven") {
  475. if (7 <= $resulttod) {
  476. $results = 1;
  477. } else {
  478. $results = -1;
  479. }
  480. }
  481. if ($model->odds_code == "half_total_goal_zero") {
  482. if ($firsthalftod == 0) {
  483. $resultb = 1;
  484. } else {
  485. $resultb = -1;
  486. }
  487. }
  488. if ($model->odds_code == "half_total_goal_one") {
  489. if ($firsthalftod == 1) {
  490. $resultb = 1;
  491. } else {
  492. $resultb = -1;
  493. }
  494. }
  495. if ($model->odds_code == "half_total_goal_two") {
  496. if ($firsthalftod == 2) {
  497. $resultb = 1;
  498. } else {
  499. $resultb = -1;
  500. }
  501. }
  502. if ($model->odds_code == "half_total_goal_three") {
  503. if ($firsthalftod == 3) {
  504. $resultb = 1;
  505. } else {
  506. $resultb = -1;
  507. }
  508. }
  509. if ($results == 1) {
  510. $data = [
  511. 'result' => 1,
  512. 'matchResult' => $word_all,
  513. ];
  514. }
  515. if ($results == -1) {
  516. $data = [
  517. 'result' => -1,
  518. 'matchResult' => $word_all,
  519. ];
  520. }
  521. if ($resultb == 1) {
  522. $data = [
  523. 'result' => 1,
  524. 'matchResult' => $word_all_half,
  525. ];
  526. }
  527. if ($resultb == -1) {
  528. $data = [
  529. 'result' => -1,
  530. 'matchResult' => $word_all_half,
  531. ];
  532. }
  533. return $data;
  534. }
  535. //球队进球数:大/小
  536. //condition 0.5 或 0.5/1 这种
  537. public function tema_ball($model, $resultModels, $result_match_r = [])
  538. {
  539. $resultModel = $resultModels['0'];
  540. $odds_code = trim($model->odds_code);
  541. $score_home = intval($resultModel->home_score);
  542. $score_guest = intval($resultModel->guest_score);
  543. $score_home_uhalf = intval($resultModel->u_home_score);
  544. $score_guest_uhalf = intval($resultModel->u_guest_score);
  545. switch ($odds_code) {
  546. case 'home_tema_ball_big':
  547. $returnDatas['matchResult'] = $score_home . '-' . $score_guest . '(全场)';
  548. $returnDatas = $this->zq_inball_bigsmall($score_home, $model->condition, 2, $returnDatas['matchResult']);
  549. break;
  550. case 'home_tema_ball_small':
  551. $returnDatas['matchResult'] = $score_home . '-' . $score_guest . '(全场)';
  552. $returnDatas = $this->zq_inball_bigsmall($score_home, $model->condition, 1, $returnDatas['matchResult']);
  553. break;
  554. case 'guest_tema_ball_big':
  555. $returnDatas['matchResult'] = $score_home . '-' . $score_guest . '(全场)';
  556. $returnDatas = $this->zq_inball_bigsmall($score_guest, $model->condition, 2, $returnDatas['matchResult']);
  557. break;
  558. case 'guest_tema_ball_small':
  559. $returnDatas['matchResult'] = $score_home . '-' . $score_guest . '(全场)';
  560. $returnDatas = $this->zq_inball_bigsmall($score_guest, $model->condition, 1, $returnDatas['matchResult']);
  561. break;
  562. case 'half_home_tema_ball_big':
  563. $returnDatas['matchResult'] = $score_home_uhalf . '-' . $score_guest_uhalf . '(上半场)';
  564. $returnDatas = $this->zq_inball_bigsmall($score_home_uhalf, $model->condition, 2, $returnDatas['matchResult']);
  565. break;
  566. case 'half_home_tema_ball_small':
  567. $returnDatas['matchResult'] = $score_home_uhalf . '-' . $score_guest_uhalf . '(上半场)';
  568. $returnDatas = $this->zq_inball_bigsmall($score_home_uhalf, $model->condition, 1, $returnDatas['matchResult']);
  569. break;
  570. case 'half_guest_tema_ball_big':
  571. $returnDatas['matchResult'] = $score_home_uhalf . '-' . $score_guest_uhalf . '(上半场)';
  572. $returnDatas = $this->zq_inball_bigsmall($score_guest_uhalf, $model->condition, 2, $returnDatas['matchResult']);
  573. break;
  574. case 'half_guest_tema_ball_small':
  575. $returnDatas['matchResult'] = $score_home_uhalf . '-' . $score_guest_uhalf . '(上半场)';
  576. $returnDatas = $this->zq_inball_bigsmall($score_guest_uhalf, $model->condition, 1, $returnDatas['matchResult']);
  577. break;
  578. }
  579. return $returnDatas;
  580. }
  581. /**
  582. * 半场/全场 投注规则
  583. * User: Tank
  584. * Date: 2019/5/13
  585. * Time: 10:19
  586. */
  587. public function half_full($bet_match, $result_match, $result_match_r)
  588. {
  589. // $bet_match = DB::table('money_buy_match')->where('match_id', 3210851)->first();
  590. // $result_match = DB::table('st_zq_result')->where('match_id', 3210851)->first();
  591. // $result_match_r = DB::table('st_zq_result_record')->where('match_id', 3210851)->get()->toArray();
  592. if (empty($bet_match) || empty($result_match)) return false;
  593. //获取父/子级赔率代码
  594. $p_code = $bet_match->p_code;
  595. $odds_code = $bet_match->odds_code;
  596. //==获取是否是滚球投注==
  597. $is_rolling = $bet_match->is_rolling;
  598. //如果是滚球投注,则进行危险球审核
  599. if($is_rolling == 1){
  600. $ret = $this->WARN_CHECK($bet_match,$result_match_r);
  601. //如果审核不通过,则返回注单无效
  602. if($ret != 1){
  603. $data = [
  604. 'result' => -200,
  605. 'matchResult' => "滚球投注,危险球审核不通过"
  606. ];
  607. return $data;
  608. }
  609. }
  610. //==end==
  611. //获取最终赛事数据
  612. $result_match = $this->getHalfData($result_match);
  613. //获取主客队上半场得分
  614. $half_home_score = $result_match->u_home_score;
  615. $half_guest_score = $result_match->u_guest_score;
  616. //获取主客队全场得分
  617. $full_home_score = $result_match->home_score;
  618. $full_guest_score = $result_match->guest_score;
  619. //半场/全场盘口
  620. if ($p_code != 'half_full') return false;
  621. //返回结果
  622. $data = [
  623. 'result' => 1,
  624. 'matchResult' => "$half_home_score-$half_guest_score(上半场);$full_home_score-$full_guest_score(全场)"
  625. ];
  626. switch ($odds_code) {
  627. case 'half_full_home_home':// 主-主
  628. if ($half_home_score > $half_guest_score and $full_home_score > $full_guest_score) return $data;
  629. break;
  630. case 'half_full_home_dogfall':// 主-和
  631. if ($half_home_score > $half_guest_score and $full_home_score == $full_guest_score) return $data;
  632. break;
  633. case 'half_full_home_guest':// 主-客
  634. if ($half_home_score > $half_guest_score and $full_home_score < $full_guest_score) return $data;
  635. break;
  636. case 'half_full_dogfall_home':// 和-主
  637. if ($half_home_score == $half_guest_score and $full_home_score > $full_guest_score) return $data;
  638. break;
  639. case 'half_full_dogfall_dogfall':// 和-和
  640. if ($half_home_score == $half_guest_score and $full_home_score == $full_guest_score) return $data;
  641. break;
  642. case 'half_full_dogfall_guest':// 和-客
  643. if ($half_home_score == $half_guest_score and $full_home_score < $full_guest_score) return $data;
  644. break;
  645. case 'half_full_guest_home':// 客-主
  646. if ($half_home_score < $half_guest_score and $full_home_score > $full_guest_score) return $data;
  647. break;
  648. case 'half_full_guest_dogfall':// 客-和
  649. if ($half_home_score < $half_guest_score and $full_home_score == $full_guest_score) return $data;
  650. break;
  651. case 'half_full_guest_guest':// 客-客
  652. if ($half_home_score < $half_guest_score and $full_home_score < $full_guest_score) return $data;
  653. break;
  654. default:
  655. return false;
  656. }
  657. $data['result'] = -1;
  658. return $data;
  659. }
  660. /**
  661. * @param $result_match_r 赛事结果记录
  662. * @return mixed 返回最新一条上半场结果数据
  663. */
  664. public function getHalfData($result_match_r = [])
  665. {
  666. return $result_match_r['0'];
  667. if (empty($result_match_r)) return false;
  668. if (is_array($result_match_r)) {
  669. foreach ($result_match_r as $k => $v) {
  670. return $v;
  671. }
  672. }
  673. }
  674. /**bo
  675. * 冠军盘口投注
  676. * $bet_match 投注赛事数据
  677. * $result_match 联赛结果 数据 根据玩法代码查询一条
  678. * $result_match_r 无用参数
  679. */
  680. public function gj($bet_match, $result_match, $result_match_r)
  681. {
  682. // $bet_match = DB::table('money_buy_match')->where('match_id', 127317)->first();
  683. // $bet_match->odds_code = '巴西小组赛积分成绩';
  684. // $result_match = DB::table('st_zq_league_result')->where(['lg_id'=>27317,'game_name'=>$bet_match->odds_code])->first();
  685. //获取 赛事最终数据
  686. $result_match = $this->getHalfData($result_match);
  687. if (empty($bet_match) || empty($result_match)) return false;
  688. if ($bet_match->p_code != 'gj') return false;//冠军玩法
  689. if ($bet_match->odds_code == $result_match->game_name) {
  690. $condition = $bet_match->condition;
  691. //进球数判断
  692. if (strpos($bet_match->odds_code, '进球数') !== false) {
  693. //返回结果
  694. $data = [
  695. 'result' => 1,
  696. 'matchResult' => "$result_match->result(球队进球数)"
  697. ];
  698. //获取数值
  699. $bet = $this->findNum($condition);
  700. //以上/以下判断
  701. if (strpos($condition, '上') !== false) {
  702. if ($bet < $result_match->result) {
  703. return $data;
  704. }
  705. $data['result'] = -1;
  706. return $data;
  707. }
  708. if (strpos($condition, '下') !== false) {
  709. if ($bet > $result_match->result) {
  710. return $data;
  711. }
  712. $data['result'] = -1;
  713. return $data;
  714. }
  715. //大/小判断
  716. if (strpos($condition, '大') !== false) {
  717. if ($bet < $result_match->result) {
  718. return $data;
  719. }
  720. $data['result'] = -1;
  721. return $data;
  722. }
  723. if (strpos($condition, '小') !== false) {
  724. if ($bet > $result_match->result) {
  725. return $data;
  726. }
  727. $data['result'] = -1;
  728. return $data;
  729. }
  730. }
  731. //积分成绩判断
  732. if (strpos($bet_match->odds_code, '积分') !== false) {
  733. //返回结果
  734. $data = [
  735. 'result' => 1,
  736. 'matchResult' => "$result_match->result(球队积分)"
  737. ];
  738. $condition = $bet_match->condition;
  739. //获取数值
  740. $bet = $this->findNum($condition);
  741. if ($bet == $result_match->result) {
  742. return $data;
  743. }
  744. $data['result'] = -1;
  745. return $data;
  746. }
  747. //如果条件中没有数字,则获取球队/球员结果
  748. if ((preg_match('/\d+/', $condition)) == 0) {
  749. //返回结果
  750. $data = [
  751. 'result' => 1,
  752. 'matchResult' => "$result_match->result(晋级球队)"
  753. ];
  754. $result = $this->teamJudge($condition, $result_match->result);
  755. if ($result) {
  756. return $data;
  757. }
  758. $data['result'] = -1;
  759. return $data;
  760. };
  761. return false;
  762. }
  763. return false;
  764. }
  765. /**
  766. * 冠军盘口 球队/球员结果判断
  767. */
  768. public function teamJudge($condition, $result)
  769. {
  770. //返回结果数组中是否包含该球队
  771. $result = in_array($condition, json_decode($result, true));
  772. return $result;
  773. }
  774. /**
  775. * @param string $str
  776. * @return string
  777. * 处理字符串中的数字
  778. */
  779. public function findNum($str = '')
  780. {
  781. $str = trim($str);
  782. if (empty($str)) {
  783. return '';
  784. }
  785. $result = '';
  786. for ($i = 0; $i < strlen($str); $i++) {
  787. if (is_numeric($str[$i]) || $str[$i] == '.') {
  788. $result .= $str[$i];
  789. }
  790. }
  791. //如果有小数点,返回浮点数
  792. if (strpos($result, '.')) return floatval($result);
  793. //返回整数
  794. return (int)$result;
  795. }
  796. /**
  797. * 角球相关--------->开始
  798. */
  799. public function corner_ball($model, $resultModels, $result_match_r)
  800. {
  801. $odds_code = $model->odds_code;
  802. $isHalf = strpos(strtolower($odds_code), 'half');
  803. if ($isHalf) {
  804. return $this->corner_ball_half($model, $resultModels, $result_match_r);
  805. } else {
  806. return $this->corner_ball_all($model, $resultModels, $result_match_r);
  807. }
  808. }
  809. public function corner_ball_all($model, $resultModels, $result_match_r)
  810. {
  811. $resultModel = $resultModels['0'];
  812. if ($resultModel->corner_ball == '') {
  813. $game_ret = json_decode(json_encode(['home' => 0, 'guest' => 0, 'home_half' => 0, 'guest_half' => 0]));
  814. } else {
  815. $game_ret = json_decode($resultModel->corner_ball);
  816. }
  817. $word = $game_ret->home . '-' . $game_ret->guest . "(全场)";
  818. $returnDatas = ['result' => -1, 'matchResult' => $word];
  819. $odds_code = $model->odds_code;
  820. switch ($odds_code) {
  821. case "corner_concede_home":
  822. $returnDatas = $this->zq_letball($game_ret->home - $game_ret->guest, $model->condition, $word);
  823. break;
  824. case "corner_concede_guest":
  825. $returnDatas = $this->zq_letball($game_ret->guest - $game_ret->home, $model->condition, $word);
  826. break;
  827. case "corner_goal_size_home":
  828. $returnDatas = $this->zq_inball_bigsmall($game_ret->home - $game_ret->guest, $model->condition, 2, $word);
  829. break;
  830. case "corner_goal_size_guest":
  831. $returnDatas = $this->zq_inball_bigsmall($game_ret->guest - $game_ret->home, $model->condition, 1, $word);
  832. break;
  833. case "corner_capot_home":
  834. $returnDatas = $this->zq_duyingv2(1, 4, $resultModel, $word);
  835. break;
  836. case "corner_capot_guest":
  837. $returnDatas = $this->zq_duyingv2(2, 4, $resultModel, $word);
  838. break;
  839. case "corner_capot_dogfall":
  840. $returnDatas['result'] = ($game_ret->home == $game_ret->guest) ? 1 : -1;
  841. break;
  842. case "corner_two_sides_single":
  843. $returnDatas = $this->zq_doublesing($game_ret->home + $game_ret->guest, $model->condition, $word);
  844. break;
  845. case "corner_two_sides_double":
  846. $returnDatas = $this->zq_doublesing($game_ret->home + $game_ret->guest, $model->condition, $word);
  847. break;
  848. default:
  849. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  850. }
  851. return $returnDatas;
  852. }
  853. public function corner_ball_half($model, $resultModels, $result_match_r)
  854. {
  855. $resultModel = $resultModels['0'];
  856. if ($resultModel->corner_ball == '') {
  857. $game_ret = json_decode(json_encode(['home' => 0, 'guest' => 0, 'home_half' => 0, 'guest_half' => 0]));
  858. } else {
  859. $game_ret = json_decode($resultModel->corner_ball);
  860. }
  861. $word = $game_ret->home_half . '-' . $game_ret->guest_half . "(上半场)";
  862. $returnDatas = ['result' => -1, 'matchResult' => $word];
  863. $odds_code = $model->odds_code;
  864. switch ($odds_code) {
  865. case "corner_half_concede_home":
  866. $returnDatas = $this->zq_letball($game_ret->home_half - $game_ret->guest_half, $model->condition, $word);
  867. break;
  868. case "corner_half_concede_guest":
  869. $returnDatas = $this->zq_letball($game_ret->guest_half - $game_ret->home_half, $model->condition, $word);
  870. break;
  871. case "corner_half_goal_size_home":
  872. $returnDatas = $this->zq_inball_bigsmall($game_ret->home_half - $game_ret->guest_half, $model->condition, 2, $word);
  873. break;
  874. case "corner_half_goal_size_guest":
  875. $returnDatas = $this->zq_inball_bigsmall($game_ret->guest_half - $game_ret->home_half, $model->condition, 1, $word);
  876. break;
  877. case "corner_half_capot_home":
  878. $returnDatas = $this->zq_duyingv2(1, 1, $resultModel, $word);
  879. break;
  880. case "corner_half_capot_guest":
  881. $returnDatas = $this->zq_duyingv2(2, 1, $resultModel, $word);
  882. break;
  883. case "corner_half_capot_dogfall":
  884. $returnDatas['result'] = ($game_ret->home_half == $game_ret->guest_half) ? 1 : -1;
  885. break;
  886. case "corner_half_two_sides_single":
  887. $returnDatas = $this->zq_doublesing($game_ret->home_half + $game_ret->guest_half, $model->condition, $word);
  888. break;
  889. case "corner_half_two_sides_double":
  890. $returnDatas = $this->zq_doublesing($game_ret->home_half + $game_ret->guest_half, $model->condition, $word);
  891. break;
  892. default:
  893. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  894. }
  895. return $returnDatas;
  896. }
  897. /**
  898. * 角球相关--------->结束
  899. */
  900. //净胜球相关
  901. public function sw_WM($model, $resultModels, $result_match_r)
  902. {
  903. $resultModel = $resultModels['0'];
  904. $home = intval($resultModel->home_score);
  905. $guest = intval($resultModel->guest_score);
  906. $word = $home . '-' . $guest . '(全场)';
  907. $game_odds = $model->odde_code;
  908. switch ($game_odds) {
  909. case 'ior_WMH1':
  910. $ret = $this->zq_jingshengqiu($home, $guest, 1, $word);
  911. break;
  912. case 'ior_WMH2':
  913. $ret = $this->zq_jingshengqiu($home, $guest, 2, $word);
  914. break;
  915. case 'ior_WMH3':
  916. $ret = $this->zq_jingshengqiu($home, $guest, 3, $word);
  917. break;
  918. case 'ior_WMHOV':
  919. $ret = $this->zq_jingshengqiu($home, $guest, 4, $word);
  920. break;
  921. case 'ior_WMC1':
  922. $ret = $this->zq_jingshengqiu($guest, $home, 1, $word);
  923. break;
  924. case 'ior_WMC2':
  925. $ret = $this->zq_jingshengqiu($guest, $home, 2, $word);
  926. break;
  927. case 'ior_WMC3':
  928. $ret = $this->zq_jingshengqiu($guest, $home, 3, $word);
  929. break;
  930. case 'ior_WMCOV':
  931. $ret = $this->zq_jingshengqiu($guest, $home, 4, $word);
  932. break;
  933. case 'ior_WM0':
  934. $ret = $this->zq_jingshengqiu($home, $guest, 0, $word);
  935. break;
  936. case 'ior_WMN':
  937. $ret = $this->zq_jingshengqiu($guest, $home, 99, $word);
  938. break;
  939. default:
  940. $ret = $this->return_error;
  941. break;
  942. }
  943. return $ret;
  944. }
  945. //足球净胜球胜负判断
  946. private function zq_jingshengqiu($winScore, $loseScore, $condNum, $word)
  947. {
  948. if (in_array($condNum, [1, 2, 3])) {
  949. if ($winScore - $loseScore = $condNum) {
  950. return ['result' => 1, 'matchResult' => $word];
  951. } else {
  952. return ['result' => -1, 'matchResult' => $word];
  953. }
  954. }
  955. if ($condNum == 4) {
  956. if ($winScore - $loseScore >= 4) {
  957. return ['result' => 1, 'matchResult' => $word];
  958. } else {
  959. return ['result' => -1, 'matchResult' => $word];
  960. }
  961. }
  962. if ($condNum == 0) {
  963. if ($winScore == 0 && $loseScore == 0) {
  964. return ['result' => 1, 'matchResult' => $word];
  965. } else {
  966. return ['result' => -1, 'matchResult' => $word];
  967. }
  968. }
  969. if ($condNum == 99) {
  970. if ($winScore > 0 && $winScore == $loseScore) {
  971. return ['result' => 1, 'matchResult' => $word];
  972. } else {
  973. return ['result' => -1, 'matchResult' => $word];
  974. }
  975. }
  976. return $this->return_error;
  977. }
  978. /**
  979. * 罚球相关 开始
  980. */
  981. public function penalty_card($model, $resultModels, $result_match_r)
  982. {
  983. $odde_code = $model->odde_code;
  984. $isHalf = strpos(strtolower($odde_code), 'half');
  985. if ($isHalf) {
  986. return $this->penalty_card_half($model, $resultModels, $result_match_r);
  987. } else {
  988. return $this->penalty_card_all($model, $resultModels, $result_match_r);
  989. }
  990. }
  991. public function penalty_card_half($model, $resultModels, $result_match_r)
  992. {
  993. $resultModel = $resultModels['0'];
  994. if ($resultModel->conner_ball == '') {
  995. $game_ret = json_decode(json_encode(['home' => 0, 'guest' => 0, 'home_half' => 0, 'guest_half' => 0]));
  996. } else {
  997. $game_ret = json_decode($resultModel->penalty_card);
  998. }
  999. $word = $game_ret->home_half . '-' . $game_ret->guest_half . "(上半场)";
  1000. $returnDatas = ['result' => -1, 'matchResult' => $word];
  1001. $odds_code = $model->odds_code;
  1002. switch ($odds_code) {
  1003. case "penalty_half_concede_home":
  1004. $returnDatas = $this->zq_letball($game_ret->home_half - $game_ret->guest_half, $model->condition, $word);
  1005. break;
  1006. case "penalty_half_concede_guest":
  1007. $returnDatas = $this->zq_letball($game_ret->guest_half - $game_ret->home_half, $model->condition, $word);
  1008. break;
  1009. case "penalty_half_goal_size_home":
  1010. $returnDatas = $this->zq_inball_bigsmall($game_ret->home_half - $game_ret->guest_half, $model->condition, 2, $word);
  1011. break;
  1012. case "penalty_half_goal_size_guest":
  1013. $returnDatas = $this->zq_inball_bigsmall($game_ret->guest_half - $game_ret->home_half, $model->condition, 1, $word);
  1014. break;
  1015. case "penalty_half_capot_home":
  1016. $returnDatas = $this->zq_duyingv2(1, 1, $resultModel, $word);
  1017. break;
  1018. case "penalty_half_capot_guest":
  1019. $returnDatas = $this->zq_duyingv2(2, 1, $resultModel, $word);
  1020. break;
  1021. case "penalty_half_capot_dogfall":
  1022. $returnDatas['result'] = ($game_ret->home_half == $game_ret->guest_half) ? 1 : -1;
  1023. break;
  1024. case "penalty_half_two_sides_single":
  1025. $returnDatas = $this->zq_doublesing($game_ret->home_half + $game_ret->guest_half, $model->condition, $word);
  1026. break;
  1027. case "penalty_half_two_sides_double":
  1028. $returnDatas = $this->zq_doublesing($game_ret->home_half + $game_ret->guest_half, $model->condition, $word);
  1029. break;
  1030. default:
  1031. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  1032. }
  1033. return $returnDatas;
  1034. }
  1035. public function penalty_card_all($model, $resultModels, $result_match_r)
  1036. {
  1037. $resultModel = $resultModels['0'];
  1038. if ($resultModel->conner_ball == '') {
  1039. $game_ret = json_decode(json_encode(['home' => 0, 'guest' => 0, 'home_half' => 0, 'guest_half' => 0]));
  1040. } else {
  1041. $game_ret = json_decode($resultModel->penalty_card);
  1042. }
  1043. $word = $game_ret->home . '-' . $game_ret->guest . "(全场)";
  1044. $returnDatas = ['result' => -1, 'matchResult' => $word];
  1045. $odds_code = $model->odds_code;
  1046. switch ($odds_code) {
  1047. case "penalty_concede_home":
  1048. $returnDatas = $this->zq_letball($game_ret->home - $game_ret->guest, $model->condition, $word);
  1049. break;
  1050. case "penalty_concede_guest":
  1051. $returnDatas = $this->zq_letball($game_ret->guest - $game_ret->home, $model->condition, $word);
  1052. break;
  1053. case "penalty_goal_size_home":
  1054. $returnDatas = $this->zq_inball_bigsmall($game_ret->home - $game_ret->guest, $model->condition, 2, $word);
  1055. break;
  1056. case "penalty_goal_size_guest":
  1057. $returnDatas = $this->zq_inball_bigsmall($game_ret->guest - $game_ret->home, $model->condition, 1, $word);
  1058. break;
  1059. case "penalty_capot_home":
  1060. $returnDatas = $this->zq_duyingv2(1, 4, $resultModel, $word);
  1061. break;
  1062. case "penalty_capot_guest":
  1063. $returnDatas = $this->zq_duyingv2(2, 4, $resultModel, $word);
  1064. break;
  1065. case "penalty_capot_dogfall":
  1066. $returnDatas['result'] = ($game_ret->home == $game_ret->guest) ? 1 : -1;
  1067. break;
  1068. case "penalty_two_sides_single":
  1069. $returnDatas = $this->zq_doublesing($game_ret->home + $game_ret->guest, $model->condition, $word);
  1070. break;
  1071. case "penalty_two_sides_double":
  1072. $returnDatas = $this->zq_doublesing($game_ret->home + $game_ret->guest, $model->condition, $word);
  1073. break;
  1074. default:
  1075. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  1076. }
  1077. return $returnDatas;
  1078. }
  1079. /**
  1080. * 发球相关 结束
  1081. */
  1082. /*
  1083. * 双重机会
  1084. * User: Tank
  1085. * Date: 2019/6/28
  1086. * Time: 10:19
  1087. */
  1088. public function sw_DC($bet_match='', $result_match=[], $result_match_r=[]){
  1089. if (empty($bet_match) || empty($result_match)) return false;
  1090. $result_match = $result_match['0'];
  1091. //获取父/子级赔率代码
  1092. $p_code = $bet_match->p_code;
  1093. $odds_code = $bet_match->odds_code;
  1094. //获取主客队全场得分
  1095. $full_home_score = $result_match->home_score;
  1096. $full_guest_score = $result_match->guest_score;
  1097. //双重机会
  1098. if ($p_code != 'sw_DC') return false;
  1099. //返回结果
  1100. $data = [
  1101. 'result' => 1,
  1102. 'matchResult' => "$full_home_score-$full_guest_score(全场)"
  1103. ];
  1104. switch ($odds_code) {
  1105. case 'ior_DCHN':// 主队/和局
  1106. if ($full_home_score > $full_guest_score || $full_home_score == $full_guest_score) return $data;
  1107. break;
  1108. case 'ior_DCCN':// 客队/和局
  1109. if ($full_home_score < $full_guest_score || $full_home_score == $full_guest_score) return $data;
  1110. break;
  1111. case 'ior_DCHC':// 主队/客队
  1112. if ($full_home_score > $full_guest_score || $full_home_score < $full_guest_score) return $data;
  1113. break;
  1114. default:
  1115. return false;
  1116. }
  1117. $data['result'] = -1;
  1118. return $data;
  1119. }
  1120. /*
  1121. * 三项让球投注
  1122. * User: Tank
  1123. * Date: 2019/6/28
  1124. * Time: 10:19
  1125. */
  1126. public function sw_W3($bet_match='', $result_match='', $result_match_r=[]){
  1127. if (empty($bet_match) || empty($result_match)) return false;
  1128. $result_match = $result_match['0'];
  1129. //获取父/子级赔率代码
  1130. $p_code = $bet_match->p_code;
  1131. $odds_code = $bet_match->odds_code;
  1132. //获取主客队全场比分
  1133. $full_home_score = $result_match->home_score;
  1134. $full_guest_score = $result_match->guest_score;
  1135. //三项让球投注
  1136. if ($p_code != 'sw_W3') return false;
  1137. //返回结果
  1138. $data = [
  1139. 'result' => 1,
  1140. 'matchResult' => "$full_home_score-$full_guest_score(全场)"
  1141. ];
  1142. switch ($odds_code) {
  1143. case 'ior_W3H':// 让球|主队 +1
  1144. //如果 主队-客队 比分 > 1,则 赢
  1145. if (($full_home_score - $full_guest_score) > 1) return $data;
  1146. $data['result'] = 2;
  1147. //如果 主队-客队 比分 = 1,则 平
  1148. if (($full_home_score - $full_guest_score) == 1) return $data;
  1149. break;
  1150. case 'ior_W3C':// 让球|客队 -1
  1151. $data['result'] = 2;
  1152. //如果 主队-客队 比分 = 1,则 平
  1153. if (($full_home_score - $full_guest_score) == 1) return $data;
  1154. break;
  1155. case 'ior_W3N':// 让球|和局 +1
  1156. //如果 主队-客队 比分 = 1,则 赢
  1157. if (($full_home_score - $full_guest_score) == 1) return $data;
  1158. break;
  1159. default:
  1160. return false;
  1161. }
  1162. $data['result'] = -1;
  1163. return $data;
  1164. }
  1165. /*
  1166. * 零失球
  1167. * User: Tank
  1168. * Date: 2019/6/28
  1169. * Time: 10:19
  1170. */
  1171. public function sw_CS($bet_match='', $result_match='', $result_match_r=[]){
  1172. if (empty($bet_match) || empty($result_match)) return false;
  1173. $result_match = $result_match['0'];
  1174. //获取父/子级赔率代码
  1175. $p_code = $bet_match->p_code;
  1176. $odds_code = $bet_match->odds_code;
  1177. //获取主客队全场比分
  1178. $full_home_score = $result_match->home_score;
  1179. $full_guest_score = $result_match->guest_score;
  1180. //零失球
  1181. if ($p_code != 'sw_CS') return false;
  1182. //返回结果
  1183. $data = [
  1184. 'result' => 1,
  1185. 'matchResult' => "$full_home_score-$full_guest_score(全场)"
  1186. ];
  1187. switch ($odds_code) {
  1188. case 'ior_CSH':// 零失球|主队
  1189. //客队 比分 为 0
  1190. if ($full_guest_score == 0) return $data;
  1191. break;
  1192. case 'ior_CSC':// 零失球|客队
  1193. //主队 比分 为 0
  1194. if ($full_home_score == 0) return $data;
  1195. break;
  1196. default:
  1197. return false;
  1198. }
  1199. $data['result'] = -1;
  1200. return $data;
  1201. }
  1202. /*
  1203. * 零失球获胜
  1204. * User: Tank
  1205. * Date: 2019/6/28
  1206. * Time: 10:19
  1207. */
  1208. public function sw_WN($bet_match='', $result_match='', $result_match_r=[]){
  1209. if (empty($bet_match) || empty($result_match)) return false;
  1210. $result_match = $result_match['0'];
  1211. //获取父/子级赔率代码
  1212. $p_code = $bet_match->p_code;
  1213. $odds_code = $bet_match->odds_code;
  1214. //获取主客队全场比分
  1215. $full_home_score = $result_match->home_score;
  1216. $full_guest_score = $result_match->guest_score;
  1217. //零失球
  1218. if ($p_code != 'sw_WN') return false;
  1219. //返回结果
  1220. $data = [
  1221. 'result' => 1,
  1222. 'matchResult' => "$full_home_score-$full_guest_score(全场)"
  1223. ];
  1224. switch ($odds_code) {
  1225. case 'ior_WNH':// 零失球获胜|主队
  1226. //客队 比分 为 0 并且 主队 大于 客队
  1227. if ($full_home_score > $full_guest_score and $full_guest_score == 0) return $data;
  1228. break;
  1229. case 'ior_WNC':// 零失球获胜|客队
  1230. //主队 比分 为 0 并且 客队 大于 主队
  1231. if ($full_home_score < $full_guest_score || $full_home_score == 0) return $data;
  1232. break;
  1233. default:
  1234. return false;
  1235. }
  1236. $data['result'] = -1;
  1237. return $data;
  1238. }
  1239. /*
  1240. * 赢得所有半场
  1241. * User: Tank
  1242. * Date: 2019/6/28
  1243. * Time: 10:19
  1244. */
  1245. public function sw_WB($bet_match='', $result_match='', $result_match_r=[]){
  1246. if (empty($bet_match) || empty($result_match)) return false;
  1247. $result_match = $result_match['0'];
  1248. //获取父/子级赔率代码
  1249. $p_code = $bet_match->p_code;
  1250. $odds_code = $bet_match->odds_code;
  1251. //获取主客队全场比分
  1252. $full_home_score = $result_match->home_score;
  1253. $full_guest_score = $result_match->guest_score;
  1254. //获取主客队上半场得分
  1255. $half_home_score = $result_match->u_home_score;
  1256. $half_guest_score = $result_match->u_guest_score;
  1257. //赢得所有半场
  1258. if ($p_code != 'sw_WB') return false;
  1259. //返回结果
  1260. $data = [
  1261. 'result' => 1,
  1262. 'matchResult' => "$full_home_score-$full_guest_score(全场)"
  1263. ];
  1264. switch ($odds_code) {
  1265. case 'ior_WBH':// 赢得所有半场|主队
  1266. //上半场/下半场 都满足 主队 > 客队
  1267. if (($full_home_score - $half_home_score) > ($full_guest_score - $half_guest_score) and $half_home_score > $half_guest_score) return $data;
  1268. break;
  1269. case 'ior_WBC':// 赢得所有半场|客队
  1270. //上半场/下半场 都满足 主队 < 客队
  1271. if (($full_home_score - $half_home_score) < ($full_guest_score - $half_guest_score) and $half_home_score < $half_guest_score) return $data;
  1272. break;
  1273. default:
  1274. return false;
  1275. }
  1276. $data['result'] = -1;
  1277. return $data;
  1278. }
  1279. /*
  1280. * 赢得任一半场
  1281. * User: Tank
  1282. * Date: 2019/6/28
  1283. * Time: 10:19
  1284. */
  1285. public function sw_WE($bet_match='', $result_match='', $result_match_r=[]){
  1286. if (empty($bet_match) || empty($result_match)) return false;
  1287. $result_match = $result_match['0'];
  1288. //获取父/子级赔率代码
  1289. $p_code = $bet_match->p_code;
  1290. $odds_code = $bet_match->odds_code;
  1291. //获取主客队全场比分
  1292. $full_home_score = $result_match->home_score;
  1293. $full_guest_score = $result_match->guest_score;
  1294. //获取主客队上半场得分
  1295. $half_home_score = $result_match->u_home_score;
  1296. $half_guest_score = $result_match->u_guest_score;
  1297. //赢得任一半场
  1298. if ($p_code != 'sw_WE') return false;
  1299. //返回结果
  1300. $data = [
  1301. 'result' => 1,
  1302. 'matchResult' => "$full_home_score-$full_guest_score(全场)"
  1303. ];
  1304. switch ($odds_code) {
  1305. case 'ior_WEH':// 赢得任一半场|主队
  1306. //上半场/下半场 任一满足 主队 > 客队
  1307. if (($full_home_score - $half_home_score) > ($full_guest_score - $half_guest_score) || $half_home_score > $half_guest_score) return $data;
  1308. break;
  1309. case 'ior_WEC':// 赢得任一半场|客队
  1310. //上半场/下半场 任一满足 主队 < 客队
  1311. if (($full_home_score - $half_home_score) < ($full_guest_score - $half_guest_score) || $half_home_score < $half_guest_score) return $data;
  1312. break;
  1313. default:
  1314. return false;
  1315. }
  1316. $data['result'] = -1;
  1317. return $data;
  1318. }
  1319. /*
  1320. * 双半场进球
  1321. * User: Tank
  1322. * Date: 2019/6/28
  1323. * Time: 10:19
  1324. */
  1325. public function sw_SB($bet_match='', $result_match='', $result_match_r=[]){
  1326. if (empty($bet_match) || empty($result_match)) return false;
  1327. $result_match = $result_match['0'];
  1328. //获取父/子级赔率代码
  1329. $p_code = $bet_match->p_code;
  1330. $odds_code = $bet_match->odds_code;
  1331. //获取主客队全场比分
  1332. $full_home_score = $result_match->home_score;
  1333. $full_guest_score = $result_match->guest_score;
  1334. //获取主客队上半场得分
  1335. $half_home_score = $result_match->u_home_score;
  1336. $half_guest_score = $result_match->u_guest_score;
  1337. //双半场进球
  1338. if ($p_code != 'sw_SB') return false;
  1339. //返回结果
  1340. $data = [
  1341. 'result' => 1,
  1342. 'matchResult' => "$full_home_score-$full_guest_score(全场)"
  1343. ];
  1344. switch ($odds_code) {
  1345. case 'ior_SBH':// 双半场进球|主队
  1346. //上半场/下半场 主队都有 进球
  1347. if (($full_home_score - $half_home_score) > 0 and $half_home_score > 0) return $data;
  1348. break;
  1349. case 'ior_SBC':// 双半场进球|客队
  1350. //上半场/下半场 客队都有 进球
  1351. if (($full_guest_score - $half_guest_score) > 0 and $half_guest_score > 0) return $data;
  1352. break;
  1353. default:
  1354. return false;
  1355. }
  1356. $data['result'] = -1;
  1357. return $data;
  1358. }
  1359. /*
  1360. * 最多进球半场
  1361. * User: Tank
  1362. * Date: 2019/6/28
  1363. * Time: 10:19
  1364. */
  1365. public function sw_HG($bet_match='', $result_match='', $result_match_r=[]){
  1366. if (empty($bet_match) || empty($result_match)) return false;
  1367. $result_match = $result_match['0'];
  1368. //获取父/子级赔率代码
  1369. $p_code = $bet_match->p_code;
  1370. $odds_code = $bet_match->odds_code;
  1371. //获取主客队全场比分
  1372. $full_home_score = $result_match->home_score;
  1373. $full_guest_score = $result_match->guest_score;
  1374. //获取主客队上半场得分
  1375. $half_home_score = $result_match->u_home_score;
  1376. $half_guest_score = $result_match->u_guest_score;
  1377. //获取下半场得分
  1378. $lower_home_score = $full_home_score - $half_home_score;
  1379. $lower_guest_score = $half_guest_score - $half_guest_score;
  1380. //最多进球半场
  1381. if ($p_code != 'sw_HG') return false;
  1382. //返回结果
  1383. $data = [
  1384. 'result' => 1,
  1385. 'matchResult' => "$full_home_score-$full_guest_score(全场)"
  1386. ];
  1387. switch ($odds_code) {
  1388. case 'ior_HGH':// 最多进球半场|上半场
  1389. //主队+客队上半场 > 主队+客队下半场
  1390. if (($half_home_score+$half_guest_score) > ($lower_home_score+$lower_guest_score)) return $data;
  1391. break;
  1392. case 'ior_HGC':// 最多进球半场|下半场
  1393. //主队+客队上半场 < 主队+客队下半场
  1394. if (($half_home_score+$half_guest_score) < ($lower_home_score+$lower_guest_score)) return $data;
  1395. break;
  1396. default:
  1397. return false;
  1398. }
  1399. $data['result'] = -1;
  1400. return $data;
  1401. }
  1402. /*
  1403. * 最多进球半场-独赢
  1404. * User: Tank
  1405. * Date: 2019/6/28
  1406. * Time: 10:19
  1407. */
  1408. public function sw_MG($bet_match='', $result_match='', $result_match_r=[]){
  1409. if (empty($bet_match) || empty($result_match)) return false;
  1410. $result_match = $result_match['0'];
  1411. //获取父/子级赔率代码
  1412. $p_code = $bet_match->p_code;
  1413. $odds_code = $bet_match->odds_code;
  1414. //获取主客队全场比分
  1415. $full_home_score = $result_match->home_score;
  1416. $full_guest_score = $result_match->guest_score;
  1417. //获取主客队上半场得分
  1418. $half_home_score = $result_match->u_home_score;
  1419. $half_guest_score = $result_match->u_guest_score;
  1420. //获取下半场得分
  1421. $lower_home_score = $full_home_score - $half_home_score;
  1422. $lower_guest_score = $half_guest_score - $half_guest_score;
  1423. //最多进球半场-独赢
  1424. if ($p_code != 'sw_MG') return false;
  1425. //返回结果
  1426. $data = [
  1427. 'result' => 1,
  1428. 'matchResult' => "$full_home_score-$full_guest_score(全场)"
  1429. ];
  1430. switch ($odds_code) {
  1431. case 'ior_MGH':// 最多进球半场-独赢|上半场
  1432. //主队+客队上半场 > 主队+客队下半场 and 主队 独赢
  1433. if (($half_home_score+$half_guest_score) > ($lower_home_score+$lower_guest_score) and $full_home_score > $full_guest_score) return $data;
  1434. break;
  1435. case 'ior_MGC':// 最多进球半场-独赢|下半场
  1436. //主队+客队上半场 < 主队+客队下半场 and 主队 独赢
  1437. if (($half_home_score+$half_guest_score) < ($lower_home_score+$lower_guest_score) and $full_home_score > $full_guest_score) return $data;
  1438. break;
  1439. case 'ior_MGN':// 最多进球半场-独赢|和局
  1440. //全场主队 == 全场客队
  1441. if ($full_home_score == $full_guest_score) return $data;
  1442. break;
  1443. default:
  1444. return false;
  1445. }
  1446. $data['result'] = -1;
  1447. return $data;
  1448. }
  1449. /*
  1450. * 首个进球时间
  1451. * User: Tank
  1452. * Date: 2019/6/28
  1453. * Time: 10:19
  1454. */
  1455. public function sw_T1G($bet_match='', $result_match='', $result_match_r=[]){
  1456. if (empty($bet_match) || empty($result_match)) return false;
  1457. $result_match = $result_match['0'];
  1458. //获取父/子级赔率代码
  1459. $p_code = $bet_match->p_code;
  1460. $odds_code = $bet_match->odds_code;
  1461. //获取 首进球 时间
  1462. $first_score = json_decode($result_match->first_score, true);
  1463. $first_time_int = $first_score['scoretime'];//$result_match;//{"teamscore":0,"scoretime":0,"scoretype":0}
  1464. // $first_time_int = 0;
  1465. // if($first_time_str) {
  1466. // $first_time_int = (int)substr($first_time_str,0,strpos($first_time_str, ':'));
  1467. // }
  1468. //首个进球时间
  1469. if ($p_code != 'sw_T1G') return false;
  1470. //返回结果
  1471. $data = [
  1472. 'result' => 1,
  1473. 'matchResult' => "$first_time_int(首进球时间)"
  1474. ];
  1475. switch ($odds_code) {
  1476. case 'ior_T1G1'://上半场开场-14:59分钟
  1477. if($first_time_int < 15) return $data;
  1478. break;
  1479. case 'ior_T1G2'://15:00分钟-29:59分钟
  1480. if(15 <= $first_time_int and $first_time_int < 30) return $data;
  1481. break;
  1482. case 'ior_T1G3'://30:00分钟-半场
  1483. if(30 <= $first_time_int and $first_time_int < 45) return $data;
  1484. break;
  1485. case 'ior_T1G4'://下半场开场-59:59分钟
  1486. if(45 <= $first_time_int and $first_time_int < 60) return $data;
  1487. break;
  1488. case 'ior_T1G5'://60:00分钟-74:59分钟
  1489. if(60 <= $first_time_int and $first_time_int < 75) return $data;
  1490. break;
  1491. case 'ior_T1G6'://75:00分钟-全场完场
  1492. if(75 <= $first_time_int and $first_time_int < 90) return $data;
  1493. break;
  1494. case 'ior_T1GN'://无进球
  1495. $data['matchResult'] = '没有进球';
  1496. if($first_time_int == 0) return $data;
  1497. break;
  1498. default:
  1499. return false;
  1500. }
  1501. $data['result'] = -1;
  1502. return $data;
  1503. }
  1504. /*
  1505. * 首个进球时间-3项
  1506. * User: Tank
  1507. * Date: 2019/6/28
  1508. * Time: 10:19
  1509. */
  1510. public function sw_T3G($bet_match='', $result_match='', $result_match_r=[]){
  1511. if (empty($bet_match) || empty($result_match)) return false;
  1512. $result_match = $result_match['0'];
  1513. //获取父/子级赔率代码
  1514. $p_code = $bet_match->p_code;
  1515. $odds_code = $bet_match->odds_code;
  1516. //获取 首进球 时间
  1517. $first_score = json_decode($result_match->first_score, true);
  1518. $first_time_int = $first_score['scoretime'];//$result_match;//{"teamscore":0,"scoretime":0,"scoretype":0}
  1519. // $first_time_int = 0;
  1520. // if($first_time_str) {
  1521. // $first_time_int = (int)substr($first_time_str,0,strpos($first_time_str, ':'));
  1522. // }
  1523. //首个进球时间-3项
  1524. if ($p_code != 'sw_T3G') return false;
  1525. //返回结果
  1526. $data = [
  1527. 'result' => 1,
  1528. 'matchResult' => "$first_time_int(首进球时间)"
  1529. ];
  1530. switch ($odds_code) {
  1531. case 'ior_T3G1'://第26分钟或之前
  1532. if($first_time_int <= 26) return $data;
  1533. break;
  1534. case 'ior_T3G2'://第27分钟或之后
  1535. if(27 <= $first_time_int) return $data;
  1536. break;
  1537. case 'ior_T1GN'://无进球
  1538. $data['matchResult'] = '没有进球';
  1539. if($first_time_int == 0) return $data;
  1540. break;
  1541. default:
  1542. return false;
  1543. }
  1544. $data['result'] = -1;
  1545. return $data;
  1546. }
  1547. /**
  1548. * 双方球队进球
  1549. * @param mixed $model 注单表数据
  1550. * @param mixed $resultModels 结果表数据
  1551. * @param mixed $resultRecords 结果记录表数据
  1552. * model--money_buy_match resultModels--st_zq_result resultRecords--st_zq_result_record
  1553. * @return string jimy start
  1554. */
  1555. public function sw_TS($model, $resultModels, $resultRecords)
  1556. {
  1557. $resultModel = $resultModels['0'];
  1558. $allword = $resultModel->home_score . '-' . $resultModel->guest_score . "(全场)";
  1559. $hlefword = $resultModel->u_home_score . '-' . $resultModel->u_guest_score . "(上半场)";
  1560. $odds_code = $model->odds_code;
  1561. switch ($odds_code) {
  1562. case "ior_TSY":
  1563. $returnDatas = $this->isgoal($resultModel, $model, ior_TSY, $allword);
  1564. break;
  1565. case "ior_TSN":
  1566. $returnDatas = $this->isgoal($resultModel, $model, ior_TSN, $allword);
  1567. break;
  1568. case "ior_HTSY":
  1569. $returnDatas = $this->isgoal($resultModel, $model, ior_HTSY, $hlefword);
  1570. break;
  1571. case "ior_HTSN":
  1572. $returnDatas = $this->isgoal($resultModel, $model, ior_HTSN, $hlefword);
  1573. break;
  1574. default:
  1575. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  1576. }
  1577. return $returnDatas;
  1578. }
  1579. /**
  1580. * 独赢&进球大小
  1581. * @param mixed $model 注单表数据
  1582. * @param mixed $resultModels 结果表数据
  1583. * @param mixed $resultRecords 结果记录表数据
  1584. * model--money_buy_match resultModels--st_zq_result resultRecords--st_zq_result_record
  1585. * @return string
  1586. * 注:大1.5|和局 主队-客队大于1.5 并且为和局 小1.5|和局 主队-客队小于1.5 并且为和局
  1587. */
  1588. public function sw_MOU($model, $resultModels, $resultRecords)
  1589. {
  1590. $resultModel = $resultModels['0'];
  1591. $allword = $resultModel->home_score . '-' . $resultModel->guest_score . "(主队全场-客队全场)";
  1592. $odds_code = $model->odds_code;
  1593. switch ($odds_code) {
  1594. case "ior_MOUAHO":
  1595. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUAHO, $allword);
  1596. break;
  1597. case "ior_MOUAHU":
  1598. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUAHU, $allword);
  1599. break;
  1600. case "ior_MOUACO":
  1601. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUACO, $allword);
  1602. break;
  1603. case "ior_MOUACU":
  1604. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUACU, $allword);
  1605. break;
  1606. case "ior_MOUANO":
  1607. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUANO, $allword);
  1608. break;
  1609. case "ior_MOUANU":
  1610. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUANU, $allword);
  1611. break;
  1612. case "ior_MOUBHO":
  1613. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUBHO, $allword);
  1614. break;
  1615. case "ior_MOUBHU":
  1616. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUBHU, $allword);
  1617. break;
  1618. case "ior_MOUBCO":
  1619. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUBCO, $allword);
  1620. break;
  1621. case "ior_MOUBCU":
  1622. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUBCU, $allword);
  1623. break;
  1624. case "ior_MOUBNO":
  1625. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUBNO, $allword);
  1626. break;
  1627. case "ior_MOUBNU":
  1628. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUBNU, $allword);
  1629. break;
  1630. case "ior_MOUCHO":
  1631. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUCHO, $allword);
  1632. break;
  1633. case "ior_MOUCHU":
  1634. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUCHU, $allword);
  1635. break;
  1636. case "ior_MOUCCO":
  1637. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUCCO, $allword);
  1638. break;
  1639. case "ior_MOUCCU":
  1640. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUCCU, $allword);
  1641. break;
  1642. case "ior_MOUCNO":
  1643. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUCNO, $allword);
  1644. break;
  1645. case "ior_MOUCNU":
  1646. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUCNU, $allword);
  1647. break;
  1648. case "ior_MOUDHO":
  1649. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUDHO, $allword);
  1650. break;
  1651. case "ior_MOUDHU":
  1652. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUDHU, $allword);
  1653. break;
  1654. case "ior_MOUDCO":
  1655. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUDCO, $allword);
  1656. break;
  1657. case "ior_MOUDCU":
  1658. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUDCU, $allword);
  1659. break;
  1660. case "ior_MOUDNO":
  1661. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUDNO, $allword);
  1662. break;
  1663. case "ior_MOUDNU":
  1664. $returnDatas = $this->isonlysize($resultModel, $model, ior_MOUDNU, $allword);
  1665. break;
  1666. default:
  1667. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  1668. }
  1669. return $returnDatas;
  1670. }
  1671. /**
  1672. * 独赢&双方球队进球
  1673. * @param mixed $model 注单表数据
  1674. * @param mixed $resultModels 结果表数据
  1675. * @param mixed $resultRecords 结果记录表数据
  1676. * model--money_buy_match resultModels--st_zq_result resultRecords--st_zq_result_record
  1677. * @return string
  1678. */
  1679. public function sw_MTS($model, $resultModels, $resultRecords)
  1680. {
  1681. $resultModel = $resultModels['0'];
  1682. $homeword = $resultModel->home_score . "(主队全场)";
  1683. $guestword = $resultModel->guest_score . "(客队全场)";
  1684. $allword = $resultModel->home_score . '-' . $resultModel->guest_score . "(全场)";
  1685. $odds_code = $model->odds_code;
  1686. switch ($odds_code) {
  1687. case "ior_MTSHY":
  1688. $returnDatas = $this->ishvgoal($resultModel, $model, ior_MTSHY, $homeword);
  1689. break;
  1690. case "ior_MTSHN":
  1691. $returnDatas = $this->ishvgoal($resultModel, $model, ior_MTSHN, $homeword);
  1692. break;
  1693. case "ior_MTSCY":
  1694. $returnDatas = $this->ishvgoal($resultModel, $model, ior_MTSCY, $guestword);
  1695. break;
  1696. case "ior_MTSCN":
  1697. $returnDatas = $this->ishvgoal($resultModel, $model, ior_MTSCN, $guestword);
  1698. break;
  1699. case "ior_MTSNY":
  1700. $returnDatas = $this->ishvgoal($resultModel, $model, ior_MTSNY, $allword);
  1701. break;
  1702. case "ior_MTSNN":
  1703. $returnDatas = $this->ishvgoal($resultModel, $model, ior_MTSNN, $allword);
  1704. break;
  1705. default:
  1706. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  1707. }
  1708. return $returnDatas;
  1709. }
  1710. /**
  1711. * 进球大/小&双方球队进球
  1712. * @param mixed $model 注单表数据
  1713. * @param mixed $resultModels 结果表数据
  1714. * @param mixed $resultRecords 结果记录表数据
  1715. * model--money_buy_match resultModels--st_zq_result resultRecords--st_zq_result_record
  1716. * @return string
  1717. */
  1718. public function sw_OUT($model, $resultModels, $resultRecords)
  1719. {
  1720. $resultModel = $resultModels['0'];
  1721. $homeword = $resultModel->home_score . "(主队全场)";
  1722. $guestword = $resultModel->guest_score . "(客队全场)";
  1723. $allword = $resultModel->home_score . '-' . $resultModel->guest_score . "(全场)";
  1724. $odds_code = $model->odds_code;
  1725. switch ($odds_code) {
  1726. case "ior_OUTAOY":
  1727. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTAOY, $homeword);
  1728. break;
  1729. case "ior_OUTAON":
  1730. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTAON, $homeword);
  1731. break;
  1732. case "ior_OUTAUY":
  1733. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTAUY, $guestword);
  1734. break;
  1735. case "ior_OUTAUN":
  1736. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTAUN, $guestword);
  1737. break;
  1738. case "ior_OUTBOY":
  1739. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTBOY, $allword);
  1740. break;
  1741. case "ior_OUTBON":
  1742. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTBON, $allword);
  1743. break;
  1744. case "ior_OUTBUY":
  1745. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTBUY, $homeword);
  1746. break;
  1747. case "ior_OUTBUN":
  1748. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTBUN, $homeword);
  1749. break;
  1750. case "ior_OUTCOY":
  1751. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTCOY, $guestword);
  1752. break;
  1753. case "ior_OUTCON":
  1754. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTCON, $guestword);
  1755. break;
  1756. case "ior_OUTCUY":
  1757. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTCUY, $allword);
  1758. break;
  1759. case "ior_OUTCUN":
  1760. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTCUN, $allword);
  1761. break;
  1762. case "ior_OUTDOY":
  1763. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTDOY, $homeword);
  1764. break;
  1765. case "ior_OUTDON":
  1766. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTDON, $homeword);
  1767. break;
  1768. case "ior_OUTDUY":
  1769. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTDUY, $guestword);
  1770. break;
  1771. case "ior_OUTDUN":
  1772. $returnDatas = $this->goalsize($resultModel, $model, ior_OUTDUN, $guestword);
  1773. break;
  1774. default:
  1775. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  1776. }
  1777. }
  1778. /**
  1779. * 独赢 & 最先进球
  1780. * @param mixed $model 注单表数据
  1781. * @param mixed $resultModels 结果表数据
  1782. * @param mixed $resultRecords 结果记录表数据
  1783. * model--money_buy_match resultModels--st_zq_result resultRecords--st_zq_result_record
  1784. * @return string ???
  1785. */
  1786. public function sw_MPG($model, $resultModels, $resultRecords)
  1787. {
  1788. $resultModel = $resultModels['0'];
  1789. $allword = array(
  1790. 'score' => $resultModel->home_score . '-' . $resultModel->guest_score . "(全场)",
  1791. 'one_score' => $resultModel->first_score,//首进球
  1792. );
  1793. $odds_code = $model->odds_code;
  1794. switch ($odds_code) {
  1795. case "ior_MPGHH":
  1796. $returnDatas = $this->firstball($resultModel, $model, ior_MPGHH, $allword);
  1797. break;
  1798. case "ior_MPGHC":
  1799. $returnDatas = $this->firstball($resultModel, $model, ior_MPGHC, $allword);
  1800. break;
  1801. case "ior_MPGCH":
  1802. $returnDatas = $this->firstball($resultModel, $model, ior_MPGCH, $allword);
  1803. break;
  1804. case "ior_MPGCC":
  1805. $returnDatas = $this->firstball($resultModel, $model, ior_MPGCC, $allword);
  1806. break;
  1807. case "ior_MPGNH":
  1808. $returnDatas = $this->firstball($resultModel, $model, ior_MPGNH, $allword);
  1809. break;
  1810. case "ior_MPGNC":
  1811. $returnDatas = $this->firstball($resultModel, $model, ior_MPGNC, $allword);
  1812. break;
  1813. // case "ior_F2GH":
  1814. // $returnDatas = $this->firstball($resultModel, $model, ior_F2GH, $allword);
  1815. // break;
  1816. // case "ior_F3GH":
  1817. // $returnDatas = $this->firstball($resultModel, $model, ior_F3GH, $allword);
  1818. // break;
  1819. // case "ior_F3GC":
  1820. // $returnDatas = $this->firstball($resultModel, $model, ior_F3GC, $allword);
  1821. // break;
  1822. default:
  1823. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  1824. }
  1825. }
  1826. /**
  1827. * 首个进球方式
  1828. * @param mixed $model 注单表数据
  1829. * @param mixed $resultModels 结果表数据
  1830. * @param mixed $resultRecords 结果记录表数据
  1831. * model--money_buy_match resultModels--st_zq_result resultRecords--st_zq_result_record
  1832. * @return string
  1833. */
  1834. public function sw_FG($model, $resultModels, $resultRecords)
  1835. {
  1836. $resultModels = $resultModels['0'];
  1837. $word = json_decode($resultModels->first_score,true)['scoretype'] . "(首个进球方式)";
  1838. $odds_code = $model->odds_code;
  1839. switch ($odds_code) {
  1840. case "ior_FGS":
  1841. $returnDatas = $this->onewaygoal($resultModels, $model, ior_FGS, $word);
  1842. break;
  1843. case "ior_FGH":
  1844. $returnDatas = $this->onewaygoal($resultModels, $model, ior_FGH, $word);
  1845. break;
  1846. case "ior_FGN":
  1847. $returnDatas = $this->onewaygoal($resultModels, $model, ior_FGN, $word);
  1848. break;
  1849. case "ior_FGP":
  1850. $returnDatas = $this->onewaygoal($resultModels, $model, ior_FGP, $word);
  1851. break;
  1852. case "ior_FGF":
  1853. $returnDatas = $this->onewaygoal($resultModels, $model, ior_FGF, $word);
  1854. break;
  1855. case "ior_FGO":
  1856. $returnDatas = $this->onewaygoal($resultModels, $model, ior_FGO, $word);
  1857. break;
  1858. default:
  1859. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  1860. }
  1861. }
  1862. /**
  1863. * 双重机会&进球大/小
  1864. * @param mixed $model 注单表数据
  1865. * @param mixed $resultModels 结果表数据
  1866. * @param mixed $resultRecords 结果记录表数据
  1867. * model--money_buy_match resultModels--st_zq_result resultRecords--st_zq_result_record
  1868. * @return string
  1869. */
  1870. public function sw_DU($model, $resultModels, $resultRecords)
  1871. {
  1872. $resultModels = $resultModels['0'];
  1873. $homeword = $resultModels->home_score . "(主队全场)";
  1874. $guestword = $resultModels->guest_score . "(客队全场)";
  1875. $allword = $resultModels->home_score . '-' . $resultModels->guest_score . "(全场)";
  1876. $odds_code = $model->odds_code;
  1877. switch ($odds_code) {
  1878. case "ior_DUAHO":
  1879. $returnDatas = $this->twosize($resultModels, $model, ior_DUAHO, $homeword);
  1880. break;
  1881. case "ior_DUAHU":
  1882. $returnDatas = $this->twosize($resultModels, $model, ior_DUAHU, $homeword);
  1883. break;
  1884. case "ior_DUACO":
  1885. $returnDatas = $this->twosize($resultModels, $model, ior_DUACO, $guestword);
  1886. break;
  1887. case "ior_DUACU":
  1888. $returnDatas = $this->twosize($resultModels, $model, ior_DUACU, $guestword);
  1889. break;
  1890. case "ior_DUASO":
  1891. $returnDatas = $this->twosize($resultModels, $model, ior_DUASO, $allword);
  1892. break;
  1893. case "ior_DUASU":
  1894. $returnDatas = $this->twosize($resultModels, $model, ior_DUASU, $allword);
  1895. break;
  1896. case "ior_DUBHO":
  1897. $returnDatas = $this->twosize($resultModels, $model, ior_DUBHO, $homeword);
  1898. break;
  1899. case "ior_DUBHU":
  1900. $returnDatas = $this->twosize($resultModels, $model, ior_DUBHU, $homeword);
  1901. break;
  1902. case "ior_DUBCO":
  1903. $returnDatas = $this->twosize($resultModels, $model, ior_DUBCO, $guestword);
  1904. break;
  1905. case "ior_DUBCU":
  1906. $returnDatas = $this->twosize($resultModels, $model, ior_DUBCU, $guestword);
  1907. break;
  1908. case "ior_DUBSO":
  1909. $returnDatas = $this->twosize($resultModels, $model, ior_DUBSO, $allword);
  1910. break;
  1911. case "ior_DUBSU":
  1912. $returnDatas = $this->twosize($resultModels, $model, ior_DUBSU, $allword);
  1913. break;
  1914. case "ior_DUCHO":
  1915. $returnDatas = $this->twosize($resultModels, $model, ior_DUCHO, $homeword);
  1916. break;
  1917. case "ior_DUCHU":
  1918. $returnDatas = $this->twosize($resultModels, $model, ior_DUCHU, $homeword);
  1919. break;
  1920. case "ior_DUCCO":
  1921. $returnDatas = $this->twosize($resultModels, $model, ior_DUCCO, $guestword);
  1922. break;
  1923. case "ior_DUCCU":
  1924. $returnDatas = $this->twosize($resultModels, $model, ior_DUCCU, $guestword);
  1925. break;
  1926. case "ior_DUCSO":
  1927. $returnDatas = $this->twosize($resultModels, $model, ior_DUCSO, $allword);
  1928. break;
  1929. case "ior_DUCSU":
  1930. $returnDatas = $this->twosize($resultModels, $model, ior_DUCSU, $allword);
  1931. break;
  1932. case "ior_DUDHO":
  1933. $returnDatas = $this->twosize($resultModels, $model, ior_DUDHO, $homeword);
  1934. break;
  1935. case "ior_DUDHU":
  1936. $returnDatas = $this->twosize($resultModels, $model, ior_DUDHU, $homeword);
  1937. break;
  1938. case "ior_DUDCO":
  1939. $returnDatas = $this->twosize($resultModels, $model, ior_DUDCO, $guestword);
  1940. break;
  1941. case "ior_DUDCU":
  1942. $returnDatas = $this->twosize($resultModels, $model, ior_DUDCU, $guestword);
  1943. break;
  1944. case "ior_DUDSO":
  1945. $returnDatas = $this->twosize($resultModels, $model, ior_DUDSO, $allword);
  1946. break;
  1947. case "ior_DUDSU":
  1948. $returnDatas = $this->twosize($resultModels, $model, ior_DUDSU, $allword);
  1949. break;
  1950. default:
  1951. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  1952. }
  1953. }
  1954. /**
  1955. * 双重机会&双方球队进球
  1956. * @param mixed $model 注单表数据
  1957. * @param mixed $resultModels 结果表数据
  1958. * @param mixed $resultRecords 结果记录表数据
  1959. * model--money_buy_match resultModels--st_zq_result resultRecords--st_zq_result_record
  1960. * @return string
  1961. */
  1962. public function sw_DS($model, $resultModels, $resultRecords)
  1963. {
  1964. $resultModels = $resultModels['0'];
  1965. $homeword = $resultModels->home_score . "(主队全场)";
  1966. $guestword = $resultModels->guest_score . "(客队全场)";
  1967. $allword = $resultModels->home_score . '-' . $resultModels->guest_score . "(全场)";
  1968. $odds_code = $model->odds_code;
  1969. switch ($odds_code) {
  1970. case "ior_DSHY":
  1971. $returnDatas = $this->allgoals($resultModels, $model, ior_DSHY, $allword);
  1972. break;
  1973. case "ior_DSHN":
  1974. $returnDatas = $this->allgoals($resultModels, $model, ior_DSHN, $allword);
  1975. break;
  1976. case "ior_DSCY":
  1977. $returnDatas = $this->allgoals($resultModels, $model, ior_DSCY, $allword);
  1978. break;
  1979. case "ior_DSCN":
  1980. $returnDatas = $this->allgoals($resultModels, $model, ior_DSCN, $allword);
  1981. break;
  1982. case "ior_DSSY":
  1983. $returnDatas = $this->allgoals($resultModels, $model, ior_DSSY, $allword);
  1984. break;
  1985. case "ior_DSSN":
  1986. $returnDatas = $this->allgoals($resultModels, $model, ior_DSSN, $allword);
  1987. break;
  1988. default:
  1989. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  1990. }
  1991. }
  1992. /**
  1993. * 双重机会&最先进球
  1994. * @param mixed $model 注单表数据
  1995. * @param mixed $resultModels 结果表数据
  1996. * @param mixed $resultRecords 结果记录表数据
  1997. * model--money_buy_match resultModels--st_zq_result resultRecords--st_zq_result_record
  1998. * @return string
  1999. */
  2000. public function sw_DG($model, $resultModels, $resultRecords)
  2001. {
  2002. $resultModels = $resultModels['0'];
  2003. $word = array(
  2004. 'home' => $resultModels->home_score . "(主队全场)",
  2005. 'guest' => $resultModels->guest_score . "(客队全场)",
  2006. 'firstscore' => $resultModels->first_score ."(最先进球)",
  2007. );
  2008. $odds_code = $model->odds_code;
  2009. switch ($odds_code) {
  2010. case "ior_DGHH":
  2011. $returnDatas = $this->oneball($resultModels, $model, ior_DGHH, $word);
  2012. break;
  2013. case "ior_DGHC":
  2014. $returnDatas = $this->oneball($resultModels, $model, ior_DGHC, $word);
  2015. break;
  2016. case "ior_DGCH":
  2017. $returnDatas = $this->oneball($resultModels, $model, ior_DGCH, $word);
  2018. break;
  2019. case "ior_DGCC":
  2020. $returnDatas = $this->oneball($resultModels, $model, ior_DGCC, $word);
  2021. break;
  2022. case "ior_DGSH":
  2023. $returnDatas = $this->oneball($resultModels, $model, ior_DGSH, $word);
  2024. break;
  2025. case "ior_DGSC":
  2026. $returnDatas = $this->oneball($resultModels, $model, ior_DGSC, $word);
  2027. break;
  2028. default:
  2029. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  2030. }
  2031. }
  2032. /**
  2033. * 进球大/小&进球单/双
  2034. * @param mixed $model 注单表数据
  2035. * @param mixed $resultModels 结果表数据
  2036. * @param mixed $resultRecords 结果记录表数据
  2037. * model--money_buy_match resultModels--st_zq_result resultRecords--st_zq_result_record
  2038. * @return string
  2039. */
  2040. public function sw_OUE($model, $resultModels, $resultRecords)
  2041. {
  2042. $resultModels = $resultModels['0'];
  2043. $allword = $resultModels->home_score . '-' . $resultModels->guest_score . "(全场)";
  2044. $odds_code = $model->odds_code;
  2045. switch ($odds_code) {
  2046. case "ior_OUEAOO":
  2047. $returnDatas = $this->sizesd($resultModels, $model, ior_OUEAOO, $allword);
  2048. break;
  2049. case "ior_OUEAOE":
  2050. $returnDatas = $this->sizesd($resultModels, $model, ior_OUEAOE, $allword);
  2051. break;
  2052. case "ior_OUEAUO":
  2053. $returnDatas = $this->sizesd($resultModels, $model, ior_OUEAUO, $allword);
  2054. break;
  2055. case "ior_OUEAUE":
  2056. $returnDatas = $this->sizesd($resultModels, $model, ior_OUEAUE, $allword);
  2057. break;
  2058. case "ior_OUEBOO":
  2059. $returnDatas = $this->sizesd($resultModels, $model, ior_OUEBOO, $allword);
  2060. break;
  2061. case "ior_OUEBOE":
  2062. $returnDatas = $this->sizesd($resultModels, $model, ior_OUEBOE, $allword);
  2063. break;
  2064. case "ior_OUEBUO":
  2065. $returnDatas = $this->sizesd($resultModels, $model, ior_OUEBUO, $allword);
  2066. break;
  2067. case "ior_OUEBUE":
  2068. $returnDatas = $this->sizesd($resultModels, $model, ior_OUEBUE, $allword);
  2069. break;
  2070. case "ior_OUECOO":
  2071. $returnDatas = $this->sizesd($resultModels, $model, ior_OUECOO, $allword);
  2072. break;
  2073. case "ior_OUECOE":
  2074. $returnDatas = $this->sizesd($resultModels, $model, ior_OUECOE, $allword);
  2075. break;
  2076. case "ior_OUECUO":
  2077. $returnDatas = $this->sizesd($resultModels, $model, ior_OUECUO, $allword);
  2078. break;
  2079. case "ior_OUECUE":
  2080. $returnDatas = $this->sizesd($resultModels, $model, ior_OUECUE, $allword);
  2081. break;
  2082. case "ior_OUEDOO":
  2083. $returnDatas = $this->sizesd($resultModels, $model, ior_OUEDOO, $allword);
  2084. break;
  2085. case "ior_OUEDOE":
  2086. $returnDatas = $this->sizesd($resultModels, $model, ior_OUEDOE, $allword);
  2087. break;
  2088. case "ior_OUEDUO":
  2089. $returnDatas = $this->sizesd($resultModels, $model, ior_OUEDUO, $allword);
  2090. break;
  2091. case "ior_OUEDUE":
  2092. $returnDatas = $this->sizesd($resultModels, $model, ior_OUEDUE, $allword);
  2093. break;
  2094. default:
  2095. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  2096. }
  2097. }
  2098. /**
  2099. * 进球大/小&最先进球
  2100. * @param mixed $model 注单表数据
  2101. * @param mixed $resultModels 结果表数据
  2102. * @param mixed $resultRecords 结果记录表数据
  2103. * model--money_buy_match resultModels--st_zq_result resultRecords--st_zq_result_record
  2104. * @return string
  2105. */
  2106. public function sw_OUP($model, $resultModels, $resultRecords)
  2107. {
  2108. $resultModels = $resultModels['0'];
  2109. $allword = array(
  2110. 'score' => $resultModels->home_score . '-' . $resultModels->guest_score . "(全场)",
  2111. 'firstscore' => $resultModels->first_score,
  2112. );
  2113. $odds_code = $model->odds_code;
  2114. switch ($odds_code) {
  2115. case "ior_OUPAOH":
  2116. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPAOH, $allword);
  2117. break;
  2118. case "ior_OUPAOC":
  2119. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPAOC, $allword);
  2120. break;
  2121. case "ior_OUPAUH":
  2122. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPAUH, $allword);
  2123. break;
  2124. case "ior_OUPAUC":
  2125. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPAUC, $allword);
  2126. break;
  2127. case "ior_OUPBOH":
  2128. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPBOH, $allword);
  2129. break;
  2130. case "ior_OUPBOC":
  2131. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPBOC, $allword);
  2132. break;
  2133. case "ior_OUPBUH":
  2134. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPBUH, $allword);
  2135. break;
  2136. case "ior_OUPBUC":
  2137. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPBUC, $allword);
  2138. break;
  2139. case "ior_OUPCOH":
  2140. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPCOH, $allword);
  2141. break;
  2142. case "ior_OUPCOC":
  2143. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPCOC, $allword);
  2144. break;
  2145. case "ior_OUPCUH":
  2146. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPCUH, $allword);
  2147. break;
  2148. case "ior_OUPCUC":
  2149. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPCUC, $allword);
  2150. break;
  2151. case "ior_OUPDOH":
  2152. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPDOH, $allword);
  2153. break;
  2154. case "ior_OUPDOC":
  2155. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPDOC, $allword);
  2156. break;
  2157. case "ior_OUPDUH":
  2158. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPDUH, $allword);
  2159. break;
  2160. case "ior_OUPDUC":
  2161. $returnDatas = $this->sizeone($resultModels, $model, ior_OUPDUC, $allword);
  2162. break;
  2163. default:
  2164. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  2165. }
  2166. }
  2167. /**
  2168. * 落后反超获胜
  2169. * @param mixed $model 注单表数据
  2170. * @param mixed $resultModels 结果表数据
  2171. * @param mixed $resultRecords 结果记录表数据
  2172. * model--money_buy_match resultModels--st_zq_result resultRecords--st_zq_result_record
  2173. * @return string jimy end ???
  2174. */
  2175. public function sw_BH($model, $resultModels, $resultRecords)
  2176. {
  2177. $resultModels = $resultModels['0'];
  2178. $homeword = $resultModels->home_score . "(主队全场)";
  2179. $guestword = $resultModels->guest_score . "(客队全场)";
  2180. $allword = $resultModels->home_score . '-' . $resultModels->guest_score . "(全场)";
  2181. $odds_code = $model->odds_code;
  2182. switch ($odds_code) {
  2183. case "ior_BHH":
  2184. $returnDatas = $this->backwardwins($resultModels, $model, ior_BHH, $homeword);
  2185. break;
  2186. case "ior_BHC":
  2187. $returnDatas = $this->backwardwins($resultModels, $model, ior_BHC, $homeword);
  2188. break;
  2189. default:
  2190. $returnDatas = ['result' => 2, 'matchResult' => '(玩法无规则异常)-' . $odds_code];
  2191. }
  2192. }
  2193. }