cd5dd7b2145391f2846f295e7dd89976109ec8d7.svn-base 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707
  1. <template>
  2. <div>
  3. <div class="serch row item-center allAlignment">
  4. <div class="row item-center">
  5. <div class="row item-center">
  6. <input
  7. class="fz14"
  8. type="text"
  9. placeholder="请输入球队名称"
  10. v-model="serchTxt"
  11. onkeyup="this.value=this.value.replace(/\s+/g,'')"
  12. color="#AAA"
  13. >
  14. <div class="row center serch-img pointer hover" @click="Serch()">
  15. <img src="@/assets/st-imges/serch.png" alt>
  16. </div>
  17. </div>
  18. <div class="row item-center" v-if="noShow">
  19. <div class="row center clear pointer hover br05 fz14" @click="clearSerchTxt()">清除</div>
  20. </div>
  21. </div>
  22. <div class="row center redraw pointer hover br05" @click="red()">
  23. <img src="@/assets/st-imges/redraw.png" alt>
  24. </div>
  25. </div>
  26. <div class="tennisRollBall" v-for="(item,index) in data" :key="item.id">
  27. <!-- 联赛名 -->
  28. <div class="tennisRollBall-title row item-center pdg20">{{item.leagueName}}</div>
  29. <div class="tennisRollBall-title-list" v-for="(items,i) in item.matchData" :key="items.id">
  30. <div class="tennisRollBall-title-list-title pdg20 row">
  31. <div style="width:24%;height:100%" class="row allAlignment item-center">
  32. <div>
  33. <span class="tennisRollBall-list-num" v-if="items.match_process">{{items.match_process}}</span>
  34. <span class="tennisRollBall-list-num" v-else>0</span>
  35. <b :style="!up?'':'display:none'">▼</b>
  36. <b :style="up?'':'display:none'">▲</b>
  37. </div>
  38. <div
  39. class="row center triangle tennisRollBall-title-list-title-num"
  40. style="background:#BBB;width:.6rem;height:.5rem;color:#fff;"
  41. @click="getTournamentPlay(items.match_id)"
  42. >{{items.tag}} ></div>
  43. </div>
  44. <div
  45. style="color:#666;width:70%;padding-left:.15rem"
  46. class="row average item-center list-title"
  47. >
  48. <p style="width:.6rem;">独赢盘</p>
  49. <p>让分</p>
  50. <p>大/小</p>
  51. <p>单/双</p>
  52. </div>
  53. </div>
  54. <div class="row list-box" style="border-bottom:.01rem solid #EDEDED">
  55. <div class="list-box-name row item-center" style="line-height:.4rem;">
  56. <div>
  57. <p style="color:#f76649">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p>
  58. </div>
  59. <div>
  60. <p>{{items.home_team}}</p>
  61. <p>{{items.guest_team}}</p>
  62. </div>
  63. </div>
  64. <div class="row average" style="width:70%;padding:0 .1rem;position: relative;">
  65. <div v-for="(itemList,idx) in items.full_oddsData" :key="itemList.id">
  66. <!-- 独赢盘无数据,暂时模拟,做样式 -->
  67. <div v-if="itemList.odds_code == 'ch' || itemList.odds_code == 'cg' ">
  68. <div style="padding:.01rem 0;" class="home capot" v-if="itemList.odds_code == 'ch'">
  69. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,items.home_team,'滚球','all')">{{itemList.odds}}</p>
  70. </div>
  71. <div class="guest capot" v-if="itemList.odds_code == 'cg'">
  72. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,items.guest_team,'滚球','all')">{{itemList.odds}}</p>
  73. </div>
  74. </div>
  75. <div v-if="itemList.odds_code == 'coh' || itemList.odds_code == 'cog'">
  76. <div style="padding:.01rem 0 ;" class="home concede" v-if="itemList.odds_code == 'coh'">
  77. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,items.home_team,'滚球','all')">{{itemList.odds}}</p>
  78. </div>
  79. <div v-if="itemList.odds_code == 'cog'" class="guest concede">
  80. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,items.guest_team,'滚球','all')">{{itemList.odds}}</p>
  81. </div>
  82. </div>
  83. <div>
  84. <div class="row item-center total home"
  85. v-if="itemList.odds_code == 'tnb'" >
  86. <span style="color:#f76649;margin-right:.1rem;">大{{itemList.condition}}</span>
  87. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,'大','滚球','all')">{{itemList.odds}}</p>
  88. </div>
  89. <div class="row item-center total guest"
  90. v-if="itemList.odds_code == 'tns'"
  91. >
  92. <span style="color:#f76649;margin-right:.1rem;">小{{itemList.condition}}</span>
  93. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,'小','滚球','all')">{{itemList.odds}}</p>
  94. </div>
  95. </div>
  96. <div v-if="itemList.odds_code.startsWith('ts')">
  97. <div class="row item-center two_sides guest" v-if="itemList.odds_code == 'tsd'">
  98. <span style="color:#f76649;margin-right:.1rem;">{{itemList.condition}}</span>
  99. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,items.home_team,'滚球','all')">{{itemList.odds}}</p>
  100. </div>
  101. <div class="row item-center two_sides home" v-if="itemList.odds_code == 'tss'">
  102. <span style="color:#f76649;margin-right:.1rem;">{{itemList.condition}}</span>
  103. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,items.guest_team,'滚球','all')">{{itemList.odds}}</p>
  104. </div>
  105. </div>
  106. </div>
  107. <div class="right-img">
  108. <img style="margin-bottom:.1rem" src="@/assets/st-imges/TheGame.png">
  109. <br>
  110. <img src="@/assets/st-imges/TheScore.png">
  111. </div>
  112. </div>
  113. </div>
  114. <div class="row list-box" style="border-bottom:.01rem solid #EDEDED" v-if ="items.match_process == '' || items.match_process < 6">
  115. <div class="list-box-name row item-center" style="line-height:.4rem;">
  116. <div>
  117. <p style="color:#f76649;writing-mode:tb-rl">前五局</p>
  118. </div>
  119. <div>
  120. <p>{{items.home_team}}</p>
  121. <p>{{items.guest_team}}</p>
  122. </div>
  123. </div>
  124. <div class="row average" style="width:70%;padding:0 .1rem;position: relative;">
  125. <div v-for="(itemList,idx) in items.full_oddsData" :key="itemList.id">
  126. <!-- 独赢盘无数据,暂时模拟,做样式 -->
  127. <div v-if="itemList.odds_code == 'ch' || itemList.odds_code == 'cg' ">
  128. <div style="padding:.01rem 0;" class="home capot" v-if="itemList.odds_code == 'ch'">
  129. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,items.home_team,'滚球','all')">{{itemList.odds}}</p>
  130. </div>
  131. <div class="guest capot" v-if="itemList.odds_code == 'cg'">
  132. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,items.guest_team,'滚球','all')">{{itemList.odds}}</p>
  133. </div>
  134. </div>
  135. <div v-if="itemList.odds_code == 'coh' || itemList.odds_code == 'cog'">
  136. <div style="padding:.01rem 0 ;" class="home concede" v-if="itemList.odds_code == 'coh'">
  137. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,items.home_team,'滚球','all')">{{itemList.odds}}</p>
  138. </div>
  139. <div v-if="itemList.odds_code == 'cog'" class="guest concede">
  140. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,items.guest_team,'滚球','all')">{{itemList.odds}}</p>
  141. </div>
  142. </div>
  143. <div>
  144. <div class="row item-center total home"
  145. v-if="itemList.odds_code == 'tnb'" >
  146. <span style="color:#f76649;margin-right:.1rem;">大{{itemList.condition}}</span>
  147. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,'大','滚球','all')">{{itemList.odds}}</p>
  148. </div>
  149. <div class="row item-center total guest"
  150. v-if="itemList.odds_code == 'tns'"
  151. >
  152. <span style="color:#f76649;margin-right:.1rem;">小{{itemList.condition}}</span>
  153. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,'小','滚球','all')">{{itemList.odds}}</p>
  154. </div>
  155. </div>
  156. <div v-if="itemList.odds_code.startsWith('ts')">
  157. <div class="row item-center two_sides guest" v-if="itemList.odds_code == 'tsd'">
  158. <span style="color:#f76649;margin-right:.1rem;">{{itemList.condition}}</span>
  159. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,items.home_team,'滚球','all')">{{itemList.odds}}</p>
  160. </div>
  161. <div class="row item-center two_sides home" v-if="itemList.odds_code == 'tss'">
  162. <span style="color:#f76649;margin-right:.1rem;">{{itemList.condition}}</span>
  163. <p class="singleAndDouble-list-btn hover" :class="{col:itemList.isTrue,rising:itemList.change == 'rising',falling:itemList.change == 'falling'}" @click="selection(index,i,idx,itemList.id,itemList.p_code,items.match_id,items.home_team,items.guest_team,items.guest_team,'滚球','all')">{{itemList.odds}}</p>
  164. </div>
  165. </div>
  166. </div>
  167. <div @click="promptInfo()" class="right-img">
  168. <img style="margin-bottom:.1rem" src="@/assets/st-imges/TheGame.png">
  169. <br>
  170. <img src="@/assets/st-imges/TheScore.png">
  171. </div>
  172. </div>
  173. </div>
  174. <div style="height:.5rem" class="row item-center">
  175. <div style="width:20%;" class="row center">
  176. <div class="eliminate">
  177. <span style="margin-left:.085rem;" :class="items.sb ? 'spanBox':''"></span>
  178. <div style="width:.27rem;" class="row allAlignment">
  179. <span :class="items.tb ? 'spanBox':''"></span>
  180. <span :class="items.fb ? 'spanBox':''"></span>
  181. </div>
  182. </div>
  183. </div>
  184. <div style="width:70%" class="row average item-center">
  185. <div>
  186. 出局:
  187. <span style="color:#f76649">{{items.ot}}</span>
  188. </div>
  189. </div>
  190. </div>
  191. </div>
  192. </div>
  193. <div v-if="noData">
  194. <noData/>
  195. </div>
  196. </div>
  197. </template>
  198. <script>
  199. import noData from '@/components/noData';
  200. export default {
  201. name: "baseballRollBall",
  202. components:{
  203. noData
  204. },
  205. data() {
  206. return {
  207. serchTxt: "",
  208. up: true,
  209. data: [],
  210. pCode: this.$store.getters.getPaly_code, //传入接口的值
  211. activity: this.$store.getters.getActivity, //传入接口的值
  212. ballCode: this.$store.getters.getBallCode,
  213. noData : false, //暂无数据显示
  214. noShow : true ,
  215. lg_id:'',//联赛
  216. timers:true,
  217. limit : '', //投注长度
  218. };
  219. },
  220. /**
  221. * 组件内函数方法
  222. */
  223. methods: {
  224. getTournamentPlay(match_id) {
  225. this.$store.dispatch("MACTH_ID", match_id);
  226. this.$store.dispatch("SET_CONTROLROUTING", 10013);
  227. },
  228. // 获取数据
  229. getAjax(lg_id,search){
  230. this.$http.get(this.$ports.home.gameList,{
  231. type: this.activity,
  232. game_code: this.ballCode,
  233. lg_id, //需要拷贝
  234. search
  235. }).then(res =>{
  236. // console.log('res',res)
  237. if(res.data.data.length >0){
  238. this.noData = false;
  239. this.data = res.data.data[0]
  240. // console.log(this.data,'棒球');
  241. // this.dataGroup(this.data)
  242. this.data.forEach(res =>{
  243. res.matchData.forEach(item =>{
  244. if(item.result_mark){
  245. item.ot = JSON.parse(item.result_mark).ot
  246. }
  247. item.sb = true;
  248. item.tb = false;
  249. item.fb = true;
  250. })
  251. })
  252. }else{
  253. this.noData = true;
  254. this.noShow = false;
  255. }
  256. this.$store.dispatch("GETLOADING", false);
  257. })
  258. },
  259. /*******************直播比赛数据提示*******************/
  260. promptInfo(){
  261. this.$dialog.alert({mes: '此功能占未开放'});
  262. },
  263. // 刷新之后投注有数据添加选中效果
  264. dataGroup(data){
  265. let betting = this.$store.getters.getBetting;
  266. if(betting != null && betting.length >0){
  267. data.forEach(e =>{
  268. e.matchData.forEach(k =>{
  269. if( k.five_oddsData && k.five_oddsData.length > 0){
  270. k.five_oddsData.forEach(item =>{
  271. betting.forEach(i =>{
  272. i.data.forEach(j =>{
  273. if(j.id == item.id){
  274. item.isTrue = true;
  275. }
  276. })
  277. })
  278. })
  279. }
  280. if( k.full_oddsData && k.full_oddsData.length > 0){
  281. k.full_oddsData.forEach(item =>{
  282. betting.forEach(i =>{
  283. i.data.forEach(j =>{
  284. if(j.id == item.id){
  285. item.isTrue = true;
  286. }
  287. })
  288. })
  289. })
  290. }
  291. })
  292. })
  293. }
  294. },
  295. // 选中添加数据
  296. selection(idx,i,index,id,p_code,match_id,homeName,guestName,name,playName,status){
  297. // console.log('id',id)
  298. //调用投注公共方法
  299. let _this = this;
  300. let isAre = true;
  301. let isAdd = true,isAlert =false;
  302. let ballId = this.$store.getters.getBallCode;
  303. let teamName = {
  304. home : homeName,
  305. guest : guestName
  306. }
  307. let acty = this.$store.getters.getActivity;
  308. let betting = this.$store.getters.getBetting;
  309. let obj = {
  310. title:p_code,
  311. data:''
  312. }
  313. if(status == 'all'){
  314. this.data[idx].matchData[i].full_oddsData[index].home_team = homeName;
  315. this.data[idx].matchData[i].full_oddsData[index].guest_team = guestName;
  316. this.data[idx].matchData[i].full_oddsData[index].playName = playName;
  317. this.data[idx].matchData[i].full_oddsData[index].name = name;
  318. this.data[idx].matchData[i].full_oddsData[index].ballId = ballId;
  319. obj.data = [this.data[idx].matchData[i].full_oddsData[index]];
  320. }else if(status == 'five'){
  321. this.data[idx].matchData[i].five_oddsData[index].home_team = homeName;
  322. this.data[idx].matchData[i].five_oddsData[index].guest_team = guestName;
  323. this.data[idx].matchData[i].five_oddsData[index].playName = playName;
  324. this.data[idx].matchData[i].five_oddsData[index].name = name;
  325. this.data[idx].matchData[i].five_oddsData[index].ballId = ballId;
  326. obj.data = [this.data[idx].matchData[i].five_oddsData[index]];
  327. }
  328. if(betting.length >0){
  329. betting.forEach(e=>{
  330. if(e.title == p_code){
  331. e.data.forEach((res,num) =>{
  332. if(res.id ==id){
  333. e.data.splice(num, 1);
  334. isAdd =false;
  335. }
  336. })
  337. if(isAdd){
  338. if(this.limit >= 10 ) {
  339. this.$dialog.toast({ mes: "亲,超出表格上限啦。", timeout: 2000 });
  340. }else{
  341. if(status == 'all'){
  342. e.data.push( this.data[idx].matchData[i].full_oddsData[index]);
  343. }else if(status == 'five'){
  344. e.data.push( this.data[idx].matchData[i].five_oddsData[index]);
  345. }
  346. }
  347. }
  348. isAre =false;
  349. }
  350. })
  351. if(isAre){
  352. if(this.limit >= 10 ) {
  353. this.$dialog.toast({ mes: "亲,超出表格上限啦。", timeout: 2000 });
  354. }else{
  355. betting.push(obj);
  356. }
  357. }
  358. }else{
  359. betting.push(obj);
  360. }
  361. this.$store.dispatch("SET_BETTING",[]);
  362. this.$store.dispatch("SET_BETTING",betting);
  363. this.selChange(idx,i,id,status)
  364. },
  365. selChange(idx,i,id,status){
  366. if(this.limit < 10){
  367. if(status == 'all'){
  368. this.data[idx].matchData[i].full_oddsData.forEach(item =>{
  369. if(item.id == id){
  370. this.$forceUpdate();
  371. this.$set(item, "isTrue", item.isTrue ? false : true);
  372. }
  373. })
  374. }else if(status == 'five'){
  375. this.data[idx].matchData[i].five_oddsData.forEach(item =>{
  376. if(item.id == id){
  377. this.$forceUpdate();
  378. this.$set(item, "isTrue", item.isTrue ? false : true);
  379. }
  380. })
  381. }
  382. }else{
  383. if(status == 'all'){
  384. this.data[idx].matchData[i].full_oddsData.forEach(item =>{
  385. if(item.id == id){
  386. this.$forceUpdate();
  387. this.$set(item,'isTrue',false)
  388. }
  389. })
  390. }else if(status == 'five'){
  391. this.data[idx].matchData[i].five_oddsData.forEach(item =>{
  392. if(item.id == id){
  393. this.$forceUpdate();
  394. this.$set(item,'isTrue',false)
  395. }
  396. })
  397. }
  398. }
  399. },
  400. //搜索按钮被点击
  401. Serch() {
  402. if (this.serchTxt === "") {
  403. this.$dialog.toast({ mes: "请输入您想要搜索的内容。", timeout: 2000 });
  404. return false;
  405. } else {
  406. this.data = [];
  407. this.$store.dispatch("SET_LEAGUEDATA",[]); //需要拷贝
  408. this.getAjax('',this.serchTxt) //需要拷贝
  409. }
  410. },
  411. // 删除搜索框内容
  412. clearSerchTxt() {
  413. if (this.serchTxt != "") {
  414. this.data = [];
  415. this.serchTxt = "";
  416. this.$store.dispatch("SET_LEAGUEDATA",[]); //需要拷贝
  417. this.getAjax();
  418. }
  419. },
  420. // 刷新
  421. red() {
  422. this.$store.dispatch("SET_LEAGUEDATA",[]); //需要拷贝
  423. if (this.serchTxt.length > 0) {
  424. this.Serch();
  425. } else {
  426. this.data = '';
  427. this.getAjax();
  428. }
  429. },
  430. //跳转到联赛选择页
  431. elasticFrame() {
  432. this.$store.dispatch("SET_CONTROLROUTING", 10013);
  433. }
  434. },
  435. mounted() {
  436. //获取选择的联赛id
  437. if(this.$store.getters.getLeagueData.length >0 ){
  438. if(this.$store.getters.getLeagueData.length == 1){
  439. this.lg_id = this.$store.getters.getLeagueData[0]
  440. }else{
  441. this.lg_id = this.$store.getters.getLeagueData.join(',');
  442. }
  443. }this.$store.dispatch("GETLOADING", true);
  444. this.getAjax(this.lg_id);
  445. this.$store.dispatch("SET_BETTING",[]);
  446. let _this = this
  447. this.$public.ajaxTimerFun((timing)=>{
  448. if(_this.timers){
  449. this.getAjax(_this.lg_id,_this.serchTxt); //需要拷贝
  450. }else{
  451. clearInterval(timing)
  452. }
  453. })
  454. },
  455. computed:{
  456. getActy() {
  457. return this.$store.getters.getActivity;
  458. },
  459. //获取投注框删除的投注信息
  460. getDeleteType() {
  461. return this.$store.getters.getDeleteType;
  462. },
  463. // 获取投注数量
  464. getLimit() {
  465. return this.$store.getters.getLimit;
  466. },
  467. },
  468. watch:{
  469. getActy(val) {
  470. this.activity = val;
  471. this.getAJAX();
  472. this.$store.dispatch("SET_BETTING",[]);
  473. },
  474. getLimit(val){
  475. this.limit = val;
  476. if(val == 0){
  477. this.data.forEach(e =>{
  478. e.matchData.forEach(k =>{
  479. k.five_oddsData.forEach(item =>{
  480. if(item.isTrue){
  481. this.$forceUpdate();
  482. item.isTrue = false;
  483. }
  484. })
  485. k.full_oddsData.forEach(item =>{
  486. if(item.isTrue){
  487. this.$forceUpdate();
  488. item.isTrue = false;
  489. }
  490. })
  491. })
  492. })
  493. }
  494. },
  495. getDeleteType(val){
  496. let jumpOut = false;
  497. for(var i = 0; i < this.data.length; i++){
  498. for(var k = 0; k < this.data[i].matchData.length; k++){
  499. for(var j = 0; j < this.data[i].matchData[k].five_oddsData.length;j++){
  500. if(this.data[i].matchData[k].five_oddsData[j].id == val){
  501. this.$forceUpdate();
  502. this.data[i].matchData[k].five_oddsData[j].isTrue = false;
  503. jumpOut = true;
  504. break;
  505. }
  506. }
  507. for(var j = 0; j < this.data[i].matchData[k].full_oddsData.length;j++){
  508. if(this.data[i].matchData[k].full_oddsData[j].id == val){
  509. this.$forceUpdate();
  510. this.data[i].matchData[k].full_oddsData[j].isTrue = false;
  511. jumpOut = true;
  512. break;
  513. }
  514. }
  515. if(jumpOut == true){
  516. break;
  517. }
  518. }
  519. if(jumpOut == true){
  520. break;
  521. }
  522. }
  523. },
  524. },
  525. beforeDestroy() {
  526. this.timers = false;
  527. },
  528. };
  529. </script>
  530. <style scoped>
  531. .pdg20 {
  532. padding: 0 0.2rem;
  533. }
  534. .tennisRollBall-title {
  535. height: 0.5rem;
  536. color: #fff;
  537. background: #898989;
  538. }
  539. .tennisRollBall-title-list {
  540. background: #fff;
  541. font-size: 0.14rem;
  542. }
  543. .tennisRollBall-title-list-title {
  544. height: 0.5rem;
  545. background: #e5e5e5;
  546. color: #666;
  547. cursor: pointer;
  548. }
  549. .tennisRollBall-title-list-title-num::after {
  550. border-width: 0.05rem;
  551. border-left-color: #e5e5e5;
  552. border-top-color: #e5e5e5;
  553. left: 42%;
  554. bottom: -0.05rem;
  555. transform: rotate(45deg);
  556. }
  557. .serch {
  558. width: 100%;
  559. height: 0.5rem;
  560. background: #aaa;
  561. padding: 0 0.2rem;
  562. }
  563. input {
  564. border: none;
  565. background: #efefef;
  566. padding-left: 0.2rem;
  567. width: 4.6rem;
  568. height: 0.3rem;
  569. border-radius: 0.05rem 0 0 0.05rem;
  570. }
  571. .serch-img {
  572. width: 0.5rem;
  573. height: 0.3rem;
  574. background: #666;
  575. border-radius: 0 0.05rem 0.05rem 0;
  576. margin-right: 0.3rem;
  577. }
  578. .all {
  579. width: rem;
  580. height: 0.3rem;
  581. background: #ddd;
  582. color: #333;
  583. }
  584. .clear {
  585. width: 0.6rem;
  586. height: 0.3rem;
  587. background: #666;
  588. color: #ccc;
  589. margin-right: 0.1rem;
  590. }
  591. .redraw {
  592. width: 0.3rem;
  593. height: 0.3rem;
  594. background: #666;
  595. }
  596. img {
  597. width: 0.2rem;
  598. height: 0.2rem;
  599. }
  600. .br05 {
  601. border-radius: 0.05rem;
  602. }
  603. .fz14 {
  604. font-size: 0.14rem;
  605. }
  606. .hover:hover {
  607. background: #bbb;
  608. color: #fff;
  609. }
  610. .pointer {
  611. cursor: pointer;
  612. }
  613. .tennisRollBall-list-name p {
  614. width: 100%;
  615. }
  616. .tennisRollBall-list-name p span {
  617. display: inline-block;
  618. width: 0.08rem;
  619. height: 0.08rem;
  620. border-radius: 50%;
  621. }
  622. .right-img {
  623. width: 0.15rem;
  624. position: absolute;
  625. right: -0.3rem;
  626. bottom: 0.1rem;
  627. }
  628. .right-img img {
  629. width: 0.22rem;
  630. height: 0.2rem;
  631. }
  632. .singleAndDouble-list-btn {
  633. width: 0.48rem;
  634. height: 0.3rem;
  635. border: 0.01rem solid #ccc;
  636. line-height: 0.3rem;
  637. text-align: center;
  638. border-radius: 0.05rem;
  639. cursor: pointer;
  640. margin: 0.05rem;
  641. }
  642. .tennisRollBall-list-footer-num span {
  643. margin-right: 0.1rem;
  644. }
  645. .list-box-name {
  646. width: 24%;
  647. }
  648. .eliminate span {
  649. display: block;
  650. width: 0.1rem;
  651. height: 0.1rem;
  652. background: #ccc;
  653. transform: rotate(45deg);
  654. }
  655. .eliminate {
  656. width: 0.25rem;
  657. }
  658. .hover:hover {
  659. background: #bbb;
  660. color: #fff;
  661. }
  662. .list-title p {
  663. width: 0.9rem;
  664. text-align: center;
  665. }
  666. .concede,.total,.two_sides,.capot{
  667. position: absolute;
  668. }
  669. .home{
  670. top: 0%;
  671. }
  672. .guest{
  673. bottom: 0%;;
  674. }
  675. .concede{
  676. left: 30%;
  677. }
  678. .total{
  679. left: 50%;
  680. }
  681. .two_sides{
  682. left: 80%;
  683. }
  684. .capot{
  685. left: 9%;
  686. }
  687. .col {
  688. border-radius: 2px;
  689. background: #f76649;
  690. color: #fff;
  691. }
  692. .spanBox{
  693. background: orange !important;
  694. }
  695. </style>