ZqChampionsLeagueController.php 7.7 KB

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