29 files modified
22 files added
| | |
| | | name: "App", |
| | | created() { |
| | | //this.setUseInfo(); |
| | | this.$state.theme = "red"; |
| | | this.$state.theme = "black"; |
| | | let title = this.$route.meta.title || this.$t("hj224"); |
| | | this.title = title; |
| | | if (this.$route.meta.is_Show) { |
| | |
| | | @red: #ee0a24; |
| | | @brown: #ff976a; |
| | | @grey: #dddddd; |
| | | @Black1: #13161e; |
| | | |
| | | /deep/ .van-field__control { |
| | | color: #fff; |
| | | font-size: 1.4em; |
| | | } |
| | | /deep/ .no_data { |
| | | width: 100%; |
| | | padding-top: 2em; |
| | |
| | | /deep/ .van-list__error-text { |
| | | line-height: 1.925926rem !important; |
| | | } |
| | | /deep/ .van-nav-bar .van-icon { |
| | | color: @green; |
| | | font-size: 0.4rem; |
| | | /deep/ .van-nav-bar { |
| | | background-color: @Black1; |
| | | .van-icon { |
| | | color: @white; |
| | | font-size: 0.4rem; |
| | | } |
| | | } |
| | | /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: #fff !important; |
| | | } |
| | | /deep/ .more-news { |
| | | padding: 0.35rem 0; |
| | | text-align: center; |
| | | span { |
| | | font-size: 0.4rem; |
| | | line-height: 1.2rem; |
| | | color: #898a8e; |
| | | } |
| | | } |
| | | |
| | | #app { |
| | | width: 100vw; |
| | | height: 100vh; |
| | | min-height: 100vh; |
| | | overflow: hidden; |
| | | font-family: "rubik"; |
| | | color: #fff; |
| | | |
| | | .header-box { |
| | | width: 100%; |
| | |
| | | } |
| | | |
| | | .mint-header-title { |
| | | font-size: 0.36rem; |
| | | font-size: 0.46rem; |
| | | color: rgba(255, 255, 255, 1); |
| | | } |
| | | } |
| | |
| | | height: 100%; |
| | | // height: calc(100% - 1rem); |
| | | box-sizing: border-box; |
| | | background: #fff; |
| | | // background: #fff; |
| | | overflow-y: auto; |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | /deep/.footCss { |
| | | background: @purple; |
| | | background: @Black1; |
| | | } |
| | | |
| | | /deep/.newDetail-tits { |
| | | color: #aaa; |
| | | } |
| | | |
| | | /deep/.van-skeleton__row, |
| | | .van-skeleton__title { |
| | | // background-color: #fff !important; |
| | | } |
| | | } |
| | | |
| | | &.black-theme { |
| | | // background: #16171d; |
| | | // background: rgb(14, 14, 15); |
| | | background: rgb(33, 33, 43); |
| | | background: #13161e; |
| | | color: #fff; |
| | | |
| | | /deep/.navs_content { |
| | | background: #272733; |
| | | background: #13161e; |
| | | } |
| | | |
| | | /deep/.fo_content { |
| | | background: #272733; |
| | | background: #13161e; |
| | | } |
| | | |
| | | /deep/.news-tab { |
| | | background: #272733; |
| | | background: #13161e; |
| | | } |
| | | |
| | | /deep/.mint-navbar { |
| | | background: #272733; |
| | | background: #13161e; |
| | | } |
| | | |
| | | /deep/.mint-tab-item-label { |
| | |
| | | color: #000; |
| | | } |
| | | |
| | | /deep/.mint-tab-container { |
| | | } |
| | | |
| | | /deep/.mint-tab-item { |
| | | background: #272733; |
| | | background: #13161e; |
| | | } |
| | | |
| | | /deep/.van-swipe-item { |
| | |
| | | |
| | | .mint-search-list { |
| | | position: relative !important; |
| | | } |
| | | |
| | | .topLeft { |
| | | } |
| | | |
| | | /deep/.el-alert { |
| | |
| | | // 本地 |
| | | baseURL: |
| | | // process.env.NODE_ENV == "development" ? "http://192.168.10.5:8091/" : "https://api.kuspitai.com/", |
| | | process.env.NODE_ENV == "development" ? "https://ciapi.yanshiz.com/" : "https://ciapi.yanshiz.com/", |
| | | process.env.NODE_ENV == "development" ? "https://ciapi.yanshiz.com/" : "https://usapi.yanshiz.com/", |
| | | util: { |
| | | image: "/util/image.html" // 图片上传 |
| | | } |
| | |
| | | <template> |
| | | <div class="footCss"> |
| | | <!-- <div :class="touch == item.key ? 'footDemos' : 'footDemo'" @click="goRouter(item.path, item.key)" v-for="item in tabs" |
| | | :key="item.path"> |
| | | <div class="footImgDeft"> |
| | | <img v-show="$store.state.select == item.path" :src="item.img" /> |
| | | <img v-show="$store.state.select != item.path" :src="item.actImg" /> |
| | | </div> |
| | | <div :class="$store.state.select == item.path ? 'blueFont' : ''"> |
| | | {{ item.name }} |
| | | </div> |
| | | </div> --> |
| | | <div |
| | | :class="touch == 1 ? 'footDemos' : 'footDemo'" |
| | | @click="goRouter('/home_index', 1)" |
| | | > |
| | | <div class="footImgDeft"> |
| | | <img |
| | | v-show="$store.state.select == '/home_index'" |
| | | src="../assets/foot/home-act.png" |
| | | /> |
| | | <img |
| | | v-show="$store.state.select != '/home_index'" |
| | | src="../assets/foot/home.png" |
| | | /> |
| | | </div> |
| | | <div :class="$store.state.select == '/home_index' ? 'blueFont' : ''"> |
| | | {{ $t("hj224") }} |
| | | </div> |
| | | </div> |
| | | <div |
| | | :class="touch == 3 ? 'footDemos' : 'footDemo'" |
| | | @click="goRouter('/markets', 3)" |
| | | @click="goRouter('/markets', 1)" |
| | | > |
| | | <div class="footImgDeft"> |
| | | <img |
| | | v-show="$store.state.select == '/markets'" |
| | | src="../assets/foot/language-act.png" |
| | | src="../assets/foot/tab_1_a.png" |
| | | /> |
| | | <img |
| | | v-show="$store.state.select != '/markets'" |
| | | src="../assets/foot/language.png" |
| | | src="../assets/foot/tab_1.png" |
| | | /> |
| | | </div> |
| | | <div :class="$store.state.select == '/markets' ? 'blueFont' : ''"> |
| | | {{ $t("hj62") }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div |
| | | :class="touch == 6 ? 'footDemos' : 'footDemo'" |
| | | @click="goRouter('/watchlists', 6)" |
| | | :class="touch == 2 ? 'footDemos' : 'footDemo'" |
| | | @click="goRouter('/fund_index', 2)" |
| | | > |
| | | <div class="footImgDeft"> |
| | | <img |
| | | v-show="$store.state.select == '/watchlists'" |
| | | src="../assets/foot/selected-act.png" |
| | | v-show="$store.state.select == '/fund_index'" |
| | | src="../assets/foot/tab_2_a.png" |
| | | /> |
| | | <img |
| | | v-show="$store.state.select != '/watchlists'" |
| | | src="../assets/foot/selected.png" |
| | | v-show="$store.state.select != '/fund_index'" |
| | | src="../assets/foot/tab_2.png" |
| | | /> |
| | | </div> |
| | | <div :class="$store.state.select == '/watchlists' ? 'blueFont' : ''"> |
| | | {{ $t("hj61") }} |
| | | <div :class="$store.state.select == '/fund_index' ? 'blueFont' : ''"> |
| | | {{ $t("理财") }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div |
| | | :class="touch == 7 ? 'footDemos' : 'footDemo'" |
| | | @click="goRouter('/tradeNew', 7)" |
| | | :class="touch == 3 ? 'footDemos' : 'footDemo'" |
| | | @click="goRouter('/new-list', 3)" |
| | | > |
| | | <div class="footImgDeft"> |
| | | <img |
| | | v-show="$store.state.select == '/tradeNew'" |
| | | src="../assets/foot/transaction-act.png" |
| | | v-show="$store.state.select == '/new-list'" |
| | | src="../assets/foot/tab_3_a.png" |
| | | /> |
| | | <img |
| | | v-show="$store.state.select != '/tradeNew'" |
| | | src="../assets/foot/transaction.png" |
| | | v-show="$store.state.select != '/new-list'" |
| | | src="../assets/foot/tab_3.png" |
| | | /> |
| | | </div> |
| | | <div :class="$store.state.select == '/tradeNew' ? 'blueFont' : ''"> |
| | | {{ $t("hj225") }} |
| | | <div :class="$store.state.select == '/new-list' ? 'blueFont' : ''"> |
| | | {{ $t("hj6") }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div |
| | | :class="touch == 8 ? 'footDemos' : 'footDemo'" |
| | | @click="goRouter('/account', 8)" |
| | | :class="touch == 4 ? 'footDemos' : 'footDemo'" |
| | | @click="goRouter('/account', 4)" |
| | | > |
| | | <div class="footImgDeft"> |
| | | <img |
| | | v-show="$store.state.select == '/account'" |
| | | src="../assets/foot/account-act.png" |
| | | src="../assets/foot/tab_4_a.png" |
| | | /> |
| | | <img |
| | | v-show="$store.state.select != '/account'" |
| | | src="../assets/foot/account.png" |
| | | src="../assets/foot/tab_4.png" |
| | | /> |
| | | </div> |
| | | <div :class="$store.state.select == '/account' ? 'blueFont' : ''"> |
| | | {{ $t("Account") }} |
| | | {{ $t("hj53") }} |
| | | </div> |
| | | </div> |
| | | <!-- <div :class="touch == 2 ? 'footDemos' : 'footDemo'" @click="goRouter('/trading-list', 2)"> |
| | | <div class="footImgDeft"> |
| | | <img v-show="$store.state.select == '/trading-list'" |
| | | src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAANGSURBVHgB3Zm/b9NAFMe/F2UoWxnL5LIVBgpsMJCqfwDhx8bQ8AdAki1UiMQSAiQGkh2FVGJECIayAc1Ax5JObCRMjGSKKpByvGc3IrEdx/bdOaEfyVJ0uUTva3/fu/M74D9HwBQluYwl5DFEHxl08Ez0YAD9AtzAixR0bWJcok5XQ7cQvQIeyBL9Y5U+LQd+L9GjyyYRLWhCj4CKzDmBC+QizXeF3CUhe1BETUBFWmSVF/Qpj2S0KEdsFVslE/DP5yVMs0schpQvR5QfddFHTOILqMjCsV0s6CRhfkQXENfnSXGFbES11WwBbJdTVAIFtpAukfJjugDdPk9Gn0TUSYQ9bUKwANcur7T7PCkhZdcvwC2NXSwif3ARz0VnfCjjm5ShR7aoZJ01Z4JMwLR1LCoBls5iDlxbda/cqkTuLND7BZR3Bd5/Q2xSE8AB59ckti5TSVua/M46DRQuSRIQf101JoCDvH6OArck8uf9QXvhp5AEYwKqmxLFK9Hm9o+A+n6ybZkxAQ0OSEqsnwEurIQ/gcY+8CP2Ns7FmAAnMT9M3lX2efOWf579MfmuPoOU4CfwaNM/vvFS7ZUkNQHN2xKWZ0dlf0punRGpCGDb5Ncmx9pdNeuMMCqAbcPBs/fHYd8X3uh5HTeWxLw4vb1DVWhlcpyDZ9+rWmeEEQFc/3kd8JZO3cEzWgXwXW/edPc3XkwEz2gRwHf6Pt310lUZuGBxwt54LZwVVzdKAmYFzpR3j1dlQygJOLjnr+0j+K6XaIt8+BNGUX4CXjoUcOMLsPPV3F0fR0kAv4SMqk37u7sp2+umE/gIJQE7B3wJR4CJBI2CfyWW8TsSqQU/xKF3yC9AoIzFpeQd8At4Qn2XIfUmae3B4tCjSAP7peEZty1rNKNItppPa5HWPudYakC9qimt99klgzt1ArW5NHcHZOcZZwZx2uvccvxMnyyYpe0cED6OdvwUv2hv0wEHnIM8C3rp0WVTDrZi/CbhEVONWu+/nYpQhSoRfB7+cxXU8+MdVbxy+od8Xh7SecKQzhOi2yqWz8PQu3GZlR/COXGx8VRoa+Hr33m51Yrzo+j5xk7q8zDMbR1ZSJbOGoa0CA7I65oDPzH8BdJ4DHPzc8XTAAAAAElFTkSuQmCC" /> |
| | | <img v-show="$store.state.select != '/trading-list'" |
| | | src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAVASURBVHgB5VpdSBxXFD53VgXNi7i+JYIPTc1LqwakRl9Ws4FGUrEVoqUt3Ygppg2NofRZF/pSSummrVZQshNIoT+QpqY0DzWNKY0xaaiaPqmBSpO8xWJfXNjd3ttzZrtlfu7O7s7cWSj5YMGdc2f2fHe+c+655wrwPweDgBCLjddDdXoAmNiBtFjV9ZktCADKCRiOV6XPaBqbtBg4JHj273OqiYRAIWKjp8ZZSHyDzj/vMDLohBAbaDvY8dfqr7+sgiIoeQOx0bEIY6EJxiBSyngBYktwfkKfm1kEn/BFAOXSrFWnPwLGBuy2urpaaG99BnZTKfjjwSPY3v7T+QAhdJ7hcT+y8kQgr3PG2DjOer3ZRo5HeyPQ/0Kf5Z6Fa9fhh2uLUiKci0nI1mB8JHagTJRNIHbyzRg6PoE3NtttOcePIok66b2Pt7dh/spVWLp122EzZCUgrs9O61AGSibgpvOWp5+C/mN90NKyv6RnEZGkfhHWN+47bAaRNO8pVVZFCZBcWFUmwTR43W5rDDfA0PGXoL2tFbzg5tIyzH931Vd8FCRQis6jhyMF5VIO5q98Dws/LsLubspqELDDhUjoc9PxQvdKCRhy0UJJmc67Dz1n6DwcDoNKFI0PrmHa/XTRbnMQMFJjTeZ3+/Vyde4VROSDDz+WZysh2jHILYugYyVu7zioo2wO5L+TXAZf7IfXXhmGxka1sy4DSfLI4R58ww2wsXkfMpmsycoO4Cp+wTxesz+AAWszfx/GII3iAyuN7q5OeOvUScs1xkSzfVyVyzMM2XQd6gTVWN/YNFLo+vqm8XcjxlMumz1r+/39xofGFIIrgaZ9+0AVyImVlXuwtHwHs82uxUa6p+C1E8j5sNc7AdK/V1BKXFm9Bxvk+NpvDqftCDc0gBcfXAn4QT63lwJy8kg0Al4QGIHovw49ePgQP4+ci5R5bG/E87oSGAEKzOGhQcu1m0u3IXnhom1cg6NyLQcaVAj0BqjusePdd94GP6gYAZr5bcw2ZvQf81+SVITAef1zIyOZYZQmPqSTR2AxQCDZfPHVJczxy5brpPuR2KugAoEReIzF2NT0rJGFzCDnSfeqqtlACCzg3pcC1r54qXaeoJQAzXpuq+hc+oNwnqCEAGmdVl2aeVnJQAFLlaWK3ZsdvggUc5wQdDnui0D8vfcduT0PmnVaiVVWtDK4EnCrXwiplHPWqfylwkzVPqKYD64EqAhzw9DxQaPqTGH7kGY82tujfM9czAdXArmd06axK5KBOhT0If0HEaBU/LltZgiOUkJoYOlITH02K211mBGE85QYvvz6kuUath7X7OMcXQns369hV2Is/526AlTHLN26Y2z5/OzSSgHNeBJrpxs//Yy/nbHYRIgfXb1719IAlje2xk5HNC6SULCx1We0PVSCFkGKJ/nbFluapp2YmymhsWXGyBunJ/G9nQFZaxFzO5XDfuG6lmBrEXsp53hdVUJPyFvvxZu7Y+PNjGcmcaCkuRs22oxd+Fa8gKRJ1ap0LWHY3K2tOVvI8f+GQYkgIhrPXAeJrChLUXlcqqxI59QHlWcYcQPlMimTiwxlH3CM4AEHvtYJ8BAf+W0lndY4IbZQMvHzQR1wmEGtd60mO44/OmG3kayoI0GdBjNyjnvTuRv8HfIViY+mpr1QV1vr0tgSl7nGz+ozFT7ks2MU0y4vkHblKE/nblB6Uu8WHwZILqTzuakEKILSk/oVPIFv7ej+Fk8icDEHWznK4nxP9cvJ6U8WQSGC+2cPjI8Qz7YJwev5nprLXgL0icA/W5VtrhXqUi8AAAAASUVORK5CYII=" /> |
| | | </div> |
| | | <div :class="$store.state.select == '/trading-list' ? 'blueFont' : ''"> |
| | | {{ $t("hj225") }} |
| | | </div> |
| | | </div> |
| | | <div :class="touch == 4 ? 'footDemos' : 'footDemo'" @click="goRouter('/warehouse', 4)"> |
| | | <div class="footImgDeft"> |
| | | <img v-show="$store.state.select == '/warehouse'" |
| | | src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC4AAAAwCAYAAABuZUjcAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAATPSURBVHgB7Vm/bxNJFP5mL3fCV0F5FRv+geTaa8658q4g0dFR4Ig/gECBkggRR0LEAqSEHhFT0EIoKCH2PwCmofVSUcYFBCQUD+/NbGLvzo+dtWPT8KE18Xp+fPvmzffevBX4EViVMX1egUCVrnn6+ywkOviCBeyIXsgQM5gmViUT3VCE84gQowSmQ5wtLLBrJcwQ6KGP5VBr6y6TBls5wnOwO7jwDX/ivuigBCJMEmzpCPvwkWbM0GqsyhpKYLLEBeqB7eaJyS7WZBc35WJIl9GJszW1OvgI7dBnMvSdffhDetnax2T95zTuBgoQ7uPsq8Ai9bioJhgGS5mg6xseWn21Tg/Yo3/5zXeLxjxCjfpeMfr0abUaYhMjE/dJmA0SLbqWadIEoViXTH6b+mX3Qp90vSFati5+V+El480VSprBbSN0Q5b7BHdFk0gvpK40PNaGexoXNOk6xkHBclvmrKlNmh1j1rZ6kWOA8Unr0eukEivB7RvK8q3MvRl7RDWJa+2tY3y0aT2v08StMp3U/hgoUYI7dh83Q77ILVV5tNWDOyYshHaLWaU4n+CMplkf1+F5H6Mhob7LwYRX5FmcIRX5apHJAGQtHiEoalnQoU20ROqQOFsM4sDfaRzQ0vc7WA57KhZIvCNdb4bkLVmLr8u39DmPckhwSEmSy2pl4wCDN+gRBbN7Ys/VJE9cohySNEgkxi9FqWwYmjT+ZrgchsM6KBlgngjvj0maUVPjWHKicYg3VcTLQ0+yb+Qzo4LHsZCPco3CdzcnVHlo9yjOv8vimDwrUYos8T5CTyEd687n/Pu0LG2OHaMyyF3yFm8jBBJPjHur0p6eniYEVlJZNSzeDOmPXywrE+EapoE0YzSzwzVZrAaHOJfRbVYR4C2mBZrfVBVOcoo2qRlsapgmKqiZxFmXjyirKwOJOUwTAnN2HW8ofQ4/AESl04RxUXUHoLuiTpZcwvAp/Rj5SCZPWbcD4DoBxer/LUpyOBfJy5+YuoXziE3ia3JbHXbXKFPkSMU+vyVq6uwHdTp5UbZAGZ8Dnl2WePy/xHnP2tz+B3h91d8mReI/SEjapFtip3CYdZnQ53nXz9v/SVz7K53xgDbPK4FWl6pCqTbN/UFt/pWoXtDfX7wHlp56Kyft/EEiznwXwWrR8RHvfRn8zdbfvSRPHuL43jAOvqII3aLssIoQCP+BePO1oMu8z4TzpNu0EjdeFtap2vmQ38qPfZwbePFrcarA7nHhgcCTN7QCFovyvesvgYVHwvp7BofYCwn5nHcvowghqcIQqrOkoWco/62Qn33kK7iMqfiYrW0nfU8Nz9tvEkgrW7aQ3zKqSUIV3mPvgPrBHmKyODkq2jdntpqkk/iIsr+itwa/qQpYqVciJdBW0fyEkguD1yBx5r6kB5IUhIA9KuZ0jEzR1W88dGhDZl4l+neEJtGFH2YJ4XTJt4n0Yt5AduIc6isqx74YpBR9WoGGMKtg67JOn+F18iyznjKII3LbfbyiygvbwfIW4cB6n32SVcB2RnVBH2I28Zn6edKNGUdnPjQXZ4A8iSQlOYQ7n9EuVCP3qdMDVql9Na0ExJlxjkjJuCT9ia6AIqjbx7nM21cW1+/aNXj5EjosJ+pl1ail5J/4ienhOwTprAE0ZSRWAAAAAElFTkSuQmCC" /> |
| | | <img v-show="$store.state.select != '/warehouse'" |
| | | src="data:image/png;base64,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" /> |
| | | </div> |
| | | <div :class="$store.state.select == '/warehouse' ? 'blueFont' : ''"> |
| | | {{ $t("hj226") }} |
| | | </div> |
| | | </div> |
| | | <div :class="touch == 5 ? 'footDemos' : 'footDemo'" @click="goRouter('/user', 5)"> |
| | | <div class="footImgDeft"> |
| | | <img v-show="$store.state.select == '/user'" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAM2SURBVHgB7ZoxTxRBFMf/s7E4rc4SGxY7K7G14cBOC7A3ERJ7MDHkINHbSwzYHfYmQG+CFpbK3SdAKjtZG+3kKkVN9vnerdFIdmZnZvfuVsMvudvldmby3ry38968AThjvCiUxQrVUcMC303zqDN8rfM1/P2cEPN3zNdDvr7AE9VFCRRXoEkNBFjmuwZEaFtEIYUuErRZmRie+CvQpJB7b/OngeLs+CoSwIc1WuGeByUJLyzyWPtYpQXHfh4WWKMO91rBsEgQsSXats3dFGjSNs/8IoaNgxL2LiQzPwrhhYAVWCUrK9tZQHxeoYNRk2A2b7nNV0BWmwBHGAey1H7FNWypvq5JvgspNue4kEB4wbxgmC2QBql9jJc+vmBKZwWzBdSIXlozdZMV9ApEJLnMXVQBwrzukV6Bb6VF2eIoThBlMckgMHRqoEoE2fLoFSBcRZVI2AoZmCwwhWoRZv1oWoUmUSWC7L2GXzpdIf5rBT6gSiRwjsRvUS3irB8D1w5jQwoAGegVSLj04cD8FeDzQ8L7B4RJTW2iXgMezQGdmzS4d4KyPeKctkONO/xgvyO7Usny9VQo+ezfI9x/pfDy3Z/nMxxVOrcI0xPp3/0TQvuN9Y62p6tY6BWIOH1dp12RDRaIsI3L6X14Edi7w1P2kf2QX72Qp2D60t/t42O4sKN7kLcfcNqNtW4QWnP57XYPgKXn1rMfY0NpswJzHEjN9hSWtF8rzD5Tg1nPlORYBHcSfjCs6WH+SLIv+M5FLE0uoqMxxdngRPpO9E+Aw09A98i5DGWcfcFuxPFsLeNfVYnY1MgulUhLG9bVslLghcymVmqfC22oCKNTYgmbyioOuddG1yni7xaGgeK4o3Abj+3PDvzK6+sku6M9OL7YOfTY5xddS+zFDjhSa0jlIoQvMutyNrCptuBBsf1AwhGSUIyEUxZP4YViCihOM1RBN5Lqh2UlOru7L+UWfY3lQxP+FlClBrY6zvN5mwd+CjSpVdh1TqP4iFYivnM3V4Z5XmBxHnAadwsoP1Nbjh2yKzkFSTcFxMTDrpk6noC6KVAb7EtjDJeeS2O/ZTTKLnWXQuT/bwf/JD8B9ynfSSK+YygAAAAASUVORK5CYII=" /> |
| | | <img v-show="$store.state.select != '/user'" src="data:image/png;base64,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" /> |
| | | </div> |
| | | <div :class="$store.state.select == '/user' ? 'blueFont' : ''"> |
| | | {{ $t("hj227") }} |
| | | </div> |
| | | </div> --> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | return { |
| | | touch: 0, |
| | | tabs: [ |
| | | // { |
| | | // path: '/home', key: 1, name: this.$t("hj224"), img: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAINSURBVHgB7ZlPMgNBFMa/HlmEjViyES4gXECwtXAAhYU92ajIJmxQNjiB3CBcADfAylJsrF1AnteTkiozkz/d86KH6l9VpiZd3ZP35X390ukG/jgKo2CfCshjj59eCt8Tbvn6gDPVgjDyAqpURoAm3xV+tBNa+EQF5+oGggSQpEp1fuI9osFrFIrIsTDdRxCZDGjLjHNwCuWh+hNu+FWRsFR6ATUqcTDN8Bs2QVuKsJJWRDoLHdI+X++Ng9foMQFecRA+wxq7DHQsU+fRqT68C+ESp6oCC8wFVKnIo5rdEimFpaXMLNQpkY/iwWu0pRTb8YA2TIYNL6BfiZTCotQOtpBpiZRiyFLbX4BtiZRiiHnR20KHtA3bEinFd6ntxNKjSxJ6IuXC9Ux2aIeZeIg2J2dgDBfIGgrX4XyMEBdQpR2ntumFjmkCsRIbFxDAqA7/MsvRhrgAwiSyy1y0Qfb/gAO8ANfkIMQyu7O+SijP9+/39A4c3yncvkAEkQxsL/FP9u7g4DWlGaC5SdhahAgiAuprBFMu183HJJFaQGkaKFossAt5YFZgYZ5awGQe1sxNpc+CL6Ou8QJc4wW4xgtwjRfgGi/ANf9SwBuyShsf0aakbZUGskqA2BFt8t5ojY74Knocmpo2rnhvNHak1Xt7vcZbjIDeZlzgrIzuUKMfii1DeOa7Bk5UAx6PJ8YX112DrjaKDVEAAAAASUVORK5CYII=', |
| | | // actImg: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAOiSURBVHgB7VnNUhpBEO4exErlhE8gPoFgxSRVOQRvOeoxp2wstYhaFXwC8QmCVf5QQMHmCcRbckJvKU0Qb7mJtxz1GDDT6cFCd5flZ9khaIrvArvTMzs90/31dA/AIwfCAGAYiRCM/TZEAKfVs/xD53BDRdNMV0EztCtgrKx9EgAJ10YJqXxudwM0QpsCvOphHK8f8ICRTnIEVKWanNO1GwI0wFiKxzBYP+s2eQUEZEVFyVhaj4EG+FbAWFndFCJQQoSQrUHChnwanMhndlkv3LI2KSWEIFZidRN8om8TUo4qgrUCIM7bW6gqCRbM7F7FJr+8GhGIB/w37JAvyprc6Nek+lLAMFYjOI7K3sP2FjqWQhpm2n0yRpz9hOoFJIjZevnwC88KGEsfEohi02kyRLRdyO4lehljcWU9yT3s5kNwJUlumbn9FHhAwItwgyIRkzz5J9YPI+LbfHa35w+f/Tg5is7MXvL6xaA5Fv/yOG+i0eehs/Lp117H6mkH2lMk27vgrU/3Z7/KpISsl8Bhil5MqisLtaNIkvBZPh2P9jt5BTOdqspaMEqE29b3Xqi24w40KBIw2dLAFMkR1ZOtdoOrX6hPSUqaub2tdv3a+oD75BsUOVfI7RVBM5RfTM/MHio/4Mc7guDn2HR0Firl02O3fq4KMGcb7KyOFW5Q5IKZ2f8JAwJP8tf07KtDXveIlaJvlXh2XSl//+bs42pC71fWLqwDeKFIXWgxKUWz9eCUaaaurHItTqxW3xagkMx/PXmFfGYnaXNujjsc+eedci0KIDE3WyBRtnWgQYPqY0nbCwGvnTKtNBqAyeZfDvkVPzTpFw1zIbi8eyFhyinTMQ5wQLmGIYMEXHRq15IPDBOPXoEx0ITGkQMD6pQa6yRHTPfECY6Z2dESDPWklCrw3WZlsW6y6kwlgA441rwDDdCiAEdKz6khM5yWs5RvE1Kpoi3ss4kw3527CpOYpOYucWAy4vGwX5r27wMBGQJ5f6RSx458dt90E11kU2skMc2P34yF+acKPjCi0WFjpMCwMVJg2BgpMGyMFBg2/nMF8D4/HhrIWcK3o1UBSZaTJIZ13KL0C1UdtJV4XPLjlsKWEV+PCUkl6zviohJLXkEb2ItgHWQJQtZ7BS+yCgGiaNZx8+NemVteTyHSR3hAaFcddK2NVsonXyIzLyZ4BV7CA0Cn0mbn8nrjTquW4PSv6/XpIMDZWyWAophL7xzBCCOM4Iq/amJyomlCik4AAAAASUVORK5CYII=' |
| | | // }, |
| | | { |
| | | path: "/home_index", |
| | | key: 1, |
| | |
| | | height: 1.3rem; |
| | | display: flex; |
| | | justify-content: space-around; |
| | | background-color: #13161e; |
| | | } |
| | | |
| | | .footDemo { |
| | |
| | | align-items: center; |
| | | flex-wrap: wrap; |
| | | font-size: 16px; |
| | | color: rgb(104, 114, 132); |
| | | color: #c3c3c3; |
| | | } |
| | | |
| | | .footDemos { |
| | |
| | | width: 0.9rem; |
| | | height: 0.9rem; |
| | | border-radius: 100%; |
| | | /* background-color: rgb(25, 122, 246); */ |
| | | } |
| | | |
| | | .homeImg { |
| | |
| | | } |
| | | |
| | | .blueFont { |
| | | color: #c4d600; |
| | | color: #2778f3; |
| | | } |
| | | </style> |
| | | |
| | | <style lang="less" scoped> |
| | | // @purple: #3d1152; |
| | | |
| | | // .footCss { |
| | | // background: @purple; |
| | | // } |
| | | </style> |
| | |
| | | <template> |
| | | <div class="page_head"> |
| | | <div class="head_content flex-between" :class="fixed ? 'fixed' : ''"> |
| | | <div class="head_left flex-start" @click="$router.go(-1)"> |
| | | <div class="head_left flex-center" @click="$router.go(-1)"> |
| | | <van-icon name="arrow-left" size=".4em" /> |
| | | </div> |
| | | <div class="head_title line-one">{{ title }}</div> |
| | |
| | | </script> |
| | | |
| | | <style lang="less" scoped> |
| | | @green: #c4d600; |
| | | .page_head { |
| | | @hH: 1.8em; |
| | | font-size: 10vw; |
| | | height: 1.22em; |
| | | height: @hH; |
| | | position: relative; |
| | | .fixed { |
| | | position: fixed; |
| | |
| | | left: 0; |
| | | width: 100%; |
| | | z-index: 999; |
| | | background: #fff; |
| | | background: #13161e; |
| | | } |
| | | .head_content { |
| | | height: 1.22em; |
| | | height: @hH; |
| | | padding: 0 0.25em; |
| | | border-bottom: 0.01em solid #f5f5f5; |
| | | & > div { |
| | |
| | | } |
| | | |
| | | .head_left { |
| | | color: @green; |
| | | width: 1.2em; |
| | | } |
| | | |
| | | .head_title { |
| | | font-size: 0.4em; |
| | | font-size: 0.525em; |
| | | font-weight: 500; |
| | | width: 60%; |
| | | text-align: center; |
| | |
| | | </div> |
| | | </van-row> |
| | | |
| | | <div class="more-news" @click="getMore" v-if="stockList.length > 0"> |
| | | <span v-if="lod == 1">{{ $t("加载更多") }}</span> |
| | | <span v-else-if="lod == 2">{{ $t("加载中") }}</span> |
| | | <span v-else-if="lod == 3">{{ $t("沒有更多了") }}</span> |
| | | </div> |
| | | |
| | | <!-- 无数据时显示 --> |
| | | <div |
| | | class="no_data flex-center" |
| | |
| | | > |
| | | <img src="@/assets/img/zhaobudao2.png" alt="" /> |
| | | </div> |
| | | |
| | | <n-pagination |
| | | :pageNo.sync="pageNum" |
| | | :pageSize="pageSize" |
| | | :total="total" |
| | | ></n-pagination> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import nPagination from "@/components/nPagination.vue"; |
| | | import * as api from "@/axios/api"; |
| | | import { Toast } from "vant"; |
| | | import { WhrWebSocket } from "@/utils/WhrWebSocket"; |
| | | export default { |
| | | name: "stock_list", |
| | | components: { |
| | | nPagination |
| | | }, |
| | | components: {}, |
| | | data() { |
| | | return { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | pageSize: 20, |
| | | total: 1, |
| | | stockList: [], |
| | | lod: 1 // 1 加载更多 2 加载中 3 沒有更多了 |
| | | }; |
| | | }, |
| | | props: { |
| | |
| | | default: false |
| | | } |
| | | }, |
| | | watch: { |
| | | propOption: { |
| | | handler(val) { |
| | | this.pageNum = 1; |
| | | this.getStockList(); |
| | | } |
| | | }, |
| | | pageNum: { |
| | | handler(val) { |
| | | // this.stockList = []; |
| | | this.getStockList(); |
| | | } |
| | | } |
| | | }, |
| | | watch: {}, |
| | | mounted() { |
| | | this.getStockList(); |
| | | this.init(); |
| | | this.initWebSocket(); |
| | | }, |
| | | methods: { |
| | | init() { |
| | | this.pageNum = 1; |
| | | this.stockList = []; |
| | | this.getStockList(); |
| | | }, |
| | | // 获取数据 |
| | | async getStockList() { |
| | | let opt = { |
| | |
| | | pageSize: this.pageSize, |
| | | stockPlate: "", |
| | | keyWords: "", |
| | | // stockType: '', |
| | | orderBy: "" |
| | | }; |
| | | |
| | | opt = { ...opt, ...this.propOption }; |
| | | |
| | | let data = await this.listApi(opt); |
| | | this.stockList = data.data.list; |
| | | this.stockList = [...this.stockList, ...data.data.list]; |
| | | this.total = data.data.total || 1; |
| | | |
| | | this.lod = 1; |
| | | if (this.total <= this.stockList.length) this.lod = 3; |
| | | }, |
| | | // 点击进入详情 |
| | | toDetails(item) { |
| | |
| | | initWebSocket() { |
| | | console.log("initWebSocket"); |
| | | this.Trade = new WhrWebSocket({ |
| | | path: `wss://ws.kuspitai.com/websocket-server `, |
| | | path: `wss://usws.yanshiz.com/websocket-server `, |
| | | onmessage: this.getTradeMessage |
| | | }); |
| | | |
| | |
| | | userToUpdate.nowPrice = result.last; |
| | | userToUpdate.hcrateP = result.pcp; |
| | | } |
| | | }, |
| | | // 加载更多 |
| | | getMore() { |
| | | if (this.lod == 3) return; |
| | | this.lod = 2; |
| | | this.pageNum++; |
| | | this.getStockList(); |
| | | } |
| | | }, |
| | | beforeDestroy() { |
| | |
| | | |
| | | .stock_list { |
| | | .markets_head { |
| | | background-color: @green2; |
| | | // background-color: @green2; |
| | | margin-top: 0.25em; |
| | | height: 1em; |
| | | padding: 0 0.25em; |
| | | |
| | | .head_item { |
| | | font-size: 0.4em; |
| | | font-size: 0.3em; |
| | | height: 100%; |
| | | font-weight: 600; |
| | | font-weight: 300; |
| | | color: #898a8e; |
| | | } |
| | | } |
| | | |
| | | .markets_item { |
| | | // margin-top: .25em; |
| | | // height: 1em; |
| | | padding: 0.5em 0.25em 0.25em; |
| | | border-bottom: #f5f5f5 solid 0.01em; |
| | | border-bottom: rgba(#fff, 0.2) solid 0.01em; |
| | | position: relative; |
| | | |
| | | .item_n { |
| | |
| | | <template> |
| | | <div class="tab_head"> |
| | | <div class="head_left"> |
| | | <div class="icon" @click="searchShow = true" v-if="leftShow"> |
| | | <van-icon name="search" size=".5em" /> |
| | | </div> |
| | | <slot name="left"></slot> |
| | | </div> |
| | | <div class="head_right"> |
| | | <div class="icon" v-if="rightShow" @click="aRouter1"> |
| | | <van-icon name="service-o" size=".5em" /> |
| | | </div> |
| | | <div class="icon" v-if="rightShow" @click="goToTopUp"> |
| | | <van-icon name="setting" size=".5em" /> |
| | | </div> |
| | | <slot></slot> |
| | | </div> |
| | | <!-- 搜索弹窗 --> |
| | | <van-popup v-model="searchShow" round position="bottom" :style="{ height: '80%' }"> |
| | | <div class="popup_head"> |
| | | <van-icon name="arrow-left" size=".5em" @click="searchShow = false" /> |
| | | <div class="popup_input"> |
| | | <van-field v-model="searchValue" :placeholder="$t('hj37')" left-icon="search" clearable /> |
| | | </div> |
| | | <van-button type="primary" round @click="submit">{{ |
| | | $t("Search") |
| | | }}</van-button> |
| | | </div> |
| | | |
| | | <van-list v-model="loading" :finished="finished" :finished-text="$t('hj43')" @load="onLoad" |
| | | v-if="(lists && lists.length > 0) || !finished"> |
| | | <van-cell v-for="item in lists" :key="item.id" @click="toDetails(item)"> |
| | | <div class="search_item"> |
| | | <div class="search_item_left"> |
| | | <div class="search_item_left_name">{{ item.name }}</div> |
| | | <div class="search_item_left_hint"> |
| | | <span>{{ item.stock_type }}</span> |
| | | {{ item.spell }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="search_item_right"> |
| | | <span>{{ item.nowPrice }}</span> |
| | | <van-icon name="arrow" size="1em" /> |
| | | </div> |
| | | </div> |
| | | </van-cell> |
| | | </van-list> |
| | | |
| | | <div class="zhaobudao" v-else> |
| | | <img src="../assets/img/zhaobudao.png" alt="" /> |
| | | </div> |
| | | </van-popup> |
| | | <slot name="left"></slot> |
| | | <div class="tab_title">{{ title }}</div> |
| | | <slot></slot> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import * as api from "@/axios/api"; |
| | | import handleDt from "@/utils/deTh"; |
| | | export default { |
| | | name: "tabHead", |
| | | data() { |
| | | return { |
| | | searchShow: false, // 搜索弹窗 |
| | | searchValue: "", // 搜索内容 |
| | | lists: [], // 搜索列表 |
| | | loading: false, // 是否加载 |
| | | finished: true, // 是否加载完成 |
| | | pageNum: 1, |
| | | pageSize: 20 |
| | | }; |
| | | }, |
| | | props: { |
| | | // 是否显示客服和设置图标 |
| | | rightShow: { |
| | | type: Boolean, |
| | | default: true |
| | | }, |
| | | // 是否显示左侧搜索 |
| | | leftShow: { |
| | | type: Boolean, |
| | | default: true |
| | | title: { |
| | | type: String, |
| | | default: "" |
| | | } |
| | | }, |
| | | watch: { |
| | | searchShow() { |
| | | this.searchValue = ""; |
| | | this.init(); |
| | | } |
| | | }, |
| | | async mounted() { |
| | | this.init(); |
| | | this.getInfoSite(); |
| | | }, |
| | | methods: { |
| | | // 跳转客服页面 |
| | | aRouter1() { |
| | | window.open(this.onlineService); |
| | | }, |
| | | // 获取客服地址 |
| | | async getInfoSite() { |
| | | let data = await api.getInfoSite(); |
| | | if (data.status === 0) { |
| | | this.onlineService = data.data.onlineService; |
| | | // console.log(this.onlineService, 'this.onlineService'); |
| | | } else { |
| | | this.$store.commit("elAlertShow", { |
| | | elAlertShow: true, |
| | | elAlertText: data.msg |
| | | }); |
| | | } |
| | | }, |
| | | goToTopUp() { |
| | | // 跳转设置页面 |
| | | this.$router.push("/setting"); |
| | | }, |
| | | onLoad: handleDt.throttle(async function (a, b) { |
| | | // 搜索列表加载 |
| | | this.finished = false; |
| | | let opt = { |
| | | pageNum: this.pageNum, |
| | | pageSize: this.pageSize, |
| | | stockPlate: "", |
| | | keyWords: this.searchValue, |
| | | stockType: "", |
| | | orderBy: "" |
| | | }; |
| | | |
| | | let data = await api.getStockByType(opt); |
| | | this.loading = false; // 加载状态结束 |
| | | |
| | | if (data.status === 0 && data.data.list) { |
| | | this.lists = [...this.lists, ...data.data.list]; |
| | | } else if (data.status != 0) { |
| | | this.finished = true; |
| | | } |
| | | |
| | | if (data.data.list && data.data.list.length <= 0) { |
| | | // 数据全部加载完成 |
| | | this.finished = true; |
| | | } else { |
| | | this.pageNum++; |
| | | } |
| | | }, 500), |
| | | init() { |
| | | // 初始化 |
| | | this.pageNum = 1; |
| | | this.lists = []; |
| | | this.finished = true; |
| | | }, |
| | | submit() { |
| | | // 提交搜索 |
| | | this.init(); |
| | | this.onLoad(); |
| | | }, |
| | | // 点击进入详情 |
| | | toDetails(item) { |
| | | const obj = { |
| | | pid: item.code || "", |
| | | type: item.stock_type || "" |
| | | }; |
| | | window.localStorage.setItem("kLine", JSON.stringify(obj)); |
| | | |
| | | this.$router.push({ |
| | | path: "/kline", |
| | | query: { |
| | | code: item.code, |
| | | type: item.stock_type |
| | | } |
| | | }); |
| | | }, |
| | | data() { |
| | | return {}; |
| | | } |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="less" scoped> |
| | | @grey: #dddddd; |
| | | @dark_green: #07c160; |
| | | |
| | | .tab_head { |
| | | font-size: 10vw; |
| | | padding: 0.266em; |
| | | padding: 0.2em 0.525em; |
| | | background: #13161e; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | position: -webkit-sticky; |
| | | position: sticky; |
| | | top: 0; |
| | | left: 0; |
| | | z-index: 999; |
| | | height: 1.5em; |
| | | |
| | | .zhaobudao { |
| | | width: 100%; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | padding-top: 0.5em; |
| | | |
| | | img { |
| | | width: 65%; |
| | | } |
| | | } |
| | | |
| | | .search_item { |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | font-size: 1.5em; |
| | | padding: 0.5em 0; |
| | | |
| | | .search_item_left { |
| | | flex: 1; |
| | | |
| | | .search_item_left_hint { |
| | | margin-top: 0.3em; |
| | | color: #969799; |
| | | font-size: 0.8em; |
| | | |
| | | span { |
| | | border-radius: 0 26em 26em 0; |
| | | background: @dark_green; |
| | | color: #fff; |
| | | padding: 0 0.3em; |
| | | margin-right: 0.1em; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .search_item_right { |
| | | display: flex; |
| | | justify-content: end; |
| | | align-items: center; |
| | | color: #969799; |
| | | |
| | | span { |
| | | margin-right: 0.5em; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .popup_head { |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | padding: 0.25em; |
| | | |
| | | /deep/ .van-cell { |
| | | background: none; |
| | | } |
| | | |
| | | /deep/ .van-field__left-icon .van-icon, |
| | | .van-field__right-icon .van-icon { |
| | | font-size: 1.5em; |
| | | } |
| | | |
| | | /deep/ .van-field__control { |
| | | font-size: 1.5em; |
| | | } |
| | | |
| | | .popup_input { |
| | | background: #f7f8fa; |
| | | @inpH: 1em; |
| | | height: @inpH; |
| | | flex: 1; |
| | | border-radius: @inpH / 2; |
| | | display: flex; |
| | | align-items: center; |
| | | margin-left: 0.5em; |
| | | margin-right: 0.5em; |
| | | } |
| | | } |
| | | |
| | | .icon { |
| | | width: 1em; |
| | | height: 1em; |
| | | border-radius: 50%; |
| | | background: @grey; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | } |
| | | |
| | | .head_right { |
| | | display: flex; |
| | | justify-content: end; |
| | | } |
| | | |
| | | .head_right { |
| | | .icon { |
| | | margin-left: 0.266em; |
| | | } |
| | | .tab_title { |
| | | font-size: 0.55em; |
| | | font-weight: 700; |
| | | color: #ccc; |
| | | } |
| | | } |
| | | </style> |
| | |
| | | "uv1": "審核中", |
| | | "sc": "股票代碼", |
| | | "abc": "添加銀行卡", |
| | | "hksi":"香港股票指數", |
| | | "tsi":"臺灣股票指數", |
| | | "ni":"印度股票指數", |
| | | "hk1":"香港", |
| | | "tw":"臺灣", |
| | | "id1":"印度" |
| | | "hksi": "香港股票指數", |
| | | "tsi": "臺灣股票指數", |
| | | "ni": "印度股票指數", |
| | | "hk1": "香港", |
| | | "tw": "臺灣", |
| | | "id1": "印度", |
| | | "kf1": "需要任何幫助請聯繫您的專屬交易助理或開戶專員", |
| | | "划转": "劃轉", |
| | | "理财": "理財", |
| | | "加载更多": "加載更多", |
| | | "加载中": "加載中...", |
| | | "沒有更多了": "沒有更多了", |
| | | "成交价": "成交價" |
| | | } |
| | |
| | | "信用分": "Credit Score", |
| | | "剩余贷款额度": "Remaining Loan Amount", |
| | | "贷款申请": "Loan Application", |
| | | "还款":"Repayment", |
| | | "确认还款吗":"Confirm repayment", |
| | | "日内":"In the meantime", |
| | | "建仓成本":"Position-building cost", |
| | | "已申购":"Already purchased", |
| | | "还款": "Repayment", |
| | | "确认还款吗": "Confirm repayment", |
| | | "日内": "In the meantime", |
| | | "建仓成本": "Position-building cost", |
| | | "已申购": "Already purchased", |
| | | "hj316": "Please enter bank cardholder name", |
| | | "Password": "Password", |
| | | "rnv":"Real Name Verification", |
| | | "it1":"ID Type", |
| | | "dl1":"Driver License", |
| | | "pa1":"Passport", |
| | | "ot1":"Other", |
| | | "in1":"Identification Number", |
| | | "fsi1":"Front Side of ID Photo", |
| | | "bsi1":"Back Side of ID Photo", |
| | | "uv1":"Under Verification", |
| | | "sc":"Stock Code", |
| | | "abc":"Add bank card", |
| | | "hksi":"Hong Kong Stock Index", |
| | | "tsi":"Taiwan Stock Index", |
| | | "ni":"Indian stock index", |
| | | "hk1":"Hong Kong", |
| | | "tw":"Taiwan", |
| | | "id1":"India" |
| | | } |
| | | "rnv": "Real Name Verification", |
| | | "it1": "ID Type", |
| | | "dl1": "Driver License", |
| | | "pa1": "Passport", |
| | | "ot1": "Other", |
| | | "in1": "Identification Number", |
| | | "fsi1": "Front Side of ID Photo", |
| | | "bsi1": "Back Side of ID Photo", |
| | | "uv1": "Under Verification", |
| | | "sc": "Stock Code", |
| | | "abc": "Add bank card", |
| | | "hksi": "Hong Kong Stock Index", |
| | | "tsi": "Taiwan Stock Index", |
| | | "ni": "Indian stock index", |
| | | "hk1": "Hong Kong", |
| | | "tw": "Taiwan", |
| | | "id1": "India", |
| | | "kf1": "If you need any assistance, please contact your dedicated trading assistant or account opening specialist.", |
| | | "划转": "Transfer" |
| | | } |
| | |
| | | "ni": "भारतीय स्टॉक इंडेक्स", |
| | | "hk1": "हांगकांग", |
| | | "tw": "ताइवान", |
| | | "id1": "भारत" |
| | | "id1": "भारत", |
| | | "kf1": "यदि आपको कोई सहायता चाहिए, तो कृपया अपने समर्पित व्यापार सहायक या खाता खोलने विशेषज्ञ से संपर्क करें।", |
| | | "划转": "स्थानांतरण" |
| | | } |
| | |
| | | <template> |
| | | <div class="bank_card_page"> |
| | | <van-nav-bar :placeholder="true" :safe-area-inset-top="true" :title="$t('关于我们')" left-arrow |
| | | @click-left="$router.go(-1)"> |
| | | <van-nav-bar |
| | | :placeholder="true" |
| | | :safe-area-inset-top="true" |
| | | :title="$t('关于我们')" |
| | | left-arrow |
| | | @click-left="$router.go(-1)" |
| | | > |
| | | </van-nav-bar> |
| | | <div class="content"> |
| | | <!-- <div class="top_back"> |
| | | <div class="left_back_icon" @click="$router.go(-1)"> |
| | | <img src="../../assets/img/zuojiantou.png" alt /> |
| | | </div> |
| | | </div> --> |
| | | |
| | | <div class="titles"> |
| | | <span>{{ $t('关于我们') }}</span> |
| | | </div> |
| | | <div class="bank_name"> |
| | | Duro Capital is an India-focused investment management firm and is the manager for the Duro India Opportunities |
| | | Fund (the “Fund”). The Fund’s investment objective is to achieve long-term capital appreciation by investing |
| | | into equity and equity-related securities of fairly priced businesses with a defensible right-to-win in their |
| | | industries and that are undergoing structural changes, which enables these companies to compound earnings at |
| | | ~25% over the Fund’s holding period. Duro Capital is regulated by the Monetary Authority of Singapore (MAS) and |
| | | holds a Capital Markets Services (CMS) License. |
| | | </div> |
| | | <p |
| | | style="padding: 0px; margin-top: 0px; margin-bottom: 0px; text-align: justify; color: rgb(204, 204, 204);" |
| | | > |
| | | 广州期货交易所(以下简称广期所)于2021年4月19日挂牌成立,是经国务院同意,由中国证监会批准设立的第五家期货交易所。广期所由上海期货交易所、郑州商品交易所、大连商品交易所、中国金融期货交易所股份有限公司、中国平安保险(集团)股份有限公司、广州金融控股集团有限公司、广东珠江投资控股集团有限公司、香港交易及结算所有限公司共同发起设立,是国内首家混合所有制交易所。设立广期所,是健全多层次资本市场体系,服务绿色发展,服务粤港澳大湾区建设,服务“一带一路”倡议的重要举措。 |
| | | </p> |
| | | <p |
| | | data-v-536e3e91="" |
| | | style="padding: 0px; margin-top: 0px; margin-bottom: 0px; text-align: justify; color: rgb(204, 204, 204);" |
| | | > |
| | | 广州期货交易所(以下简称广期所)于2021年4月19日挂牌成立,是经国务院同意,由中国证监会批准设立的第五家期货交易所。广期所由上海期货交易所、郑州商品交易所、大连商品交易所、中国金融期货交易所股份有限公司、中国平安保险(集团)股份有限公司、广州金融控股集团有限公司、广东珠江投资控股集团有限公司、香港交易及结算所有限公司共同发起设立,是国内首家混合所有制交易所。设立广期所,是健全多层次资本市场体系,服务绿色发展,服务粤港澳大湾区建设,服务“一带一路”倡议的重要举措。 |
| | | </p> |
| | | <p |
| | | data-v-536e3e91="" |
| | | style="padding: 0px; margin-top: 0px; margin-bottom: 0px; text-align: justify; color: rgb(204, 204, 204);" |
| | | > |
| | | 2021年5月,广期所两年期品种计划获中国证监会批准,明确将16个期货品种交由广期所研发上市,包括碳排放权、电力等事关国民经济基础领域和能源价格改革的重大战略品种,中证商品指数、能源化工、饲料养殖、钢厂利润等商品指数类创新型品种,工业硅、多晶硅、锂、稀土、铂、钯等与绿色低碳发展密切相关的产业特色品种,咖啡、高粱、籼米等具有粤港澳大湾区与“一带一路”特点的区域特色品种,以及国际市场产品互挂类品种。未来,广期所将不断丰富产品体系,强化市场服务能力,更好满足实体经济风险管理需要。 |
| | | </p> |
| | | <p |
| | | data-v-536e3e91="" |
| | | style="padding: 0px; margin-top: 0px; margin-bottom: 0px; text-align: justify; color: rgb(204, 204, 204);" |
| | | > |
| | | 广期所将以习近平新时代中国特色社会主义思想为指导,坚决贯彻落实党中央、国务院重大决策部署和证监会工作要求,完整、准确、全面贯彻新发展理念,以高质量发展为主线,以创新型、市场化、国际化为方向,以产品、制度、技术创新为引领,着力打造绿色、创新型期货交易所,积极服务构建新发展格局,助力实现绿色低碳转型发展 |
| | | </p> |
| | | <p data-v-536e3e91=""> |
| | | <br data-v-536e3e91="" /><img |
| | | data-v-536e3e91="" |
| | | src="https://res.pfmjnru.xyz//storage/article/cover/6f39e7df12297147c0558d26896e2b10.jpeg" |
| | | width="359" |
| | | height="230" |
| | | /><br data-v-536e3e91="" /> |
| | | </p> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import * as api from "@/axios/api"; |
| | | import { |
| | | Toast |
| | | } from "mint-ui"; |
| | | import { |
| | | isNull, |
| | | bankNoReg, |
| | | isName |
| | | } from '@/utils/utils' |
| | | import * as api from "@/axios/api"; |
| | | import { Toast } from "mint-ui"; |
| | | import { isNull, bankNoReg, isName } from "@/utils/utils"; |
| | | |
| | | export default { |
| | | name: "bankCard1", |
| | | data() { |
| | | return { |
| | | |
| | | }; |
| | | }, |
| | | created() { |
| | | |
| | | }, |
| | | methods: { |
| | | |
| | | } |
| | | }; |
| | | export default { |
| | | name: "bankCard1", |
| | | data() { |
| | | return {}; |
| | | }, |
| | | created() {}, |
| | | methods: {} |
| | | }; |
| | | </script> |
| | | |
| | | <style scoped lang="less"> |
| | | /deep/ .van-nav-bar__content { |
| | | height: 65px; |
| | | } |
| | | /deep/ .van-nav-bar__content { |
| | | height: 65px; |
| | | } |
| | | |
| | | /deep/ .van-nav-bar__title { |
| | | font-family: "DINPro"; |
| | | /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; |
| | | } |
| | | |
| | | .bank_card_page { |
| | | width: 100%; |
| | | height: 100%; |
| | | |
| | | .content { |
| | | 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; |
| | | padding: 0.4rem 0.6rem; |
| | | line-height: 0.55rem; |
| | | font-size: 0.3rem; |
| | | } |
| | | |
| | | .bank_card_page { |
| | | width: 100%; |
| | | height: 100%; |
| | | background: #fff; |
| | | |
| | | .content { |
| | | width: 100%; |
| | | padding: 0 0.6rem; |
| | | |
| | | .top_back { |
| | | width: 100%; |
| | | height: 2rem; |
| | | |
| | | >div { |
| | | width: 10%; |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | |
| | | img { |
| | | width: 0.6rem; |
| | | height: 0.6rem; |
| | | } |
| | | } |
| | | |
| | | .titles { |
| | | width: 100%; |
| | | height: 1.5rem; |
| | | font-size: 0.641rem; |
| | | margin-top: 1rem; |
| | | |
| | | span { |
| | | font-weight: 600; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .bank_name { |
| | | width: 100%; |
| | | height: 1.5rem; |
| | | font-size: 0.5rem; |
| | | display: flex; |
| | | padding: 0 0.2rem; |
| | | background: rgb(247, 247, 247); |
| | | border-radius: 0.2rem; |
| | | margin-top: 0.3rem; |
| | | } |
| | | } |
| | | } |
| | | </style> |
| | |
| | | .news_item { |
| | | width: 100%; |
| | | padding: 0.25em; |
| | | border-bottom: 0.02667em solid #f5f5f5; |
| | | border-bottom: 0.02667em solid rgba(#fff, 0.1); |
| | | position: relative; |
| | | |
| | | .news_time { |
| New file |
| | |
| | | <template> |
| | | <div>理财</div> |
| | | </template> |
| | |
| | | </div> |
| | | <div class="swiper"> |
| | | <div class="swiper-wrapper flex-between"> |
| | | <div class="swiper-slide"> |
| | | <!-- <div class="swiper-slide"> |
| | | <div class="nav_item flex-start" @click="toPage('/aiTrading')"> |
| | | <img src="../../assets/img/home_1.png" alt="" /> |
| | | <span>{{ $t("量化交易") }}</span> |
| | |
| | | <img src="../../assets/img/home_2.png" alt="" /> |
| | | <span>{{ $t("hj621") }}</span> |
| | | </div> |
| | | </div> |
| | | </div> --> |
| | | <div class="swiper-slide"> |
| | | <div class="nav_item flex-start" @click="toPage('/ipo')"> |
| | | <img src="../../assets/img/home_3.png" alt="" /> |
| | | <span>IPO</span> |
| | | </div> |
| | | </div> |
| | | <div class="swiper-slide"> |
| | | <!-- <div class="swiper-slide"> |
| | | <div class="nav_item flex-start" @click="toPage('/fund')"> |
| | | <img src="../../assets/img/home_4.png" alt="" /> |
| | | <span>{{ $t("理财基金") }}</span> |
| | | </div> |
| | | </div> --> |
| | | <div class="swiper-slide"> |
| | | <div class="nav_item flex-start" @click="toPage('/recharge')"> |
| | | <img src="@/assets/img/充值缴费.png" alt="" /> |
| | | <span>{{ $t("hj172") }}</span> |
| | | </div> |
| | | </div> |
| | | <div class="swiper-slide"> |
| | | <div class="nav_item flex-start" @click="toPage('/banklist')"> |
| | | <img src="@/assets/img/充值缴费.png" alt="" /> |
| | | <span>{{ $t("hj147") }}</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | padding: 0 0.25em 0 0.25em; |
| | | |
| | | .swiper-slide { |
| | | width: 2.1875em; |
| | | height: 2.5em; |
| | | width: 3em; |
| | | height: 2.8em; |
| | | |
| | | .nav_item { |
| | | background-color: #fff; |
| | |
| | | width: 100%; |
| | | height: 100%; |
| | | flex-direction: column; |
| | | padding-top: 0.25em; |
| | | padding: 0.25em 0.15em 0; |
| | | padding: 0.45em 0.15em 0; |
| | | |
| | | img { |
| | | width: 0.75em; |
| | | width: 0.95em; |
| | | margin-bottom: 0.25em; |
| | | } |
| | | |
| | |
| | | <template> |
| | | <div class="new_list"> |
| | | <page-head :title="$t('hj6')"></page-head> |
| | | <tab-head :title="$t('hj6')"></tab-head> |
| | | |
| | | <news-item v-for="item in newsList" :key="item.id" :item="item"></news-item> |
| | | |
| | | <div class="more-news" @click="getMore" v-if="newsList.length > 0"> |
| | | <span v-if="lod == 1">{{ $t("加载更多") }}</span> |
| | | <span v-else-if="lod == 2">{{ $t("加载中") }}</span> |
| | | <span v-else-if="lod == 3">{{ $t("沒有更多了") }}</span> |
| | | </div> |
| | | |
| | | <van-skeleton |
| | | :row="10" |
| | | v-if="newsList.length == 0" |
| | | style="margin-top: 1em;" |
| | | /> |
| | | |
| | | <n-pagination |
| | | :pageNo.sync="pageNum" |
| | | :pageSize="pageSize" |
| | | :total="total" |
| | | ></n-pagination> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import PageHead from "@/components/pageHead.vue"; |
| | | import tabHead from "@/components/tabHead.vue"; |
| | | import NewsItem from "./components/newsItem.vue"; |
| | | import nPagination from "@/components/nPagination.vue"; |
| | | import * as api from "@/axios/api"; |
| | | |
| | | export default { |
| | | name: "newList", |
| | | components: { |
| | | PageHead, |
| | | NewsItem, |
| | | nPagination |
| | | tabHead, |
| | | NewsItem |
| | | }, |
| | | data() { |
| | | return { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | total: 0, |
| | | newsList: [] |
| | | newsList: [], |
| | | lod: 1 // 1 加载更多 2 加载中 3 沒有更多了 |
| | | }; |
| | | }, |
| | | watch: { |
| | | pageNum() { |
| | | this.newsList = []; |
| | | this.getNewsList(); |
| | | } |
| | | }, |
| | | created() { |
| | | this.getNewsList(); |
| | |
| | | }; |
| | | let data = await api.getNewsList(options); |
| | | |
| | | this.newsList = data.data.list; |
| | | this.newsList = [...this.newsList, ...data.data.list]; |
| | | this.total = data.data.total; |
| | | this.lod = 1; |
| | | if (this.total <= this.newsList.length) this.lod = 3; |
| | | }, |
| | | // 加载更多 |
| | | getMore() { |
| | | if (this.lod == 3) return; |
| | | this.lod = 2; |
| | | this.pageNum++; |
| | | this.getNewsList(); |
| | | } |
| | | } |
| | | }; |
| | |
| | | .new_list { |
| | | font-size: 10vw; |
| | | width: 100%; |
| | | background-color: #fff; |
| | | min-height: 100vh; |
| | | padding-bottom: 0.1em; |
| | | padding-bottom: 1.4rem; |
| | | |
| | | } |
| | | </style> |
| | |
| | | <template> |
| | | <!-- <div |
| | | :class="` ${$state.theme === 'red' ? 'red-theme' : 'black-theme'}`" |
| | | class="new-page" |
| | | v-if="false" |
| | | > --> |
| | | <div class="new-page" v-if="list.title"> |
| | | <page-head :title="list.title"></page-head> |
| | | <div class="newsTop"> |
| | |
| | | .newsTop { |
| | | border-bottom: 0.01rem solid #cdcdcd; |
| | | padding-top: 0.3rem; |
| | | color: #000; |
| | | width: 96%; |
| | | margin-left: 0; |
| | | margin-right: 0; |
| | |
| | | <div class="ti_cont"> |
| | | <div class="top_back"> |
| | | <div class="left_back" @click="handleBackaa()"> |
| | | <img src="../../assets/img/zuojiantou.png" alt /> |
| | | <img src="../../assets/img/backs.png" alt /> |
| | | </div> |
| | | <div class="right_title"> |
| | | <div class="t_t line-one" style="white-space: nowrap"> |
| | |
| | | width: 100%; |
| | | // height: 3.2rem; |
| | | padding: 0 0.3rem; |
| | | background: #fff; |
| | | // background: #fff; |
| | | |
| | | .detail_title_a { |
| | | font-size: .45rem; |
| | |
| | | height: 1.7rem; |
| | | position: fixed; |
| | | bottom: 0; |
| | | background: #fff; |
| | | background: #191d27; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | |
| | | .sell_btn { |
| | | width: 50%; |
| | | height: 80%; |
| | | background: #c4d600; |
| | | background: green; |
| | | color: #fff; |
| | | border-radius: 0 3rem 3rem 0 !important; |
| | | |
| | |
| | | initWebSocket() { |
| | | console.log("initWebSocket"); |
| | | this.Trade = new WhrWebSocket({ |
| | | path: `wss://ws.kuspitai.com/websocket-server `, |
| | | path: `wss://usws.yanshiz.com/websocket-server `, |
| | | onmessage: this.getTradeMessage, |
| | | }); |
| | | |
| | |
| | | <div class="header_content"> |
| | | <div class="left_back" @click="$router.go(-1)"> |
| | | <!-- <img src="../../../assets/img/back.png" alt="" /> --> |
| | | <van-icon name="arrow-left" color="#c4d600" size=".5rem" /> |
| | | <van-icon name="arrow-left" color="#fff" size=".5rem" /> |
| | | </div> |
| | | <div class="right_mess"> |
| | | <span>{{ mess }}</span> |
| | |
| | | <template> |
| | | <div class="login_page"> |
| | | <!-- <headers /> --> |
| | | <tab-head :leftShow="false" :rightShow="false"> |
| | | <van-popover |
| | | v-model="languageShow" |
| | |
| | | > |
| | | <template #reference> |
| | | <div class="multilingual"> |
| | | <img src="../../assets/img/language.svg" alt="" /> |
| | | <img src="../../assets/img/language_b.png" alt="" /> |
| | | </div> |
| | | </template> |
| | | </van-popover> |
| | | </tab-head> |
| | | |
| | | <img src="../../assets/img/logo.png" alt="" class="logo" /> |
| | | <template #left> |
| | | <img src="@/assets/img/logo_1.png" class="left_icon" /> |
| | | </template> |
| | | </tab-head> |
| | | |
| | | <div class="login_title animated slideInDown"> |
| | | <span>{{ $t("dlan") }}</span> |
| | |
| | | > |
| | | {{ $t("立即登录") }} |
| | | </van-button> |
| | | <van-button |
| | | <!-- <van-button |
| | | type="info" |
| | | plain |
| | | class="butn_2" |
| | | @click="$router.push('/register')" |
| | | > |
| | | {{ $t("免費註冊") }} |
| | | </van-button> |
| | | <!-- <div class="password-operate" data-v-8cc76a7b=""> |
| | | <div class="forget" data-v-8cc76a7b="" @click="getApp()"> |
| | | {{ $t("hj12") }} |
| | | </van-button> --> |
| | | </div> |
| | | |
| | | <div class="login_footer"> |
| | | <div class="tui-first"> |
| | | <div @click="$router.push('/register')">{{ $t("立即注册") }}</div> |
| | | <div class="symbol"></div> |
| | | <div @click="$store.dispatch('CustomerService')"> |
| | | {{ $t("kf") }} |
| | | </div> |
| | | <div class="remember" data-v-8cc76a7b=""> |
| | | <van-checkbox @change="checkboxChange" v-model="checked">{{ |
| | | $t("記住帳戶密碼") |
| | | }}</van-checkbox> |
| | | </div> |
| | | </div> --> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- <div class="register" data-v-8cc76a7b=""> |
| | | {{ $t("還沒賬號?") }} |
| | | <span @click="$router.push('/register')" data-v-8cc76a7b="" style="color:#c4d600">{{ $t("免費註冊") }}</span> |
| | | </div> --> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | <script> |
| | | // import headers from "./components/header.vue"; |
| | | import tabHead from "../../components/tabHead.vue"; |
| | | import * as api from "@/axios/api"; |
| | | import { Notify } from "vant"; |
| | |
| | | |
| | | setTimeout(() => { |
| | | // this.$router.push("/home"); |
| | | this.$router.push("/home_index"); |
| | | this.$router.push("/"); |
| | | }, 1000); |
| | | } else { |
| | | Notify({ type: "warning", message: data.msg }); |
| | |
| | | |
| | | <style scoped lang="less"> |
| | | @green: #c4d600; |
| | | @Black1: #13161e; |
| | | |
| | | .login_footer { |
| | | margin-top: 3rem; |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | flex-direction: column; |
| | | |
| | | .tui-first { |
| | | display: flex; |
| | | align-items: center; |
| | | color: #0e7ddd; |
| | | font-size: 0.4rem; |
| | | } |
| | | .symbol { |
| | | background-color: #ccc; |
| | | width: 1px; |
| | | height: 0.275rem; |
| | | margin: 0 0.225rem; |
| | | } |
| | | } |
| | | |
| | | .password-operate { |
| | | display: flex; |
| | |
| | | font-weight: 700; |
| | | font-size: 0.7rem; |
| | | line-height: 0.66667rem; |
| | | color: #14181f; |
| | | text-align: center; |
| | | padding: 0.6rem 0.6rem 0; |
| | | } |
| | | |
| | | /deep/ .van-checkbox__label { |
| | |
| | | display: flex; |
| | | flex-direction: column; |
| | | height: 100vh; |
| | | |
| | | .left_icon { |
| | | width: 112px; |
| | | height: 32px; |
| | | } |
| | | |
| | | .multilingual { |
| | | width: 0.8em; |
| | |
| | | width: 100%; |
| | | height: 9.7436rem; |
| | | margin-top: 0.4359rem; |
| | | background: #fff; |
| | | // padding: 0 0.4564rem; |
| | | |
| | | .login_forms { |
| | | width: 100%; |
| | | |
| | | border-top-left-radius: 0.26667rem; |
| | | border-top-right-radius: 0.26667rem; |
| | | padding: 0.34667rem 0.4rem; |
| | | padding: 0.2rem 0.6rem; |
| | | flex: 1; |
| | | display: flex; |
| | | flex-direction: column; |
| | |
| | | flex-wrap: wrap; |
| | | |
| | | .forms_title { |
| | | font-size: 0.4rem; |
| | | font-size: 0.3rem; |
| | | margin-top: 0.5rem; |
| | | margin-bottom: 0.2rem; |
| | | font-weight: 300; |
| | | opacity: 0.7; |
| | | } |
| | | |
| | | .user_name, |
| | |
| | | width: 100%; |
| | | height: 50px; |
| | | background: #fff; |
| | | // background: #1e1e1e; |
| | | border-radius: 0.3564rem; |
| | | |
| | | > input { |
| | |
| | | /deep/.el-input__inner { |
| | | width: 100%; |
| | | height: 70px; |
| | | background-color: #fff !important; |
| | | // background: #1e1e1e; |
| | | border-radius: 8px; |
| | | font-size: 0.45rem !important; |
| | | border: #ddd solid 1px; |
| | | background-color: @Black1 !important; |
| | | font-size: 0.3rem !important; |
| | | border: @Black1 solid 1px; |
| | | color: #fff; |
| | | border-bottom: rgba(#fff, 0.7) solid 1px; |
| | | } |
| | | |
| | | .bottom_btns { |
| | |
| | | margin-top: 40px; |
| | | height: 60px; |
| | | border-radius: 8px; |
| | | background: @green; |
| | | background: #1f4583; |
| | | border: none; |
| | | } |
| | | |
| | |
| | | <div class="logins_content"> |
| | | <div class="login_forms"> |
| | | <div class="top_forms"> |
| | | <el-input :placeholder="placeholder" size="medium" v-model="phone" maxlength="10" clearable |
| | | @input="handleInput()"> |
| | | <template slot="prepend">+91</template> |
| | | <div class="forms_title">{{ placeholder }}</div> |
| | | <el-input |
| | | :placeholder="$t('请输入')" |
| | | :size="medium" |
| | | v-model="phone" |
| | | clearable |
| | | @input="handleInput()" |
| | | > |
| | | </el-input> |
| | | |
| | | <el-input style="margin-top: 0.46rem" show-password :placeholder="$t('hj19')" size="medium" |
| | | v-model="userPassword" @input="handleInput()"> |
| | | <div class="forms_title">{{ $t("Password") }}</div> |
| | | <el-input |
| | | :placeholder="$t('hj19')" |
| | | :size="medium" |
| | | v-model="userPassword" |
| | | clearable |
| | | @input="handleInput()" |
| | | > |
| | | </el-input> |
| | | <el-input style="margin-top: 0.46rem" show-password :placeholder="$t('hj20')" size="medium" |
| | | v-model="rePassword" @input="handleInput()"> |
| | | |
| | | <div class="forms_title">{{ $t("hj20") }}</div> |
| | | <el-input |
| | | :placeholder="$t('请输入')" |
| | | :size="medium" |
| | | v-model="rePassword" |
| | | clearable |
| | | @input="handleInput()" |
| | | > |
| | | </el-input> |
| | | <el-input style="margin-top: 0.46rem" :placeholder="$t('hj21')" size="medium" v-model="userName" clearable |
| | | @input="handleInput()"> |
| | | |
| | | <div class="forms_title">{{ $t("hj21") }}</div> |
| | | <el-input |
| | | :placeholder="$t('请输入')" |
| | | :size="medium" |
| | | v-model="userName" |
| | | clearable |
| | | @input="handleInput()" |
| | | > |
| | | </el-input> |
| | | </div> |
| | | <div class="radio-con" style="display: flex; align-items: center; font-size: 14px"> |
| | | <van-checkbox v-model="checked">{{ |
| | | $t("我已閱讀並同意") |
| | | }}</van-checkbox> |
| | | <span @click="gotoxy" style="color: #c4d600">{{ |
| | | $t("《用戶服務協議》") |
| | | }}</span> |
| | | <div |
| | | class="radio-con" |
| | | style="display: flex; align-items: center; font-size: 14px" |
| | | > |
| | | <van-checkbox v-model="checked" @change="handleInput()"> |
| | | {{ $t("我已閱讀並同意") }} |
| | | </van-checkbox> |
| | | <span @click="gotoxy" style="color: #0e7ddd"> |
| | | {{ $t("《用戶服務協議》") }} |
| | | </span> |
| | | </div> |
| | | <div class="bottom_btns" :class="btnClass ? 'on' : 'off'"> |
| | | <van-button type="info" :disabled="!btnClass" class="butn" @click="gook">{{ $t("立即注册") }}</van-button> |
| | | <van-button |
| | | type="info" |
| | | :disabled="!btnClass" |
| | | class="butn" |
| | | @click="gook" |
| | | >{{ $t("立即注册") }}</van-button |
| | | > |
| | | |
| | | <van-button type="info" class="butn_2" plain @click="$router.push('/login')"> |
| | | <!-- <van-button |
| | | type="info" |
| | | class="butn_2" |
| | | plain |
| | | @click="$router.push('/login')" |
| | | > |
| | | {{ $t("已有賬號?") + $t("馬上登錄") }} |
| | | </van-button> |
| | | |
| | | <!-- <div class="register" @click="$router.push('/login')"> |
| | | {{ $t("已有賬號?") |
| | | }}<span style="color: #c4d600">{{ $t("馬上登錄") }}</span> |
| | | </div> --> |
| | | </van-button> --> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | code: "", |
| | | userPassword: "", |
| | | btnClass: false, |
| | | rePassword: "" |
| | | rePassword: "", |
| | | medium: "medium", |
| | | }; |
| | | }, |
| | | mounted() { |
| | |
| | | this.userPassword !== "" && |
| | | this.phone !== "" && |
| | | this.userPassword == this.rePassword && |
| | | this.userName != "" |
| | | this.userName != "" && |
| | | this.checked |
| | | ) { |
| | | this.btnClass = true; |
| | | } else { |
| | | this.btnClass = false; |
| | | } |
| | | }, |
| | | |
| | | async gook() { |
| | | if (this.phone.length == 0) { |
| | | Notify({ type: "warning", message: this.$t("hj28") }); |
| | |
| | | </script> |
| | | |
| | | <style scoped lang="less"> |
| | | @green: #c4d600; |
| | | @green: #0e7ddd; |
| | | @Black1: #13161e; |
| | | |
| | | .register { |
| | | font-style: normal; |
| | |
| | | font-weight: 500; |
| | | font-size: 0.48rem; |
| | | line-height: 0.66667rem; |
| | | color: #14181f; |
| | | margin-left: 0.53333rem; |
| | | padding: 0.6rem 0.6rem 0; |
| | | } |
| | | |
| | | .login_page { |
| | |
| | | flex: 1; |
| | | width: 100%; |
| | | height: 9.7436rem; |
| | | margin-top: 0.4359rem; |
| | | background: #fff; |
| | | padding: 0.4rem 0.6rem 0; |
| | | border-top-left-radius: 0.26667rem; |
| | | border-top-right-radius: 0.26667rem; |
| | | |
| | |
| | | width: 100%; |
| | | height: 2.0513rem; |
| | | display: flex; |
| | | |
| | | padding: 0.6rem 0.6rem 0; |
| | | align-items: center; |
| | | font-size: 0.7023rem; |
| | | color: #000; |
| | | font-weight: 600 !important; |
| | | |
| | | >span { |
| | | > span { |
| | | font-weight: 600 !important; |
| | | } |
| | | } |
| | |
| | | |
| | | border-top-left-radius: 0.26667rem; |
| | | border-top-right-radius: 0.26667rem; |
| | | padding: 0.34667rem 0.4rem; |
| | | flex: 1; |
| | | display: flex; |
| | | flex-direction: column; |
| | |
| | | align-items: center; |
| | | flex-wrap: wrap; |
| | | |
| | | .forms_title { |
| | | font-size: 0.3rem; |
| | | margin-top: 0.5rem; |
| | | margin-bottom: 0.2rem; |
| | | font-weight: 300; |
| | | opacity: 0.7; |
| | | } |
| | | |
| | | .user_name, |
| | | .password { |
| | | width: 100%; |
| | |
| | | // background: #1e1e1e; |
| | | border-radius: 0.3564rem; |
| | | |
| | | >input { |
| | | > input { |
| | | width: 100%; |
| | | height: 100%; |
| | | padding-left: 0.3564rem; |
| | |
| | | /deep/.el-input__inner { |
| | | width: 100%; |
| | | height: 70px; |
| | | background-color: rgb(246, 246, 247) !important; |
| | | // background: #1e1e1e; |
| | | // border-radius: 8px; |
| | | font-size: 0.45rem !important; |
| | | border: none; |
| | | background-color: @Black1 !important; |
| | | font-size: 0.3rem !important; |
| | | border: @Black1 solid 1px; |
| | | color: #fff; |
| | | border-bottom: rgba(#fff, 0.7) solid 1px; |
| | | } |
| | | |
| | | .bottom_btns { |
| | |
| | | border-radius: 8px; |
| | | color: @green; |
| | | border-color: @green; |
| | | margin-top: .4rem; |
| | | margin-top: 0.4rem; |
| | | } |
| | | |
| | | .mes { |
| | |
| | | align-items: center; |
| | | justify-content: center; |
| | | |
| | | >span { |
| | | > span { |
| | | font-size: 0.3046rem; |
| | | color: #000; |
| | | background-color: #fff; |
| | |
| | | width: 3rem; |
| | | height: 3.5769rem; |
| | | |
| | | >img { |
| | | > img { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | |
| | | <template> |
| | | <div class="markets"> |
| | | <tab-head :rightShow="false"> |
| | | <van-popover |
| | | v-model="switchShow" |
| | | trigger="click" |
| | | :actions="actions" |
| | | @select="onSelect" |
| | | placement="bottom-end" |
| | | > |
| | | <template #reference> |
| | | <div class="switch flex-center"> |
| | | <van-icon name="exchange" size=".45em" /> |
| | | <span>{{ switchText }}</span> |
| | | </div> |
| | | </template> |
| | | </van-popover> |
| | | </tab-head> |
| | | <tab-head :title="$t('hj62')"></tab-head> |
| | | |
| | | <div class="tabs flex-between"> |
| | | <div |
| | | class="tab_item flex-center" |
| | | :class="{ active: item.pid == tab }" |
| | | v-for="item in tabList" |
| | | :key="item.pid" |
| | | @click="tab = item.pid" |
| | | > |
| | | <span class="line-one">{{ item.abbreviation }}</span> |
| | | <div class="tui-search"> |
| | | <van-field |
| | | v-model="keyValue" |
| | | :placeholder="$t('hj37')" |
| | | right-icon="search" |
| | | @click-right-icon="search" |
| | | /> |
| | | </div> |
| | | |
| | | <div class="tui-tabs flex-start"> |
| | | <div class="tab_item flex-center"> |
| | | <span>{{ $t("美股") }}</span> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="markets_echart"> |
| | | <index-component :ids="'markets'" :dataObj="kData"></index-component> |
| | | <div class="tui_variety flex-between-start"> |
| | | <div class="tui_variety_item" @click="$store.dispatch('CustomerService')"> |
| | | <img src="@/assets/img/market_0.png" alt="" /> |
| | | <div class="tui_variety_item_name"> |
| | | <span>{{ this.$t("kf") }}</span> |
| | | </div> |
| | | </div> |
| | | <div |
| | | class="tui_variety_item" |
| | | v-for="i in tabs" |
| | | :key="i.name" |
| | | @click="$router.push(i.path)" |
| | | > |
| | | <img :src="i.img" alt="" /> |
| | | <div class="tui_variety_item_name"> |
| | | <span>{{ i.name }}</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <stock-list :propOption="propOption"></stock-list> |
| | | <stock-list :propOption="propOption" ref="stockList"></stock-list> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import indexComponent from "@/components/index-component.vue"; |
| | | import tabHead from "@/components/tabHead.vue"; |
| | | import stockList from "@/components/stock-list.vue"; |
| | | import Echart from "../home/components/echart.vue"; |
| | | import * as api from "@/axios/api"; |
| | | export default { |
| | | name: "markets", |
| | | data() { |
| | | return { |
| | | switchShow: false, |
| | | // 切换 |
| | | actions: [ |
| | | { |
| | | text: this.$t("美国"), |
| | | value: "US", |
| | | name: this.$t("美国") |
| | | }, |
| | | { |
| | | text: this.$t("hk1"), |
| | | value: "HK", |
| | | name: this.$t("hk1") |
| | | }, |
| | | { |
| | | text: this.$t("tw"), |
| | | value: "TW", |
| | | name: this.$t("tw") |
| | | }, |
| | | { |
| | | text: this.$t("id1"), |
| | | value: "IN", |
| | | name: this.$t("id1") |
| | | } |
| | | ], |
| | | tabList: [], |
| | | usList: [ |
| | | { abbreviation: "Dow Jones" }, |
| | | { abbreviation: "S&P 500" }, |
| | | { abbreviation: "NASDAQ" } |
| | | ], |
| | | hkList: [ |
| | | { abbreviation: "恒生指數" }, |
| | | { abbreviation: "恒生中國企業指數" }, |
| | | { abbreviation: "HSCEI Covered Call Index" } |
| | | ], |
| | | twList: [ |
| | | { abbreviation: "臺灣證券交易所發行量加權股價指數" }, |
| | | { abbreviation: "櫃買指數" }, |
| | | { abbreviation: "臺灣50指數" } |
| | | ], |
| | | inList: [ |
| | | { abbreviation: "Nifty 50 Index" }, |
| | | { abbreviation: "Nifty Bank Index" }, |
| | | { abbreviation: "Nifty Financial Services Index" } |
| | | ], |
| | | tab: 1, |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | kData: {} |
| | | kData: {}, |
| | | keyValue: "", // 搜索 |
| | | tabs: [ |
| | | { |
| | | name: this.$t("订单"), |
| | | path: "/myorder", |
| | | img: require("@/assets/img/market_1.png") |
| | | }, |
| | | { |
| | | name: this.$t("subdka"), |
| | | path: "/RechargeSure", |
| | | img: require("@/assets/img/market_2.png") |
| | | }, |
| | | { |
| | | name: this.$t("关于我们"), |
| | | path: "/bankCard1", |
| | | img: require("@/assets/img/market_3.png") |
| | | } |
| | | ] |
| | | }; |
| | | }, |
| | | components: { |
| | | tabHead, |
| | | Echart, |
| | | stockList, |
| | | indexComponent |
| | | stockList |
| | | }, |
| | | watch: { |
| | | tab() { |
| | | this.getIndicesAndKData(); |
| | | } |
| | | }, |
| | | watch: {}, |
| | | computed: { |
| | | switchText() { |
| | | // 切换文字 |
| | | return this.$t(this.$store.state.marketsSwitch.name) || this.$t("美国"); |
| | | }, |
| | | // 传递给列表组件的类型值 |
| | | propOption() { |
| | | // 传递给列表组件的类型值 |
| | | return { stockType: this.$store.state.marketsSwitch.value }; |
| | | return { stockType: "US", keyWords: this.keyValue }; |
| | | } |
| | | }, |
| | | async created() { |
| | | if (!this.$store.state.marketsSwitch.name) { |
| | | // 如果没有选过,默认选择第一个 |
| | | this.$store.commit("MARKET_CHANGE", this.actions[0]); |
| | | } |
| | | await this.getTabData(); |
| | | this.tab = this.tabList[0].pid; |
| | | }, |
| | | async created() {}, |
| | | mounted() {}, |
| | | methods: { |
| | | // 选择 |
| | | async onSelect(e) { |
| | | this.$store.commit("MARKET_CHANGE", e); |
| | | await this.getTabData(); |
| | | this.tab = this.tabList[0].pid; |
| | | }, |
| | | // 获取tab数据 |
| | | async getTabData() { |
| | | let stockType = this.$store.state.marketsSwitch.value; |
| | | let data = await api.getIndicesList({ |
| | | stockType |
| | | }); |
| | | |
| | | // 数据重构 |
| | | let list = []; |
| | | if (stockType == "US") list = this.usList; |
| | | else if (stockType == "HK") list = this.hkList; |
| | | else if (stockType == "TW") list = this.twList; |
| | | else if (stockType == "IN") list = this.inList; |
| | | this.tabList = list.map((item, index) => { |
| | | item = { ...item, ...data.data[index + 1] }; |
| | | return item; |
| | | }); |
| | | |
| | | // console.log("dadadadadad", this.tabList); |
| | | }, |
| | | // 获取指数图 |
| | | async getIndicesAndKData() { |
| | | let data = await api.getIndicesAndKData({ |
| | | pid: this.tab, |
| | | stockType: this.$store.state.marketsSwitch.value |
| | | }); |
| | | this.kData = data.data; |
| | | // console.log("getIndicesAndKData", this.kData); |
| | | }, |
| | | // tab切换 |
| | | tabChange() { |
| | | this.getIndicesAndKData(); |
| | | // 搜索 |
| | | search() { |
| | | this.$refs.stockList.init(); |
| | | } |
| | | } |
| | | }; |
| | |
| | | @green2: #f0f0f0; |
| | | @dark_green: #07c160; |
| | | |
| | | /deep/ .van-cell { |
| | | background-color: rgba(#000, 0); |
| | | border: rgba(#fff, 0.5) 2px solid; |
| | | border-radius: 5em; |
| | | } |
| | | /deep/ .van-icon { |
| | | font-size: 1.6em; |
| | | } |
| | | .markets { |
| | | font-size: 10vw; |
| | | width: 100vw; |
| | | min-height: 100vh; |
| | | padding-bottom: 1.5rem; |
| | | |
| | | .markets_echart { |
| | | width: 100%; |
| | | height: 3.2em; |
| | | background: rgba(red, 0.1); |
| | | color: @red; |
| | | .tui_variety { |
| | | padding: 0.7em 0 0.35em; |
| | | .tui_variety_item { |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | flex-basis: 25%; |
| | | .tui_variety_item_name { |
| | | line-height: 0.2em; |
| | | color: #898a8e; |
| | | margin-top: 0.1em; |
| | | text-align: center; |
| | | span { |
| | | font-size: 0.3em; |
| | | } |
| | | } |
| | | img { |
| | | width: 0.7em; |
| | | height: auto; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .tabs { |
| | | width: 9.5em; |
| | | height: 1em; |
| | | background-color: @green2; |
| | | border-radius: 0.5em; |
| | | margin: 0.25em auto; |
| | | padding: 0 0.1em; |
| | | .tui-tabs { |
| | | position: sticky; |
| | | top: 0; |
| | | left: 0; |
| | | padding: 0 0.22em; |
| | | |
| | | .tab_item { |
| | | width: 32%; |
| | | height: 0.8em; |
| | | border-radius: 0.5em; |
| | | padding: 0 .25em; |
| | | |
| | | height: 1.05em; |
| | | font-weight: bold; |
| | | padding: 0 0.325em; |
| | | color: rgb(204, 204, 204); |
| | | position: relative; |
| | | &::before { |
| | | content: ""; |
| | | width: 0.75em; |
| | | height: 0.15em; |
| | | position: absolute; |
| | | bottom: 0; |
| | | background-color: rgb(82, 91, 173); |
| | | border-radius: 0.15em; |
| | | } |
| | | span { |
| | | font-size: 0.4em; |
| | | } |
| | | } |
| | | |
| | | .active { |
| | | background-color: @green; |
| | | } |
| | | } |
| | | |
| | | .switch { |
| | | padding: 0.35em 0.5em; |
| | | background-color: @green; |
| | | color: @white; |
| | | border-radius: 1em; |
| | | |
| | | span { |
| | | font-size: 0.35em; |
| | | margin-left: 0.2em; |
| | | } |
| | | .tui-search { |
| | | padding: 0.225em; |
| | | } |
| | | } |
| | | </style> |
| | |
| | | </script> |
| | | <style lang="less" scoped> |
| | | body { |
| | | background-color: #fff; |
| | | // background-color: #fff; |
| | | } |
| | | #app .body-box { |
| | | height: 100% |
| | |
| | | <div class="order_tabs"> |
| | | <van-tabs v-model="active" swipe-threshold="1"> |
| | | <van-tab :title="$t('hj160')" name=""></van-tab> |
| | | <van-tab title="AI" name="4"></van-tab> |
| | | <van-tab :title="$t('hj621')" name="3"></van-tab> |
| | | <van-tab title="IPO" name="2"></van-tab> |
| | | <van-tab :title="$t('日内')" name="0"></van-tab> |
| | | <van-tab :title="$t('美股指数')" name="US"></van-tab> |
| | | <van-tab :title="$t('hksi')" name="HK"></van-tab> |
| | | <van-tab :title="$t('tsi')" name="TW"></van-tab> |
| | | <van-tab :title="$t('ni')" name="IN"></van-tab> |
| | | </van-tabs> |
| | | </div> |
| | | |
| | |
| | | async getList() { |
| | | let data = await api.getchicang({ |
| | | state: 0, |
| | | positionType: this.active, |
| | | stockType: this.active, |
| | | pageNum: this.pageNum, |
| | | pageSize: this.pageSize |
| | | }); |
| | |
| | | <div class="top_cny"> |
| | | <div class="top_back"> |
| | | <div class="left_back" @click="handleBack()"> |
| | | <img src="../../assets/img/zuojiantou.png" alt /> |
| | | <img src="../../assets/img/backs.png" alt /> |
| | | </div> |
| | | <div class="right_title"> |
| | | <div class="t_t" style="white-space: nowrap"> |
| | |
| | | </div> |
| | | </div> --> |
| | | <div class="btn_buy" @click="gdOrSetBuy()"> |
| | | <!-- <div :class="tabsCurrentIndex == 0 ? 'maichu' : ''">#c4d600 --> |
| | | <div class="maichu" style="background-color:#c4d600"> |
| | | <div |
| | | :class="tabsCurrentIndex == 0 ? 'maichu' : ''" |
| | | style="background-color:#287dff" |
| | | > |
| | | <span>{{ tabsCurrentIndex == 0 ? $t("hj84") : $t("gm") }}</span> |
| | | </div> |
| | | </div> |
| | |
| | | .buy_page { |
| | | width: 100%; |
| | | min-height: 100vh; |
| | | background-color: #fff; |
| | | // background-color: #fff; |
| | | |
| | | > .content { |
| | | width: 100%; |
| | | height: calc(100% - 1.6rem); |
| | | position: relative; |
| | | background-color: rgb(241, 242, 246); |
| | | background-color: #222; |
| | | } |
| | | } |
| | | |
| | |
| | | > div { |
| | | width: 45%; |
| | | height: 70%; |
| | | background: rgb(236, 236, 236); |
| | | background: #444; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | |
| | | } |
| | | |
| | | .active { |
| | | background: #fff; |
| | | background: #333; |
| | | color: rgb(110, 169, 118); |
| | | |
| | | span { |
| | |
| | | } |
| | | |
| | | .actives { |
| | | background: #fff; |
| | | background: #333; |
| | | color: rgb(212, 71, 78); |
| | | |
| | | span { |
| | |
| | | width: 100%; |
| | | height: auto; |
| | | padding: 0.2rem 0.8rem; |
| | | background: #fff; |
| | | // background: #fff; |
| | | margin-top: 0.1rem; |
| | | border-radius: 0.3rem; |
| | | |
| | | .tabs { |
| | | width: 100%; |
| | | height: 0.8205rem; |
| | | background: rgb(247, 247, 247); |
| | | background: #555; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | |
| | | } |
| | | |
| | | .active { |
| | | background: #fff; |
| | | background: #333; |
| | | |
| | | span { |
| | | font-weight: 600; |
| | |
| | | } |
| | | |
| | | .bottom_bzz { |
| | | color: #000; |
| | | // color: #000; |
| | | font-size: 0.3846rem; |
| | | |
| | | span { |
| | |
| | | border-bottom: 0.05rem solid rgb(236, 236, 236); |
| | | |
| | | > div { |
| | | color: #000; |
| | | // color: #000; |
| | | } |
| | | } |
| | | } |
| | |
| | | width: 100%; |
| | | height: auto; |
| | | bottom: 0; |
| | | background: #fff; |
| | | // background: #fff; |
| | | padding: 0.8rem 0.8rem; |
| | | display: flex; |
| | | align-items: flex-end; |
| | |
| | | } |
| | | |
| | | .maichu { |
| | | // background-color: rgb(225, 59, 69) !important; |
| | | background-color: rgb(225, 59, 69) !important; |
| | | } |
| | | |
| | | .mr { |
| | |
| | | left: -0.1rem; |
| | | z-index: 10000; |
| | | background: rgba(255, 255, 255, 0); |
| | | border-left: 0.12rem solid rgb(241, 242, 246); |
| | | border-left: 0.12rem solid #555; |
| | | transform-origin: bottom right; |
| | | -ms-transform: skew(-10deg, 0deg); |
| | | -webkit-transform: skew(-10deg, 0deg); |
| | |
| | | left: 0; |
| | | z-index: 10000; |
| | | background: rgba(255, 255, 255, 0); |
| | | border-right: 0.1rem solid rgb(241, 242, 246); |
| | | border-right: 0.1rem solid #555; |
| | | transform-origin: bottom left; |
| | | -ms-transform: skew(-10deg, 0deg); |
| | | -webkit-transform: skew(-10deg, 0deg); |
| | |
| | | <template> |
| | | <div class="account"> |
| | | <tab-head :leftShow="false"> |
| | | <!-- <tab-head :leftShow="false"> |
| | | <template slot="left"> |
| | | <div class="user flex-start"> |
| | | <img src="@/assets/img/img_log_home.png" alt="" /> |
| | |
| | | <div class="tab flex-center" @click="toPage('/rechargelist')"> |
| | | <img src="@/assets/img/jl.png" alt="" /> |
| | | <span>{{ $t("jl") }}</span> |
| | | </div> |
| | | <div class="tab flex-center" @click="toPage('/transferNew')"> |
| | | <img src="@/assets/img/jl.png" alt="" /> |
| | | <span>{{ $t("划转") }}</span> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | ({{ positionData.twPositionEarningsParent }}) |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> --> |
| | | 资产 |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | .account { |
| | | width: 100%; |
| | | min-height: 100vh; |
| | | background: #fff; |
| | | font-size: 10vw; |
| | | padding-top: 0.2em; |
| | | padding-bottom: 1.4rem; |
| | | .account_loan { |
| | | height: 2em; |
| | | background-color: #e5eff7; |
| | | width: 100%; |
| | | padding: 0 0.5em 0.15em; |
| | | |
| | |
| | | </script> |
| | | <style lang="less" scoped> |
| | | .wrapper { |
| | | background-color: #fff !important; |
| | | height: 95vh; |
| | | // background-color: #fff !important; |
| | | // height: 95vh; |
| | | } |
| | | |
| | | .payNumber { |
| New file |
| | |
| | | <template> |
| | | <div class="my_order"> |
| | | <van-tabs v-model="active" title-inactive-color="#898a8e"> |
| | | <van-tab |
| | | :title="$t('hj2')" |
| | | name="0" |
| | | title-style="font-size:0.4rem;" |
| | | ></van-tab> |
| | | <van-tab |
| | | :title="$t('hj121')" |
| | | name="1" |
| | | title-style="font-size:0.4rem;" |
| | | ></van-tab> |
| | | </van-tabs> |
| | | |
| | | <div class="mo_list" v-if="active == '0'"> |
| | | <div |
| | | class="mol_item" |
| | | v-for="(i, index) in list" |
| | | :key="i.id" |
| | | @click="open(i, index)" |
| | | > |
| | | <div class="moli_title flex-between"> |
| | | <div> |
| | | {{ i.stockSpell }} |
| | | </div> |
| | | <div :style="`color:${i.orderDirection == '买涨' ? 'green' : 'red'}`"> |
| | | {{ i.orderDirection == "买涨" ? $t("gm") : $t("hj78") }} |
| | | </div> |
| | | </div> |
| | | <div class="moli_orderTitle"> |
| | | <span>{{ $t("订单号") }}</span> |
| | | <span style="margin-left: 1em;">{{ i.buyOrderId }}</span> |
| | | </div> |
| | | <div style="display:flex;flex-wrap:wrap;padding-bottom: .35rem;"> |
| | | <div class="tui-wrapItem flex-start"> |
| | | <div> |
| | | {{ $t("Price") }} |
| | | </div> |
| | | <div style="margin-left: .25rem;font-size: .4rem;"> |
| | | {{ i.orderTotalPrice }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="tui-wrapItem flex-start" style="width: 46%;"> |
| | | <div> |
| | | {{ $t("盈虧") }} |
| | | </div> |
| | | <div |
| | | style="margin-left: .25rem;font-size: .4rem;" |
| | | :style=" |
| | | `color:${ |
| | | i.profitAndLose > 0 |
| | | ? 'green' |
| | | : i.profitAndLose < 0 |
| | | ? 'red' |
| | | : '' |
| | | }` |
| | | " |
| | | > |
| | | {{ i.profitAndLose }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="tui-wrapItem flex-start"> |
| | | <div> |
| | | {{ $t("持倉價") }} |
| | | </div> |
| | | <div style="margin-left: .25rem;"> |
| | | {{ i.buyOrderPrice }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="tui-wrapItem flex-start" style="width:100%"> |
| | | <div> |
| | | {{ $t("持倉時間") }} |
| | | </div> |
| | | <div style="margin-left: .25rem;"> |
| | | {{ $moment(i.buyOrderTime).format("DD-MM-YYYY hh:mm:ss A") }} |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="jiaoyi-action flex-between" v-if="actIndex == index"> |
| | | <div class="action-item flex-center"> |
| | | <img src="@/assets/img/mr.png" /> |
| | | <div class="action-item-text">{{ $t("gm") }}</div> |
| | | </div> |
| | | <div class="action-item flex-center"> |
| | | <img src="@/assets/img/mc.png" /> |
| | | <div class="action-item-text">{{ $t("hj78") }}</div> |
| | | </div> |
| | | <div class="action-item flex-center"> |
| | | <img src="@/assets/img/pc.png" /> |
| | | <div class="action-item-text">{{ $t("平仓") }}</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="more-news"> |
| | | <span>{{ $t("沒有更多了") }}</span> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="mo_list" v-if="active == '1'"> |
| | | <div |
| | | class="mol_item" |
| | | v-for="(i, index) in list2" |
| | | :key="i.id" |
| | | @click="open(i, index)" |
| | | > |
| | | <div class="moli_title flex-between"> |
| | | <div> |
| | | {{ i.stockSpell }} |
| | | </div> |
| | | <div :style="`color:${i.orderDirection == '买涨' ? 'green' : 'red'}`"> |
| | | {{ i.orderDirection == "买涨" ? $t("gm") : $t("hj78") }} |
| | | </div> |
| | | </div> |
| | | <div class="moli_orderTitle"> |
| | | <span>{{ $t("订单号") }}</span> |
| | | <span style="margin-left: 1em;">{{ i.buyOrderId }}</span> |
| | | </div> |
| | | <div style="display:flex;flex-wrap:wrap;padding-bottom: .35rem;"> |
| | | <div class="tui-wrapItem flex-start"> |
| | | <div> |
| | | {{ $t("Price") }} |
| | | </div> |
| | | <div style="margin-left: .25rem;font-size: .4rem;"> |
| | | {{ i.orderTotalPrice }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="tui-wrapItem flex-start" style="width: 46%;"> |
| | | <div> |
| | | {{ $t("盈虧") }} |
| | | </div> |
| | | <div |
| | | style="margin-left: .25rem;font-size: .4rem;" |
| | | :style=" |
| | | `color:${ |
| | | i.profitAndLose > 0 |
| | | ? 'green' |
| | | : i.profitAndLose < 0 |
| | | ? 'red' |
| | | : '' |
| | | }` |
| | | " |
| | | > |
| | | {{ i.profitAndLose }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="tui-wrapItem flex-start"> |
| | | <div> |
| | | {{ $t("持倉價") }} |
| | | </div> |
| | | <div style="margin-left: .25rem;"> |
| | | {{ i.buyOrderPrice }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="tui-wrapItem flex-start" style="width: 46%;"> |
| | | <div> |
| | | {{ $t("成交价") }} |
| | | </div> |
| | | <div style="margin-left: .25rem;"> |
| | | {{ i.sellOrderPrice }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="tui-wrapItem"> |
| | | <div> |
| | | {{ $t("持倉時間") }} |
| | | </div> |
| | | <div> |
| | | {{ $moment(i.buyOrderTime).format("DD-MM-YYYY hh:mm:ss A") }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="tui-wrapItem" style="width: 46%;"> |
| | | <div> |
| | | {{ $t("hj128") }} |
| | | </div> |
| | | <div> |
| | | {{ $moment(i.sellOrderTime).format("DD-MM-YYYY hh:mm:ss A") }} |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="more-news"> |
| | | <span>{{ $t("沒有更多了") }}</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import * as api from "@/axios/api"; |
| | | export default { |
| | | data() { |
| | | return { |
| | | active: "0", |
| | | pageNum: 1, |
| | | pageSize: 9999, |
| | | total: 1, |
| | | list: [], // 持仓数据 |
| | | list2: [], // 平仓数据 |
| | | actObj: {}, // 选择的持仓对象 |
| | | actIndex: null |
| | | }; |
| | | }, |
| | | watch: { |
| | | active: { |
| | | handler(state) { |
| | | this.pageNum = 1; |
| | | this.getList(state); |
| | | }, |
| | | immediate: true |
| | | } |
| | | }, |
| | | props: { |
| | | // 是否可操作 |
| | | Operation: { |
| | | type: Boolean, |
| | | default: false |
| | | } |
| | | }, |
| | | created() {}, |
| | | methods: { |
| | | // 获取 持仓 数据 |
| | | async getList(state = 0) { |
| | | let opt = { |
| | | state, |
| | | pageNum: this.pageNum, |
| | | pageSize: this.pageSize |
| | | }; |
| | | let data = await api.getchicang(opt); |
| | | |
| | | if (data.status === 0) { |
| | | if (this.active == "0") this.list = data.data.list; |
| | | else this.list2 = data.data.list; |
| | | } |
| | | }, |
| | | open(i, index) { |
| | | if (!this.Operation) return; |
| | | this.actObj = i; |
| | | this.actIndex = index; |
| | | } |
| | | } |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="less" scoped> |
| | | /deep/ .van-tabs__nav { |
| | | background: none; |
| | | .van-tab__text--ellipsis { |
| | | overflow: visible; |
| | | } |
| | | .van-tab--active { |
| | | color: #ccc !important; |
| | | } |
| | | } |
| | | /deep/ .van-tabs__line { |
| | | background-color: rgb(82, 91, 173); |
| | | } |
| | | .my_order { |
| | | width: 100%; |
| | | font-size: 0.3rem; |
| | | background-color: rgba(#000, 0.9); |
| | | .mo_list { |
| | | padding: 0 0.35rem; |
| | | .mol_item { |
| | | margin: 0 0 0.3rem; |
| | | background-color: #13161e; |
| | | border-radius: 0.325rem; |
| | | color: #898a8e; |
| | | margin-top: 0.3rem; |
| | | .jiaoyi-action { |
| | | width: 100%; |
| | | height: 1.5rem; |
| | | background-color: #191d27; |
| | | .action-item { |
| | | width: 33%; |
| | | flex-shrink: 0; |
| | | flex-direction: column; |
| | | .action-item-text { |
| | | font-size: 0.3rem; |
| | | line-height: 0.3rem; |
| | | color: #898a8e; |
| | | } |
| | | img { |
| | | width: 0.5rem; |
| | | height: 0.5rem; |
| | | margin-bottom: 0.16rem; |
| | | } |
| | | } |
| | | } |
| | | .tui-wrapItem { |
| | | padding: 0.175rem 0.3rem 0; |
| | | color: #898a8e; |
| | | width: 54%; |
| | | line-height: .4rem; |
| | | } |
| | | .moli_orderTitle { |
| | | padding: 0.3rem 0.3rem 0; |
| | | color: #ccc; |
| | | } |
| | | .moli_title { |
| | | padding: 0.3rem; |
| | | border-bottom: 1px solid #494949; |
| | | font-weight: 700; |
| | | color: #ccc; |
| | | font-size: 0.4rem; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </style> |
| | |
| | | </router-link> |
| | | </mt-header> --> |
| | | <mt-navbar class="sub-navbar" v-model="selected"> |
| | | <mt-tab-item id="1"></i>我的持仓</mt-tab-item> |
| | | <mt-tab-item id="1">我的持仓</mt-tab-item> |
| | | <mt-tab-item id="2">我的平仓</mt-tab-item> |
| | | </mt-navbar> |
| | | <mt-tab-container class="order-list" v-model="selected"> |
| | |
| | | clipboard.onClick(e); |
| | | }, |
| | | onClickLeft() { |
| | | this.$router.push("/account"); |
| | | this.$router.go(-1); |
| | | }, |
| | | yhkselect(e) { |
| | | this.yhkrechargeSelect = e; |
| | |
| | | </script> |
| | | |
| | | <style lang="less" scoped> |
| | | @green: #c4d600; |
| | | @green: #287dff; |
| | | .but { |
| | | width: 100%; |
| | | color: #ffffff; |
| | |
| | | /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; |
| | | } |
| | | |
| | | /deep/ .van-cell { |
| | | list-style: none; |
| | | width: 100%; |
| | |
| | | font-style: normal; |
| | | font-weight: 500; |
| | | font-size: 0.37333rem; |
| | | color: #4f5257; |
| | | color: #5d5f65; |
| | | } |
| | | } |
| | | </style> |
| New file |
| | |
| | | <template> |
| | | <div class="transfer_new"> |
| | | <van-nav-bar |
| | | :placeholder="true" |
| | | :safe-area-inset-top="true" |
| | | :title="$t('划转')" |
| | | left-arrow |
| | | @click-left="$router.go(-1)" |
| | | > |
| | | </van-nav-bar> |
| | | |
| | | <div style="position: relative;"> |
| | | <div class="card"> |
| | | <div class="flex-center"> |
| | | <span style="margin-right: 1em;">{{ $t("从") }}</span> |
| | | <van-field |
| | | v-model="moneyRevise" |
| | | type="number" |
| | | :placeholder="$t('请输入')" |
| | | > |
| | | <template #button> |
| | | <van-button size="small" class="butn2" type="primary">{{ |
| | | $t("全部") |
| | | }}</van-button> |
| | | </template> |
| | | </van-field> |
| | | <span style="margin-left: 1em;">{{ cValue.currency }}</span> |
| | | </div> |
| | | <div class="mt-1"> |
| | | <van-popover |
| | | v-model="showPopover" |
| | | trigger="click" |
| | | :actions="actions" |
| | | @select="onSelect" |
| | | > |
| | | <template #reference> |
| | | <div>{{ cValue.text }}</div> |
| | | </template> |
| | | </van-popover> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="card mt-1"> |
| | | <div class="flex-center"> |
| | | <span style="margin-right: 1em;">{{ $t("到") }}</span> |
| | | <div style="flex:1">{{ this.moneyReviseTo }}</div> |
| | | <span style="margin-left: 1em;">{{ dValue.currency }}</span> |
| | | </div> |
| | | <div class="mt-1"> |
| | | <van-popover |
| | | v-model="showPopover1" |
| | | trigger="click" |
| | | :actions="actions" |
| | | @select="onSelect1" |
| | | > |
| | | <template #reference> |
| | | <div>{{ dValue.text }}</div> |
| | | </template> |
| | | </van-popover> |
| | | </div> |
| | | </div> |
| | | |
| | | <img src="@/assets/img/transfer.png" class="swap" @click="onSwap" /> |
| | | </div> |
| | | |
| | | <van-button type="info" class="butn" @click="submit"> |
| | | {{ $t("qr") }} |
| | | </van-button> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import * as api from "@/axios/api"; |
| | | import { Toast } from "vant"; |
| | | export default { |
| | | data() { |
| | | return { |
| | | moneyRevise: 0, // 划转金额 |
| | | maxMoneyRevise: 0, // 最大划转金额 |
| | | showPopover: false, |
| | | showPopover1: false, |
| | | actions: [ |
| | | { text: this.$t("美国"), value: "US", currency: "USD" }, |
| | | { text: this.$t("hk1"), value: "HK", currency: "HKD" }, |
| | | { text: this.$t("tw"), value: "TW", currency: "TWD" }, |
| | | { text: this.$t("id1"), value: "IN", currency: "INR" } |
| | | ], |
| | | cValue: {}, |
| | | dValue: {}, |
| | | usM: {}, // 账户金额 us |
| | | twM: {}, // 账户金额 tw |
| | | inM: {}, // 账户金额 in |
| | | hkM: {}, // 账户金额 hk |
| | | }; |
| | | }, |
| | | computed: { |
| | | moneyReviseTo() { |
| | | return this.moneyRevise * 7; |
| | | } |
| | | }, |
| | | created() { |
| | | this.cValue = this.actions[0]; // 默认值 |
| | | this.dValue = this.actions[1]; // 默认值 |
| | | this.getMoney(); |
| | | }, |
| | | methods: { |
| | | // 获取账户金额 |
| | | async getMoney() { |
| | | let data = await api.getMoney(); |
| | | if (data.status === 0) { |
| | | data.data.forEach(item=>{ |
| | | // if(item.) |
| | | }) |
| | | } |
| | | }, |
| | | // 划转上下调换 |
| | | onSwap() { |
| | | let a = this.cValue, |
| | | b = this.dValue; |
| | | this.cValue = b; |
| | | this.dValue = a; |
| | | }, |
| | | // 选择 |
| | | onSelect(action) { |
| | | this.cValue = action; |
| | | }, |
| | | // 选择 |
| | | onSelect1(action) { |
| | | this.dValue = action; |
| | | }, |
| | | async submit() { |
| | | let opt = { |
| | | fromType: this.cValue.value, |
| | | toType: this.dValue.value, |
| | | amt: this.moneyRevise |
| | | }; |
| | | let data = await api.transfer(opt); |
| | | if (data.status === 0) { |
| | | Toast.success(this.$t(data.msg)); |
| | | this.getMoney(); |
| | | } |
| | | } |
| | | } |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="less" scoped> |
| | | /deep/ .van-nav-bar__content { |
| | | height: 65px; |
| | | } |
| | | |
| | | /deep/ .van-nav-bar__title { |
| | | font-family: "DINPro"; |
| | | width: 100%; |
| | | height: 1.17333em; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | font-style: normal; |
| | | font-weight: 700; |
| | | font-size: 0.48em; |
| | | color: #14181f; |
| | | } |
| | | .transfer_new { |
| | | padding: 0rem 0.25em 0.5em 0.25em; |
| | | width: 100%; |
| | | min-height: 100vh; |
| | | background: #fff; |
| | | font-size: 10vw; |
| | | .butn { |
| | | width: 100%; |
| | | margin-top: 40px; |
| | | height: 60px; |
| | | border-radius: 8px; |
| | | background: #c4d600; |
| | | border: none; |
| | | } |
| | | .butn2 { |
| | | border-radius: 8px; |
| | | background: #c4d600; |
| | | border: none; |
| | | } |
| | | |
| | | .card { |
| | | background: #f7f7f7; |
| | | padding: 2em 1.2em; |
| | | border-radius: 0.5em; |
| | | font-size: 0.4em; |
| | | border: none; |
| | | } |
| | | |
| | | .swap { |
| | | position: absolute; |
| | | top: 55%; |
| | | left: 50%; |
| | | transform: translate(-50%, -50%); |
| | | width: 1em; |
| | | } |
| | | |
| | | .hint { |
| | | font-size: 0.35em; |
| | | margin-bottom: 150px; |
| | | |
| | | span { |
| | | color: #333; |
| | | } |
| | | } |
| | | |
| | | .label_but { |
| | | color: #333; |
| | | } |
| | | |
| | | .transfer_label { |
| | | font-size: 0.4em; |
| | | } |
| | | } |
| | | </style> |
| | |
| | | routes: [ |
| | | { |
| | | path: "/", |
| | | redirect: "/home_index" |
| | | redirect: "/new-list" |
| | | }, |
| | | // #region 7.2 新增路由------------------------------------- |
| | | // 新首页 |
| | |
| | | index: 0 |
| | | }, |
| | | component: () => import("@/page/markets/markets.vue") |
| | | }, |
| | | { |
| | | path: "/transferNew", |
| | | name: "transferNew", |
| | | meta: { |
| | | title: i18n.t("划转"), |
| | | requireAuth: true, |
| | | index: 1 |
| | | }, |
| | | component: () => import("@/page/user/transferNew.vue") |
| | | }, |
| | | // AI量化交易 |
| | | { |
| | |
| | | meta: { |
| | | title: i18n.t("hj6"), |
| | | requireAuth: false, |
| | | show: true, |
| | | index: 1 |
| | | index: 0 |
| | | }, |
| | | component: () => import("@/page/home/newList.vue") |
| | | }, |
| | |
| | | component: () => import("@/page/kline/kIndex.vue") |
| | | }, |
| | | //#endregion |
| | | // #region 8.11 新增路由------------------------------------- |
| | | // 理财余额页面 |
| | | { |
| | | path: "/fund_index", |
| | | name: "fund_index", |
| | | meta: { |
| | | title: i18n.t("理财"), |
| | | requireAuth: false, |
| | | index: 0 |
| | | }, |
| | | component: () => import("@/page/home/fundIndex.vue") |
| | | }, |
| | | // 我的订单,包括持仓和平仓 |
| | | { |
| | | path: "/myorder", |
| | | name: "myorder", |
| | | meta: { |
| | | title: i18n.t("订单"), |
| | | requireAuth: false, |
| | | hasHeader: true, |
| | | show: true, |
| | | index: 1 |
| | | }, |
| | | component: () => import("@/page/user/myOrder.vue") |
| | | }, |
| | | //#endregion |
| | | //#region 旧路由--------------------------------------------- |
| | | { |
| | | path: "/home", |
| | |
| | | import { getUserInfodata } from "@/axios/api"; |
| | | import Vue from "vue"; |
| | | import Vuex from "vuex"; |
| | | import { Toast } from 'vant'; |
| | | import i18n from "@/locales/index.js"; |
| | | // import getters from './getters' |
| | | // import actions from './actions' |
| | | // import mutations from './mutations' |
| | |
| | | kcStockDisplay: false, |
| | | stockDisplay: false |
| | | }, |
| | | marketsSwitch: {}, // 市场切换 |
| | | }; |
| | | |
| | | export default new Vuex.Store({ |
| | |
| | | elAlertText: data.msg |
| | | }); |
| | | } |
| | | }, |
| | | // 触发客服提示 |
| | | CustomerService(){ |
| | | Toast(i18n.t('kf1')); |
| | | } |
| | | }, |
| | | mutations: { |
| | | SET_USE_INFO(state, useInfo) { |
| | | state.userInfo = useInfo; |
| | | window.localStorage.setItem("useInfo", JSON.stringify(useInfo)); |
| | | }, |
| | | MARKET_CHANGE(state, val) { |
| | | state.marketsSwitch = val; |
| | | }, |
| | | undataToken(state, token) { |
| | | state.token = token || null; |