ec06da2a by zhangmeng

国旗

1 parent 67c08943
......@@ -74,10 +74,12 @@
:key="index"
:class="[
it.id == selectForm.latId ? 'tagActive' : 'tag',
it.disabled ? 'forbid' : '',
it.ticketPackage==1&& tickArr?.length<=0?'forbid':''
]"
@click="select(it)"
>
{{ it.ticketTypeName }}<span v-if="it.ticketPackage==1" class="tao">{{
{{ it.ticketTypeName }}{{ it.disabled }}<span v-if="it.ticketPackage==1" class="tao">{{
language == 0 ? '套票' : 'Package ticket'
}}</span>
</div>
......@@ -219,7 +221,8 @@
</div>
<div
v-if="endTime<=0" class="btn" style="margin-left: 40px;opacity: 0.5;cursor: not-allowed;margin-top: 10px"
v-if="endTime<=0||tickArr?.length<=0" class="btn"
style="margin-left: 40px;opacity: 0.5;cursor: not-allowed;margin-top: 10px"
@click="toSelectClosed"
>
{{
......@@ -263,7 +266,7 @@
<script setup>
import { ref, computed, watch } from 'vue'
import { ref, computed, watch, getCurrentInstance } from 'vue'
import {
getTicketInfoByActivityId,
getTicketListApi,
......@@ -273,6 +276,7 @@ import {
getBaseInfoByActiveId
} from '@/apiPc/booking'
import { dayjs } from 'element-plus'
import { ElMessageBox } from 'element-plus'
import { getDayName } from '@/viewsPc/seat/utils/language'
......@@ -282,6 +286,7 @@ import { triggerLanguage } from '@/utils/ruoyi'
import { useStorage } from '@vueuse/core/index'
import { useRoute, useRouter } from 'vue-router'
const { proxy } = getCurrentInstance()
const language = useStorage('language', 0)
const useStore = useUserStore()
const user = computed(() => useUserStore().user)
......@@ -291,9 +296,6 @@ const show = ref(false)
const showUrl = ref('')
const activeId = ref(route.params.activeId)
const active = ref(1)
const props = defineProps({
activityId: [String, Number]
})
const remarks = ref()
const timeData = ref()
const endTime = ref()
......@@ -312,6 +314,7 @@ const tickList = ref([])
const currVenue = ref(null)
const currTick = ref(null)
const matchData = ref({})
const tickArr = ref([])
watch(show, (val) => {
if (!val) {
......@@ -342,9 +345,24 @@ async function getTicketList() {
})
tickClass.value = res.rows
if (tickClass.value.length > 0) {
selectForm.value.latId = tickClass.value?.[0]?.id
const nowDay = dayjs().format('YYYY-MM-DD')
tickArr.value = []
for (const val of tickClass.value) {
const tickDay = dayjs(val.name).format('YYYY-MM-DD')
if (tickDay < nowDay) {
val.disabled = true
} else {
val.disabled = false
if (val.ticketPackage != 1) {
tickArr.value.push(val)
}
}
}
if (tickArr.value.length > 0) {
selectForm.value.latId = tickArr.value?.[0]?.id
await getVenueList()
}
}
}
// 根据票档获取场次
......@@ -420,6 +438,9 @@ function toSelectSeat() {
useStore.setVisitor()
return
}
if (!selectForm.value.latstId) {
return proxy.$modal.confirm(language.value == 0 ? '请选择票型' : 'Please select a ticket type')
}
checkNonPayment().then(res => {
if (res.data) {
router.push({
......@@ -548,6 +569,7 @@ getmatchData()
}
.forbid {
pointer-events: none;
opacity: 0.5 !important;
cursor: not-allowed !important;
}
......@@ -798,4 +820,10 @@ getmatchData()
line-height: 40px;
color: #2b2f3a;
}
.disabled {
background: #878787 !important;
color: #4a4a4a !important;
cursor: no-drop !important;
}
</style>
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!