From ab0704f2238e9159d13c66a19e830bcb249b36b9 Mon Sep 17 00:00:00 2001
From: zzzz <690498789@qq.com>
Date: Tue, 02 Apr 2024 18:20:15 +0800
Subject: [PATCH] 注册页面的客服地址错误
---
src/page/list/list.vue | 525 ++++----
src/locales/india.js | 6
chinese_data.json | 62 +
src/page/user/recharge.vue | 33
src/axios/api.js | 8
src/locales/zh.js | 9
src/locales/taiyu.js | 6
index.js | 44
src/page/list/tradingList/tabs.vue | 3
src/page/user/compontents/recharge-list.vue | 360 +++---
src/page/kline/components/kLine.vue | 1253 +++++++++++-----------
src/page/user/compontents/cash-list.vue | 238 ++-
src/locales/tw.js | 6
src/page/home/home.vue | 36
config/index.js | 2
src/page/list/tradingList/data.list.vue | 27
src/page/user/recharge-sure.vue | 31
src/page/user/compontents/transferindex-list.vue | 87 +
src/router/index.js | 15
src/locales/hanyu.js | 6
src/locales/riyu.js | 6
src/locales/en.js | 4
src/page/user/ransferIndex.vue | 16
src/page/newUser/setting.vue | 42
src/page/user/cashlist.vue | 150 +-
src/App.vue | 220 ++-
26 files changed, 1,762 insertions(+), 1,433 deletions(-)
diff --git a/chinese_data.json b/chinese_data.json
new file mode 100644
index 0000000..f4812a7
--- /dev/null
+++ b/chinese_data.json
@@ -0,0 +1,62 @@
+[
+ "请先实名认证了再下单",
+ "请选择购买手数",
+ "请选择买卖方向",
+ "款",
+ "全",
+ "戶手冊",
+ "臺",
+ "新日曆",
+ "購記錄",
+ "訊",
+ "添加自选成功",
+ "删除自选股成功",
+ "大購買",
+ "股",
+ "筆價格",
+ "字货币",
+ "錄賬號",
+ "即登录",
+ "住帳戶密碼",
+ "費註冊",
+ "已閱讀並同意",
+ "即注册",
+ "上登錄",
+ "戶總資產",
+ "股總資產",
+ "股資產",
+ "股可用",
+ "股冻结",
+ "码修改成功",
+ "不在交易时段内",
+ "資產",
+ "用資產",
+ "浮動盈虧",
+ "計盈虧",
+ "結資產",
+ "手續費",
+ "虧",
+ "倉價",
+ "單金額",
+ "倉手續費",
+ "損價",
+ "盈價",
+ "倉時間",
+ "單編號",
+ "仓",
+ "買跌",
+ "型",
+ "價",
+ "倉",
+ "部平仓",
+ "動盈虧",
+ "股总资产",
+ "来西亚",
+ "转成功",
+ "能选择一样的",
+ "请上传文件",
+ "已复制到剪贴板",
+ "行卡充值",
+ "上传文件",
+ "请输入整数"
+]
\ No newline at end of file
diff --git a/config/index.js b/config/index.js
index b5cad3c..4b2579c 100644
--- a/config/index.js
+++ b/config/index.js
@@ -40,7 +40,7 @@
},
// Various Dev Server settings
- host: "192.168.0.105", // can be overwritten by process.env.HOST
+ host: "127.0.0.1", // can be overwritten by process.env.HOST
port: 80, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
autoOpenBrowser: true,
errorOverlay: true,
diff --git a/index.js b/index.js
new file mode 100644
index 0000000..e82531d
--- /dev/null
+++ b/index.js
@@ -0,0 +1,44 @@
+const fs = require('fs');
+const path = require('path');
+
+// 函数用于遍历目录
+function traverseDirectory(directoryPath, resultArray) {
+ const files = fs.readdirSync(directoryPath); // 同步读取目录内容
+ files.forEach(file => {
+ const filePath = path.join(directoryPath, file);
+ const stats = fs.statSync(filePath); // 获取文件信息
+ if (stats.isDirectory()) {
+ traverseDirectory(filePath, resultArray); // 如果是目录,递归遍历子目录
+ } else if (stats.isFile() && path.extname(filePath) === '.vue') {
+ const fileContent = fs.readFileSync(filePath, 'utf8'); // 读取文件内容
+ // 提取 template 和 script 标签中的中文内容
+ const matches = fileContent.match(/<(template|script)>([\s\S]*?)<\/\1>/g);
+ if (matches) {
+ matches.forEach(match => {
+ const content = match.replace(/<!--[\s\S]*?-->/g, ''); // 去除注释
+ const chineseMatches = content.match(/(?<!\$t\(")([\u4e00-\u9fa5]+)(?="\))/g); // 匹配中文字符,排除$t("")引号内的中文
+ if (chineseMatches) {
+ chineseMatches.forEach(chinese => {
+ resultArray.push(chinese.trim()); // 将中文字符添加到结果数组中
+ });
+ }
+ });
+ }
+ }
+ });
+}
+
+// 设置要遍历的目录路径
+const directoryPath = './src'; // 修改为你的目录路径
+
+// 创建一个空数组来保存结果
+const resultArray = [];
+
+// 开始遍历目录
+traverseDirectory(directoryPath, resultArray);
+
+// 去重
+const uniqueResults = [...new Set(resultArray)];
+
+// 将结果保存到本地
+fs.writeFileSync('chinese_data.json', JSON.stringify(uniqueResults, null, 2), 'utf8');
diff --git a/src/App.vue b/src/App.vue
index e609bfa..3b9ab13 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,122 +1,143 @@
<template>
- <div id="app" :class="`${$state.theme === 'red' ? 'red-theme' : 'black-theme'}`">
+ <div
+ id="app"
+ :class="`${$state.theme === 'red' ? 'red-theme' : 'black-theme'}`"
+ >
<div :class="`header-box`" v-if="hasHeader && title !== $t('hj248')">
<mt-header :title="title">
<mt-button icon="back" slot="left" @click="$router.go(-1)"></mt-button>
<div v-if="!is_Show">
<template v-if="iconRight == 'search'">
- <img slot="right" class="search-right" src="./assets/ico/fangdajing.png" alt />
- </template>
- <template v-else>
- <mt-button icon="more" slot="right"></mt-button>
- </template>
+ <img
+ slot="right"
+ class="search-right"
+ src="./assets/ico/fangdajing.png"
+ alt
+ />
+ </template>
+ <template v-else>
+ <mt-button icon="more" slot="right"></mt-button>
+ </template>
</div>
-
</mt-header>
</div>
<div class="body-box">
- <transition
- :name="transitionName"
- >
+ <transition :name="transitionName">
<router-view></router-view>
</transition>
</div>
<foot v-if="$route.meta.show !== true" @close="footColse"></foot>
<elalert></elalert>
- <loginPopup @close="dialogClose"/>
+ <loginPopup @close="dialogClose" />
</div>
</template>
<script>
-import elalert from '@/components/elalert.vue'
-import foot from '@/components/foot.vue'
-import loginPopup from '@/components/loginDialog.vue'
+import elalert from "@/components/elalert.vue";
+import foot from "@/components/foot.vue";
+import loginPopup from "@/components/loginDialog.vue";
// 引入css
-import '@/assets/iconfont/iconfont.css'
-import '@/assets/iconfont/iconfont.ttf'
+import "@/assets/iconfont/iconfont.css";
+import "@/assets/iconfont/iconfont.ttf";
+import { getUserInfodata } from "./axios/api";
export default {
components: {
foot,
elalert,
- loginPopup
+ loginPopup,
},
- name: 'App',
- created () {
- this.$state.theme = 'red'
- console.log(this.$state.theme, 'asdasdasd')
- let title = this.$route.meta.title || this.$t('hj224')
- this.title = title
+ name: "App",
+ created() {
+ this.getUserInfo();
+ this.$state.theme = "red";
+ console.log(this.$state.theme, "asdasdasd");
+ let title = this.$route.meta.title || this.$t("hj224");
+ this.title = title;
if (this.$route.meta.is_Show) {
- this.is_Show = this.$route.meta.is_Show
+ this.is_Show = this.$route.meta.is_Show;
} else {
- this.is_Show = true
+ this.is_Show = true;
}
if (this.$route.meta.hasHeader) {
- this.hasHeader = true
+ this.hasHeader = true;
} else {
- this.hasHeader = false
+ this.hasHeader = false;
}
if (this.$route.meta.iconRight) {
- this.iconRight = this.$route.meta.iconRight
+ this.iconRight = this.$route.meta.iconRight;
} else {
- this.iconRight = 'default'
+ this.iconRight = "default";
}
// this.$store.state.className = window.localStorage.getItem('styleName')?window.localStorage.getItem('styleName'):'red'
},
watch: {
- $route (to, from) {
- let title = to.meta.title || this.$t('hj224')
- this.title = title
+ $route(to, from) {
+ let title = to.meta.title || this.$t("hj224");
+ this.title = title;
if (to.meta.iconRight) {
- this.iconRight = to.meta.iconRight
+ this.iconRight = to.meta.iconRight;
} else {
- this.iconRight = 'default'
+ this.iconRight = "default";
}
if (to.meta.hasHeader) {
- this.hasHeader = true
+ this.hasHeader = true;
} else {
- this.hasHeader = false
+ this.hasHeader = false;
}
if (to.meta.index > from.meta.index) {
- console.log('slide-left')
+ console.log("slide-left");
// 设置动画名称
- this.transitionName = 'slide-left'
+ this.transitionName = "slide-left";
} else {
- console.log('slide-right')
- this.transitionName = 'slide-right'
+ console.log("slide-right");
+ this.transitionName = "slide-right";
}
- }
+ },
},
- data () {
+ data() {
return {
- title: '首页',
+ title: "首页",
hasHeader: false,
- iconRight: 'default',
- transitionName: '',
+ iconRight: "default",
+ transitionName: "",
is_Show: true,
- is_foot: true
- }
+ is_foot: true,
+ };
},
methods: {
- footColse () {
- this.$store.commit('dialogVisible', true)
+ async getUserInfo() {
+ // 获取用户信息
+ // let showcookie = this.getCookie('USER_TOKEN');
+ let data = await getUserInfodata();
+ if (data.status === 0) {
+ // this.getProductSetting()
+ this.$store.state.userInfo = data.data;
+ } else {
+ this.$store.commit("elAlertShow", {
+ elAlertShow: true,
+ elAlertText: data.msg,
+ });
+ }
+ this.$store.state.user = this.user;
},
- dialogClose () {
- this.$store.commit('dialogVisible', false)
- }
- }
-}
+ footColse() {
+ this.$store.commit("dialogVisible", true);
+ },
+ dialogClose() {
+ this.$store.commit("dialogVisible", false);
+ },
+ },
+};
</script>
<style lang="less" scoped>
-
-/deep/ .van-list__finished-text{
+/deep/ .van-list__finished-text {
line-height: 1.925926rem !important;
}
-/deep/ .van-list__error-text{
+/deep/ .van-list__error-text {
line-height: 1.925926rem !important;
}
#app {
@@ -153,8 +174,8 @@
overflow-y: auto;
}
&.red-theme {
- background: rgb(241,242,246);
- color:#000;
+ background: rgb(241, 242, 246);
+ color: #000;
/deep/.mint-header {
background: none;
.mint-header-title {
@@ -169,24 +190,23 @@
color: #000;
}
/deep/.navs_content {
- background: #fff!important;
+ background: #fff !important;
}
/deep/.fo_content {
- background: #fff;
+ background: #fff;
}
- /deep/.news-tab{
+ /deep/.news-tab {
background: #fff;
}
/deep/.mint-tab-item-label {
color: #000;
- font-size: .26rem;
-
+ font-size: 0.26rem;
}
- /deep/.top_title{
+ /deep/.top_title {
color: #000;
}
- /deep/.titContent{
- color:#000;
+ /deep/.titContent {
+ color: #000;
}
/deep/.mint-navbar {
background: #fff;
@@ -195,14 +215,15 @@
background: #fff;
border: none;
}
- /deep/.footCss{
+ /deep/.footCss {
background: #fff;
}
- /deep/.newDetail-tits{
+ /deep/.newDetail-tits {
color: #aaa;
}
- /deep/.van-skeleton__row, .van-skeleton__title{
- background-color: #fff!important;
+ /deep/.van-skeleton__row,
+ .van-skeleton__title {
+ background-color: #fff !important;
}
}
&.black-theme {
@@ -211,12 +232,12 @@
background: rgb(33, 33, 43);
/deep/.navs_content {
- background: #272733;
+ background: #272733;
}
/deep/.fo_content {
- background: #272733;
+ background: #272733;
}
- /deep/.news-tab{
+ /deep/.news-tab {
background: #272733;
}
/deep/.mint-navbar {
@@ -224,24 +245,24 @@
}
/deep/.mint-tab-item-label {
color: #fff;
- font-size: .26rem;
-
+ font-size: 0.26rem;
}
- /deep/.titContent{
- color:#000;
+ /deep/.titContent {
+ color: #000;
}
- /deep/.mint-tab-container {}
+ /deep/.mint-tab-container {
+ }
/deep/.mint-tab-item {
background: #272733;
}
/deep/.van-swipe-item {
- color: #000;
+ color: #000;
}
- /deep/.footCss{
+ /deep/.footCss {
background: rgb(33, 33, 43);
}
- /deep/.newDetail-tits{
+ /deep/.newDetail-tits {
color: #999;
}
}
@@ -253,28 +274,27 @@
.mint-search-list {
position: relative !important;
}
-.topLeft{
-
+.topLeft {
}
-/deep/.el-alert{
- width: 75%!important;
- height: 1.1rem!important;
- position: absolute!important;
- top: 0!important;
- bottom: 0!important;
- left: 0!important;
- right: 0!important;
- margin: auto!important;
- font-size: 0.36rem!important;
+/deep/.el-alert {
+ width: 75% !important;
+ height: 1.1rem !important;
+ position: absolute !important;
+ top: 0 !important;
+ bottom: 0 !important;
+ left: 0 !important;
+ right: 0 !important;
+ margin: auto !important;
+ font-size: 0.36rem !important;
}
-/deep/.el-alert__title{
- font-size: 0.36rem!important;
+/deep/.el-alert__title {
+ font-size: 0.36rem !important;
}
-/deep/.el-icon-close::before{
- display: none;
+/deep/.el-icon-close::before {
+ display: none;
}
-/deep/.icon-icon_A::before{
- font-size: 0.6rem!important;
+/deep/.icon-icon_A::before {
+ font-size: 0.6rem !important;
}
</style>
diff --git a/src/axios/api.js b/src/axios/api.js
index 6087c8a..c1abaf5 100644
--- a/src/axios/api.js
+++ b/src/axios/api.js
@@ -557,3 +557,11 @@
export function selCzFn(options) {
return post("/user/pay/flyPay.do", options);
}
+// 充值
+export function positionzx(options) {
+ return post("/user/option/list.do", options);
+}
+// 充值
+export function getMoenyLog(options) {
+ return post("/user/getMoenyLog.do", options);
+}
diff --git a/src/locales/en.js b/src/locales/en.js
index 8b23e15..6a5b7c6 100644
--- a/src/locales/en.js
+++ b/src/locales/en.js
@@ -965,5 +965,9 @@
韩股總資產: "Total assets of Korean stocks",
"上傳憑證:": "Upload voucher:",
从: "from",
+ 密码修改成功: "Password modification successful",
+ 劃轉记录: "Transfer Record",
+ 馬股账户: "Horse stock account",
+ 美股账户: "US stock account",
到: "to"
};
diff --git a/src/locales/hanyu.js b/src/locales/hanyu.js
index 7acc1d5..0c65b70 100644
--- a/src/locales/hanyu.js
+++ b/src/locales/hanyu.js
@@ -526,5 +526,9 @@
韩股總資產: "한국 주식 총자산",
"上傳憑證:": "자격 증명 업로드:",
从: "부터",
- 到: "에"
+ 到: "에",
+ 密码修改成功: "암호 수정 성공",
+ 劃轉记录: "레코드 스왑",
+ 馬股账户: "마주 계좌",
+ 美股账户: "미국 주식 계좌"
};
diff --git a/src/locales/india.js b/src/locales/india.js
index 3ee2d26..3b065ad 100644
--- a/src/locales/india.js
+++ b/src/locales/india.js
@@ -955,5 +955,9 @@
韩股總資產: " कोरियाई शेयरों की कुल संपत्ति",
"上傳憑證:": " प्रमाणपत्र अपलोड करें",
从: "से",
- 到: "को"
+ 到: "को",
+ 密码修改成功: "पासवर्ड सफलतापूर्वक बदला गया",
+ 劃轉记录: "स्थानांतरण रिकॉर्ड",
+ 馬股账户: "मलेशियाई स्टॉक खाता",
+ 美股账户: "यूएस स्टॉक खाता"
};
diff --git a/src/locales/riyu.js b/src/locales/riyu.js
index 821760c..94b9099 100644
--- a/src/locales/riyu.js
+++ b/src/locales/riyu.js
@@ -526,5 +526,9 @@
韩股總資產: " 韓国株の総資産",
"上傳憑證:": " 証明書をアップロードします",
从: "から",
- 到: "に"
+ 到: "に",
+ 密码修改成功: "パスワードの変更に成功しました",
+ 劃轉记录: "かいてんきろく",
+ 馬股账户: "馬株口座",
+ 美股账户: "米株口座"
};
diff --git a/src/locales/taiyu.js b/src/locales/taiyu.js
index 877cd7a..fdaad59 100644
--- a/src/locales/taiyu.js
+++ b/src/locales/taiyu.js
@@ -525,5 +525,9 @@
韩股總資產: " สินทรัพย์รวมของหุ้นเกาหลี",
"上傳憑證:": " อัพโหลดใบรับรอง",
从: "จาก",
- 到: "ถึง"
+ 到: "ถึง",
+ 密码修改成功: "แก้ไขรหัสผ่านสำเร็จ",
+ 劃轉记录: "บันทึกการเดินทาง",
+ 馬股账户: "บัญชีหุ้นม้า",
+ 美股账户: "บัญชี MeiShar"
};
diff --git a/src/locales/tw.js b/src/locales/tw.js
index bc9d586..85167fa 100644
--- a/src/locales/tw.js
+++ b/src/locales/tw.js
@@ -1192,5 +1192,9 @@
韩股總資產: " 韩股總資產",
"上傳憑證:": " 上傳憑證:",
从: "從",
- 到: "到"
+ 到: "到",
+ "密码修改成功": "密碼修改成功",
+ "劃轉记录": "劃轉記錄",
+ "馬股账户": "馬股帳戶",
+ "美股账户": "美股帳戶"
};
diff --git a/src/locales/zh.js b/src/locales/zh.js
index 286ee9b..2db832e 100644
--- a/src/locales/zh.js
+++ b/src/locales/zh.js
@@ -358,7 +358,7 @@
hj230: "对公转账",
hj231: "充值成功",
hj232: "充值失败",
- hj233: "取消充值",
+ 审核中: "取消充值",
hj234: "订单号",
hj235: "loading...",
hj236: "已全部加载",
@@ -523,4 +523,11 @@
"上傳憑證:": "上傳憑證:",
从: "从",
到: "到",
+
+ //
+
+ 密码修改成功: "密码修改成功",
+ 劃轉记录: "劃轉记录",
+ 馬股账户: "馬股账户",
+ 美股账户: "美股账户"
};
diff --git a/src/page/home/home.vue b/src/page/home/home.vue
index 4294ee2..e83682a 100644
--- a/src/page/home/home.vue
+++ b/src/page/home/home.vue
@@ -35,15 +35,15 @@
<ul class="menu" style="border-bottom: 0px">
<!----><!---->
<li @click="$router.push('/recharge')">
- <a class="link"
- ><div class="icon">
+ <div class="link">
+ <div class="icon">
<img
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAK2SURBVHgB7ZpPbtNAFMa/SYoUNuCwIpUA9wbpCSgrtr1BWLHmBoUtAqndsKWcANYIqXCCBi4QIyGCkJC9QkEQD++5aeU6k3r8Z8ZuOj9plPbVU8/XN/PmzZsCDofD4XA4HA6HwzS71EJqsmVtQm0EA0wAyJa2EJoI6CPRbrS0dHDF2EB5iswOE5SacVfOw07wulNlDdfKJJTeNdrrux3clxJD8oRPi9Tjn1GwiGIgEALjeYxPf4F3W/1yIaTKtlRL0JqG0p8DTzYERqcCdRh4S6/XGo/bhy8rPFN0nlufoCVw9C2Uw7zH1ilK+12Bt3metha0OAr3BI55YKiBbNCaRmfDC2YS2xTFI1U/ax6+3sEeahKbg794lxIrHk6mmUiOl7VxgYdPkNga9EWQ7WfFw5Q0POXPl+9/wxa8t6vsxgWHtHY7lFSw2BcfZrAFv5PjxpIdhiGJu7bFMjThk1Q1azeeSz88iHa+fI/RBJyX08dh2mbWw49/7ZHYERpC0CFkyQZ9ikVpEotFsKrC9PktpT03SiMZcLTpiX7aZsbDNYmtilCcvuoX3BKxq6hXcMvE8pTO2oxnWj8ieUwdc08xRdFZw/TE+LYnttM24/vwXOIzGkJSSShrMy6YXvARDcH1r6zNuOAeFdyEYi3ZgIt9WZtxwX06l8YSb2AbgUPVmdjKaYk8vA/bxHimMlfJpbWrmIOSNeSyUF37YFNxFmbW8eYh+HNBLlBEcCOBR4c7d/3TLwOadw9W1bOK8ggt/C+AGzc9uf/qtaTEY/JTo0zbyB3vosZ1hPqKeolnByvWbZpG1jAPrEelVA4uqAj/Di7L6ohlmr7FT7zNRT6uQen24UTmH+3tXdrudIWm+raDpFBPNSgSv0ODGtIf4N6561KJr/T9mFPV2cl1aWuDqMPhcDgcDjX/AeVdQUXCe3p2AAAAAElFTkSuQmCC"
alt=""
/>
</div>
- <div class="name">{{ $t("hj256") }}</div></a
- >
+ <div class="name">{{ $t("hj256") }}</div>
+ </div>
</li>
<!-- RechargeSure -->
<li @click="$router.push('/RechargeSure')">
@@ -81,40 +81,40 @@
</div>
</li>
<li @click="$router.push('/setting')">
- <a href="/help" class="link"
- ><div class="icon">
+ <div class="link">
+ <div class="icon">
<img
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAUzSURBVHgB7ZrPbxtFFMe/47VV51DHIQk4pSTTChA0ipoeQIgLTlUhRBEEJCSEIDGRQClCariA6KEN3DiRSAjKqeGKQGn/grq3QpHiAwJxyqakjQUBGyKklMb7eLOuYXe9ib3eHwZpPxd7x+Od/e578+a92QViYmJiYmJiuoWATwZy8hwEzYGQRRgQSiSoBIMu/frzTxfhE1+C+3P3FQQSFxARBOg1iIlqWdfRIQn4QEBIRAhbRyaJVvpzchod4lMw6YgagSyPuzQ4KMfRAUn4wBCoCrI1Xdksr+URIBwj8gJGgSBsVjU0Ws5m5bFqVa/CA74snCKtZD1m7SNu/QaG5NxgbmR1IDdyOZuTEh7YLOvFX8rXCxDibWu76d77jAI84kvwdhpV50U4+5gCiT6i+m/5JBkL6IDNDX2Bo/WirVGI5+ARX4KrOruTsIt2WjDt+A8JcRQdUtuXmHc05dmtPS2HvgTfQbcepGr29djNC7xeZAPzBgNrtvFSzV61F74FE8h2AYZWs0XPIC7SwaptfG2nuxYWJJouwMyULDhvSpT4FsyZlm49Jrhaz9aH70DXBPtahxWCalWy3DfhEpQSRCWyZrECvc4+qxXKpoBJLYEniDDOZ5R887L17qgafNOEQOnkk3l5fU1Hp3gWrKJwUhiTIKO0WV4vatCKO7BlH/n+3PAFYZm3fLHSnrSLfOPbRoVkDZhLCkybAqme4FvPqNq5bZy/jN99Tw6RCa6LpRWY81TjLOjgRJkTA04oivxzvtGPc+yC9X/OCkVFamXRngTOsTXnNNgFemH+gw+nT774culQn2gr4/I0h1Oo5a1lILuyme4lIV4Tznnagr+2fl9VYuGTYXm4kBZYUZ7STv8gojTYyrrGZVu7ol+ZnkEm0xtk/SzZbS6vV6hlMPQdtBqU6zXqIZXs86zNu/U5Mjomn3n2helXWXAISE1gmS09MdQn9N06BSa4gUr2+aPobFdzVrkewsW0NI91bLc5HYhLt4MKUICvDKtd5J2xXIlEsAooQQSodlFj7RbEIhHM6/A8Ikat7W7toQuu8NxNcFKBiFFjqrjR1I6Q2eZ0EV2Al0gzVXW2hy7YsGRgUaPycmdb6IJ5bex4h8MvvMHYlIhEEbQkuoThMnboghslXjcQLmNHlnj8VwhdsCre0SXIZewoLKyjSyRcxg68ePiH2Q2pPr67ubOW6UnsWrb19ghk0r6f2rpCvCXkbAtH8Ou/LfPzXHPRP7HwR8vuX81m8Pjh4C+lZuCKsy14l56tcIlGnrKrL769hTC4DTQ9QA9e8Pk+nbcui+12V+781GgKgSOw5FYTh+PSn9010ZjDismxdPbM0xnX4r+XBWd6QpjDBt53aw4vaJ0f0htflV99UqFF3lc+DZ/8+MP3tuOHHj7S1Ifr4cUDu2zzRLfjUa+Jdfjg0vKX2Nr6NwgeuPcg9u/POLvpt/aovyMT3KfmE2ECHYq+eWMdn35sf7T8yKOPObvpaoy99qj9vePh8RmR2k3UCM/Do+hr31zFzNRLuMGirZx6y7apYZ57rx1LhadokZUym9ymirWNzIunIjzwwP0PytGxo/lW/ZT7Xvv6qs2NG7zJYi2CTcu2EqvwHB4Hc8NLzhdMokZt5L/73lnzuwpQas62+6jFs2Bl5dQ2rVCX6tx3zpzF1NRMdYfwOT+TWmjHqlY6WgDroo2FyCwtUD1+/MTaG6dOl0ZHx4q8T3axXYs2n8oH6l2NZBrjAjWJsNC00u0/oXt9HysmJiYmJuZ/wN/6Zaai9yOqrAAAAABJRU5ErkJggg=="
alt=""
/>
</div>
- <div class="name">{{ $t("用戶手冊") }}</div></a
- >
+ <div class="name">{{ $t("用戶手冊") }}</div>
+ </div>
</li>
<li @click="$router.push('/setting')">
- <a href="/platform" class="link"
- ><div class="icon">
+ <div class="link">
+ <div class="icon">
<img
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAUQSURBVHgB7ZlPaBxVHMe/k9SYUk13EdI2WJnoUSgR/4AhkigqggerQgNeujnEqJckNIf24m68iKBke/FPKyQePHgoQfEgVEyLsUIRUgShHmRXg1kJ2Nmk0iTW7PP3m90xuzszb97szGz+OB94NH0z89583+/3e/N7vwViYmJiYmJi/k/o1OaoTVf+3rMkqGWoibo2hT0ofIyaAbtYq+WoncQeYABl9xWKjYX3YBeiU5uFXFhOcn3XxLcVp27uy/3pyn2o/C2zeAY7mONozGp65dquie8ByOOUr/UrjMOxK1uwBWyzm7NbZuH+guy+o/BPCjswvjOQf2bS2IrTRtAhj29ekDE0gQHIV38O4a6+jm2Ob9nE/YiOFOQLHRlhxamNnCESBUOkCitieqkoFgpFYVATlWZw31tvT4mj9+mBBGvwR/3gSWpFBIBE6qIFo5owregZ94u/5fHYse76bmUdLQiGXexrho7hZc/0kC26ZIgsvWqOxPIGVCP2yi+3sbpmNx5Z2HEsKBJUsB1RSkNrXcDIn9OmeAfYqu0aFjTNHg6LNzYxNHMTL390E+9evAUVeCweU+XeoC5d+zwLLJVyNX0lTOLjezLWf5cN0bOpmXm2Xn0bW/Pct2s4P7+B1fWtab4e68CDXftqhjySqJ2WYpz/yW8KvHhvUrsGCeEKHrkxByEG7I9peWqZwjuJy/SE7dP11U9/480vbmHRKNme7H3gDlwYubumz0Uwk6c3fPJIkudzJlyXLv0zbk5qg92tNPP02ZUcuaxu9XKcvvThKoY++ctV7Kln9sMHOi+oLKbDtbDF8HKK4jgNlyRk8OE2dFDgnf9uw/Fxvjbx7H4M97U7XpdYuPxSGrKHD2rjTs9GI5hJFXS0tfGm5CsFnCCLDj/Rbop2w0swym/a7eTa0Qm2IOFPHTsw983127rsNnbf7IkDOJr0jjIVwYKs3OVg5cgFGxRP6xqMz37YwHsX12yxygKzg3eh9/59UEVJMOUIG2Tl7qRWkyuE/x2uY71cGMDgI3fi6hn7XsJ9fsSqQkuSaG/FC/X9kQumGaI8VMgR5umuhsgFU9q4bVVIp7kjFyy2sSxTcpg7epcOVvkIhOYwdzME7yiaITjQeTkIwmHuoIJ1rxs0x9y6cVZX1NevxWHuoIL55CNNHSnjkR7X/HDugywetVc7fM0dhoX550736mEJlxGQK/OXzLJO+sy4LwuTe12yd/kjhXK9WHe5PkNtElWuVEkteUHMHZOPhNVwDu0G169G30jh+3nnNeNyT/b9afT2DThepzpCsj61bBR2Y1nZNIOqRfljRUxVVSA928+/GuLU6bTb2KLjYEJMnM7Ix6HqJ0JGh2KRnOtNqmInqRTLgtzGffX1MXNBPMdSrHE1KnzBQ3iPl5UvfDknHu/rdxVKbmveo7JoSzQXmkAKEjfv7Dw0e/XHnO3luO/EKyddhXLhffrTWeVwoJbzU7YNgzTcrW3GZnWcurmvFadK7lsl1suV/e7SqugoC085XbSK6bwLO/Hc88dBP6s4Ft0l5FupTNsZcpnWL3w8s9Wg3eDPC1nd9TMjIe9VnrWIOpfm1ebUaAiSFJPclyyaBW1KvsVy7Yq+tw+piGWitnA1Osq/NNanoplr13/XDx3uSkGdIgmd0Uo4qyrUopmCLXRsZWv/WZ531nauf1FJiCsVlcKBtdsW+RBi5saULq5v4vOwMqiYmJiYmJiY5vEvlMTFZ7VdSzYAAAAASUVORK5CYII="
alt=""
/>
</div>
- <div class="name">{{ $t("平臺") }}</div></a
- >
+ <div class="name">{{ $t("平臺") }}</div>
+ </div>
</li>
<li @click="$router.push('/transferIndex')">
- <a href="/transferIndex" class="link"
- ><div class="icon">
+ <div class="link">
+ <div class="icon">
<img
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAQvSURBVHgB7Zq/TxRBFMe/gyZCI4cmICSa5R8wWGiiIeEoTEwkETWxsOFsSKyAQAxWd9qY2ICVCQ00lgZN7MHEWNgcsdLqzl+cMcE7rM5Cxvf2bvHY25mdvds9DtxP8nLL7OzsfufN25l5CxATExMTExPzP2GRrZEtV48PLQmyDJl02QIOofBpsiLqxTqWI5vAISCJyvCVhsbCh3AAschWoReW05w/MPHtxKlq+HJ5uloP1WOdxzNoY8bRmNes6rkDE99J6OOUz40YtMOxq+uwLPZ5mPOwXIT6AXn4TiE4KbRhfGegn2bS+BenjWBBH9/cIdNoAUnoe38N4fa+hX2Ob92NRxAdKeg7OjIaj9PJrYzudK4oE4WiTBW25fJmSWYLJVkkk1UrctnDRwvy9BmrKcECwXA33kNW8r2qIjaNpZN19yORluzAlJC2F33j/svnPC6cHXQXG+s4iuYwF+uCPXqMX37CFmsMeRhebQ32CP9nIToQJQqx7NVOgawQDU1bdXBb3KZJ3egEK8T+KMoh8mr4b3Nq8yu37UOzMex9vUJsUAqPT3iW9yf23pZeas5hnp5wtL9H5KEgfA+HJLZBbE9zTKsqhCt4f8U6WF0d6mcIT3B7iLWREtOql1g0MeyCFxOozLOhoInhXaTA4kC3mHGXRy64SPFUFvaKLDSMBNMa4bfEoHt+jnYeJsqVxEDLoS5JdB7BNY/yQPh7eHIr1MX83OUuzJLVYuJhG4GV/m5xp7Yocg83g5fYINCStW4h0raCmxXL7His5tpScBhiGeGx+2p2t1SPawvI+1ld9f57P/f8HZZYFa3wsNG2jQlbrPS4d7OCLb8Kghf0BpiK/bVt3H8sLu9R1hS8zdNmD2nFswEfTMUuPV3E+fpsR6B7h+Fh/tzJCbYJzxo7eK1rwETs2zfrdlonfX8mkIdpeK27i4IK5kk871Fuka3AI0neCbyAJo51Yjl/dWMsiZtjo/axG073PH+1pry+/AcvERI8jHVp0wxqhH/flgs1GUhf+/ipKGfn06q25fHuhJybz+jb4Q1LyFgwTJLzVs1U7ANKxbIgVbuTd6ftDvFtyzDH1ajwrI/wIT8v09CUF4dHlEIvDSftOiadtkn3QgtIQTPMe3v7Vt+9z9U9HJfduj2hFMqJ9+Vnq8bhQJbTpXiiIA21t+3YrI1T1fB14tRo+NaI9RvKQbeHplioCE95nXSS6V5vXubK1XHQZxXPpLuG/BGJ6709QjvvRyXYgbdn/L8elkllilOQ1+3fgOT90rMOUa+lubd5aaSav21o+JJHF+05NahYzl2VJc6ZiGWi9nAtFipfGt1L0czGh29W36mBFMwpkdAVsYMnpkIdWinYwUIlvvl31/P8Zu3k/FcHRjhTISvnnbdtiTch9tqYlou8gjL9eBYTExMTExPTPvwFuTt0PD0I6k4AAAAASUVORK5CYII="
alt=""
/>
</div>
- <div class="name">{{ $t("hj245") }}</div></a
- >
+ <div class="name">{{ $t("hj245") }}</div>
+ </div>
</li>
<li @click="settingDialog = true">
- <a href="#" class="links">
+ <div class="links">
<div class="icon">
<img
src="data:image/png;base64,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"
@@ -125,7 +125,7 @@
<div class="name" style="margin-top: 2px">
{{ $t("yy") }}
</div>
- </a>
+ </div>
</li>
</ul>
<van-popup
diff --git a/src/page/kline/components/kLine.vue b/src/page/kline/components/kLine.vue
index 531752d..b5627e3 100644
--- a/src/page/kline/components/kLine.vue
+++ b/src/page/kline/components/kLine.vue
@@ -56,7 +56,7 @@
</div>-->
<div class="periodWrap kline_periodWrap" ref="kline_periodWrap">
<!-- DWM 分 -->
- <div class="btnGroup" style="position:relative">
+ <div class="btnGroup" style="position: relative">
<div
class="btn2"
v-for="(item, index) in KLinePeriodMenu"
@@ -64,7 +64,7 @@
:key="item.ID"
@click="OnClickKLinePeriodMenu(index, item, 'kline')"
>
- <!-- <div
+ <!-- <div
class="btn2"
v-for="(item, index) in KLinePeriodMenu"
:class="{ active: KLinePeriodIndex == index }"
@@ -73,39 +73,59 @@
> -->
<span>{{ item.Name }}</span>
</div>
- <div class="btn2" @click="isShow ? isShow = false : isShow = true">
+ <div
+ class="btn2"
+ @click="isShow ? (isShow = false) : (isShow = true)"
+ >
<div class="btn2">
<!-- :class="KLinePeriodIndex === index ? 'active' : ''" -->
<img src="../../../assets/img/options.png" alt />
</div>
</div>
- <div style="position:absolute;right: 0;top: 25px;;z-index: 99;" v-if="isShow == true">
+ <div
+ style="position: absolute; right: 0; top: 25px; z-index: 99"
+ v-if="isShow == true"
+ >
<div
class="btnGroup"
v-show="IsShowRightMenu"
- style="display: flex;flex-direction: column;"
+ style="display: flex; flex-direction: column"
>
<div
class="btn"
:class="{ active: KLineRightIndex == index }"
v-for="(item, index) in KLineRightMenu"
:key="item.ID"
- style="padding:10px"
+ style="padding: 10px"
@click="OnClickKLineRightMenu(index, item)"
- >{{ item.Name }}</div>
+ >
+ {{ item.Name }}
+ </div>
<div
class="btn"
- v-for="(item) in KLineIndexMenu"
+ v-for="item in KLineIndexMenu"
:key="item.ID"
- style="padding:10px"
+ style="padding: 10px"
@click="ChangeKLineIndex(item)"
- >{{ item.Name }}</div>
+ >
+ {{ item.Name }}
+ </div>
</div>
</div>
</div>
</div>
- <div class="hqchart" id="hqchart_minute" ref="kline" v-show="chartType == 'minute'"></div>
- <div class="hqchart" id="hqchart_kline" ref="kline2" v-show="chartType == 'kline'"></div>
+ <div
+ class="hqchart"
+ id="hqchart_minute"
+ ref="kline"
+ v-show="chartType == 'minute'"
+ ></div>
+ <div
+ class="hqchart"
+ id="hqchart_kline"
+ ref="kline2"
+ v-show="chartType == 'kline'"
+ ></div>
<!-- <div class="statementWrap" ref="kline_statementWrap">
郑重声明:本页面所有数据来自互联网或自动生成的测试数据,仅用于学习HQChart图形库使用,不构成任何投资价值信息。如使用者依据本网站提供的信息、资料及图表进行金融、证券等投资所造成的盈亏与本网站无关。
@@ -121,25 +141,25 @@
</template>
<script>
-import _ from 'lodash'
-import HQChart from 'hqchart'
-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 _ from "lodash";
+import HQChart from "hqchart";
+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'
// import '../jscommon/umychart.resource/font/iconfont.css'
// var HQChart={ Chart:Chart };
HQChart.Chart.MARKET_SUFFIX_NAME.GetMarketStatus = function (symbol) {
- return 2
-} // 一直交易
-function DefaultData () {}
+ return 2;
+}; // 一直交易
+function DefaultData() {}
DefaultData.GetMinuteOption = function () {
var option = {
- Type: '分钟走势图', // 创建图形类型
+ Type: "分钟走势图", // 创建图形类型
// Type:'分钟走势图横屏',
Language: 1, // 英文 'EN' 简体中文:'CN' 繁体中文:"TC"
// 窗口指标
@@ -148,7 +168,7 @@
// { Index: "KDJ", Modify: false, Change: false, Close: false }
],
- Symbol: 'AAPL.usa',
+ Symbol: "AAPL.usa",
IsAutoUpdate: true, // 是自动更新数据
AutoUpdateFrequency: 20000,
DayCount: 1, // 1 最新交易日数据 >1 多日走势图
@@ -159,7 +179,7 @@
MinuteLine: {
IsDrawAreaPrice: true, // 是否画价格面积图
- IsShowAveragePrice: true // 不显示均线
+ IsShowAveragePrice: true, // 不显示均线
},
// 边框
@@ -169,7 +189,7 @@
Top: 0,
Bottom: 1,
AutoRight: { Blank: 10, MinWidth: 40 },
- AutoLeft: { Blank: 10, MinWidth: 40 }
+ AutoLeft: { Blank: 10, MinWidth: 40 },
},
// 子框架设置
@@ -179,769 +199,769 @@
// 扩展图形
ExtendChart: [
// {Name:'MinuteTooltip' } //手机端tooltip
- ]
- }
+ ],
+ };
- return option
-}
+ return option;
+};
DefaultData.GetMinuteIndexMenu = function () {
var data = [
- { Name: 'MACD', ID: 'MACD', WindowIndex: 2 },
- { Name: 'KDJ', ID: 'KDJ', WindowIndex: 2 },
- { Name: 'DMI', ID: 'DMI', WindowIndex: 2 },
- { Name: 'ROC', ID: 'ROC', WindowIndex: 2 }
- ]
+ { Name: "MACD", ID: "MACD", WindowIndex: 2 },
+ { Name: "KDJ", ID: "KDJ", WindowIndex: 2 },
+ { Name: "DMI", ID: "DMI", WindowIndex: 2 },
+ { Name: "ROC", ID: "ROC", WindowIndex: 2 },
+ ];
- return data
-}
+ return data;
+};
DefaultData.GetKLineIndexMenu = function () {
var data = [
- { Name: 'MA', ID: 'MA', WindowIndex: 0 },
- { Name: 'BOLL', ID: 'BOLL', WindowIndex: 0 },
- { Name: 'MACD', ID: 'MACD', WindowIndex: 1 },
- { Name: 'KDJ', ID: 'KDJ', WindowIndex: 1 },
- { Name: 'DMI', ID: 'DMI', WindowIndex: 1 },
- { Name: 'ROC', ID: 'ROC', WindowIndex: 1 }
- ]
+ { Name: "MA", ID: "MA", WindowIndex: 0 },
+ { Name: "BOLL", ID: "BOLL", WindowIndex: 0 },
+ { Name: "MACD", ID: "MACD", WindowIndex: 1 },
+ { Name: "KDJ", ID: "KDJ", WindowIndex: 1 },
+ { Name: "DMI", ID: "DMI", WindowIndex: 1 },
+ { Name: "ROC", ID: "ROC", WindowIndex: 1 },
+ ];
- return data
-}
+ return data;
+};
DefaultData.GetTestSymbolMenu = function () {
// 品种代码规则 ${东方财富品种代码}_${东方财富市场}.${HQChart内部市场后缀}
var data = [
{
- Title: '美股',
- Icon: '',
+ Title: "美股",
+ Icon: "",
Sub: [
{
- Name: '网易',
- Code: 'NTES_105.usa'
+ Name: "网易",
+ Code: "NTES_105.usa",
},
{
- Name: '微软',
- Code: 'MSFT_105.usa'
+ Name: "微软",
+ Code: "MSFT_105.usa",
},
{
- Name: '亚马逊',
- Code: 'AMZN_105.usa'
+ Name: "亚马逊",
+ Code: "AMZN_105.usa",
},
{
- Name: '人人网',
- Code: 'RENN_106.usa'
+ Name: "人人网",
+ Code: "RENN_106.usa",
},
{
- Name: '滴滴',
- Code: 'DIDI_106.usa'
+ Name: "滴滴",
+ Code: "DIDI_106.usa",
},
{
- Name: '阿里巴巴',
- Code: 'BABA_106.usa'
+ Name: "阿里巴巴",
+ Code: "BABA_106.usa",
},
{
- Name: '知乎',
- Code: 'ZH_106.usa'
+ Name: "知乎",
+ Code: "ZH_106.usa",
},
{
- Name: '道琼斯',
- Code: 'DJIA_100.usa'
+ Name: "道琼斯",
+ Code: "DJIA_100.usa",
},
{
- Name: '标普500',
- Code: 'SPX_100.usa'
+ Name: "标普500",
+ Code: "SPX_100.usa",
},
{
- Name: '纳斯达克',
- Code: 'NDX_100.usa'
- }
- ]
+ Name: "纳斯达克",
+ Code: "NDX_100.usa",
+ },
+ ],
},
{
- Title: '沪深A股',
- Icon: '',
+ Title: "沪深A股",
+ Icon: "",
Sub: [
{
- Name: '浦发银行',
- Code: '600000_1.sh'
+ Name: "浦发银行",
+ Code: "600000_1.sh",
},
{
- Name: '东方财富',
- Code: '300059_0.sz'
+ Name: "东方财富",
+ Code: "300059_0.sz",
},
{
- Name: '上证指数',
- Code: '000001_1.sh'
+ Name: "上证指数",
+ Code: "000001_1.sh",
},
{
- Name: '深证成指',
- Code: '399001_0.sz'
- }
- ]
+ Name: "深证成指",
+ Code: "399001_0.sz",
+ },
+ ],
},
{
- Title: '北交所',
- Icon: '',
+ Title: "北交所",
+ Icon: "",
Sub: [
{
- Name: '凯添燃气',
- Code: '831010_0.bj'
+ Name: "凯添燃气",
+ Code: "831010_0.bj",
},
{
- Name: '驱动力',
- Code: '838275_0.bj'
+ Name: "驱动力",
+ Code: "838275_0.bj",
},
{
- Name: '齐鲁华信',
- Code: '830832_0.bj'
+ Name: "齐鲁华信",
+ Code: "830832_0.bj",
},
{
- Name: '苏轴股份',
- Code: '430418_0.bj'
- }
- ]
+ Name: "苏轴股份",
+ Code: "430418_0.bj",
+ },
+ ],
},
{
- Title: 'ETF基金',
- Icon: '',
+ Title: "ETF基金",
+ Icon: "",
Sub: [
{
- Name: '50ETF基金',
- Code: '510800_1.sh'
+ Name: "50ETF基金",
+ Code: "510800_1.sh",
},
{
- Name: '上证180ETF',
- Code: '510180_1.sh'
+ Name: "上证180ETF",
+ Code: "510180_1.sh",
},
{
- Name: '恒生ETF',
- Code: '159920_0.sz'
+ Name: "恒生ETF",
+ Code: "159920_0.sz",
},
{
- Name: '创业板50ETF',
- Code: '159949_0.sz'
- }
- ]
+ Name: "创业板50ETF",
+ Code: "159949_0.sz",
+ },
+ ],
},
{
- Title: '港股',
- Icon: '',
+ Title: "港股",
+ Icon: "",
Sub: [
{
- Name: '比亚迪股份',
- Code: '01211_116.hk'
+ Name: "比亚迪股份",
+ Code: "01211_116.hk",
},
{
- Name: '招商银行',
- Code: '03968_116.hk'
+ Name: "招商银行",
+ Code: "03968_116.hk",
},
{
- Name: '汇丰控股',
- Code: '00005_116.hk'
+ Name: "汇丰控股",
+ Code: "00005_116.hk",
},
{
- Name: '长和',
- Code: '00001_116.hk'
+ Name: "长和",
+ Code: "00001_116.hk",
},
{
- Name: '恒生指数',
- Code: 'HSI_100.hk'
- }
- ]
+ Name: "恒生指数",
+ Code: "HSI_100.hk",
+ },
+ ],
},
{
- Title: '外汇',
- Icon: '',
+ Title: "外汇",
+ Icon: "",
Sub: [
{
- Name: '美元兑加元',
- Code: 'USDCAD_119.FOREX'
+ Name: "美元兑加元",
+ Code: "USDCAD_119.FOREX",
},
{
- Name: '美元兑港币',
- Code: 'USDHKD_119.FOREX'
+ Name: "美元兑港币",
+ Code: "USDHKD_119.FOREX",
},
{
- Name: '美元兑欧元',
- Code: 'USDEUR_119.FOREX'
+ Name: "美元兑欧元",
+ Code: "USDEUR_119.FOREX",
},
{
- Name: '欧元兑英镑',
- Code: 'EURGBP_119.FOREX'
+ Name: "欧元兑英镑",
+ Code: "EURGBP_119.FOREX",
},
{
- Name: '美元指数',
- Code: 'UPI_100.ET'
- }
- ]
+ Name: "美元指数",
+ Code: "UPI_100.ET",
+ },
+ ],
},
{
- Title: '上海期货交易所',
- Icon: '',
+ Title: "上海期货交易所",
+ Icon: "",
Sub: [
{
- Name: '沪铜主力',
- Code: 'CUM_113.SHFE'
+ Name: "沪铜主力",
+ Code: "CUM_113.SHFE",
},
{
- Name: '沪锡主力',
- Code: 'SNM_113.SHFE'
+ Name: "沪锡主力",
+ Code: "SNM_113.SHFE",
},
{
- Name: '沪金主力',
- Code: 'AUM_113.SHFE'
+ Name: "沪金主力",
+ Code: "AUM_113.SHFE",
},
{
- Name: '沪镍主力',
- Code: 'NIM_113.SHFE'
+ Name: "沪镍主力",
+ Code: "NIM_113.SHFE",
},
{
- Name: '橡胶主力',
- Code: 'RUM_113.SHFE'
+ Name: "橡胶主力",
+ Code: "RUM_113.SHFE",
},
{
- Name: '螺纹钢主力',
- Code: 'RBM_113.SHFE'
+ Name: "螺纹钢主力",
+ Code: "RBM_113.SHFE",
},
{
- Name: '沪银主力',
- Code: 'AGM_113.SHFE'
+ Name: "沪银主力",
+ Code: "AGM_113.SHFE",
},
{
- Name: '线材主力',
- Code: 'WRM_113.SHFE'
+ Name: "线材主力",
+ Code: "WRM_113.SHFE",
},
{
- Name: '沪铅主力',
- Code: 'PBM_113.SHFE'
+ Name: "沪铅主力",
+ Code: "PBM_113.SHFE",
},
{
- Name: '沪锌主力',
- Code: 'ZNM_113.SHFE'
+ Name: "沪锌主力",
+ Code: "ZNM_113.SHFE",
},
{
- Name: '石油沥青主力',
- Code: 'BUM_113.SHFE'
+ Name: "石油沥青主力",
+ Code: "BUM_113.SHFE",
},
{
- Name: '沪铝主力',
- Code: 'ALM_113.SHFE'
+ Name: "沪铝主力",
+ Code: "ALM_113.SHFE",
},
{
- Name: '燃油主力',
- Code: 'FUM_113.SHFE'
+ Name: "燃油主力",
+ Code: "FUM_113.SHFE",
},
{
- Name: '热轧卷板主力',
- Code: 'HCM_113.SHFE'
+ Name: "热轧卷板主力",
+ Code: "HCM_113.SHFE",
},
{
- Name: '纸浆主力',
- Code: 'SPM_113.SHFE'
+ Name: "纸浆主力",
+ Code: "SPM_113.SHFE",
},
{
- Name: '不锈钢主力',
- Code: 'SSM_113.SHFE'
- }
- ]
+ Name: "不锈钢主力",
+ Code: "SSM_113.SHFE",
+ },
+ ],
},
{
- Title: '上海国际能源交易中心',
- Icon: '',
+ Title: "上海国际能源交易中心",
+ Icon: "",
Sub: [
{
- Name: '原油主力',
- Code: 'SCM_142.SHFE'
+ Name: "原油主力",
+ Code: "SCM_142.SHFE",
},
{
- Name: '20号胶主力',
- Code: 'NRM_142.SHFE'
+ Name: "20号胶主力",
+ Code: "NRM_142.SHFE",
},
{
- Name: '低硫燃油主力',
- Code: 'LUM_142.SHFE'
+ Name: "低硫燃油主力",
+ Code: "LUM_142.SHFE",
},
{
- Name: '国际铜主力',
- Code: 'BCM_142.SHFE'
- }
- ]
+ Name: "国际铜主力",
+ Code: "BCM_142.SHFE",
+ },
+ ],
},
{
- Title: '大连商品交易所',
- Icon: '',
+ Title: "大连商品交易所",
+ Icon: "",
Sub: [
{
- Name: '玉米主力',
- Code: 'CM_114.DCE'
+ Name: "玉米主力",
+ Code: "CM_114.DCE",
},
{
- Name: '豆一主力',
- Code: 'AM_114.DCE'
+ Name: "豆一主力",
+ Code: "AM_114.DCE",
},
{
- Name: '豆二主力',
- Code: 'BM_114.DCE'
+ Name: "豆二主力",
+ Code: "BM_114.DCE",
},
{
- Name: '豆粕主力',
- Code: 'MM_114.DCE'
+ Name: "豆粕主力",
+ Code: "MM_114.DCE",
},
{
- Name: '豆油主力',
- Code: 'YM_114.DCE'
+ Name: "豆油主力",
+ Code: "YM_114.DCE",
},
{
- Name: '棕榈油主力',
- Code: 'PM_114.DCE'
+ Name: "棕榈油主力",
+ Code: "PM_114.DCE",
},
{
- Name: '聚乙烯主力',
- Code: 'LM_114.DCE'
+ Name: "聚乙烯主力",
+ Code: "LM_114.DCE",
},
{
- Name: '聚氯乙烯主力',
- Code: 'VM_114.DCE'
+ Name: "聚氯乙烯主力",
+ Code: "VM_114.DCE",
},
{
- Name: '焦炭主力',
- Code: 'JM_114.DCE'
+ Name: "焦炭主力",
+ Code: "JM_114.DCE",
},
{
- Name: '焦煤主力',
- Code: 'JMM_114.DCE'
+ Name: "焦煤主力",
+ Code: "JMM_114.DCE",
},
{
- Name: '纤维板主力',
- Code: 'FBM_114.DCE'
+ Name: "纤维板主力",
+ Code: "FBM_114.DCE",
},
{
- Name: '胶合板主力',
- Code: 'BBM_114.DCE'
+ Name: "胶合板主力",
+ Code: "BBM_114.DCE",
},
{
- Name: '铁矿石主力',
- Code: 'IM_114.DCE'
+ Name: "铁矿石主力",
+ Code: "IM_114.DCE",
},
{
- Name: '鸡蛋主力',
- Code: 'JDM_114.DCE'
+ Name: "鸡蛋主力",
+ Code: "JDM_114.DCE",
},
{
- Name: '聚丙烯主力',
- Code: 'PPM_114.DCE'
+ Name: "聚丙烯主力",
+ Code: "PPM_114.DCE",
},
{
- Name: '玉米淀粉主力',
- Code: 'CSM_114.DCE'
+ Name: "玉米淀粉主力",
+ Code: "CSM_114.DCE",
},
{
- Name: '乙二醇主力',
- Code: 'EGM_114.DCE'
+ Name: "乙二醇主力",
+ Code: "EGM_114.DCE",
},
{
- Name: '粳米主力',
- Code: 'RRM_114.DCE'
+ Name: "粳米主力",
+ Code: "RRM_114.DCE",
},
{
- Name: '苯乙烯主力',
- Code: 'EBM_114.DCE'
+ Name: "苯乙烯主力",
+ Code: "EBM_114.DCE",
},
{
- Name: 'LPG主力',
- Code: 'PGM_114.DCE'
+ Name: "LPG主力",
+ Code: "PGM_114.DCE",
},
{
- Name: '生猪主力',
- Code: 'LHM_114.DCE'
- }
- ]
+ Name: "生猪主力",
+ Code: "LHM_114.DCE",
+ },
+ ],
},
{
- Title: '郑州商品交易所',
- Icon: '',
+ Title: "郑州商品交易所",
+ Icon: "",
Sub: [
{
- Name: '强麦主力',
- Code: 'WHM_115.CZC'
+ Name: "强麦主力",
+ Code: "WHM_115.CZC",
},
{
- Name: '普麦主力',
- Code: 'PMM_115.CZC'
+ Name: "普麦主力",
+ Code: "PMM_115.CZC",
},
{
- Name: '一号棉花主力',
- Code: 'CFM_115.CZC'
+ Name: "一号棉花主力",
+ Code: "CFM_115.CZC",
},
{
- Name: '白糖主力',
- Code: 'SRM_115.CZC'
+ Name: "白糖主力",
+ Code: "SRM_115.CZC",
},
{
- Name: 'PTA主力',
- Code: 'TAM_115.CZC'
+ Name: "PTA主力",
+ Code: "TAM_115.CZC",
},
{
- Name: '菜油主力',
- Code: 'OIM_115.CZC'
+ Name: "菜油主力",
+ Code: "OIM_115.CZC",
},
{
- Name: '早籼稻主力',
- Code: 'RIM_115.CZC'
+ Name: "早籼稻主力",
+ Code: "RIM_115.CZC",
},
{
- Name: '甲醇主力',
- Code: 'MAM_115.CZC'
+ Name: "甲醇主力",
+ Code: "MAM_115.CZC",
},
{
- Name: '玻璃主力',
- Code: 'FGM_115.CZC'
+ Name: "玻璃主力",
+ Code: "FGM_115.CZC",
},
{
- Name: '菜籽主力',
- Code: 'RSM_115.CZC'
+ Name: "菜籽主力",
+ Code: "RSM_115.CZC",
},
{
- Name: '菜粕主力',
- Code: 'RMM_115.CZC'
+ Name: "菜粕主力",
+ Code: "RMM_115.CZC",
},
{
- Name: '粳稻主力',
- Code: 'JRM_115.CZC'
+ Name: "粳稻主力",
+ Code: "JRM_115.CZC",
},
{
- Name: '晚籼稻主力',
- Code: 'LRM_115.CZC'
+ Name: "晚籼稻主力",
+ Code: "LRM_115.CZC",
},
{
- Name: '硅铁主力',
- Code: 'SFM_115.CZC'
+ Name: "硅铁主力",
+ Code: "SFM_115.CZC",
},
{
- Name: '锰硅主力',
- Code: 'SMM_115.CZC'
+ Name: "锰硅主力",
+ Code: "SMM_115.CZC",
},
{
- Name: '动力煤主力',
- Code: 'ZCM_115.CZC'
+ Name: "动力煤主力",
+ Code: "ZCM_115.CZC",
},
{
- Name: '棉纱主力',
- Code: 'CYM_115.CZC'
+ Name: "棉纱主力",
+ Code: "CYM_115.CZC",
},
{
- Name: '苹果主力',
- Code: 'APM_115.CZC'
+ Name: "苹果主力",
+ Code: "APM_115.CZC",
},
{
- Name: '红枣主力',
- Code: 'CJM_115.CZC'
+ Name: "红枣主力",
+ Code: "CJM_115.CZC",
},
{
- Name: '尿素主力',
- Code: 'URM_115.CZC'
+ Name: "尿素主力",
+ Code: "URM_115.CZC",
},
{
- Name: '纯碱主力',
- Code: 'SAM_115.CZC'
+ Name: "纯碱主力",
+ Code: "SAM_115.CZC",
},
{
- Name: '短纤主力',
- Code: 'PFM_115.CZC'
+ Name: "短纤主力",
+ Code: "PFM_115.CZC",
},
{
- Name: '花生主力',
- Code: 'PKM_115.CZC'
- }
- ]
+ Name: "花生主力",
+ Code: "PKM_115.CZC",
+ },
+ ],
},
{
- Title: '中国金融期货交易所',
- Icon: '',
+ Title: "中国金融期货交易所",
+ Icon: "",
Sub: [
{
- Name: '二债主力',
- Code: 'TS-130130_8.CFE'
+ Name: "二债主力",
+ Code: "TS-130130_8.CFE",
},
{
- Name: '五债主力',
- Code: 'TF-050130_8.CFE'
+ Name: "五债主力",
+ Code: "TF-050130_8.CFE",
},
{
- Name: '十债主力',
- Code: 'T-110130_8.CFE'
+ Name: "十债主力",
+ Code: "T-110130_8.CFE",
},
{
- Name: '上证主力',
- Code: 'IH-070130_8.CFE'
+ Name: "上证主力",
+ Code: "IH-070130_8.CFE",
},
{
- Name: '中证主力',
- Code: 'IC-060130_8.CFE'
+ Name: "中证主力",
+ Code: "IC-060130_8.CFE",
},
{
- Name: '沪深主力',
- Code: 'IF-040130_8.CFE'
- }
- ]
+ Name: "沪深主力",
+ Code: "IF-040130_8.CFE",
+ },
+ ],
},
{
- Title: '芝加哥商业交易所',
- Icon: '',
+ Title: "芝加哥商业交易所",
+ Icon: "",
Sub: [
{
- Name: '小麦当月连续',
- Code: 'ZW00Y_103.CBOT'
+ Name: "小麦当月连续",
+ Code: "ZW00Y_103.CBOT",
},
{
- Name: '迷你小麦当月连续',
- Code: 'XW00Y_103.CBOT'
+ Name: "迷你小麦当月连续",
+ Code: "XW00Y_103.CBOT",
},
{
- Name: '玉米当月连续',
- Code: 'ZC00Y_103.CBOT'
+ Name: "玉米当月连续",
+ Code: "ZC00Y_103.CBOT",
},
{
- Name: '迷你玉米当月连续',
- Code: 'XC00Y_103.CBOT'
+ Name: "迷你玉米当月连续",
+ Code: "XC00Y_103.CBOT",
},
{
- Name: '大豆当月连续',
- Code: 'ZS00Y_103.CBOT'
+ Name: "大豆当月连续",
+ Code: "ZS00Y_103.CBOT",
},
{
- Name: '迷你大豆当月连续',
- Code: 'XK00Y_103.CBOT'
+ Name: "迷你大豆当月连续",
+ Code: "XK00Y_103.CBOT",
},
{
- Name: '豆油当月连续',
- Code: 'ZL00Y_103.CBOT'
+ Name: "豆油当月连续",
+ Code: "ZL00Y_103.CBOT",
},
{
- Name: '豆粕当月连续',
- Code: 'ZM00Y_103.CBOT'
+ Name: "豆粕当月连续",
+ Code: "ZM00Y_103.CBOT",
},
{
- Name: '燕麦当月连续',
- Code: 'ZO00Y_103.CBOT'
+ Name: "燕麦当月连续",
+ Code: "ZO00Y_103.CBOT",
},
{
- Name: '稻谷当月连续',
- Code: 'ZR00Y_103.CBOT'
+ Name: "稻谷当月连续",
+ Code: "ZR00Y_103.CBOT",
},
{
- Name: '小型纳指当月连续',
- Code: 'NQ00Y_103.CBOT'
+ Name: "小型纳指当月连续",
+ Code: "NQ00Y_103.CBOT",
},
{
- Name: '小型标普当月连续',
- Code: 'ES00Y_103.CBOT'
+ Name: "小型标普当月连续",
+ Code: "ES00Y_103.CBOT",
},
{
- Name: '小型道指当月连续',
- Code: 'YM00Y_103.CBOT'
+ Name: "小型道指当月连续",
+ Code: "YM00Y_103.CBOT",
},
{
- Name: '2年美国债当月连续',
- Code: 'TU00Y_103.CBOT'
+ Name: "2年美国债当月连续",
+ Code: "TU00Y_103.CBOT",
},
{
- Name: '5年美国债当月连续',
- Code: 'FV00Y_103.CBOT'
+ Name: "5年美国债当月连续",
+ Code: "FV00Y_103.CBOT",
},
{
- Name: '10年美国债当月连续',
- Code: 'TY00Y_103.CBOT'
+ Name: "10年美国债当月连续",
+ Code: "TY00Y_103.CBOT",
},
{
- Name: '30年美国债当月连续',
- Code: 'US00Y_103.CBOT'
+ Name: "30年美国债当月连续",
+ Code: "US00Y_103.CBOT",
},
{
- Name: '超国债当月连续',
- Code: 'UL00Y_103.CBOT'
- }
- ]
+ Name: "超国债当月连续",
+ Code: "UL00Y_103.CBOT",
+ },
+ ],
},
{
- Title: '纽约商品交易所',
- Icon: '',
+ Title: "纽约商品交易所",
+ Icon: "",
Sub: [
{
- Name: 'NYMEX原油',
- Code: 'CL00Y_102.NYMEX'
+ Name: "NYMEX原油",
+ Code: "CL00Y_102.NYMEX",
},
{
- Name: 'NYMEX铂金',
- Code: 'PL00Y_102.NYMEX'
+ Name: "NYMEX铂金",
+ Code: "PL00Y_102.NYMEX",
},
{
- Name: '迷你原油',
- Code: 'QM00Y_102.NYMEX'
+ Name: "迷你原油",
+ Code: "QM00Y_102.NYMEX",
},
{
- Name: 'NYMEX燃油',
- Code: 'HO00Y_102.NYMEX'
+ Name: "NYMEX燃油",
+ Code: "HO00Y_102.NYMEX",
},
{
- Name: 'NYMEX汽油',
- Code: 'RB00Y_102.NYMEX'
+ Name: "NYMEX汽油",
+ Code: "RB00Y_102.NYMEX",
},
{
- Name: 'NYMEX钯金',
- Code: 'PA00Y_102.NYMEX'
+ Name: "NYMEX钯金",
+ Code: "PA00Y_102.NYMEX",
},
{
- Name: '热轧钢卷',
- Code: 'HR00Y_102.NYMEX'
+ Name: "热轧钢卷",
+ Code: "HR00Y_102.NYMEX",
},
{
- Name: '天然气',
- Code: 'NG00Y_102.NYMEX'
- }
- ]
+ Name: "天然气",
+ Code: "NG00Y_102.NYMEX",
+ },
+ ],
},
{
- Title: '纽约商业期货交易所',
- Icon: '',
+ Title: "纽约商业期货交易所",
+ Icon: "",
Sub: [
{
- Name: 'COMEX白银',
- Code: 'SI00Y_101.COMEX'
+ Name: "COMEX白银",
+ Code: "SI00Y_101.COMEX",
},
{
- Name: '迷你白银',
- Code: 'QI00Y_101.COMEX'
+ Name: "迷你白银",
+ Code: "QI00Y_101.COMEX",
},
{
- Name: '微型黄金',
- Code: 'MGC00Y_101.COMEX'
+ Name: "微型黄金",
+ Code: "MGC00Y_101.COMEX",
},
{
- Name: '迷你黄金',
- Code: 'QO00Y_101.COMEX'
+ Name: "迷你黄金",
+ Code: "QO00Y_101.COMEX",
},
{
- Name: 'COMEX黄金',
- Code: 'GC00Y_101.COMEX'
+ Name: "COMEX黄金",
+ Code: "GC00Y_101.COMEX",
},
{
- Name: 'COMEX铜',
- Code: 'HG00Y_101.COMEX'
- }
- ]
+ Name: "COMEX铜",
+ Code: "HG00Y_101.COMEX",
+ },
+ ],
},
{
- Title: '纽约期货交易所',
- Icon: '',
+ Title: "纽约期货交易所",
+ Icon: "",
Sub: [
{
- Name: '棉花当月连续',
- Code: 'CT00Y_108.NYBOT'
- }
- ]
+ Name: "棉花当月连续",
+ Code: "CT00Y_108.NYBOT",
+ },
+ ],
},
{
- Title: '伦敦金属交易所',
- Icon: '',
+ Title: "伦敦金属交易所",
+ Icon: "",
Sub: [
{
- Name: '综合镍03',
- Code: 'NI-LNKT_109.LME'
+ Name: "综合镍03",
+ Code: "NI-LNKT_109.LME",
},
{
- Name: '综合铜03',
- Code: 'CA-LCPT_109.LME'
+ Name: "综合铜03",
+ Code: "CA-LCPT_109.LME",
},
{
- Name: '综合铝03',
- Code: 'AH-LALT_109.LME'
+ Name: "综合铝03",
+ Code: "AH-LALT_109.LME",
},
{
- Name: '综合锡03',
- Code: 'SN-LTNT_109.LME'
+ Name: "综合锡03",
+ Code: "SN-LTNT_109.LME",
},
{
- Name: '综合锌03',
- Code: 'ZS-LZNT_109.LME'
+ Name: "综合锌03",
+ Code: "ZS-LZNT_109.LME",
},
{
- Name: '综合铅03',
- Code: 'PB-LLDT_109.LME'
- }
- ]
+ Name: "综合铅03",
+ Code: "PB-LLDT_109.LME",
+ },
+ ],
},
{
- Title: '东京商品交易所',
- Icon: '',
+ Title: "东京商品交易所",
+ Icon: "",
Sub: [
{
- Name: '日铂金当月连续',
- Code: 'JPL00Y_111.TOCOM'
+ Name: "日铂金当月连续",
+ Code: "JPL00Y_111.TOCOM",
},
{
- Name: '日白银当月连续',
- Code: 'JAG00Y_111.TOCOM'
+ Name: "日白银当月连续",
+ Code: "JAG00Y_111.TOCOM",
},
{
- Name: '日原油当月连续',
- Code: 'JCO00Y_111.TOCOM'
+ Name: "日原油当月连续",
+ Code: "JCO00Y_111.TOCOM",
},
{
- Name: '日煤油当月连续',
- Code: 'JKE00Y_111.TOCOM'
+ Name: "日煤油当月连续",
+ Code: "JKE00Y_111.TOCOM",
},
{
- Name: '日橡胶当月连续',
- Code: 'JRU00Y_111.TOCOM'
+ Name: "日橡胶当月连续",
+ Code: "JRU00Y_111.TOCOM",
},
{
- Name: '日黄金当月连续',
- Code: 'JAU00Y_111.TOCOM'
+ Name: "日黄金当月连续",
+ Code: "JAU00Y_111.TOCOM",
},
{
- Name: '日汽油当月连续',
- Code: 'JGL00Y_111.TOCOM'
- }
- ]
+ Name: "日汽油当月连续",
+ Code: "JGL00Y_111.TOCOM",
+ },
+ ],
},
{
- Title: '美国洲际交易所',
- Icon: '',
+ Title: "美国洲际交易所",
+ Icon: "",
Sub: [
{
- Name: '布伦特原油当月连续',
- Code: 'B00Y_112.IPE'
+ Name: "布伦特原油当月连续",
+ Code: "B00Y_112.IPE",
},
{
- Name: '重柴油当月连续',
- Code: 'G00Y_112.IPE'
- }
- ]
- }
- ]
+ Name: "重柴油当月连续",
+ Code: "G00Y_112.IPE",
+ },
+ ],
+ },
+ ];
- return data
-}
+ return data;
+};
// k形图
DefaultData.GetKLineOption = function () {
var option = {
- Type: '历史K线图', // 创建图形类型
+ Type: "历史K线图", // 创建图形类型
Language: 1, // 英文 'EN' 简体中文:'CN' 繁体中文:"TC"
// 窗口指标
Windows: [
- { Index: 'MA', Modify: true, Change: false, height: 20 },
+ { Index: "MA", Modify: true, Change: false, height: 20 },
// { Index: 'MA', Modify: true, Modify: false, Change: false, height: 20 },
- { Index: 'ATR', Modify: false, Change: false, Close: false }
+ { Index: "ATR", Modify: false, Change: false, Close: false },
// { Index: 'MACD', Modify: true, Change: true, Close: false }
],
- Symbol: '600015.sh',
+ Symbol: "600015.sh",
IsAutoUpdate: true, // 是自动更新数据
AutoUpdateFrequency: 15000,
IsApiPeriod: true,
@@ -957,7 +977,7 @@
KLineDoubleClick: false, // 双击分钟走势图
IsShowTooltip: true, // 是否显示K线提示信息
DrawType: 0,
- RightSpaceCount: 2
+ RightSpaceCount: 2,
},
CorssCursorInfo: { Left: 0, Right: 1 },
@@ -966,7 +986,7 @@
KLineTitle: {
IsShowName: false, // 不显示股票名称
IsShowSettingInfo: false, // 不显示周期/复权
- isShowDateTime: true
+ isShowDateTime: true,
},
// 边框
@@ -975,7 +995,7 @@
Right: 1, // 右边间距
Top: 0,
Bottom: 15,
- AutoRight: { Blank: 10, MinWidth: 40 }
+ AutoRight: { Blank: 10, MinWidth: 40 },
},
// 子框架设置
@@ -987,68 +1007,68 @@
Custom: [
{
Type: 0,
- Position: 'right'
- }
- ]
+ Position: "right",
+ },
+ ],
},
{ SplitCount: 3, IsShowLeftText: false },
- { SplitCount: 3, IsShowLeftText: false }
+ { SplitCount: 3, IsShowLeftText: false },
],
// 扩展图形
ExtendChart: [
// { Name:'KLineTooltip' }, //手机端tooltip
- ]
- }
+ ],
+ };
- return option
-}
+ return option;
+};
DefaultData.GetMinuteDayMenu = function () {
var data = [
- { Name: '1D', ID: 1 },
- { Name: '2D', ID: 2 },
- { Name: '3D', ID: 3 },
- { Name: '4D', ID: 4 },
- { Name: '5D', ID: 5 }
- ]
+ { Name: "1D", ID: 1 },
+ { Name: "2D", ID: 2 },
+ { Name: "3D", ID: 3 },
+ { Name: "4D", ID: 4 },
+ { Name: "5D", ID: 5 },
+ ];
- return data
-}
+ return data;
+};
DefaultData.GetKLinePeriodMenu = function () {
var data = [
// { Name: i18n.t('hj86'), ID: 3 },分时额外处理
- { Name: i18n.t('hj86'), ID: 4 },
- { 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 }
- ]
+ { Name: i18n.t("hj86"), ID: 4 },
+ { 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
-}
+ return data;
+};
DefaultData.GetKLineRightMenu = function () {
var data = [
- { Name: i18n.t('hj93'), ID: 0 },
- { Name: i18n.t('hj94'), ID: 1 },
- { Name: i18n.t('hj95'), ID: 2 }
- ]
+ { Name: i18n.t("hj93"), ID: 0 },
+ { Name: i18n.t("hj94"), ID: 1 },
+ { Name: i18n.t("hj95"), ID: 2 },
+ ];
- return data
-}
+ return data;
+};
export default {
props: {
hktype: {
type: String,
- default: ''
- }
+ default: "",
+ },
},
- data () {
+ data() {
return {
MinuteDayMenu: DefaultData.GetMinuteDayMenu(),
MinuteDayIndex: 0,
@@ -1063,250 +1083,251 @@
// Symbol:'000001_0.sh',
// 上海 1.sh 深圳0.sz 北京0.bj
- Symbol: '', // HQChart内部编码美股加后缀.usa AAPL.usa
+ Symbol: "", // HQChart内部编码美股加后缀.usa AAPL.usa
Chart: null, // 图形控件 分时图
KLineChart: null, // 图形控件 K线图
NavMenuAry: DefaultData.GetTestSymbolMenu(),
VolChartHeight: 10,
- chartType: 'kline',
- isShow: false
- }
+ chartType: "kline",
+ isShow: false,
+ };
},
- created () {
- const { query } = this.$route
- if (query.if_zhishu === '0') {
- this.Symbol = `${query.code}_${query.sok}.${query.type}`
- } else if ((query.code.indexOf('hk') > -1) && query.if_zhishu !== 0) {
- this.Symbol = `${query.if_zhishu}_${query.sok}.hk`
+ created() {
+ const { query } = this.$route;
+ if (query.if_zhishu === "0") {
+ this.Symbol = `${query.code}_${query.sok}.${query.type}`;
+ } else if (query.code.indexOf("hk") > -1 && query.if_zhishu !== 0) {
+ this.Symbol = `${query.if_zhishu}_${query.sok}.hk`;
} else {
- this.Symbol = `${query.if_zhishu}_${query.sok}.${query.type}`
+ this.Symbol = `${query.if_zhishu}_${query.sok}.${query.type}`;
}
// this.Symbol = 'BRK_A106.usa'
- console.log('------?????', this.Symbol)
+ console.log("------?????", this.Symbol);
// 写入localStorage
- localStorage.setItem('hqchart_symbol', this.Symbol)
+ localStorage.setItem("hqchart_symbol", this.Symbol);
},
- mounted () {
- this.offHeight = this.$refs['rightContent'].offsetHeight
- this.OnSize()
- this.SetChartStyle()
+ mounted() {
+ this.offHeight = this.$refs["rightContent"].offsetHeight;
+ this.OnSize();
+ this.SetChartStyle();
this.$nextTick(() => {
- this.CreateMinuteChart()
- this.CreateKLineChart()
- })
- let that = this
- window.onresize = _.debounce(this.OnSize, 200)
+ this.CreateMinuteChart();
+ this.CreateKLineChart();
+ });
+ let that = this;
+ window.onresize = _.debounce(this.OnSize, 200);
// 自适应K线图
- var elementResizeDetectorMaker = require('element-resize-detector')
+ var elementResizeDetectorMaker = require("element-resize-detector");
// 创建实例,无参数
- var erd = elementResizeDetectorMaker() // 使用默认选项(将使用基于对象的方法)。
+ var erd = elementResizeDetectorMaker(); // 使用默认选项(将使用基于对象的方法)。
// 创建实例带参数
// 使用基于超快速滚动的方法。
// 这是推荐的策略。
elementResizeDetectorMaker({
- // var erdUltraFast = elementResizeDetectorMaker({
- strategy: 'scroll',
+ // var erdUltraFast = elementResizeDetectorMaker({
+ strategy: "scroll",
callOnAdd: true, // callOnAdd选项,用于确定在添加侦听器时是否应调用它们。默认为true。
// 如果为true,则确保在添加侦听器后将对其进行调用。如果为false,则在添加侦听器时将不保证其
// 被调用(不会阻止其被调用)
- debug: true
- })
+ debug: true,
+ });
// 监听class为staticNextMain的元素 大小变化
- var self = this
+ var self = this;
// 侦听元素的调整大小事件,并使用元素作为调整大小事件的参数来调用侦听器函数。传递给函数的选项将
// 覆盖实例选项
- erd.listenTo(this.$refs['rightContent'], function (
- element
- ) {
- var width = element.offsetWidth
- var height = element.offsetHeight
- self.tableHeight = height - 100 // 将监听到的宽高进行赋值
- self.tableWidth = width - 20
- that.offHeight = height
- that.OnSize()
- })
+ erd.listenTo(this.$refs["rightContent"], function (element) {
+ var width = element.offsetWidth;
+ var height = element.offsetHeight;
+ self.tableHeight = height - 100; // 将监听到的宽高进行赋值
+ self.tableWidth = width - 20;
+ that.offHeight = height;
+ that.OnSize();
+ });
},
methods: {
- OnSize () {
- var width = this.$refs.right.clientWidth
+ OnSize() {
+ var width = this.$refs.right.clientWidth;
// var rightTab = this.$refs.rightTab
// var periodWrap = this.$refs.minute_periodWrap
// var indexWrap = this.$refs.minute_indexWrap
// var statementWrap = this.$refs.minute_statementWrap
// // var chartHeight = window.innerHeight - rightTab.offsetHeight - periodWrap.offsetHeight - indexWrap.offsetHeight;
- var chartHeight = this.offHeight
+ var chartHeight = this.offHeight;
- var kline = this.$refs.kline
- kline.style.width = width + 'px'
- kline.style.height = chartHeight + 'px'
- var kline2 = this.$refs.kline2
- kline2.style.width = width + 'px'
- kline2.style.height = chartHeight + 'px'
+ var kline = this.$refs.kline;
+ kline.style.width = width + "px";
+ kline.style.height = chartHeight + "px";
+ var kline2 = this.$refs.kline2;
+ kline2.style.width = width + "px";
+ kline2.style.height = chartHeight + "px";
- if (this.Chart) this.Chart.OnSize()
- if (this.KLineChart) this.KLineChart.OnSize()
+ if (this.Chart) this.Chart.OnSize();
+ if (this.KLineChart) this.KLineChart.OnSize();
},
- changeRightContent (type) {
- this.KLinePeriodIndex = 0
- this.chartType = type
+ changeRightContent(type) {
+ this.KLinePeriodIndex = 0;
+ this.chartType = type;
this.$nextTick(() => {
- this.OnSize()
- })
+ this.OnSize();
+ });
},
- SetChartStyle () {
- EastMoney.HQData.SetMinuteChartCoordinate()
+ SetChartStyle() {
+ EastMoney.HQData.SetMinuteChartCoordinate();
var blackStyle = HQChart.Chart.HQChartStyle.GetStyleConfig(
HQChart.Chart.STYLE_TYPE_ID.WHITE_ID
- ) // 读取黑色风格配置
- HQChart.Chart.JSChart.SetStyle(blackStyle)
+ ); // 读取黑色风格配置
+
+ // blackStyle.UpBarColor = "rgba(0,0,0,1)";
+ HQChart.Chart.JSChart.SetStyle(blackStyle);
},
- CreateMinuteChart () {
- if (this.Chart) return
+ CreateMinuteChart() {
+ if (this.Chart) return;
- var option = DefaultData.GetMinuteOption()
- option.Symbol = this.Symbol
+ var option = DefaultData.GetMinuteOption();
+ option.Symbol = this.Symbol;
option.NetworkFilter = (data, callback) => {
- this.NetworkFilter(data, callback)
- } // 网络请求回调函数
+ this.NetworkFilter(data, callback);
+ }; // 网络请求回调函数
- var chart = HQChart.Chart.JSChart.Init(this.$refs.kline)
- chart.SetOption(option)
- this.Chart = chart
+ var chart = HQChart.Chart.JSChart.Init(this.$refs.kline);
+ chart.SetOption(option);
+ this.Chart = chart;
},
- CreateKLineChart () {
- if (this.KLineChart) return
+ CreateKLineChart() {
+ if (this.KLineChart) return;
- var option = DefaultData.GetKLineOption()
- option.Symbol = this.Symbol
+ var option = DefaultData.GetKLineOption();
+ option.Symbol = this.Symbol;
option.NetworkFilter = (data, callback) => {
- this.NetworkFilter(data, callback)
- } // 网络请求回调函数
- var chart = HQChart.Chart.JSChart.Init(this.$refs.kline2)
- HQChart.Chart.JSChart.GetResource().FrameLogo.Text = null
- chart.SetOption(option)
- this.KLineChart = chart
+ this.NetworkFilter(data, callback);
+ }; // 网络请求回调函数
+ var chart = HQChart.Chart.JSChart.Init(this.$refs.kline2);
+ HQChart.Chart.JSChart.GetResource().FrameLogo.Text = null;
+ chart.SetOption(option);
+ this.KLineChart = chart;
},
- ChangeSymbol (
+ ChangeSymbol(
symbol // 切换股票
) {
- var symbolUpper = symbol.toUpperCase()
- var isShowVolChart = EastMoney.HQData.IsShowVolChart(symbolUpper)
- var frame = this.Chart.JSChartContainer.Frame.SubFrame[1]
+ var symbolUpper = symbol.toUpperCase();
+ var isShowVolChart = EastMoney.HQData.IsShowVolChart(symbolUpper);
+ var frame = this.Chart.JSChartContainer.Frame.SubFrame[1];
if (isShowVolChart) {
- if (frame.Height <= 0) frame.Height = this.VolChartHeight
+ if (frame.Height <= 0) frame.Height = this.VolChartHeight;
} else {
- if (frame.Height > 0) this.VolChartHeight = frame.Height
- frame.Height = 0
+ if (frame.Height > 0) this.VolChartHeight = frame.Height;
+ frame.Height = 0;
}
- var period = this.KLineChart.JSChartContainer.Period
- var isShowRightMenu = EastMoney.HQData.IsEnableRight(period, symbol) // 是否显示复权菜单
- this.IsShowRightMenu = isShowRightMenu
+ var period = this.KLineChart.JSChartContainer.Period;
+ var isShowRightMenu = EastMoney.HQData.IsEnableRight(period, symbol); // 是否显示复权菜单
+ this.IsShowRightMenu = isShowRightMenu;
- this.Symbol = symbol
- this.Chart.ChangeSymbol(this.Symbol)
- this.KLineChart.ChangeSymbol(this.Symbol)
+ this.Symbol = symbol;
+ this.Chart.ChangeSymbol(this.Symbol);
+ this.KLineChart.ChangeSymbol(this.Symbol);
},
- OnClickMinuteDayMenu (
+ OnClickMinuteDayMenu(
index,
item // 分时图天数
) {
- this.MinuteDayIndex = index
- this.Chart.ChangeDayCount(item.ID)
+ this.MinuteDayIndex = index;
+ this.Chart.ChangeDayCount(item.ID);
},
- OnClickKLinePeriodMenu (
+ OnClickKLinePeriodMenu(
index,
item,
type // K线周期
) {
-
// if (index !== 0) { //分时额外处理才注释的
- this.chartType = type
- this.KLinePeriodIndex = index
- this.KLineChart.ChangePeriod(item.ID)
+ this.chartType = type;
+ this.KLinePeriodIndex = index;
+ this.KLineChart.ChangePeriod(item.ID);
// }
},
- OnClickKLineRightMenu (
+ OnClickKLineRightMenu(
index,
item // K线复权
) {
- this.KLineRightIndex = index
- this.KLineChart.ChangeRight(item.ID)
+ this.KLineRightIndex = index;
+ this.KLineChart.ChangeRight(item.ID);
},
- ChangeMinuteIndex (
+ ChangeMinuteIndex(
item // 切换分时图指标
) {
- if (this.Chart) this.Chart.ChangeIndex(item.WindowIndex, item.ID)
+ if (this.Chart) this.Chart.ChangeIndex(item.WindowIndex, item.ID);
},
- ChangeKLineIndex (
+ ChangeKLineIndex(
item // 切换K线图指标
) {
- if (this.KLineChart) { this.KLineChart.ChangeIndex(item.WindowIndex, item.ID) }
- },
-
- NetworkFilter (
- data,
- callback // 第3方数据替换接口
- ) {
- EastMoney.HQData.Log('[HQChartDemo::NetworkFilter] data', data)
-
- switch (data.Name) {
- // 分时图数据对接
- case 'MinuteChartContainer::RequestMinuteData':
- EastMoney.HQData.NetworkFilter(data, callback)
- break
- case 'MinuteChartContainer::RequestHistoryMinuteData':
- EastMoney.HQData.NetworkFilter(data, callback)
- break
-
- case 'KLineChartContainer::RequestHistoryData': // 日线全量数据下载
- EastMoney.HQData.NetworkFilter(data, callback)
- break
- case 'KLineChartContainer::RequestRealtimeData': // 日线实时数据更新
- EastMoney.HQData.NetworkFilter(data, callback)
- break
- case 'KLineChartContainer::RequestFlowCapitalData': // 流通股本
- EastMoney.HQData.NetworkFilter(data, callback)
- break
- case 'KLineChartContainer::ReqeustHistoryMinuteData': // 分钟全量数据下载
- EastMoney.HQData.NetworkFilter(data, callback)
- break
- case 'KLineChartContainer::RequestMinuteRealtimeData': // 分钟增量数据更新
- EastMoney.HQData.NetworkFilter(data, callback)
- break
+ if (this.KLineChart) {
+ this.KLineChart.ChangeIndex(item.WindowIndex, item.ID);
}
},
- handleSelect (key, keyPath) {
- console.log(key, keyPath)
- this.ChangeSymbol(keyPath[1])
+ NetworkFilter(
+ data,
+ callback // 第3方数据替换接口
+ ) {
+ EastMoney.HQData.Log("[HQChartDemo::NetworkFilter] data", data);
+
+ switch (data.Name) {
+ // 分时图数据对接
+ case "MinuteChartContainer::RequestMinuteData":
+ EastMoney.HQData.NetworkFilter(data, callback);
+ break;
+ case "MinuteChartContainer::RequestHistoryMinuteData":
+ EastMoney.HQData.NetworkFilter(data, callback);
+ break;
+
+ case "KLineChartContainer::RequestHistoryData": // 日线全量数据下载
+ EastMoney.HQData.NetworkFilter(data, callback);
+ break;
+ case "KLineChartContainer::RequestRealtimeData": // 日线实时数据更新
+ EastMoney.HQData.NetworkFilter(data, callback);
+ break;
+ case "KLineChartContainer::RequestFlowCapitalData": // 流通股本
+ EastMoney.HQData.NetworkFilter(data, callback);
+ break;
+ case "KLineChartContainer::ReqeustHistoryMinuteData": // 分钟全量数据下载
+ EastMoney.HQData.NetworkFilter(data, callback);
+ break;
+ case "KLineChartContainer::RequestMinuteRealtimeData": // 分钟增量数据更新
+ EastMoney.HQData.NetworkFilter(data, callback);
+ break;
+ }
},
- handleOpen (key, keyPath) {
- console.log(key, keyPath)
+ handleSelect(key, keyPath) {
+ console.log(key, keyPath);
+ this.ChangeSymbol(keyPath[1]);
},
- handleClose (key, keyPath) {
- console.log(key, keyPath)
- }
- }
-}
+ handleOpen(key, keyPath) {
+ console.log(key, keyPath);
+ },
+
+ handleClose(key, keyPath) {
+ console.log(key, keyPath);
+ },
+ },
+};
</script>
<style lang="less">
@animation-duration: 0.3s;
@@ -1499,11 +1520,11 @@
width: 0.5rem;
height: 0.5rem;
}
- .active {
- color: rgb(2, 99, 226);
- font-weight: 800;
- background: rgb(245, 245, 245);
- }
+ .active {
+ color: rgb(2, 99, 226);
+ font-weight: 800;
+ background: rgb(245, 245, 245);
+ }
}
canvas {
height: 100% !important;
diff --git a/src/page/list/list.vue b/src/page/list/list.vue
index f306174..e589ba7 100644
--- a/src/page/list/list.vue
+++ b/src/page/list/list.vue
@@ -1,7 +1,10 @@
<template>
- <div :class="`wrapper ${$state.theme === 'red' ? 'red-theme' : 'black-theme'}`" style="background-color: #21212b;">
+ <div
+ :class="`wrapper ${$state.theme === 'red' ? 'red-theme' : 'black-theme'}`"
+ style="background-color: #21212b"
+ >
<div>
- <div @click="list_type=!list_type">1</div>
+ <div @click="list_type = !list_type">1</div>
</div>
<!-- <mt-header v-if="selected == '2'" fixed title="">
<router-link to="/" slot="left">
@@ -9,7 +12,7 @@
<mt-button slot="right" icon="search" @click="toSearch"></mt-button>
</mt-header> -->
- <!-- <mt-navbar class="top-navbar" v-model="selected" :style="selected != '2'?'':''" :fixed="selected != '2'?true:false">
+ <!-- <mt-navbar class="top-navbar" v-model="selected" :style="selected != '2'?'':''" :fixed="selected != '2'?true:false">
<mt-tab-item v-if="this.$store.state.settingForm.indexDisplay" id="1">指数</mt-tab-item>
<mt-tab-item v-if="this.$store.state.settingForm.stockDisplay" id="2">沪深</mt-tab-item>
@@ -31,13 +34,13 @@
</mt-tab-container-item>
</mt-tab-container> -->
<!-- <foot></foot> -->
- <div style="background-color: #21212b;">
+ <div style="background-color: #21212b">
<div class="list-title">
<div class="list-left">代码</div>
<div class="list-conter">最in假</div>
<div class="list-right">涨跌幅</div>
</div>
- <div class="list-content" v-for="item in 20">
+ <div class="list-content" v-for="item in 20" :key="item">
<div class="list-left">
<div class="taini">
<span class="circular">●</span>
@@ -58,19 +61,17 @@
</template>
<script>
-
// import '@/assets/style/common.less'
-import List0 from './list-all'
-import List1 from './list-index'
-import List2 from './list-stock'
-import List3 from './list-kechuang'
-import List4 from './list-futures'
-import * as api from '@/axios/api'
-import { Toast } from 'mint-ui'
+import List0 from "./list-all";
+import List1 from "./list-index";
+import List2 from "./list-stock";
+import List3 from "./list-kechuang";
+import List4 from "./list-futures";
+import * as api from "@/axios/api";
+import { Toast } from "mint-ui";
export default {
components: {
-
List0,
List1,
List2,
@@ -78,283 +79,287 @@
List4,
},
props: {},
- data () {
+ data() {
return {
- selected: '', // 选中
+ selected: "", // 选中
count: 1000,
loading: false,
- list_type:false,
- }
+ list_type: false,
+ };
},
watch: {},
computed: {},
- created () {
- this.getProductSetting()
+ created() {
+ this.getProductSetting();
if (!this.$store.state.userInfo.phone) {
- this.getUserInfo()
+ this.getUserInfo();
}
},
- mounted () {
+ mounted() {
if (this.$route.query.index) {
- this.selected = this.$route.query.index
+ this.selected = this.$route.query.index;
}
},
methods: {
- toSearch () {
- this.$router.push('/searchlist')
+ toSearch() {
+ this.$router.push("/searchlist");
},
- changeNavOptions (opts) {
- this.selected = opts
+ changeNavOptions(opts) {
+ this.selected = opts;
},
- async getUserInfo () {
+ async getUserInfo() {
// 获取用户信息
- let data = await api.getUserInfo()
+ let data = await api.getUserInfo();
if (data.status === 0) {
- this.$store.state.userInfo = data.data
+ this.$store.state.userInfo = data.data;
} else {
- Toast(data.msg)
+ Toast(data.msg);
}
},
- async getProductSetting () {
- let data = await api.getProductSetting()
+ async getProductSetting() {
+ let data = await api.getProductSetting();
if (data.status === 0) {
- this.$store.state.settingForm = data.data
+ this.$store.state.settingForm = data.data;
// 1 指数 2 沪深 3科创 4 期货
if (this.$store.state.settingForm.indexDisplay) {
- this.selected = '1'
+ this.selected = "1";
} else if (this.$store.state.settingForm.stockDisplay) {
- this.selected = '2'
+ this.selected = "2";
} else if (this.$store.state.settingForm.kcStockDisplay) {
- this.selected = '3'
+ this.selected = "3";
} else {
- this.selected = '4'
+ this.selected = "4";
}
} else {
- this.$message.error(data.msg)
+ this.$message.error(data.msg);
+ }
+ },
+ },
+};
+</script>
+<style lang="less" scoped>
+.is-selected .mint-tab-item-label:hover {
+ text-decoration: none;
+}
+
+.wrapper /deep/ .mint-tab-item-label {
+ font-size: 0.264rem;
+}
+
+.mint-navbar .mint-tab-item.is-selected {
+ border-bottom: 2px solid #d50000;
+ text-decoration: none;
+}
+
+.nav-wrapper {
+ padding-top: 0.8rem;
+}
+
+.mint-tab-container-item {
+ // padding-top: 1.2rem;
+
+ .mint-button--default {
+ padding: 0 0.2rem;
+ font-size: 0.24rem;
+ height: 0.5rem;
+ margin: 0.2rem 0.2rem 0;
+ color: #607d8b;
+ box-shadow: 0 0 1px #3b71b9;
+ background: none;
+ }
+}
+
+.mint-navbar {
+ box-shadow: 0px 0px 4px rgba(6, 0, 1, 0.2);
+
+ .mint-tab-item {
+ // background: #21252a;
+ padding: 0.2rem 0;
+
+ &.is-selected {
+ border: none;
+ margin-bottom: 0;
+ }
+
+ .mint-tab-item-label {
+ font-size: 0.22rem;
+ }
+
+ .iconfont {
+ display: block;
+ font-size: 0.46rem;
+ margin-bottom: 0.12rem;
+ }
+ }
+}
+
+.top-navbar {
+ .mint-tab-item {
+ padding: 0.2rem 0;
+ width: 1.42rem;
+ height: 0.44rem;
+ margin: 0.3rem 0.1rem 0 0.1rem;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ border-radius: 0.01rem;
+ }
+}
+.wrapper {
+ width: 100%;
+ height: 100%;
+ position: relative;
+ box-sizing: border-box;
+ padding-top: 1rem;
+ .top-navbar {
+ position: absolute;
+ top: 0;
+ left: 50%;
+ width: 70%;
+ margin-left: -35%;
+ background: none;
+ box-shadow: none;
+ /deep/.mint-tab-item {
+ .mint-tab-item-label {
+ font-size: 0.28rem;
+ font-family: MicrosoftYaHeiLight;
+ font-weight: 400;
+ color: rgba(255, 255, 255, 1);
+ }
+ &.is-selected {
+ position: relative;
+ background: linear-gradient(
+ 0deg,
+ rgba(27, 166, 208, 1),
+ rgba(2, 116, 150, 1)
+ );
+ &::after {
+ position: absolute;
+ content: "";
+ display: block;
+ width: 0.67rem;
+ height: 0.06rem;
+ background-color: #138eb4;
+ bottom: 0;
+ left: 50%;
+ margin-left: -0.335rem;
+ display: none;
+ }
+ }
+ }
+ }
+ .order-list {
+ width: 100%;
+ height: 100%;
+ /deep/.mint-tab-container-wrap {
+ width: 100%;
+ height: 100%;
+ }
+ }
+}
+.top-search {
+ padding: 0.2rem;
+ .top-search-btn {
+ background-color: #16171d;
+ padding: 0.1rem 0.2rem;
+ width: 1.6rem;
+ text-align: center;
+ border-radius: 0.2rem;
+ color: #fff;
+ border: 1px solid rgb(96, 125, 139);
+ margin: 0 auto;
+ }
+}
+.red-theme {
+ .top-search-btn {
+ border-color: #000;
+ color: #000;
+ background-color: #fff;
+ }
+ .top-navbar {
+ /deep/.mint-tab-item {
+ background-color: #cbcbcb;
+ .mint-tab-item-label {
+ color: #000;
+ }
+ &.is-selected {
+ background: #bb1715;
+ .mint-tab-item-label {
+ color: #fff;
+ }
}
}
}
}
-</script>
-<style lang="less" scoped>
- .is-selected .mint-tab-item-label:hover {
- text-decoration: none;
- }
+.list-title {
+ display: flex;
+ width: calc(100vw - 32px);
+ margin-left: 0;
+ margin-right: 0;
+ margin: 0 auto;
+ color: #8b8896;
+ border-bottom: #000 0.01rem solid;
+ align-items: center;
+ padding-top: 0.28rem;
+ padding-bottom: 0.28rem;
+}
+.taini {
+ color: #f1f0f5;
+ font-size: 0.38rem;
+}
+.circular {
+ color: rgb(169, 169, 169);
+ font-size: 0.4rem;
+}
+.list-left {
+ width: 39.44986%;
+}
+.down {
+ font-size: 0.38rem;
+ color: #ef534f;
+}
+.list-code {
+ padding-left: 0.35rem;
+ margin-top: 0.2rem;
+ transition: all 0.2s;
+}
+.list-content {
+ display: flex;
+ width: calc(100vw - 32px);
+ margin-left: 0;
+ margin-right: 0;
+ margin: 0 auto;
+ color: #8b8896;
+ border-bottom: #000 0.01rem solid;
+ align-items: center;
+ padding-top: 0.28rem;
+ padding-bottom: 0.28rem;
+ transition: all 0.2s;
+ background-color: #21212b;
+}
- .wrapper /deep/ .mint-tab-item-label {
- font-size: 0.264rem;
- }
-
- .mint-navbar .mint-tab-item.is-selected {
- border-bottom: 2px solid #d50000;
- text-decoration: none;
- }
-
- .nav-wrapper {
- padding-top: 0.8rem;
- }
-
- .mint-tab-container-item {
- // padding-top: 1.2rem;
-
- .mint-button--default {
- padding: 0 0.2rem;
- font-size: 0.24rem;
- height: 0.5rem;
- margin: 0.2rem 0.2rem 0;
- color: #607d8b;
- box-shadow: 0 0 1px #3b71b9;
- background: none;
- }
- }
-
- .mint-navbar {
- box-shadow: 0px 0px 4px rgba(6, 0, 1, 0.2);
-
- .mint-tab-item {
- // background: #21252a;
- padding: 0.2rem 0;
-
- &.is-selected {
- border: none;
- margin-bottom: 0;
- }
-
- .mint-tab-item-label {
- font-size: 0.22rem;
- }
-
- .iconfont {
- display: block;
- font-size: 0.46rem;
- margin-bottom: 0.12rem;
- }
- }
- }
-
- .top-navbar {
- .mint-tab-item {
- padding: 0.2rem 0;
- width: 1.42rem;
- height: 0.44rem;
- margin: 0.3rem 0.1rem 0 0.1rem;
- display: flex;
- justify-content: center;
- align-items: center;
- border-radius: 0.01rem;
- }
- }
- .wrapper{
- width: 100%;
- height: 100%;
- position: relative;
- box-sizing: border-box;
- padding-top: 1rem;
- .top-navbar{
- position: absolute;
- top: 0;
- left: 50%;
- width: 70%;
- margin-left: -35%;
- background: none;
- box-shadow: none;
- /deep/.mint-tab-item{
- .mint-tab-item-label{
- font-size:0.28rem;
- font-family:MicrosoftYaHeiLight;
- font-weight:400;
- color:rgba(255,255,255,1);
- }
- &.is-selected{
- position: relative;
- background:linear-gradient(0deg,rgba(27,166,208,1),rgba(2,116,150,1));
- &::after{
- position: absolute;
- content: '';
- display: block;
- width: 0.67rem;
- height: 0.06rem;
- background-color: #138EB4;
- bottom: 0;
- left: 50%;
- margin-left: -0.335rem;
- display: none;
- }
- }
- }
- }
- .order-list{
- width: 100%;
- height: 100%;
- /deep/.mint-tab-container-wrap{
- width: 100%;
- height: 100%;
- }
- }
- }
- .top-search{
- padding: .2rem;
- .top-search-btn {
- background-color: #16171d;
- padding: .1rem .2rem;
- width: 1.60rem;
- text-align: center;
- border-radius: .2rem;
- color: #fff;
- border: 1px solid rgb(96, 125, 139);
- margin: 0 auto;
- }
- }
- .red-theme{
- .top-search-btn {
- border-color: #000;
- color: #000;
- background-color: #fff;
- }
- .top-navbar{
- /deep/.mint-tab-item{
- background-color: #CBCBCB;
- .mint-tab-item-label{
- color: #000;
- }
- &.is-selected{
- background: #BB1715;
- .mint-tab-item-label{
- color: #fff;
- }
- }
- }
- }
- }
- .list-title{
- display: flex;
- width: calc(100vw - 32px);
- margin-left: 0;
- margin-right: 0;
- margin: 0 auto;
- color: #8b8896;
- border-bottom: #000 0.01rem solid;
- align-items: center;
- padding-top: 0.28rem;
- padding-bottom: 0.28rem;
- }
- .taini{
- color: #f1f0f5;
- font-size: 0.38rem;
- }
- .circular{
- color: rgb(169,169,169);
- font-size: 0.4rem;
- }
- .list-left{
- width: 39.44986%;
- }
- .down{
- font-size: 0.38rem;
- color: #ef534f;
- }
- .list-code{
- padding-left: 0.35rem;
- margin-top: 0.2rem;
- transition: all 0.2s;
- }
- .list-content{
- display: flex;
- width: calc(100vw - 32px);
- margin-left: 0;
- margin-right: 0;
- margin: 0 auto;
- color: #8b8896;
- border-bottom: #000 0.01rem solid;
- align-items: center;
- padding-top: 0.28rem;
- padding-bottom: 0.28rem;
- transition: all 0.2s;
- background-color: #21212b;
- }
-
- .list-conter{
- width: 21.90556%;
- text-align: right;
- }
- .list-right{
- width: 38.64456%;
- text-align: right;
- }
- .chgTextRed{
- float: right;
- font-size: 0.38rem;
- width: 50%;
- border-radius: 2px;
- color: #fff!important;
- text-align: center;
- height: 0.65rem;
- line-height: 0.65rem;
- background-color: #ef534f;
- }
- .minCaption{
- color: #8b8896;
- font-size: 0.16rem;
- transition: all 0.2s;
- }
+.list-conter {
+ width: 21.90556%;
+ text-align: right;
+}
+.list-right {
+ width: 38.64456%;
+ text-align: right;
+}
+.chgTextRed {
+ float: right;
+ font-size: 0.38rem;
+ width: 50%;
+ border-radius: 2px;
+ color: #fff !important;
+ text-align: center;
+ height: 0.65rem;
+ line-height: 0.65rem;
+ background-color: #ef534f;
+}
+.minCaption {
+ color: #8b8896;
+ font-size: 0.16rem;
+ transition: all 0.2s;
+}
</style>
diff --git a/src/page/list/tradingList/data.list.vue b/src/page/list/tradingList/data.list.vue
index 306152b..498117e 100644
--- a/src/page/list/tradingList/data.list.vue
+++ b/src/page/list/tradingList/data.list.vue
@@ -109,6 +109,10 @@
type: Array,
default: [],
},
+ zxtabsList: {
+ type: Array,
+ default: [],
+ },
},
watch: {
active(e) {
@@ -180,14 +184,21 @@
},
});
},
+
// 获取列表
getStock: handleDt.debounce(async function (a, b, c) {
a = this.active;
+
let stockType = "";
if (a !== "") {
let array = this.tabsList.filter((item) => item.key === a);
stockType = array[0].name;
+ } else {
+ // return this.getStockzx();
+ let array = this.zxtabsList.filter((item) => item.key === b);
+ stockType = array[0].name;
}
+ console.log(a, b, c, "=====");
let pageNumVal = c || this.pageNumVal;
let opt = {
pageNum: pageNumVal,
@@ -197,10 +208,19 @@
stockType: stockType,
orderBy: "",
};
- let data = await api.getStockByType(opt);
+
+ // console.log();
+ // api.positionzx;
+ let data;
+ if (a !== "") {
+ data = await api.getStockByType(opt);
+ } else {
+ // 自选
+ data = await api.positionzx(opt);
+ }
+
this.loadings = false;
if (data.status === 0) {
- console.log(data.data.list.length < 15);
if (data.data.list.length < 15) {
this.finished = true;
}
@@ -214,12 +234,9 @@
}
}, 500),
onLoads() {
- console.log(333333);
- // if (!this.loading) {
this.pageNumVal++;
this.loadings = true;
this.getStock();
- // }
},
optionszx() {},
},
diff --git a/src/page/list/tradingList/tabs.vue b/src/page/list/tradingList/tabs.vue
index b0c0350..ae785f1 100644
--- a/src/page/list/tradingList/tabs.vue
+++ b/src/page/list/tradingList/tabs.vue
@@ -34,6 +34,7 @@
:sousuo="sousuo"
:zxactive="zxactive"
:tabsList="tabsList"
+ :zxtabsList="zxtabsList"
/>
</div>
</template>
@@ -46,7 +47,7 @@
data() {
return {
tabsList: [
- // { title: "自选", key: "" },
+ { title: this.$t("hj61"), key: "" },
{ title: this.$t("数字货币"), key: "1", name: "SZHB" },
{ title: this.$t("马股"), key: "2", name: "MAS" },
{ title: this.$t("美股"), key: "3", name: "US" },
diff --git a/src/page/newUser/setting.vue b/src/page/newUser/setting.vue
index 2e6e049..f7e6db1 100644
--- a/src/page/newUser/setting.vue
+++ b/src/page/newUser/setting.vue
@@ -37,18 +37,6 @@
</div>
</div>
- <!-- <div class="jy" @click="handleGoToTransfer()">
- <div class="left_gn">
- <div class="l_icon">
- </div>
- <div class="r_title">
- <span>{{ $t('hj145') }}</span>
- </div>
- </div>
- <div class="right_gos">
- <img src="../../assets/img/youjiantou.png" alt />
- </div>
- </div> -->
<div class="jy" @click="handleGoToAuthentication()">
<div class="left_gn">
<div class="l_icon">
@@ -65,32 +53,7 @@
<img v-else src="../../assets/img/youjiantou.png" alt />
</div>
</div>
- <!--
- <div class="jy" @click="subclick()">
- <div class="left_gn">
- <div class="l_icon">
- </div>
- <div class="r_title">
- <span>{{ $t('subdk') }}</span>
- </div>
- </div>
- <div class="right_gos">
- <img src="../../assets/img/youjiantou.png" alt />
- </div>
- </div>
- <div class="jy" @click="yebclick()">
- <div class="left_gn">
- <div class="l_icon">
- </div>
- <div class="r_title">
- <span>{{ $t('yeb') }}</span>
- </div>
- </div>
- <div class="right_gos">
- <img src="../../assets/img/youjiantou.png" alt />
- </div>
- </div> -->
<div class="jy" @click="clicklang()">
<div class="left_gn">
<div class="l_icon"></div>
@@ -165,6 +128,7 @@
import { Toast, MessageBox } from "mint-ui";
import { isNull, pwdReg } from "@/utils/utils";
import { mapMutations } from "vuex";
+import { Notify } from "vant";
export default {
name: "newUser",
@@ -392,8 +356,10 @@
let data = await api.changePassword(opts);
if (data.status === 0) {
this.changeLoginPsdBox = false;
- Toast(data.msg);
+
+ this.pswDialog = false;
this.settingDialog = false;
+ Notify({ type: "success", message: this.$t("密码修改成功") });
} else {
Toast(data.msg);
this.settingDialog = false;
diff --git a/src/page/user/cashlist.vue b/src/page/user/cashlist.vue
index 8a1f316..ed9e2fb 100644
--- a/src/page/user/cashlist.vue
+++ b/src/page/user/cashlist.vue
@@ -1,18 +1,5 @@
<template>
<div class="wrapper">
- <!-- <div class="header">
- <mt-header title="提现记录">
- <router-link to="/user" slot="left">
- <mt-button icon="back">我的</mt-button>
- </router-link>
- </mt-header>
- </div> -->
- <div class="text-center">
- <div class="btn-group">
- <a href="#/cash" class="with-draw-btn">提现</a>
- <a href="javascript:;" class="with-draw-detai-btn on">记录</a>
- </div>
- </div>
<div>
<div class="box page-part transaction">
<div class="box-contain clearfix">
@@ -20,98 +7,99 @@
</div>
</div>
</div>
-
</div>
</template>
<script>
-import cashList from './compontents/cash-list'
+import cashList from "./compontents/cash-list";
export default {
components: {
- cashList
+ cashList,
},
props: {},
- data () {
+ data() {
return {
- number: ''
- }
+ number: "",
+ };
},
watch: {},
computed: {},
- created () {},
- mounted () {
- if (this.$state.theme =='red') {
- document.body.classList.remove('black-bg')
- document.body.classList.add('red-bg')
+ created() {},
+ mounted() {
+ if (this.$state.theme == "red") {
+ document.body.classList.remove("black-bg");
+ document.body.classList.add("red-bg");
}
},
- beforeDestroy () {
- if (this.$state.theme =='red') {
- document.body.classList.remove('red-bg')
- document.body.classList.add('black-bg')
+ beforeDestroy() {
+ if (this.$state.theme == "red") {
+ document.body.classList.remove("red-bg");
+ document.body.classList.add("black-bg");
}
},
methods: {
- toSure () {
+ toSure() {
// 确定
- }
- }
-}
+ },
+ },
+};
</script>
<style lang="less" scoped>
- .mint-header {
- // background: #f4f4f4;
- margin-bottom: 0.2rem;
- }
+.mint-header {
+ // background: #f4f4f4;
+ margin-bottom: 0.2rem;
+}
+.wrapper {
+ padding-bottom: 100px;
+}
+.btn-group {
+ // background: #f4f4f4;
+ text-align: center;
+ margin: 0 auto;
+ margin-bottom: 0.5rem;
- .btn-group {
- // background: #f4f4f4;
+ a {
+ display: inline-block;
text-align: center;
- margin: 0 auto;
- margin-bottom: 0.5rem;
-
- a {
- display: inline-block;
- text-align: center;
- font-size: 0.29rem;
- height: 0.7rem;
- line-height: 0.6rem;
- width: 1.44rem;
- margin: 0;
- margin-top: 0;
- padding: 0;
- }
-
- .with-draw-btn {
- position: relative;
- right: -10px;
- width: 1.51rem;
- border-top-left-radius: 0.695rem;
- border-bottom-left-radius: 0.695rem;
- }
-
- .with-draw-detai-btn {
- border-top-right-radius: 0.695rem;
- border-bottom-right-radius: 0.695rem;
- }
-
- .on {
- color: #fff;
- }
+ font-size: 0.29rem;
+ height: 0.7rem;
+ line-height: 0.6rem;
+ width: 1.44rem;
+ margin: 0;
+ margin-top: 0;
+ padding: 0;
}
- .transaction {
- margin-top: 0.2rem;
- color: rgba(100, 100, 100, 0.78);
-
- .transaction-title {
- padding: 0.15rem 0.3rem;
- }
-
- .empty {
- height: 2.8rem;
- line-height: 2.8rem;
- }
+ .with-draw-btn {
+ position: relative;
+ right: -10px;
+ width: 1.51rem;
+ border-top-left-radius: 0.695rem;
+ border-bottom-left-radius: 0.695rem;
}
+
+ .with-draw-detai-btn {
+ border-top-right-radius: 0.695rem;
+ border-bottom-right-radius: 0.695rem;
+ }
+
+ .on {
+ color: #fff;
+ }
+}
+
+.transaction {
+ margin-top: 0.2rem;
+ color: rgba(100, 100, 100, 0.78);
+
+ .transaction-title {
+ padding: 0.15rem 0.3rem;
+ }
+
+ .empty {
+ height: 2.8rem;
+ line-height: 2.8rem;
+ }
+}
</style>
diff --git a/src/page/user/compontents/cash-list.vue b/src/page/user/compontents/cash-list.vue
index 64dc100..cb76177 100644
--- a/src/page/user/compontents/cash-list.vue
+++ b/src/page/user/compontents/cash-list.vue
@@ -1,62 +1,100 @@
<template>
<div class="wrapper">
- <div v-if="list.length<=0" class="empty text-center">
- 暂无提现信息!
+ <div v-if="list.length <= 0" class="empty text-center">
+ {{ $t("hj162e") }}!
</div>
<div v-else>
<ul
class="table-list"
v-infinite-scroll="loadMore"
infinite-scroll-disabled="loading"
- infinite-scroll-distance="10">
- <li class="list-body" v-for="(item) in list" :key="item.key">
+ infinite-scroll-distance="10"
+ >
+ <li class="list-body" v-for="item in list" :key="item.key">
<div class="order-info-box">
<div class="order-title">
- <span class="main">
- 提现至银行卡
- </span>
- <span class="payNumber">₹{{item.withAmt}}</span>
+ <span class="main"> {{ $t("hjtxyhk") }} </span>
+ <span class="payNumber">${{ item.withAmt }}</span>
<span class="red pull-right">
- {{item.withStatus == 1?'提现成功':item.withStatus == 2?'提现失败':item.withStatus == 3?'订单取消':'审核中'}}
- <i v-if="item.withStatus == 1" class="iconfont icon-tongguo4 animated bounceIn"></i>
- <i v-if="item.withStatus==0" class="iconfont icon-dengdai animated bounceInDown"></i>
- <i v-if="item.withStatus == 2" class="iconfont icon-failure animated bounceInDown"></i>
- <i v-if="item.withStatus == 3"
- class="iconfont icon-iconfontweitongguo animated bounceInDown"></i>
- </span>
+ {{
+ item.withStatus == 1
+ ? $t("hjtxcg")
+ : item.withStatus == 2
+ ? $t("hjtxsb")
+ : item.withStatus == 3
+ ? $t("hjddqx")
+ : $t("hjshz")
+ }}
+ <i
+ v-if="item.withStatus == 1"
+ class="iconfont icon-tongguo4 animated bounceIn"
+ ></i>
+ <i
+ v-if="item.withStatus == 0"
+ class="iconfont icon-dengdai animated bounceInDown"
+ ></i>
+ <i
+ v-if="item.withStatus == 2"
+ class="iconfont icon-failure animated bounceInDown"
+ ></i>
+ <i
+ v-if="item.withStatus == 3"
+ class="iconfont icon-iconfontweitongguo animated bounceInDown"
+ ></i>
+ </span>
<!-- <span class="secondary ">123456789</span> -->
</div>
<div class="order-info">
<p class="clearfix">
- <span class="col-xs-6">手续费:<b class="space">¥{{item.withFee}}</b></span>
+ <span class="col-xs-6"
+ >{{ $t("hj44") }}:<b class="space"
+ >${{ item.withFee }}</b
+ ></span
+ >
<!-- <span class="col-xs-6">实际到账金额:<b class="space" style="font-size:0.26rem">{{item.withAmt - item.withFee}}</b>元</span> -->
</p>
<p class="clearfix">
- <span class="col-xs-12">银行卡:<b class="space">{{item.bankName}}-{{item.bankAddress}}</b></span>
+ <span class="col-xs-12"
+ >{{ $t("hj247") }}:<b class="space"
+ >{{ item.bankName }}-{{ item.bankAddress }}</b
+ ></span
+ >
</p>
<p class="clearfix">
- <span class="col-xs-12">卡号:<b class="space">{{item.bankNo}}</b></span>
+ <span class="col-xs-12"
+ >{{ $t("hjkh") }}:<b class="space">{{ item.bankNo }}</b></span
+ >
</p>
<p v-if="item.withStatus == 3" class="clearfix">
- <span class="col-xs-12">取消原因:<b class="space">{{item.withMsg}}</b></span>
+ <span class="col-xs-12"
+ >{{ $t("hjqxyy") }}:<b class="space">{{
+ item.withMsg
+ }}</b></span
+ >
</p>
<p v-if="item.withStatus == 2" class="clearfix">
- <span class="col-xs-12">失败原因:<b class="space">{{item.withMsg}}</b></span>
+ <span class="col-xs-12"
+ >{{ $t("hj201") }}:<b class="space">{{
+ item.withMsg
+ }}</b></span
+ >
</p>
<p class="clearfix">
- <span class="secondary col-xs-6">时间:
- <b v-if="item.applyTime">{{new Date(item.applyTime) | timeFormat}}</b>
- <b v-else></b>
- </span>
+ <span class="secondary col-xs-6"
+ >{{ $t("sj") }}:
+ <b v-if="item.applyTime">{{
+ new Date(item.applyTime) | timeFormat
+ }}</b>
+ <b v-else></b>
+ </span>
</p>
</div>
<div v-if="item.withStatus == 0" class="order-foot clearfix">
<div @click="cancle(item.id)" class="foot-btn">
- <i class='font-icon'></i>
- 取消提现
+ <i class="font-icon"></i>
+ {{ $t("hjqxtx") }}
</div>
</div>
-
</div>
<!-- <div class="capital">
<div class="pro">
@@ -76,116 +114,116 @@
loading...
</div>
<div v-show="!loading" class="load-all text-center">
- 已全部加载
+ {{ $t("hj236") }}
</div>
</div>
</div>
</template>
<script>
-import { Toast } from 'mint-ui'
-import * as api from '@/axios/api'
+import { Toast } from "mint-ui";
+import * as api from "@/axios/api";
export default {
components: {},
props: {},
- data () {
+ data() {
return {
loading: false,
list: [],
pageNum: 1,
- pageSize: 15
- }
+ pageSize: 15,
+ };
},
watch: {},
computed: {},
- created () {},
- mounted () {
- this.getListDetail()
+ created() {},
+ mounted() {
+ this.getListDetail();
},
methods: {
- async getListDetail () {
+ async getListDetail() {
let opt = {
- withStatus: '', // 提现状态 0已提交,1转账成功,2转账失败
+ withStatus: "", // 提现状态 0已提交,1转账成功,2转账失败
pageNum: this.pageNum,
- pageSize: 15
- }
- let data = await api.withdrawList(opt)
+ pageSize: 15,
+ };
+ let data = await api.withdrawList(opt);
if (data.status === 0) {
- data.data.list.forEach(element => {
- this.list.push(element)
- })
+ data.data.list.forEach((element) => {
+ this.list.push(element);
+ });
} else {
- Toast(data.msg)
+ Toast(data.msg);
}
},
- async loadMore () {
+ async loadMore() {
if (this.list.length < 10) {
- return
+ return;
}
- this.loading = true
+ this.loading = true;
// 加载下一页
- this.pageNum++
- await this.getListDetail()
- this.loading = false
+ this.pageNum++;
+ await this.getListDetail();
+ this.loading = false;
},
- async cancle (val) {
+ async cancle(val) {
// 取消提现
// MessageBox.confirm('您确定要平仓吗?').then(async action => {
let opt = {
- withId: val
- }
- let data = await api.canceloutMoney(opt)
+ withId: val,
+ };
+ let data = await api.canceloutMoney(opt);
if (data.status === 0) {
- this.list = []
- Toast(data.msg)
- this.getListDetail()
+ this.list = [];
+ Toast(data.msg);
+ this.getListDetail();
} else {
- Toast(data.msg)
+ Toast(data.msg);
}
// });
+ },
+ },
+};
+</script>
+<style lang="less" scoped>
+.wrapper {
+ // padding-top: 0.9rem;
+}
+
+.payNumber {
+ font-size: 0.3rem;
+ color: #ff8000;
+}
+
+.table-list {
+ padding: 0.2rem 0;
+
+ .list-body {
+ padding: 0.1rem 0.2rem;
+
+ .capital:nth-child(1) {
+ border-top: 0.01rem solid #3f444a;
+ }
+
+ .capital {
+ padding: 0.2rem;
+ // border-radius: 0.2rem;
+ border-bottom: 0.01rem solid #3f444a;
+
+ div {
+ line-height: 0.4rem;
+ }
+
+ .col-xs-4 {
+ padding-left: 0;
+ padding-right: 0;
+ }
+
+ .pro {
+ color: #999;
+ }
}
}
}
-</script>
-<style lang="less" scoped>
- .wrapper {
- // padding-top: 0.9rem;
- }
-
- .payNumber {
- font-size: 0.3rem;
- color: #ff8000;
- }
-
- .table-list {
- padding: 0.2rem 0;
-
- .list-body {
- padding: 0.1rem 0.2rem;
-
- .capital:nth-child(1) {
- border-top: 0.01rem solid #3f444a;
- }
-
- .capital {
- padding: 0.2rem;
- // border-radius: 0.2rem;
- border-bottom: 0.01rem solid #3f444a;
-
- div {
- line-height: 0.4rem;
- }
-
- .col-xs-4 {
- padding-left: 0;
- padding-right: 0;
- }
-
- .pro {
- color: #999;
- }
- }
- }
- }
</style>
diff --git a/src/page/user/compontents/recharge-list.vue b/src/page/user/compontents/recharge-list.vue
index 7526e17..fec2573 100644
--- a/src/page/user/compontents/recharge-list.vue
+++ b/src/page/user/compontents/recharge-list.vue
@@ -1,75 +1,81 @@
<template>
- <div>
- <div v-if="list.length<=0" class="empty text-center">
- 暂无充值信息!
+ <div style="padding-bottom: 100px">
+ <div v-if="list.length <= 0" class="empty text-center">
+ {{ $t("hj228") }}!
</div>
<div v-else>
<ul
class="table-list"
v-infinite-scroll="loadMore"
infinite-scroll-disabled="loading"
- infinite-scroll-distance="10">
- <li class="list-body" v-for="(item) in list" :key="item.key">
+ infinite-scroll-distance="10"
+ >
+ <li class="list-body" v-for="item in list" :key="item.key">
<div class="order-info-box">
<div class="order-title">
- <span :class="['main',item.payChannel == 0?'ali':item.payChannel == 1?'cart':'wechat']">
- <!-- <i v-if="item.payChannel == 0 || item.payChannel == '支付宝'" style="color:#1296db;"
- class="iconfont icon-zhifubao"></i>
- <i v-if="item.payChannel == '微信' " style="color:#1296db;" class="iconfont icon-weixin"></i>
- <i v-if="item.payChannel == 1 || item.payChannel == '对公转账'" style="color:#1296db;"
- class="iconfont icon-yinlian"></i> -->
- {{item.payChannel == 0?'支付宝':item.payChannel == 1?'对公转账':item.payChannel}}
- </span>
- <span class="payNumber">充值:<span :style="{color:$state.theme =='red'?'#BB1815':''}">¥{{item.payAmt}}</span></span>
+ <span :class="['main', 'wechat']">
+ {{ item.payChannel }}
+ </span>
+ <span class="payNumber">
+ {{ $t("hj172") }}:
+ <span
+ :style="{ color: $state.theme == 'red' ? '#BB1815' : '' }"
+ >
+ {{ item.channelName }} {{ item.payAmt }}
+ </span>
+ </span>
<span
- :class="item.orderStatus == 1?'green pull-right':item.orderStatus == 2?'red pull-right':'red pull-right'">
- <i v-if="item.orderStatus == 1" class="iconfont icon-tongguo4 animated bounceIn"></i>
- <i v-if="item.orderStatus==0" class="iconfont icon-dengdai animated bounceInDown"></i>
- <i v-if="item.orderStatus == 2" class="iconfont icon-failure animated bounceInDown"></i>
- <i v-if="item.orderStatus == 3"
- class="iconfont icon-iconfontweitongguo animated bounceInDown"></i>
- <!-- 1 => 成功 2 失败 3取消 4 等待 -->
- {{item.orderStatus == 1?'充值成功':item.orderStatus == 2?'充值失败':item.orderStatus == 3?'取消充值':'审核中'}}
-
- </span>
- <!-- <span class="secondary ">123456789</span> -->
+ :class="
+ item.orderStatus == 1
+ ? 'green pull-right'
+ : item.orderStatus == 2
+ ? 'red pull-right'
+ : 'red pull-right'
+ "
+ >
+ <i
+ v-if="item.orderStatus == 1"
+ class="iconfont icon-tongguo4 animated bounceIn"
+ ></i>
+ <i
+ v-if="item.orderStatus == 0"
+ class="iconfont icon-dengdai animated bounceInDown"
+ ></i>
+ <i
+ v-if="item.orderStatus == 2"
+ class="iconfont icon-failure animated bounceInDown"
+ ></i>
+ <i
+ v-if="item.orderStatus == 3"
+ class="iconfont icon-iconfontweitongguo animated bounceInDown"
+ ></i>
+ <!-- 1 => 成功 2 失败 3取消 4 等待 -->
+ {{
+ item.orderStatus == 1
+ ? $t("hj231")
+ : item.orderStatus == 2
+ ? $t("hj232")
+ : item.orderStatus == 3
+ ? $t("hj233")
+ : $t("hjshz")
+ }}
+ </span>
</div>
<div class="order-info">
- <!-- <p class="clearfix">
- <span class="col-xs-5">{{item.orderDesc}}</span>
- </p> -->
- <!-- <p class="clearfix">
- <span class="col-xs-12">订单号:<b>{{item.orderSn}}</b></span>
- </p>
- <p class="clearfix">
- <span class="secondary col-xs-6">时间:
- <b v-if="item.addTime">{{new Date(item.addTime) | timeFormat}}</b>
- <b v-else></b>
- </span>
- </p> -->
- <div class="info-mix ">
- <span class="info-item">订单号:<b>{{item.orderSn}}</b></span>
- <span class="info-item">时间:
- <b v-if="item.addTime">{{new Date(item.addTime) | timeFormat}}</b>
- <b v-else></b>
+ <div class="info-mix">
+ <span class="info-item"
+ >订单号:<b>{{ item.orderSn }}</b></span
+ >
+ <span class="info-item"
+ >时间:
+ <b v-if="item.addTime">{{
+ new Date(item.addTime) | timeFormat
+ }}</b>
+ <b v-else></b>
</span>
</div>
</div>
-
</div>
- <!-- <div class="capital">
- <div class="pro">
- {{item.payChannel}} <span class="pull-right">金额:{{item.payAmt}}</span>
- </div>
- <div class=" clearfix">
- <div class="col-xs-4"></div>
- <div class="col-xs-8">
- <span class="pull-right">
- {{new Date(item.addTime) | timeFormat}}
- </span>
- </div>
- </div>
- </div> -->
</li>
</ul>
<div v-show="loading" class="load-all text-center">
@@ -77,166 +83,166 @@
loading...
</div>
<div v-show="!loading" class="load-all text-center">
- 已全部加载
+ {{ $t("hj236") }}
</div>
</div>
</div>
</template>
<script>
-import { Toast } from 'mint-ui'
-import * as api from '@/axios/api'
+import { Toast } from "mint-ui";
+import * as api from "@/axios/api";
export default {
components: {},
props: {},
- data () {
+ data() {
return {
loading: false,
list: [],
pageNum: 1,
pageSize: 15,
- total: 0
- }
+ total: 0,
+ };
},
watch: {},
computed: {},
- created () {},
- mounted () {
- this.getListDetail()
+ created() {},
+ mounted() {
+ this.getListDetail();
},
methods: {
- async getListDetail () {
+ async getListDetail() {
let opt = {
- payChannel: '', // 支付方式
- orderStatus: '', // 订单状态
+ payChannel: "", // 支付方式
+ orderStatus: "", // 订单状态
pageNum: this.pageNum,
- pageSize: 15
- }
- let data = await api.rechargeList(opt)
+ pageSize: 15,
+ };
+ let data = await api.rechargeList(opt);
if (data.status === 0) {
- data.data.list.forEach(element => {
- this.list.push(element)
- })
- this.total = data.data.total
+ data.data.list.forEach((element) => {
+ this.list.push(element);
+ });
+ this.total = data.data.total;
} else {
- Toast(data.msg)
+ Toast(data.msg);
}
},
- async loadMore () {
+ async loadMore() {
if (this.list.length < 10 || this.total <= this.pageNum * this.pageNum) {
- return
+ return;
}
- this.loading = true
+ this.loading = true;
// 加载下一页
- this.pageNum++
- await this.getListDetail()
- this.loading = false
+ this.pageNum++;
+ await this.getListDetail();
+ this.loading = false;
+ },
+ },
+};
+</script>
+<style lang="less" scoped>
+.wrapper {
+ padding-top: 0.9rem;
+}
+
+.table-list {
+ // padding: 0.2rem 0;
+
+ .list-body {
+ padding: 0.1rem 0.3rem;
+
+ .capital:nth-child(1) {
+ border-top: 0.01rem solid #3f444a;
+ }
+
+ .capital {
+ padding: 0.2rem;
+ // border-radius: 0.2rem;
+ border-bottom: 0.01rem solid #3f444a;
+
+ div {
+ line-height: 0.4rem;
+ }
+
+ .col-xs-4 {
+ padding-left: 0;
+ padding-right: 0;
+ }
+
+ .pro {
+ color: #999;
+ }
}
}
}
-</script>
-<style lang="less" scoped>
- .wrapper {
- padding-top: 0.9rem;
+
+.payNumber {
+ font-size: 0.24rem;
+ font-weight: bold;
+ span {
+ font-family: lightnumber;
}
-
- .table-list {
- padding: 0.2rem 0;
-
- .list-body {
- padding: 0.1rem 0.3rem;
-
- .capital:nth-child(1) {
- border-top: 0.01rem solid #3f444a;
- }
-
- .capital {
- padding: 0.2rem;
- // border-radius: 0.2rem;
- border-bottom: 0.01rem solid #3f444a;
-
- div {
- line-height: 0.4rem;
- }
-
- .col-xs-4 {
- padding-left: 0;
- padding-right: 0;
- }
-
- .pro {
- color: #999;
- }
- }
- }
- }
-
- .payNumber {
+}
+/deep/.order-info-box {
+ background-color: #16171d;
+ padding: 0;
+ .main {
+ padding: 0.05rem 0.15rem;
+ letter-spacing: 0;
+ text-align: center;
+ margin-right: 0.16rem;
font-size: 0.24rem;
- font-weight: bold;
- span {
- font-family: lightnumber;
+ border-radius: 3px;
+ &.ali {
+ background-color: #138eb4;
+ }
+ &.cart {
+ background-color: #7266ba;
+ }
+ &.wechat {
+ background-color: #009c46;
}
}
- /deep/.order-info-box {
- background-color: #16171d;
- padding: 0;
- .main{
- padding: 0.05rem .15rem;
- letter-spacing:0;
- text-align: center;
- margin-right: .16rem;
- font-size: 0.24rem;
- border-radius: 3px;
- &.ali {
- background-color: #138EB4;
- }
- &.cart {
- background-color: #7266BA;
- }
- &.wechat {
- background-color: #009C46;
- }
+ .order-info {
+ border-bottom: 1px solid #2e3237;
+ padding-bottom: 0.3rem;
+ }
+ .order-title {
+ border-bottom: none;
+ }
+ .info-mix {
+ display: flex;
+ font-size: 0.2rem;
+ width: 100%;
+ .info-item {
+ margin-right: 0.2rem;
+ color: #fff8;
}
+ }
+}
+.red-theme {
+ .list-body {
+ background-color: #fff;
+ }
+ .order-info-box {
+ background-color: #fff;
.order-info {
- border-bottom: 1px solid #2e3237;
- padding-bottom: .3rem;
- }
- .order-title{
- border-bottom: none;
- }
- .info-mix{
- display: flex;
- font-size: .2rem;
- width: 100%;
- .info-item {
- margin-right: .2rem;
- color: #fff8;
- }
+ border-bottom-color: #e9e9e9;
}
}
- .red-theme {
- .list-body {
- background-color: #fff;
- }
- .order-info-box {
- background-color: #fff;
- .order-info {
- border-bottom-color: #e9e9e9;
- }
- }
- .order-info-box .main.cart {
- color: #fff;
- }
- .payNumber {
- color: #000;
- }
- .order-info-box .info-mix .info-item{
- color: #666666;
- }
- .load-all{
- background-color: #fff;
- }
+ .order-info-box .main.cart {
+ color: #fff;
}
+ .payNumber {
+ color: #000;
+ }
+ .order-info-box .info-mix .info-item {
+ color: #666666;
+ }
+ .load-all {
+ background-color: #fff;
+ }
+}
</style>
diff --git a/src/page/user/compontents/transferindex-list.vue b/src/page/user/compontents/transferindex-list.vue
new file mode 100644
index 0000000..d1c2bc8
--- /dev/null
+++ b/src/page/user/compontents/transferindex-list.vue
@@ -0,0 +1,87 @@
+<template>
+ <div style="height: 100vh">
+ <van-nav-bar
+ :placeholder="true"
+ :safe-area-inset-top="true"
+ :title="$t('劃轉记录')"
+ left-arrow
+ @click-left="$router.go(-1)"
+ >
+ </van-nav-bar>
+ <div>
+ <van-list
+ v-model="loading"
+ :finished="finished"
+ finished-text="没有更多了"
+ @load="onLoad"
+ >
+ <van-cell v-for="item in list" :key="item.id">
+ <div class="item">
+ <div>
+ <div v-if="Number(item.amount) < 0">
+ {{ $t("美股账户") }} > {{ $t("馬股账户") }}
+ </div>
+ <div v-else>{{ $t("馬股账户") }} > {{ $t("美股账户") }}</div>
+ </div>
+ <div>{{ Math.abs(Number(item.amount)) }} USD</div>
+ </div>
+ </van-cell>
+ </van-list>
+ </div>
+ </div>
+</template>
+
+<script>
+import { getMoenyLog } from "@/axios/api";
+export default {
+ data() {
+ return {
+ list: [],
+ loading: false,
+ finished: false,
+ };
+ },
+ created() {
+ this.getMoenyLogs();
+ },
+ methods: {
+ async getMoenyLogs() {
+ const res = await getMoenyLog({ type: "转换" });
+ const arr = res.data.filter((item) => item.accectType === "US");
+ this.list = arr;
+ // 加载状态结束
+ this.loading = false;
+ this.finished = true;
+ },
+ onLoad() {
+ // 异步更新数据
+ // setTimeout 仅做示例,真实场景中一般为 ajax 请求
+ },
+ },
+};
+</script>
+
+<style lang="less" scoped>
+.item {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ font-size: 16px;
+ line-height: 38px;
+}
+/deep/ .van-nav-bar__content {
+ height: 65px;
+}
+/deep/ .van-nav-bar__title {
+ font-family: "DINPro";
+ width: 100%;
+ height: 1.17333rem;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ font-style: normal;
+ font-weight: 500;
+ font-size: 0.48rem;
+ color: #14181f;
+}
+</style>
\ No newline at end of file
diff --git a/src/page/user/ransferIndex.vue b/src/page/user/ransferIndex.vue
index cd5b2fa..52a09c8 100644
--- a/src/page/user/ransferIndex.vue
+++ b/src/page/user/ransferIndex.vue
@@ -6,7 +6,15 @@
:title="$t('劃轉')"
left-arrow
@click-left="onClickLeft"
- />
+ >
+ <template #right>
+ <van-icon
+ @click="$router.push('/transferindex-list')"
+ name="orders-o"
+ size="20"
+ />
+ </template>
+ </van-nav-bar>
<main>
<div>
<div class="main-header">
@@ -154,7 +162,7 @@
<script>
import * as api from "@/axios/api";
import { Notify } from "vant";
-import { login, transfer } from "../../axios/api";
+import { transfer } from "../../axios/api";
export default {
created() {
@@ -164,7 +172,7 @@
components: {},
data() {
return {
- exchangeRate: 7.35,
+ exchangeRate: 4.59,
formValue: "",
from: {},
to: {},
@@ -186,7 +194,7 @@
if (res.status === 0) {
Notify({ type: "success", message: this.$t("划转成功") });
setTimeout(() => {
- this.$router.push("/user");
+ this.$router.push("/transferindex-list");
}, 500);
} else {
Notify({ type: "warning", message: res.msg });
diff --git a/src/page/user/recharge-sure.vue b/src/page/user/recharge-sure.vue
index 8dc6582..95d6848 100644
--- a/src/page/user/recharge-sure.vue
+++ b/src/page/user/recharge-sure.vue
@@ -6,7 +6,15 @@
:title="$t('提款')"
left-arrow
@click-left="onClickLeft"
- />
+ >
+ <template #right>
+ <van-icon
+ @click="$router.push('/cashlist')"
+ name="orders-o"
+ size="20"
+ />
+ </template>
+ </van-nav-bar>
<main>
<div class="main-title">{{ $t("請選擇提款账户") }}</div>
<van-cell
@@ -50,18 +58,10 @@
<div class="dz-title" v-if="rechargeAccountData.key !== undefined">
<div>{{ $t("可用餘額") }}</div>
<div class="balance-text">
- {{ availableBalanceUSD }} {{ symbolCode }}
+ {{ availableBalanceUSD }} USD
+ <!-- {{ symbolCode }} -->
</div>
</div>
-
- <!-- <div class="dz-title">
- <div>實際到帳</div>
- <div class="balance-text">0.0000</div>
- </div> -->
- <!-- <div class="dz-title" v-if="rechargeAccountData.key !== undefined">
- <div>最小提款金額</div>
- <div class="balance-text">0.0000</div>
- </div> -->
</div>
<van-button
class="but"
@@ -125,9 +125,9 @@
assetsType: this.accectType,
});
if (res.status === 0) {
- Notify({ type: "success", message: this.$t("提款成功,等待审核") });
+ Notify({ type: "success", message: this.$t("hj182") });
setTimeout(() => {
- this.onClickLeft();
+ this.$router.push("/cashlist");
}, 500);
} else {
Notify(res.msg);
@@ -149,8 +149,7 @@
this.getMoneyList = res.data;
res.data.map((item) => {
if (item.accectType === this.rechargeAccountData.key) {
- console.log(item.accectType, "assetsType1");
- this.availableBalanceUSD = item.availableBalance;
+ this.availableBalanceUSD = item.availableBalanceUSD;
this.symbolCode = item.symbolCode;
this.accectType = item.accectType;
}
@@ -184,7 +183,7 @@
this.rechargeAccountData = e;
(this.getMoneyList || []).map((item) => {
if (item.accectType === this.rechargeAccountData.key) {
- this.availableBalanceUSD = item.availableBalance;
+ this.availableBalanceUSD = item.availableBalanceUSD;
this.symbolCode = item.symbolCode;
this.accectType = item.accectType;
}
diff --git a/src/page/user/recharge.vue b/src/page/user/recharge.vue
index 0809458..553c436 100644
--- a/src/page/user/recharge.vue
+++ b/src/page/user/recharge.vue
@@ -6,7 +6,15 @@
:title="$t('充值中心')"
left-arrow
@click-left="onClickLeft"
- />
+ >
+ <template #right>
+ <van-icon
+ @click="$router.push('/rechargelist')"
+ name="orders-o"
+ size="20"
+ />
+ </template>
+ </van-nav-bar>
<main>
<div>
<div class="main-title">{{ $t("支持得支付渠道") }}</div>
@@ -43,10 +51,10 @@
</div>
<div class="main-title">{{ $t("收款人名字") }}</div>
<div class="white-input">
- <span>{{ paymentSelectData.channelImg }}</span>
+ <span>{{ paymentSelectData.channelName }}</span>
<i
class="iconfont icon-fuzhi fuzhi"
- @click="(e) => copyText(e, channelImg)"
+ @click="(e) => copyText(e, paymentSelectData.channelName)"
></i>
</div>
<div class="main-title">{{ $t("請選擇充值賬戶") }}</div>
@@ -86,6 +94,7 @@
{{ $t("上傳憑證:") }}
</div>
<el-upload
+ v-loading="loading"
:with-credentials="true"
class="avatar-uploader"
:action="admin + '/user/upload.do'"
@@ -107,8 +116,8 @@
</el-upload>
</div>
</div>
+ <!-- :disabled="butFlg" -->
<van-button
- :disabled="butFlg"
class="but"
type="primary"
style="margin-top: 1.04rem; margin-bottom: 1.04rem"
@@ -136,6 +145,7 @@
// getPayInfo
data() {
return {
+ loading: false,
butFlg: true,
admin: apiUrl.baseURL,
value: 0,
@@ -209,9 +219,9 @@
img: this.form.img1key,
});
if (res.status === 0) {
- Notify({ type: "success", message: "充值成功" });
+ Notify({ type: "success", message: this.$t("hj182") });
setTimeout(() => {
- this.onClickLeft();
+ this.$router.push("/rechargelist");
}, 500);
}
// Notify("请上传文件");
@@ -229,13 +239,16 @@
handleAvatarSuccess(res, file) {
this.imgStatus = false;
this.form.img1key = res.data.url;
+ this.loading = false;
this.judgeValue();
},
beforeAvatarUpload(file) {
+ this.loading = true;
this.judgeValue();
this.imgStatus = true;
},
handleError() {
+ this.loading = false;
this.imgStatus = false;
},
// upload
@@ -243,9 +256,9 @@
console.log(file);
let formData = new FormData();
formData.append("file", file.file || file.raw);
- console.log(formData);
+ // console.log(formData);
const res = await upload({ file: formData });
- console.log(res);
+ // console.log(res);
},
copyText(e, data) {
var clipboard = new ClipboardJS(".copy-button", {
@@ -408,4 +421,8 @@
/deep/ .el-upload__input {
display: none !important;
}
+/deep/ .avatar-uploader {
+ width: 2.740741rem;
+ height: 2.740741rem;
+}
</style>
\ No newline at end of file
diff --git a/src/router/index.js b/src/router/index.js
index a0814e9..a8ce641 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -33,6 +33,7 @@
import Aggre from "@/page/user/agreement";
import Recharge from "@/page/user/recharge";
import RransferIndex from "@/page/user/ransferIndex";
+import transferindexList from "@/page/user//compontents/transferindex-list";
import RechargeSure from "@/page/user/recharge-sure";
import RechargeList from "@/page/user/rechargelist";
import Cash from "@/page/user/cash";
@@ -421,6 +422,16 @@
},
{
+ path: "/transferindex-list",
+ name: "transferindexList",
+ meta: {
+ title: "划转记录",
+ requireAuth: true,
+ index: 3020
+ },
+ component: transferindexList
+ },
+ {
path: "/yebs",
name: "yebs",
meta: {
@@ -588,7 +599,7 @@
path: "/rechargelist",
name: "rechargelist",
meta: {
- title: "充值记录",
+ title: i18n.t("hj168"),
requireAuth: true,
hasHeader: true,
index: 33
@@ -621,7 +632,7 @@
path: "/cashlist",
name: "cashlist",
meta: {
- title: "提现记录",
+ title: i18n.t("hj162"),
requireAuth: true,
hasHeader: true,
index: 36
--
Gitblit v1.9.3