Merge pull request 'xbx' (#134) from xbx into master
Reviewed-on: http://git.luyuan.tk/luyuan/beelink/pulls/134
This commit is contained in:
commit
1e4efc75e3
@ -19,6 +19,7 @@
|
|||||||
"trtc-js-sdk": "^4.6.5",
|
"trtc-js-sdk": "^4.6.5",
|
||||||
"vod-js-sdk-v6": "^1.4.10",
|
"vod-js-sdk-v6": "^1.4.10",
|
||||||
"vue": "^3.0.0-0",
|
"vue": "^3.0.0-0",
|
||||||
|
"vue-cropper": "^0.5.5",
|
||||||
"vue-router": "^4.0.0-0",
|
"vue-router": "^4.0.0-0",
|
||||||
"vuex": "^4.0.0-0"
|
"vuex": "^4.0.0-0"
|
||||||
},
|
},
|
||||||
|
@ -9,7 +9,7 @@ html{
|
|||||||
body{
|
body{
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
background-color: #fff;
|
background-color: #F5F5F5;
|
||||||
font-family: Futura,sans-serif;
|
font-family: Futura,sans-serif;
|
||||||
}
|
}
|
||||||
video{
|
video{
|
||||||
|
@ -7,15 +7,15 @@
|
|||||||
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
||||||
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
|
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
|
||||||
<title><%= htmlWebpackPlugin.options.title %></title>
|
<title><%= htmlWebpackPlugin.options.title %></title>
|
||||||
<link href="http://imgcache.qq.com/open/qcloud/video/tcplayer/tcplayer.css" rel="stylesheet">
|
<link href="https://imgcache.qq.com/open/qcloud/video/tcplayer/tcplayer.css" rel="stylesheet">
|
||||||
<!-- 如需在IE8、9浏览器中初始化播放器,浏览器需支持Flash并在页面中引入 -->
|
<!-- 如需在IE8、9浏览器中初始化播放器,浏览器需支持Flash并在页面中引入 -->
|
||||||
<!--[if lt IE 9]>
|
<!--[if lt IE 9]>
|
||||||
<script src="//imgcache.qq.com/open/qcloud/video/tcplayer/ie8/videojs-ie8.js"></script>
|
<script src="//imgcache.qq.com/open/qcloud/video/tcplayer/ie8/videojs-ie8.js"></script>
|
||||||
<![endif]-->
|
<![endif]-->
|
||||||
<!-- 如果需要在 Chrome Firefox 等现代浏览器中通过H5播放hls,需要引入 hls.js -->
|
<!-- 如果需要在 Chrome Firefox 等现代浏览器中通过H5播放hls,需要引入 hls.js -->
|
||||||
<script src="http://imgcache.qq.com/open/qcloud/video/tcplayer/lib/hls.min.0.8.8.js"></script>
|
<script src="https://imgcache.qq.com/open/qcloud/video/tcplayer/lib/hls.min.0.8.8.js"></script>
|
||||||
<!-- 引入播放器 js 文件 -->
|
<!-- 引入播放器 js 文件 -->
|
||||||
<script src="http://imgcache.qq.com/open/qcloud/video/tcplayer/tcplayer.min.js"></script>
|
<script src="https://imgcache.qq.com/open/qcloud/video/tcplayer/tcplayer.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
//designWidth:设计稿的实际宽度值,需要根据实际设置
|
//designWidth:设计稿的实际宽度值,需要根据实际设置
|
||||||
//maxWidth:制作稿的最大宽度值,需要根据实际设置
|
//maxWidth:制作稿的最大宽度值,需要根据实际设置
|
||||||
@ -79,7 +79,7 @@
|
|||||||
position: fixed;
|
position: fixed;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
z-index: 999;
|
z-index: 1001;
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
@ -267,11 +267,12 @@
|
|||||||
<!-- content -->
|
<!-- content -->
|
||||||
<div class="row-div" style="height: 100%; width: 100%; padding: 10px">
|
<div class="row-div" style="height: 100%; width: 100%; padding: 10px">
|
||||||
<div class="col-div" style="width: 340px; height: 100%; padding: 10px">
|
<div class="col-div" style="width: 340px; height: 100%; padding: 10px">
|
||||||
<div class="col-div card" style="width: 100%; height: 100%">
|
<div class="col-div card" style="width: 100%; height: 100%; padding: 23px">
|
||||||
<!-- 成员列表 -->
|
<!-- 成员列表 -->
|
||||||
|
<div style="width: 100%;">上课人员</div>
|
||||||
<div id="member-list" class="col-div" style="width: 100%; justify-content: flex-start; flex: 1">
|
<div id="member-list" class="col-div" style="width: 100%; justify-content: flex-start; flex: 1">
|
||||||
<!-- member -->
|
<!-- member -->
|
||||||
<div id="member-me" style="width: 100%; padding-left: 20px">
|
<!-- <div id="member-me" style="width: 100%; padding-left: 20px">
|
||||||
<div class="row-div member"
|
<div class="row-div member"
|
||||||
style="width: 100%; height: 50px; justify-content: space-between">
|
style="width: 100%; height: 50px; justify-content: space-between">
|
||||||
<div class="member-id">(我)</div>
|
<div class="member-id">(我)</div>
|
||||||
@ -283,7 +284,7 @@
|
|||||||
alt="">
|
alt="">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
11
src/App.vue
11
src/App.vue
@ -16,12 +16,13 @@ import { provideI18n } from "@/utils/i18n"
|
|||||||
import i18ninit from "@/i18n/init"
|
import i18ninit from "@/i18n/init"
|
||||||
import enUS from 'ant-design-vue/es/locale/en_US';
|
import enUS from 'ant-design-vue/es/locale/en_US';
|
||||||
import zhCN from 'ant-design-vue/es/locale/zh_CN';
|
import zhCN from 'ant-design-vue/es/locale/zh_CN';
|
||||||
|
import dayjs from 'dayjs';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
setup(){
|
setup(){
|
||||||
console.log(i18ninit)
|
console.log(i18ninit)
|
||||||
const len = provideI18n(i18ninit);
|
const len = provideI18n(i18ninit);
|
||||||
len.locale.value = !getValue("Lanvuage") ? 'zh' : getValue("Lanvuage");
|
// len.locale.value = !getValue("Lanvuage") ? 'zh' : getValue("Lanvuage");
|
||||||
if(getValue('token')){
|
if(getValue('token')){
|
||||||
store.commit("login", true)
|
store.commit("login", true)
|
||||||
store.dispatch("setUserInfo");
|
store.dispatch("setUserInfo");
|
||||||
@ -34,6 +35,14 @@ export default defineComponent({
|
|||||||
}
|
}
|
||||||
const zh = zhCN
|
const zh = zhCN
|
||||||
const en = enUS
|
const en = enUS
|
||||||
|
/* eslint-disable */
|
||||||
|
const utc = require('dayjs/plugin/utc') // dependent on utc plugin
|
||||||
|
/* eslint-disable */
|
||||||
|
const timezone = require('dayjs/plugin/timezone')
|
||||||
|
const days: any = dayjs;
|
||||||
|
dayjs.extend(utc)
|
||||||
|
dayjs.extend(timezone)
|
||||||
|
console.log(days.tz.guess())
|
||||||
return{
|
return{
|
||||||
zh,
|
zh,
|
||||||
en,
|
en,
|
||||||
|
@ -14,6 +14,25 @@ export interface Get {
|
|||||||
let login: MessageType;
|
let login: MessageType;
|
||||||
let count = 0;
|
let count = 0;
|
||||||
const div: any = document.getElementById("make");
|
const div: any = document.getElementById("make");
|
||||||
|
export function countadd(){
|
||||||
|
if(count == 0){
|
||||||
|
login = message.loading('加载中..', 0)
|
||||||
|
div.style.display = "block"
|
||||||
|
}
|
||||||
|
count++;
|
||||||
|
}
|
||||||
|
export function countdel(){
|
||||||
|
if(count != 0){
|
||||||
|
setTimeout(()=>{
|
||||||
|
count--;
|
||||||
|
if(count == 0){
|
||||||
|
login();
|
||||||
|
div.style.display = "none"
|
||||||
|
}
|
||||||
|
console.log(count)
|
||||||
|
}, 1000)
|
||||||
|
}
|
||||||
|
}
|
||||||
axios.interceptors.request.use((config)=>{
|
axios.interceptors.request.use((config)=>{
|
||||||
if(count == 0){
|
if(count == 0){
|
||||||
login = message.loading('加载中..', 0)
|
login = message.loading('加载中..', 0)
|
||||||
|
@ -3,6 +3,7 @@ import store from '@/store';
|
|||||||
import { LiveList, LivelistInfo, LoginData, UserInfo } from '@/types';
|
import { LiveList, LivelistInfo, LoginData, UserInfo } from '@/types';
|
||||||
import { getValue, saveValue } from '@/utils/common';
|
import { getValue, saveValue } from '@/utils/common';
|
||||||
import { message } from 'ant-design-vue';
|
import { message } from 'ant-design-vue';
|
||||||
|
import dayjs from 'dayjs';
|
||||||
import { del, get, post, put, setToken } from './base'
|
import { del, get, post, put, setToken } from './base'
|
||||||
|
|
||||||
|
|
||||||
@ -885,6 +886,14 @@ export async function checksmscode(phone: string, smscode: string){
|
|||||||
|
|
||||||
|
|
||||||
export async function register(data: any){
|
export async function register(data: any){
|
||||||
|
/* eslint-disable */
|
||||||
|
const utc = require('dayjs/plugin/utc') // dependent on utc plugin
|
||||||
|
/* eslint-disable */
|
||||||
|
const timezone = require('dayjs/plugin/timezone')
|
||||||
|
const days: any = dayjs;
|
||||||
|
dayjs.extend(utc)
|
||||||
|
dayjs.extend(timezone)
|
||||||
|
|
||||||
const res = await post<any>("register",{
|
const res = await post<any>("register",{
|
||||||
mobile: data.phone,
|
mobile: data.phone,
|
||||||
code: data.quhao,
|
code: data.quhao,
|
||||||
@ -893,7 +902,10 @@ export async function register(data: any){
|
|||||||
name: data.name,
|
name: data.name,
|
||||||
email: data.emil,
|
email: data.emil,
|
||||||
mtongue: data.muyu,
|
mtongue: data.muyu,
|
||||||
tlanguage: data.jiaoshou
|
tlanguage: data.jiaoshou,
|
||||||
|
language: getValue("Lanvuage") || 'zh',
|
||||||
|
zoneid: days.tz.guess()
|
||||||
|
|
||||||
})
|
})
|
||||||
if(res.code == 0){
|
if(res.code == 0){
|
||||||
message.success(res.msg)
|
message.success(res.msg)
|
||||||
@ -1022,17 +1034,22 @@ export async function getaddr() {
|
|||||||
const res = await get<any>('ip');
|
const res = await get<any>('ip');
|
||||||
const gj = res.data.address.split("|")[0];
|
const gj = res.data.address.split("|")[0];
|
||||||
const lan = getValue("Lanvuage");
|
const lan = getValue("Lanvuage");
|
||||||
|
const qh = await get<any>('countryCode', {
|
||||||
|
longitude: res.data.content.point.x,
|
||||||
|
latitude: res.data.content.point.y
|
||||||
|
});
|
||||||
|
console.log(qh)
|
||||||
if(lan != null && lan){
|
if(lan != null && lan){
|
||||||
if(gj == "CN"){
|
if(gj == "CN"){
|
||||||
return ['人民币¥'];
|
return {hb: '人民币¥', qh};
|
||||||
}else {
|
}else {
|
||||||
return [ '美元$']
|
return {hb: '美元$'}
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
if(gj == "CN"){
|
if(gj == "CN"){
|
||||||
return ["zh", "中文", '人民币¥'];
|
return {yy: "zh", yyx: "中文", hb: '人民币¥', qh};
|
||||||
}else {
|
}else {
|
||||||
return ['en', 'English', '美元$']
|
return {yy: 'en', yyx: 'English', hb: '美元$', qh}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,7 +2,10 @@
|
|||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="user" style="overflow: hidden;">
|
<div class="user" style="overflow: hidden;">
|
||||||
<div class="user" :class="{'seltop': selnum == 0}">
|
<div class="user" :class="{'seltop': selnum == 0}">
|
||||||
<img :src="userinfo.img" alt="" class="head">
|
<!-- <img :src="userinfo.img" alt="" class="head"> -->
|
||||||
|
<a-avatar :size="85" shape="circle" class="head" :src="userinfo.img">
|
||||||
|
<template v-slot:icon><UserOutlined /></template>
|
||||||
|
</a-avatar>
|
||||||
<div class="name">{{userinfo.name}}</div>
|
<div class="name">{{userinfo.name}}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -20,7 +23,7 @@
|
|||||||
<div style="overflow: hidden;">
|
<div style="overflow: hidden;">
|
||||||
<div class="item" :class="{'selbottom': selnum == list.length - 1}"></div>
|
<div class="item" :class="{'selbottom': selnum == list.length - 1}"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="item loginout" @click="logout">
|
<div class="item loginout" @click="visible = true">
|
||||||
<div class="route">
|
<div class="route">
|
||||||
<img src="../static/images/tuichu.png" alt="" class="icon">
|
<img src="../static/images/tuichu.png" alt="" class="icon">
|
||||||
<div class="title">
|
<div class="title">
|
||||||
@ -29,6 +32,9 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<a-modal v-model:visible="visible" :title="lan.$t('tishi')" @ok="logout">
|
||||||
|
<p>{{lan.$t('querentuichu')}}</p>
|
||||||
|
</a-modal>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
@ -220,6 +226,8 @@ export default defineComponent({
|
|||||||
selnum.value = index;
|
selnum.value = index;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const visible = ref(false);
|
||||||
|
|
||||||
function logout(): void{
|
function logout(): void{
|
||||||
console.log("退出")
|
console.log("退出")
|
||||||
store.commit("login", false)
|
store.commit("login", false)
|
||||||
@ -237,6 +245,7 @@ export default defineComponent({
|
|||||||
logout,
|
logout,
|
||||||
mouse,
|
mouse,
|
||||||
lan,
|
lan,
|
||||||
|
visible,
|
||||||
jiantou: require('../static/images/jiantou.png'),
|
jiantou: require('../static/images/jiantou.png'),
|
||||||
jiantous: require('../static/images/kuozhan1.png')
|
jiantous: require('../static/images/kuozhan1.png')
|
||||||
}
|
}
|
||||||
|
@ -41,34 +41,7 @@
|
|||||||
</template>
|
</template>
|
||||||
</a-dropdown>
|
</a-dropdown>
|
||||||
|
|
||||||
<a-dropdown :trigger="['click']" :getPopupContainer="triggerNode => triggerNode.parentNode" v-if="islogin">
|
|
||||||
<div class="item" @click="e => e.preventDefault()">
|
|
||||||
<img src="@/static/images/qianbi.png" alt="" class="icon">
|
|
||||||
<div class="name">{{userinfo.currency}}</div>
|
|
||||||
<img src="@/static/images/jiantou2.png" alt="" class="down">
|
|
||||||
</div>
|
|
||||||
<template v-slot:overlay>
|
|
||||||
<a-menu style="max-height:70vh;overflow: auto;">
|
|
||||||
<!-- 货币 -->
|
|
||||||
<a-menu-item v-for="(i,j) in currencylist" :key="j" style="position: relative;">
|
|
||||||
<div class="selitem" @click="currencychange(i.value)">
|
|
||||||
<span :style="{'color': i.name == userinfo.currency ? '#06C7AE' : ''}">{{i.name}} </span>
|
|
||||||
<img src="@/static/images/duihao.png" alt="" v-if="i.name == userinfo.currency" class="duihao">
|
|
||||||
</div>
|
|
||||||
</a-menu-item>
|
|
||||||
<!-- <a-menu-item key="1">
|
|
||||||
<div class="selitem">
|
|
||||||
<span>时区2b</span>
|
|
||||||
</div>
|
|
||||||
</a-menu-item>
|
|
||||||
<a-menu-item key="3">
|
|
||||||
<div class="selitem">
|
|
||||||
<span>时区3b</span>
|
|
||||||
</div>
|
|
||||||
</a-menu-item> -->
|
|
||||||
</a-menu>
|
|
||||||
</template>
|
|
||||||
</a-dropdown>
|
|
||||||
<a-dropdown :trigger="['click']" :getPopupContainer="triggerNode => triggerNode.parentNode">
|
<a-dropdown :trigger="['click']" :getPopupContainer="triggerNode => triggerNode.parentNode">
|
||||||
<div class="item" @click="e => e.preventDefault()">
|
<div class="item" @click="e => e.preventDefault()">
|
||||||
<img src="@/static/images/yuyan.png" alt="" class="icon">
|
<img src="@/static/images/yuyan.png" alt="" class="icon">
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="video">
|
<div class="video">
|
||||||
|
<div class="title">{{title}}</div>
|
||||||
<video style="width:100%; height:100%;" :id="'a' + url" ></video>
|
<video style="width:100%; height:100%;" :id="'a' + url" ></video>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@ -10,12 +10,21 @@
|
|||||||
height: 563px;
|
height: 563px;
|
||||||
border-radius: 17px;
|
border-radius: 17px;
|
||||||
background: white;
|
background: white;
|
||||||
|
position: relative;
|
||||||
// background-color: #0f0;
|
// background-color: #0f0;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
>video{
|
>video{
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
|
.title{
|
||||||
|
position: absolute;
|
||||||
|
top: 23px;
|
||||||
|
left: 51px;
|
||||||
|
font-size: 13px;
|
||||||
|
color: #fff;
|
||||||
|
z-index: 999;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
@ -27,6 +36,9 @@ export default defineComponent({
|
|||||||
props:{
|
props:{
|
||||||
url: {
|
url: {
|
||||||
type: String
|
type: String
|
||||||
|
},
|
||||||
|
title: {
|
||||||
|
type: String
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
setup(props, ctx){
|
setup(props, ctx){
|
||||||
|
@ -42,6 +42,7 @@ export default {
|
|||||||
banquan: "Copyright Beelink Inc. All rights reserved 2019-2022",
|
banquan: "Copyright Beelink Inc. All rights reserved 2019-2022",
|
||||||
zhanghao: "accounts",
|
zhanghao: "accounts",
|
||||||
shuruzhanghao: "Please enter your email or mobile phone number",
|
shuruzhanghao: "Please enter your email or mobile phone number",
|
||||||
|
shuruzhanghaol: "Please enter your email address or country number + mobile phone number(34690xxx)",
|
||||||
mima: "password",
|
mima: "password",
|
||||||
shurumima: "Please enter your password",
|
shurumima: "Please enter your password",
|
||||||
wangjimima: "Forget the password?",
|
wangjimima: "Forget the password?",
|
||||||
@ -90,7 +91,7 @@ export default {
|
|||||||
shuliandu: "Proficiency",
|
shuliandu: "Proficiency",
|
||||||
jixutianjia: "Continue adding",
|
jixutianjia: "Continue adding",
|
||||||
xindemuyu: "Please enter your new mother tongue",
|
xindemuyu: "Please enter your new mother tongue",
|
||||||
duanshipin: "Short video",
|
duanshipin: "Short video introduction",
|
||||||
shipinyaoqiu: "Video requirements:",
|
shipinyaoqiu: "Video requirements:",
|
||||||
shipinyaoqiu1: "The time required for uploading video is within 30s",
|
shipinyaoqiu1: "The time required for uploading video is within 30s",
|
||||||
shipinyaoqiu2: "Support file size 100m",
|
shipinyaoqiu2: "Support file size 100m",
|
||||||
@ -190,7 +191,7 @@ export default {
|
|||||||
tixianjine: "Withdrawal amount",
|
tixianjine: "Withdrawal amount",
|
||||||
quanbujine: "Total amount",
|
quanbujine: "Total amount",
|
||||||
yueshu: "Your balance is only",
|
yueshu: "Your balance is only",
|
||||||
zuiditixian: "Minimum withdrawal amount ¥ 100",
|
zuiditixian: "Minimum withdrawal amount",
|
||||||
mingxichaxun: "Details inquiry",
|
mingxichaxun: "Details inquiry",
|
||||||
kaishiriqi: "Please select the start date",
|
kaishiriqi: "Please select the start date",
|
||||||
jieshuriqi: "Please select the end date",
|
jieshuriqi: "Please select the end date",
|
||||||
@ -301,6 +302,15 @@ export default {
|
|||||||
shijishichang: "Actual live broadcast duration",
|
shijishichang: "Actual live broadcast duration",
|
||||||
cshipinyaoqiu1: "The video should be no longer than 10 minutes",
|
cshipinyaoqiu1: "The video should be no longer than 10 minutes",
|
||||||
cshipinyaoqiu2: "Video size cannot exceed 500M",
|
cshipinyaoqiu2: "Video size cannot exceed 500M",
|
||||||
|
shangchuanwancheng: "Please wait for the file to be uploaded",
|
||||||
|
zhanghaocunzai: "account already exists",
|
||||||
|
shouruguize: "Description of revenue rules",
|
||||||
|
shouru1: "Live Revenue=Actual attendess x Actual duration x unit price",
|
||||||
|
shouru2: "1 on 1, 20€/hour; 1 on N, 10€/hour/person, (1<N<=4)",
|
||||||
|
shouru3: "Attention! You can only change the currency once!",
|
||||||
|
tishi: "tip",
|
||||||
|
querentuichu: "You confirm to exit?",
|
||||||
|
huobitishi: "Attention! You can only change the currency once!",
|
||||||
shichangtishi:"",
|
shichangtishi:"",
|
||||||
renshutishi: '',
|
renshutishi: '',
|
||||||
tixianzhu: "",
|
tixianzhu: "",
|
||||||
|
@ -2,24 +2,28 @@ import zh from "./zh"
|
|||||||
import en from "./en"
|
import en from "./en"
|
||||||
import { getset } from '@/api';
|
import { getset } from '@/api';
|
||||||
import { geti18n } from '@/utils/i18n';
|
import { geti18n } from '@/utils/i18n';
|
||||||
|
import store from '@/store';
|
||||||
|
import { getValue } from '@/utils/common';
|
||||||
getset().then((res: any)=>{
|
getset().then((res: any)=>{
|
||||||
zh.shichangtishi = `最短${res.timeLowerLimit}min, 最长${res.timeCeiling}min`
|
zh.shichangtishi = `最短${res.timeLowerLimit}min, 最长${res.timeCeiling}min`
|
||||||
en.shichangtishi = `The shortest is ${res.timeLowerLimit}min and the longest is ${res.timeCeiling}min`
|
en.shichangtishi = `The shortest is ${res.timeLowerLimit}min and the longest is ${res.timeCeiling}min`
|
||||||
zh.renshutishi = `最少${res.lowerLimit}人, 最多${res.numberCeiling}人`
|
zh.renshutishi = `最少${res.lowerLimit}人, 最多${res.numberCeiling}人`
|
||||||
en.renshutishi = `At least ${res.lowerLimit}, at most ${res.numberCeiling}`
|
en.renshutishi = `At least ${res.lowerLimit}, at most ${res.numberCeiling}`
|
||||||
en.shichangtishi = `Minimum ${res.lowerLimit} person, maximum ${res.numberCeiling} people`
|
// en.shichangtishi = `Minimum ${res.lowerLimit} person, maximum ${res.numberCeiling} people`
|
||||||
zh.tixianzhu = `注:每笔提现收取${res.sxf}服务费,最低${ res.symbol + res.minmoney }`
|
zh.tixianzhu = `注:每笔提现收取${res.sxf}服务费,最低${ res.symbol + res.minmoney }`
|
||||||
en.tixianzhu = `Note: ${res.sxf} service fee will be charged for each withdrawal, with a minimum of ${ res.symbol + res.minmoney }`
|
en.tixianzhu = `Note: ${res.sxf} service fee will be charged for each withdrawal, with a minimum of ${ res.symbol + res.minmoney }`
|
||||||
// const i18n = geti18n();
|
zh.zuiditixian = "最低提现金额" + res.symbol + res.minwithdraw
|
||||||
// const loc = i18n.locale.value;
|
en.zuiditixian = "Minimum withdrawal amount " + res.symbol + res.minwithdraw
|
||||||
// i18n.locale.value = '';
|
const i18n = geti18n();
|
||||||
// i18n.locale.value = loc;
|
const loc = i18n.locale.value;
|
||||||
|
i18n.locale.value = '';
|
||||||
|
i18n.locale.value = loc;
|
||||||
console.log('i18n')
|
console.log('i18n')
|
||||||
|
store.commit("setseting", res)
|
||||||
})
|
})
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
locale: "zh", //默认语言
|
locale: getValue("Lanvuage") || 'zh', //默认语言
|
||||||
messages: {
|
messages: {
|
||||||
zh: zh,
|
zh: zh,
|
||||||
en: en
|
en: en
|
||||||
|
@ -42,6 +42,7 @@ export default {
|
|||||||
banquan:"Beelink公司版权所有 2019—2022",
|
banquan:"Beelink公司版权所有 2019—2022",
|
||||||
zhanghao:"帐号",
|
zhanghao:"帐号",
|
||||||
shuruzhanghao:"请输入您的邮箱或者手机号",
|
shuruzhanghao:"请输入您的邮箱或者手机号",
|
||||||
|
shuruzhanghaol:"请输入您的邮箱或者国家号+手机号(86186xxx)",
|
||||||
mima:"密码",
|
mima:"密码",
|
||||||
shurumima:"请输入您的密码",
|
shurumima:"请输入您的密码",
|
||||||
wangjimima:"忘记密码?",
|
wangjimima:"忘记密码?",
|
||||||
@ -90,7 +91,7 @@ export default {
|
|||||||
shuliandu:"熟练度",
|
shuliandu:"熟练度",
|
||||||
jixutianjia:"继续添加",
|
jixutianjia:"继续添加",
|
||||||
xindemuyu:"请输入新的母语",
|
xindemuyu:"请输入新的母语",
|
||||||
duanshipin:"短视频",
|
duanshipin:"短视频介绍",
|
||||||
shipinyaoqiu:"视频要求:",
|
shipinyaoqiu:"视频要求:",
|
||||||
shipinyaoqiu1:"上传视频时间要求为30s之内",
|
shipinyaoqiu1:"上传视频时间要求为30s之内",
|
||||||
shipinyaoqiu2:"支持文件大小100M",
|
shipinyaoqiu2:"支持文件大小100M",
|
||||||
@ -193,7 +194,7 @@ export default {
|
|||||||
tixianjine:"提现金额",
|
tixianjine:"提现金额",
|
||||||
quanbujine:"全部金额",
|
quanbujine:"全部金额",
|
||||||
yueshu:"您的余额只有",
|
yueshu:"您的余额只有",
|
||||||
zuiditixian:"最低提现金额¥100",
|
zuiditixian:"最低提现金额",
|
||||||
mingxichaxun:"明细查询",
|
mingxichaxun:"明细查询",
|
||||||
kaishiriqi:"请选择开始日期",
|
kaishiriqi:"请选择开始日期",
|
||||||
jieshuriqi:"请选择结束日期",
|
jieshuriqi:"请选择结束日期",
|
||||||
@ -301,6 +302,15 @@ export default {
|
|||||||
shijishichang: "实际直播时长",
|
shijishichang: "实际直播时长",
|
||||||
cshipinyaoqiu1: "视频长度不能超过10分钟",
|
cshipinyaoqiu1: "视频长度不能超过10分钟",
|
||||||
cshipinyaoqiu2: "视频大小不能超过500m",
|
cshipinyaoqiu2: "视频大小不能超过500m",
|
||||||
|
shangchuanwancheng: "请等待文件上传完成",
|
||||||
|
zhanghaocunzai: "帐号已存在",
|
||||||
|
shuoruguize: "收入规则说明",
|
||||||
|
shouru1: "直播收入=实际参加学生数x参加时长x单价",
|
||||||
|
shouru2: "单价:1对1,20欧/小时;1对N,10欧/小时/人(1<N<=4)",
|
||||||
|
shouru3: "请注意,货币一旦修改,不能变动",
|
||||||
|
tishi: "提示",
|
||||||
|
querentuichu: "您确认退出?",
|
||||||
|
huobitishi: "请注意,货币一旦修改,不能变动。",
|
||||||
shichangtishi:"",
|
shichangtishi:"",
|
||||||
renshutishi: '',
|
renshutishi: '',
|
||||||
tixianzhu:"",
|
tixianzhu:"",
|
||||||
|
8
src/import-png.d.ts
vendored
8
src/import-png.d.ts
vendored
@ -18,6 +18,14 @@ declare module 'tim-js-sdk'{
|
|||||||
export default value;
|
export default value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
declare module 'vue-cropper'{
|
||||||
|
const VueCropper: any
|
||||||
|
export {
|
||||||
|
VueCropper
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
declare var FB: any;
|
declare var FB: any;
|
||||||
|
|
||||||
declare var TCPlayer: any;
|
declare var TCPlayer: any;
|
@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="mine" :style="{height:height + 'px'}">
|
<div class="mine" :style="{height:height + 'px'}">
|
||||||
<NavTop :type="1" style="flex-shrink:0"></NavTop>
|
<NavTop :type="1" style="flex-shrink:0"></NavTop>
|
||||||
<div class="body">
|
<div class="body" id="rbody">
|
||||||
<router-view/>
|
<router-view/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
BIN
src/static/images/wenhao.png
Normal file
BIN
src/static/images/wenhao.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 5.4 KiB |
@ -1,6 +1,7 @@
|
|||||||
import { getaddr, userinfo } from '@/api';
|
import { getaddr, userinfo } from '@/api';
|
||||||
import { setLanvuage } from '@/api/base';
|
import { setLanvuage } from '@/api/base';
|
||||||
import { getValue, saveValue } from '@/utils/common';
|
import { getValue, saveValue } from '@/utils/common';
|
||||||
|
import { geti18n } from '@/utils/i18n';
|
||||||
import { isProxy } from 'vue';
|
import { isProxy } from 'vue';
|
||||||
import { createStore } from 'vuex'
|
import { createStore } from 'vuex'
|
||||||
|
|
||||||
@ -50,11 +51,32 @@ export default createStore({
|
|||||||
willsayValue: [{name: "0", level: 0}],
|
willsayValue: [{name: "0", level: 0}],
|
||||||
zoneStr: "中途岛GMT-11:00",
|
zoneStr: "中途岛GMT-11:00",
|
||||||
zoneid: 1,
|
zoneid: 1,
|
||||||
symbol: "$"
|
symbol: "$",
|
||||||
|
zoneValue:"",
|
||||||
|
currencytag: 0
|
||||||
},
|
},
|
||||||
islogin: false
|
islogin: false,
|
||||||
|
seting:{
|
||||||
|
lowerLimit: "",
|
||||||
|
minmoney: 0,
|
||||||
|
minwithdraw: "",
|
||||||
|
numberCeiling: "",
|
||||||
|
sxf: "",
|
||||||
|
symbol: "",
|
||||||
|
timeCeiling: "",
|
||||||
|
timeLowerLimit: "",
|
||||||
|
},
|
||||||
|
qh: {
|
||||||
|
code: "86",
|
||||||
|
ename: "China",
|
||||||
|
name: "中国",
|
||||||
|
}
|
||||||
},
|
},
|
||||||
mutations: {
|
mutations: {
|
||||||
|
setseting(state, info){
|
||||||
|
console.log(info, 112)
|
||||||
|
state.seting = info
|
||||||
|
},
|
||||||
setUserInfo(state, userinfo){
|
setUserInfo(state, userinfo){
|
||||||
userinfo.money = userinfo.money.toString()
|
userinfo.money = userinfo.money.toString()
|
||||||
state.userinfo = userinfo
|
state.userinfo = userinfo
|
||||||
@ -67,19 +89,20 @@ export default createStore({
|
|||||||
const split = new Date().toString().split(" ");
|
const split = new Date().toString().split(" ");
|
||||||
const timeZoneFormatted = split[split.length - 2] + " " + split[split.length - 1];
|
const timeZoneFormatted = split[split.length - 2] + " " + split[split.length - 1];
|
||||||
const lan = getValue("Lanvuage");
|
const lan = getValue("Lanvuage");
|
||||||
|
state.qh = data.qh.data;
|
||||||
if(lan != null && lan){
|
if(lan != null && lan){
|
||||||
// state.userinfo.language = data[1] // English 中文
|
// state.userinfo.language = data[1] // English 中文
|
||||||
// state.userinfo.languageValue = data[0] // 'en' 'zh'
|
// state.userinfo.languageValue = data[0] // 'en' 'zh'
|
||||||
state.userinfo.zoneStr = timeZoneFormatted;
|
state.userinfo.zoneStr = timeZoneFormatted;
|
||||||
state.userinfo.currency = data[0];
|
state.userinfo.currency = data.hb;
|
||||||
}else{
|
}else{
|
||||||
console.log(data, 111)
|
console.log(data, 111)
|
||||||
state.userinfo.language = data[1] // English 中文
|
state.userinfo.language = data.yyx // English 中文
|
||||||
state.userinfo.languageValue = data[0] // 'en' 'zh'
|
state.userinfo.languageValue = data.yy // 'en' 'zh'
|
||||||
state.userinfo.zoneStr = timeZoneFormatted;
|
state.userinfo.zoneStr = timeZoneFormatted;
|
||||||
state.userinfo.currency = data[2];
|
state.userinfo.currency = data.hb;
|
||||||
saveValue("Lanvuage", data[0]);
|
saveValue("Lanvuage", data.yy);
|
||||||
if( data[0] != 'zh'){
|
if( data.yy != geti18n().$s()){
|
||||||
location.reload()
|
location.reload()
|
||||||
}
|
}
|
||||||
// setLanvuage(data[0]);
|
// setLanvuage(data[0]);
|
||||||
|
@ -1,3 +1,5 @@
|
|||||||
|
import { message } from 'ant-design-vue';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 图片转Base64
|
* 图片转Base64
|
||||||
*/
|
*/
|
||||||
@ -64,6 +66,11 @@ export function provenimg(file: any): boolean | void{
|
|||||||
const ntypearr = file.name.split('.');
|
const ntypearr = file.name.split('.');
|
||||||
const ntype = ntypearr[ntypearr.length - 1];
|
const ntype = ntypearr[ntypearr.length - 1];
|
||||||
console.log(ntype)
|
console.log(ntype)
|
||||||
|
const size = 2 * 1024 * 1024;
|
||||||
|
if(file.size > size){
|
||||||
|
message.error("最大2MB")
|
||||||
|
return false;
|
||||||
|
}
|
||||||
let istype = false
|
let istype = false
|
||||||
for(const i in type){
|
for(const i in type){
|
||||||
if(type[i] == ntype){
|
if(type[i] == ntype){
|
||||||
@ -79,14 +86,27 @@ export function provenimg(file: any): boolean | void{
|
|||||||
* @param name 图片名字
|
* @param name 图片名字
|
||||||
*/
|
*/
|
||||||
|
|
||||||
export function provenvideo(file: any): boolean{
|
export function provenvideo(file: any, isvideo?: boolean): boolean{
|
||||||
const type = ['flv', 'mp4', 'wmv', 'mov', 'avi'];
|
const type = ['flv', 'mp4', 'wmv', 'mov', 'avi'];
|
||||||
const ntypearr = file.name.split('.');
|
const ntypearr = file.name.split('.');
|
||||||
const ntype = ntypearr[ntypearr.length - 1];
|
const ntype = ntypearr[ntypearr.length - 1];
|
||||||
|
if(isvideo){
|
||||||
|
const size = 500 * 1024 * 1024;
|
||||||
|
if(file.size > size){
|
||||||
|
message.error("最大500MB")
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
const size = 100 * 1024 * 1024;
|
||||||
|
if(file.size > size){
|
||||||
|
message.error("最大100MB")
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
for(const i in type){
|
for(const i in type){
|
||||||
if(type[i] == ntype){
|
if(type[i] == ntype){
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true;
|
return false;
|
||||||
}
|
}
|
@ -64,8 +64,18 @@ export function getdate(yue?: number): GetDate{
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
export function getweek(time: string,zhou?: number){
|
export function getweek(time: string, id: string,zhou?: number){
|
||||||
let now = dayjs((!time ? undefined : time))
|
/* eslint-disable */
|
||||||
|
const utc = require('dayjs/plugin/utc') // dependent on utc plugin
|
||||||
|
/* eslint-disable */
|
||||||
|
const timezone = require('dayjs/plugin/timezone')
|
||||||
|
dayjs.extend(utc)
|
||||||
|
dayjs.extend(timezone)
|
||||||
|
const days: any = dayjs;
|
||||||
|
console.log(id, 11111)
|
||||||
|
let now = days((!time ? undefined : time)).tz(id)
|
||||||
|
console.log(now, 11111)
|
||||||
|
|
||||||
if(zhou != undefined){
|
if(zhou != undefined){
|
||||||
now = now.day(now.day() + (zhou * 6));
|
now = now.day(now.day() + (zhou * 6));
|
||||||
}
|
}
|
||||||
|
@ -23,7 +23,7 @@
|
|||||||
</a-select-option>
|
</a-select-option>
|
||||||
<a-select-option value="Jiangsu"> Jiangsu </a-select-option>
|
<a-select-option value="Jiangsu"> Jiangsu </a-select-option>
|
||||||
</a-select> -->
|
</a-select> -->
|
||||||
<a-select :default-value="quhaolist[0].name + '+' + quhaolist[0].code" size="small" option-label-prop="label" @change="getquhao" class="getcode" show-search >
|
<a-select :default-value="mrqh.name + '+' + mrqh.code" size="small" option-label-prop="label" @change="getquhao" class="getcode" show-search >
|
||||||
<a-select-option v-for="(i,j) in quhaolist" :key="j" :value="i.name + '+' + i.code" :label="'+' + i.code">
|
<a-select-option v-for="(i,j) in quhaolist" :key="j" :value="i.name + '+' + i.code" :label="'+' + i.code">
|
||||||
{{i.name}}+{{i.code}}
|
{{i.name}}+{{i.code}}
|
||||||
</a-select-option>
|
</a-select-option>
|
||||||
@ -53,7 +53,7 @@
|
|||||||
<a-input-group compact>
|
<a-input-group compact>
|
||||||
<a-input
|
<a-input
|
||||||
style="width: 80%"
|
style="width: 80%"
|
||||||
:placeholder="lan.$t('shuruzhanghao')"
|
:placeholder="lan.$t('shuruzhanghaol')"
|
||||||
v-model:value="userinfo.phone"
|
v-model:value="userinfo.phone"
|
||||||
/>
|
/>
|
||||||
</a-input-group>
|
</a-input-group>
|
||||||
@ -117,13 +117,14 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent, onMounted, reactive, ref } from "vue";
|
import { computed, defineComponent, onMounted, reactive, ref } from "vue";
|
||||||
import LoginTab from "@/components/login/LoginTab.vue";
|
import LoginTab from "@/components/login/LoginTab.vue";
|
||||||
import NavTop from "@/components/NavTop.vue"
|
import NavTop from "@/components/NavTop.vue"
|
||||||
import { checksmscode, getquhaolist, getwebvideolist, loginpass, sendsms } from '@/api';
|
import { checksmscode, getquhaolist, getwebvideolist, loginpass, sendsms } from '@/api';
|
||||||
import { message } from 'ant-design-vue';
|
import { message } from 'ant-design-vue';
|
||||||
import router from '@/router';
|
import router from '@/router';
|
||||||
import { useI18n } from '@/utils/i18n';
|
import { useI18n } from '@/utils/i18n';
|
||||||
|
import store from '@/store';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: "Login",
|
name: "Login",
|
||||||
@ -146,6 +147,7 @@ export default defineComponent({
|
|||||||
phone: '13152639856',
|
phone: '13152639856',
|
||||||
password: '123456'
|
password: '123456'
|
||||||
})
|
})
|
||||||
|
const mrqh = computed(() => store.state.qh)
|
||||||
const quhaolist = ref<any>([
|
const quhaolist = ref<any>([
|
||||||
{
|
{
|
||||||
code: "86",
|
code: "86",
|
||||||
@ -281,7 +283,8 @@ export default defineComponent({
|
|||||||
tovideoxq,
|
tovideoxq,
|
||||||
navto,
|
navto,
|
||||||
lan,
|
lan,
|
||||||
slogin
|
slogin,
|
||||||
|
mrqh
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
@ -23,7 +23,7 @@
|
|||||||
>
|
>
|
||||||
<a-input-group compact>
|
<a-input-group compact>
|
||||||
<a-select
|
<a-select
|
||||||
:default-value="quhaolist[0].name + '+' + quhaolist[0].code"
|
:default-value="mrqh.name + '+' + mrqh.code"
|
||||||
size="small"
|
size="small"
|
||||||
@change="getquhao"
|
@change="getquhao"
|
||||||
class="getcode"
|
class="getcode"
|
||||||
@ -221,10 +221,11 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { defineComponent, onMounted, reactive, ref, toRaw } from "vue";
|
import { computed, defineComponent, onMounted, reactive, ref, toRaw } from "vue";
|
||||||
import NavTop from "@/components/NavTop.vue";
|
import NavTop from "@/components/NavTop.vue";
|
||||||
import {
|
import {
|
||||||
checksmscode,
|
checksmscode,
|
||||||
|
checkuser,
|
||||||
getquhaolist,
|
getquhaolist,
|
||||||
getwillsay,
|
getwillsay,
|
||||||
interests,
|
interests,
|
||||||
@ -234,6 +235,7 @@ import {
|
|||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import router from "@/router";
|
import router from "@/router";
|
||||||
import { useI18n } from "@/utils/i18n";
|
import { useI18n } from "@/utils/i18n";
|
||||||
|
import store from '@/store';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: "Sign",
|
name: "Sign",
|
||||||
@ -259,6 +261,7 @@ export default defineComponent({
|
|||||||
jiaoshou: "",
|
jiaoshou: "",
|
||||||
});
|
});
|
||||||
const willsay = ref<any>();
|
const willsay = ref<any>();
|
||||||
|
const mrqh = computed(() => store.state.qh)
|
||||||
const quhaolist = ref<any>([
|
const quhaolist = ref<any>([
|
||||||
{
|
{
|
||||||
code: "86",
|
code: "86",
|
||||||
@ -278,8 +281,9 @@ export default defineComponent({
|
|||||||
* 点击获取验证码 触发60S倒计时
|
* 点击获取验证码 触发60S倒计时
|
||||||
*/
|
*/
|
||||||
let lock = false;
|
let lock = false;
|
||||||
const getcode: () => void = () => {
|
const getcode = async () => {
|
||||||
console.log(11111);
|
console.log(11111);
|
||||||
|
|
||||||
if (lock) {
|
if (lock) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -287,6 +291,11 @@ export default defineComponent({
|
|||||||
message.error(lan.$t('shoujihaoweikong'));
|
message.error(lan.$t('shoujihaoweikong'));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
const iszc = await checkuser({phone: phone.value.phone})
|
||||||
|
if(iszc.code == 0){
|
||||||
|
message.error(lan.$t('zhanghaocunzai'))
|
||||||
|
return ;
|
||||||
|
}
|
||||||
lock = true;
|
lock = true;
|
||||||
sendsms(phone.value.quhao, phone.value.phone);
|
sendsms(phone.value.quhao, phone.value.phone);
|
||||||
const timestep = setInterval(() => {
|
const timestep = setInterval(() => {
|
||||||
@ -371,7 +380,9 @@ export default defineComponent({
|
|||||||
phone.value.quhao + phone.value.phone,
|
phone.value.quhao + phone.value.phone,
|
||||||
phone.value.code
|
phone.value.code
|
||||||
);
|
);
|
||||||
|
|
||||||
if (res) {
|
if (res) {
|
||||||
|
|
||||||
stepnow.value = e;
|
stepnow.value = e;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -417,7 +428,8 @@ export default defineComponent({
|
|||||||
navto,
|
navto,
|
||||||
lan,
|
lan,
|
||||||
quhaolist,
|
quhaolist,
|
||||||
getquhao
|
getquhao,
|
||||||
|
mrqh
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
@ -283,6 +283,7 @@
|
|||||||
"
|
"
|
||||||
@change="currencychange"
|
@change="currencychange"
|
||||||
v-model:value="currencyindex"
|
v-model:value="currencyindex"
|
||||||
|
:disabled="userinfo.currencytag == 1"
|
||||||
>
|
>
|
||||||
<a-select-option
|
<a-select-option
|
||||||
v-for="(item, index) in currencylist"
|
v-for="(item, index) in currencylist"
|
||||||
@ -383,7 +384,7 @@
|
|||||||
<!-- <a-input size="small" v-model:value="bindPhone.number" /> -->
|
<!-- <a-input size="small" v-model:value="bindPhone.number" /> -->
|
||||||
<a-input-group compact class="telbox">
|
<a-input-group compact class="telbox">
|
||||||
<a-select
|
<a-select
|
||||||
:default-value="quhaolist[0].name + '+' + quhaolist[0].code"
|
:default-value="mrqh.name + '+' + mrqh.code"
|
||||||
size="small"
|
size="small"
|
||||||
@change="getquhao"
|
@change="getquhao"
|
||||||
option-label-prop="label"
|
option-label-prop="label"
|
||||||
@ -493,6 +494,9 @@
|
|||||||
{{ lan.$t("baocun") }}
|
{{ lan.$t("baocun") }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<a-modal v-model:visible="huobi" :footer="null" :title="lan.$t('tishi')" >
|
||||||
|
<p>{{lan.$t('huobitishi')}}</p>
|
||||||
|
</a-modal>
|
||||||
<nav-bottom></nav-bottom>
|
<nav-bottom></nav-bottom>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@ -542,6 +546,7 @@ export default defineComponent({
|
|||||||
NavBottom,
|
NavBottom,
|
||||||
},
|
},
|
||||||
setup() {
|
setup() {
|
||||||
|
let issum = true;
|
||||||
const lan: any = useI18n();
|
const lan: any = useI18n();
|
||||||
interface SpeakItem {
|
interface SpeakItem {
|
||||||
lang: string;
|
lang: string;
|
||||||
@ -556,6 +561,7 @@ export default defineComponent({
|
|||||||
const userinfo = computed(() => {
|
const userinfo = computed(() => {
|
||||||
return store.state.userinfo;
|
return store.state.userinfo;
|
||||||
});
|
});
|
||||||
|
const huobi = ref(false);
|
||||||
// 表单数据
|
// 表单数据
|
||||||
const currencyindex = ref<string>(userinfo.value.currency);
|
const currencyindex = ref<string>(userinfo.value.currency);
|
||||||
const formData = ref(toRaw(userinfo.value));
|
const formData = ref(toRaw(userinfo.value));
|
||||||
@ -573,6 +579,8 @@ export default defineComponent({
|
|||||||
const chiveslist = ref<any>([[], []]);
|
const chiveslist = ref<any>([[], []]);
|
||||||
const languages = ref<unknown>([]);
|
const languages = ref<unknown>([]);
|
||||||
const quhaolist = ref<any>([]);
|
const quhaolist = ref<any>([]);
|
||||||
|
const mrqh = computed(() => store.state.qh)
|
||||||
|
|
||||||
const myquhao = ref<string>("");
|
const myquhao = ref<string>("");
|
||||||
|
|
||||||
const mynewtel = ref<string>("");
|
const mynewtel = ref<string>("");
|
||||||
@ -812,6 +820,10 @@ export default defineComponent({
|
|||||||
// for(let i in toRaw(formData.value).willsay){
|
// for(let i in toRaw(formData.value).willsay){
|
||||||
// console.log(toRaw(formData.value).willsay[i])
|
// console.log(toRaw(formData.value).willsay[i])
|
||||||
// }
|
// }
|
||||||
|
if(!issum){
|
||||||
|
message.error(lan.$t("shangchuanwancheng"))
|
||||||
|
return;
|
||||||
|
}
|
||||||
const uesrinfo = toRaw(formData.value);
|
const uesrinfo = toRaw(formData.value);
|
||||||
// for (let m = 0; m < toRaw(chiveslist.value).length; m++) {
|
// for (let m = 0; m < toRaw(chiveslist.value).length; m++) {
|
||||||
// for (const i in uesrinfo.willsayValue) {
|
// for (const i in uesrinfo.willsayValue) {
|
||||||
@ -925,14 +937,16 @@ export default defineComponent({
|
|||||||
const uploadprogress: Ref<number> = ref(0);
|
const uploadprogress: Ref<number> = ref(0);
|
||||||
async function uploads(file: AntUpload) {
|
async function uploads(file: AntUpload) {
|
||||||
|
|
||||||
uploadprogress.value = 0;
|
uploadprogress.value = 1;
|
||||||
|
issum = false;
|
||||||
const res = await uploadflie(file.file, (info: any) => {
|
const res = await uploadflie(file.file, (info: any) => {
|
||||||
console.log(info);
|
console.log(info);
|
||||||
uploadprogress.value = info.percent.toFixed(2) * 100;
|
const jindu = info.percent.toFixed(2) * 100
|
||||||
|
uploadprogress.value = jindu > 0 ? jindu : 1;
|
||||||
});
|
});
|
||||||
userinfo.value.video = res.video.url;
|
userinfo.value.video = res.video.url;
|
||||||
userinfo.value.videoid = res.fileId;
|
userinfo.value.videoid = res.fileId;
|
||||||
|
issum = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (formData.value.video != "") {
|
if (formData.value.video != "") {
|
||||||
@ -963,6 +977,7 @@ export default defineComponent({
|
|||||||
|
|
||||||
function currencychange(e?: any) {
|
function currencychange(e?: any) {
|
||||||
console.log(e);
|
console.log(e);
|
||||||
|
huobi.value = true;
|
||||||
userinfo.value.currencyValue = e;
|
userinfo.value.currencyValue = e;
|
||||||
// editsystemsetting({currency:e})
|
// editsystemsetting({currency:e})
|
||||||
}
|
}
|
||||||
@ -1049,7 +1064,9 @@ export default defineComponent({
|
|||||||
isdisabled,
|
isdisabled,
|
||||||
setname,
|
setname,
|
||||||
video,
|
video,
|
||||||
imgs
|
imgs,
|
||||||
|
mrqh,
|
||||||
|
huobi
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
@ -1340,6 +1357,9 @@ export default defineComponent({
|
|||||||
line-height: 23px;
|
line-height: 23px;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
|
position: fixed;
|
||||||
|
bottom: 100px;
|
||||||
|
right: 300px;
|
||||||
}
|
}
|
||||||
// .submit-btn:hover {
|
// .submit-btn:hover {
|
||||||
// background: #08ae98;
|
// background: #08ae98;
|
||||||
|
@ -61,7 +61,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="zhanghao">
|
<div class="zhanghao">
|
||||||
{{lan.$t('zhanghao')}}:6217 **** **** **** 175
|
{{lan.$t('zhanghao')}}:{{i.account}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a-radio>
|
</a-radio>
|
||||||
@ -153,7 +153,7 @@ export default defineComponent({
|
|||||||
const moneychange: (e: number) => void = (e: number) => {
|
const moneychange: (e: number) => void = (e: number) => {
|
||||||
console.log(e);
|
console.log(e);
|
||||||
};
|
};
|
||||||
const yue=ref<number>(store.state.userinfo.moneyValue)
|
const yue=computed( () => store.state.userinfo.moneyValue)
|
||||||
const danwei = computed(() => store.state.userinfo.symbol)
|
const danwei = computed(() => store.state.userinfo.symbol)
|
||||||
// const yue = ref<number>(10000);
|
// const yue = ref<number>(10000);
|
||||||
// yue.value=store.state.userinfo.money
|
// yue.value=store.state.userinfo.money
|
||||||
@ -180,7 +180,7 @@ export default defineComponent({
|
|||||||
if (accountlist.value.length == 0) {
|
if (accountlist.value.length == 0) {
|
||||||
message.error(lan.$t('kongzhanghaoliebiao'));
|
message.error(lan.$t('kongzhanghaoliebiao'));
|
||||||
return;
|
return;
|
||||||
} else if (payinfo.value.money < 100) {
|
} else if (payinfo.value.money < store.state.seting.minwithdraw) {
|
||||||
message.error(lan.$t('zuiditixian'));
|
message.error(lan.$t('zuiditixian'));
|
||||||
return;
|
return;
|
||||||
} else if (payinfo.value.money > yue.value) {
|
} else if (payinfo.value.money > yue.value) {
|
||||||
|
@ -6,14 +6,14 @@
|
|||||||
<div class="hits">视频点击量</div>
|
<div class="hits">视频点击量</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="list-body">
|
<div class="list-body">
|
||||||
<div class="rank-item" v-for="item in rankData" :key="item.uid" :class="{'mine-item': item.uid === 5 }">
|
<div class="rank-item" v-for="(item,index) in list" :key="index" :class="{'mine-item': item.isme }">
|
||||||
<div class="other-rank" :class="{'mine-rank': item.uid === 5 }">
|
<div class="other-rank" :class="{'mine-rank': item.isme }">
|
||||||
<div class="ranking-number">
|
<div class="ranking-number">
|
||||||
<span v-if="item.uid === 5" class="mine">我的成绩</span>
|
<span v-if="item.isme" class="mine">我的成绩</span>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<img src="@/static/images/rank_first.png" class="rank-img" v-if="item.id === 1" />
|
<img src="@/static/images/rank_first.png" class="rank-img" v-if="index === 0" />
|
||||||
<img src="@/static/images/rank_second.png" class="rank-img" v-else-if="item.id === 2" />
|
<img src="@/static/images/rank_second.png" class="rank-img" v-else-if="index === 1" />
|
||||||
<img src="@/static/images/rank_third.png" class="rank-img" v-else-if="item.id === 3" />
|
<img src="@/static/images/rank_third.png" class="rank-img" v-else-if="index === 2" />
|
||||||
<span class="other" v-else>{{ item.id }}</span>
|
<span class="other" v-else>{{ item.id }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -45,6 +45,11 @@ export default defineComponent({
|
|||||||
components: {
|
components: {
|
||||||
UserOutlined
|
UserOutlined
|
||||||
},
|
},
|
||||||
|
props:{
|
||||||
|
list: {
|
||||||
|
type: Object
|
||||||
|
}
|
||||||
|
},
|
||||||
setup() {
|
setup() {
|
||||||
interface RankItem {
|
interface RankItem {
|
||||||
uid: number;
|
uid: number;
|
||||||
|
@ -147,6 +147,7 @@ export default defineComponent({
|
|||||||
NavBottom,
|
NavBottom,
|
||||||
},
|
},
|
||||||
setup() {
|
setup() {
|
||||||
|
let issum= true;
|
||||||
const lan: any = useI18n();
|
const lan: any = useI18n();
|
||||||
interface FileItem {
|
interface FileItem {
|
||||||
video: Array<string>;
|
video: Array<string>;
|
||||||
@ -254,20 +255,24 @@ export default defineComponent({
|
|||||||
const uploadprogress: Ref<number> = ref(0);
|
const uploadprogress: Ref<number> = ref(0);
|
||||||
const ifallowvideo = ref<boolean>(false);
|
const ifallowvideo = ref<boolean>(false);
|
||||||
async function uploads(file: AntUpload) {
|
async function uploads(file: AntUpload) {
|
||||||
|
issum = false;
|
||||||
console.log(file);
|
console.log(file);
|
||||||
videofile.value = file.file;
|
videofile.value = file.file;
|
||||||
|
uploadprogress.value = 1;
|
||||||
videos.value[0].addEventListener("durationchange", () => {
|
videos.value[0].addEventListener("durationchange", () => {
|
||||||
console.log(videos.value[0].duration);
|
console.log(videos.value[0].duration);
|
||||||
form.value.fileduration = videos.value[0].duration;
|
form.value.fileduration = videos.value[0].duration;
|
||||||
});
|
});
|
||||||
const res = await uploadflie(file.file, (info: any) => {
|
const res = await uploadflie(file.file, (info: any) => {
|
||||||
console.log(info);
|
console.log(info);
|
||||||
uploadprogress.value = info.percent.toFixed(2) * 100;
|
const jindu = info.percent.toFixed(2) * 100
|
||||||
|
uploadprogress.value = jindu > 0 ? jindu : 1;
|
||||||
});
|
});
|
||||||
console.log(res);
|
console.log(res);
|
||||||
|
|
||||||
form.value.fileid = res.fileId;
|
form.value.fileid = res.fileId;
|
||||||
form.value.fileurl = res.video.url;
|
form.value.fileurl = res.video.url;
|
||||||
|
issum = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
function beforeVideoUpload(info?: any) {
|
function beforeVideoUpload(info?: any) {
|
||||||
@ -285,6 +290,10 @@ export default defineComponent({
|
|||||||
*/
|
*/
|
||||||
const routes = useRoute();
|
const routes = useRoute();
|
||||||
const onSubmit = async (e: FromSend) => {
|
const onSubmit = async (e: FromSend) => {
|
||||||
|
if(!issum){
|
||||||
|
message.error(lan.$t("shangchuanwancheng"))
|
||||||
|
return;
|
||||||
|
}
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
console.log(toRaw(form.value), 111);
|
console.log(toRaw(form.value), 111);
|
||||||
console.log(toRaw(form.value).video[0].length);
|
console.log(toRaw(form.value).video[0].length);
|
||||||
@ -323,7 +332,7 @@ export default defineComponent({
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
function video(file: any){
|
function video(file: any){
|
||||||
return provenvideo(file)
|
return provenvideo(file, true)
|
||||||
}
|
}
|
||||||
function imgs(file: any){
|
function imgs(file: any){
|
||||||
return provenimg(file)
|
return provenimg(file)
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
size="small"
|
size="small"
|
||||||
v-model:value="form.title"
|
v-model:value="form.title"
|
||||||
:placeholder="lan.$t('shuruzhibobiaoti')"
|
:placeholder="lan.$t('shuruzhibobiaoti')"
|
||||||
|
@click="isEntitled = jinzhi"
|
||||||
/>
|
/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item :label="lan.$t('zhibofengmian')" class="item-cover" :rules="{ required: true, message: 'Please input Activity name', trigger: 'blur'}">
|
<a-form-item :label="lan.$t('zhibofengmian')" class="item-cover" :rules="{ required: true, message: 'Please input Activity name', trigger: 'blur'}">
|
||||||
@ -110,7 +111,7 @@
|
|||||||
</p>
|
</p>
|
||||||
</div> -->
|
</div> -->
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item :label="lan.$t('kaishishijian')" :rules="{ required: true, message: 'Please input Activity name', trigger: 'blur'}">
|
<a-form-item :label="lan.$t('kaishishijian')" @click="isEntitled = jinzhi" :rules="{ required: true, message: 'Please input Activity name', trigger: 'blur'}">
|
||||||
|
|
||||||
<!-- <a-input
|
<!-- <a-input
|
||||||
size="small"
|
size="small"
|
||||||
@ -123,6 +124,7 @@
|
|||||||
format="YYYY-MM-DD HH:mm"
|
format="YYYY-MM-DD HH:mm"
|
||||||
:value="form.dateline"
|
:value="form.dateline"
|
||||||
:disabled-date="disabledDate"
|
:disabled-date="disabledDate"
|
||||||
|
@click="isEntitled = jinzhi"
|
||||||
@change="startchange"
|
@change="startchange"
|
||||||
:placeholder="lan.$t('shezhikaishishijian')"
|
:placeholder="lan.$t('shezhikaishishijian')"
|
||||||
:getCalendarContainer="
|
:getCalendarContainer="
|
||||||
@ -139,6 +141,7 @@
|
|||||||
<a-input
|
<a-input
|
||||||
size="small"
|
size="small"
|
||||||
v-model:value="form.livetime"
|
v-model:value="form.livetime"
|
||||||
|
@click="isEntitled = jinzhi"
|
||||||
:placeholder="lan.$t('shuruzhiboshijian')"
|
:placeholder="lan.$t('shuruzhiboshijian')"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
@ -153,6 +156,7 @@
|
|||||||
<a-input
|
<a-input
|
||||||
size="small"
|
size="small"
|
||||||
v-model:value="form.livenumber"
|
v-model:value="form.livenumber"
|
||||||
|
@click="isEntitled = jinzhi"
|
||||||
:placeholder="lan.$t('shuruzhiborenshu')"
|
:placeholder="lan.$t('shuruzhiborenshu')"
|
||||||
type="number"
|
type="number"
|
||||||
/>
|
/>
|
||||||
@ -162,6 +166,7 @@
|
|||||||
<a-form-item :label="lan.$t('zhibojianjie')" class="brief">
|
<a-form-item :label="lan.$t('zhibojianjie')" class="brief">
|
||||||
<a-textarea
|
<a-textarea
|
||||||
v-model:value="form.desc"
|
v-model:value="form.desc"
|
||||||
|
@click="isEntitled = jinzhi"
|
||||||
:autoSize="true"
|
:autoSize="true"
|
||||||
class="brief-textarea"
|
class="brief-textarea"
|
||||||
:maxlength="200"
|
:maxlength="200"
|
||||||
@ -221,6 +226,7 @@
|
|||||||
</template>
|
</template>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import {
|
import {
|
||||||
|
computed,
|
||||||
defineComponent,
|
defineComponent,
|
||||||
onBeforeUpdate,
|
onBeforeUpdate,
|
||||||
onMounted,
|
onMounted,
|
||||||
@ -242,6 +248,7 @@ import dayjs from "dayjs";
|
|||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import router from "@/router";
|
import router from "@/router";
|
||||||
import { useI18n } from "@/utils/i18n";
|
import { useI18n } from "@/utils/i18n";
|
||||||
|
import store from '@/store';
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
name: "ReleaseWebcast",
|
name: "ReleaseWebcast",
|
||||||
@ -252,6 +259,7 @@ export default defineComponent({
|
|||||||
RankList,
|
RankList,
|
||||||
},
|
},
|
||||||
setup() {
|
setup() {
|
||||||
|
let issum = true;
|
||||||
const lan: any = useI18n();
|
const lan: any = useI18n();
|
||||||
// 表单数据
|
// 表单数据
|
||||||
const form = ref({
|
const form = ref({
|
||||||
@ -271,6 +279,9 @@ export default defineComponent({
|
|||||||
const videofile = ref<File>();
|
const videofile = ref<File>();
|
||||||
const videos = ref<Array<any>>([]);
|
const videos = ref<Array<any>>([]);
|
||||||
const lives = ref<any>({});
|
const lives = ref<any>({});
|
||||||
|
const jinzhi = ref(false)
|
||||||
|
const isEntitled: Ref<boolean> = ref(false);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 验证直播时间
|
* 验证直播时间
|
||||||
*/
|
*/
|
||||||
@ -360,10 +371,21 @@ export default defineComponent({
|
|||||||
form.value = res;
|
form.value = res;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
const seting = computed(() => store.state.seting)
|
||||||
const onSubmit = (e: FromSend) => {
|
const onSubmit = (e: FromSend) => {
|
||||||
|
if(jinzhi.value){
|
||||||
|
isEntitled.value = true;
|
||||||
|
|
||||||
|
}
|
||||||
|
if(!issum){
|
||||||
|
message.error(lan.$t("shangchuanwancheng"))
|
||||||
|
return;
|
||||||
|
}
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
validate()
|
validate()
|
||||||
.then(() => {
|
.then(() => {
|
||||||
|
console.log(seting.value)
|
||||||
|
|
||||||
console.log(toRaw(form), 111);
|
console.log(toRaw(form), 111);
|
||||||
const subdata: any = toRaw(form.value);
|
const subdata: any = toRaw(form.value);
|
||||||
if (subdata.title == "") {
|
if (subdata.title == "") {
|
||||||
@ -385,12 +407,13 @@ export default defineComponent({
|
|||||||
message.error(lan.$t('zhiborenshuweikong'));
|
message.error(lan.$t('zhiborenshuweikong'));
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
if(subdata.livetime < 30 || subdata.livetime > 120){
|
if(subdata.livetime < parseInt(seting.value.timeLowerLimit) || subdata.livetime > parseInt(seting.value.timeCeiling)){
|
||||||
message.error("直播时长最短30min, 最长120min");
|
// console.log(subdata.livetime, subdata.livetime < seting.value.timeLowerLimit || subdata.livetime > seting.value.timeCeiling)
|
||||||
|
message.error(lan.$t('shichangtishi'));
|
||||||
return ;
|
return ;
|
||||||
}
|
}
|
||||||
if(subdata.livenumber > 4 || subdata.livenumber < 1){
|
if(subdata.livenumber > parseInt(seting.value.numberCeiling) || subdata.livenumber < parseInt(seting.value.lowerLimit)){
|
||||||
message.error("直播人数最少1人, 最多4人");
|
message.error(lan.$t('renshutishi'));
|
||||||
return ;
|
return ;
|
||||||
}
|
}
|
||||||
if (!lives.value.status) {
|
if (!lives.value.status) {
|
||||||
@ -415,7 +438,6 @@ export default defineComponent({
|
|||||||
console.log("error", err);
|
console.log("error", err);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
const isEntitled: Ref<boolean> = ref(false);
|
|
||||||
/**
|
/**
|
||||||
* 隐藏无资格提示
|
* 隐藏无资格提示
|
||||||
*/
|
*/
|
||||||
@ -475,20 +497,24 @@ export default defineComponent({
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
async function uploads(file: AntUpload) {
|
async function uploads(file: AntUpload) {
|
||||||
|
issum = false;
|
||||||
console.log(file);
|
console.log(file);
|
||||||
videofile.value = file.file;
|
videofile.value = file.file;
|
||||||
videos.value[0].addEventListener("durationchange", () => {
|
videos.value[0].addEventListener("durationchange", () => {
|
||||||
console.log(videos.value[0].duration);
|
console.log(videos.value[0].duration);
|
||||||
form.value.fileduration = videos.value[0].duration;
|
form.value.fileduration = videos.value[0].duration;
|
||||||
});
|
});
|
||||||
|
uploadprogress.value = 1;
|
||||||
const res = await uploadflie(file.file, (info: any) => {
|
const res = await uploadflie(file.file, (info: any) => {
|
||||||
console.log(info);
|
console.log(info);
|
||||||
uploadprogress.value = info.percent.toFixed(2) * 100;
|
const jindu = info.percent.toFixed(2) * 100
|
||||||
|
uploadprogress.value = jindu > 0 ? jindu : 1;
|
||||||
});
|
});
|
||||||
console.log(res);
|
console.log(res);
|
||||||
|
|
||||||
form.value.fileid = res.fileId;
|
form.value.fileid = res.fileId;
|
||||||
form.value.fileurl = res.video.url;
|
form.value.fileurl = res.video.url;
|
||||||
|
issum = true;
|
||||||
}
|
}
|
||||||
const ifallowpic = ref<boolean>(false);
|
const ifallowpic = ref<boolean>(false);
|
||||||
async function uploadspic(file: AntUpload) {
|
async function uploadspic(file: AntUpload) {
|
||||||
@ -502,11 +528,11 @@ export default defineComponent({
|
|||||||
// picinfo.url=res.video.url
|
// picinfo.url=res.video.url
|
||||||
form.value.img = res.video.url;
|
form.value.img = res.video.url;
|
||||||
}
|
}
|
||||||
|
|
||||||
getlivest().then((res) => {
|
getlivest().then((res) => {
|
||||||
if (res) {
|
if (res) {
|
||||||
isEntitled.value = true;
|
isEntitled.value = true;
|
||||||
lives.value = res;
|
lives.value = res;
|
||||||
|
jinzhi.value = true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
function beforeUploadpic(info?: any) {
|
function beforeUploadpic(info?: any) {
|
||||||
@ -537,9 +563,17 @@ export default defineComponent({
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
function video(file: any){
|
function video(file: any){
|
||||||
|
if(jinzhi.value){
|
||||||
|
isEntitled.value = true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
return provenvideo(file)
|
return provenvideo(file)
|
||||||
}
|
}
|
||||||
function imgs(file: any){
|
function imgs(file: any){
|
||||||
|
if(jinzhi.value){
|
||||||
|
isEntitled.value = true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
return provenimg(file)
|
return provenimg(file)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -578,7 +612,8 @@ export default defineComponent({
|
|||||||
onquxiao,
|
onquxiao,
|
||||||
isquxiao,
|
isquxiao,
|
||||||
video,
|
video,
|
||||||
imgs
|
imgs,
|
||||||
|
jinzhi
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
@ -157,7 +157,7 @@
|
|||||||
<div class="mingxilist" v-if="ifchina && listindex==2">
|
<div class="mingxilist" v-if="ifchina && listindex==2">
|
||||||
<div class="mingxitop">
|
<div class="mingxitop">
|
||||||
<div class="tabs">
|
<div class="tabs">
|
||||||
<span class="tabtitle">{{lan.$t('mingxichaxun')}}</span>
|
<span class="tabtitle">{{lan.$t('mingxichaxun')}}<img src="@/static/images/wenhao.png" @click="visible = true" /></span>
|
||||||
|
|
||||||
<div :class="tabindex == 0 ? 'on' : ''" @click="tabchange(0)">
|
<div :class="tabindex == 0 ? 'on' : ''" @click="tabchange(0)">
|
||||||
{{lan.$t('quanbu')}}
|
{{lan.$t('quanbu')}}
|
||||||
@ -201,6 +201,12 @@
|
|||||||
<a-pagination v-if="salelist.total" v-model:current="page" :total="salelist.total" :showLessItems="true" @change="pagechange"/>
|
<a-pagination v-if="salelist.total" v-model:current="page" :total="salelist.total" :showLessItems="true" @change="pagechange"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<a-modal v-model:visible="visible" :footer="null" :title="lan.$t('shuoruguize')" @cancel="visible = false">
|
||||||
|
<p>{{lan.$t('shouru1')}}</p>
|
||||||
|
<p>{{lan.$t('shouru2')}}</p>
|
||||||
|
<p style="color:#D12C2E">{{lan.$t('shouru3')}}</p>
|
||||||
|
|
||||||
|
</a-modal>
|
||||||
<NavBottom class="navbottom"></NavBottom>
|
<NavBottom class="navbottom"></NavBottom>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@ -228,6 +234,7 @@ export default defineComponent({
|
|||||||
const state=ref<number>(0)
|
const state=ref<number>(0)
|
||||||
const dates=ref<Array<string>>(["",""])
|
const dates=ref<Array<string>>(["",""])
|
||||||
const page = ref(1);
|
const page = ref(1);
|
||||||
|
const visible = ref(true);
|
||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
console.log(useRoute().query)
|
console.log(useRoute().query)
|
||||||
listindex.value=1
|
listindex.value=1
|
||||||
@ -311,7 +318,8 @@ export default defineComponent({
|
|||||||
del,
|
del,
|
||||||
store,
|
store,
|
||||||
pagechange,
|
pagechange,
|
||||||
lan
|
lan,
|
||||||
|
visible
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
@ -341,7 +349,7 @@ export default defineComponent({
|
|||||||
color: #111;
|
color: #111;
|
||||||
padding: 11px 0;
|
padding: 11px 0;
|
||||||
.tabtitle {
|
.tabtitle {
|
||||||
width: 60px;
|
// width: 60px;
|
||||||
margin-right: 30px;
|
margin-right: 30px;
|
||||||
}
|
}
|
||||||
> div {
|
> div {
|
||||||
@ -354,6 +362,15 @@ export default defineComponent({
|
|||||||
color: #08ae98;
|
color: #08ae98;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
>span{
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
>img{
|
||||||
|
margin-left: 8px;
|
||||||
|
width: 13px;
|
||||||
|
height: 13px;
|
||||||
|
}
|
||||||
|
}
|
||||||
.on {
|
.on {
|
||||||
color: #08ae98;
|
color: #08ae98;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="videoinfo">
|
<div class="videoinfo">
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<VideoPlay :url="result.fileid"></VideoPlay>
|
<VideoPlay :title="result.title" :url="result.fileid"></VideoPlay>
|
||||||
<VideoCont :videoid="result.videoid" :yuanyin="result.statusdesc" :date="result.createdAt" :watch="result.watch" :share="result.share" :status="result.status"></VideoCont>
|
<VideoCont :videoid="result.videoid" :yuanyin="result.statusdesc" :date="result.createdAt" :watch="result.watch" :share="result.share" :status="result.status"></VideoCont>
|
||||||
</div>
|
</div>
|
||||||
<VideoReview :videoinfo="result.score" class="review" v-if="result.status == 1"></VideoReview>
|
<VideoReview :videoinfo="result.score" class="review" v-if="result.status == 1"></VideoReview>
|
||||||
|
@ -99,6 +99,9 @@
|
|||||||
width: 1320px;
|
width: 1320px;
|
||||||
height: 63px;
|
height: 63px;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
position: sticky;
|
||||||
|
top: -23px;
|
||||||
|
z-index: 1000;
|
||||||
>div{
|
>div{
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
@ -214,10 +217,14 @@ export default defineComponent({
|
|||||||
const day = getDay(res[i].dateline)
|
const day = getDay(res[i].dateline)
|
||||||
for(const j in month.value.date){
|
for(const j in month.value.date){
|
||||||
for(const k in month.value.date[j]){
|
for(const k in month.value.date[j]){
|
||||||
|
if(yue.value == 0 && month.value.date[j][k].day == month.value.day){
|
||||||
|
month.value.date[j][k].s = 1
|
||||||
|
}
|
||||||
if(month.value.date[j][k].day == day){
|
if(month.value.date[j][k].day == day){
|
||||||
if(month.value.date[j][k].list == undefined){
|
if(month.value.date[j][k].list == undefined){
|
||||||
month.value.date[j][k].list = [];
|
month.value.date[j][k].list = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!month.value.date[j][k].s){
|
if(!month.value.date[j][k].s){
|
||||||
month.value.date[j][k].s = res[i].livestatus
|
month.value.date[j][k].s = res[i].livestatus
|
||||||
}else if(month.value.date[j][k].s != 1){
|
}else if(month.value.date[j][k].s != 1){
|
||||||
|
@ -122,6 +122,9 @@
|
|||||||
width: 1320px;
|
width: 1320px;
|
||||||
height: 63px;
|
height: 63px;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
position: sticky;
|
||||||
|
top: -23px;
|
||||||
|
z-index: 1000;
|
||||||
> div {
|
> div {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
@ -239,7 +242,7 @@
|
|||||||
}
|
}
|
||||||
.times{
|
.times{
|
||||||
font-size: 11px;
|
font-size: 11px;
|
||||||
color: #FFFA18;
|
color: #D12C2E;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -259,7 +262,7 @@ export default defineComponent({
|
|||||||
setup() {
|
setup() {
|
||||||
const zhou = ref(0);
|
const zhou = ref(0);
|
||||||
const time: any = useRoute().query.time;
|
const time: any = useRoute().query.time;
|
||||||
const week = ref<any>(getweek(time));
|
const week = ref<any>(getweek(time, store.state.userinfo.zoneValue));
|
||||||
const userid = store.state.userinfo.memberid;
|
const userid = store.state.userinfo.memberid;
|
||||||
console.log(week.value);
|
console.log(week.value);
|
||||||
function getdates(userid: number){
|
function getdates(userid: number){
|
||||||
@ -291,7 +294,14 @@ export default defineComponent({
|
|||||||
const times = ref('');
|
const times = ref('');
|
||||||
const xs = ref(0);
|
const xs = ref(0);
|
||||||
setInterval(()=>{
|
setInterval(()=>{
|
||||||
const now = dayjs();
|
/* eslint-disable */
|
||||||
|
const utc = require('dayjs/plugin/utc') // dependent on utc plugin
|
||||||
|
/* eslint-disable */
|
||||||
|
const timezone = require('dayjs/plugin/timezone')
|
||||||
|
dayjs.extend(utc)
|
||||||
|
dayjs.extend(timezone)
|
||||||
|
const days: any = dayjs;
|
||||||
|
const now = days().tz(store.state.userinfo.zoneValue)
|
||||||
const xiaoshi = now.hour()
|
const xiaoshi = now.hour()
|
||||||
const fenzhong = now.minute()
|
const fenzhong = now.minute()
|
||||||
top.value = (xiaoshi + (fenzhong / 60)) * 0.63;
|
top.value = (xiaoshi + (fenzhong / 60)) * 0.63;
|
||||||
@ -300,7 +310,7 @@ export default defineComponent({
|
|||||||
}, 2000)
|
}, 2000)
|
||||||
|
|
||||||
watch(zhou, (value) => {
|
watch(zhou, (value) => {
|
||||||
week.value = getweek(time, value);
|
week.value = getweek(time, store.state.userinfo.zoneValue, value);
|
||||||
console.log(week.value);
|
console.log(week.value);
|
||||||
getdates(userid)
|
getdates(userid)
|
||||||
});
|
});
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
{
|
{
|
||||||
|
"defaultSeverity": "error",
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"target": "esnext",
|
"target": "esnext",
|
||||||
"module": "esnext",
|
"module": "esnext",
|
||||||
@ -35,6 +36,10 @@
|
|||||||
"tests/**/*.tsx"
|
"tests/**/*.tsx"
|
||||||
],
|
],
|
||||||
"exclude": [
|
"exclude": [
|
||||||
"node_modules"
|
"node_modules",
|
||||||
]
|
"tslint:recommended"
|
||||||
|
],
|
||||||
|
"rules": {
|
||||||
|
"no-var-requires": false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -9245,6 +9245,11 @@ vod-js-sdk-v6@^1.4.10:
|
|||||||
js-sha1 "^0.6.0"
|
js-sha1 "^0.6.0"
|
||||||
uuid "^3.3.2"
|
uuid "^3.3.2"
|
||||||
|
|
||||||
|
vue-cropper@^0.5.5:
|
||||||
|
version "0.5.5"
|
||||||
|
resolved "https://registry.npmjs.org/vue-cropper/-/vue-cropper-0.5.5.tgz#9bd1ba563c7faa268abd52fb2af4c6c28d33c962"
|
||||||
|
integrity sha512-5mGaBlS1EwLxUFwHHX2Q8zOZSiVfBUjOfolR+ZNKwu7Rh3u+GhwHYOyFkgZHhhoQBBNdyVB28O6W+MpMimhCbA==
|
||||||
|
|
||||||
vue-eslint-parser@^7.0.0, vue-eslint-parser@^7.1.1:
|
vue-eslint-parser@^7.0.0, vue-eslint-parser@^7.1.1:
|
||||||
version "7.1.1"
|
version "7.1.1"
|
||||||
resolved "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.1.1.tgz#c43c1c715ff50778b9a7e9a4e16921185f3425d3"
|
resolved "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.1.1.tgz#c43c1c715ff50778b9a7e9a4e16921185f3425d3"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user