BqChampionsLeagueController.php 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Jun.peng
  5. * Date: 2019/6/22
  6. * Time: 10:35
  7. */
  8. namespace App\Http\Controllers\Admin;
  9. use App\Http\Controllers\Controller;
  10. use Illuminate\Http\Request as Req;
  11. use Request;
  12. /**
  13. * Class BqChampionsLeagueController
  14. * @package App\Http\Controllers\Admin
  15. * 棒球 冠军联赛 管理
  16. */
  17. class BqChampionsLeagueController extends Controller
  18. {
  19. public function index(Req $req) {
  20. //$request['name_chinese'] = isset($req->name_chinese) ? trim($req->name_chinese) : '-1';
  21. $request['name_chinese'] = isset($req->name_chinese) ? trim($req->name_chinese) : '';
  22. $request['area_id'] = isset($req->area_id) ? trim($req->area_id) : '';
  23. $request['country_id'] = isset($req->country_id) ? trim($req->country_id) : '';
  24. $request['id'] = isset($req->id) ? trim($req->id) : '';
  25. $request['status'] = isset($req->status) ? trim($req->status) : '0';
  26. $request['sureblurs'] = isset($req->sureblurs) ? $req->sureblurs : 'on';
  27. $data = \App\Models\BaseLeague::select('id','lg_id','name_chinese')->get();
  28. $area = \App\Models\StAreaCountry::where('pid',0)->get();
  29. $country = \App\Models\StAreaCountry::where('pid','!=',0)->get();
  30. $request['league'] = $data;
  31. $request['area'] = $area;
  32. $request['country'] = $country;
  33. $dt = \App\Lib\DataTable\DataTable::init();
  34. $dt->setDataSource('/admin/BqChampionsLeague/info');
  35. $dt->setLang('sportsbase');
  36. $dt->addColsFields('lg_id', array('templet' => '#userdetail', 'sort' => true, 'width' => 120));
  37. $dt->addColsFields('name_chinese', array('templet' => '#userdetail', 'sort' => false, 'width' => 200));
  38. $dt->addColsFields('area', array('sort' => false, 'width' => 180));
  39. $dt->addColsFields('country', array('sort' => true, 'width' => 180));
  40. $dt->addColsFields('league_status', array('templet' => '#userdetail', 'sort' => false, 'width' => 90));
  41. $dt->addColsFields('utime', array('templet' => '#userdetail', 'sort' => false, 'width' => 160));
  42. $dt->addColsFields('isresults', array('templet' => '#isresults', 'sort' => false, 'width' => 160));
  43. // if (checkRriv('/admin/BqChampionsLeague/edit')) {
  44. // $arr[] = 'edit';
  45. // }
  46. // $dt->setToolBar($arr, array('width' => 140));
  47. $dt->enableCheckBox();
  48. return view('sports/base_league', $dt->render($request));
  49. }
  50. function info(Req $req) {
  51. $page = Request::has('page') ? Request::get('page') : '';
  52. $list = Request::has('limit') ? Request::get('limit') : 10;
  53. $name_chinese = Request::has('name_chinese') ? Request::get('name_chinese') : '';
  54. $area_id = Request::has('area_id') ? Request::get('area_id') : '';
  55. $country_id = Request::has('country_id') ? Request::get('country_id') : '';
  56. $status = Request::has('status') ? Request::get('status') : '';
  57. $sureblur = Request::has('sureblurs') ? Request::get('sureblurs') : 'off';
  58. $where = array();
  59. $where[] = array('st_bq_odds.type', 1);
  60. if (!empty($name_chinese)) {
  61. if (empty($sureblur) || $sureblur == 'off') {
  62. $where[] = array('st_bq_league.name_chinese', 'like', '%' . $name_chinese . '%');
  63. }else{
  64. $where[] = array('st_bq_league.name_chinese', '=', $name_chinese);
  65. }
  66. }
  67. // if ($name_chinese != -1) {
  68. // $where[] = array('st_bq_league.name_chinese', '=', $name_chinese);
  69. // }
  70. if(!empty($area_id)){
  71. $where[] = array('st_bq_league.area_id', '=', $area_id);
  72. }
  73. if(!empty($country_id)){
  74. $where[] = array('st_bq_league.country_id', '=', $country_id);
  75. }
  76. if($status != 0){
  77. $where[] = array('st_bq_league.status', '=', $status);
  78. }
  79. $newapp = new \App\Models\BaseLeague();
  80. $data = $newapp->get_league_gj_info($list, $page, $where);
  81. $allcount = $newapp->join('st_bq_odds','st_bq_odds.lg_id', '=', 'st_bq_league.id')->where($where)->distinct('st_bq_league.name_chinese')->count('st_bq_league.name_chinese');
  82. return \App\Lib\DataTable\DataTable::init()->toJson($data['data'], $allcount);
  83. }
  84. /**
  85. *获取地区
  86. */
  87. function getarea() {
  88. $area = \App\Models\StAreaCountry::where('pid',0)->get();
  89. return $area;
  90. }
  91. /**
  92. *修改冠军联赛信息
  93. */
  94. function edit(Req $req) {
  95. $id = $req->id;
  96. if (intval($id) < 1) {
  97. return -1;
  98. }
  99. $areas = $this->getarea();
  100. if (!$areas) {
  101. return -2;
  102. }
  103. $data = \App\Models\BaseLeague::where('id',$id)->first();
  104. $areaname = \App\Models\StAreaCountry::where('id',$data->area_id)->first();
  105. $countryname = \App\Models\StAreaCountry::where('id',$data->country_id)->first();
  106. if(!empty($areaname)){
  107. $data->area = $areaname->name;
  108. }
  109. if(!empty($countryname)){
  110. $data->country = $countryname->name;
  111. }
  112. $odds_code = \App\Models\BaseOdds::where('lg_id',$id)->where('type',1)->where('odds_code','!=','')->select('odds_code')->distinct()->get()->toArray();//赔率表
  113. for ($i=0; $i < count($odds_code); $i++) {
  114. $allteam[] = \App\Models\BaseOdds::where('odds_code',$odds_code[$i]['odds_code'])->where('lg_id',$id)->where('type',1)->select('team')->distinct()->get()->toArray();
  115. }
  116. $data = $data->toArray();
  117. $isdisplay = \App\Models\Stbqleagueresult::where(['lg_id'=>$id,'status'=>1])->select("game_name")->distinct()->get()->toArray();
  118. $idisplay = array_column($isdisplay,'game_name');
  119. $displays = implode(",",$idisplay);//转换成字符串
  120. //新增纪录
  121. for($i=0;$i<count($odds_code);$i++){
  122. $name = $odds_code[$i]['odds_code'];
  123. for ($ic=0; $ic < count($allteam[$i]); $ic++) {
  124. $isteam = $allteam[$i][$ic]['team'];
  125. $res = \App\Models\Stbqleagueresult::where(['lg_id'=>$id,'game_name'=>$name])->first();
  126. $addresult = [
  127. 'lg_id' => $id,
  128. 'game_name' => $name,
  129. 'result' => $isteam,
  130. 'ctime' => date('Y-m-d H:i:s',time()),
  131. 'status' => 0,
  132. ];
  133. if(empty($res)){
  134. \App\Models\Stbqleagueresult::insert($addresult);
  135. }
  136. }
  137. }
  138. for ($i=0; $i < count($odds_code); $i++) {
  139. $oddscode = $odds_code[$i]['odds_code'];
  140. $stdisplay[] = \App\Models\Stbqleagueresult::where(['lg_id'=>$id,'game_name'=>$oddscode])->select("id","status")->orderBy('id','desc')->distinct()->get()->toArray();
  141. }
  142. $data['allteam'] = $allteam;
  143. $data['odds_code'] = $odds_code;
  144. $data['displays'] = $displays;
  145. $data['isdisplay'] = $isdisplay;
  146. $data['stdisplay'] = $stdisplay;
  147. return view('sports.base_champions_league_form', $data);
  148. }
  149. //修改状态
  150. function ajaxstatus(Req $req){
  151. $isstatus = $req->isstatus;
  152. $id = $req->id;
  153. \App\Models\Stbqleagueresult::where(['id'=>$id])->update(['status'=>$isstatus]);
  154. return responseToJson(1);
  155. }
  156. }