From d8f6c671a613b841566c8d7b1f36eb2bb9640ea9 Mon Sep 17 00:00:00 2001
From: DESKTOP-CVS3R96\我恁爹 <11>
Date: Tue, 15 Nov 2022 04:15:27 +0800
Subject: [PATCH] 多于元
---
static/css/public2.css | 30
src/page/login/register.vue | 44
src/page/home/home.vue | 126 ++--
src/page/list/trading-list.vue | 80 +-
src/page/kline/index.vue | 70 +-
src/page/trading/buy.vue | 55 +-
src/locales/zh.js | 175 +++++++
src/page/user/Warehouse.vue | 250 +++++++---
src/page/login/login.vue | 304 ++++++------
src/locales/index.js | 52 -
src/main.js | 5
src/page/newUser/index.vue | 99 ++-
src/page/wallet/index.vue | 58 +-
src/page/kline/components/kLine.vue | 25
14 files changed, 835 insertions(+), 538 deletions(-)
diff --git a/src/locales/index.js b/src/locales/index.js
index 3c17511..03ae48a 100644
--- a/src/locales/index.js
+++ b/src/locales/index.js
@@ -1,49 +1,39 @@
-import Vue from 'vue';
-import VueI18n from 'vue-i18n';
-
-import chinese from './zh-CN.js';
-import english from './en.js';
-import chinesechar from './tw.js';
+import Vue from "vue";
+import VueI18n from "vue-i18n";
+import zh from "./zh.js";
+import en from "./en.js";
Vue.use(VueI18n);
-function getCookie(name) {
- // 获取cookie
- var arr;
- var reg = new RegExp(`(^| )${name}=([^;]*)(;|$)`);
- if (arr = document.cookie.match(reg)) {
- return unescape(arr[2]);
- }
- return null;
-}
-const DEFAULT_LANG = 'en-us';
-const LOCALE_KEY = 'language';
+const DEFAULT_LANG = "zh";
+const LOCALE_KEY = "language";
const locales = {
- zh_cn: {
- ...chinese,
+ zh: {
+ ...zh
},
en: {
- ...english,
- },
- tw: {
- ...chinesechar,
- },
+ ...en
+ }
};
// en-us zh-cn
//let langLocale = getCookie(LOCALE_KEY) || 'en';
-let langLocale = window.localStorage.getItem(LOCALE_KEY) || 'en';
-
+if (!window.localStorage.getItem(LOCALE_KEY)) {
+ window.localStorage.setItem(LOCALE_KEY, DEFAULT_LANG);
+}
+let langLocale = window.localStorage.getItem(LOCALE_KEY)
+ ? window.localStorage.getItem(LOCALE_KEY)
+ : "zh";
const i18n = new VueI18n({
locale: langLocale,
messages: locales,
silentTranslationWarn: true
});
const init = Vue.prototype._init;
-Vue.prototype._init = function (options) {
+Vue.prototype._init = function(options) {
init.call(this, {
i18n,
- ...options,
+ ...options
});
};
@@ -53,9 +43,9 @@
//const language = getCookie(LOCALE_KEY);
const language = window.localStorage.getItem(LOCALE_KEY);
if (language) {
- langLocale = language.replace('-', '_').toLowerCase();
+ langLocale = language.replace("-", "_").toLowerCase();
}
- if (undefined !== langLocale && langLocale !== '') {
+ if (undefined !== langLocale && langLocale !== "") {
lang = langLocale;
}
if (locales[lang] === undefined) {
@@ -64,12 +54,10 @@
// console.log(`lang-${lang}`);
}
-
Vue.config.lang = lang;
i18n.locale = lang;
};
setup();
-
export default i18n;
diff --git a/src/locales/zh.js b/src/locales/zh.js
new file mode 100644
index 0000000..2f0d7af
--- /dev/null
+++ b/src/locales/zh.js
@@ -0,0 +1,175 @@
+/* eslint-disable */
+export default {
+ "MingCheng":"名称",
+ "hj1":"行情",
+ "hj2":"持仓",
+ "hj3":"新股",
+ "hj4":"我的",
+ "hj5":"最多关注",
+ "hj6":"新闻",
+ "hj7":"经济",
+ "hj8":"手机号登录",
+ "hj9":"请输入手机号",
+ "hj10":"登录密码",
+ "hj11":"安全登录",
+ "hj12":"忘记密码?",
+ "hj13":"其他登录方式",
+ "hj14":"没有账户",
+ "hj15":"注册",
+ "hj16":"电子邮箱",
+ "hj17":"您所在的地区暂未开通此服务",
+ "hj18":"手机注册",
+ "hj19":"密码为6~12位数字、字母或符号",
+ "hj20":"请再次确认密码",
+ "hj21":"邀请码",
+ "hj22":"安全注册",
+ "hj23":"已有账户",
+ "hj24":"登录",
+ "hj25":"验证码",
+ "hj26":"手机号注册",
+ "hj27":"手机号",
+ "hj28":"请输入正确的手机号",
+ "hj29":"手机号不能为空",
+ "hj30":"请输入密码",
+ "hj31":"请确认密码",
+ "hj32":"两次输入的密码不一致",
+ "hj33":"请输入邀请码",
+ "hj34":"注册成功,请登录",
+ "hj35":"用户已注册,请登录",
+ "hj36":"登录成功",
+ "hj37":"输入股票名称/代码搜索",
+ "hj38":"开户即可入金交易",
+ "hj39":"名称",
+ "hj40":"最新价",
+ "hj41":"涨跌幅",
+ "hj42":"申购类型",
+ "hj43":"没有更多了",
+ "hj44":"手续费",
+ "hj45":"新股申购",
+ "hj46":"线下配售",
+ "hj47":"余额",
+ "hj48":"可用余额",
+ "hj49":"总资产",
+ "hj50":"强平线",
+ "hj51":"指数",
+ "hj52":"股票",
+ "hj53":"资产",
+ "hj54":"可用资金",
+ "hj55":"冻结保证金",
+ "hj56":"持仓总盈亏",
+ "hj57":"申购数量",
+ "hj58":"立即申购",
+ "hj59":"申购时间",
+ "hj60":"认缴时间",
+ "hj61":"自选",
+ "hj62":"市场",
+ "hj63":"沪深京",
+ "hj64":"科创",
+ "hj65":"美股",
+ "hj66":"港股",
+ "hj67":"数量不能为空",
+ "hj68":"数量不能小于1",
+ "hj69":"数量不能大于",
+ "hj70":"申购成功",
+ "hj71":"指数暂不支持自选!",
+ "hj72":"今开",
+ "hj73":"最高",
+ "hj74":"昨收",
+ "hj75":"最低",
+ "hj76":"五档",
+ "hj77":"买",
+ "hj78":"卖",
+ "hj79":"分时成交",
+ "hj80":"时间",
+ "hj81":"价格",
+ "hj82":"成交量",
+ "hj83":"简介",
+ "hj84":"卖出",
+ "hj85":"买入",
+ "hj86":"分时",
+ "hj87":"天",
+ "hj88":"周",
+ "hj89":"月",
+ "hj90":"1分",
+ "hj91":"5分",
+ "hj92":"30分",
+ "hj93":"不复权",
+ "hj94":"前复权",
+ "hj95":"后复权",
+ "hj96":"添加自选成功",
+ "hj97":"删除自选成功",
+ "hj98":"买入价",
+ "hj99":"当价格满足条件时买入",
+ "hj100":"交易数量(手)",
+ "hj101":"杠杆",
+ "hj102":"需付保证金",
+ "hj103":"可用余额",
+ "hj104":"止盈",
+ "hj105":"止损",
+ "hj106":"取消",
+ "hj107":"选择杠杆",
+ "hj108":"市单价",
+ "hj109":"挂单",
+ "hj110":"追踪止损",
+ "hj111":"您还未实名认证,请先实名认证了再下单",
+ "hj112":"倍",
+ "hj113":"下单失败,不在交易时段内",
+ "hj114":"沪深京账户",
+ "hj115":"指数账户",
+ "hj116":"新股账户",
+ "hj117":"手",
+ "hj118":"浮动净盈亏",
+ "hj119":"开仓价格",
+ "hj120":"当前价格",
+ "hj121":"平仓",
+ "hj122":"当前无持仓",
+ "hj123":"开始交易",
+ "hj124":"当前无挂单",
+ "hj125":"挂单价格",
+ "hj126":"撤销",
+ "hj127":"当前无平仓",
+ "hj128":"平仓时间",
+ "hj129":"当前无申购",
+ "hj130":"申购价格",
+ "hj131":"已认购",
+ "hj132":"未中签",
+ "hj133":"已中签",
+ "hj134":"已缴纳",
+ "hj135":"已转持仓",
+ "hj136":"已平仓",
+ "hj137":"撤单成功",
+ "hj138":"您还未实名认证,请先实名认证了再下单",
+ "hj139":"您确定要平仓吗",
+ "hj140":"平仓失败,不在交易时段内",
+ "hj141":"盈亏",
+ "hj142":"切换指数账户",
+ "hj143":"切换沪深账户",
+ "hj144":"修改密码",
+ "hj145":"资金划转",
+ "hj146":"实名认证",
+ "hj147":"绑定银行卡",
+ "hj148":"退出登录",
+ "hj149":"您确定要退出登录吗",
+ "hj150":"旧密码",
+ "hj151":"新密码",
+ "hj152":"确认新密码",
+ "hj153":"确认修改",
+ "hj154":"请输入新旧密码",
+ "hj155":"新密码不一致",
+ "hj156":"沪深账户",
+ "hj157":"账户金额互转",
+ "hj158":"可提现金额",
+ "hj159":"提现金额",
+ "hj160":"全部",
+ "hj161":"确定",
+ "hj162":"提现记录",
+ "hj163":"收款名称",
+ "hj164":"复制",
+ "hj165":"提示",
+ "hj166":"全部",
+ "hj167":"全部",
+ "hj168":"全部",
+ "hj169":"全部",
+ "hj170":"全部",
+ "hj171":"全部",
+ }
\ No newline at end of file
diff --git a/src/main.js b/src/main.js
index 20aa80e..d0b1c57 100644
--- a/src/main.js
+++ b/src/main.js
@@ -48,9 +48,7 @@
Vue.use(Vant);
Vue.use(Mint)
Vue.use(Tab);
-Vue.use({
- i18n: (key, value) => i18n.t(key, value),
-});
+Vue.prototype._i18n = i18n;
Vue.use(Tabs, Popup, DatetimePicker, Switch, Notify);
Vue.component('icon', Icon)
Vue.config.productionTip = false
@@ -157,6 +155,7 @@
new Vue({
el: '#app',
+ i18n,
store,
router,
axios,
diff --git a/src/page/home/home.vue b/src/page/home/home.vue
index 70d22f2..107cd4f 100644
--- a/src/page/home/home.vue
+++ b/src/page/home/home.vue
@@ -30,16 +30,16 @@
</div>
<!-- 公告 -->
<van-skeleton title :row="1" :loading="loading" />
- <div class="announcement" v-if="!loading&&close">
+ <div class="announcement" v-if="!loading && close">
<div class="an_content" @click="$router.push('/newGg')">
<div class="an_left_icon">
<img :src="Announcement" alt />
</div>
- <div class="an_right_message " >
+ <div class="an_right_message ">
<div class="animate">
{{ artList.artTitle }}
</div>
-
+
</div>
</div>
</div>
@@ -47,10 +47,10 @@
<!-- 排行入门 -->
<van-skeleton title :row="2" :loading="loading" />
- <div class="navs" v-if="!loading&&close">
+ <div class="navs" v-if="!loading && close">
<div class="navs_content">
- <div class="chacha" @click="close=false">
+ <div class="chacha" @click="close = false">
<div>
<img :src="clear" />
</div>
@@ -74,7 +74,7 @@
<div class="focus_on" v-if="!loading">
<div class="fo_content">
<div class="top_title">
- {{ '最多关注' }}
+ {{ $t('hj5') }}
</div>
<div class="fo_banner">
<van-swipe class="fo_my-swipe" :autoplay="0" indicator-color="white" @change="onChange">
@@ -109,7 +109,8 @@
</div>
</van-swipe-item> -->
<van-swipe-item v-for="(item, index) in proData" :key="index">
- <div class="item_cont" :class="idx!=2?'item_conts':''" v-for="(item2, idx) in proData[currentIndex]" :key="idx" @click="goDetail(item2)">
+ <div class="item_cont" :class="idx != 2 ? 'item_conts' : ''"
+ v-for="(item2, idx) in proData[currentIndex]" :key="idx" @click="goDetail(item2)">
<div class="top_fo">
<div class="title">
{{ item2.name }}
@@ -126,10 +127,11 @@
<div class="bottom_fo">
<div class="title">
<span class="numberid" style="margin-right: 0.12rem;">{{ item2.symbol }}</span>
- <div v-for="(items,indexs) in Number(item2.pnum.slice(0, 1))" style="width: 0.4rem;height: 0.4rem;display: flex;">
- <img v-if="indexs<3" :src="Huo" alt style="width: 0.4rem;height: 0.4rem;" />
+ <div v-for="(items, indexs) in Number(item2.pnum.slice(0, 1))"
+ style="width: 0.4rem;height: 0.4rem;display: flex;">
+ <img v-if="indexs < 3" :src="Huo" alt style="width: 0.4rem;height: 0.4rem;" />
</div>
-
+
</div>
<div class="numbers" :class="item2.floatPoint > 0 ? 'gree' : 'redd'">
<span class="point">{{ item2.pnum
@@ -154,10 +156,10 @@
<div class="news-tab">
<mt-navbar v-model="news">
<mt-tab-item id="tab_0">
- <span class="tab-name">新闻</span>
+ <span class="tab-name">{{ $t('hj6') }}</span>
</mt-tab-item>
<mt-tab-item id="tab_1">
- <span class="tab-name">经济</span>
+ <span class="tab-name">{{ $t('hj67') }}</span>
</mt-tab-item>
<mt-tab-item id="tab_2">
<span class="tab-name">7×24</span>
@@ -182,13 +184,13 @@
</div>
</div>
</mt-tab-container-item>
- <mt-tab-container-item id="tab_1" >
+ <mt-tab-container-item id="tab_1">
<div class="news-content">
<div class="item-out" v-for="(item, inde) in newsContent4" :key="inde" @click="$router.push({
path: '/newPage', query: {
listid: item.id
}
- })" >
+ })">
<div class="item-times">{{ item.addTime | gettime }}</div>
<div class="titContent" style="-webkit-box-orient: vertical;">{{ item.title }}</div>
</div>
@@ -252,7 +254,7 @@
Huo,
is_login: false,
loading: true,
- close:true,
+ close: true,
proData: [], // 分割好的数据
currentIndex: 0,
bannerImgsArr: [{
@@ -265,22 +267,21 @@
announcementMess: "20202/10 - 交易时间安排",
navsArr: [{
img: Tops,
- title: "行情"
+ title: this.$t('hj1'),
},
{
img: Rumen,
- title: "持仓"
+ title: this.$t('hj2'),
},
{
img: Xuexi,
- title: "新股"
+ title: this.$t('hj3'),
},
{
img: Guanyu,
- title: "我的"
- }
- ],
- artList:[],
+ title: this.$t('hj4'),
+ }],
+ artList: [],
news: "tab_0",
newsContent1: [],
newsContent2: [],
@@ -288,12 +289,11 @@
newsContent4: [],
onlineService: "",
isGoTo: false,
- bannerList:[],
+ bannerList: [],
userInfo: [],
};
},
methods: {
-
async getUserInfo() {
// 获取用户信息
let data = await api.getUserInfo();
@@ -320,8 +320,8 @@
}
},
goDetail(item) {
- if(this.userInfo.length==0){
- this.$store.commit('dialogVisible',true);
+ if (this.userInfo.length == 0) {
+ this.$store.commit('dialogVisible', true);
return;
}
this.$router.push({
@@ -343,49 +343,49 @@
return 0;
}
},
- goJy(index){
- if(this.userInfo.length==0){
- this.$store.commit('dialogVisible',true);
+ goJy(index) {
+ if (this.userInfo.length == 0) {
+ this.$store.commit('dialogVisible', true);
return;
}
switch (index) {
case 0:
this.$router.push('/trading-list');
break;
- case 1:
+ case 1:
this.$router.push('/warehouse');
break;
- case 2:
- this.$router.push({path:'/trading-list',query:{listid:3}});
+ case 2:
+ this.$router.push({ path: '/trading-list', query: { listid: 3 } });
break;
- case 3:
+ case 3:
this.$router.push('/user');
break;
-
+
default:
break;
}
if (navigator.vibrate) {
- // 支持
+ // 支持
navigator.vibrate([55]);
}
},
- async getBanner () {
+ async getBanner() {
// 获取显示的banner
let result = await api.getBannerByPlat({ platType: 'm' })
if (result.status === 0) {
this.bannerList = result.data
} else {
- this.$store.commit('elAlertShow',{'elAlertShow':true,'elAlertText': result.msg});
+ this.$store.commit('elAlertShow', { 'elAlertShow': true, 'elAlertText': result.msg });
}
},
goOnline() {
window.location.href = this.onlineService;
},
- async getArtList(){
+ async getArtList() {
let data = await api.getArtList();
- if(data.status == 0){
+ if (data.status == 0) {
this.artList = data.data.list[0];
}
},
@@ -395,7 +395,7 @@
if (data.status === 0) {
this.onlineService = data.data.onlineService
} else {
- this.$store.commit('elAlertShow',{'elAlertShow':true,'elAlertText': data.msg});
+ this.$store.commit('elAlertShow', { 'elAlertShow': true, 'elAlertText': data.msg });
}
},
async getStock() {
@@ -444,7 +444,7 @@
},
handleSearchClick() {
//this.loading = !this.loading;
- this.$router.push({path:"/trading-list",query:{type:1}});
+ this.$router.push({ path: "/trading-list", query: { type: 1 } });
}
},
filters: {
@@ -491,11 +491,11 @@
this.getArtList();
this.getBanner()
-
+
setInterval(() => {
- if(window.localStorage.getItem('USERTOKEN')){
+ if (window.localStorage.getItem('USERTOKEN')) {
this.isGoTo = false;
- }else{
+ } else {
this.isGoTo = !this.isGoTo
}
}, 10000);
@@ -626,7 +626,7 @@
align-content: center;
font-size: 0.29rem;
white-space: nowrap;
- overflow: hidden;
+ overflow: hidden;
// text-overflow:ellipsis;
}
}
@@ -753,7 +753,7 @@
/deep/.van-swipe__indicator--active {
width: 0.35rem !important;
border-radius: 0.23rem;
- background-color: #aec7ec!important;
+ background-color: #aec7ec !important;
}
.fo_banner {
@@ -810,7 +810,7 @@
.numberid {
font-size: 0.28rem;
display: flex;
-
+
line-height: 0.5rem;
}
@@ -836,7 +836,8 @@
text-align: center;
justify-content: center;
}
- .percentage span{
+
+ .percentage span {
height: 0.5rem;
line-height: 0.5rem;
}
@@ -998,19 +999,20 @@
border: 0.0513rem solid #41AC75;
color: #41AC75;
}
+
.animate {
-padding-left: 20px;
+ padding-left: 20px;
-font-size: 0.29rem;
+ font-size: 0.29rem;
-color: #000;
+ color: #000;
-display: inline-block;
+ display: inline-block;
-white-space: nowrap;
+ white-space: nowrap;
-animation: 10s wordsLoop linear infinite normal;
+ animation: 10s wordsLoop linear infinite normal;
}
@@ -1018,21 +1020,21 @@
@keyframes wordsLoop {
-0% {
+ 0% {
transform: translateX(100%);
-webkit-transform: translateX(100%);
-}
+ }
-100% {
+ 100% {
transform: translateX(-100%);
-webkit-transform: translateX(-100%);
-}
+ }
}
@@ -1040,21 +1042,21 @@
@-webkit-keyframes wordsLoop {
-0% {
+ 0% {
transform: translateX(100%);
-webkit-transform: translateX(100%);
-}
+ }
-100% {
+ 100% {
transform: translateX(-100%);
-webkit-transform: translateX(-100%);
-}
+ }
}
</style>
diff --git a/src/page/kline/components/kLine.vue b/src/page/kline/components/kLine.vue
index 6adb42c..75f5920 100644
--- a/src/page/kline/components/kLine.vue
+++ b/src/page/kline/components/kLine.vue
@@ -67,7 +67,8 @@
<span>{{ item.Name }}</span>
</div>
<div class="btn2" @click="isShow ? isShow = false : isShow = true">
- <div class="btn2" :class="KLinePeriodIndex === index ? 'active' : ''">
+ <div class="btn2">
+ <!-- :class="KLinePeriodIndex === index ? 'active' : ''" -->
<img src="../../../assets/img/options.png" alt />
</div>
</div>
@@ -118,7 +119,7 @@
import "hqchart/src/jscommon/umychart.resource/css/tools.css";
import "hqchart/src/jscommon/umychart.resource/font/iconfont.css";
import EastMoney from "../../../eastmoney/HQData.js";
-
+import i18n from '@/locales/index.js'
//源码调试用
//import Chart from '../jscommon/umychart.vue/umychart.vue.js'
//import '../jscommon/umychart.resource/css/tools.css'
@@ -1008,13 +1009,13 @@
DefaultData.GetKLinePeriodMenu = function() {
var data = [
- { Name: "分时", ID: 3 },
- { Name: "天", ID: 0 },
- { Name: "周", ID: 1 },
- { Name: "月", ID: 2 },
- { Name: "1分", ID: 4 },
- { Name: "5分", ID: 5 },
- { Name: "30分", ID: 7 }
+ { Name: i18n.t('hj86'), ID: 3 },
+ { Name: i18n.t('hj87'), ID: 0 },
+ { Name: i18n.t('hj88'), ID: 1 },
+ { Name: i18n.t('hj89'), ID: 2 },
+ { Name: i18n.t('hj90'), ID: 4 },
+ { Name: i18n.t('hj91'), ID: 5 },
+ { Name: i18n.t('hj92'), ID: 7 }
];
return data;
@@ -1022,9 +1023,9 @@
DefaultData.GetKLineRightMenu = function() {
var data = [
- { Name: "不复权", ID: 0 },
- { Name: "前复权", ID: 1 },
- { Name: "后复权", ID: 2 }
+ { Name: i18n.t('hj93'), ID: 0 },
+ { Name: i18n.t('hj94'), ID: 1 },
+ { Name: i18n.t('hj95'), ID: 2 }
];
return data;
diff --git a/src/page/kline/index.vue b/src/page/kline/index.vue
index ec6ad48..411f1bd 100644
--- a/src/page/kline/index.vue
+++ b/src/page/kline/index.vue
@@ -20,7 +20,7 @@
<div class="content_money">
<div class="top_price">
<div class="left">
- <span>{{ '余额' }}</span>
+ <span>{{ $t('hj47') }}</span>
</div>
<div class="right">
<span v-if="$store.state.userInfo.userAmt == undefined">¥0.00</span>
@@ -51,7 +51,7 @@
</div>
<div class="bottom_balance">
<div>
- <span>{{ '可用余额' }}</span>
+ <span>{{ $t('hj48') }}</span>
</div>
</div>
</div>
@@ -82,13 +82,13 @@
<div class="right_ets">
<div class="tops">
<div class="lefts topes">
- <span class="titles">{{ '今开' }}</span>
+ <span class="titles">{{ $t('hj72') }}</span>
<span :class="singDetails.nowPrice - singDetails.preclose_px < 0 ? 'number green' : 'number red'">{{
singDetails.open_px
}}</span>
</div>
<div class="rights topes">
- <span class="titles">{{ '最高' }}</span>
+ <span class="titles">{{ $t('hj73') }}</span>
<span :class="singDetails.nowPrice - singDetails.preclose_px < 0 ? 'number green' : 'number red'">{{
singDetails.today_max
}}</span>
@@ -96,13 +96,13 @@
</div>
<div class="bottoms">
<div class="lefts bots">
- <span class="titles">{{ '昨收' }}</span>
+ <span class="titles">{{ $t('hj74') }}</span>
<span :class="singDetails.nowPrice - singDetails.preclose_px < 0 ? 'number green' : 'number red'">{{
singDetails.preclose_px
}}</span>
</div>
<div class="rights bots">
- <span class="titles">{{ '最低' }}</span>
+ <span class="titles">{{ $t('hj75') }}</span>
<span :class="singDetails.nowPrice - singDetails.preclose_px < 0 ? 'number green' : 'number red'">{{
singDetails.today_min
}}</span>
@@ -111,18 +111,18 @@
</div>
</div>
</div>
- <div class="k_line_detail" >
- <Kline :type="singDetails.type"/>
+ <div class="k_line_detail">
+ <Kline :type="singDetails.type" />
</div>
<div class="priect_top_bottom"
v-if="(kLineDetails.if_us != 1 && kLineDetails.type != 'hk') && kLineDetails.type != 'hk' && kLineDetails.if_zhishu == 0">
<div class="t_title">
- <span>{{ '五档' }}</span>
+ <span>{{ $t('hj76') }}</span>
</div>
<div class="charts">
<div class="left_s">
<div class="t_ma">
- <span>{{ '买' }}</span>
+ <span>{{ $t('hj77') }}</span>
</div>
<div class="ets">
<div class="left_sell1">
@@ -167,7 +167,7 @@
</div>
<div class="right_h">
<div class="t_ma">
- <span>{{ '卖' }}</span>
+ <span>{{ $t('hj78') }}</span>
</div>
<div class="ets">
<div class="left_sell1">
@@ -216,12 +216,12 @@
</div>
<div class="priect_top_bottom" v-if="kLineDetails.if_us == 1">
<div class="t_title">
- <span>{{ '分时成交' }}</span>
+ <span>{{ $t('hj79') }}</span>
</div>
<div class="charts">
<div class="left_s">
<div class="t_ma">
- <span>{{ '时间' }}</span>
+ <span>{{ $t('hj80') }}</span>
</div>
<div class="ets" v-for="item in timedata.data.details">
<div class="left_sell1">
@@ -235,7 +235,7 @@
</div>
<div class="right_h">
<div class="t_ma">
- <span>{{ '价格' }}</span>
+ <span>{{ $t('hj81') }}</span>
</div>
<div class="ets" v-for="item in timedata.data.details">
<div class="left_sell1">
@@ -249,7 +249,7 @@
</div>
<div class="right_h">
<div class="t_ma">
- <span>{{ '成交量' }}</span>
+ <span>{{ $t('hj82') }}</span>
</div>
<div class="ets" v-for="item in timedata.data.details">
<div class="left_sell1">
@@ -266,7 +266,7 @@
<div class="jianjie" v-if="!(kLineDetails.if_zhishu != '0' && singDetails.gid.indexOf('hk') > -1)"
:class="acseFlag ? 'isjj' : ''" ref="isjj" id="isjj">
<div class="top_jj">
- <span>{{ '简介' }}</span>
+ <span>{{ $t('hj83') }}</span>
</div>
<div class="jet">
<span>{{ jianjie }}</span>
@@ -276,7 +276,7 @@
<div class="news-tab">
<div class="t_title">
- <span>{{ '新闻' }}</span>
+ <span>{{ $t('hj6') }}</span>
</div>
<mt-tab-container v-model="news" :swipeable="false" style="padding-top: 0.5rem;">
<mt-tab-container-item id="tab_2">
@@ -293,7 +293,7 @@
<div class="hknews" v-else>
<div class="news-tab">
<div class="t_title">
- <span>{{ '新闻' }}</span>
+ <span>{{ $t('hj6') }}</span>
</div>
<mt-tab-container v-model="news" :swipeable="false" style="padding-top: 0.5rem;">
<mt-tab-container-item id="tab_2">
@@ -322,7 +322,7 @@
<div class="rights">
<div class="buy_btn">
<div class="top_buy" @click="goBuy(0)">
- <span>{{ '卖出' }}</span>
+ <span>{{ $t('hj84') }}</span>
</div>
<div class="bottom_buy">
<span>{{ singDetails.nowPrice }}</span>
@@ -330,7 +330,7 @@
</div>
<div class="sell_btn" @click="goBuy(1)">
<div class="top_sell">
- <span>{{ '买入' }}</span>
+ <span>{{ $t('hj85') }}</span>
</div>
<div class="bottom_sell">
<span>{{ singDetails.nowPrice }}</span>
@@ -366,7 +366,7 @@
Kline
},
created() {
-
+
const { query } = this.$route;
this.kLineDetails = query;
if (query.if_us == '1') {
@@ -406,23 +406,31 @@
if (data.status === 0) {
this.getOpation();
this.optionBtn = false;
+ this.$message({
+ message: this.$t('hj97'),
+ type: 'success'
+ });
} else {
this.optionBtn = false;
this.$message({
- message: data.msg,
- type: 'warning'
- });
+ message: data.msg,
+ type: 'warning'
+ });
}
} else {
let data = await api.addOption({ code: this.kLineDetails.code });
if (data.status === 0) {
this.getOpation();
this.optionBtn = false;
+ this.$message({
+ message: this.$t('hj96'),
+ type: 'success'
+ });
} else {
this.$message({
- message: data.msg,
- type: 'warning'
- });
+ message: data.msg,
+ type: 'warning'
+ });
this.optionBtn = false;
}
}
@@ -463,7 +471,7 @@
await api.getSingleStock(opts).then(res => {
if (res.status === 0) {
this.singDetails = res.data.stock;
-
+
if (res.data.introduction) {
this.jianjie = res.data.introduction;
} else {
@@ -490,7 +498,7 @@
// setTimeout(() => {
// that.getSingDetailUs()
// }, 3000);
-
+
// }
if (res.status === 0) {
this.singDetails = res.data.stock;
@@ -616,8 +624,8 @@
font-size: 0.4546rem;
margin-top: 0.2rem;
padding: 0 0.3rem;
-
- span{
+
+ span {
font-weight: 700;
}
}
diff --git a/src/page/list/trading-list.vue b/src/page/list/trading-list.vue
index 2b1320c..5f98da4 100644
--- a/src/page/list/trading-list.vue
+++ b/src/page/list/trading-list.vue
@@ -11,7 +11,7 @@
<img src="../../assets/img/searchs.png" alt />
</div>
<div class="search_input">
- <input type="text" class="searchs" placeholder="输入品种名称/代码搜索" ref="search" id="sousuo" v-model="gpcode"
+ <input type="text" class="searchs" :placeholder="$t('hj37')" ref="search" id="sousuo" v-model="gpcode"
@input="gpinput" />
</div>
</div>
@@ -30,7 +30,7 @@
<img src="../../assets/img/shenfen2.png" alt />
</div>
<div class="text">
- <span>{{ '开户即可入金交易' }}</span>
+ <span>{{ $t('hj38') }}</span>
</div>
<div class="right_go">
<img src="../../assets/img/yuoujiantou.png" alt />
@@ -38,19 +38,19 @@
</div>
<div class="list_title">
<div class="item_title varieties">
- <span>{{ '品种' }}</span>
+ <span>{{ $t('hj39') }}</span>
</div>
<div class="item_title latest_price">
- <span>{{ '最新价' }}</span>
+ <span>{{ $t('hj40') }}</span>
</div>
<div class="item_title applies">
- <span v-show="tabsItemIndex != 5">{{ '涨跌幅' }}</span>
- <span v-show="tabsItemIndex == 5" style="width: 100%;text-align: center;">{{ '申购类型' }}</span>
+ <span v-show="tabsItemIndex != 5">{{ $t('hj41') }}</span>
+ <span v-show="tabsItemIndex == 5" style="width: 100%;text-align: center;">{{ $t('hj42') }}</span>
</div>
</div>
<!-- 市场列表 -->
<div class="list" :class="isToken == '' ? 'listHeight' : 'listHeights'">
- <van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="onLoad"
+ <van-list v-model="loading" :finished="finished" :finished-text="$t('hj43')" @load="onLoad"
:immediate-check="false">
<div class="van-clearfix">
<div class="list_items">
@@ -97,7 +97,7 @@
</div>
<div class="bt">
<span v-if="tabsItemIndex == 5 || tabsItemIndex == 1">{{ tabsItemIndex == 5 ? 'Max:' +
- Number(item.orderNumber) : '手续费:' + Number(item.transFee)
+ Number(item.orderNumber) : $t('hj44') + ':' + Number(item.transFee)
}}</span>
<span v-else>{{ item.today_min }}</span>
</div>
@@ -122,7 +122,7 @@
</span> -->
<div v-if="tabsItemIndex == 5" :class="item.type == 1 ? 'xgsgType' : 'xgsgTypeRed'">
<!-- {{item.orderNumber}} -->
- {{ item.type == 1 ? '新股申购' : '线下配售' }}
+ {{ item.type == 1 ? $t('hj45') : $t('hj46') }}
</div>
</div>
<div class="bt" style="justify-content: flex-end;">
@@ -147,7 +147,7 @@
<img src="../../assets/img/searchs.png" alt />
</div>
<div class="search_input">
- <input type="text" class="searchs" placeholder="输入品种名称/代码搜索"
+ <input type="text" class="searchs" :placeholder="$t('hj37')"
onkeyup="value=value.replace(/[^a-zA-Z0-9]/g,'')" v-model="gpcodes" @input="gpinputs" />
</div>
</div>
@@ -155,20 +155,20 @@
</div>
<div class="list_title">
<div class="item_title varieties">
- <span>{{ '品种' }}</span>
+ <span>{{ $t('hj39') }}</span>
</div>
<div class="item_title latest_price">
- <span>{{ '最新价' }}</span>
+ <span>{{ $t('hj40') }}</span>
</div>
<div class="item_title applies">
- <span>{{ '涨跌幅' }}</span>
+ <span>{{ $t('hj41') }}</span>
</div>
</div>
<!-- 自选列表 -->
<div class="list zxlist">
- <van-list v-model="loadings" :finished="finisheds" finished-text="没有更多了" @load="onLoads"
+ <van-list v-model="loadings" :finished="finisheds" :finished-text="$t('hj43')" @load="onLoads"
:immediate-check="false">
<div class="van-clearfix">
<div class="list_items">
@@ -221,7 +221,7 @@
<div class="content_money" v-if="tabsIndex === 1">
<div class="top_price">
<div class="left">
- <span>{{ '余额' }}</span>
+ <span>{{ $t('hj47') }}</span>
</div>
<div class="right" v-if="userData.length == 0">¥0.00</div>
<div class="right" v-if="userData.length != 0">
@@ -268,7 +268,7 @@
</div>
<div class="bottom_balance">
<div>
- <span>{{ '可用余额' }}</span>
+ <span>{{ $t('hj48') }}</span>
</div>
</div>
</div>
@@ -278,7 +278,7 @@
<div class="card_item">
<div class="tops_title">
<div>
- <span>{{ '总资产' }}</span>
+ <span>{{ $t('hj49') }}</span>
</div>
</div>
<div class="bottom_price">
@@ -364,7 +364,7 @@
<div class="card_item">
<div class="tops_title">
<div>
- <span>{{ '强平线' }}</span>
+ <span>{{ $t('hj50') }}</span>
</div>
</div>
<div class="bottom_price">
@@ -412,12 +412,12 @@
<div class="tops_title">
<div>
<span>
- {{ tabsItemIndex == 1 ? '指数' : tabsItemIndex == 0 ? '股票' : tabsItemIndex == 2 ? '股票' :
+ {{ tabsItemIndex == 1 ? $t('hj51') : tabsItemIndex == 0 ? $t('hj52') : tabsItemIndex == 2 ? $t('hj52') :
tabsItemIndex ==
- 5 ? '股票' : ''
+ 5 ? $t('hj52') : ''
}}
</span>
- <span>{{ '资产' }}</span>
+ <span>{{ $t('hj53') }}</span>
</div>
</div>
<div class="bottom_price">
@@ -436,7 +436,7 @@
<div class="card_item">
<div class="tops_title">
<div>
- <span>{{ '可用资金' }}</span>
+ <span>{{ $t('hj54') }}</span>
</div>
</div>
<div class="bottom_price">
@@ -456,7 +456,7 @@
<div class="card_item">
<div class="tops_title">
<div>
- <span>{{ '冻结保证金' }}</span>
+ <span>{{ $t('hj55') }}</span>
</div>
</div>
<div class="bottom_price">
@@ -478,7 +478,7 @@
<div class="card_item">
<div class="tops_title">
<div>
- <span>{{ '持仓总盈亏' }}</span>
+ <span>{{ $t('hj56') }}</span>
</div>
</div>
<div class="bottom_price">
@@ -515,23 +515,23 @@
<div class="setting_content">
<div class="old_password">
<div class="left_titles">
- <span>{{ '申购数量:' }}</span>
+ <span>{{ $t('hj57') }}:</span>
</div>
<div class="right_password_input">
<input type="number" v-model="sgNum" />
</div>
</div>
<div class="btn_setting" @click="changeSg()">
- <span>{{ '立即申购' }}</span>
+ <span>{{ $t('hj58') }}</span>
</div>
<div class="shijian">
<div class="xgsj">
- <div class="sjtlt">申购时间: </div>
+ <div class="sjtlt">{{ $t('hj59') }}: </div>
<div class="xgTime" v-if="this.sgsj">{{ this.sgsj | getTimeYear }}</div>
</div>
<div class="xgsj">
- <div class="sjtlt">认缴时间: </div>
+ <div class="sjtlt">{{ $t('hj60') }}: </div>
<div class="xgTime" v-if="this.rjsj">{{ this.rjsj | getTimeYear }}</div>
</div>
</div>
@@ -569,7 +569,7 @@
data() {
return {
tabsIndex: 1,
- tabsArr: ["自选", "市场"],
+ tabsArr: [this.$t('hj61'), this.$t('hj62')],
tabClassActive: 1,
dialogFlag: false,
pageNum: 1,
@@ -600,16 +600,16 @@
stockType: '',
tabsClassArr: [
{
- name: "沪深京",
+ name: this.$t('hj63'),
type: 0
},
{
- name: "指数",
+ name: this.$t('hj51'),
type: 1
},
{
- name: "科创",
+ name: this.$t('hj64'),
type: 2
},
// {
@@ -617,15 +617,15 @@
// type: 3
// }
{
- name: "美股",
+ name: this.$t('hj65'),
type: 3
},
{
- name: "港股",
+ name: this.$t('hj66'),
type: 4
},
{
- name: "新股",
+ name: this.$t('hj3'),
type: 5
}
],
@@ -884,16 +884,16 @@
},
async changeSg() {
if (!this.sgNum) {
- Toast('数量不能为空');
+ Toast(this.$t('hj67'));
return;
};
//this.sgNum必须是数字并且不能小于1
if (this.sgNum < 1) {
- Toast('数量不能小于1');
+ Toast(this.$t('hj68'));
return;
}
if (this.sgNum > this.orderNumber) {
- Toast('数量不能大于' + this.orderNumber);
+ Toast(this.$t('hj69') + this.orderNumber);
return;
}
@@ -909,7 +909,7 @@
this.sgsj = '';
this.rjsj = '';
this.orderNumber = '';
- Toast('申购成功');
+ Toast(this.$t('hj70'));
this.$router.push({ path: '/warehouse?index=3' });
} else {
Toast(data.msg);
@@ -1161,7 +1161,7 @@
async options(val) {
if(this.tabsItemIndex == 1){
this.$message({
- message: '指数暂不支持自选!',
+ message: this.$t('hj71'),
type: 'warning'
});
return;
diff --git a/src/page/login/login.vue b/src/page/login/login.vue
index c85bd5b..c5f74ac 100644
--- a/src/page/login/login.vue
+++ b/src/page/login/login.vue
@@ -8,7 +8,7 @@
</div> -->
<div class="logins_content">
<div class="login_title animated slideInDown">
- <span>{{ '手机号登录' }}</span>
+ <span>{{ $t('hj8') }}</span>
</div>
<div class="login_forms">
<div class="top_forms">
@@ -18,42 +18,40 @@
<div class="password">
<input type="password" placeholder="登录密码" v-model="userPassword" @input="handleInput()" />
</div> -->
- <el-input placeholder="请输入手机号" :size="medium" maxlength="11" v-model="userName" clearable>
+ <el-input :placeholder="$t('hj9')" :size="medium" maxlength="11" v-model="userName" clearable>
</el-input>
- <el-input style="margin-top: 0.46rem;" show-password placeholder="登录密码" :size="medium" v-model="userPassword" @input="handleInput()">
+ <el-input style="margin-top: 0.46rem;" show-password :placeholder="$t('hj10')" :size="medium"
+ v-model="userPassword" @input="handleInput()">
</el-input>
</div>
- <div class="bottom_btns" :class="btnClass ? 'on' : 'off'" >
+ <div class="bottom_btns" :class="btnClass ? 'on' : 'off'">
<div class="top_btn " @click="loginIN" :class="dengl ? 'animated pulse' : ''">
- <span>{{ '安全登录' }}</span>
+ <span>{{ $t('hj11') }}</span>
</div>
<div class="mes" @click="getApp()">
- <span>{{ '忘记密码?' }}</span>
+ <span>{{ $t('hj12') }}</span>
</div>
</div>
</div>
</div>
<div class="login_bom">
-
- <div class="line">
- <div class="left_line"></div>
- <div class="center_line">
- <span>{{ '其他登录方式' }}</span>
- </div>
- <div class="right_line"></div>
+
+ <div class="line">
+ <div class="left_line"></div>
+ <div class="center_line">
+ <span>{{ $t('hj13') }}</span>
+ </div>
+ <div class="right_line"></div>
</div>
<div class="imgDemo">
- <div class="appImg" @click="getApp()"><img src="@/assets/img/apple.png"/></div>
- <div class="appImg" @click="getApp()"><img src="@/assets/img/google.png"/></div>
- <div class="appImg" @click="getApp()"><img src="@/assets/img/facebook.png"/></div>
+ <div class="appImg" @click="getApp()"><img src="@/assets/img/apple.png" /></div>
+ <div class="appImg" @click="getApp()"><img src="@/assets/img/google.png" /></div>
+ <div class="appImg" @click="getApp()"><img src="@/assets/img/facebook.png" /></div>
</div>
- <div class="myzh"><span class="mes">没有账户?</span><span @click="$router.push('/register')" class="mes" style="color: rgb(54,124,248);">{{ '注册' }}</span> </div>
+ <div class="myzh"><span class="mes">{{ $t('hj14') }}?</span><span @click="$router.push('/register')" class="mes"
+ style="color: rgb(54,124,248);">{{ $t('hj15') }}</span> </div>
</div>
- <el-alert
- v-show="alertShow"
- :closable="closable"
- :title="texts"
- :type="eltype" center></el-alert>
+ <el-alert v-show="alertShow" :closable="closable" :title="texts" :type="eltype" center></el-alert>
</div>
</template>
<script>
@@ -66,34 +64,34 @@
name: "newLogin",
data() {
return {
- loginWay: "手机号登录",
+ loginWay: this.$t('hj8'),
currentLoginMode: "email",
- placeholder: "电子邮箱",
+ placeholder: this.$t('hj16'),
Logo,
userPassword: "",
userName: "",
btnClass: false,
medium: "medium",
- alertShow:false,
- closable:false,
- eltype:'warning',
- texts:"",
- dengl:false,
- loginBtn:false,
+ alertShow: false,
+ closable: false,
+ eltype: 'warning',
+ texts: "",
+ dengl: false,
+ loginBtn: false,
};
},
components: {
headers
},
methods: {
- getApp(){
- // Toast('您所在的地区暂未开通此服务')
+ getApp() {
+ // Toast('您所在的地区暂未开通此服务')
//Toast 弹窗大小
- this.texts="您所在的地区暂未开通此服务"
- this.alertShow=true
- setTimeout(()=>{
- this.alertShow=false
- },2000)
+ this.texts = this.$t('hj17')
+ this.alertShow = true
+ setTimeout(() => {
+ this.alertShow = false
+ }, 2000)
},
handleInput() {
console.log(this.userPassword !== "" && this.userName !== '');
@@ -104,12 +102,12 @@
}
},
async loginIN() {
-
- this.dengl=true
- setTimeout(()=>{
- this.dengl=false
- },1000)
- if(this.loginBtn){
+
+ this.dengl = true
+ setTimeout(() => {
+ this.dengl = false
+ }, 1000)
+ if (this.loginBtn) {
return;
}
this.loginBtn = true;
@@ -121,30 +119,30 @@
if (data.status === 0) {
this.$store.state.userInfo.phone = this.userName
this.$store.state.userInfo.token = data.data.token
- this.texts=data.msg
- this.eltype='success'
- this.alertShow=true
- setTimeout(()=>{
- this.alertShow=false
- this.eltype='warning'
- this.$router.push('/home')
- },1000)
- this.loginBtn = false;
+ this.texts = this.$t('hj36')
+ this.eltype = 'success'
+ this.alertShow = true
+ setTimeout(() => {
+ this.alertShow = false
+ this.eltype = 'warning'
+ this.$router.push('/home')
+ }, 1000)
+ this.loginBtn = false;
window.localStorage.clear()
window.localStorage.setItem("USERTOKEN", data.data.token);
-
-
+
+
} else {
- this.texts=data.msg
- this.alertShow=true
- this.loginBtn = false;
- setTimeout(()=>{
- this.alertShow=false
- },2000)
+ this.texts = data.msg
+ this.alertShow = true
+ this.loginBtn = false;
+ setTimeout(() => {
+ this.alertShow = false
+ }, 2000)
//Toast(data.msg)
}
if (navigator.vibrate) {
- // 支持
+ // 支持
navigator.vibrate([55]);
}
},
@@ -190,6 +188,7 @@
width: 100%;
height: auto;
margin-top: 0.35rem;
+
.top_forms {
width: 100%;
height: auto;
@@ -232,19 +231,20 @@
width: 100%;
height: 1.25rem;
border-radius: 0.3564rem;
- background: rgb(154,197,250);
+ background: rgb(154, 197, 250);
color: #fff;
display: flex;
align-items: center;
justify-content: center;
font-size: 0.5128rem;
margin-top: 0.75rem;
+
>span {
font-weight: 530 !important;
}
}
-
+
.mes {
width: 100%;
@@ -258,78 +258,89 @@
}
}
}
-.login_bom{
+
+.login_bom {
position: absolute;
bottom: 2.6rem;
width: 100%;
height: 4rem;
padding: 0 2rem;
}
- .line{
- //分割线
- width: 100%;
- height: 0.3846rem;
- display: flex;
- align-items: center;
- justify-content: center;
- margin-top: 0.3846rem;
- .left_line{
- width: 20%;
- height: 0.01rem;
- background: #e5e5e5;
- }
- .center_line{
- width: 50%;
- height: 0.01rem;
- background: #fff;
- display: flex;
- align-items: center;
- justify-content: center;
- >span{
- font-size: 0.3046rem;
- color: #000;
- background-color: #fff;
-
- }
- }
- .right_line{
- width: 20%;
- height: 0.01rem;
- background: #e5e5e5;
- }
+.line {
+ //分割线
+ width: 100%;
+ height: 0.3846rem;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ margin-top: 0.3846rem;
+
+ .left_line {
+ width: 20%;
+ height: 0.01rem;
+ background: #e5e5e5;
}
- .myzh{
- width: calc(100% - 4rem);
- position: absolute;
- bottom: 0.01rem;
- text-align: center;
- .mes {
- width: 100%;
- height: 40%;
-
- font-size: 0.3846rem;
- }
- }
- .imgDemo{
+
+ .center_line {
+ width: 50%;
+ height: 0.01rem;
+ background: #fff;
display: flex;
- justify-content: space-between;
- position: relative;
- transform:translateY(50%);
- }
- .appImg{
- width: 1.4rem;
- height: 1.4rem;
- display: flex;
- justify-content: center;
align-items: center;
- background-color: rgb(246,246,247);
- border-radius: 100%;
+ justify-content: center;
+
+ >span {
+ font-size: 0.3046rem;
+ color: #000;
+ background-color: #fff;
+
+ }
}
- .appImg img{
- width: 0.8rem;
- height: 0.8rem;
+
+ .right_line {
+ width: 20%;
+ height: 0.01rem;
+ background: #e5e5e5;
}
+
+}
+
+.myzh {
+ width: calc(100% - 4rem);
+ position: absolute;
+ bottom: 0.01rem;
+ text-align: center;
+
+ .mes {
+ width: 100%;
+ height: 40%;
+
+ font-size: 0.3846rem;
+ }
+}
+
+.imgDemo {
+ display: flex;
+ justify-content: space-between;
+ position: relative;
+ transform: translateY(50%);
+}
+
+.appImg {
+ width: 1.4rem;
+ height: 1.4rem;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ background-color: rgb(246, 246, 247);
+ border-radius: 100%;
+}
+
+.appImg img {
+ width: 0.8rem;
+ height: 0.8rem;
+}
.img_mess {
width: 100%;
@@ -349,33 +360,38 @@
}
}
-/deep/.el-input__suffix{
- width: 1rem!important;
+/deep/.el-input__suffix {
+ width: 1rem !important;
display: flex;
- justify-content: center;
- align-items: center;
+ justify-content: center;
+ align-items: center;
}
-/deep/.el-input__suffix-inner{
-
+
+/deep/.el-input__suffix-inner {
+
display: flex;
- justify-content: center;
- align-items: center;
-
+ justify-content: center;
+ align-items: center;
+
}
-/deep/.el-input__icon{
- width: 1rem!important;
+
+/deep/.el-input__icon {
+ width: 1rem !important;
display: flex;
- justify-content: center;
- align-items: center;
+ justify-content: center;
+ align-items: center;
}
+
.on .top_btn {
- background: #2d8cf0!important;
- }
- /deep/.el-icon-circle-close::before{
- font-size: 0.5rem!important;
-
- }
-/deep/.el-input__clear{
- font-size: 0.5rem!important;
+ background: #2d8cf0 !important;
+}
+
+/deep/.el-icon-circle-close::before {
+ font-size: 0.5rem !important;
+
+}
+
+/deep/.el-input__clear {
+ font-size: 0.5rem !important;
}
</style>
diff --git a/src/page/login/register.vue b/src/page/login/register.vue
index 4c1d121..0756d82 100644
--- a/src/page/login/register.vue
+++ b/src/page/login/register.vue
@@ -8,7 +8,7 @@
</div> -->
<div class="logins_content">
<div class="login_title animated slideInDown">
- <span>{{ '手机注册' }}</span>
+ <span>{{ $t('hj18') }}</span>
</div>
<div class="login_forms">
<div class="top_forms">
@@ -34,19 +34,19 @@
</el-input>
<!-- <el-input style="margin-top: 0.46rem;" :placeholder="verification" :size="medium" v-model="code" clearable>
</el-input> -->
- <el-input style="margin-top: 0.46rem;" show-password placeholder="密码为6~12位数字、字母或符号" size="medium"
+ <el-input style="margin-top: 0.46rem;" show-password :placeholder="$t('hj19')" size="medium"
v-model="userPassword" @input="handleInput()">
</el-input>
- <el-input style="margin-top: 0.46rem;" show-password placeholder="请再次确认密码" size="medium" v-model="rePassword"
+ <el-input style="margin-top: 0.46rem;" show-password :placeholder="$t('hj20')" size="medium" v-model="rePassword"
@input="handleInput()">
</el-input>
- <el-input style="margin-top: 0.46rem;" placeholder="邀请码" size="medium" v-model="userName" clearable
+ <el-input style="margin-top: 0.46rem;" :placeholder="$t('hj21')" size="medium" v-model="userName" clearable
@input="handleInput()">
</el-input>
</div>
<div class="bottom_btns" :class="btnClass ? 'on' : 'off'">
<div class="top_btn " @click="gook" :class="dengl ? 'animated pulse' : ''">
- <span>{{ '安全注册' }}</span>
+ <span>{{ $t('hj22') }}</span>
</div>
<!-- <div
class="register-form-item agree-model"
@@ -57,8 +57,8 @@
<a style="color:#fff">《注册协议》</a>
</div> -->
<div class="mes">
- <span>{{ '已有账户?' }}</span>
- <span @click="$router.push('/login')" style="color: rgb(54,124,248);">{{ '登录>' }}</span>
+ <span>{{ $t('hj23') }}?</span>
+ <span @click="$router.push('/login')" style="color: rgb(54,124,248);"> {{ $t('hj24') }} ></span>
</div>
</div>
</div>
@@ -80,10 +80,10 @@
name: "newRegister",
data() {
return {
- verification: "验证码",
- loginWay: "手机号注册",
- loginWay: "手机号注册",
- placeholder: "手机号",
+ verification: this.$t('hj25'),
+ loginWay: this.$t('hj26'),
+ loginWay: this.$t('hj26'),
+ placeholder: this.$t('hj27'),
Logo,
phone: "",
userName: "",
@@ -117,7 +117,7 @@
checkCodeBox() {
if (isNull(this.phone) || !isPhone(this.phone)) {
// Toast('请输入正确的手机号')
- this.texts = "请输入正确的手机号"
+ this.texts = this.$t('hj28')
this.alertShow = true
setTimeout(() => {
this.alertShow = false
@@ -149,14 +149,14 @@
// var reg = 11 && /^((13|14|15|17|18)[0-9]{1}\d{8})$/
let reg = /^[0-9]{11}$/ // 手机号码验证
if (isNull(this.phone)) {
- this.texts = "手机号不能为空"
+ this.texts = this.$t('hj29')
this.alertShow = true
setTimeout(() => {
this.alertShow = false
}, 2000)
} else {
if (!reg.test(this.phone)) {
- this.texts = "请输入正确的手机号码"
+ this.texts = this.$t('hj28')
this.alertShow = true
setTimeout(() => {
this.alertShow = false
@@ -215,21 +215,21 @@
// } else
if (isNull(this.phone) || !isPhone(this.phone)) {
- this.texts = "请输入正确的手机号码"
+ this.texts = this.$t('hj28')
this.alertShow = true
setTimeout(() => {
this.alertShow = false
}, 2000)
this.loginBtn = false;
} else if (isNull(this.userPassword)) {
- this.texts = "请输入密码"
+ this.texts = this.$t('hj30')
this.alertShow = true
setTimeout(() => {
this.alertShow = false
}, 2000)
this.loginBtn = false;
} else if (isNull(this.rePassword)) {
- this.texts = "请确认密码"
+ this.texts = this.$t('hj31')
this.alertShow = true
setTimeout(() => {
this.alertShow = false
@@ -237,7 +237,7 @@
this.loginBtn = false;
} else {
if (this.userPassword !== this.rePassword) {
- this.texts = "两次输入的密码不一致"
+ this.texts = this.$t('hj32')
this.alertShow = true
setTimeout(() => {
this.alertShow = false
@@ -247,14 +247,14 @@
this.loginBtn = false;
} else if (!pwdReg(this.userPassword)) {
- this.texts = "密码为6~12位,数字、字母或符号"
+ this.texts = this.$t('hj19')
this.alertShow = true
setTimeout(() => {
this.alertShow = false
}, 2000)
this.loginBtn = false;
} else if (isNull(this.userName)) {
- this.texts = "请输入邀请码"
+ this.texts = this.$t('hj33')
this.alertShow = true
setTimeout(() => {
this.alertShow = false
@@ -270,7 +270,7 @@
}
let data = await api.register(opts)
if (data.status === 0) {
- this.texts = "注册成功,请登录"
+ this.texts = this.$t('hj34')
this.elType = "success"
this.alertShow = true
setTimeout(() => {
@@ -312,7 +312,7 @@
let data = await api.checkPhone({ phoneNum: this.phone })
if (data.status === 0) {
// 如果用户已存在返回 0
- this.texts = "用户已注册,请登录"
+ this.texts = this.$t('hj35')
this.alertShow = true
setTimeout(() => {
this.alertShow = false
diff --git a/src/page/newUser/index.vue b/src/page/newUser/index.vue
index 87dd5cb..8c3e451 100644
--- a/src/page/newUser/index.vue
+++ b/src/page/newUser/index.vue
@@ -28,7 +28,7 @@
</div>
<div class="center_card">
<div class="keyon">
- <span>{{ '总资产' }}</span>
+ <span>{{ $t('hj49') }}</span>
</div>
<div class="num_price" v-if="userInfo.length == 0">
¥0
@@ -47,29 +47,33 @@
}}22
</p>
<p v-else-if="!this.$store.state.settingForm.indexDisplay && !this.$store.state.settingForm.futuresDisplay"
- class="account">¥ {{ $store.state.hide ? '****' : Number($store.state.userInfo.userAmt).toFixed(2) }}</p>
+ class="account">¥ {{ $store.state.hide ? '****' :
+ Number($store.state.userInfo.userAmt).toFixed(2)
+ }}</p>
</div>
<div class="yk es">
<div>
- <span>{{ '冻结保证金' }}</span>
+ <span>{{ $t('hj55') }}</span>
</div>
<div>
- <span>{{ '盈亏' }}</span>
+ <span>{{ $t('hj141') }}</span>
</div>
-
+
<div>
- <span>{{ '可用余额(¥)' }}</span>
+ <span>{{ $t('hj48') }}</span>
</div>
</div>
<div class="yk as">
<div>
- <span class="orenge">¥ {{ userInfo.length != 0 ? $store.state.userInfo.allFreezAmt + $store.state.userInfo.djzj : 0}}</span>
+ <span class="orenge">¥ {{ userInfo.length != 0 ? $store.state.userInfo.allFreezAmt +
+ $store.state.userInfo.djzj : 0
+ }}</span>
</div>
<div v-if="userInfo.length == 0">
<span v-if="!selectUserFlag">
<span>{{ '¥ 0' }}</span>
</span>
- <span v-else >
+ <span v-else>
<span>{{ '¥ 0' }}</span>
</span>
</div>
@@ -87,7 +91,7 @@
}}</span>
</span>
</div>
-
+
<div v-if="userInfo.length == 0">
<span class="bzz" v-if="!selectUserFlag">{{ '¥ 0' }}</span>
<span class="bzz" v-else>{{ '¥ 0' }}</span>
@@ -96,10 +100,10 @@
<span class="bzz" v-if="!selectUserFlag">{{ '¥ ' + $store.state.userInfo.userIndexAmt }}</span>
<span class="bzz" v-else>{{ '¥ ' + $store.state.userInfo.userAmt }}</span>
</div>
-
+
</div>
<div class="btns" @click="handleZh()" :class="selectUserFlag ? '' : 'active'">
- <span>{{ selectUserFlag ? '切换指数账户' : '切换沪深账户' }}</span>
+ <span>{{ selectUserFlag ? $t('hj142') : $t('hj143') }}</span>
</div>
</div>
<div class="jy" @click="goToSettings()">
@@ -108,7 +112,7 @@
<img src="../../assets/img/xiugaimima.png" alt />
</div>
<div class="r_title">
- <span>{{ '修改密码' }}</span>
+ <span>{{ $t('hj144') }}</span>
</div>
</div>
<div class="right_gos">
@@ -121,7 +125,7 @@
<img src="../../assets/img/huazhuan2.png" alt />
</div>
<div class="r_title">
- <span>{{ '资金划转' }}</span>
+ <span>{{ $t('hj145') }}</span>
</div>
</div>
<div class="right_gos">
@@ -134,7 +138,7 @@
<img src="../../assets/img/shiming.png" alt />
</div>
<div class="r_title">
- <span>{{ '实名认证' }}</span>
+ <span>{{ $t('hj146') }}</span>
</div>
</div>
<div class="right_gos">
@@ -147,7 +151,7 @@
<img src="../../assets/img/shiming.png" alt />
</div>
<div class="r_title">
- <span>{{ '绑定银行卡' }}</span>
+ <span>{{ $t('hj147') }}</span>
</div>
</div>
<div class="right_gos">
@@ -160,7 +164,7 @@
<img src="../../assets/img/out2.png" alt />
</div>
<div class="r_title">
- <span>{{ '退出登录' }}</span>
+ <span>{{ $t('hj148') }}</span>
</div>
</div>
<div class="right_gos">
@@ -172,7 +176,7 @@
<div class="setting_content">
<div class="old_password">
<div class="left_titles">
- <span>{{ '旧密码:' }}</span>
+ <span>{{ $t('hj150') + ':' }}</span>
</div>
<div class="right_password_input">
<input type="password" v-model="oldPassword" />
@@ -180,7 +184,7 @@
</div>
<div class="old_password">
<div class="left_titles">
- <span>{{ '新密码:' }}</span>
+ <span>{{ $t('hj151') + ':' }}</span>
</div>
<div class="right_password_input">
<input type="password" v-model="newPassword" />
@@ -188,14 +192,14 @@
</div>
<div class="old_password">
<div class="left_titles">
- <span>{{ '确认新密码:' }}</span>
+ <span>{{ $t('hj152') + ':' }}</span>
</div>
<div class="right_password_input">
<input type="password" v-model="cirNewPassword" />
</div>
</div>
<div class="btn_setting" @click="changeLoginPsd()">
- <span>{{ '确认修改' }}</span>
+ <span>{{ $t('hj153') }}</span>
</div>
</div>
</van-popup>
@@ -207,7 +211,7 @@
import * as api from "@/axios/api";
import { Toast } from "mint-ui";
import { isNull, pwdReg } from "@/utils/utils";
-import i18n from '@/locales';
+import { MessageBox } from 'mint-ui'
export default {
@@ -233,9 +237,9 @@
methods: {
goOnline() {
if (navigator.vibrate) {
- // 支持
- navigator.vibrate([55]);
- }
+ // 支持
+ navigator.vibrate([55]);
+ }
window.location.href = this.onlineService;
},
async getInfoSite() {
@@ -255,15 +259,15 @@
},
handleZh() {
this.selectUserFlag = !this.selectUserFlag;
-
+
if (this.userInfo.length == 0) {
this.$store.commit('dialogVisible', true);
return;
}
if (navigator.vibrate) {
- // 支持
- navigator.vibrate([55]);
- }
+ // 支持
+ navigator.vibrate([55]);
+ }
},
async getUserInfo() {
// 获取用户信息
@@ -283,14 +287,21 @@
return;
}
if (navigator.vibrate) {
- // 支持
- navigator.vibrate([55]);
- }
+ // 支持
+ navigator.vibrate([55]);
+ }
this.$router.push("/wallet");
},
handleOutLoginClick() {
// 退出登录
- this.toRegister();
+ MessageBox.confirm(this.$t('hj149') + '?',this.$t('hj165'), {
+ confirmButtonText: this.$t('hj161'),
+ cancelButtonText: this.$t('hj106'),
+ }).then(() => {
+ this.toRegister();
+ }).catch(() => {
+
+ });
},
goToSettings() {
if (this.userInfo.length == 0) {
@@ -346,10 +357,10 @@
isNull(this.newPassword) ||
isNull(this.cirNewPassword)
) {
- Toast("请输入新旧密码");
+ Toast(this.$t('hj154'));
this.settingDialog = false;
} else if (!pwdReg(this.newPassword)) {
- Toast("密码为6~12位,数字、字母或符号");
+ Toast(this.$t('hj19'));
this.settingDialog = false;
} else {
// 修改密码
@@ -368,14 +379,14 @@
this.settingDialog = false;
}
} else {
- Toast("新密码不一致");
+ Toast(this.$t('hj155'));
this.settingDialog = false;
}
}
if (navigator.vibrate) {
- // 支持
- navigator.vibrate([55]);
- }
+ // 支持
+ navigator.vibrate([55]);
+ }
}
}
};
@@ -383,11 +394,13 @@
<style scoped lang="less">
.green {
- color: #028f52 !important;
+ color: #028f52 !important;
}
-.red{
+
+.red {
color: #b60c0d !important;
}
+
.user_page {
width: 100%;
height: calc(100% - 1.3rem);
@@ -528,10 +541,11 @@
}
}
- .account{
+ .account {
font-size: 0.6rem;
font-weight: 600;
}
+
.yk {
width: 100%;
height: 0.5rem;
@@ -547,7 +561,8 @@
align-items: center;
justify-content: center;
}
- .orenge{
+
+ .orenge {
// color: rgb(216, 141, 1) !important;
}
}
diff --git a/src/page/trading/buy.vue b/src/page/trading/buy.vue
index 546dd79..5b408fe 100644
--- a/src/page/trading/buy.vue
+++ b/src/page/trading/buy.vue
@@ -22,17 +22,17 @@
<span>{{ nowPrice }}</span>
</div>
<div class="bottom_es">
- <span>{{ '买入价' }}</span>
+ <span>{{ $t('hj98') }}</span>
</div>
</div>
<div class="rights">
<div class="ese">
<div class="mc" @click="handleTradingClick(0)" :class="tabsCurrentIndex === 0 ? 'actives' : ''">
- <span>卖出</span>
+ <span>{{ $t('hj84') }}</span>
</div>
<div class="mr" @click="handleTradingClick(1)" :class="tabsCurrentIndex === 1 ? 'active' : ''">
- <span>买入</span>
+ <span>{{ $t('hj85') }}</span>
</div>
</div>
</div>
@@ -50,7 +50,7 @@
</div>
<div class="tabs_content">
<div class="num" v-show="priceTabsCurrentIndex == 1">
- <span>{{ '当价格满足条件时买入' }}</span>
+ <span>{{ $t('hj99') }}</span>
</div>
<div class="tr_es flexJy" v-show="priceTabsCurrentIndex == 1">
<div class="top_input">
@@ -70,7 +70,7 @@
</div>
</div>
<div class="num">
- <span>{{ '交易数量(手)' }}</span>
+ <span>{{ $t('hj100') }}</span>
</div>
<div class="tr_es flexJy">
<div class="top_input">
@@ -89,7 +89,7 @@
</div>
<div class="tr_rs gg" @click="showGg = true">
<div class="top_bzz">
- <span>{{ '杠杆' }}</span>
+ <span>{{ $t('hj101') }}</span>
<span>{{ selectCycle + 'X' }}</span>
</div>
<!-- <div class="bottom_bzz">
@@ -99,8 +99,10 @@
</div>
<div class="tr_rs">
<div class="top_bzz">
- <span>{{ if_us == 1 ? '需付保证金($)' : if_us == '2' ? '需付保证金(HK$)' : '需付保证金(¥)' }}</span>
- <span>{{ if_us == 1 ? '可用余额($)' : if_us == '2' ? '可用余额(HK$)' : '可用余额(¥)' }}</span>
+ <span>{{ if_us == 1 ? $t('hj102') + '($)' : if_us == '2' ? $t('hj102') + '(HK$)' : $t('hj102') + '(¥)'
+ }}</span>
+ <span>{{ if_us == 1 ? $t('hj103') + '($)' : if_us == '2' ? $t('hj103') + '(HK$)' : $t('hj103') + '(¥)'
+ }}</span>
</div>
<div class="bottom_bzz">
<!-- <span>{{ (nowPrice/ selectCycle).toFixed(2) }}</span> -->
@@ -124,7 +126,7 @@
<div class="switchs">
<div class="zy">
<div class="left_zy">
- <span>止盈</span>
+ <span>{{ $t('hj104') }}</span>
</div>
<div class="right_sw">
<van-switch v-model="checkedZy" />
@@ -147,7 +149,7 @@
</div>
<div class="zy">
<div class="left_zy">
- <span>止损</span>
+ <span>{{ $t('hj105') }}</span>
</div>
<div class="right_sw">
<van-switch v-model="checkedZs" />
@@ -178,11 +180,11 @@
</div>
<div class="btn_buy" @click="gdOrSetBuy()">
<div :class="tabsCurrentIndex == 0 ? 'maichu' : ''">
- <span>{{ tabsCurrentIndex == 0 ? '卖出' : '买入' }}</span>
+ <span>{{ tabsCurrentIndex == 0 ? $t('hj84') : $t('hj85') }}</span>
</div>
</div>
</div>
- <van-action-sheet v-model="showGg" :actions="siteLeverList" cancel-text="取消" description="选择杠杆"
+ <van-action-sheet v-model="showGg" :actions="siteLeverList" :cancel-text="$t('hj106')" :description="$t('hj107')"
close-on-click-action @select="onSelect" />
</div>
</template>
@@ -220,9 +222,9 @@
},
data() {
return {
- tradingArr: ['卖出', '买入'],
+ tradingArr: [this.$t('hj84'), this.$t('hj85')],
tabsCurrentIndex: 0,
- priceTabs: ['市单价', '挂单'],
+ priceTabs: [this.$t('hj108'), this.$t('hj109')],
priceTabsCurrentIndex: 0,
num: 1,
nums: 1,
@@ -242,21 +244,21 @@
profitTarget: 0,
if_us: 0,
actions: [
- { name: '100X', subname: '需付保证金:' },
- { name: '200X', subname: '需付保证金:' },
- { name: '300X', subname: '需付保证金:' },
+ { name: '100X', subname: this.$t('hj102') },
+ { name: '200X', subname: this.$t('hj102') },
+ { name: '300X', subname: this.$t('hj102') },
],
profitArr: [
{
- name: '止盈',
+ name: this.$t('hj104'),
checked: false
},
{
- name: '止损',
+ name: this.$t('hj105'),
checked: false
},
{
- name: '追踪止损',
+ name: this.$t('hj110'),
checked: false
}
]
@@ -404,7 +406,7 @@
//买卖
setBuy() {
if (!this.$store.state.userInfo.idCard) {
- this.$store.commit('elAlertShow', { 'elAlertShow': true, 'elAlertText': '您还未实名认证,请先实名认证了再下单' });
+ this.$store.commit('elAlertShow', { 'elAlertShow': true, 'elAlertText': this.$t('hj111') });
this.$router.push('/authentication')
return
}
@@ -470,7 +472,12 @@
this.getUserInfo()
this.$router.push('/orderlist?index=2')
} else {
- this.$store.commit('elAlertShow', { 'elAlertShow': true, 'elAlertText': data.msg });
+ if (data.msg.indexOf('不在交易时段内') > -1) {
+ this.$store.commit('elAlertShow', { 'elAlertShow': true, 'elAlertText': this.$t('hj113') });
+ } else {
+ this.$store.commit('elAlertShow', { 'elAlertShow': true, 'elAlertText': data.msg });
+ }
+
}
},
//指数买入
@@ -515,7 +522,7 @@
this.siteLeverList = []
for (let i = 0; i < this.$store.state.userInfo.siteLever.split('/').length; i++) {
let val = this.$store.state.userInfo.siteLever.split('/')[i]
- let item = { label: val + '倍', value: val }
+ let item = { label: val + this.$t('hj112'), value: val }
this.siteLeverList.push(item)
}
} else {
@@ -526,7 +533,7 @@
let val = data.data.siteLever.split('/')[i]
var ccet = (Number(this.nowPrice) / Number(val)).toFixed(2)
//let item = { label: val + '倍', value: val ,bzj:ccet}
- let item = { name: val + 'X', subname: '需付保证金:' + (ccet * 100).toFixed(2), gg: val, bzj: ccet }
+ let item = { name: val + 'X', subname: this.$t('hj102') + ':' + (ccet * 100).toFixed(2), gg: val, bzj: ccet }
this.siteLeverList.push(item)
}
}
diff --git a/src/page/user/Warehouse.vue b/src/page/user/Warehouse.vue
index f478e59..2c5e7dd 100644
--- a/src/page/user/Warehouse.vue
+++ b/src/page/user/Warehouse.vue
@@ -15,7 +15,7 @@
</div>
<div class="overflow_box item" @click="SetTitleIndex(0)">
<div class="left_titles">
- <span>{{ '沪深京账户' }}</span>
+ <span>{{ $t('hj114') }}</span>
</div>
<div class="right_price">
<span>{{ '' }}</span>
@@ -23,7 +23,7 @@
</div>
<div class="overflow_box item" @click="SetTitleIndex(1)">
<div class="left_titles">
- <span>{{ '指数账户' }}</span>
+ <span>{{ $t('hj115') }}</span>
</div>
<div class="right_price">
<span>{{ '' }}</span>
@@ -31,7 +31,7 @@
</div>
<div class="overflow_box item" @click="SetTitleIndex(2)">
<div class="left_titles">
- <span>{{ '新股账户' }}</span>
+ <span>{{ $t('hj116') }}</span>
</div>
<div class="right_price">
<span>{{ '' }}</span>
@@ -42,7 +42,7 @@
<div class="top_card">
<div class="card_content">
<div class="t_title">
- <span>{{ '总资产' }}</span>
+ <span>{{ $t('hj49') }}</span>
</div>
<div class="t_price">
<!-- <span class="price">{{ '49,619.05' }}</span>
@@ -67,10 +67,10 @@
</div>
<div class="balance">
<div class="left_titles">
- {{ '强平线' }}
+ {{ $t('hj50') }}
</div>
<div class="right_titles">
- {{ '可用资金' }}
+ {{ $t('hj54') }}
</div>
</div>
<div class="num">
@@ -98,10 +98,10 @@
</div>
<div class="margin">
<div class="left_titles">
- {{ '冻结保证金' }}
+ {{ $t('hj55') }}
</div>
<div class="right_titles">
- {{ '持仓总盈亏' }}
+ {{ $t('hj56') }}
</div>
</div>
<div class="prices">
@@ -142,27 +142,26 @@
<div class="tabs_card">
<div class="tabs_card_content">
<div class="tabs_top_title">
- <div class="title_items" v-for="(item, index) in tabsArr" :key="index"
+ <div class="title_items" v-for="(item, index) in tabsArr" :key="index"
@click="handleTabsClick(item, index)" :class="index == 0 ? 'kuan' : 'kuan'">
- <span :class="tabsCurrentIndex === index ? 'active' : ''">{{ item }}{{ index == 0 ? '(' + total + ')' :
- index == 1 ? '(' + totalss + ')' :
- index == 2 ? '(' + totals + ')' : '(' + xgTotal + ')'
- }}</span>
+ <span :class="tabsCurrentIndex === index ? 'active' : ''">
+ {{ item }}{{ index == 0 ? '(' + total + ')' : index == 1 ? '(' + totalss + ')' : index == 2 ? '(' +
+ totals + ')' : '(' + xgTotal + ')'
+ }}</span>
</div>
</div>
<!-- 持仓 currentIndex: 0 -->
<div class="over">
- <van-list v-model="loading" :finished="finished" finished-text="没有更多了"
+ <van-list v-model="loading" :finished="finished" :finished-text="$t('hj43')"
v-show="tabsCurrentIndex === 0 && total != 0" @load="onLoad" :immediate-check="immediate">
<div class="tabs_o">
<div class="tabs_o_items" v-for="(item, index) in tabsPositionNumArr" :key="item.buyOrderId">
<div class="tabs_o_title">
- <span class="title">{{ item.stockName }}</span>
- <span class="buy_to_sell" :class="item.orderDirection == '买跌' ? 'maichu' : 'mairu'">{{
- item.orderDirection == "买跌" ? '卖出' : '买入'
- }}</span>
+ <span class="title">{{ item.stockName ? item.stockName : item.indexName }}</span>
+ <span class="buy_to_sell" :class="item.orderDirection == '买跌' ? 'maichu' : 'mairu'">
+ {{ item.orderDirection == "买跌" ? $t('hj84') : $t('hj85') }}</span>
<span class="multiple">{{ item.allProfitAndLose }}</span>
- <span class="nums">{{ item.orderNum / 100 + '手' }}</span>
+ <span class="nums">{{ item.orderNum / 100 + $t('hj117') }}</span>
</div>
<div class="center_price">
<div class="profit">
@@ -177,17 +176,17 @@
</div>
<div class="bottom_price_title">
<div class="profit_title">
- <span>{{ '浮动净盈亏' }}</span>
+ <span>{{ $t('hj118') }}</span>
</div>
<div class="start_price">
- <span>{{ '开仓价格' }}</span>
+ <span>{{ $t('hj119') }}</span>
</div>
<div class="new_price">
- <span>{{ '当前价格' }}</span>
+ <span>{{ $t('hj120') }}</span>
</div>
</div>
- <div class="right_btn">
- <span>{{ '平仓' }}</span>
+ <div class="right_btn pingbtn" @click="getpingcang(item.positionSn)">
+ <span>{{ $t('hj121') }}</span>
</div>
</div>
</div>
@@ -196,9 +195,9 @@
<div class="waiting_box">
<div class="img_cont">
<img src="../../assets/img/zhaobudao.png" alt />
- <span class="gd">{{ '当前无持仓' }}</span>
+ <span class="gd">{{ $t('hj122') }}</span>
<div class="trading" @click="$router.push('/trading-list')">
- <span>{{ '开始交易' }}</span>
+ <span>{{ $t('hj123') }}</span>
</div>
</div>
</div>
@@ -211,24 +210,24 @@
<div class="waiting_box">
<div class="img_cont">
<img src="../../assets/img/zhaobudao.png" alt />
- <span class="gd">{{ '当前无挂单' }}</span>
+ <span class="gd">{{ $t('hj124') }}</span>
<div class="trading" @click="$router.push('/trading-list')">
- <span>{{ '开始交易' }}</span>
+ <span>{{ $t('hj123') }}</span>
</div>
</div>
</div>
</div>
- <van-list v-model="loadingss" :finished="finishedss" finished-text="没有更多了"
+ <van-list v-model="loadingss" :finished="finishedss" :finished-text="$t('hj43')"
v-show="tabsCurrentIndex === 1 && totalss != 0" @load="onLoad" :immediate-check="immediate">
<div class="tabs_o">
<div class="tabs_o_items" v-for="(item, index) in tabsOrderList" :key="item.id">
<div class="tabs_o_title">
- <span class="title">{{ item.stockName }}</span>
+ <span class="title">{{ item.stockName ? item.stockName : item.indexName }}</span>
<span class="buy_to_sell" :class="item.buyType == 1 ? 'maichu' : 'mairu'">{{
- item.buyType == 1 ? '卖出' : '买入'
+ item.buyType == 1 ? $t('hj84') : $t('hj85')
}}</span>
<span class="multiple">{{ item.lever }}X</span>
- <span class="nums">{{ item.buyNum / 100 + '手' }}</span>
+ <span class="nums">{{ item.buyNum / 100 + $t('hj117') }}</span>
</div>
<div class="center_price">
@@ -242,14 +241,14 @@
<div class="bottom_price_title">
<div class="start_price">
- <span>{{ '挂单价格' }}</span>
+ <span>{{ $t('hj125') }}</span>
</div>
<div class="new_price">
- <span>{{ '当前价格' }}</span>
+ <span>{{ $t('hj120') }}</span>
</div>
</div>
<div class="right_btn" @click="gdClose(item)">
- <span>{{ '撤销' }}</span>
+ <span>{{ $t('hj126') }}</span>
</div>
</div>
</div>
@@ -263,27 +262,30 @@
<div class="waiting_box">
<div class="img_cont">
<img src="../../assets/img/zhaobudao.png" alt />
- <span class="gd">{{ '当前无平仓' }}</span>
+ <span class="gd">{{ $t('hj127') }}</span>
<div class="trading" @click="$router.push('/trading-list')">
- <span>{{ '开始交易' }}</span>
+ <span>{{ $t('hj123') }}</span>
</div>
</div>
</div>
</div>
- <van-list v-model="loadings" :finished="finisheds" finished-text="没有更多了" @load="onLoads"
+ <van-list v-model="loadings" :finished="finisheds" :finished-text="$t('hj43')" @load="onLoads"
:immediate-check="immediate" v-show="tabsCurrentIndex === 2 && totals != 0">
<div class="tabs_o">
<div class="tabs_o_items oes" v-for="(item, index) in tabsPcArr" :key="index">
<div class="tabs_o_title">
- <span class="title">{{ item.stockName }}</span>
- <span class="buy_to_sell">{{ item.orderDirection }}</span>
+ <span class="title">{{ item.stockName ? item.stockName : item.indexName }}</span>
+ <span class="buy_to_sell" :class="item.orderDirection == '买跌' ? 'maichu' : 'mairu'">{{
+ item.orderDirection == "买跌" ?
+ $t('hj84') : $t('hj85')
+ }}</span>
<span class="multiple">{{ item.allProfitAndLose }}</span>
- <span class="nums">{{ item.orderNum / 100 + '手' }}</span>
+ <span class="nums">{{ item.orderNum / 100 + $t('hj117') }}</span>
</div>
<div class="bottom_price_title">
<div class="profit_res">
- <span>平仓时间: {{ item.buyOrderTime | gettime }}</span>
+ <span>{{ $t('hj128') }}: {{ item.buyOrderTime | gettime }}</span>
</div>
</div>
<div class="right_count"
@@ -298,21 +300,21 @@
<div class="waiting_box">
<div class="img_cont">
<img src="../../assets/img/zhaobudao.png" alt />
- <span class="gd">{{ '当前无申购' }}</span>
+ <span class="gd">{{ $t('hj129') }}</span>
<div class="trading" @click="$router.push({ path: '/trading-list', query: { listid: 3 } })">
- <span>{{ '开始交易' }}</span>
+ <span>{{ $t('hj123') }}</span>
</div>
</div>
</div>
</div>
- <van-list v-model="loadingXg" :finished="finishedXg" finished-text="没有更多了"
+ <van-list v-model="loadingXg" :finished="finishedXg" :finished-text="$t('hj43')"
v-show="tabsCurrentIndex === 3 && xgTotal != 0" @load="onLoadXg" :immediate-check="immediate">
<div class="tabs_o">
<div class="tabs_o_items" v-for="(item, index) in tabsXgArr" :key="item.id">
<div class="tabs_o_title">
<span class="title">{{ item.newName }}</span>
<span class="buy_to_sell" :class="item.type == 1 ? 'mairu' : 'maichu'">{{
- item.type == 1 ? '新股申购' : '线下配售'
+ item.type == 1 ? $t('hj45') : $t('hj46')
}}</span>
<!-- <span class="multiple">{{ item.lever }}X</span>
<span class="nums">{{ item.buyNum / 100 + '手' }}</span> -->
@@ -329,17 +331,18 @@
<div class="bottom_price_title">
<div class="start_price">
- <span>{{ '申购价格' }}</span>
+ <span>{{ $t('hj130') }}</span>
</div>
<div class="new_price">
- <span>{{ '申购数量' }}</span>
+ <span>{{ $t('hj57') }}</span>
</div>
</div>
<div class="right_btn" @click="zcsg(item)" :class="item.status == 1 ? 'pink' : item.status == 2 ? 'red'
- : item.status == 3 ? 'greeen' : item.status == 4 ? 'blue' : item.status == 5 ? 'purple' : ''">
+ : item.status == 3 ? 'greeen' : item.status == 4 ? 'blue' : item.status == 5 ? 'purple' : ''">
<span>{{ item.status == 1 ?
- '已认购' : item.status == 2 ? '未中签'
- : item.status == 3 ? '已中签' : item.status == 4 ? '已缴纳' : item.status == 5 ? '已转持仓'
+ $t('hj131') : item.status == 2 ? $t('hj132')
+ : item.status == 3 ? $t('hj133') : item.status == 4 ? $t('hj134') : item.status == 5 ?
+ $t('hj135')
: ''
}}</span>
</div>
@@ -360,13 +363,14 @@
<script>
import { Toast } from 'vant';
+import { MessageBox } from 'mint-ui'
import * as api from "@/axios/api";
export default {
data() {
return {
- tabsArr: ["持仓", "挂单", "已平仓", "新股"],
+ tabsArr: [this.$t('hj2'), this.$t('hj109'), this.$t('hj136'), this.$t('hj3')],
tabsCurrentIndex: 0,
- titleName: "沪深京账户",
+ titleName: this.$t('hj114'),
indexSettingInfo: {},
futuresSettingInfo: {},
tabsPositionNumArr: [],
@@ -412,6 +416,58 @@
},
methods: {
+ getpingcang(val) {
+ if (!this.$store.state.userInfo.idCard) {
+ Toast(this.$t('hj138'))
+ this.$router.push('/authentication')
+ return
+ }
+ if (this.titleIndex == 0) {
+ MessageBox.confirm(this.$t('hj139') + '?', this.$t('hj165'), {
+ confirmButtonText: this.$t('hj161'),
+ cancelButtonText: this.$t('hj106'),
+ }).then(async () => {
+ let opt = {
+ positionSn: val
+ }
+ let data = await api.sell(opt)
+ if (data.status === 0) {
+ Toast(data.msg)
+ this.getzhishuListDetail();
+ this.getzhishuListDetails();
+ this.getorderList();
+ } else if (data.msg.indexOf('不在交易时段内') > -1) {
+ Toast(this.$t('hj140'))
+ } else {
+ Toast(data.msg)
+ }
+ }).catch(() => {
+
+ });
+ } else {
+ MessageBox.confirm(this.$t('hj139') + '?', this.$t('hj165'), {
+ confirmButtonText: this.$t('hj161'),
+ cancelButtonText: this.$t('hj106'),
+ }).then(async () => {
+ let opt = {
+ positionSn: val
+ }
+ let data = await api.sellIndex(opt)
+ if (data.status === 0) {
+ Toast(data.msg)
+ this.getzhishuListDetail();
+ this.getzhishuListDetails();
+ this.getorderList();
+ } else if (data.msg.indexOf('不在交易时段内') > -1) {
+ Toast(this.$t('hj140'))
+ } else {
+ Toast(data.msg)
+ }
+ }).catch(() => {
+
+ });
+ }
+ },
onLoad() {
this.page++;
switch (this.titleIndex) {
@@ -451,7 +507,7 @@
}
let data = await api.delGuaDan(opts)
if (data.status == 1) {
- Toast('撤单成功')
+ Toast(this.$t('hj137'))
this.page = 1;
this.pages = 1;
this.finished = false;
@@ -460,19 +516,19 @@
this.tabsPcArr = [];
switch (this.titleIndex) {
case 0:
- this.titleName = "沪深京账户";
+ this.titleName = this.$t('hj114');
this.getListDetail();
this.getListDetails();
this.getorderList();
break;
case 1:
- this.titleName = "指数账户";
+ this.titleName = this.$t('hj115');
this.getzhishuListDetail();
this.getzhishuListDetails();
this.getorderList();
break;
case 2:
- this.titleName = "新股账户";
+ this.titleName = this.$t('hj116');
this.getQhListDetail();
this.getQhListDetails();
this.getorderList();
@@ -498,31 +554,37 @@
this.tabsPcArr = [];
switch (index) {
case 0:
- this.titleName = "沪深京账户";
+ this.titleName = this.$t('hj114');
this.getListDetail();
this.getListDetails();
this.getorderList();
+ this.handleTabsClick('', 0)
break;
case 1:
- this.titleName = "指数账户";
+ this.titleName = this.$t('hj115');
this.getzhishuListDetail();
this.getzhishuListDetails();
this.getorderList();
+ this.handleTabsClick('', 0)
break;
case 2:
- this.titleName = "新股账户";
- this.getQhListDetail();
- this.getQhListDetails();
- this.getorderList();
+ this.totalss = 0;
+ this.totals = 0;
+ this.total = 0;
+ this.titleName = this.$t('hj116');
+ this.handleTabsClick('', 3)
+ // this.getQhListDetail();
+ // this.getQhListDetails();
+ // this.getorderList();
break;
default:
break;
}
this.titleDialog = false;
if (navigator.vibrate) {
- // 支持
- navigator.vibrate([55]);
- }
+ // 支持
+ navigator.vibrate([55]);
+ }
},
handleTabsClick(item, index) {
//持仓已平仓选项卡
@@ -531,9 +593,9 @@
this.getNewXg();
}
if (navigator.vibrate) {
- // 支持
- navigator.vibrate([55]);
- }
+ // 支持
+ navigator.vibrate([55]);
+ }
},
handleOpenDialog() {
this.titleDialog = !this.titleDialog;
@@ -796,31 +858,49 @@
</script>
<style scoped lang="less">
-.pink{
+/deep/ .mint-msgbox-title {
+ font-size: 0.4rem !important;
+}
+
+.pingbtn {
+ width: auto !important;
+ height: auto !important;
+ background: rgb(45, 106, 233);
+ color: rgb(255, 255, 255);
+ padding: 0.2rem 0.4rem;
+ border-radius: 0.2rem !important;
+}
+
+.pink {
color: #eb2f96;
- background: #fff0f6;
- border-color: #ffadd2;
+ background: #fff0f6;
+ border-color: #ffadd2;
}
-.red{
+
+.red {
color: #f5222d;
- background: #fff1f0;
- border-color: #ffa39e;
+ background: #fff1f0;
+ border-color: #ffa39e;
}
-.blue{
+
+.blue {
color: #1890ff;
- background: #e6f7ff;
- border-color: #91d5ff;
+ background: #e6f7ff;
+ border-color: #91d5ff;
}
-.green{
+
+.green {
color: #52c41a;
- background: #f6ffed;
- border-color: #b7eb8f;
+ background: #f6ffed;
+ border-color: #b7eb8f;
}
-.purple{
+
+.purple {
color: #722ed1;
- background: #f9f0ff;
- border-color: #d3adf7;
+ background: #f9f0ff;
+ border-color: #d3adf7;
}
+
@boxCenter: {
display: flex;
justify-content: center;
@@ -1241,7 +1321,7 @@
height: 0.7667rem;
position: absolute;
right: 1%;
- top: 48%;
+ top: 27%;
// background: #f7f7f7;
// color: #3773dd;
display: flex;
diff --git a/src/page/wallet/index.vue b/src/page/wallet/index.vue
index d098182..ff42834 100644
--- a/src/page/wallet/index.vue
+++ b/src/page/wallet/index.vue
@@ -22,7 +22,7 @@
</div>
<div class="center_card" v-if="tabsCurrentIndex === 0">
<div class="keyon">
- <span>{{ '总资产' }}</span>
+ <span>{{ $t('hj49') }}</span>
</div>
<div class="num_price">
<p v-if="this.$store.state.settingForm.indexDisplay && !this.$store.state.settingForm.futuresDisplay"
@@ -42,10 +42,10 @@
</div>
<div class="yk es">
<div>
- <span>{{ '沪深账户' }}</span>
+ <span>{{ $t('hj156') }}</span>
</div>
<div>
- <span>{{ '指数账户' }}</span>
+ <span>{{ $t('hj115') }}</span>
</div>
</div>
<div class="yk as">
@@ -57,35 +57,35 @@
</div>
</div>
<div class="btns" @click="handleGoToTransfers()">
- <span>{{ '账户金额互转' }}</span>
+ <span>{{ $t('hj157') }}</span>
</div>
</div>
<div class="withdrawal" v-if="tabsCurrentIndex === 1">
<div class="ttx">
- <span>{{ '可提现金额 (元)' }}</span>
+ <span>{{ $t('hj158') }}</span>
</div>
<div class="ttx_price">
<span>{{ $store.state.userInfo.enableAmt }}</span>
</div>
<div class="ttx_input">
<div class="titles">
- <span>{{ '提现金额' }}</span>
+ <span>{{ $t('hj159') }}</span>
</div>
<div class="num">
<input type="text" v-model="withdrawalValue" />
</div>
<div class="all" @click="withdrawalAll()">
- <span>{{ '全部' }}</span>
+ <span>{{ $t('hj160') }}</span>
</div>
</div>
<div class="btns" @click="handleToSure()">
- <span>{{ '确定' }}</span>
+ <span>{{ $t('hj161') }}</span>
</div>
</div>
<div class="banks" v-if="tabsCurrentIndex === 1">
<div class="bank_1">
<div class="left_name">
- <span>{{ '提现记录' }}</span>
+ <span>{{ $t('hj162') }}</span>
</div>
<div class="center_input"></div>
<div class="right_copy img_right" @click="handleGoToCashWithdrawalRecord()">
@@ -97,13 +97,13 @@
<div class="bank_1">
<div class="left_name">
- <span>{{ '收款名称' }}</span>
+ <span>{{ $t('hj163') }}</span>
</div>
<div class="center_input">
<input type="text" v-model="skName" readonly />
</div>
<div class="right_copy">
- <span v-clipboard:copy="skName" v-clipboard:success="onCopy" v-clipboard:error="onError">{{ '复制' }}</span>
+ <span v-clipboard:copy="skName" v-clipboard:success="onCopy" v-clipboard:error="onError">{{ $t('hj164') }}</span>
</div>
</div>
<div class="bank_1">
@@ -281,9 +281,9 @@
// 点击全部提现
this.withdrawalValue = this.userInfo.enableAmt;
if (navigator.vibrate) {
- // 支持
- navigator.vibrate([55]);
- }
+ // 支持
+ navigator.vibrate([55]);
+ }
},
async handleToSure() {
// 点击确定提现
@@ -314,9 +314,9 @@
}
}
if (navigator.vibrate) {
- // 支持
- navigator.vibrate([55]);
- }
+ // 支持
+ navigator.vibrate([55]);
+ }
},
async getCardDetail() {
// 获取银行卡信息
@@ -342,9 +342,9 @@
},
handleGoToTransferRecord() { // 充值记录
if (navigator.vibrate) {
- // 支持
- navigator.vibrate([55]);
- }
+ // 支持
+ navigator.vibrate([55]);
+ }
this.$router.push('/transferRecord');
},
handleGoToCashWithdrawalRecord() { // 提现记录
@@ -352,16 +352,16 @@
},
handleGoToTransfers() {
if (navigator.vibrate) {
- // 支持
- navigator.vibrate([55]);
- }
+ // 支持
+ navigator.vibrate([55]);
+ }
this.$router.push('/transfers');
},
handleGoCz() {
if (navigator.vibrate) {
- // 支持
- navigator.vibrate([55]);
- }
+ // 支持
+ navigator.vibrate([55]);
+ }
if (this.walletNum === "") {
this.messShow = true;
this.mess = "请输入充值金额";
@@ -382,9 +382,9 @@
onCopy() {
Toast("复制成功");
if (navigator.vibrate) {
- // 支持
- navigator.vibrate([55]);
- }
+ // 支持
+ navigator.vibrate([55]);
+ }
},
onError() {
Toast("复制失败请重试");
diff --git a/static/css/public2.css b/static/css/public2.css
index 9cc652c..74b56ee 100644
--- a/static/css/public2.css
+++ b/static/css/public2.css
@@ -12579,18 +12579,19 @@
left: 50%;
transform: translate3d(-50%, -50%, 0);
background-color: #fff;
- width: 85%;
+ width: 80%;
border-radius: 3px;
font-size: 16px;
-webkit-user-select: none;
overflow: hidden;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
- transition: .2s
+ transition: .2s;
+ border-radius:16px;
}
.mint-msgbox-header {
- padding: 15px 0 0
+ padding: 30px 0 0
}
.mint-msgbox-content {
@@ -12619,30 +12620,34 @@
text-align: center;
padding-left: 0;
margin-bottom: 0;
- font-size: 16px;
+ font-size: 26px;
font-weight: 700;
- color: #333
+ color: #333;
}
.mint-msgbox-message {
- line-height: 36px
+ line-height: 36px;
+ font-size: 20px;
+ color: #666666;
}
.mint-msgbox-btns {
display: -ms-flexbox;
display: flex;
- height: 40px;
- line-height: 40px
+ height: 50px;
+ line-height: 50px
}
.mint-msgbox-btn {
- line-height: 35px;
+ line-height: 50px;
display: block;
background-color: #fff;
-ms-flex: 1;
flex: 1;
margin: 0;
- border: 0
+ border: 0;
+ font-size: 22px;
+ letter-spacing: 2px;
}
.mint-msgbox-btn:focus {
@@ -12655,7 +12660,8 @@
.mint-msgbox-cancel {
width: 50%;
- border-right: 1px solid #ddd
+ border-right: 1px solid #ddd;
+ color: #999;
}
.mint-msgbox-cancel:active {
@@ -13792,7 +13798,7 @@
}
.mint-msgbox-message {
- color: #999;
+ color: #666666;
margin: 0;
text-align: center;
line-height: 2rem !important
--
Gitblit v1.9.3