Merge branch 'master' of http://git.luyuan.tk/luyuan/beelink into xbx
This commit is contained in:
@@ -3,89 +3,89 @@
|
||||
<div class="box">
|
||||
<div :class="stepnow != 2 ? 'left' : 'left left1'">
|
||||
<div class="title">
|
||||
<span class="orgname">Beelink</span>密码重置
|
||||
<span class="orgname">{{lan.$t('beelink')}}</span>{{lan.$t('mimachongzhi')}}
|
||||
</div>
|
||||
|
||||
<div v-if="stepnow == 1">
|
||||
<div class="nosign">
|
||||
想起密码?
|
||||
<span class="tosign"><router-link to="/"> 去登录 </router-link></span>
|
||||
{{lan.$t('xiangqimima')}}
|
||||
<span class="tosign"><router-link to="/"> {{lan.$t('qudenglu')}} </router-link></span>
|
||||
</div>
|
||||
|
||||
<a-form :layout="formLayout">
|
||||
<a-form-item label="账户名" class="form-item">
|
||||
<a-input class="shuru" placeholder="请输入您的邮箱或者手机号" v-model:value="uinfo.phone"/>
|
||||
<a-form-item :label="lan.$t('zhanghuming')" class="form-item">
|
||||
<a-input class="shuru" :placeholder="lan.$t('shuruzhanghao')" v-model:value="uinfo.phone"/>
|
||||
</a-form-item>
|
||||
<div class="submit" @click="next(2)">下一步</div>
|
||||
<div class="submit" @click="next(2)">{{lan.$t('xiayibu')}}</div>
|
||||
|
||||
</a-form>
|
||||
</div>
|
||||
|
||||
<div v-if="stepnow == 2">
|
||||
<div class="nosign">
|
||||
已有账号?
|
||||
<span class="tosign"><router-link to="/"> 去登录 </router-link></span>
|
||||
{{lan.$t('yiyouzhanghao')}}
|
||||
<span class="tosign"><router-link to="/"> {{lan.$t('qudenglu')}} </router-link></span>
|
||||
</div>
|
||||
<a-form :layout="formLayout">
|
||||
<div class="signform">
|
||||
<div style="display:flex">
|
||||
<a-form-item label="手机号" class="shuru">
|
||||
<a-form-item :label="lan.$t('shoujihao')" class="shuru">
|
||||
<div>{{uinfo.phone}}</div>
|
||||
</a-form-item>
|
||||
<a-form-item label="验证码" class="form-item yzm">
|
||||
<a-form-item :label="lan.$t('yanzhengma')" class="form-item yzm">
|
||||
|
||||
<a-input-group compact>
|
||||
<div class="getcode" @click="getcode">
|
||||
点击获取验证码{{ time == 60 ? "" : "(" + time + ")" }}
|
||||
{{lan.$t('dianjihuoquyzm')}} {{ time == 60 ? "" : "(" + time + ")" }}
|
||||
</div>
|
||||
|
||||
<div class="line"></div>
|
||||
<a-input style="width: 50%" placeholder="请输入您的验证码" v-model:value="uinfo.code"/>
|
||||
<a-input style="width: 50%" :placeholder="lan.$t('shuruyzm')" v-model:value="uinfo.code"/>
|
||||
</a-input-group>
|
||||
</a-form-item>
|
||||
|
||||
</div>
|
||||
|
||||
<div style="display:flex">
|
||||
<a-form-item label="设置密码" class="form-item">
|
||||
<a-input class="shuru" placeholder="请再次输入您的密码" type="password" v-model:value="uinfo.password"/>
|
||||
<a-form-item :label="lan.$t('chongzhimima')" class="form-item">
|
||||
<a-input class="shuru" :placeholder="lan.$t('chongzhishurumima')" type="password" v-model:value="uinfo.password"/>
|
||||
</a-form-item>
|
||||
<a-form-item label="设置密码" class="form-item">
|
||||
<a-input class="shuru" placeholder="请再次输入您的密码" type="password" v-model:value="uinfo.repassword"/>
|
||||
<a-form-item :label="lan.$t('querenmima')" class="form-item">
|
||||
<a-input class="shuru" :placeholder="lan.$t('shurumimatwo')" type="password" v-model:value="uinfo.repassword"/>
|
||||
</a-form-item>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="submit" @click="next(3)">确认重置</div>
|
||||
<div class="orginfo">Beelink公司版权所有 2019—2022</div>
|
||||
<div class="submit" @click="next(3)">{{lan.$t('querenchongzhi')}}</div>
|
||||
<div class="orginfo">{{lan.$t('banquan')}}</div>
|
||||
</a-form>
|
||||
</div>
|
||||
|
||||
<div v-if="stepnow == 3">
|
||||
<div class="nosign">您已完成密码重置</div>
|
||||
<div class="nosign">{{lan.$t('wanchengchongzhi')}}</div>
|
||||
<img src="@/static/images/success.png" alt="" class="success">
|
||||
<div class="ale" @click="tologin">恭喜您重置密码成功,点击跳转到登录页面</div>
|
||||
<div class="ale" @click="tologin">{{lan.$t('chongzhichenggong')}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div :class="stepnow != 2 ? 'right' : 'right right1'">
|
||||
<div class="steps">
|
||||
<div class="step">
|
||||
<div :class="stepnow == 1 ? 'circle step1' : 'circle'">01</div>
|
||||
<div :class="stepnow == 1 ? 'stepnow' : ''">识别账号</div>
|
||||
<div :class="stepnow == 1 ? 'stepnow' : ''">{{lan.$t('shibiezhanghao')}}</div>
|
||||
</div>
|
||||
<div class="stepline"></div>
|
||||
<div class="step">
|
||||
<div :class="stepnow == 2 ? 'circle step1' : 'circle'">02</div>
|
||||
<div :class="stepnow == 2 ? 'stepnow' : ''">验证账号信息,重置密码</div>
|
||||
<div :class="stepnow == 2 ? 'stepnow' : ''">{{lan.$t('yanzhengxinxi')}}</div>
|
||||
<div class="back" @click="next(1)" v-if="stepnow==2">
|
||||
返回上一步
|
||||
{{lan.$t('fanhuishangyibu')}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="stepline"></div>
|
||||
<div class="step">
|
||||
<div :class="stepnow == 3 ? 'circle step1' : 'circle'">03</div>
|
||||
<div :class="stepnow == 3 ? 'stepnow' : ''">密码重置完成</div>
|
||||
<div :class="stepnow == 3 ? 'stepnow' : ''">{{lan.$t('chongzhiwancheng')}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="icons" v-if="stepnow == 2">
|
||||
@@ -101,12 +101,14 @@
|
||||
<script lang="ts">
|
||||
import { checksmscode, checkuser, editpassword, sendsms } from '@/api';
|
||||
import router from '@/router';
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
import { message } from 'ant-design-vue';
|
||||
import { defineComponent, ref, toRaw } from "vue";
|
||||
export default defineComponent({
|
||||
name: "Sign",
|
||||
components: {},
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
const formLayout = {
|
||||
labelCol: 4,
|
||||
wrapperCol: 14,
|
||||
@@ -219,7 +221,8 @@ export default defineComponent({
|
||||
stepnow,
|
||||
next,
|
||||
uinfo,
|
||||
tologin
|
||||
tologin,
|
||||
lan
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -2,180 +2,240 @@
|
||||
<div class="login">
|
||||
<NavTop :type="0" style="flex-shrink: 0"></NavTop>
|
||||
<div class="box">
|
||||
<div :class="stepnow != 2 ? 'left' : 'left left1'">
|
||||
<div class="title">
|
||||
您好,欢迎来到 <span class="orgname">Beelink</span>
|
||||
</div>
|
||||
<div :class="stepnow != 2 ? 'left' : 'left left1'">
|
||||
<div class="title">
|
||||
{{ lan.$t("huanying") }}
|
||||
<span class="orgname">{{ lan.$t("beelink") }}</span>
|
||||
</div>
|
||||
|
||||
<div v-if="stepnow == 1">
|
||||
<div class="nosign">
|
||||
已有账号?
|
||||
<span class="tosign" @click="navto('/')"> 去登录 </span>
|
||||
</div>
|
||||
|
||||
<a-form :layout="formLayout">
|
||||
<a-form-item label="手机号" class="form-item">
|
||||
<a-input-group compact>
|
||||
<a-select
|
||||
class="getcode"
|
||||
style="width: 50%"
|
||||
v-model:value="phone.quhao"
|
||||
>
|
||||
<a-select-option value="86"> 中国+0086 </a-select-option>
|
||||
<a-select-option value="Jiangsu"> Jiangsu </a-select-option>
|
||||
</a-select>
|
||||
<div class="line"></div>
|
||||
<a-input
|
||||
v-model:value="phone.phone"
|
||||
style="width: 50%"
|
||||
placeholder="请输入您的手机号"
|
||||
/>
|
||||
</a-input-group>
|
||||
</a-form-item>
|
||||
<a-form-item label="验证码" class="form-item">
|
||||
<a-input-group compact>
|
||||
<div class="getcode" style="width: 50%" @click="getcode">
|
||||
点击获取验证码{{ time == 60 ? "" : "(" + time + ")" }}
|
||||
<div v-if="stepnow == 1">
|
||||
<div class="nosign">
|
||||
{{ lan.$t("yiyouzhanghao") }}
|
||||
<span class="tosign" @click="navto('/')">
|
||||
{{ lan.$t("qudenglu") }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
<a-input
|
||||
v-model:value="phone.code"
|
||||
style="width: 50%"
|
||||
placeholder="请输入您的验证码"
|
||||
/>
|
||||
</a-input-group>
|
||||
</a-form-item>
|
||||
<div class="submit" @click="next(2)">下一步</div>
|
||||
<div class="agreement" @click="agree">
|
||||
<div class="ifagree">
|
||||
|
||||
<a-form :layout="formLayout">
|
||||
<a-form-item
|
||||
:label="lan.$t('shoujihao')"
|
||||
class="form-item"
|
||||
>
|
||||
<a-input-group compact>
|
||||
<a-select
|
||||
:default-value="quhaolist[0].code"
|
||||
size="small"
|
||||
@change="getquhao"
|
||||
class="getcode"
|
||||
style="width: 50%"
|
||||
>
|
||||
<a-select-option
|
||||
v-for="(i, j) in quhaolist"
|
||||
:key="j"
|
||||
:value="i.code"
|
||||
>
|
||||
{{ i.name }}+{{ i.code }}
|
||||
</a-select-option>
|
||||
<!-- <a-select-option value="Jiangsu"> Jiangsu </a-select-option> -->
|
||||
</a-select>
|
||||
<!-- <a-select
|
||||
class="getcode"
|
||||
style="width: 50%"
|
||||
v-model:value="phone.quhao"
|
||||
>
|
||||
<a-select-option value="86">
|
||||
中国+0086
|
||||
</a-select-option>
|
||||
<a-select-option value="Jiangsu">
|
||||
Jiangsu
|
||||
</a-select-option>
|
||||
</a-select> -->
|
||||
<div class="line"></div>
|
||||
<a-input
|
||||
v-model:value="phone.phone"
|
||||
style="width: 50%"
|
||||
:placeholder="lan.$t('shurushouji')"
|
||||
/>
|
||||
</a-input-group>
|
||||
</a-form-item>
|
||||
<a-form-item :label="lan.$t('yanzhengma')" class="form-item">
|
||||
<a-input-group compact>
|
||||
<div
|
||||
class="getcode"
|
||||
style="width: 50%"
|
||||
@click="getcode"
|
||||
>
|
||||
{{lan.$t('dianjihuoquyzm')}} {{
|
||||
time == 60 ? "" : "(" + time + ")"
|
||||
}}
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
<a-input
|
||||
v-model:value="phone.code"
|
||||
style="width: 50%"
|
||||
:placeholder="lan.$t('shuruyzm')"
|
||||
/>
|
||||
</a-input-group>
|
||||
</a-form-item>
|
||||
<div class="submit" @click="next(2)">{{lan.$t('xiayibu')}}</div>
|
||||
<div class="agreement" @click="agree">
|
||||
<div class="ifagree">
|
||||
<img
|
||||
src="@/static/images/agree.png"
|
||||
alt=""
|
||||
class="agree"
|
||||
v-if="ifagree"
|
||||
/>
|
||||
</div>
|
||||
{{lan.$t('tongyixieyi')}}
|
||||
</div>
|
||||
</a-form>
|
||||
</div>
|
||||
|
||||
<div v-if="stepnow == 2">
|
||||
<div class="nosign">
|
||||
{{lan.$t('yiyouzhanghao')}}
|
||||
<span class="tosign" @click="navto('/')"> {{lan.$t('qudenglu')}} </span>
|
||||
</div>
|
||||
<a-form :layout="formLayout">
|
||||
<div class="signform">
|
||||
<a-form-item :label="lan.$t('shezhimima')" class="form-item">
|
||||
<a-input
|
||||
class="shuru"
|
||||
:placeholder="lan.$t('shurumima')"
|
||||
type="password"
|
||||
v-model:value="userinfo.pass"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item :label="lan.$t('shezhimima')" class="form-item">
|
||||
<a-input
|
||||
class="shuru"
|
||||
:placeholder="lan.$t('shurumimatwo')"
|
||||
type="password"
|
||||
v-model:value="userinfo.passtow"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item :label="lan.$t('xingming')" class="form-item">
|
||||
<a-input
|
||||
class="shuru"
|
||||
:placeholder="lan.$t('shuruxingming')"
|
||||
v-model:value="userinfo.name"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item :label="lan.$t('youxiang')" class="form-item">
|
||||
<a-input
|
||||
class="shuru"
|
||||
:placeholder="lan.$t('shuruyouxiang')"
|
||||
v-model:value="userinfo.emil"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item :label="lan.$t('muyu')" class="form-item">
|
||||
<a-input
|
||||
class="shuru"
|
||||
:placeholder="lan.$t('shurumuyu')"
|
||||
v-model:value="userinfo.muyu"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="教授" class="form-item">
|
||||
<a-select
|
||||
v-model:value="userinfo.jiaoshou"
|
||||
class="getcode"
|
||||
style="color: #111"
|
||||
:placeholder="lan.$t('xuanzejiaoshou')"
|
||||
>
|
||||
<a-select-option
|
||||
v-for="(item, index) in willsay"
|
||||
:key="index"
|
||||
:value="item.languageid"
|
||||
>
|
||||
{{ item.name }}
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-item>
|
||||
</div>
|
||||
|
||||
<div class="submit" @click="next(3)">{{lan.$t('lijizhuce')}}</div>
|
||||
<div class="orginfo">{{lan.$t('banquan')}}</div>
|
||||
</a-form>
|
||||
</div>
|
||||
|
||||
<div v-if="stepnow == 3">
|
||||
<div class="nosign">{{lan.$t('您已完成注册')}}</div>
|
||||
<img
|
||||
src="@/static/images/agree.png"
|
||||
alt=""
|
||||
class="agree"
|
||||
v-if="ifagree"
|
||||
src="@/static/images/success.png"
|
||||
alt=""
|
||||
class="success"
|
||||
/>
|
||||
</div>
|
||||
勾选表示同意 《用户注册协议和隐私政策》
|
||||
</div>
|
||||
</a-form>
|
||||
</div>
|
||||
|
||||
<div v-if="stepnow == 2">
|
||||
<div class="nosign">
|
||||
已有账号?
|
||||
<span class="tosign" @click="navto('/')"> 去登录 </span>
|
||||
</div>
|
||||
<a-form :layout="formLayout">
|
||||
<div class="signform">
|
||||
<a-form-item label="设置密码" class="form-item">
|
||||
<a-input
|
||||
class="shuru"
|
||||
placeholder="请输入您的密码"
|
||||
type="password"
|
||||
v-model:value="userinfo.pass"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="设置密码" class="form-item">
|
||||
<a-input
|
||||
class="shuru"
|
||||
placeholder="请再次输入您的密码"
|
||||
type="password"
|
||||
v-model:value="userinfo.passtow"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="姓名" class="form-item">
|
||||
<a-input
|
||||
class="shuru"
|
||||
placeholder="请输入您的姓名"
|
||||
v-model:value="userinfo.name"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="邮箱" class="form-item">
|
||||
<a-input
|
||||
class="shuru"
|
||||
placeholder="请输入您的邮箱"
|
||||
v-model:value="userinfo.emil"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="母语" class="form-item">
|
||||
<a-input
|
||||
class="shuru"
|
||||
placeholder="请输入您的母语"
|
||||
v-model:value="userinfo.muyu"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="教授" class="form-item">
|
||||
<a-select
|
||||
v-model:value="userinfo.jiaoshou"
|
||||
class="getcode"
|
||||
style="color: #111"
|
||||
placeholder="请选择您的教授"
|
||||
>
|
||||
<a-select-option
|
||||
v-for="(item, index) in willsay"
|
||||
:key="index"
|
||||
:value="item.languageid"
|
||||
>
|
||||
{{ item.name }}
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-item>
|
||||
</div>
|
||||
|
||||
<div class="submit" @click="next(3)">立刻注册</div>
|
||||
<div class="orginfo">Beelink公司版权所有 2019—2022</div>
|
||||
</a-form>
|
||||
</div>
|
||||
|
||||
<div v-if="stepnow == 3">
|
||||
<div class="nosign">您已完成注册</div>
|
||||
<img src="@/static/images/success.png" alt="" class="success" />
|
||||
<div class="ale" @click="navto('/mine/archives')">
|
||||
恭喜您注册成功,点击跳转到我的档案页面
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div :class="stepnow != 2 ? 'right' : 'right right1'">
|
||||
<div class="steps">
|
||||
<div class="step">
|
||||
<div :class="stepnow == 1 ? 'circle step1' : 'circle'">01</div>
|
||||
<div :class="stepnow == 1 ? 'stepnow' : ''">验证手机号</div>
|
||||
</div>
|
||||
<div class="stepline"></div>
|
||||
<div class="step">
|
||||
<div :class="stepnow == 2 ? 'circle step1' : 'circle'">02</div>
|
||||
<div :class="stepnow == 2 ? 'stepnow' : ''">填写帐号信息</div>
|
||||
<div class="back" @click="next(1)" v-if="stepnow == 2">
|
||||
返回上一步
|
||||
<div class="ale" @click="navto('/mine/archives')">
|
||||
{{lan.$t('qudangan')}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="stepline"></div>
|
||||
<div class="step">
|
||||
<div :class="stepnow == 3 ? 'circle step1' : 'circle'">03</div>
|
||||
<div :class="stepnow == 3 ? 'stepnow' : ''">帐号注册完成</div>
|
||||
<div :class="stepnow != 2 ? 'right' : 'right right1'">
|
||||
<div class="steps">
|
||||
<div class="step">
|
||||
<div :class="stepnow == 1 ? 'circle step1' : 'circle'">
|
||||
01
|
||||
</div>
|
||||
<div :class="stepnow == 1 ? 'stepnow' : ''">
|
||||
{{lan.$t('yanzhengshouji')}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="stepline"></div>
|
||||
<div class="step">
|
||||
<div :class="stepnow == 2 ? 'circle step1' : 'circle'">
|
||||
02
|
||||
</div>
|
||||
<div :class="stepnow == 2 ? 'stepnow' : ''">
|
||||
{{lan.$t('tianxiexinxi')}}
|
||||
</div>
|
||||
<div class="back" @click="next(1)" v-if="stepnow == 2">
|
||||
{{lan.$t('fanhuishangyibu')}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="stepline"></div>
|
||||
<div class="step">
|
||||
<div :class="stepnow == 3 ? 'circle step1' : 'circle'">
|
||||
03
|
||||
</div>
|
||||
<div :class="stepnow == 3 ? 'stepnow' : ''">
|
||||
{{lan.$t('zhucewancheng')}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="icons" v-if="stepnow == 2">
|
||||
<img src="@/static/images/weixin.png" alt="" class="icon" />
|
||||
<img src="@/static/images/weibo.png" alt="" class="icon" />
|
||||
<img
|
||||
src="@/static/images/facebook.png"
|
||||
alt=""
|
||||
class="icon"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="icons" v-if="stepnow == 2">
|
||||
<img src="@/static/images/weixin.png" alt="" class="icon" />
|
||||
<img src="@/static/images/weibo.png" alt="" class="icon" />
|
||||
<img src="@/static/images/facebook.png" alt="" class="icon" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { defineComponent, reactive, ref, toRaw } from "vue";
|
||||
import { defineComponent, onMounted, reactive, ref, toRaw } from "vue";
|
||||
import NavTop from "@/components/NavTop.vue";
|
||||
import { checksmscode, getwillsay, register, sendsms } from "@/api";
|
||||
import {
|
||||
checksmscode,
|
||||
getquhaolist,
|
||||
getwillsay,
|
||||
register,
|
||||
sendsms,
|
||||
} from "@/api";
|
||||
import { message } from "ant-design-vue";
|
||||
import router from "@/router";
|
||||
import { useI18n } from "@/utils/i18n";
|
||||
|
||||
export default defineComponent({
|
||||
name: "Sign",
|
||||
components: { NavTop },
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
const formLayout = {
|
||||
labelCol: 4,
|
||||
wrapperCol: 14,
|
||||
@@ -195,9 +255,20 @@ export default defineComponent({
|
||||
jiaoshou: "",
|
||||
});
|
||||
const willsay = ref<any>();
|
||||
const quhaolist = ref<any>([
|
||||
{
|
||||
code: "86",
|
||||
id: 214,
|
||||
name: "中国",
|
||||
},
|
||||
]);
|
||||
getwillsay().then((res) => {
|
||||
willsay.value = res;
|
||||
});
|
||||
onMounted(async () => {
|
||||
quhaolist.value = await getquhaolist();
|
||||
});
|
||||
|
||||
/**
|
||||
* @param
|
||||
* 点击获取验证码 触发60S倒计时
|
||||
@@ -218,9 +289,9 @@ export default defineComponent({
|
||||
console.log(phone);
|
||||
time.value = time.value - 1;
|
||||
if (time.value <= 0) {
|
||||
time.value = 60;
|
||||
clearInterval(timestep);
|
||||
lock = false;
|
||||
time.value = 60;
|
||||
clearInterval(timestep);
|
||||
lock = false;
|
||||
}
|
||||
}, 1000);
|
||||
};
|
||||
@@ -228,8 +299,8 @@ export default defineComponent({
|
||||
|
||||
/**
|
||||
*@param
|
||||
* 用户协议前面radio 的点击效果
|
||||
*/
|
||||
* 用户协议前面radio 的点击效果
|
||||
*/
|
||||
const agree: () => void = () => {
|
||||
ifagree.value = ifagree.value == true ? false : true;
|
||||
console.log(ifagree.value, 600);
|
||||
@@ -246,9 +317,9 @@ export default defineComponent({
|
||||
message.error("密码不能为空");
|
||||
return false;
|
||||
}
|
||||
if(userinfo.value.pass!=userinfo.value.passtow){
|
||||
message.error("两次密码输入不一致")
|
||||
return
|
||||
if (userinfo.value.pass != userinfo.value.passtow) {
|
||||
message.error("两次密码输入不一致");
|
||||
return;
|
||||
}
|
||||
if (userinfo.value.name == "") {
|
||||
message.error("姓名不能为空");
|
||||
@@ -270,14 +341,13 @@ export default defineComponent({
|
||||
}
|
||||
/**
|
||||
*@param e 跳到哪一步
|
||||
* 步骤条跳到某一步
|
||||
*/
|
||||
* 步骤条跳到某一步
|
||||
*/
|
||||
|
||||
async function next(e: number) {
|
||||
|
||||
if(!ifagree.value){
|
||||
message.error("请同意用户协议");
|
||||
return ;
|
||||
if (!ifagree.value) {
|
||||
message.error("请同意用户协议");
|
||||
return;
|
||||
}
|
||||
if (stepnow.value > e) {
|
||||
stepnow.value = e;
|
||||
@@ -285,35 +355,37 @@ export default defineComponent({
|
||||
}
|
||||
switch (e) {
|
||||
case 2: {
|
||||
console.log(e);
|
||||
if (phone.value.phone == "") {
|
||||
message.error("手机号不能为空");
|
||||
return;
|
||||
} else if (phone.value.code == "") {
|
||||
message.error("验证码不能为空");
|
||||
return;
|
||||
}
|
||||
const res = await checksmscode(
|
||||
phone.value.quhao + phone.value.phone,
|
||||
phone.value.code
|
||||
);
|
||||
if (res) {
|
||||
stepnow.value = e;
|
||||
}
|
||||
break;
|
||||
console.log(e);
|
||||
if (phone.value.phone == "") {
|
||||
message.error("手机号不能为空");
|
||||
return;
|
||||
} else if (phone.value.code == "") {
|
||||
message.error("验证码不能为空");
|
||||
return;
|
||||
}
|
||||
const res = await checksmscode(
|
||||
phone.value.quhao + phone.value.phone,
|
||||
phone.value.code
|
||||
);
|
||||
if (res) {
|
||||
stepnow.value = e;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
case 3: {
|
||||
console.log(userinfo.value);
|
||||
const yz = yanzheng();
|
||||
if (yz) {
|
||||
const res = await register({
|
||||
...toRaw(phone.value),
|
||||
...toRaw(userinfo.value),
|
||||
});
|
||||
if (res) {
|
||||
stepnow.value = e;
|
||||
}
|
||||
}
|
||||
console.log(userinfo.value);
|
||||
const yz = yanzheng();
|
||||
if (yz) {
|
||||
const res = await register({
|
||||
...toRaw(phone.value),
|
||||
...toRaw(userinfo.value),
|
||||
});
|
||||
if (res) {
|
||||
stepnow.value = e;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -332,208 +404,210 @@ export default defineComponent({
|
||||
userinfo,
|
||||
willsay,
|
||||
navto,
|
||||
lan,
|
||||
quhaolist,
|
||||
};
|
||||
},
|
||||
});
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.login ::v-deep(.ant-select-selection) {
|
||||
border: none;
|
||||
border: none;
|
||||
}
|
||||
.login ::v-deep(.ant-input) {
|
||||
border: none;
|
||||
border: none;
|
||||
}
|
||||
.ant-input:focus {
|
||||
border: none;
|
||||
border-bottom: 1px solid white !important;
|
||||
box-shadow: none;
|
||||
border: none;
|
||||
border-bottom: 1px solid white !important;
|
||||
box-shadow: none;
|
||||
}
|
||||
.login ::v-deep(.ant-form-item-label) {
|
||||
line-height: 14px;
|
||||
line-height: 14px;
|
||||
}
|
||||
.login ::v-deep(.ant-form-item) ::v-deep(label) {
|
||||
color: #0dbba4;
|
||||
font-size: 11px;
|
||||
left: 1px;
|
||||
color: #0dbba4;
|
||||
font-size: 11px;
|
||||
left: 1px;
|
||||
}
|
||||
.login {
|
||||
min-width: 100%;
|
||||
height: 100vh;
|
||||
background: url("../../static/images/loginbg.png");
|
||||
background-size: 100% 130%;
|
||||
background-repeat: no-repeat;
|
||||
.box {
|
||||
padding-top: 145px;
|
||||
min-width: 100%;
|
||||
height: 100vh;
|
||||
background: url("../../static/images/loginbg.png");
|
||||
background-size: 100% 130%;
|
||||
background-repeat: no-repeat;
|
||||
.box {
|
||||
padding-top: 145px;
|
||||
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
.left1 {
|
||||
width: 710px !important;
|
||||
}
|
||||
.left {
|
||||
width: 314px;
|
||||
.title {
|
||||
font-size: 17px;
|
||||
font-weight: bold;
|
||||
}
|
||||
.orgname {
|
||||
font-size: 29px;
|
||||
color: #0dbba4;
|
||||
cursor: pointer;
|
||||
}
|
||||
.nosign {
|
||||
font-size: 12px;
|
||||
color: #666666;
|
||||
margin-top: 17px;
|
||||
margin-bottom: 35px;
|
||||
}
|
||||
.tosign {
|
||||
color: #0dbba4;
|
||||
cursor: pointer;
|
||||
}
|
||||
.tab {
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
.form-item {
|
||||
border-bottom: 1px solid #e5e5e5;
|
||||
font-size: 15px;
|
||||
margin-right: 40px;
|
||||
}
|
||||
.line {
|
||||
width: 1px;
|
||||
height: 14px;
|
||||
background: #e5e5e5;
|
||||
margin-top: 10px;
|
||||
position: relative;
|
||||
z-index: 999;
|
||||
}
|
||||
.getcode {
|
||||
font-size: 15px;
|
||||
color: #08ae98;
|
||||
width: 313px;
|
||||
// width: 50%;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.orginfo {
|
||||
margin-top: 178px;
|
||||
}
|
||||
.submit {
|
||||
width: 143px;
|
||||
height: 35px;
|
||||
background: linear-gradient(
|
||||
90deg,
|
||||
#00dac2,
|
||||
#42de9e,
|
||||
#88e062,
|
||||
#d0eb3e,
|
||||
#fffa18
|
||||
);
|
||||
border-radius: 18px;
|
||||
font-size: 15px;
|
||||
color: white;
|
||||
font-weight: 800;
|
||||
text-align: center;
|
||||
line-height: 35px;
|
||||
margin-top: 45px;
|
||||
}
|
||||
.agreement {
|
||||
font-size: 12px;
|
||||
display: flex;
|
||||
margin-top: 23px;
|
||||
cursor: default;
|
||||
.ifagree {
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
border-radius: 3px;
|
||||
border: 1px solid #0ebca4;
|
||||
margin: auto 0;
|
||||
margin-right: 7px;
|
||||
.agree {
|
||||
width: 8px;
|
||||
height: 6px;
|
||||
position: relative;
|
||||
top: -4px;
|
||||
left: 2.5px;
|
||||
}
|
||||
justify-content: space-around;
|
||||
.left1 {
|
||||
width: 710px !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
.right1 {
|
||||
width: 230px !important;
|
||||
}
|
||||
.right {
|
||||
width: 690px;
|
||||
.steps {
|
||||
padding-top: 112px;
|
||||
.stepline {
|
||||
width: 1px;
|
||||
height: 50px;
|
||||
border: 1px dashed #eeeeee;
|
||||
position: relative;
|
||||
left: 13px;
|
||||
.left {
|
||||
width: 314px;
|
||||
.title {
|
||||
font-size: 17px;
|
||||
font-weight: bold;
|
||||
}
|
||||
.orgname {
|
||||
font-size: 29px;
|
||||
color: #0dbba4;
|
||||
cursor: pointer;
|
||||
}
|
||||
.nosign {
|
||||
font-size: 12px;
|
||||
color: #666666;
|
||||
margin-top: 17px;
|
||||
margin-bottom: 35px;
|
||||
}
|
||||
.tosign {
|
||||
color: #0dbba4;
|
||||
cursor: pointer;
|
||||
}
|
||||
.tab {
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
.form-item {
|
||||
border-bottom: 1px solid #e5e5e5;
|
||||
font-size: 15px;
|
||||
margin-right: 40px;
|
||||
}
|
||||
.line {
|
||||
width: 1px;
|
||||
height: 14px;
|
||||
background: #e5e5e5;
|
||||
margin-top: 10px;
|
||||
position: relative;
|
||||
z-index: 999;
|
||||
}
|
||||
.getcode {
|
||||
font-size: 15px;
|
||||
color: #08ae98;
|
||||
width: 313px;
|
||||
// width: 50%;
|
||||
line-height: 30px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.orginfo {
|
||||
margin-top: 178px;
|
||||
}
|
||||
.submit {
|
||||
width: 143px;
|
||||
height: 35px;
|
||||
background: linear-gradient(
|
||||
90deg,
|
||||
#00dac2,
|
||||
#42de9e,
|
||||
#88e062,
|
||||
#d0eb3e,
|
||||
#fffa18
|
||||
);
|
||||
border-radius: 18px;
|
||||
font-size: 15px;
|
||||
color: white;
|
||||
font-weight: 800;
|
||||
text-align: center;
|
||||
line-height: 35px;
|
||||
margin-top: 45px;
|
||||
}
|
||||
.agreement {
|
||||
font-size: 12px;
|
||||
display: flex;
|
||||
margin-top: 23px;
|
||||
cursor: default;
|
||||
.ifagree {
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
border-radius: 3px;
|
||||
border: 1px solid #0ebca4;
|
||||
margin: auto 0;
|
||||
margin-right: 7px;
|
||||
.agree {
|
||||
width: 8px;
|
||||
height: 6px;
|
||||
position: relative;
|
||||
top: -4px;
|
||||
left: 2.5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.step {
|
||||
display: flex;
|
||||
color: #999999;
|
||||
font-size: 11px;
|
||||
line-height: 28px;
|
||||
font-weight: bold;
|
||||
.back {
|
||||
color: #0dbba4;
|
||||
margin-left: 23px;
|
||||
}
|
||||
.circle {
|
||||
width: 29px;
|
||||
height: 29px;
|
||||
border-radius: 15px;
|
||||
background: #eeeeee;
|
||||
font-size: 12px;
|
||||
color: #999999;
|
||||
text-align: center;
|
||||
line-height: 29px;
|
||||
font-weight: 800;
|
||||
margin-right: 17px;
|
||||
}
|
||||
.right1 {
|
||||
width: 230px !important;
|
||||
}
|
||||
.step1 {
|
||||
background: #08ae98 !important;
|
||||
color: white !important;
|
||||
.right {
|
||||
width: 690px;
|
||||
.steps {
|
||||
padding-top: 112px;
|
||||
.stepline {
|
||||
width: 1px;
|
||||
height: 50px;
|
||||
border: 1px dashed #eeeeee;
|
||||
position: relative;
|
||||
left: 13px;
|
||||
}
|
||||
.step {
|
||||
display: flex;
|
||||
color: #999999;
|
||||
font-size: 11px;
|
||||
line-height: 28px;
|
||||
font-weight: bold;
|
||||
.back {
|
||||
color: #0dbba4;
|
||||
margin-left: 23px;
|
||||
}
|
||||
.circle {
|
||||
width: 29px;
|
||||
height: 29px;
|
||||
border-radius: 15px;
|
||||
background: #eeeeee;
|
||||
font-size: 12px;
|
||||
color: #999999;
|
||||
text-align: center;
|
||||
line-height: 29px;
|
||||
font-weight: 800;
|
||||
margin-right: 17px;
|
||||
}
|
||||
}
|
||||
.step1 {
|
||||
background: #08ae98 !important;
|
||||
color: white !important;
|
||||
}
|
||||
.stepnow {
|
||||
color: #111111;
|
||||
}
|
||||
}
|
||||
}
|
||||
.stepnow {
|
||||
color: #111111;
|
||||
}
|
||||
.signform {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
.shuru {
|
||||
width: 313px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.signform {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
.shuru {
|
||||
width: 313px;
|
||||
.icons {
|
||||
margin-right: 41px;
|
||||
margin-top: 227px;
|
||||
.icon {
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
margin-right: 18px;
|
||||
float: right;
|
||||
}
|
||||
}
|
||||
}
|
||||
.icons {
|
||||
margin-right: 41px;
|
||||
margin-top: 227px;
|
||||
.icon {
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
margin-right: 18px;
|
||||
float: right;
|
||||
.success {
|
||||
width: 250px;
|
||||
height: 233px;
|
||||
}
|
||||
.ale {
|
||||
color: #08ae98;
|
||||
font-size: 14px;
|
||||
font-weight: 800;
|
||||
margin-top: 34px;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
.success {
|
||||
width: 250px;
|
||||
height: 233px;
|
||||
}
|
||||
.ale {
|
||||
color: #08ae98;
|
||||
font-size: 14px;
|
||||
font-weight: 800;
|
||||
margin-top: 34px;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -1,9 +1,9 @@
|
||||
<template>
|
||||
<div class="aboutus">
|
||||
<div class="tabs">
|
||||
<div :class="tabindex == 1 ? 'on' : ''" @click="tabchange(1)">服务条款</div>
|
||||
<div :class="tabindex == 2 ? 'on' : ''" @click="tabchange(2)">隐私政策</div>
|
||||
<div :class="tabindex == 3 ? 'on' : ''" @click="tabchange(3)">意见反馈</div>
|
||||
<div :class="tabindex == 1 ? 'on' : ''" @click="tabchange(1)">{{lan.$t('fuwutiaokuan')}}</div>
|
||||
<div :class="tabindex == 2 ? 'on' : ''" @click="tabchange(2)">{{lan.$t('yinsizhengce')}}</div>
|
||||
<div :class="tabindex == 3 ? 'on' : ''" @click="tabchange(3)">{{lan.$t('yijianfankui')}}</div>
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
<div class="content" v-if="tabindex==1|| tabindex==2">
|
||||
@@ -31,13 +31,13 @@
|
||||
<div v-else>
|
||||
|
||||
<div class="fankui">
|
||||
<div class="label">意见反馈</div>
|
||||
<div class="label">{{lan.$t('yijianfankui')}}</div>
|
||||
<div>
|
||||
<a-textarea v-model:value="value" placeholder="请输入您的意见反馈" :rows="10" />
|
||||
<a-textarea v-model:value="value" :placeholder="lan.$t('shurufankui')" :rows="10" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sub" @click="sub">提交反馈</div>
|
||||
<div class="sub" @click="sub">{{lan.$t('tijiaofankui')}}</div>
|
||||
</div>
|
||||
<NavBottom class="navbottom"></NavBottom>
|
||||
</div>
|
||||
@@ -48,12 +48,14 @@ import { defineComponent, ref } from "vue";
|
||||
import NavBottom from "@/components/NavBottom.vue";
|
||||
import { feedback } from '@/api';
|
||||
import { useRoute } from 'vue-router';
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
export default defineComponent({
|
||||
name: "Aboutus",
|
||||
components: {
|
||||
NavBottom,
|
||||
},
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
const tabindex=ref(1)
|
||||
const value = ref("")
|
||||
console.log(useRoute().query)
|
||||
@@ -72,7 +74,8 @@ export default defineComponent({
|
||||
tabchange,
|
||||
tabindex,
|
||||
sub,
|
||||
value
|
||||
value,
|
||||
lan
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -3,11 +3,11 @@
|
||||
|
||||
<div class="mingxilist">
|
||||
<div class="tabs">
|
||||
<div class="beforetab">新增账户</div>
|
||||
<div class="beforetab">{{lan.$t('xinzengzhanghu')}}</div>
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
<div class="choose">
|
||||
<div class="label">选择账户</div>
|
||||
<div class="label">{{lan.$t('xuanzezhanghu')}}</div>
|
||||
<!-- <a-radio></a-radio> -->
|
||||
<div v-if="ifchina">
|
||||
<a-radio-group
|
||||
@@ -19,15 +19,15 @@
|
||||
>
|
||||
<a-radio :value="4">
|
||||
<img src="@/static/images/bank.png" alt="" class="icon icon1" />
|
||||
<span>银行卡</span>
|
||||
<span>{{lan.$t('yinhangka')}}</span>
|
||||
</a-radio>
|
||||
<a-radio :value="2">
|
||||
<img src="@/static/images/walletzfb.png" alt="" class="icon" />
|
||||
<span>支付宝</span>
|
||||
<span>{{lan.$t('zhifubao')}}</span>
|
||||
</a-radio>
|
||||
<a-radio :value="1">
|
||||
<img src="@/static/images/walletweixin.png" alt="" class="icon" />
|
||||
<span>微信</span>
|
||||
<span>{{lan.$t('weixin')}}</span>
|
||||
</a-radio>
|
||||
</a-radio-group>
|
||||
</div>
|
||||
@@ -45,7 +45,7 @@
|
||||
alt=""
|
||||
class="icon icon1"
|
||||
/>
|
||||
<span>银行卡</span>
|
||||
<span>{{lan.$t('yinhangka')}}</span>
|
||||
</a-radio>
|
||||
<a-radio :value="2">
|
||||
<img src="@/static/images/paypi.png" alt="" class="icon" />
|
||||
@@ -58,23 +58,23 @@
|
||||
<a-form >
|
||||
<div>
|
||||
<div class="infoitem">
|
||||
<span class="label label1">姓名</span>
|
||||
<a-input v-model:value="accountinfo.mname" class="shuru" placeholder="请输入姓名" />
|
||||
<span class="label label1">{{lan.$t('xingming')}}</span>
|
||||
<a-input v-model:value="accountinfo.mname" class="shuru" :placeholder="lan.$t('shuruxingming')" />
|
||||
</div>
|
||||
<div class="infoitem">
|
||||
<span class="label label1">卡号</span>
|
||||
<span class="label label1">{{lan.$t('kahao')}}</span>
|
||||
<a-input
|
||||
v-model:value="accountinfo.bankcode"
|
||||
class="shuru"
|
||||
placeholder="请输入收款人储蓄卡号"
|
||||
:placeholder="lan.$t('shurukahao')"
|
||||
/>
|
||||
</div>
|
||||
<div class="infoitem">
|
||||
<span class="label label1">开户行</span>
|
||||
<span class="label label1">{{lan.$t('kaihuhang')}}</span>
|
||||
<a-input
|
||||
v-model:value="accountinfo.bankname"
|
||||
class="shuru shuru2"
|
||||
placeholder="请输入开户行"
|
||||
:placeholder="lan.$t('shurukaihuhang')"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@@ -83,22 +83,22 @@
|
||||
<div class="cashoutmoney" v-if="accountinfo.type == 2 && ifchina">
|
||||
<div>
|
||||
<div class="infoitem">
|
||||
<span class="label label1">帐号</span>
|
||||
<span class="label label1">{{lan.$t('zhanghao')}}</span>
|
||||
<a-input
|
||||
v-model:value="accountinfo.account"
|
||||
class="shuru"
|
||||
placeholder="请输入支付宝账号/密码"
|
||||
:placeholder="lan.$t('shuruzhifubao')"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cashoutmoney" v-if="accountinfo.type == 1 && ifchina">
|
||||
<div class="label label1">扫码绑定</div>
|
||||
<div class="label label1">{{lan.$t('saomabangding')}}</div>
|
||||
<div class="ewmbox">
|
||||
<img src="@/static/images/erweima.png" alt="" class="ewmpic" />
|
||||
<div class="desc">注:</div>
|
||||
<div class="desc">{{lan.$t('zhu')}}:</div>
|
||||
<div class="desc desc1">
|
||||
打开手机微信扫描左侧二维码 进行微信账户绑定
|
||||
{{lan.$t('weixinbangding')}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -106,23 +106,23 @@
|
||||
<div class="cashoutmoney" v-if="paytypeforign == 1 && !ifchina">
|
||||
<div>
|
||||
<div class="infoitem">
|
||||
<span class="label label1">账户名</span>
|
||||
<a-input v-model="accountinfo.mname" class="shuru" placeholder="请输入姓名" />
|
||||
<span class="label label1">{{lan.$t('zhanghuming')}}</span>
|
||||
<a-input v-model="accountinfo.mname" class="shuru" :placeholder="lan.$t('shuruxingming')" />
|
||||
</div>
|
||||
<div class="infoitem">
|
||||
<span class="label label1">银行账户</span>
|
||||
<span class="label label1">{{lan.$t('yinhangzhanghu')}}</span>
|
||||
<a-input
|
||||
v-model="accountinfo.bankcode"
|
||||
class="shuru shuru2"
|
||||
placeholder="请输入收款人储蓄卡号"
|
||||
:placeholder="shurukahao"
|
||||
/>
|
||||
</div>
|
||||
<div class="infoitem infoitem1">
|
||||
<div class="label label1 label2"> 银行BIC码 /swift code </div>
|
||||
<div class="label label1 label2"> {{lan.$t(yinhangbic)}} /swift code </div>
|
||||
<a-input
|
||||
v-model="accountinfo.bankname"
|
||||
class="shuru shuru1"
|
||||
placeholder="请输入开户行"
|
||||
:placeholder="lan.$t('shurukaihuhang')"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@@ -131,16 +131,16 @@
|
||||
<div class="cashoutmoney" v-if="paytypeforign == 2 && !ifchina">
|
||||
<div>
|
||||
<div class="infoitem">
|
||||
<span class="label label1">帐号</span>
|
||||
<span class="label label1">{{lan.$t('zhanghao')}}</span>
|
||||
<a-input
|
||||
v-model:value="accountinfo.account"
|
||||
class="shuru"
|
||||
placeholder="请输入账号"
|
||||
:placeholder="lan.$t('shuruzhanghao')"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="cashoutall submit" @click="sub">提交</div>
|
||||
<div class="cashoutall submit" @click="sub">{{lan.$t('tijiao')}}</div>
|
||||
<NavBottom class="navbottom"></NavBottom>
|
||||
</div>
|
||||
</div>
|
||||
@@ -151,12 +151,14 @@ import { defineComponent, onMounted, ref, toRaw } from "vue";
|
||||
import NavBottom from "@/components/NavBottom.vue";
|
||||
import { accountadd, editaccount, getaccountinfo } from '@/api';
|
||||
import { useRoute } from 'vue-router';
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
export default defineComponent({
|
||||
name: "Cashout",
|
||||
components: {
|
||||
NavBottom,
|
||||
},
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
const money = ref(0);
|
||||
const paytype = ref(4);
|
||||
const paytypeforign = ref(1);
|
||||
@@ -211,7 +213,8 @@ export default defineComponent({
|
||||
paytypeforign,
|
||||
onChange1,
|
||||
sub,
|
||||
accountinfo
|
||||
accountinfo,
|
||||
lan
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -2,15 +2,15 @@
|
||||
<div class="cashout">
|
||||
<div class="mingxilist">
|
||||
<div class="tabs">
|
||||
<div class="beforetab">提现到指定账户</div>
|
||||
<span class="residue">余额:{{ yue }}</span>
|
||||
<div class="topbtn topbtn2" @click="navto('/mine/addaccount')">提现到指定账户</div>
|
||||
<div class="topbtn topbtn1" @click="navto('/mine/transaction')">提现记录</div>
|
||||
<div class="beforetab">{{lan.$t('tixianzhanghu')}}</div>
|
||||
<span class="residue">{{lan.$t('yue')}}:{{ yue }}</span>
|
||||
<div class="topbtn topbtn2" @click="navto('/mine/addaccount')">{{lan.$t('tixianzhanghu')}}</div>
|
||||
<div class="topbtn topbtn1" @click="navto('/mine/transaction')">{{lan.$t('tixianjilu')}}</div>
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
<div class="choose">
|
||||
<div class="chooseitem">
|
||||
<div class="label">选择账户</div>
|
||||
<div class="label">{{lan.$t('xuanzezhanghu')}}</div>
|
||||
<!-- <a-radio></a-radio> -->
|
||||
<!-- {{payinfo.type}} -->
|
||||
<a-radio-group
|
||||
@@ -32,7 +32,7 @@
|
||||
class="icon"
|
||||
/>
|
||||
<span class="accounttype"
|
||||
>银行卡</span
|
||||
>{{lan.$t('yinhangka')}}</span
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
@@ -44,7 +44,7 @@
|
||||
class="icon icon1"
|
||||
/>
|
||||
<span class="accounttype"
|
||||
>支付宝</span
|
||||
>{{lan.$t('zhifubao')}}</span
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
@@ -56,12 +56,12 @@
|
||||
class="icon icon1"
|
||||
/>
|
||||
<span class="accounttype"
|
||||
>微信</span
|
||||
>{{lan.$t('weixin')}}</span
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
<div class="zhanghao">
|
||||
账号:6217 **** **** **** 175
|
||||
{{lan.$t('zhanghao')}}:6217 **** **** **** 175
|
||||
</div>
|
||||
</div>
|
||||
</a-radio>
|
||||
@@ -100,13 +100,13 @@
|
||||
</a-radio-group>
|
||||
</div>
|
||||
<div class="cashoutmoney">
|
||||
<div class="label">提现金额</div>
|
||||
<div class="label">{{lan.$t('tixianjine')}}</div>
|
||||
<div class="moneynum">
|
||||
<a-input v-model:value="payinfo.money" class="shuru" />
|
||||
<div>¥</div>
|
||||
<div class="cashoutall" @click="all">全部金额</div>
|
||||
<div class="cashoutall" @click="all">{{lan.$t('quanbujine')}}</div>
|
||||
<div class="desc">
|
||||
注:每笔提现收取0.1%服务费,最低¥0.1
|
||||
{{lan.$t('tixianzhu')}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -116,10 +116,10 @@
|
||||
payinfo.money < 100 || payinfo.money > parseFloat(yue)
|
||||
"
|
||||
>
|
||||
*您的余额只有{{ parseFloat(yue) }},最低提现金额¥100
|
||||
*{{lan.$t('yueshu')}} {{ parseFloat(yue) }},{{lan.$t('zuiditixian')}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="cashoutall submit" @click="sub">立即提现</div>
|
||||
<div class="cashoutall submit" @click="sub">{{lan.$t('lijitixian')}}</div>
|
||||
<NavBottom class="navbottom"></NavBottom>
|
||||
</div>
|
||||
</div>
|
||||
@@ -132,12 +132,14 @@ import { cashout, getwallect } from "@/api";
|
||||
import store from "@/store";
|
||||
import { message } from "ant-design-vue";
|
||||
import router from '@/router';
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
export default defineComponent({
|
||||
name: "Cashout",
|
||||
components: {
|
||||
NavBottom,
|
||||
},
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
const money = ref(0);
|
||||
const payinfo = ref<any>({
|
||||
type: 0,
|
||||
@@ -209,6 +211,7 @@ export default defineComponent({
|
||||
sub,
|
||||
accountlist,
|
||||
store,
|
||||
lan
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -61,15 +61,16 @@
|
||||
<script lang="ts">
|
||||
import { defineComponent } from "vue";
|
||||
import NavBottom from "@/components/NavBottom.vue";
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
export default defineComponent({
|
||||
name: "Cashoutdetail",
|
||||
components: {
|
||||
NavBottom
|
||||
},
|
||||
setup() {
|
||||
|
||||
const lan: any = useI18n();
|
||||
return {
|
||||
|
||||
lan
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -4,20 +4,20 @@
|
||||
<div class="listitem" @click="navto(1)">
|
||||
<div class="top">
|
||||
<img src="@/static/images/zhibotjicon.png" alt="" class="icon" />
|
||||
<span>直播列表</span>
|
||||
<span>{{lan.$t('zhiboliebiao')}}</span>
|
||||
</div>
|
||||
<div class="mid">
|
||||
<div>
|
||||
<div class="data">
|
||||
<div class="label">直播课程</div>
|
||||
<div class="label">{{lan.$t('zhibokecheng')}}</div>
|
||||
<div class="right">{{statistics.liveInfo?statistics.liveInfo.sum:0}}</div>
|
||||
</div>
|
||||
<div class="data">
|
||||
<div class="label">参与人数</div>
|
||||
<div class="label">{{lan.$t('canyurenshu')}}</div>
|
||||
<div class="right">{{statistics.liveInfo?statistics.liveInfo.student:0}}</div>
|
||||
</div>
|
||||
<div class="data">
|
||||
<div class="label">课程评分</div>
|
||||
<div class="label">{{lan.$t('kechengpingfen')}}</div>
|
||||
<div class="right">{{statistics.liveInfo?statistics.liveInfo.avg:0}}</div>
|
||||
</div>
|
||||
<img src="@/static/images/zhibotj.png" alt="" class="zhuzi" />
|
||||
@@ -27,20 +27,20 @@
|
||||
<div class="listitem" @click="navto(2)">
|
||||
<div class="top">
|
||||
<img src="@/static/images/shipintjicon.png" alt="" class="icon" />
|
||||
<span class="label1">视频列表</span>
|
||||
<span class="label1">{{lan.$t('shipinliebiao')}}</span>
|
||||
</div>
|
||||
<div class="mid">
|
||||
<div>
|
||||
<div class="data">
|
||||
<div class="label">发布视频</div>
|
||||
<div class="label">{{lan.$t('fabushipin')}}</div>
|
||||
<div class="right">{{statistics.videoInfo?statistics.videoInfo.sum:0}}</div>
|
||||
</div>
|
||||
<div class="data">
|
||||
<div class="label">总观看数</div>
|
||||
<div class="label">{{lan.$t('zongguankanshu')}}</div>
|
||||
<div class="right">{{statistics.videoInfo?statistics.videoInfo.sum:0}}</div>
|
||||
</div>
|
||||
<div class="data">
|
||||
<div class="label">平均得分</div>
|
||||
<div class="label">{{lan.$t('pingjundefen')}}</div>
|
||||
<div class="right">{{statistics.videoInfo?statistics.videoInfo.sum:0}}</div>
|
||||
</div>
|
||||
<img src="@/static/images/shipintj.png" alt="" class="zhuzi" />
|
||||
@@ -50,12 +50,12 @@
|
||||
<div class="listitem" @click="navto(3)">
|
||||
<div class="top">
|
||||
<img src="@/static/images/dingyuetjicon.png" alt="" class="icon" />
|
||||
<span class="label2">订阅列表</span>
|
||||
<span class="label2">{{lan.$t('dingyueliebiao')}}</span>
|
||||
</div>
|
||||
<div class="mid">
|
||||
<div>
|
||||
<div class="data">
|
||||
<div class="label">订阅人数</div>
|
||||
<div class="label">{{lan.$t('dingyuerenshu')}}</div>
|
||||
<div class="right">{{statistics.studentInfo?statistics.studentInfo.sum:0}}</div>
|
||||
</div>
|
||||
|
||||
@@ -75,12 +75,14 @@ import { defineComponent, onMounted, ref } from "vue";
|
||||
import NavBottom from "@/components/NavBottom.vue";
|
||||
import { getstatisticlist } from "@/api"
|
||||
import router from '@/router';
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
export default defineComponent({
|
||||
name: "Liststatistic",
|
||||
components: {
|
||||
NavBottom
|
||||
},
|
||||
setup(){
|
||||
const lan: any = useI18n();
|
||||
const statistics = ref({})
|
||||
onMounted(async ()=>{
|
||||
statistics.value = await getstatisticlist()
|
||||
@@ -101,7 +103,8 @@ export default defineComponent({
|
||||
// console.log(statistics,111)
|
||||
return {
|
||||
statistics,
|
||||
navto
|
||||
navto,
|
||||
lan
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
<template>
|
||||
<div class="upload-video">
|
||||
<a-form :label-col="labelCol" :wrapper-col="wrapperCol">
|
||||
<div class="title">上传视频</div>
|
||||
<a-form-item label="视频标题">
|
||||
<div class="title">{{lan.$t("shangchuanshipin")}}</div>
|
||||
<a-form-item :label="lan.$t('shipinbiaoti')">
|
||||
<a-input
|
||||
size="small"
|
||||
v-model:value="form.title"
|
||||
placeholder="请输入您的视频标题"
|
||||
:placeholder="lan.$t('shurushipinbiaoti')"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="视频封面" class="video-cover">
|
||||
<a-form-item :label="lan.$t('shipinfengmian')" class="video-cover">
|
||||
<a-upload list-type="picture" :customRequest="uploadspic" :before-upload="beforeUpload">
|
||||
<div class="upload-image" v-if="!viewCover && form.img.length == 0">
|
||||
<PlusOutlined
|
||||
@@ -28,7 +28,7 @@
|
||||
</div>
|
||||
</a-upload>
|
||||
</a-form-item>
|
||||
<a-form-item label="选择视频" class="video-introduction">
|
||||
<a-form-item :label="lan.$t('xuanzeshipin')" class="video-introduction">
|
||||
<div class="upload-container">
|
||||
<a-upload list-type="picture" :customRequest="uploads" :beforeUpload="beforeVideoUpload">
|
||||
<div class="upload-image">
|
||||
@@ -79,24 +79,24 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="demand">
|
||||
<p class="one-line-hide">视频要求:</p>
|
||||
<p class="one-line-hide">{{lan.$t('shipinyaoqiu')}}</p>
|
||||
<p class="one-line-hide">
|
||||
1.文件扩展名:fiv、mp4…文件扩展名:fiv、mp4…
|
||||
1. {{lan.$t('shipinyaoqiu3')}}
|
||||
</p>
|
||||
</div>
|
||||
</a-form-item>
|
||||
<a-form-item label="视频简介" class="brief">
|
||||
<a-form-item :label="lan.$t('shipinjianjie')" class="brief">
|
||||
<a-textarea
|
||||
v-model:value="form.desc"
|
||||
:autoSize="true"
|
||||
class="brief-textarea"
|
||||
:maxlength="200"
|
||||
placeholder="请输入您的视频简介"
|
||||
:placeholder="lan.$t('shurushipinjianjie')"
|
||||
/>
|
||||
<span class="words-number">{{ form.desc.length }}/200</span>
|
||||
</a-form-item>
|
||||
<a-form-item :wrapper-col="{ span: 4, offset: 0 }">
|
||||
<a-button @click="onSubmit">上传视频</a-button>
|
||||
<a-button @click="onSubmit">{{lan.$t('shangchuanshipin')}}</a-button>
|
||||
</a-form-item>
|
||||
</a-form>
|
||||
<nav-bottom></nav-bottom>
|
||||
@@ -112,6 +112,7 @@ import { uploadflie } from "@/utils/vod";
|
||||
import { setvideo, videoadd, videodetail } from "@/api";
|
||||
import { useRoute } from 'vue-router';
|
||||
import { message } from 'ant-design-vue';
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
|
||||
export default defineComponent({
|
||||
name: "ReleaseWebcast",
|
||||
@@ -121,6 +122,7 @@ export default defineComponent({
|
||||
NavBottom,
|
||||
},
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
interface FileItem {
|
||||
video: Array<string>;
|
||||
}
|
||||
@@ -319,7 +321,8 @@ export default defineComponent({
|
||||
removeFile,
|
||||
beforeUpload,
|
||||
ifalowupload,
|
||||
beforeVideoUpload
|
||||
beforeVideoUpload,
|
||||
lan
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -1,16 +1,20 @@
|
||||
<template>
|
||||
<div class="webcast">
|
||||
<a-form :label-col="labelCol" :wrapper-col="wrapperCol">
|
||||
<div class="title">直播信息</div>
|
||||
<a-form-item label="直播标题">
|
||||
<div class="title">{{ lan.$t("zhiboxinxi") }}</div>
|
||||
<a-form-item :label="lan.$t('zhibobiaoti')">
|
||||
<a-input
|
||||
size="small"
|
||||
v-model:value="form.title"
|
||||
placeholder="请输入您的直播标题"
|
||||
:placeholder="lan.$t('shuruzhibobiaoti')"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="直播封面" class="item-cover">
|
||||
<a-upload list-type="picture" :customRequest="uploadspic" :before-upload="beforeUploadpic">
|
||||
<a-form-item :label="lan.$t('zhibofengmian')" class="item-cover">
|
||||
<a-upload
|
||||
list-type="picture"
|
||||
:customRequest="uploadspic"
|
||||
:before-upload="beforeUploadpic"
|
||||
>
|
||||
<div
|
||||
class="upload-image"
|
||||
v-if="!viewCover && form.img.length == 0"
|
||||
@@ -34,8 +38,15 @@
|
||||
</div>
|
||||
</a-upload>
|
||||
</a-form-item>
|
||||
<a-form-item label="视频介绍" class="video-introduction">
|
||||
<a-upload list-type="picture" :customRequest="uploads" :before-upload="beforeUpload">
|
||||
<a-form-item
|
||||
:label="lan.$t('shipinjieshao')"
|
||||
class="video-introduction"
|
||||
>
|
||||
<a-upload
|
||||
list-type="picture"
|
||||
:customRequest="uploads"
|
||||
:before-upload="beforeUpload"
|
||||
>
|
||||
<div class="upload-image" v-if="form.fileurl.length == 0">
|
||||
<PlaySquareOutlined
|
||||
style="fontsize: 22px"
|
||||
@@ -67,15 +78,23 @@
|
||||
</div>
|
||||
</a-upload>
|
||||
<div class="demand">
|
||||
<p class="one-line-hide">
|
||||
{{ lan.$t("shipinyaoqiu") }}
|
||||
</p>
|
||||
<p class="one-line-hide">1.{{ lan.$t("shipinyaoqiu1") }}</p>
|
||||
<p class="one-line-hide">2.{{ lan.$t("shipinyaoqiu2") }}</p>
|
||||
<p class="one-line-hide">3.{{ lan.$t("shipinyaoqiu3") }}</p>
|
||||
</div>
|
||||
<!-- <div class="demand">
|
||||
<p class="one-line-hide">视频要求:</p>
|
||||
<p class="one-line-hide">1.上传视频时间要求为30s之内</p>
|
||||
<p class="one-line-hide">2.支持文件大小100M</p>
|
||||
<p class="one-line-hide">
|
||||
3.文件扩展名:fiv、mp4…文件扩展名:fiv、mp4…
|
||||
</p>
|
||||
</div>
|
||||
</div> -->
|
||||
</a-form-item>
|
||||
<a-form-item label="开始时间">
|
||||
<a-form-item :label="lan.$t('kaishishijian')">
|
||||
<!-- <a-input
|
||||
size="small"
|
||||
v-model:value="form.startTime"
|
||||
@@ -85,42 +104,45 @@
|
||||
show-time
|
||||
:value="form.dateline"
|
||||
@change="startchange"
|
||||
placeholder="请设置您的开始时间"
|
||||
:placeholder="lan.$t('shezhikaishishijian')"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="直播时长"
|
||||
:label="lan.$t('zhiboshichang')"
|
||||
class="duration"
|
||||
v-bind="validateInfos.livetime"
|
||||
>
|
||||
<a-input
|
||||
size="small"
|
||||
v-model:value="form.livetime"
|
||||
placeholder="请输入直播时间"
|
||||
:placeholder="lan.$t('shuruzhiboshijian')"
|
||||
type="number"
|
||||
/>
|
||||
<span class="unit">分钟</span>
|
||||
<span class="unit">{{ lan.$t("fenzhong") }}</span>
|
||||
</a-form-item>
|
||||
<a-form-item label="直播人数" v-bind="validateInfos.livenumber">
|
||||
<a-form-item
|
||||
:label="lan.$t('zhiborenshu')"
|
||||
v-bind="validateInfos.livenumber"
|
||||
>
|
||||
<a-input
|
||||
size="small"
|
||||
v-model:value="form.livenumber"
|
||||
placeholder="请输入直播人数"
|
||||
:placeholder="lan.$t('shuruzhiborenshu')"
|
||||
type="number"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="直播简介" class="brief">
|
||||
<a-form-item :label="lan.$t('zhibojianjie')" class="brief">
|
||||
<a-textarea
|
||||
v-model:value="form.desc"
|
||||
:autoSize="true"
|
||||
class="brief-textarea"
|
||||
:maxlength="200"
|
||||
placeholder="请输入您的直播简介"
|
||||
:placeholder="lan.$t('shuruzhibojianjie')"
|
||||
/>
|
||||
<span class="words-number">{{ form.desc.length }}/200</span>
|
||||
</a-form-item>
|
||||
<a-form-item :wrapper-col="{ span: 4, offset: 0 }">
|
||||
<a-button @click="onSubmit">发布直播</a-button>
|
||||
<a-button @click="onSubmit">{{ lan.$t("fabuzhibo") }}</a-button>
|
||||
</a-form-item>
|
||||
</a-form>
|
||||
<div class="modal-container">
|
||||
@@ -136,14 +158,16 @@
|
||||
<img src="@/static/images/delete.png" class="close" />
|
||||
</template>
|
||||
<div class="notice-container report" v-if="lives.status == 1">
|
||||
<div class="title">您尚未获得直播资格</div>
|
||||
<div class="title">{{ lan.$t("wuzhibozige") }}</div>
|
||||
<div class="title sub-title">
|
||||
{{ lives.data.msg }}
|
||||
</div>
|
||||
<div class="confirm-btn" @click="fankui">意见反馈</div>
|
||||
<div class="confirm-btn" @click="fankui">
|
||||
{{ lan.$t("yijianfankui") }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="notice-container" v-else>
|
||||
<div class="title">您尚未获得直播资格</div>
|
||||
<div class="title">{{ lan.$t("wuzhibozige") }}</div>
|
||||
<div class="title sub-title">
|
||||
<!-- 上一周/月您在平台视频点击量为
|
||||
<span class="red">第24名</span>,要在前
|
||||
@@ -178,7 +202,8 @@ import { getlivest, liveadd, liveinfo, setlive } from "@/api";
|
||||
import { useRoute } from "vue-router";
|
||||
import dayjs from "dayjs";
|
||||
import { message } from "ant-design-vue";
|
||||
import router from '@/router';
|
||||
import router from "@/router";
|
||||
import { useI18n } from "@/utils/i18n";
|
||||
|
||||
export default defineComponent({
|
||||
name: "ReleaseWebcast",
|
||||
@@ -189,6 +214,7 @@ export default defineComponent({
|
||||
RankList,
|
||||
},
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
// 表单数据
|
||||
const form = ref({
|
||||
title: "",
|
||||
@@ -266,8 +292,8 @@ export default defineComponent({
|
||||
viewCover.value = true;
|
||||
// form.cover = fileList;
|
||||
}
|
||||
function fankui(){
|
||||
router.push({path:"/mine/aboutus",query:{selected:3}})
|
||||
function fankui() {
|
||||
router.push({ path: "/mine/aboutus", query: { selected: 3 } });
|
||||
}
|
||||
const { resetFields, validate, validateInfos } = useForm(form, rules);
|
||||
|
||||
@@ -323,24 +349,22 @@ export default defineComponent({
|
||||
message.error("直播简介不能为空");
|
||||
return;
|
||||
} else {
|
||||
if(!lives.value.status){
|
||||
// subdata.fileid=picinfo.
|
||||
if (id != undefined && id) {
|
||||
/**
|
||||
* todo 提交会报错 编辑直播
|
||||
*/
|
||||
subdata.id = id;
|
||||
// setlive(subdata)
|
||||
} else {
|
||||
console.log(subdata);
|
||||
console.log(lives.value)
|
||||
// liveadd(subdata);
|
||||
}
|
||||
}else{
|
||||
message.error("您尚未获得直播资格")
|
||||
}
|
||||
|
||||
|
||||
if (!lives.value.status) {
|
||||
// subdata.fileid=picinfo.
|
||||
if (id != undefined && id) {
|
||||
/**
|
||||
* todo 提交会报错 编辑直播
|
||||
*/
|
||||
subdata.id = id;
|
||||
setlive(subdata)
|
||||
} else {
|
||||
console.log(subdata);
|
||||
console.log(lives.value);
|
||||
liveadd(subdata);
|
||||
}
|
||||
} else {
|
||||
message.error("您尚未获得直播资格");
|
||||
}
|
||||
}
|
||||
})
|
||||
.catch((err: unknown) => {
|
||||
@@ -394,51 +418,49 @@ export default defineComponent({
|
||||
action: string;
|
||||
data: unknown;
|
||||
file: File;
|
||||
}
|
||||
const ifallowupload=ref<boolean>(false)
|
||||
function beforeUpload(info?: any){
|
||||
console.log(info)
|
||||
if(info.type.split("/")[0]!="video"){
|
||||
ifallowupload.value=false
|
||||
message.error("视频介绍的文件格式错误")
|
||||
return
|
||||
}else{
|
||||
ifallowupload.value=true
|
||||
}
|
||||
}
|
||||
async function uploads(file: AntUpload) {
|
||||
if(ifallowupload.value){
|
||||
console.log(file);
|
||||
videofile.value = file.file;
|
||||
videos.value[0].addEventListener("durationchange", () => {
|
||||
console.log(videos.value[0].duration);
|
||||
form.value.fileduration = videos.value[0].duration;
|
||||
});
|
||||
const res = await uploadflie(file.file, (info: any) => {
|
||||
console.log(info);
|
||||
uploadprogress.value = info.percent.toFixed(2) * 100;
|
||||
});
|
||||
console.log(res);
|
||||
|
||||
form.value.fileid = res.fileId;
|
||||
form.value.fileurl = res.video.url;
|
||||
}
|
||||
|
||||
}
|
||||
const ifallowpic=ref<boolean>(false)
|
||||
async function uploadspic(file: AntUpload) {
|
||||
if(ifallowpic.value){
|
||||
const res = await uploadflie(file.file, (info: any) => {
|
||||
console.log(info);
|
||||
uploadpicprogress.value = info.percent.toFixed(2) * 100;
|
||||
});
|
||||
console.log(res);
|
||||
const ifallowupload = ref<boolean>(false);
|
||||
function beforeUpload(info?: any) {
|
||||
console.log(info);
|
||||
if (info.type.split("/")[0] != "video") {
|
||||
ifallowupload.value = false;
|
||||
message.error("视频介绍的文件格式错误");
|
||||
return;
|
||||
} else {
|
||||
ifallowupload.value = true;
|
||||
}
|
||||
}
|
||||
async function uploads(file: AntUpload) {
|
||||
if (ifallowupload.value) {
|
||||
console.log(file);
|
||||
videofile.value = file.file;
|
||||
videos.value[0].addEventListener("durationchange", () => {
|
||||
console.log(videos.value[0].duration);
|
||||
form.value.fileduration = videos.value[0].duration;
|
||||
});
|
||||
const res = await uploadflie(file.file, (info: any) => {
|
||||
console.log(info);
|
||||
uploadprogress.value = info.percent.toFixed(2) * 100;
|
||||
});
|
||||
console.log(res);
|
||||
|
||||
// picinfo.fileId=res.fileId
|
||||
// picinfo.url=res.video.url
|
||||
form.value.img = res.video.url;
|
||||
}
|
||||
|
||||
form.value.fileid = res.fileId;
|
||||
form.value.fileurl = res.video.url;
|
||||
}
|
||||
}
|
||||
const ifallowpic = ref<boolean>(false);
|
||||
async function uploadspic(file: AntUpload) {
|
||||
if (ifallowpic.value) {
|
||||
const res = await uploadflie(file.file, (info: any) => {
|
||||
console.log(info);
|
||||
uploadpicprogress.value = info.percent.toFixed(2) * 100;
|
||||
});
|
||||
console.log(res);
|
||||
|
||||
// picinfo.fileId=res.fileId
|
||||
// picinfo.url=res.video.url
|
||||
form.value.img = res.video.url;
|
||||
}
|
||||
}
|
||||
|
||||
getlivest().then((res) => {
|
||||
@@ -446,17 +468,17 @@ export default defineComponent({
|
||||
isEntitled.value = true;
|
||||
lives.value = res;
|
||||
}
|
||||
});
|
||||
function beforeUploadpic(info?: any){
|
||||
console.log(info)
|
||||
if(info.type.split("/")[0]!='image'){
|
||||
message.error("封面必须是图片文件")
|
||||
ifallowpic.value=false
|
||||
return
|
||||
}else{
|
||||
ifallowpic.value=true
|
||||
}
|
||||
}
|
||||
});
|
||||
function beforeUploadpic(info?: any) {
|
||||
console.log(info);
|
||||
if (info.type.split("/")[0] != "image") {
|
||||
message.error("封面必须是图片文件");
|
||||
ifallowpic.value = false;
|
||||
return;
|
||||
} else {
|
||||
ifallowpic.value = true;
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
labelCol: { span: 4 },
|
||||
@@ -481,12 +503,13 @@ export default defineComponent({
|
||||
startchange,
|
||||
videofile,
|
||||
videos,
|
||||
lives,
|
||||
beforeUploadpic,
|
||||
ifallowpic,
|
||||
beforeUpload,
|
||||
lives,
|
||||
beforeUploadpic,
|
||||
ifallowpic,
|
||||
beforeUpload,
|
||||
ifallowupload,
|
||||
fankui
|
||||
fankui,
|
||||
lan,
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -3,19 +3,19 @@
|
||||
|
||||
<div class="mingxilist">
|
||||
<div class="mingxitop">
|
||||
<div><span class="tabtitle">明细查询</span>
|
||||
<div><span class="tabtitle">{{lan.$t("mingxichaxun")}}</span>
|
||||
</div>
|
||||
<a-range-picker @change="onChange" class="choosedate" :placeholder="['请选择开始日期', '请选择结束日期']"/>
|
||||
<a-range-picker @change="onChange" class="choosedate" :placeholder="[lan.$t('kaishiriqi'), lan.$t('jieshuriqi')]"/>
|
||||
</div>
|
||||
<div>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="head">
|
||||
<th>账户</th>
|
||||
<th>提交日期</th>
|
||||
<th>状态</th>
|
||||
<th>金额</th>
|
||||
<th>操作</th>
|
||||
<th>{{lan.$t('zhanghu')}}</th>
|
||||
<th>{{lan.$t('tijiaoriqi')}}</th>
|
||||
<th>{{lan.$t('zhuangtai')}}</th>
|
||||
<th>{{lan.$t('jine')}}</th>
|
||||
<th>{{lan.$t('caozuo')}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -28,7 +28,7 @@
|
||||
<span v-else>¥</span>
|
||||
{{i.money}}
|
||||
</td>
|
||||
<td @click="navto(3,i.withdrawalid)">查看详情</td>
|
||||
<td @click="navto(3,i.withdrawalid)">{{lan.$t('chakanxiangqing')}}</td>
|
||||
</tr>
|
||||
|
||||
|
||||
@@ -49,12 +49,14 @@ import { defineComponent, onMounted, ref } from "vue";
|
||||
import NavBottom from "@/components/NavBottom.vue";
|
||||
import { withdrawal } from '@/api';
|
||||
import router from '@/router';
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
export default defineComponent({
|
||||
name: "Transaction",
|
||||
components: {
|
||||
NavBottom
|
||||
},
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
const withdrawallist =ref<any>({})
|
||||
const dates=ref<Array<string>>(["",""])
|
||||
const page = ref(1);
|
||||
@@ -105,7 +107,8 @@ export default defineComponent({
|
||||
withdrawallist,
|
||||
onChange,
|
||||
navto,
|
||||
pagechange
|
||||
pagechange,
|
||||
lan
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -3,37 +3,37 @@
|
||||
|
||||
<div class="mingxilist" v-if="query.ifwithdrawal!=1">
|
||||
<div class="tabs">
|
||||
<div class="beforetab">交易明细详情</div>
|
||||
<div class="beforetab">{{lan.$t('jiaoyimingxixiangqing')}}</div>
|
||||
</div>
|
||||
<div class="detail">
|
||||
<div class="infoitem">
|
||||
<div class="left">金额</div>
|
||||
<div class="left">{{lan.$t('jine')}}</div>
|
||||
<div class="right">{{accountinfo.money}}</div>
|
||||
</div>
|
||||
|
||||
<div class="infoitem">
|
||||
<div class="left">类型</div>
|
||||
<div class="right" v-if="accountinfo.type==1">直播收入</div>
|
||||
<div class="right" v-if="accountinfo.type==2">提现</div>
|
||||
<div class="right" v-if="accountinfo.type==3">后台充值</div>
|
||||
<div class="left">{{lan.$t('leixing')}}</div>
|
||||
<div class="right" v-if="accountinfo.type==1">{{lan.$t('zhiboshouru')}}</div>
|
||||
<div class="right" v-if="accountinfo.type==2">{{lan.$t('tixian')}}</div>
|
||||
<div class="right" v-if="accountinfo.type==3">{{lan.$t('houtaichongzhi')}}</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="infoitem">
|
||||
<div class="left">流水号</div>
|
||||
<div class="left">{{lan.$t('liushuihao')}}</div>
|
||||
<div class="right">{{accountinfo.sn}}</div>
|
||||
</div>
|
||||
|
||||
<div class="infoitem">
|
||||
<div class="left">日期</div>
|
||||
<div class="left">{{lan.$t('riqi')}}</div>
|
||||
<div class="right">{{accountinfo.created_at}}</div>
|
||||
</div>
|
||||
|
||||
<div class="infoitem">
|
||||
<div class="left">来源</div>
|
||||
<div class="left">{{lan.$t('laiyuan')}}</div>
|
||||
<div class="right">{{accountinfo.remark}}</div>
|
||||
</div>
|
||||
<div class="back" @click="navto(1,2)">返回</div>
|
||||
<div class="back" @click="navto(1,2)">{{lan.$t('fanhui')}}</div>
|
||||
|
||||
</div>
|
||||
<NavBottom class="navbottom"></NavBottom>
|
||||
@@ -41,23 +41,23 @@
|
||||
|
||||
<div class="mingxilist" v-if="query.ifwithdrawal==1">
|
||||
<div class="tabs">
|
||||
<div class="beforetab">提现记录详情</div>
|
||||
<div class="beforetab">{{lan.$t('tixianjiluxiangqing')}}</div>
|
||||
</div>
|
||||
<div class="detail">
|
||||
<div class="infoitem">
|
||||
<div class="left">提现金额</div>
|
||||
<div class="left">{{lan.$t('tixianjine')}}</div>
|
||||
<div class="right">{{accountinfo.amount}}</div>
|
||||
</div>
|
||||
<div class="infoitem">
|
||||
<div class="left">到帐金额</div>
|
||||
<div class="left">{{lan.$t('daozhangjine')}}</div>
|
||||
<div class="right">{{accountinfo.money}}</div>
|
||||
</div>
|
||||
<div class="infoitem">
|
||||
<div class="left">手续费</div>
|
||||
<div class="left">{{lan.$t('shouxufei')}}</div>
|
||||
<div class="right">{{accountinfo.sxf}}</div>
|
||||
</div>
|
||||
<div class="infoitem">
|
||||
<div class="left">提现状态</div>
|
||||
<div class="left">{{lan.$t('tixianzhuangtai')}}</div>
|
||||
<div class="right" >{{accountinfo.statusname}}</div>
|
||||
<!-- <div class="right" v-if="accountinfo.status==1">直播收入</div>
|
||||
<div class="right" v-if="accountinfo.status==2">提现</div>
|
||||
@@ -65,28 +65,28 @@
|
||||
|
||||
</div>
|
||||
<div class="infoitem">
|
||||
<div class="left">原因描述</div>
|
||||
<div class="left">{{lan.$t('yuanyinmiaoshu')}}</div>
|
||||
<div class="right">{{accountinfo.remark}}</div>
|
||||
</div>
|
||||
<div class="infoitem">
|
||||
<div class="left">流水号</div>
|
||||
<div class="left">{{lan.$t('liushuihao')}}</div>
|
||||
<div class="right">{{accountinfo.sn}}</div>
|
||||
</div>
|
||||
<div class="infoitem">
|
||||
<div class="left">名称</div>
|
||||
<div class="left">{{lan.$t('mingcheng')}}</div>
|
||||
<div class="right">{{accountinfo.typename}}</div>
|
||||
</div>
|
||||
<div class="infoitem">
|
||||
<div class="left">日期</div>
|
||||
<div class="left">{{riqi}}</div>
|
||||
<div class="right">{{accountinfo.created_at}}</div>
|
||||
</div>
|
||||
|
||||
<div class="infoitem">
|
||||
<div class="left">收款账户</div>
|
||||
<div class="left">{{lan.$t('shoukuanzhanghu')}}</div>
|
||||
<div class="right">{{accountinfo.account}}</div>
|
||||
</div>
|
||||
|
||||
<div class="back" @click="navto(2)">返回</div>
|
||||
<div class="back" @click="navto(2)">{{lan.$t('fanhui')}}</div>
|
||||
</div>
|
||||
<NavBottom class="navbottom"></NavBottom>
|
||||
</div>
|
||||
@@ -99,12 +99,14 @@ import NavBottom from "@/components/NavBottom.vue";
|
||||
import { transactioninfo, withdrawlxq } from '@/api';
|
||||
import { useRoute } from 'vue-router';
|
||||
import router from '@/router';
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
export default defineComponent({
|
||||
name: "Transactiondetail",
|
||||
components: {
|
||||
NavBottom
|
||||
},
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
const accountinfo=ref<any>({});
|
||||
const query=ref({})
|
||||
onMounted(async () => {
|
||||
@@ -143,7 +145,8 @@ export default defineComponent({
|
||||
return {
|
||||
accountinfo,
|
||||
query,
|
||||
navto
|
||||
navto,
|
||||
lan
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -3,17 +3,17 @@
|
||||
<div class="top">
|
||||
<div class="mywallet">
|
||||
<div class="topinfo">
|
||||
<div class="title">我的钱包</div>
|
||||
<div class="title">{{lan.$t('wodeqianbao')}}</div>
|
||||
|
||||
<div class="topbtn" @click="navto(2)">立即提现</div>
|
||||
<div class="topbtn topbtn1" @click="navto(3)">提现记录</div>
|
||||
<div class="topbtn" @click="navto(2)">{{lan.$t('lijitixian')}}</div>
|
||||
<div class="topbtn topbtn1" @click="navto(3)">{{lan.$t('tixianjilu')}}</div>
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
<div class="accounts">
|
||||
<div class="left" @click="listchange(1)">
|
||||
<img src="@/static/images/account.png" alt="" class="pic" />
|
||||
<div class="texts">
|
||||
<div>绑定用户</div>
|
||||
<div>{{lan.$t('bangdingyonghu')}}</div>
|
||||
<div class="num">{{accountlist.length}}</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -21,7 +21,7 @@
|
||||
<div class="left" @click="listchange(2)">
|
||||
<img src="@/static/images/money.png" alt="" class="pic" />
|
||||
<div class="texts">
|
||||
<div>账户余额</div>
|
||||
<div>{{lan.$t('zhanghuyue')}}</div>
|
||||
<div class="num">
|
||||
<!-- <span class="moneyicon" v-if="ifchina">¥</span>
|
||||
<span class="moneyicon" v-else> $ </span> -->
|
||||
@@ -43,7 +43,7 @@
|
||||
</div>
|
||||
<div class="add" @click="navto(1)">
|
||||
<img src="@/static/images/walletadd.png" alt="" class="icon" />
|
||||
<div>添加新的账户</div>
|
||||
<div>{{lan.$t('tianjiazhanghu')}}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
<div class="hostinfo">
|
||||
<div v-if="i.type==4">
|
||||
<img src="@/static/images/bank.png" alt="" class="icon" />
|
||||
<span class="accounttype">银行卡</span>
|
||||
<span class="accounttype">{{lan.$t('yinhangka')}}</span>
|
||||
</div>
|
||||
<div v-if="i.type==2">
|
||||
<img
|
||||
@@ -60,7 +60,7 @@
|
||||
alt=""
|
||||
class="icon icon1"
|
||||
/>
|
||||
<span class="accounttype">支付宝</span>
|
||||
<span class="accounttype">{{lan.$t('zhifubao')}}</span>
|
||||
</div>
|
||||
<div v-if="i.type==1">
|
||||
<img
|
||||
@@ -68,15 +68,15 @@
|
||||
alt=""
|
||||
class="icon icon1"
|
||||
/>
|
||||
<span class="accounttype">微信</span>
|
||||
<span class="accounttype">{{lan.$t('weixin')}}</span>
|
||||
</div>
|
||||
<div class="btns">
|
||||
<div class="btn" @click="navto(1,i.wallectid)">修改</div>
|
||||
<div class="btn1" @click="del(i.wallectid)">删除</div>
|
||||
<div class="btn" @click="navto(1,i.wallectid)">{{lan.$t('xiugai')}}</div>
|
||||
<div class="btn1" @click="del(i.wallectid)">{{lan.$t('shanchu')}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="zhanghao" v-if="i.type==4">账号 <span>{{i.bankcode}}</span></div>
|
||||
<div class="zhanghao" v-else>账号 <span>{{i.account}}</span></div>
|
||||
<div class="zhanghao" v-if="i.type==4">{{lan.$t('zhanghao0')}} <span>{{i.bankcode}}</span></div>
|
||||
<div class="zhanghao" v-else>{{lan.$t('zhanghao0')}} <span>{{i.account}}</span></div>
|
||||
</div>
|
||||
|
||||
<!-- <div class="accountitem">
|
||||
@@ -137,7 +137,7 @@
|
||||
<div class="hostinfo">
|
||||
<div v-if="i.type==4">
|
||||
<img src="@/static/images/foreignbank.png" alt="" class="icon" />
|
||||
<span class="accounttype">银行卡</span>
|
||||
<span class="accounttype">{{lan.$t('yinhangka')}}</span>
|
||||
</div>
|
||||
|
||||
<div v-else>
|
||||
@@ -146,40 +146,40 @@
|
||||
</div>
|
||||
|
||||
<div class="btns">
|
||||
<div class="btn" @click="navto(1,i.wallectid)">修改</div>
|
||||
<div class="btn1" @click="del(i.wallectid)">删除</div>
|
||||
<div class="btn" @click="navto(1,i.wallectid)">{{lan.$t('xiugai')}}</div>
|
||||
<div class="btn1" @click="del(i.wallectid)">{{lan.$t('shanchu')}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="zhanghao" v-if="i.type==4">账号 <span>{{i.bankcode}}</span></div>
|
||||
<div class="zhanghao" v-else>账号 <span>{{i.account}}</span></div>
|
||||
<div class="zhanghao" v-if="i.type==4">{{lan.$t('zhanghao')}} <span>{{i.bankcode}}</span></div>
|
||||
<div class="zhanghao" v-else>{{lan.$t('zhanghao')}} <span>{{i.account}}</span></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mingxilist" v-if="ifchina && listindex==2">
|
||||
<div class="mingxitop">
|
||||
<div class="tabs">
|
||||
<span class="tabtitle">明细查询</span>
|
||||
<span class="tabtitle">{{lan.$t('mingxichaxun')}}</span>
|
||||
|
||||
<div :class="tabindex == 0 ? 'on' : ''" @click="tabchange(0)">
|
||||
全部
|
||||
{{lan.$t('quanbu')}}
|
||||
</div>
|
||||
<div :class="tabindex == 1 ? 'on' : ''" @click="tabchange(1)">
|
||||
收入
|
||||
{{lan.$t('shouru')}}
|
||||
</div>
|
||||
<div :class="tabindex == 2 ? 'on' : ''" @click="tabchange(2)">
|
||||
支出
|
||||
{{lan.$t('zhichu')}}
|
||||
</div>
|
||||
</div>
|
||||
<a-range-picker @change="onChange" class="choosedate" :placeholder="['请选择开始日期', '请选择结束日期']"/>
|
||||
<a-range-picker @change="onChange" class="choosedate" :placeholder="[lan.$t('kaishiriqi'),lan.$t('jieshuriqi')]"/>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr class="head">
|
||||
<th>日期</th>
|
||||
<th>类型</th>
|
||||
<th>金额</th>
|
||||
<th>操作</th>
|
||||
<th>{{lan.$t('riqi')}}</th>
|
||||
<th>{{lan.$t('leixing')}}</th>
|
||||
<th>{{lan.$t('jine')}}</th>
|
||||
<th>{{lan.$t('caozuo')}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@@ -209,12 +209,14 @@ import router from "@/router";
|
||||
import store from '@/store';
|
||||
import { deleteaccount, getwallect, saleinfo } from "@/api";
|
||||
import { useRoute } from 'vue-router';
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
export default defineComponent({
|
||||
name: "Wallet",
|
||||
components: {
|
||||
NavBottom,
|
||||
},
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
const ifchina = true;
|
||||
const ifmingxi = false;
|
||||
const salelist=ref<any>({})
|
||||
@@ -304,7 +306,8 @@ export default defineComponent({
|
||||
dates,
|
||||
del,
|
||||
store,
|
||||
pagechange
|
||||
pagechange,
|
||||
lan
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -3,18 +3,18 @@
|
||||
<div class="nav">
|
||||
<div class="tabs">
|
||||
<div :class="tabindex == 1 ? 'on' : ''" @click="tabchange(1)">
|
||||
全部直播
|
||||
{{lan.$t('quanbuzhibo')}}
|
||||
</div>
|
||||
<div :class="tabindex == 0 ? 'on' : ''" @click="tabchange(0)">
|
||||
未开始
|
||||
{{lan.$t('weikaishi')}}
|
||||
</div>
|
||||
<div :class="tabindex == 2 ? 'on' : ''" @click="tabchange(2)">
|
||||
已结束
|
||||
{{lan.$t('yijieshu')}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="sel">
|
||||
<img src="@/static/images/sousuo.png" alt="" class="icon" />
|
||||
<input placeholder="请输入想要搜索的直播标题" type="text" @keyup.enter="sel()" v-model="input" />
|
||||
<input :placeholder="lan.$t('zhibosousuo')" type="text" @keyup.enter="sel()" v-model="input" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="list" v-if="tabindex == 1">
|
||||
@@ -173,11 +173,13 @@ import { defineComponent, onMounted, ref } from "vue";
|
||||
import LiveItem from "@/components/LiveItem.vue";
|
||||
import { getlivelist } from "@/api";
|
||||
import { LivelistInfo } from "@/types";
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
export default defineComponent({
|
||||
components: {
|
||||
LiveItem,
|
||||
},
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
const page = ref(1);
|
||||
const tabindex = ref(1);
|
||||
const livelist = ref<LivelistInfo>({
|
||||
@@ -211,7 +213,8 @@ export default defineComponent({
|
||||
tabchange,
|
||||
livelist,
|
||||
input,
|
||||
sel
|
||||
sel,
|
||||
lan
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<div class="liveing">
|
||||
|
||||
<div class="top">
|
||||
<div class="left">直播页面</div>
|
||||
<div class="left">{{lan.$t('zhiboyemian')}}</div>
|
||||
<div class="right">
|
||||
<img src="@/static/images/liveshare.png" alt="" @click="fenxiang()" />
|
||||
<img src="@/static/images/liveend.png" alt="" @click="visible = true" />
|
||||
@@ -56,7 +56,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<a-modal v-model:visible="visible" title="Basic Modal" @ok="guanbi">
|
||||
<p>您确认关闭直播吗</p>
|
||||
<p>{{lan.$t('querenguanbi')}}</p>
|
||||
</a-modal>
|
||||
</div>
|
||||
</template>
|
||||
@@ -198,6 +198,7 @@ import { getliveinfo, livestop, luzhi, usersig } from '@/api';
|
||||
import { useRoute } from 'vue-router';
|
||||
import store from '@/store';
|
||||
import { message } from 'ant-design-vue';
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
|
||||
export default defineComponent({
|
||||
components: {
|
||||
@@ -205,6 +206,7 @@ export default defineComponent({
|
||||
LiveingWatcher,
|
||||
},
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
console.log(1);
|
||||
let client: any;
|
||||
let localStream: any;
|
||||
@@ -402,7 +404,8 @@ export default defineComponent({
|
||||
qiehuan,
|
||||
roominfo,
|
||||
guanbi,
|
||||
visible
|
||||
visible,
|
||||
lan
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
<template>
|
||||
<div class="subscriber">
|
||||
<div class="top">
|
||||
<div class="title">我的订阅者({{teacherlikedlist.total}})</div>
|
||||
<div class="title">{{lan.$t('dingyuezhe')}}({{teacherlikedlist.total}})</div>
|
||||
<div class="sel">
|
||||
<img src="@/static/images/sousuo.png" alt="" class="icon" />
|
||||
<input type="text" placeholder="请输入想要搜索的学生姓名" v-model="condition.title" @keyup.enter="search(condition)"/>
|
||||
<input type="text" :placeholder="lan.$t('sousuodingyue')" v-model="condition.title" @keyup.enter="search(condition)"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mid">
|
||||
@@ -15,38 +15,38 @@
|
||||
<div>
|
||||
<div class="info">
|
||||
<div class="infoitem">
|
||||
<span class="label">姓名:</span>
|
||||
<span class="label">{{lan.$t("xingming")}}:</span>
|
||||
<span class="one-line-hide">{{i.name}}</span>
|
||||
</div>
|
||||
|
||||
<div class="infoitem">
|
||||
<span class="label">所在国家:</span>
|
||||
<span class="label">{{lan.$t('suozaiguojia')}}:</span>
|
||||
<span class="one-line-hide">{{i.live}}</span>
|
||||
</div>
|
||||
|
||||
<div class="infoitem">
|
||||
<span class="label">年龄:</span>
|
||||
<span class="label">{{lan.$t('nianling')}}:</span>
|
||||
<span class="one-line-hide">{{i.age}}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="info">
|
||||
<div class="infoitem">
|
||||
<span class="label">学生母语:</span>
|
||||
<span class="label">{{lan.$t('xueshengmuyu')}}:</span>
|
||||
<span class="one-line-hide">{{i.mtongue }}</span>
|
||||
</div>
|
||||
|
||||
<div class="infoitem">
|
||||
<span class="label">兴趣点:</span>
|
||||
<span class="label">{{lan.$t('xingqudian')}}:</span>
|
||||
<span class="one-line-hide">{{i.interestStr}}</span>
|
||||
</div>
|
||||
|
||||
<div class="infoitem">
|
||||
<span class="label">语言等级:</span>
|
||||
<span class="label">{{lan.$t("yuyandengji")}}:</span>
|
||||
<span class="one-line-hide">asd</span>
|
||||
</div>
|
||||
|
||||
<div>参加平台直播课程总时长:<span class="time">{{i.longtime}}min</span></div>
|
||||
<div>{{lan.$t('canyupingtaishichang')}}:<span class="time">{{i.longtime}}min</span></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -166,11 +166,13 @@
|
||||
</style>
|
||||
<script lang="ts">
|
||||
import { getteacherliked } from '@/api';
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
import { defineComponent, onMounted, ref, toRaw } from "vue";
|
||||
export default defineComponent({
|
||||
name: "Subscriber",
|
||||
components: {},
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
const page = ref(1);
|
||||
const teacherlikedlist =ref<any>({
|
||||
|
||||
@@ -194,7 +196,8 @@ export default defineComponent({
|
||||
teacherlikedlist,
|
||||
condition,
|
||||
title,
|
||||
search
|
||||
search,
|
||||
lan
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -3,21 +3,21 @@
|
||||
<div class="nav">
|
||||
<div class="tabs">
|
||||
<div :class="tabindex == 4 ? 'on' : ''" @click="tabchange(4)">
|
||||
全部视频
|
||||
{{lan.$t('quanbushipin')}}
|
||||
</div>
|
||||
<div :class="tabindex == 0 ? 'on' : ''" @click="tabchange(0)">
|
||||
审核中
|
||||
{{lan.$t('shenhezhong')}}
|
||||
</div>
|
||||
<div :class="tabindex == 2 ? 'on' : ''" @click="tabchange(2)">
|
||||
未通过
|
||||
{{lan.$t('weitongguo')}}
|
||||
</div>
|
||||
<div :class="tabindex == 1 ? 'on' : ''" @click="tabchange(1)">
|
||||
已发布
|
||||
{{lan.$t('yifabu')}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="sel">
|
||||
<img src="@/static/images/sousuo.png" alt="" class="icon" />
|
||||
<input type="text" placeholder="请输入想要搜索的直播标题" @keyup.enter="sel()" v-model="input"/>
|
||||
<input type="text" :placeholder="lan.$t('shipinsousuo')" @keyup.enter="sel()" v-model="input"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="list" v-if="tabindex == 4">
|
||||
@@ -195,11 +195,13 @@ import { defineComponent, onMounted, reactive, ref, UnwrapRef } from "vue";
|
||||
import VideoItem from "@/components/VideoItem.vue";
|
||||
import { getvideolist } from "@/api";
|
||||
import { useRoute } from 'vue-router';
|
||||
import { useI18n } from '@/utils/i18n';
|
||||
export default defineComponent({
|
||||
components: {
|
||||
VideoItem,
|
||||
},
|
||||
setup() {
|
||||
const lan: any = useI18n();
|
||||
const page = ref(1);
|
||||
const tabindex = ref(4);
|
||||
interface VideoList {
|
||||
@@ -251,7 +253,8 @@ export default defineComponent({
|
||||
videolist,
|
||||
sel,
|
||||
input,
|
||||
pagechange
|
||||
pagechange,
|
||||
lan
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user