From e2501b4f5294ed971c0c3dcc841cd1d85be9cabd Mon Sep 17 00:00:00 2001
From: admin <344137771@qq.com>
Date: Mon, 12 Jan 2026 17:13:38 +0800
Subject: [PATCH] 1
---
src/page/home/sharerecordVip.vue | 344 ++++++++++++++++++++++
src/axios/api.js | 8
src/axios/api.url.js | 2
src/page/home/daylimitNew.vue | 480 ++++++++++++++++++++++++++++++++
src/page/home/Subscription.vue | 2
src/router/index.js | 18 +
6 files changed, 850 insertions(+), 4 deletions(-)
diff --git a/src/axios/api.js b/src/axios/api.js
index 2f75b3f..64ddfc0 100644
--- a/src/axios/api.js
+++ b/src/axios/api.js
@@ -191,6 +191,14 @@
export function getVipList(options) {
return post('/api/stock/getVipList.do', options)
}
+// vip抢筹下单
+export function buyStockVip(options) {
+ return post('/user/buyStockVip.do', options)
+}
+// vip抢筹下单列表
+export function buyStockVipList(options) {
+ return post('/user/buyStockVipList.do', options)
+}
// vip抢筹详情下单
export function buyVipQc(options) {
return post('/user/buyVipQc.do', options)
diff --git a/src/axios/api.url.js b/src/axios/api.url.js
index 1c987be..aa117ac 100644
--- a/src/axios/api.url.js
+++ b/src/axios/api.url.js
@@ -2,7 +2,7 @@
const ENV = process.env.NODE_ENV
export default {
DOMAIN: 'https://api.qitiana.cfd/',
- baseURL: ENV == 'development' ? 'https://api.qitiana.cfd/' :'https://api.qitiana.cfd/',
+ baseURL: ENV == 'development' ? 'http://192.168.10.5:8091' :'https://api.qitiana.cfd/',
// // baseURL: 'http://localhost:8070',
// /* Util API */
// // baseURL: 'https://api.qitiana.cfd/',
diff --git a/src/page/home/Subscription.vue b/src/page/home/Subscription.vue
index b65a8e0..5e56679 100644
--- a/src/page/home/Subscription.vue
+++ b/src/page/home/Subscription.vue
@@ -120,7 +120,7 @@
font-size: 0.48rem;
font-weight: 500;
line-height: 1.2rem;
- margin-top: 0.45rem;
+ margin-top: 0.15rem;
}
.ghbn {
diff --git a/src/page/home/daylimitNew.vue b/src/page/home/daylimitNew.vue
new file mode 100644
index 0000000..f72508e
--- /dev/null
+++ b/src/page/home/daylimitNew.vue
@@ -0,0 +1,480 @@
+<template>
+ <div>
+ <div class="heabox">
+ <div class="toubu">
+ <span class="fanhui" @click="$router.go(-1)"></span>
+ <div class="title-text">{{ $t('jy535') }}</div>
+ </div>
+ </div>
+ <div class="kuange">
+ <div class="kdan" @click="sharerecordVip"><img
+ src="data:image/png;base64,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">
+ <p>{{ $t("jy3") }}</p>
+ </div>
+ </div>
+ <div class="list" v-for="(item, index) in vipList" :key="index">
+ <div class="lbox">
+ <div class="lb1">
+ <h6>{{ item.stockName }}</h6>
+ <p>
+ <span v-if="item.stockType == 'sz'">{{ $t("jy83") }}</span>
+ <span class="sh" v-if="item.stockType == 'sh'">{{ $t("jy84") }}</span>
+ <span class="bj" v-if="item.stockType == 'bj'">{{ $t("jy85") }}</span>
+ <a :class="item.stockType == 'sh' ? 'shbg' : item.stockType == 'bj' ? 'bjbg' : ''">{{
+ item.stockGid
+ }}</a>
+ </p>
+ </div>
+ <div class="lb2"> {{ item.price }} </div>
+ <div class="lb3"><a @click="getdetail(item)">{{ $t("hj238") }}</a></div>
+ </div>
+ <div class="progress-bar-wrapper">
+ <div class="progress-bar-bg">
+ <div class="progress-bar-fill" :style="{ width: (item.residualShare || 0) + '%' }"></div>
+ </div>
+ <span class="progress-text">【{{ $t("jy546") }}{{ item.residualShare || 0 }}%】</span>
+ </div>
+ </div>
+ <van-popup v-model="show" round position="bottom">
+ <div class="boxd">
+ <div class="boxh">
+ {{ $t("jy535") }} <span @click="show = false"></span>
+ </div>
+ <h5>{{ $t("hj130") }}</h5>
+ <h6>{{ currentItem.price ? currentItem.price : '' }}</h6>
+ <div class="erty tghj"><input :placeholder="$t('jy87')" type="number" class="inpy" v-model="num"
+ @input="num = num.replace(/^(0+)|[^\d]+/g, '')"><a>{{ $t("hj117") }}</a></div>
+ <p class="plm"><span>{{ $t("jy88") }}</span><a>{{ currentItem.price ? (currentItem.price * num *
+ 100).toFixed(2) :
+ '0.00'
+ }}</a>
+ </p>
+ <div class="erty"><input :placeholder="$t('jy89')" type="password" class="inpy" v-model="password">
+ </div>
+ <p class="plm"><span>{{ $t("hj54") }}</span><a>{{ userinfo.enableAmt }}</a></p>
+ <div class="maik" @click="getxiadan">{{ $t("hj85") }}</div>
+ </div>
+ </van-popup>
+ </div>
+</template>
+<script>
+import * as api from '@/axios/api'
+export default {
+ components: {
+ },
+ props: {},
+ data() {
+ return {
+ show: false,
+ vipList: [],
+ num: '',
+ currentItem: '',
+ userinfo: '',
+ password: ''
+ }
+ },
+ mounted() {
+ this.getVipList()
+ this.getUserInfo()
+ },
+ methods: {
+ sharerecordVip() {
+ this.$router.push({ path: '/sharerecordVip' })
+ },
+ getdetail(item) {
+ this.currentItem = item
+ this.show = true
+ },
+ async getxiadan() {
+ if (!this.num) {
+ this.show = false
+ this.$toast('请输入数量')
+ return
+ }
+ if (!this.password) {
+ this.show = false
+ this.$toast('请输入秘钥')
+ return
+ }
+ var opt = {
+ stockCode: this.currentItem.stockCode,
+ password: this.password,
+ num: this.num * 100,
+ }
+ let res = await api.buyStockVip(opt)
+ if (res.status == 0) {
+ this.$toast('买入成功')
+ } else {
+ this.$toast(res.msg)
+ }
+ this.show = false
+ },
+ async getVipList() {
+ let res = await api.getVipList()
+ if (res.status == 0) {
+ this.vipList = res.data
+ }
+ },
+ async getUserInfo() {
+ // 获取用户信息
+ let data = await api.getUserInfo();
+ if (data.status === 0) {
+ this.userinfo = data.data;
+ }
+ },
+ },
+}
+</script>
+<style lang="less" scoped>
+.heabox {
+ height: 3.6rem;
+ background: linear-gradient(-55deg, rgb(241, 22, 20), rgb(240, 40, 37));
+
+ .toubu {
+ width: 100%;
+ display: flex;
+
+ .fanhui {
+ width: 0.266rem;
+ height: 0.43rem;
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAgCAYAAAAffCjxAAAAAXNSR0IArs4c6QAAAVdJREFUSEut1usqBVEYxvH/c1MuRJJDkhwTEpIkJUlyCEk++CJJckpycw49Gs3Wa+y9Z82ePd/Xr5n38KwRNR7bE0APMK1OHdtTwAWQGZcdQbZngPMc+QImK0O2Z4GzgIxLuqoE2Z4DTgMyJuk6K08yZHseOAnIqKSbRo2TINsLwHFARiTdxkaVQrYXgaOADEu6K3a7LWR7CTjMD2XdaYq0rZHtFWA/Rz6BIUn3reau6RvZXgX28kMfOfLQbnj/QbbXgN380HuOPJZtwB/I9jqwE5ABSc9lyJ8a2d4AtgPSL+klBfmFbG8CWwHpk/SaivxAtjMgg7Inq0mvpLcqSHehTOvKpzU+oSvFDlj99gesOJCDkp7Kip+yIknT3XL7C0tbum9lMbIMHKQkQEqwJWVSKZTPWTElq0dt6GYxt6uHf8DqX0cBq39BBqz+lR2w+j8RAfv9rfkGqF24CUdT9E4AAAAASUVORK5CYII=) no-repeat 50%;
+ background-size: 100%;
+ display: inline-block;
+ vertical-align: middle;
+ margin-top: 0.45rem;
+ margin-left: 0.32rem;
+ }
+
+ .title-text {
+ flex: 1;
+ text-align: center;
+ color: #ffffff;
+ font-size: 0.48rem;
+ font-weight: 500;
+ line-height: 1.2rem;
+ margin-top: 0.15rem;
+ }
+
+ .ghbn {
+ width: 100%;
+ }
+ }
+
+ .suo {
+ width: 9.35rem;
+ height: 0.93rem;
+ background: hsla(0, 0%, 100%, .1);
+ border-radius: 0.13rem;
+ margin: 0 auto;
+ margin-top: 0.19rem;
+ border-top: 0.0266rem solid transparent;
+
+ .tr {
+ width: 0.43rem;
+ height: 0.43rem;
+ display: block;
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA4dJREFUWEe9l0msn2MUxn8PYl4QolhIKhYS00JalAiCIIbeBg1FSrsTQxcsGrEo3WBR0pWZkjSGVEpMiSkiTRPTgkhKYiaGiilmHnna8/H1/r//4N6/+27u/X/vec953nPOc855xZBle39gAXAycCiwH7Ar8C3wIfAa8DTwhKSfh+mbvK9+B2wfCKwAFgI7jKD4G+BW4BZJP40gv0WkB4DtfLsaWAns0lL0MfAq8CnwA7AbcAhwHLBTS+4D4CJJr4wCYhsAtrcH7gQW12EDj9atNnYptL07MAEsBw4umd+ByyQ9MAzEPwDq5vcHfR36qG7y8jAl2be9HXANcGOF7M86v3bQ+TaAK4DbSjiuPk3S5lGMt2Vsnwo8DuwIJBfmSnq7n54tAGzPBiKUmCfWR0r66r8ab+Rtnw08VjmW0M2T9FeXvgbAmnJ9Yn6SpBenarwFYhVwVf1eKOmhTgC2ZwGfVNzWSQrnp71s7wG8D+TvBknz+gG4HFhdmydIemna1hsK2akLV9bP2ZJC0W2WbK8D5gOJ+SxJCcNYlu3jgeZCSyTd3QXgXeAgYL2kc8Zi+V8PJKl/BELRVZKWdQGIQKraakmh4liX7c+qf6yVdEEXgMblN0u6dqzWt1I8DeuAfh5ODqSJ7AncJWnp/wCg0b9G0iVdHngTOGIQVaYKyva+wOd1fqWk67oApPksAX4D9pKUnBjLsn0h8GApm5CU6thDw3OBh+vrpZLuHYv1rfF/LpUV+LUo/l0XgJ2r/u8NvAMcLumP6YKwPRdoWngnA2Kj6QWJzQ1l9HpJzf9TwmE7A0o6aka4sCzN7Y0uZQ2AzHhvAemK6eMLJK2fivWaC+5rzRUD2dWeB44Fnq8+npgtHWWiaYO0nXDeDlxc3zcBcyR93+8yk0eyRUCmopTOuC4MWS7p62HesH0UcAdwWMl+kXlR0nuDznYNpecD99TonbOhZagUpmxsaFquToU7BTivxvZGX/rLGZmGgHTbFZKe6ZsDkzdsJ3nSueZ0HPoSCEv26RjX47WAXxa3294AHF01Zr6kp3po2M89dcN4I/38mCEhSM6kyNwk6fVG1vbp9T3zYQpdD4i+D5NJyZVHyokV37yU8lD5pSae0O0FSXkp9SzbZwGPVHL3gBgJwLAEHLY/CMSMAAjADhDpDU/OGIACcWa9tJqcmJhRAB0gNs84gBaIFLxn/wb6PUsFkO1mDQAAAABJRU5ErkJggg==) no-repeat 50%;
+ background-size: 100%;
+ margin-left: 0.266rem;
+ margin-top: 0.24rem;
+ }
+ }
+}
+
+.dbox {
+ width: 100%;
+ padding-bottom: 0.266rem;
+ border-bottom: 1px solid #e0e0e0;
+
+
+ .daz {
+ width: 9.35rem;
+ margin: 0 auto;
+ display: flex;
+ justify-content: space-between;
+
+ span {
+ color: #666;
+ font-size: .35rem;
+ }
+
+ .d1 {
+ width: 40%;
+ }
+
+ .d2 {
+ width: 20%;
+ text-align: center;
+ }
+
+ .d3 {
+ width: 15%;
+ }
+ }
+}
+
+.kuange {
+ width: 5.34rem;
+ margin: 0 auto;
+ display: flex;
+ justify-content: space-between;
+ padding-top: 0.2rem;
+
+ .kdan {
+ width: 2.14rem;
+ text-align: center;
+ margin: 0 auto;
+ margin-bottom: 0.5rem;
+
+ img {
+ width: 0.51rem;
+ height: 0.51rem;
+ }
+
+ p {
+ color: #333;
+ font-size: .35rem;
+ margin-top: 0.24rem;
+ }
+ }
+}
+
+.list {
+ width: 100%;
+ padding: 0.4rem 0;
+ border-bottom: 1px solid #e0e0e0;
+
+ .progress-bar-wrapper {
+ width: 90%;
+ display: flex;
+ align-items: center;
+ gap: 0.2rem;
+ margin: 0.4rem 5% 0;
+
+ .progress-bar-bg {
+ flex: 1;
+ height: 0.3rem;
+ background-color: #f0f0f0;
+ border-radius: 0.15rem;
+ overflow: hidden;
+ position: relative;
+
+ .progress-bar-fill {
+ height: 100%;
+ background: linear-gradient(90deg, #f33030 0%, #d73d3d 100%);
+ border-radius: 0.15rem;
+ position: absolute;
+ left: 0;
+ top: 0;
+ transition: width 0.3s ease;
+ min-width: 0;
+ }
+ }
+
+ .progress-text {
+ color: #333;
+ font-size: 0.28rem;
+ white-space: nowrap;
+ font-weight: 500;
+ flex-shrink: 0;
+ }
+ }
+
+ .lbox {
+ width: 9.35rem;
+ margin: 0 auto;
+ display: flex;
+ justify-content: space-between;
+
+ .lb1 {
+ h6 {
+ color: #333;
+ font-size: .4rem;
+ font-weight: 600;
+ }
+
+ p {
+ color: #333;
+ font-size: .32rem;
+ margin-top: 0.13rem;
+
+ span {
+ width: 0.4rem;
+ height: 0.4rem;
+ background: #3b4fde;
+ border-radius: 0.05rem;
+ padding: 0.04rem;
+ text-align: center;
+ line-height: .4rem;
+ color: #fff;
+ font-size: .3rem;
+ }
+
+ a {
+ display: inline-block;
+ height: 0.4rem;
+ line-height: .4rem;
+ padding: 0 0.11rem;
+ background: rgba(59, 79, 222, .1);
+ border-radius: 0.05rem;
+ color: #3b4fde;
+ font-size: .32rem;
+ vertical-align: middle;
+ }
+
+ .bj {
+ background: #ea6248;
+ }
+
+ .sh {
+ background: #aa3bde;
+ }
+
+ .shbg {
+ color: #aa3bde;
+ background: rgba(170, 59, 222, .1);
+ }
+
+ .bjbg {
+ color: #ea6248;
+ background: rgba(234, 98, 72, .1);
+ }
+ }
+ }
+
+ .lb2 {
+ color: #d73d3d;
+ font-size: .32rem;
+ margin-top: 0.32rem;
+ }
+
+ .lb3 {
+ text-align: right;
+
+ a {
+ display: inline-block;
+ width: 1.6rem;
+ height: 0.67rem;
+ background: linear-gradient(-55deg, rgb(241, 22, 20), rgb(240, 40, 37));
+ border-radius: 0.35rem;
+ text-align: center;
+ color: #fff;
+ font-sizE: .32rem;
+ line-height: .67rem;
+ margin-top: 0.08rem;
+ }
+ }
+ }
+}
+
+.boxd {
+ background: #fff;
+ border-radius: 0.266rem 0.266rem 0 0;
+ padding-bottom: 0.53rem;
+
+ .boxh {
+ height: 1.2rem;
+ border-bottom: 0.0266rem solid #e0e0e0;
+ text-align: center;
+ line-height: 1.2rem;
+ color: #333;
+ font-size: 0.43rem;
+ width: 9.48rem;
+ margin: 0 auto;
+ position: relative;
+
+ span {
+ position: absolute;
+ width: 0.32rem;
+ height: 0.32rem;
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAStJREFUSEutlk1qhDAUgF+EzG5EWsYTzK6HKO0hcgB3gscR3IgH8BBTeojuegJLQWg3NqDlyUQwRn0xcWeQ7zMv7ycMAKCu61PTNOcsy77x3fUpy/IhDMNfIcQfQ3jbtvUwDFfO+UuSJF8ugqqqLlLKN8bYZxRFguV5/sg5fweAJwD4cJEouGJJKZ8Z/m1RFHEQBDcXiQ7v+/41TdNmFLhK1uDInQRHJVvwhcBWsgc3CqgSCnxVsCehwjcFaxJcxzynZtzskE0Fpqfw/RtyzewKDDvBJXJBkgRazP0K9AP1GiIdjn2q6zpm01ZWQ2SCq05r07uMgi24be9aCChwG8lMYAOnSibBEThFMgpc4HsSryNTz65xZPoe+koyDX3cou9rC14k4jj+wWvLP1ylVM57GzhpAAAAAElFTkSuQmCC) no-repeat 50%;
+ background-size: 100%;
+ right: 0.266rem;
+ top: 0.4rem;
+ }
+ }
+
+ h5 {
+ color: #333;
+ font-size: .37rem;
+ font-weight: 500;
+ width: 9.48rem;
+ margin: 0 auto;
+ margin-top: 0.32rem;
+ }
+
+ h6 {
+ color: #ea3544;
+ font-size: .43rem;
+ width: 9.48rem;
+ margin: 0 auto;
+ margin-top: 0.32rem;
+ font-weight: 600;
+ }
+
+ .erty {
+ width: 9.21rem;
+ height: 1.07rem;
+ border: 0.0266rem solid #999;
+ border-radius: 0.13rem;
+ margin: 0 auto;
+ display: flex;
+ justify-content: space-between;
+ margin-top: 0.59rem;
+
+ .inpy {
+ height: 1.07rem;
+ width: 5.34rem;
+ margin-left: 0.266rem;
+ background: transparent;
+ font-size: .37rem;
+ color: #000;
+ }
+
+ a {
+ height: 0.64rem;
+ border-left: 0.0266rem solid #999;
+ width: 1.15rem;
+ margin-top: 0.266rem;
+ text-align: center;
+ font-size: .37rem;
+ color: #000;
+ line-height: .64rem;
+ }
+ }
+
+ .tghj {
+ border: 0.0266rem solid #3b4fde;
+ margin-top: 0.45rem;
+ }
+
+ .plm {
+ width: 8.94rem;
+ margin: 0 auto;
+ margin-top: 0.266rem;
+
+ span {
+ color: #999;
+ font-size: .32rem;
+ }
+
+ a {
+ color: #f33030;
+ margin-left: 0.11rem;
+ }
+ }
+
+ .maik {
+ width: 9.21rem;
+ height: 1.07rem;
+ background: linear-gradient(-55deg, rgb(241, 22, 20), rgb(240, 40, 37));
+ border-radius: 0.26rem;
+ margin: 0 auto;
+ margin-top: 0.56rem;
+ text-align: center;
+ line-height: 1.07rem;
+ color: #fff;
+ font-size: .37rem;
+ }
+}
+</style>
\ No newline at end of file
diff --git a/src/page/home/sharerecordVip.vue b/src/page/home/sharerecordVip.vue
new file mode 100644
index 0000000..fdd0f5d
--- /dev/null
+++ b/src/page/home/sharerecordVip.vue
@@ -0,0 +1,344 @@
+<template>
+ <div>
+ <div class="dabg">
+ <div class="gebgh">
+ <div>
+ <h2><span class="hbnh" @click="$router.go(-1)"><a class="fan"></a></span> {{ $t('jy3') }} </h2>
+ </div>
+ </div>
+ <div class="jilkm" v-for="(item, index) in shengouList" :key="index">
+ <div class="namkl">
+ <div class="nlt">
+ <h6>{{ item.stockName }}
+ <span>{{ item.status == 1 ?
+ $t('hj131') : item.status == 2 ? $t('hj132')
+ : item.status == 3 ? $t('hj133') : item.status == 4 ? $t('hj134') :
+ item.status == 5 ?
+ $t('hj135')
+ : ''
+ }}</span>
+ </h6>
+ <p>
+ <span v-if="item.stockGid.indexOf('sz')>=0">{{ $t('jy83') }}</span>
+ <span class="sh" v-if="(item.stockGid.indexOf('sh')>=0)">{{ $t('jy84') }}</span>
+ <span class="bj" v-if="(item.stockGid.indexOf('bj')>=0)">{{ $t('jy85') }}</span>
+ <a
+ :class="(item.stockGid.indexOf('sz')>=0 || item.stockGid.indexOf('sh')>=0) ? 'shbg' : item.stockGid.indexOf('bj')>=0 ? 'bjbg' : ''">{{
+ item.stockGid
+ }}</a>
+ </p>
+ </div>
+ <div class="rlt"> {{ $t('jy130') }} <span>{{ item.orderTotalPrice }}</span></div>
+ <div v-if="item.type == 1 && item.status == 3" @click="getrenjiao(item.id)" class="renjiao">{{ $t('hj250') }}</div>
+ </div>
+ <div class="gnj"></div>
+ <div class="plkm">
+ <p><span>{{ $t('jy131') }}</span><a>{{ item.orderNum }}</a></p>
+ <p><span>{{ $t('jy132') }}</span><a>{{ item.buyOrderPrice }}</a></p>
+ <p><span>{{ $t('jy133') }}</span><span>{{ item.buyOrderId }}</span></p>
+ <p><span>{{ $t('jy134') }}</span><span>{{ item.buyOrderTime | gettime }}</span></p>
+ </div>
+ </div>
+ </div>
+ </div>
+</template>
+<script>
+import * as api from '@/axios/api'
+import { MessageBox } from 'mint-ui'
+import { Toast } from 'mint-ui'
+export default {
+ components: {
+
+ },
+ props: {},
+ data() {
+ return {
+ shengouList: [],
+ }
+ },
+ mounted() {
+ this.getUserNewGuList()
+ },
+ methods: {
+ getrenjiao(val) {
+ MessageBox.confirm(this.$t('hj251') + '?', this.$t('hj165'), {
+ confirmButtonText: this.$t('hj161'),
+ cancelButtonText: this.$t('hj106'),
+ }).then(async () => {
+ let opt = {
+ id: val
+ }
+ let data = await api.submitSubscribe(opt)
+ if (data.status == 0) {
+ Toast(data.msg)
+ this.getUserNewGuList();
+ } else {
+ Toast(data.msg)
+ }
+ }).catch(() => {
+
+ });
+ },
+ async getUserNewGuList() {
+ let data = await api.buyStockVipList();
+ if (data.status == 0) {
+ this.shengouList = data.data;
+ }
+ },
+ },
+ filters:{
+ gettime(time) {
+ if (!time) {
+ return "";
+ }
+ var nd = new Date(time);
+ var y = nd.getFullYear();
+ var mm = nd.getMonth() + 1;
+ var d = nd.getDate();
+ var h = nd.getHours();
+ var m = nd.getMinutes();
+ var c = nd.getSeconds();
+ if (mm < 10) {
+ mm = "0" + mm;
+ }
+ if (d < 10) {
+ d = "0" + d;
+ }
+ if (h < 10) {
+ h = "0" + h;
+ }
+ if (m < 10) {
+ m = "0" + m;
+ }
+ if (c < 10) {
+ c = "0" + c;
+ }
+ //17:35:2922-06-2022
+ return y + '-' + mm + '-' + d + ' ' + h + ":" + m + ":" + c;
+ }
+ }
+}
+</script>
+<style lang="less" scoped>
+.dabg {
+ background: #ffffff;
+
+ .gebgh {
+ height: 1.17rem;
+ background: linear-gradient(-55deg,rgb(241, 22, 20),rgb(240, 40, 37));
+
+ h2 {
+ text-align: center;
+ height: 1.25rem;
+ width: 100%;
+ position: relative;
+ line-height: 1.25rem;
+ font-size: .48rem;
+ color: #fff;
+ background: transparent;
+ font-weight: 500;
+ z-index: 3;
+
+ .hbnh {
+ position: absolute;
+ left: 0.4rem;
+ font-size: .43rem;
+ font-weight: 500;
+
+ .fan {
+ width: 0.24rem;
+ height: 0.43rem;
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAgCAYAAAAffCjxAAAAAXNSR0IArs4c6QAAAVdJREFUSEut1usqBVEYxvH/c1MuRJJDkhwTEpIkJUlyCEk++CJJckpycw49Gs3Wa+y9Z82ePd/Xr5n38KwRNR7bE0APMK1OHdtTwAWQGZcdQbZngPMc+QImK0O2Z4GzgIxLuqoE2Z4DTgMyJuk6K08yZHseOAnIqKSbRo2TINsLwHFARiTdxkaVQrYXgaOADEu6K3a7LWR7CTjMD2XdaYq0rZHtFWA/Rz6BIUn3reau6RvZXgX28kMfOfLQbnj/QbbXgN380HuOPJZtwB/I9jqwE5ABSc9lyJ8a2d4AtgPSL+klBfmFbG8CWwHpk/SaivxAtjMgg7Inq0mvpLcqSHehTOvKpzU+oSvFDlj99gesOJCDkp7Kip+yIknT3XL7C0tbum9lMbIMHKQkQEqwJWVSKZTPWTElq0dt6GYxt6uHf8DqX0cBq39BBqz+lR2w+j8RAfv9rfkGqF24CUdT9E4AAAAASUVORK5CYII=) no-repeat 50%;
+ background-size: 100%;
+ display: inline-block;
+ margin-right: 0.13rem;
+ vertical-align: middle;
+ margin-top: -0.05rem;
+ }
+ }
+ }
+
+ .fourg {
+ width: 7.34rem;
+ margin: 0 auto;
+ display: flex;
+ justify-content: space-between;
+ height: 0.8rem;
+ position: relative;
+ margin-top: 0.8rem;
+
+ .xian {
+ border-top: 0.0266rem dashed #fff;
+ position: absolute;
+ left: 0.4rem;
+ width: 6.54rem;
+ top: 0.4rem;
+ }
+
+ .fouda {
+ width: 0.8rem;
+ position: relative;
+
+ .danhe {
+ width: 0.8rem;
+ height: 0.8rem;
+ background: hsla(0, 0%, 100%, .2);
+ border-radius: 0.4rem;
+ text-align: center;
+
+ span {
+ width: 0.53rem;
+ height: 0.53rem;
+ background: #fff;
+ display: inline-block;
+ margin: 0 auto;
+ margin-top: 0.13rem;
+ border-radius: 50%;
+ text-align: center;
+ color: #ea3544;
+ font-size: .43rem;
+ line-height: .54rem;
+ }
+ }
+
+ p {
+ text-align: center;
+ color: #fff;
+ font-size: .32rem;
+ margin-top: 0.13rem;
+ }
+ }
+ }
+ }
+
+ .jilkm {
+ padding-top: 0.4rem;
+ border-bottom: 10px solid #f5f5f5;
+
+ .namkl {
+ width: 9.35rem;
+ margin: 0 auto;
+ margin-bottom: 0.4rem;
+ display: flex;
+ justify-content: space-between;
+
+ .nlt {
+ h6 {
+ color: #333;
+ font-size: .4rem;
+ font-weight: 600;
+
+ span {
+ color: #ea3544;
+ font-size: .38rem;
+ margin-left: 0.1rem;
+ }
+ }
+
+ p {
+ color: #333;
+ font-size: .32rem;
+ margin-top: 0.13rem;
+
+ span {
+ width: 0.4rem;
+ height: 0.4rem;
+ background: #3b4fde;
+ border-radius: 0.05rem;
+ padding: 0.04rem;
+ text-align: center;
+ line-height: .4rem;
+ color: #fff;
+ font-size: .3rem;
+ }
+
+ a {
+ display: inline-block;
+ height: 0.4rem;
+ line-height: .4rem;
+ padding: 0 0.11rem;
+ background: rgba(59, 79, 222, .1);
+ border-radius: 0.05rem;
+ color: #3b4fde;
+ font-size: .32rem;
+ vertical-align: middle;
+ }
+
+ .bj {
+ background: #ea6248;
+ }
+
+ .sh {
+ background: #aa3bde;
+ }
+
+ .shbg {
+ color: #aa3bde;
+ background: rgba(170, 59, 222, .1);
+ }
+
+ .bjbg {
+ color: #ea6248;
+ background: rgba(234, 98, 72, .1);
+ }
+ }
+ }
+
+ .rlt {
+ font-sizE: .38rem;
+ color: #666;
+ margin-top: 0.266rem;
+
+ span {
+ color: #d73d3d;
+ margin-left: 0.08rem;
+ }
+ }
+
+ .renjiao {
+ width: 1.6rem;
+ height: 0.67rem;
+ background: linear-gradient(-55deg, #ea3544, #ea6248);
+ border-radius: 0.33rem;
+ color: #fff;
+ font-size: 0.32rem;
+ text-align: center;
+ line-height: 0.67rem;
+ }
+ }
+
+ .gnj {
+ height: 2px;
+ width: 100%;
+ background: #e0e0e0;
+ }
+
+ .plkm {
+ display: flex;
+ justify-content: space-between;
+ width: 9.35rem;
+ margin: 0 auto;
+ flex-wrap: wrap;
+ padding-bottom: 0.4rem;
+
+ p {
+ width: 48%;
+ margin-top: 0.4rem;
+ display: flex;
+ justify-content: space-between;
+
+ span {
+ color: #666;
+ font-size: 0.32rem;
+ }
+
+ a {
+ color: #d73d3d;
+ font-size: 0.35rem;
+ }
+ }
+ }
+
+ }
+}
+</style>
\ No newline at end of file
diff --git a/src/router/index.js b/src/router/index.js
index 69e3423..5c5b343 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -70,7 +70,9 @@
import About from '@/page/newUser/about.vue' // 我的关于我们等详情
import DragonTiger from '@/page/home/DragonTiger.vue' // 首页龙虎榜
import topTen from '@/page/home/topTen.vue' // 首页十大成交股
-import Daylimit from '@/page/home/daylimit.vue' // 首页每日涨停
+// import Daylimit from '@/page/home/daylimit.vue' // 首页每日涨停
+import Daylimit from '@/page/home/daylimitNew.vue' // vip调研券
+import sharerecordVip from '@/page/home/sharerecordVip.vue' // vip调研券下单记录
import StopRecovery from '@/page/home/stopRecovery.vue' // 每日停复牌
import Subscription from '@/page/home/Subscription.vue' // 新股申购
import newsharesDetail from '@/page/home/newshares/newsharesDetail.vue' // 新股申购详情
@@ -159,7 +161,7 @@
path: '/daylimit',
name: 'daylimit',
meta: {
- title: 'A股',
+ title: 'vip调研券',
requireAuth: true,
hasHeader: false,
show: true,
@@ -168,6 +170,18 @@
component: Daylimit
},
{
+ path: '/sharerecordVip',
+ name: 'sharerecordVip',
+ meta: {
+ title: 'vip调研券',
+ requireAuth: true,
+ hasHeader: false,
+ show: true,
+ index: 1
+ },
+ component: sharerecordVip
+ },
+ {
path: '/stopRecovery',
name: 'stopRecovery',
meta: {
--
Gitblit v1.9.3