cf591983 by zhangmeng

Merge remote-tracking branch 'origin/dev' into dev

2 parents 99ca7e54 2def52b3
...@@ -138,9 +138,7 @@ ...@@ -138,9 +138,7 @@
138 138
139 <div class="tip" v-if="remark"> 139 <div class="tip" v-if="remark">
140 <label>{{ language == 0 ?'开票须知':'Invoice Notice' }}:</label> 140 <label>{{ language == 0 ?'开票须知':'Invoice Notice' }}:</label>
141 <div> 141 <div v-html="remark"></div>
142 {{remark}}
143 </div>
144 </div> 142 </div>
145 </div> 143 </div>
146 </el-col> 144 </el-col>
...@@ -361,7 +359,8 @@ function goEditAddress(id) { ...@@ -361,7 +359,8 @@ function goEditAddress(id) {
361 function getRemark() { 359 function getRemark() {
362 getBaseInfoByActiveId(cptId).then(res=>{ 360 getBaseInfoByActiveId(cptId).then(res=>{
363 if(res.data){ 361 if(res.data){
364 remark.value = res.data.remarks 362 // remark.value = res.data.remarks
363 remark.value = res.data.remarks.replace(/\n/g, '<br>')
365 } 364 }
366 }) 365 })
367 } 366 }
......
...@@ -76,6 +76,7 @@ import useUserStore from "@/store/modules/user"; ...@@ -76,6 +76,7 @@ import useUserStore from "@/store/modules/user";
76 import cache from "@/plugins/cache"; 76 import cache from "@/plugins/cache";
77 import {useStorage} from "@vueuse/core/index"; 77 import {useStorage} from "@vueuse/core/index";
78 import {refundApply} from "@/apiPc/match"; 78 import {refundApply} from "@/apiPc/match";
79 import dayjs from "dayjs";
79 const language= useStorage('language',0) 80 const language= useStorage('language',0)
80 const router = useRouter() 81 const router = useRouter()
81 const {proxy} = getCurrentInstance() 82 const {proxy} = getCurrentInstance()
...@@ -146,6 +147,13 @@ function continueSign(n){ ...@@ -146,6 +147,13 @@ function continueSign(n){
146 }) 147 })
147 return 148 return
148 } 149 }
150 if(n.signEndTime <= dayjs().format('YYYY-MM-DD HH:mm:ss')){
151 ElMessage({
152 message: language.value==0?'赛事报名已结束无法继续报名':'The event registration has ended.',
153 type: 'warning'
154 })
155 return
156 }
149 if (user.utype == '1') { 157 if (user.utype == '1') {
150 // 个人报名 158 // 个人报名
151 router.push({ 159 router.push({
......
...@@ -46,11 +46,12 @@ ...@@ -46,11 +46,12 @@
46 </el-form-item> 46 </el-form-item>
47 </el-col> 47 </el-col>
48 <el-col :lg="12"> 48 <el-col :lg="12">
49 <el-form-item :label="language==0?'出生日期':'Date of Birth'" prop="birth" required> 49 <el-form-item :label="language==0?'出生日期1':'Date of Birth'" prop="birth" required>
50 <el-date-picker 50 <el-date-picker
51 v-model="form.birth" :disabled="editgay&&form.labelArr.indexOf('0')>-1" 51 v-model="form.birth" :disabled="editgay&&form.labelArr.indexOf('0')>-1"
52 style="width: 100%;" 52 style="width: 100%;"
53 type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD" 53 type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD"
54 :disabled-date="disabledBirth"
54 /> 55 />
55 </el-form-item> 56 </el-form-item>
56 <el-form-item :label="language==0?'主要会员角色':'roles'" prop="labelArr"> 57 <el-form-item :label="language==0?'主要会员角色':'roles'" prop="labelArr">
...@@ -106,7 +107,7 @@ ...@@ -106,7 +107,7 @@
106 import {reactive, ref, toRefs, watch} from 'vue' 107 import {reactive, ref, toRefs, watch} from 'vue'
107 import {getCurrentInstance, nextTick, onMounted} from '@vue/runtime-core' 108 import {getCurrentInstance, nextTick, onMounted} from '@vue/runtime-core'
108 import * as match from '@/apiPc/match' 109 import * as match from '@/apiPc/match'
109 import {ElMessage} from 'element-plus' 110 import {dayjs, ElMessage} from 'element-plus'
110 import _ from 'lodash' 111 import _ from 'lodash'
111 import {useStorage} from "@vueuse/core/index"; 112 import {useStorage} from "@vueuse/core/index";
112 const language= useStorage('language',0) 113 const language= useStorage('language',0)
...@@ -249,6 +250,10 @@ function reset(){ ...@@ -249,6 +250,10 @@ function reset(){
249 }) 250 })
250 } 251 }
251 } 252 }
253 function disabledBirth(date) {
254 const today = dayjs().format('YYYY-MM-DD')
255 return (date.getTime() >= dayjs(today).valueOf())
256 }
252 function getCountryList() { 257 function getCountryList() {
253 match.countryList().then(res => { 258 match.countryList().then(res => {
254 countryList.value = res.data 259 countryList.value = res.data
......
...@@ -90,8 +90,9 @@ ...@@ -90,8 +90,9 @@
90 :required="!form.wdsfMin&&form.labelArr.indexOf('0')>-1"> 90 :required="!form.wdsfMin&&form.labelArr.indexOf('0')>-1">
91 <el-input v-model="form.idcCode" :disabled="editgay" @blur="giveBirthDay"/> 91 <el-input v-model="form.idcCode" :disabled="editgay" @blur="giveBirthDay"/>
92 </el-form-item> 92 </el-form-item>
93 <el-form-item :label="language==0?'出生日期':'Date of Birth'" prop="birth" 93 <el-form-item :label="language==0?'2出生日期':'Date of Birth'" prop="birth"
94 :required="!form.wdsfMin&&form.labelArr.indexOf('0')>-1"> 94 :required="!form.wdsfMin&&form.labelArr.indexOf('0')>-1"
95 :disabled-date="disabledBirth">
95 <el-date-picker 96 <el-date-picker
96 v-model="form.birth" :disabled="form.idcType=='0'" 97 v-model="form.birth" :disabled="form.idcType=='0'"
97 style="width: 100%;" 98 style="width: 100%;"
...@@ -137,7 +138,7 @@ ...@@ -137,7 +138,7 @@
137 import {reactive, ref, toRefs, watch} from 'vue' 138 import {reactive, ref, toRefs, watch} from 'vue'
138 import {getCurrentInstance, nextTick, onMounted} from '@vue/runtime-core' 139 import {getCurrentInstance, nextTick, onMounted} from '@vue/runtime-core'
139 import * as match from '@/apiPc/match' 140 import * as match from '@/apiPc/match'
140 import {ElMessage} from 'element-plus' 141 import {dayjs, ElMessage} from 'element-plus'
141 import _ from 'lodash' 142 import _ from 'lodash'
142 import {useStorage} from "@vueuse/core/index"; 143 import {useStorage} from "@vueuse/core/index";
143 import {checkWdsf, getCaptchaSms} from "@/apiPc/match"; 144 import {checkWdsf, getCaptchaSms} from "@/apiPc/match";
...@@ -284,6 +285,9 @@ watch(show, (value) => { ...@@ -284,6 +285,9 @@ watch(show, (value) => {
284 // proxy.$refs['dialogRef'].clearValidate() 285 // proxy.$refs['dialogRef'].clearValidate()
285 }) 286 })
286 }) 287 })
288 function disabledBirth(time) {
289 return time.getTime() > new Date().getTime()
290 }
287 function resetCode() { 291 function resetCode() {
288 isCodeTrue.value = false 292 isCodeTrue.value = false
289 } 293 }
......
...@@ -9,18 +9,23 @@ ...@@ -9,18 +9,23 @@
9 9
10 <div class="indexTitle"> 10 <div class="indexTitle">
11 <h3 class="leftboderTT">{{ language==0?'赛事报道':'Special reports' }}</h3> 11 <h3 class="leftboderTT">{{ language==0?'赛事报道':'Special reports' }}</h3>
12 <!-- <a class="more" @click="goList(query2.sortId,'专题报道')">MORE</a>--> 12 <a class="more" v-if="newsList2.length>3" @click="goList(query2.code,'专题报道')">MORE</a>
13 </div> 13 </div>
14 <div> 14 <div>
15 <div class="item" v-for="n in newsList2" :key="n.id" @click="goDetail(n)"> 15 <div class="item news2" v-for="(n,index) in newsList2" v-show="index<3" :key="n.id" @click="goDetail(n)">
16 <p class="esp">{{ n.name }}</p> 16 <div class="imgbox" v-if="n.picUrl" @click="goDetail(n)">
17 <img :src="fillImgUrl(n.picUrl)">
18 </div>
19 <div>
20 <p class="esp_2">{{ n.name }}</p>
21 </div>
17 </div> 22 </div>
18 </div> 23 </div>
19 24
20 <div class="indexTitle"><h3 class="leftboderTT">{{ language==0?'赛事视频':'VEDIOS' }}</h3> 25 <div class="indexTitle"><h3 class="leftboderTT">{{ language==0?'赛事视频':'VEDIOS' }}</h3>
21 <!-- <a class="more" @click="goList(10000006,'赛事视频')">MORE</a>--> 26 <!-- <a class="more" @click="goList(10000006,'赛事视频')">MORE</a>-->
22 </div> 27 </div>
23 <div class="item" v-for="n in newsList" :key="n.id" @click="goDetail(n)"> 28 <div class="item" v-for="(n,index) in newsList" v-show="index<3" :key="n.id" @click="goDetail(n)">
24 <div class="videoImgbox" @click="goDetail(n)"> 29 <div class="videoImgbox" @click="goDetail(n)">
25 <img :src="fillImgUrl(n.picUrl)"> 30 <img :src="fillImgUrl(n.picUrl)">
26 </div> 31 </div>
...@@ -28,7 +33,7 @@ ...@@ -28,7 +33,7 @@
28 <div class="indexTitle"><h3 class="leftboderTT">{{ language==0?'赛事图片':'PHOTOS' }}</h3> 33 <div class="indexTitle"><h3 class="leftboderTT">{{ language==0?'赛事图片':'PHOTOS' }}</h3>
29 <!-- <a class="more" @click="goList(10000007,'赛事图片')">MORE</a>--> 34 <!-- <a class="more" @click="goList(10000007,'赛事图片')">MORE</a>-->
30 </div> 35 </div>
31 <div v-for="n in newsList3" :key="n.id" @click="goDetail(n)"> 36 <div v-for="(n,index) in newsList3" v-show="index<3" :key="n.id" @click="goDetail(n)">
32 <div class="picbox"><img :src="fillImgUrl(n.picUrl)"/></div> 37 <div class="picbox"><img :src="fillImgUrl(n.picUrl)"/></div>
33 </div> 38 </div>
34 </el-card> 39 </el-card>
...@@ -51,17 +56,17 @@ const newsList = ref([]) ...@@ -51,17 +56,17 @@ const newsList = ref([])
51 const newsList2 = ref([]) 56 const newsList2 = ref([])
52 const newsList3 = ref([]) 57 const newsList3 = ref([])
53 const query1 = ref({ 58 const query1 = ref({
54 pageSize: 1, 59 pageSize: 5,
55 pageNum: 1, 60 pageNum: 1,
56 code: `${props.matchId}${language.value == 0 ?'100':'101'}2` 61 code: `${props.matchId}${language.value == 0 ?'100':'101'}2`
57 }) 62 })
58 const query2 = ref({ 63 const query2 = ref({
59 pageSize: 3, 64 pageSize: 5,
60 pageNum: 1, 65 pageNum: 1,
61 code: `${props.matchId}${language.value == 0 ?'100':'101'}1` 66 code: `${props.matchId}${language.value == 0 ?'100':'101'}1`
62 }) 67 })
63 const query3 = ref({ 68 const query3 = ref({
64 pageSize: 1, 69 pageSize: 5,
65 pageNum: 1, 70 pageNum: 1,
66 code: `${props.matchId}${language.value == 0 ?'100':'101'}3` 71 code: `${props.matchId}${language.value == 0 ?'100':'101'}3`
67 }) 72 })
...@@ -90,7 +95,8 @@ const goList = (sortId,name) => { ...@@ -90,7 +95,8 @@ const goList = (sortId,name) => {
90 router.push({ 95 router.push({
91 path: `/news/list/${sortId}`, 96 path: `/news/list/${sortId}`,
92 query:{ 97 query:{
93 kindName:name 98 kindName:name,
99 code:sortId
94 } 100 }
95 }) 101 })
96 } 102 }
...@@ -106,6 +112,12 @@ const goDetail = (n) => { ...@@ -106,6 +112,12 @@ const goDetail = (n) => {
106 </script> 112 </script>
107 113
108 <style scoped lang="scss"> 114 <style scoped lang="scss">
115 .news2{display: flex;margin: 0 0 20px;
116 .imgbox{margin-right: 15px;height: calc(900px/16);width: 100px;
117 img{object-fit: cover;width:100px;height: 100%;}
118 }
119 .esp_2{margin: 0;}
120 }
109 .indexTitle{margin: 20px 0 12px; 121 .indexTitle{margin: 20px 0 12px;
110 h3{ 122 h3{
111 font-size: 20px; 123 font-size: 20px;
......
...@@ -13,7 +13,8 @@ ...@@ -13,7 +13,8 @@
13 <p>{{ n.belongTime?.substring(0, 7).replace(/-/g, '/') }}</p> 13 <p>{{ n.belongTime?.substring(0, 7).replace(/-/g, '/') }}</p>
14 </div> 14 </div>
15 <div v-if="n.picUrl" class="imgbox"> 15 <div v-if="n.picUrl" class="imgbox">
16 <img :src="fillImgUrl_webSite(n.picUrl)"> 16 <img v-if="query.code" :src="fillImgUrl(n.picUrl)">
17 <img v-else :src="fillImgUrl_webSite(n.picUrl)">
17 </div> 18 </div>
18 <div class="item-body"> 19 <div class="item-body">
19 <h3 class="esp_2" v-html="n.name" /> 20 <h3 class="esp_2" v-html="n.name" />
...@@ -42,7 +43,7 @@ ...@@ -42,7 +43,7 @@
42 <script setup> 43 <script setup>
43 import { ArrowRight, Search } from '@element-plus/icons-vue' 44 import { ArrowRight, Search } from '@element-plus/icons-vue'
44 import { onMounted, ref } from 'vue' 45 import { onMounted, ref } from 'vue'
45 import { getNewsListById } from '@/apiPc/webSite' 46 import {getNewsListById, getnoteListcptid} from '@/apiPc/webSite'
46 import { useRoute, useRouter } from 'vue-router' 47 import { useRoute, useRouter } from 'vue-router'
47 import {useStorage} from "@vueuse/core/index"; 48 import {useStorage} from "@vueuse/core/index";
48 const language = useStorage('language', 0) 49 const language = useStorage('language', 0)
...@@ -58,11 +59,22 @@ const query = ref({ ...@@ -58,11 +59,22 @@ const query = ref({
58 }) 59 })
59 onMounted(() => { 60 onMounted(() => {
60 console.log(route) 61 console.log(route)
61 query.value.sortId = route.params.id
62 kindName.value = route.query.kindName 62 kindName.value = route.query.kindName
63 getList()
64 })
65 63
64 if(route.query.code){
65 query.value.code = route.query.code
66 getnotebycode()
67 } else {
68 query.value.sortId = route.params.id
69 getList()
70 }
71 })
72 const getnotebycode = () => {
73 getnoteListcptid(query.value).then(res => {
74 newsList.value = res.rows
75 total.value = res.total
76 })
77 }
66 const getList = () => { 78 const getList = () => {
67 console.log(query.value) 79 console.log(query.value)
68 getNewsListById(query.value).then(res => { 80 getNewsListById(query.value).then(res => {
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!