25cffd01 by 杨炀

"element-plus": "2.6.1"

1 parent 2ac29ce7
Showing 59 changed files with 193 additions and 153 deletions
......@@ -20,7 +20,7 @@
"crypto-js": "^4.1.1",
"echarts": "5.4.0",
"echarts-wordcloud": "^2.1.0",
"element-plus": "2.2.27",
"element-plus": "2.6.1",
"file-saver": "2.0.5",
"flag-icon-css": "^4.1.7",
"fuse.js": "6.6.2",
......
......@@ -91,7 +91,7 @@ li.el-select-dropdown__item {
}
:root {
--el-menu-active-color: var(--el-color-primary);
--el-color-primary: #453DEA;
}
.el-popper .el-menu {
......@@ -110,7 +110,7 @@ li.el-select-dropdown__item {
font-size: 18px;
}
.el-popper .el-menu--horizontal .el-menu .el-sub-menu.is-active>.el-sub-menu__title {
color: #fff;
}
.el-popper .el-menu--horizontal .el-menu .el-menu-item.is-active {
......
......@@ -158,7 +158,7 @@ img{display: block;}
/** 表格更多操作下拉样式 */
.el-table .el-dropdown-link {
cursor: pointer;
color: #409EFF;
color: var(--el-color-primary);
margin-left: 10px;
}
......
......@@ -62,6 +62,7 @@ import { getToken } from '@/utils/auth'
import _ from 'lodash'
import { computed } from 'vue'
import cache from "@/plugins/cache";
import {useStorage} from "@vueuse/core/index";
const props = defineProps({
modelValue: [String, Object, Array],
......@@ -115,7 +116,8 @@ const fileOriginalName = ref('')
const uploadList = ref([])
// const baseUrl = import.meta.env.VITE_APP_BASE_API;
const uploadFileUrl = ref(import.meta.env.VITE_APP_BASE_API + props.action) // 上传文件服务器地址
const language = cache.local.get('language') || 0
const language = useStorage('language', 0)
const headers = ref({
Authorization: 'Bearer ' + getToken(),
['Content-Language'] : language==0? 'zh_CN':'en_US' ,
......
......@@ -67,7 +67,9 @@ import { getToken } from '@/utils/auth'
import { computed } from 'vue'
import _ from 'lodash'
import cache from "@/plugins/cache";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language = useStorage('language', 0)
const props = defineProps({
modelValue: [String, Object, Array],
// 数量限制
......
......@@ -95,7 +95,7 @@ const showSettings = ref(false);
const theme = ref(settingsStore.theme);
const sideTheme = ref(settingsStore.sideTheme);
const storeSettings = computed(() => settingsStore);
const predefineColors = ref(["#409EFF", "#ff4500", "#ff8c00", "#ffd700", "#90ee90", "#00ced1", "#1e90ff", "#c71585"]);
const predefineColors = ref(["#453DEA", "#ff4500", "#ff8c00", "#ffd700", "#90ee90", "#00ced1", "#1e90ff", "#c71585"]);
/** 是否需要topnav */
const topNav = computed({
......
......@@ -47,10 +47,10 @@
</template>
<script setup>
import { ref } from 'vue'
import cache from '@/plugins/cache'
import {useStorage} from "@vueuse/core/index";
const language = useStorage('language', 0)
const language = ref(cache.local.get('language') || 0)
</script>
<style lang="scss" scoped>
......
......@@ -5,7 +5,7 @@
<img class="logo" src="/img/logoArr.png">
</router-link>
<div class="home-menu forPc" style="margin: 0 20px">
<div class="home-menu forPc">
<el-menu v-if="language==0"
router :default-active="activeIndex" :mode="mode" :ellipsis="true"
popper-effect="dark" @select="handleSelect"
......@@ -153,8 +153,7 @@ const registerVisible = ref(false)
const loginForm = ref({})
const drawer = ref(false)
const mode = ref('horizontal')
const language = ref(cache.local.get('language') || 0)
const language2 = useStorage('language', 0)
const language = useStorage('language', 0)
onMounted(() => {
......@@ -162,10 +161,6 @@ onMounted(() => {
if (useUserStore().user) {
isLogin.value = true
}
// if (window.location.href.indexOf('en') > -1) {
// cache.local.set('language', 1)
// // location.reload()
// }
if (route.fullPath.indexOf('news') > -1) {
activeIndex.value = '/news'
} else if (route.fullPath.indexOf('notice') > -1) {
......@@ -185,8 +180,7 @@ onMounted(() => {
})
function changeLanguage(n) {
proxy.$modal.loading()
language2.value = n
// cache.local.set('language', n)
language.value = n
}
function showDrawer() {
drawer.value = true
......@@ -238,8 +232,8 @@ function getCode() {
</script>
<style scoped lang="scss">
.home-menu .enMenu{
//.el-menu-item{margin: 0 3px!important;}
.home-menu{width: 60vw;
:deep(.el-menu--horizontal.el-menu){border: none;}
}
.loginBtn {color: #fff;margin-right: 15px;border: none;
background: linear-gradient(-90deg, #8623FC, #453DEA);box-shadow:0 0 10px #fff;
......@@ -254,11 +248,9 @@ function getCode() {
color:#fff;
}
}
.topNav {
box-shadow: 0px 0px 13px rgba(113,113,113);
display: flex;
......@@ -316,7 +308,7 @@ function getCode() {
:deep(.el-input){height: 100%}
:deep(.el-form-item){height: 40px;}
.home-menu .el-menu--horizontal > .el-menu-item{margin: 0 5px; font-size: 18px;}
//.home-menu .el-menu--horizontal > .el-menu-item{margin: 0 5px; font-size: 18px;}
.home-menu .el-sub-menu{font-size: 16px;}
.weiMenu.el-menu{
border: none;
......@@ -361,6 +353,5 @@ function getCode() {
.ropenbtn{display: block}
}
</style>
......
......@@ -105,18 +105,13 @@ const registerVisible = ref(false)
const loginForm = ref({})
const drawer = ref(false)
const mode = ref('horizontal')
const language = ref(cache.local.get('language') || 0)
const language2 = useStorage('language', 0)
const language = useStorage('language', 0)
onMounted(() => {
console.log(window.location.href)
if (useUserStore().user) {
isLogin.value = true
}
// if (window.location.href.indexOf('en') > -1) {
// cache.local.set('language', 1)
// // location.reload()
// }
if (route.fullPath.indexOf('news') > -1) {
activeIndex.value = '/news'
} else if (route.fullPath.indexOf('notice') > -1) {
......@@ -134,8 +129,7 @@ onMounted(() => {
})
function changeLanguage(n) {
proxy.$modal.loading()
language2.value = n
// cache.local.set('language', n)
language.value = n
}
function showDrawer() {
drawer.value = true
......
......@@ -59,8 +59,8 @@ import localeCn from 'element-plus/es/locale/lang/zh-cn' // 中文语言
import localeEn from 'element-plus/es/locale/lang/en'
const language = cache.local.get('language') || 0
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const app = createApp(App)
// 全局方法挂载
......@@ -97,7 +97,7 @@ app.component('Editor', Editor)
app.component('Draggable', draggable)
app.component('WePay', wePay)
if (language == 0) {
if (language.value == 0) {
app.use(routerCn)
app.use(ElementPlus, {
locale: localeCn,
......
......@@ -10,7 +10,7 @@ const useSettingsStore = defineStore(
{
state: () => ({
title: '',
theme: storageSetting.theme || '#409EFF',
theme: storageSetting.theme || '#453DEA',
sideTheme: storageSetting.sideTheme || sideTheme,
showSettings: showSettings,
topNav: storageSetting.topNav === undefined ? topNav : storageSetting.topNav,
......
......@@ -14,15 +14,16 @@ import { saveAs } from 'file-saver'
import useUserStore from '@/store/modules/user'
import { sendNotification } from '@/assets/lib/extend'
import _ from 'lodash'
const language = cache.local.get('language') || 0
// const language = cache.local.get('language') || 0
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
let downloadLoadingInstance
// 是否显示重新登录
export const isRelogin = { show: false }
axios.defaults.headers['Content-Type'] = 'application/json;charset=utf-8'
// 对应国际化资源文件后缀
axios.defaults.headers['Content-Language'] = (language==0? 'zh_CN':'en_US' )
axios.defaults.headers['Content-Language'] = (language.value==0? 'zh_CN':'en_US' )
// 创建axios实例
const service = axios.create({
// axios中请求配置有baseURL选项,表示请求URL公共部分
......
......@@ -354,11 +354,6 @@ function handleDelete(row) {
border: 1px solid #920f20;
}
// :deep(.el-button--info){
// background-color: #409eff;
// border: 1px solid #409eff;
// }
.idCode{
:deep(.el-upload--picture-card){
width: 380px;
......
......@@ -315,10 +315,6 @@ function backFN(row) {
border: 1px solid #920f20;
}
// :deep(.el-button--info){
// background-color: #409eff;
// border: 1px solid #409eff;
// }
.idCode {
:deep(.el-upload--picture-card) {
......
<template>
<div>
<div class="box">
<el-card class="mt30"></el-card>
</div>
</div>
......
<template>
<div>
<div class="box">
<el-card class="mt30"></el-card>
</div>
......
<template>
<div>
<div class="box">
<el-card class="mt30"></el-card>
</div>
......
<template>
<div>
<div class="box">
<el-card class="mt30"></el-card>
</div>
......
<template>
<div>
<div class="box">
<el-card class="mt30"></el-card>
</div>
......
......@@ -94,8 +94,8 @@ import {ElMessage, ElMessageBox} from 'element-plus'
import FileUpload from "@/components/FileUpload";
import * as match from "@/apiPc/match";
import cache from "@/plugins/cache";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const form = ref({})
const regionsList = ref([])
const countryList = ref([])
......
......@@ -101,10 +101,10 @@ import {ElMessage, ElMessageBox} from 'element-plus'
import {nationList} from '@/assets/js/data'
import {getGroupInfo} from "@/apiPc/match";
import TeamInfo from "@/viewsPc/center/teamInfo";
import cache from "@/plugins/cache";
import useUserStore from "@/store/modules/user";
import {useStorage} from "@vueuse/core/index";
const language = ref(cache.local.get('language') || 0)
const language= useStorage('language',0)
const router = useRouter()
const {proxy} = getCurrentInstance()
const props = defineProps({
......
......@@ -9,14 +9,21 @@
<el-form-item :label="language==0?'姓名':'Name'">
<el-input v-model="query.realName" style="width: 120px;" clearable/>
</el-form-item>
<el-form-item :label="language==0?'证件类型':'ID Type'">
<el-input v-model="query.idcType" style="width: 120px;" clearable/>
<el-form-item :label="language==0?'证件类型':'ID Type'" >
<el-select v-model="query.idcType" style="width: 100px;" clearable>
<el-option
v-for="item in certificates"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item :label="language==0?'证件号码':'ID NO.'">
<el-input v-model="query.idcode" style="width: 120px;" clearable/>
</el-form-item>
<el-form-item :label="language==0?'会员角色':'Role'">
<el-select v-model="labelArr" multiple>
<el-select v-model="labelArr" multiple style="width: 100px;">
<el-option v-for="l in labels" :key="l.value" :value="l.value" :label="language==0?(l.label):(l.enlabel)"/>
</el-select>
</el-form-item>
......@@ -59,9 +66,9 @@ import * as match from '@/apiPc/match'
import {ElMessage, ElMessageBox} from 'element-plus'
import {getGroupPersonList, getPerPersonList} from "@/apiPc/match";
import PersonTable from "@/viewsPc/match/components/personTable";
import cache from "@/plugins/cache";
import useUserStore from "@/store/modules/user";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const tableData = ref([])
const labelArr = ref([])
const labels = ref([
......@@ -73,6 +80,20 @@ const labels = ref([
{value: '6', label: '官员', enlabel: 'Official'},
{value: '3', label: '其他', enlabel: 'Other'}
])
const certificates = ref([
{
value: '0',
label: language.value == 0 ? '居民身份证' : 'Resident ID card'
},
{
value: '1',
label: language.value == 0 ? '护照' : 'Passport'
},
{
value: '2',
label: language.value == 0 ? '其他' : 'Other'
}
])
const query = ref({
pageNum: 1, pageSize: 10
})
......
......@@ -34,8 +34,8 @@ import {updateUserPwd} from '@/api/system/user'
import useUserStore from '@/store/modules/user'
import {reactive, ref, getCurrentInstance} from 'vue'
import {validPassword} from '@/utils/validate'
import cache from "@/plugins/cache";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language = useStorage('language', 0)
const show = ref(false)
const {proxy} = getCurrentInstance()
......
......@@ -10,9 +10,9 @@
</template>
<script setup>
import cache from "@/plugins/cache";
import {onMounted} from "@vue/runtime-core";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const list = ref([])
</script>
......
......@@ -17,9 +17,9 @@
</template>
<script setup>
import cache from "@/plugins/cache";
import {onMounted} from "@vue/runtime-core";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const list = ref([])
onMounted(()=>{
getList()
......
......@@ -197,7 +197,7 @@ h4.leftboderTT{text-indent: 0;
:deep(.el-tabs--left .el-tabs__nav-wrap.is-left::after) {
display: none;
}
:deep(.el-tabs__nav){float: none;}
:deep(.el-tabs__item.is-active) {
font-size: 15px;background: #fff;
}
......
......@@ -170,11 +170,12 @@ import {forgetPassword, getCodeImg} from '@/api/login'
import * as match from '@/apiPc/match'
import Cookies from 'js-cookie'
import useUserStore from '@/store/modules/user'
const language = ref(cache.local.get('language') || 0)
const language= useStorage('language',0)
import { useRouter } from 'vue-router'
import { getCurrentInstance, ref, watch } from 'vue'
import { ElMessage,ElMessageBox} from 'element-plus'
import cache from "@/plugins/cache";
import {useStorage} from "@vueuse/core/index";
const emit = defineEmits(['submitForm'])
const userStore = useUserStore()
const router = useRouter()
......
......@@ -180,7 +180,8 @@ const route = useRoute()
import {ElMessage} from 'element-plus'
import {useRoute, useRouter} from 'vue-router'
import useUserStore from "@/store/modules/user";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const data = reactive({
loading:false,
......
......@@ -210,8 +210,9 @@ import SingleSignStep from "@/viewsPc/match/components/singleSignStep";
import MatchInfoRow from "@/viewsPc/match/components/matchInfo-row";
import useUserStore from "@/store/modules/user";
import {getPerPersonList} from "@/apiPc/match";
import {useStorage} from "@vueuse/core/index";
const language = ref(cache.local.get('language') || 0)
const language= useStorage('language',0)
const data = reactive({
coachForm: {}, activeStep: 2,
......
......@@ -20,10 +20,10 @@
@change="queryAthletes"
clearable/>
</div>
<div class="noPicChooseForm">
<div class="noPicChooseForm" id="chooseArr">
<el-checkbox-group v-model="choosedchoosed" @change="changechoosed">
<el-button ref="addBtnRef" plain @click="chooseSportman">+{{ language == 0 ? '选择' : 'add' }}</el-button>
<el-checkbox v-for="c in choosedListBak" :label="c.id" border>
<el-button id="addRef" plain @click="chooseSportman">+{{ language == 0 ? '选择' : 'add' }}</el-button>
<el-checkbox v-for="c in choosedListBak" :value="c.id" border>
<p class="name">{{ c.realName }}
<!-- ({{ c.sexStr }})-->
<img v-if="c.sex=='0'" src="@/assets/img/female.png"/>
......@@ -50,7 +50,7 @@
<div class="chooseForm">
<el-checkbox-group v-model="choosedchoosed" @change="changechoosed">
<!-- v-show="choosedchoosed.indexOf(c.id) !== -1"-->
<el-checkbox v-for="c in choosed2Listbak" :label="c.id" checked>
<el-checkbox v-for="c in choosed2Listbak" :value="c.id" checked>
<el-avatar fit="cover" v-if="c.picUrl" :size="60" :src="fillImgUrl(c.picUrl)"/>
<el-avatar fit="cover" v-else-if="c.sex == 0" :size="60" src="/img/head1.png"/>
<el-avatar fit="cover" v-else-if="c.sex == 1" :size="60" src="/img/head0.png"/>
......@@ -78,9 +78,9 @@
clearable/>
</div>
</div>
<div v-loading="loadingProject" style="height: 60vh">
<div v-loading="loadingProject" id="projectbox" style="height: 60vh">
<el-checkbox-group v-model="projectIds">
<el-checkbox class="flexBetweenBox" v-for="c in projectList" :label="c.id" :key="c.id">
<el-checkbox class="flexBetweenBox" v-for="c in projectList" :value="c.id" :key="c.id">
<div class="flexBetween w100">
<div class="l">
{{ c.code }}:{{ c.name }}
......@@ -99,7 +99,7 @@
<el-row class="mt20">
<el-col :span="24">
<div class="text-center">
<el-button type="primary" class="btn-lineG w200px"
<el-button type="primary" class="btn-lineG w200px" id="signUpBtn"
:disabled="projectIds.length==0||choosedchoosed.length==0" round @click="signUp">
{{ language == 0 ? '确定' : 'Confirm' }}
</el-button>
......@@ -159,7 +159,12 @@
</el-dialog>
<dialogExtraForm ref="popExtraForm" @submitForm="getSignInfoList"/>
<!-- <el-tour v-model="openTour"></el-tour>-->
<el-tour v-model="openTour" :current="tourCurrent">
<el-tour-step target="#addRef" title="第一步" description="点击选择运动员" :next-button-props="nextButtonProps"/>
<el-tour-step v-if="choosedList.length>0" target="#chooseArr" title="第二步" description="勾选报项运动员"/>
<el-tour-step v-if="projectList.length>0" target="#projectbox" title="第三步" description="选择报名项目"/>
<el-tour-step v-if="projectIds.length>0" target="#signUpBtn" title="第四步" description="点击报项"/>
</el-tour>
</div>
</template>
......@@ -172,7 +177,6 @@ import dialogAllSportsmanList from './components/allSportsmanList'
import dialogImport from './components/import'
import dialogExtraForm from './components/extraForm'
import {Search, Switch} from "@element-plus/icons-vue";
const {proxy} = getCurrentInstance()
const router = useRouter()
const route = useRoute()
......@@ -184,11 +188,11 @@ import CoachInfoRow from "@/viewsPc/match/components/coachInfo-row"
import SignInfoTable from "@/viewsPc/match/components/signInfo-table"
import ZuTable from '@/viewsPc/match/components/zu-table'
import {signgetSignInfoConflict} from "@/apiPc/match";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const data = reactive({
coachForm: {}, activeStep: 2,
tourCurrent:0,
tableData: [],
signInfoList: [],
zuTableList: [],
......@@ -218,13 +222,14 @@ const data = reactive({
choosed2List: [],
choosed2Listbak: [],
projectQuery: {}, tableType: 1,
openTour:true
openTour:false
})
const {
activeTeam, names, tableData, signInfoList, zuTableList, choosedList,choosedListBak,
extraform, groupId, signType, coachOrLeaderFlag, showResult, noPhotoCanSign, projectIds, choosedchoosed, activeStep, projectList, choosed2List,choosed2Listbak, loadingProject,
projectQuery, tableType, athletesQuery, zuQuery,openTour
projectQuery, tableType, athletesQuery, zuQuery,openTour,tourCurrent
} = toRefs(data)
const nextButtonProps = ref({})
const matchId = ref(route.query.matchId)
let signInfoType = null
onMounted(() => {
......@@ -232,6 +237,7 @@ onMounted(() => {
getSignInfoList()
getMatch(matchId.value)
getMySignInfo()
// openTour.value = true
})
let chargeFlag
......@@ -268,7 +274,6 @@ function getSignInfoList() {
})
}
function submitForm() {
if (signInfoType == '1') {
ElMessageBox.confirm(language.value == 0 ? '已报项,前往我的报项' : 'Reported items, go to my submission',
......@@ -369,6 +374,9 @@ function getProjectList() {
match.getProjectPageByPerIds(obj).then(res => {
projectList.value = res.rows
loadingProject.value = false
if(choosed2Listbak.value.length>0 && projectList.value.length>0){
tourCurrent.value = 2
}
}).catch(err => {
loadingProject.value = false
ElMessage.error(err.msg)
......@@ -401,7 +409,11 @@ function getChoosed(list) {
console.log(list)
choosedList.value = list
choosedListBak.value = list
console.log('选好了', choosedchoosed.value)
if(list.length>0){
// openTour.value = false
tourCurrent.value = 1
}
// console.log('选好了', choosedchoosed.value)
}
function addCoach() {
......@@ -741,7 +753,7 @@ watch(choosedchoosed, (newVal, oldVal) => {
.noPicChooseForm {
overflow: auto;
height: 70vh;
//height: 70vh;
.el-checkbox-group {
display: flex;
......
......@@ -50,8 +50,8 @@ import useUserStore from "@/store/modules/user"
import {ref} from "vue"
import cache from "@/plugins/cache"
import {useRouter} from "vue-router";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const user = useUserStore().user
const goHome = () => {
......
......@@ -71,8 +71,9 @@ import {ElMessage} from 'element-plus'
import {nationList} from '@/assets/js/data'
import _ from 'lodash'
import cache from "@/plugins/cache";
import {useStorage} from "@vueuse/core/index";
const language = ref(cache.local.get('language') || 0)
const language= useStorage('language',0)
const certificates = ref([
{
value: '0',
......
......@@ -100,10 +100,9 @@ import {reactive, ref, toRefs, watch} from 'vue'
import {getCurrentInstance, nextTick, onMounted} from '@vue/runtime-core'
import * as match from '@/apiPc/match'
import {ElMessage} from 'element-plus'
import {nationList} from '@/assets/js/data'
import _ from 'lodash'
import cache from "@/plugins/cache";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const certificates = ref([
{
value: '0',
......
......@@ -88,10 +88,10 @@ import {getCurrentInstance, nextTick, onMounted} from '@vue/runtime-core'
import * as match from '@/apiPc/match'
import {ElMessage} from 'element-plus'
import _ from 'lodash'
import cache from "@/plugins/cache";
import Vcode from "vue3-puzzle-vcode"
import {checkWdsf} from "@/apiPc/match";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const certificates = ref([
{
value: '0',
......
......@@ -14,7 +14,14 @@
<el-input v-model="query.realName" style="width: 120px;" clearable/>
</el-form-item>
<el-form-item :label="language==0?'证件类型':'ID Type'">
<el-input v-model="query.idcType" style="width: 120px;" clearable/>
<el-select v-model="query.idcType" style="width: 100px;" clearable>
<el-option
v-for="item in certificates"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item :label="language==0?'证件号码':'ID NO.'">
<el-input v-model="query.idcode" style="width: 120px;" clearable/>
......@@ -88,11 +95,9 @@ import {reactive, ref, toRefs, watch} from 'vue'
import {getCurrentInstance, nextTick, onMounted} from '@vue/runtime-core'
import * as match from '@/apiPc/match'
import addCoach from '../components/addCoach'
import {getGroupPersonList} from "@/apiPc/match";
import Import from '../components/import'
import cache from "@/plugins/cache";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const {proxy} = getCurrentInstance()
const emit = defineEmits([ 'transfer'])
......@@ -108,6 +113,20 @@ const data = reactive({
total: 0
})
const {query, tableData, show, title, loading, noPhotoCanSign,total} = toRefs(data)
const certificates = ref([
{
value: '0',
label: language.value == 0 ? '居民身份证' : 'Resident ID card'
},
{
value: '1',
label: language.value == 0 ? '护照' : 'Passport'
},
{
value: '2',
label: language.value == 0 ? '其他' : 'Other'
}
])
let matchId
let groupId
let choosedList = []
......
......@@ -56,10 +56,10 @@ const props = defineProps({
})
const names = ref({})
const loading = ref(true)
import cache from "@/plugins/cache"
import {useStorage} from "@vueuse/core/index";
const user = useUserStore().user
const group = useUserStore().group || {}
const language = ref(cache.local.get('language') || 0)
const language= useStorage('language',0)
onMounted(() => {
if (user.utype == '2') {
tuandui()
......
......@@ -61,8 +61,8 @@ const { proxy } = getCurrentInstance()
const emit = defineEmits(['submitForm'])
const uploadUrl = ref('/upload/upLoadToFileServer')
const route = useRoute()
import cache from "@/plugins/cache"
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const data = reactive({
form: {},
......
......@@ -26,11 +26,10 @@
<script setup>
import useUserStore from "@/store/modules/user";
import cache from "@/plugins/cache";
import {getGroup} from "@/api/match/CompetitionProject";
import * as match from "@/apiPc/match";
import {useStorage} from "@vueuse/core/index";
const language = ref(cache.local.get('language') || 0)
const language= useStorage('language',0)
const props = defineProps({
groupId: {
type: Object,
......
......@@ -27,8 +27,8 @@ import { ElMessage, ElMessageBox } from 'element-plus'
const { proxy } = getCurrentInstance()
import useUserStore from '@/store/modules/user'
const emit = defineEmits(['submitForm'])
import cache from "@/plugins/cache"
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const action = ref('')
const accept = ref('.xlsx')
const title = ref('')
......
......@@ -26,7 +26,10 @@
<td>{{ p.danceType }}</td>
<td>{{ p.danceTypeDetailStr }}</td>
<td>{{ p.playTypeStr }}</td>
<td>{{ p.birthPeriod }}</td>
<td>
<div>{{ p.birthPeriod }}</div>
<div>{{p.birthPeriodSecond}}</div>
</td>
<td>{{ language==0?'¥':'€' }}{{ p.serviceFee }}</td>
</tr>
</table>
......
......@@ -36,11 +36,10 @@
<script setup>
import {onMounted, ref} from "vue";
import cache from '@/plugins/cache'
import {getMatchNewslistByCode} from "@/apiPc/match";
import {useRouter} from "vue-router";
import {getNewsListById, getnoteListcptid} from "@/apiPc/webSite";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const router = useRouter()
const props = defineProps({
matchId: {
......
......@@ -50,8 +50,8 @@
<script setup>
import {ref} from "vue";
import cache from "@/plugins/cache";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const emit = defineEmits(['edit', 'delete'])
let title = ''
const props = defineProps({
......
......@@ -107,15 +107,15 @@ function goBooking(n) {
//车辆
router.push({path: `/booking/car/${props.matchId}`})
break;
case 4:
case 3:
//餐饮
router.push({path: `/booking/dining/${props.matchId}`})
break;
case 5:
case 4:
//化妆
router.push({path: `/booking/makeup/${props.matchId}`})
break;
case 6:
case 5:
//拍照
router.push({path: `/booking/photography/${props.matchId}`})
break;
......
......@@ -116,8 +116,8 @@ const props = defineProps({
default: '0'
}
})
import cache from "@/plugins/cache";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const extraTableHead = ref([])
const loading = ref(true)
const sumText = ref('保险费')
......
......@@ -7,8 +7,8 @@
</template>
<script setup>
import cache from "@/plugins/cache";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const props = defineProps({
activeStep: {
type: Number,
......
......@@ -52,8 +52,8 @@
import {ref} from "vue";
import {onMounted} from "@vue/runtime-core";
import {dayjs} from "element-plus"
import cache from "@/plugins/cache"
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const router = useRouter()
const time = ref(0)
......
......@@ -8,8 +8,8 @@
</template>
<script setup>
import cache from "@/plugins/cache";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const props = defineProps({
activeStep: {
type: Number,
......
......@@ -43,6 +43,8 @@
</template>
<script setup>
import {useStorage} from "@vueuse/core/index";
const emit = defineEmits(['delete'])
const props = defineProps({
list: {
......@@ -65,8 +67,7 @@ const props = defineProps({
default: 0
}
})
import cache from "@/plugins/cache";
const language = ref(cache.local.get('language') || 0)
const language= useStorage('language',0)
const remove = (id) => {
emit('delete', id)
}
......
......@@ -23,8 +23,8 @@
<p class="ppl"><label class="bm1">比赛时间:</label>{{ matchData.beginTime?.slice(0, 10) }} 至
{{ matchData.endTime?.slice(0, 10) }}</p>
<p class="ppl"><label class="bm2">赛事级别:</label>{{ matchData.level }}</p>
<p class="ppl"><label class="bm3">&ensp;&ensp;&ensp;&ensp;点:</label>{{ matchData.address }}</p>
<p class="ppl"><label class="bm4">报名截止:</label>{{ matchData.signEndTime?.slice(0, 10) }}</p>
<p class="ppl" v-if="matchData.address"><label class="bm3">&ensp;&ensp;&ensp;&ensp;点:</label>{{ matchData.address }}</p>
<p class="ppl" v-if="matchData.signEndTime"><label class="bm4">报名截止:</label>{{ matchData.signEndTime?.slice(0, 10) }}</p>
</el-col>
<el-col :lg="8" :md="12" :xl="8" v-if="matchData.type=='0'">
<p class="countDownTitle"><span>报名截止倒计时</span></p>
......
......@@ -325,16 +325,15 @@ const payType = ref('2')
const orderId = ref(route.query.orderId)
const matchId = ref()
const groupId = ref()
import cache from "@/plugins/cache";
import GroupInfoRow from "@/viewsPc/match/components/groupInfo-row";
import CoachInfoRow from "@/viewsPc/match/components/coachInfo-row";
import SignInfoTable from "@/viewsPc/match/components/signInfo-table"
import ZuTable from "@/viewsPc/match/components/zu-table";
import useUserStore from "@/store/modules/user";
import FileUpload from "@/components/FileUpload";
import {upReceipt} from "@/apiPc/match";
import {useStorage} from "@vueuse/core/index";
const isLogin = ref(false)
const language = ref(cache.local.get('language') || 0)
const language= useStorage('language',0)
const signInfoList = ref([])
const zuTableList = ref([])
const totalFee = ref('')
......
......@@ -19,14 +19,14 @@
<script setup>
import {ref} from "vue";
import cache from "@/plugins/cache";
import {useRoute, useRouter} from "vue-router";
import {onMounted} from "@vue/runtime-core";
import {callbackPalPay} from "@/apiPc/match";
import {useStorage} from "@vueuse/core/index";
const route = useRoute()
const router = useRouter()
const language = ref(cache.local.get('language') || 0)
const language= useStorage('language',0)
const orderId = ref(route.query.orderId)
onMounted(() => {
......
......@@ -108,13 +108,13 @@ import {useRoute, useRouter} from "vue-router";
import useUserStore from "@/store/modules/user";
import ZuTable from "@/viewsPc/match/components/zu-table";
import {ElMessageBox} from "element-plus";
import {exportCn} from "@/apiPc/match";
import SingleSignStep from "@/viewsPc/match/components/singleSignStep";
import {useStorage} from "@vueuse/core/index";
const route = useRoute()
const router = useRouter()
const activeStep = ref(3)
const groupInfo = useUserStore().group || {}
const language = ref(cache.local.get('language') || 0)
const language= useStorage('language',0)
const groupId = ref(route.query.groupId || 0)
const form = ref({})
const matchId = ref(route.query.matchId)
......
......@@ -93,8 +93,7 @@ import { toRefs } from '@vueuse/shared'
import TeamSignStep from './components/teamSignStep'
import MatchInfoRow from "@/viewsPc/match/components/matchInfo-row";
import cache from "@/plugins/cache"
const language = ref(cache.local.get('language') || 0)
const language= useStorage('language',0)
const { proxy } = getCurrentInstance()
const router = useRouter()
......@@ -102,7 +101,7 @@ const route = useRoute()
import * as match from '@/apiPc/match'
import { ElMessage } from 'element-plus'
import _ from 'lodash'
import {saveMyGroupForCpt} from "@/apiPc/match";
import {useStorage} from "@vueuse/core/index";
const data = reactive({
isRanks: false,
......
......@@ -12,8 +12,10 @@
<script setup>
import {ref} from "vue";
import cache from "@/plugins/cache";
import {useStorage} from "@vueuse/core/index";
const language = useStorage('language', 0)
const language = ref(cache.local.get('language') || 0)
const props = defineProps({
activeStep: {
type: Number,
......
......@@ -144,14 +144,14 @@ import Step3 from "./team/step3"
import Vcode from "vue3-puzzle-vcode"
import {ElMessage} from 'element-plus'
import CountDown from '@chenfengyuan/vue-countdown'
import cache from '@/plugins/cache'
import {checkWdsf, getCaptchaSms, loginSingle, registerSingle} from "@/apiPc/match";
import {setToken} from "@/utils/auth";
import PersonalStep from "@/viewsPc/register/components/personal-step";
import FileUpload from "@/components/FileUpload";
import {useRouter, useRoute} from "vue-router";
import {useStorage} from "@vueuse/core/index";
const language = ref(cache.local.get('language') || 0)
const language= useStorage('language',0)
const router = useRouter()
const route = useRoute()
const {proxy} = getCurrentInstance()
......
......@@ -48,9 +48,9 @@ import Vcode from "vue3-puzzle-vcode"
import { ElMessage } from 'element-plus'
import CountDown from '@chenfengyuan/vue-countdown'
import {getCaptchaSms,checkRegisterCode} from "@/apiPc/match";
import cache from '@/plugins/cache'
import {onMounted} from "@vue/runtime-core";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const data = reactive({
isShow:false,
......
......@@ -111,11 +111,11 @@ import {onMounted, toRefs, reactive} from "vue"
import * as match from "@/apiPc/match";
import {ElMessage} from "element-plus";
import {setToken} from "@/utils/auth";
import cache from "@/plugins/cache";
import {useStorage} from "@vueuse/core/index";
const {proxy} = getCurrentInstance()
const emit = defineEmits(['submit', 'prev'])
const language = ref(cache.local.get('language') || 0)
const language= useStorage('language',0)
const props = defineProps({
accont: {
type: String,
......
......@@ -23,9 +23,9 @@ import Vcode from "vue3-puzzle-vcode"
import {ElMessage} from 'element-plus'
import CountDown from '@chenfengyuan/vue-countdown'
import {getCaptchaSms, checkRegisterCode} from "@/apiPc/match"
import cache from '@/plugins/cache'
import {useRouter} from "vue-router";
const language = ref(cache.local.get('language') || 0)
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const props = defineProps({
accont:{
type:String,
......
......@@ -20,14 +20,12 @@
</template>
<script setup>
import {reactive} from "@vue/runtime-core";
import Step1 from "./step1";
import Step2 from "./step2";
import Step3 from "./step3";
import * as match from "@/apiPc/match"
import {onMounted,toRefs} from "vue"
import cache from '@/plugins/cache'
const language = ref(cache.local.get('language') || 0)
import {onMounted,toRefs,reactive} from "vue"
import {useStorage} from "@vueuse/core/index";
const language= useStorage('language',0)
const data = reactive({
isShow:false,
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!