vee 3 years ago
parent
commit
b0facaf726
  1. 28
      components/entrustOrderList/entrustOrderList.vue
  2. 81
      components/navigation/navigation.vue
  3. 23
      manifest.json
  4. 389
      package-lock.json
  5. 2
      pages/login/register.vue
  6. 12
      pages/markets/contractOrder.vue
  7. 4
      pages/markets/kLine.vue
  8. 96
      pages/me/confirmInfo.vue
  9. 6
      pages/recharge/recharge.vue
  10. BIN
      static/recharge/ic_link.png
  11. BIN
      static/recharge/img_add.png
  12. 2
      utils/api.js
  13. 2
      utils/axios.js
  14. 20
      utils/language/en_US.js
  15. 19
      utils/language/vi_VN.js
  16. 21
      utils/language/zh_TW.js

28
components/entrustOrderList/entrustOrderList.vue

@ -64,7 +64,8 @@
{{item.status=='undone'?i18n.undone:item.status=='opened'?i18n.opened:item.status=='revoked'?i18n.revoked:i18n.closed}}
</view> -->
<view class="title" v-show="type === 1">{{ i18n.ROE }}</view>
<view class="value" v-show="type === 1" :style="
<view class="value" v-show="type === 1"
:style="
getValue(item.direction=='buy'
?(marketDetail.close-item.openedPrice)*item.hand/item.bondAmount:(item.openedPrice-marketDetail.close)*item.hand/item.bondAmount)>=0?'color:#00E8A2;':'color:#F4506A'">
<!-- {{getValue(item.profitAmount/item.bondAmount)}}% -->
@ -91,7 +92,8 @@
<view class="title">{{ i18n.ROE }}</view>
<view class="value">
<!-- {{item.status=='undone'?i18n.undone:item.status=='opened'?i18n.opened:item.status=='revoked'?i18n.revoked:i18n.closed}} -->
<view class="value" :style="(item.profitAmount/item.bondAmount)*100>=0?'color:#00E8A2;':'color:#F4506A'">
<view class="value"
:style="(item.profitAmount/item.bondAmount)*100>=0?'color:#00E8A2;':'color:#F4506A'">
{{getValue(item.profitAmount/item.bondAmount)}}%
</view>
</view>
@ -160,8 +162,8 @@
<!-- 追加保证金 -->
<u-modal :show="stopModalShowZui" :confirmText="i18n.Confirm" :cancelText="i18n.Cancel" :showCancelButton="true"
:title="i18n.Margincall" :content='i18n.WarmTipsText' @confirm="stopConfirm" @cancel="stopModalShowZui = false"
confirmColor="#00E8A2" cancelColor="#96959E">
:title="i18n.Margincall" :content='i18n.WarmTipsText' @confirm="stopConfirm"
@cancel="stopModalShowZui = false" confirmColor="#00E8A2" cancelColor="#96959E">
<view class="stopModel">
<view class="title">
<text class="left">{{ i18n.AmountTrue }}</text>
@ -293,19 +295,31 @@
//
getValue(e) {
let data = e * 100
data = parseFloat(data.toPrecision(10))
data = parseFloat(data)
data = String(data)
if (data.indexOf(".") != -1) {
return data.substring(0, data.indexOf(".") + 3);
} else {
return data
}
},
//
getPrice(s) {
var i = s;
/*
js 数字精度问题
*/
i = parseFloat(i.toPrecision(10))
i = parseFloat(i)
i = String(i)
// return i.substring(0, i.indexOf(".") + 5);
if (i.indexOf(".") != -1) {
return i.substring(0, i.indexOf(".") + 5);
} else {
return i
}
},
stopModalChange() {
@ -534,6 +548,7 @@
position: absolute;
right: 115rpx;
}
.closeBtn {
display: inline-block;
// width: 98rpx;
@ -547,6 +562,7 @@
color: rgb(0, 232, 162);
margin-top: 22rpx;
}
/deep/ .u-empty {
top: 500% !important;
}

81
components/navigation/navigation.vue

@ -10,11 +10,22 @@
<slot></slot>
<slot name="middle"></slot>
<slot name="right"></slot>
<view class="languageBtn" v-if="showLang" @click.stop="languageShow = true">
{{ langTrue }}
</view>
<!-- popups弹窗 -->
<u-overlay :show="languageShow" @click="languageShow = false" :opacity="0">
<language-popups v-model="languageShow" :popData="languageData" @tapPopup="tapPopup">
</language-popups>
</u-overlay>
</view>
</template>
<script>
const COMPONENT_NAME = 'navigation'
import languageData from '@/utils/language/config'
export default {
name: COMPONENT_NAME,
props: {
@ -36,19 +47,45 @@ export default {
return false
}
},
showLang: { //
type: Boolean,
default() {
return false
}
},
},
data() {
return {
langTrue: languageData[0].title || 'English',
languageData,
languageShow: false,
}
},
computed: {
},
mounted() {
if(this.showLang){
if (uni.getStorageSync('langTrue')) {
this.langTrue = uni.getStorageSync('langTrue')
}
}
},
methods: {
//
tapPopup(e) {
this._i18n.locale = e.language
this.$store.commit('setLanguage', e.language)
this.langTrue = e.title
uni.setStorageSync('langTrue', e.title)
// uni.redirectTo({
// url: '/pages/home/index'
// })
uni.reLaunch({
url: '/pages/login/register'
})
},
back() {
// #ifdef H5
@ -69,6 +106,48 @@ export default {
text-align: center;
width: 234rpx;
line-height: 60rpx;
}
.languageBtn {
display: inline-block;
box-sizing: border-box;
width: 180rpx;
position: absolute;
right: 0rpx;;
margin: 38rpx 48rpx 0 0;
font-size: 24rpx;
height: 60rpx;
line-height: 36rpx;
text-align: center;
padding-left: 12rpx;
&::before {
display: block;
position: absolute;
content: '';
background-image: url(../../static/home/map.png);
background-repeat: no-repeat;
background-size: 36rpx;
width: 36rpx;
height: 36rpx;
top: 0rpx;
left: 0rpx;
}
&::after {
display: block;
position: absolute;
content: '';
background-image: url(../../static/home/pull-down.png);
background-repeat: no-repeat;
background-size: 24rpx;
width: 24rpx;
height: 24rpx;
top: 12rpx;
right: 0rpx;
}
}
.nav-head-H5{
overflow: hidden;

23
manifest.json

@ -1,9 +1,9 @@
{
"name" : "samehome",
"name" : "Same home",
"appid" : "__UNI__C4028F6",
"description" : "",
"versionName" : "1.0.0",
"versionCode" : "101",
"versionName" : "1.0.1",
"versionCode" : 101,
"transformPx" : false,
/* 5+App */
"app-plus" : {
@ -84,7 +84,22 @@
}
}
},
"nativePlugins" : {}
"nativePlugins" : {
"HF-Step" : {
"__plugin_info__" : {
"name" : "原生计步器(Android和IOS)",
"description" : "计步器,原生计步器插件,安卓,IOS",
"platforms" : "Android,iOS",
"url" : "https://ext.dcloud.net.cn/plugin?id=6632",
"android_package_name" : "com.samehome",
"ios_bundle_id" : "com.samehome",
"isCloud" : true,
"bought" : 1,
"pid" : "6632",
"parameters" : {}
}
}
}
},
"h5" : {
"publicPath" : "/",

389
package-lock.json

@ -19,6 +19,18 @@
"vue-i18n": "^9.2.2"
}
},
"node_modules/@babel/parser": {
"version": "7.19.4",
"resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.19.4.tgz",
"integrity": "sha512-qpVT7gtuOLjWeDTKLkJ6sryqLliBaFpAtGeqw5cs5giLldvh+Ch0plqnUMKoVAUS6ZEueQQiZV+p5pxtPitEsA==",
"peer": true,
"bin": {
"parser": "bin/babel-parser.js"
},
"engines": {
"node": ">=6.0.0"
}
},
"node_modules/@babel/runtime": {
"version": "7.18.9",
"resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.18.9.tgz",
@ -87,11 +99,123 @@
"node": ">= 14"
}
},
"node_modules/@vue/compiler-core": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.40.tgz",
"integrity": "sha512-2Dc3Stk0J/VyQ4OUr2yEC53kU28614lZS+bnrCbFSAIftBJ40g/2yQzf4mPBiFuqguMB7hyHaujdgZAQ67kZYA==",
"peer": true,
"dependencies": {
"@babel/parser": "^7.16.4",
"@vue/shared": "3.2.40",
"estree-walker": "^2.0.2",
"source-map": "^0.6.1"
}
},
"node_modules/@vue/compiler-dom": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.40.tgz",
"integrity": "sha512-OZCNyYVC2LQJy4H7h0o28rtk+4v+HMQygRTpmibGoG9wZyomQiS5otU7qo3Wlq5UfHDw2RFwxb9BJgKjVpjrQw==",
"peer": true,
"dependencies": {
"@vue/compiler-core": "3.2.40",
"@vue/shared": "3.2.40"
}
},
"node_modules/@vue/compiler-sfc": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.40.tgz",
"integrity": "sha512-tzqwniIN1fu1PDHC3CpqY/dPCfN/RN1thpBC+g69kJcrl7mbGiHKNwbA6kJ3XKKy8R6JLKqcpVugqN4HkeBFFg==",
"peer": true,
"dependencies": {
"@babel/parser": "^7.16.4",
"@vue/compiler-core": "3.2.40",
"@vue/compiler-dom": "3.2.40",
"@vue/compiler-ssr": "3.2.40",
"@vue/reactivity-transform": "3.2.40",
"@vue/shared": "3.2.40",
"estree-walker": "^2.0.2",
"magic-string": "^0.25.7",
"postcss": "^8.1.10",
"source-map": "^0.6.1"
}
},
"node_modules/@vue/compiler-ssr": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.40.tgz",
"integrity": "sha512-80cQcgasKjrPPuKcxwuCx7feq+wC6oFl5YaKSee9pV3DNq+6fmCVwEEC3vvkf/E2aI76rIJSOYHsWSEIxK74oQ==",
"peer": true,
"dependencies": {
"@vue/compiler-dom": "3.2.40",
"@vue/shared": "3.2.40"
}
},
"node_modules/@vue/devtools-api": {
"version": "6.2.1",
"resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.2.1.tgz",
"integrity": "sha512-OEgAMeQXvCoJ+1x8WyQuVZzFo0wcyCmUR3baRVLmKBo1LmYZWMlRiXlux5jd0fqVJu6PfDbOrZItVqUEzLobeQ=="
},
"node_modules/@vue/reactivity": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.40.tgz",
"integrity": "sha512-N9qgGLlZmtUBMHF9xDT4EkD9RdXde1Xbveb+niWMXuHVWQP5BzgRmE3SFyUBBcyayG4y1lhoz+lphGRRxxK4RA==",
"peer": true,
"dependencies": {
"@vue/shared": "3.2.40"
}
},
"node_modules/@vue/reactivity-transform": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.40.tgz",
"integrity": "sha512-HQUCVwEaacq6fGEsg2NUuGKIhUveMCjOk8jGHqLXPI2w6zFoPrlQhwWEaINTv5kkZDXKEnCijAp+4gNEHG03yw==",
"peer": true,
"dependencies": {
"@babel/parser": "^7.16.4",
"@vue/compiler-core": "3.2.40",
"@vue/shared": "3.2.40",
"estree-walker": "^2.0.2",
"magic-string": "^0.25.7"
}
},
"node_modules/@vue/runtime-core": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.40.tgz",
"integrity": "sha512-U1+rWf0H8xK8aBUZhnrN97yoZfHbjgw/bGUzfgKPJl69/mXDuSg8CbdBYBn6VVQdR947vWneQBFzdhasyzMUKg==",
"peer": true,
"dependencies": {
"@vue/reactivity": "3.2.40",
"@vue/shared": "3.2.40"
}
},
"node_modules/@vue/runtime-dom": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.40.tgz",
"integrity": "sha512-AO2HMQ+0s2+MCec8hXAhxMgWhFhOPJ/CyRXnmTJ6XIOnJFLrH5Iq3TNwvVcODGR295jy77I6dWPj+wvFoSYaww==",
"peer": true,
"dependencies": {
"@vue/runtime-core": "3.2.40",
"@vue/shared": "3.2.40",
"csstype": "^2.6.8"
}
},
"node_modules/@vue/server-renderer": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.40.tgz",
"integrity": "sha512-gtUcpRwrXOJPJ4qyBpU3EyxQa4EkV8I4f8VrDePcGCPe4O/hd0BPS7v9OgjIQob6Ap8VDz9G+mGTKazE45/95w==",
"peer": true,
"dependencies": {
"@vue/compiler-ssr": "3.2.40",
"@vue/shared": "3.2.40"
},
"peerDependencies": {
"vue": "3.2.40"
}
},
"node_modules/@vue/shared": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.40.tgz",
"integrity": "sha512-0PLQ6RUtZM0vO3teRfzGi4ltLUO5aO+kLgwh4Um3THSR03rpQWLTuRCkuO5A41ITzwdWeKdPHtSARuPkoo5pCQ==",
"peer": true
},
"node_modules/asynckit": {
"version": "0.4.0",
"resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz",
@ -139,6 +263,12 @@
"integrity": "sha512-sr0FY4lnO1hkQ4gLDr24K0DGnweGO1QwSj5BpfQjpSJPdqWalja4cTps29Y/PJVG/P7FYlPDkH3hO+Tr0CvDgQ==",
"hasInstallScript": true
},
"node_modules/csstype": {
"version": "2.6.21",
"resolved": "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz",
"integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==",
"peer": true
},
"node_modules/decimal.js": {
"version": "10.4.0",
"resolved": "https://registry.npmmirror.com/decimal.js/-/decimal.js-10.4.0.tgz",
@ -166,6 +296,12 @@
"resolved": "https://registry.npmmirror.com/escape-latex/-/escape-latex-1.2.0.tgz",
"integrity": "sha512-nV5aVWW1K0wEiUIEdZ4erkGGH8mDxGyxSeqPzRNtWP7ataw+/olFObw7hujFWlVjNsaDFw5VZ5NzVSIqRgfTiw=="
},
"node_modules/estree-walker": {
"version": "2.0.2",
"resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz",
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
"peer": true
},
"node_modules/follow-redirects": {
"version": "1.15.1",
"resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.1.tgz",
@ -215,6 +351,15 @@
"resolved": "https://registry.npmmirror.com/js-md5/-/js-md5-0.7.3.tgz",
"integrity": "sha512-ZC41vPSTLKGwIRjqDh8DfXoCrdQIyBgspJVPXHBGu4nZlAEvG3nf+jO9avM9RmLiGakg7vz974ms99nEV0tmTQ=="
},
"node_modules/magic-string": {
"version": "0.25.9",
"resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz",
"integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
"peer": true,
"dependencies": {
"sourcemap-codec": "^1.4.8"
}
},
"node_modules/mathjs": {
"version": "11.1.0",
"resolved": "https://registry.npmmirror.com/mathjs/-/mathjs-11.1.0.tgz",
@ -261,6 +406,38 @@
"resolved": "https://registry.npmmirror.com/mutation-observer/-/mutation-observer-1.0.3.tgz",
"integrity": "sha512-M/O/4rF2h776hV7qGMZUH3utZLO/jK7p8rnNgGkjKUw8zCGjRQPxB8z6+5l8+VjRUQ3dNYu4vjqXYLr+U8ZVNA=="
},
"node_modules/nanoid": {
"version": "3.3.4",
"resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.4.tgz",
"integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
"peer": true,
"bin": {
"nanoid": "bin/nanoid.cjs"
},
"engines": {
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
}
},
"node_modules/picocolors": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz",
"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
"peer": true
},
"node_modules/postcss": {
"version": "8.4.17",
"resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.17.tgz",
"integrity": "sha512-UNxNOLQydcOFi41yHNMcKRZ39NeXlr8AxGuZJsdub8vIb12fHzcq37DTU/QtbI6WLxNg2gF9Z+8qtRwTj1UI1Q==",
"peer": true,
"dependencies": {
"nanoid": "^3.3.4",
"picocolors": "^1.0.0",
"source-map-js": "^1.0.2"
},
"engines": {
"node": "^10 || ^12 || >=14"
}
},
"node_modules/regenerator-runtime": {
"version": "0.13.9",
"resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz",
@ -279,6 +456,21 @@
"node": ">=0.10.0"
}
},
"node_modules/source-map-js": {
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz",
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
"peer": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/sourcemap-codec": {
"version": "1.4.8",
"resolved": "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
"integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
"peer": true
},
"node_modules/tiny-emitter": {
"version": "2.1.0",
"resolved": "https://registry.npmmirror.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz",
@ -316,6 +508,19 @@
"mutation-observer": "^1.0.3"
}
},
"node_modules/vue": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/vue/-/vue-3.2.40.tgz",
"integrity": "sha512-1mGHulzUbl2Nk3pfvI5aXYYyJUs1nm4kyvuz38u4xlQkLUn1i2R7nDbI4TufECmY8v1qNBHYy62bCaM+3cHP2A==",
"peer": true,
"dependencies": {
"@vue/compiler-dom": "3.2.40",
"@vue/compiler-sfc": "3.2.40",
"@vue/runtime-dom": "3.2.40",
"@vue/server-renderer": "3.2.40",
"@vue/shared": "3.2.40"
}
},
"node_modules/vue-i18n": {
"version": "9.2.2",
"resolved": "https://registry.npmmirror.com/vue-i18n/-/vue-i18n-9.2.2.tgz",
@ -343,6 +548,12 @@
}
},
"dependencies": {
"@babel/parser": {
"version": "7.19.4",
"resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.19.4.tgz",
"integrity": "sha512-qpVT7gtuOLjWeDTKLkJ6sryqLliBaFpAtGeqw5cs5giLldvh+Ch0plqnUMKoVAUS6ZEueQQiZV+p5pxtPitEsA==",
"peer": true
},
"@babel/runtime": {
"version": "7.18.9",
"resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.18.9.tgz",
@ -393,11 +604,120 @@
"@intlify/shared": "9.2.2"
}
},
"@vue/compiler-core": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.40.tgz",
"integrity": "sha512-2Dc3Stk0J/VyQ4OUr2yEC53kU28614lZS+bnrCbFSAIftBJ40g/2yQzf4mPBiFuqguMB7hyHaujdgZAQ67kZYA==",
"peer": true,
"requires": {
"@babel/parser": "^7.16.4",
"@vue/shared": "3.2.40",
"estree-walker": "^2.0.2",
"source-map": "^0.6.1"
}
},
"@vue/compiler-dom": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.40.tgz",
"integrity": "sha512-OZCNyYVC2LQJy4H7h0o28rtk+4v+HMQygRTpmibGoG9wZyomQiS5otU7qo3Wlq5UfHDw2RFwxb9BJgKjVpjrQw==",
"peer": true,
"requires": {
"@vue/compiler-core": "3.2.40",
"@vue/shared": "3.2.40"
}
},
"@vue/compiler-sfc": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.40.tgz",
"integrity": "sha512-tzqwniIN1fu1PDHC3CpqY/dPCfN/RN1thpBC+g69kJcrl7mbGiHKNwbA6kJ3XKKy8R6JLKqcpVugqN4HkeBFFg==",
"peer": true,
"requires": {
"@babel/parser": "^7.16.4",
"@vue/compiler-core": "3.2.40",
"@vue/compiler-dom": "3.2.40",
"@vue/compiler-ssr": "3.2.40",
"@vue/reactivity-transform": "3.2.40",
"@vue/shared": "3.2.40",
"estree-walker": "^2.0.2",
"magic-string": "^0.25.7",
"postcss": "^8.1.10",
"source-map": "^0.6.1"
}
},
"@vue/compiler-ssr": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.40.tgz",
"integrity": "sha512-80cQcgasKjrPPuKcxwuCx7feq+wC6oFl5YaKSee9pV3DNq+6fmCVwEEC3vvkf/E2aI76rIJSOYHsWSEIxK74oQ==",
"peer": true,
"requires": {
"@vue/compiler-dom": "3.2.40",
"@vue/shared": "3.2.40"
}
},
"@vue/devtools-api": {
"version": "6.2.1",
"resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.2.1.tgz",
"integrity": "sha512-OEgAMeQXvCoJ+1x8WyQuVZzFo0wcyCmUR3baRVLmKBo1LmYZWMlRiXlux5jd0fqVJu6PfDbOrZItVqUEzLobeQ=="
},
"@vue/reactivity": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.40.tgz",
"integrity": "sha512-N9qgGLlZmtUBMHF9xDT4EkD9RdXde1Xbveb+niWMXuHVWQP5BzgRmE3SFyUBBcyayG4y1lhoz+lphGRRxxK4RA==",
"peer": true,
"requires": {
"@vue/shared": "3.2.40"
}
},
"@vue/reactivity-transform": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.40.tgz",
"integrity": "sha512-HQUCVwEaacq6fGEsg2NUuGKIhUveMCjOk8jGHqLXPI2w6zFoPrlQhwWEaINTv5kkZDXKEnCijAp+4gNEHG03yw==",
"peer": true,
"requires": {
"@babel/parser": "^7.16.4",
"@vue/compiler-core": "3.2.40",
"@vue/shared": "3.2.40",
"estree-walker": "^2.0.2",
"magic-string": "^0.25.7"
}
},
"@vue/runtime-core": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.40.tgz",
"integrity": "sha512-U1+rWf0H8xK8aBUZhnrN97yoZfHbjgw/bGUzfgKPJl69/mXDuSg8CbdBYBn6VVQdR947vWneQBFzdhasyzMUKg==",
"peer": true,
"requires": {
"@vue/reactivity": "3.2.40",
"@vue/shared": "3.2.40"
}
},
"@vue/runtime-dom": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.40.tgz",
"integrity": "sha512-AO2HMQ+0s2+MCec8hXAhxMgWhFhOPJ/CyRXnmTJ6XIOnJFLrH5Iq3TNwvVcODGR295jy77I6dWPj+wvFoSYaww==",
"peer": true,
"requires": {
"@vue/runtime-core": "3.2.40",
"@vue/shared": "3.2.40",
"csstype": "^2.6.8"
}
},
"@vue/server-renderer": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.40.tgz",
"integrity": "sha512-gtUcpRwrXOJPJ4qyBpU3EyxQa4EkV8I4f8VrDePcGCPe4O/hd0BPS7v9OgjIQob6Ap8VDz9G+mGTKazE45/95w==",
"peer": true,
"requires": {
"@vue/compiler-ssr": "3.2.40",
"@vue/shared": "3.2.40"
}
},
"@vue/shared": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.40.tgz",
"integrity": "sha512-0PLQ6RUtZM0vO3teRfzGi4ltLUO5aO+kLgwh4Um3THSR03rpQWLTuRCkuO5A41ITzwdWeKdPHtSARuPkoo5pCQ==",
"peer": true
},
"asynckit": {
"version": "0.4.0",
"resolved": "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz",
@ -435,6 +755,12 @@
"resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.25.1.tgz",
"integrity": "sha512-sr0FY4lnO1hkQ4gLDr24K0DGnweGO1QwSj5BpfQjpSJPdqWalja4cTps29Y/PJVG/P7FYlPDkH3hO+Tr0CvDgQ=="
},
"csstype": {
"version": "2.6.21",
"resolved": "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz",
"integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==",
"peer": true
},
"decimal.js": {
"version": "10.4.0",
"resolved": "https://registry.npmmirror.com/decimal.js/-/decimal.js-10.4.0.tgz",
@ -459,6 +785,12 @@
"resolved": "https://registry.npmmirror.com/escape-latex/-/escape-latex-1.2.0.tgz",
"integrity": "sha512-nV5aVWW1K0wEiUIEdZ4erkGGH8mDxGyxSeqPzRNtWP7ataw+/olFObw7hujFWlVjNsaDFw5VZ5NzVSIqRgfTiw=="
},
"estree-walker": {
"version": "2.0.2",
"resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz",
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
"peer": true
},
"follow-redirects": {
"version": "1.15.1",
"resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.1.tgz",
@ -494,6 +826,15 @@
"resolved": "https://registry.npmmirror.com/js-md5/-/js-md5-0.7.3.tgz",
"integrity": "sha512-ZC41vPSTLKGwIRjqDh8DfXoCrdQIyBgspJVPXHBGu4nZlAEvG3nf+jO9avM9RmLiGakg7vz974ms99nEV0tmTQ=="
},
"magic-string": {
"version": "0.25.9",
"resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz",
"integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
"peer": true,
"requires": {
"sourcemap-codec": "^1.4.8"
}
},
"mathjs": {
"version": "11.1.0",
"resolved": "https://registry.npmmirror.com/mathjs/-/mathjs-11.1.0.tgz",
@ -528,6 +869,29 @@
"resolved": "https://registry.npmmirror.com/mutation-observer/-/mutation-observer-1.0.3.tgz",
"integrity": "sha512-M/O/4rF2h776hV7qGMZUH3utZLO/jK7p8rnNgGkjKUw8zCGjRQPxB8z6+5l8+VjRUQ3dNYu4vjqXYLr+U8ZVNA=="
},
"nanoid": {
"version": "3.3.4",
"resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.4.tgz",
"integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
"peer": true
},
"picocolors": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz",
"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
"peer": true
},
"postcss": {
"version": "8.4.17",
"resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.17.tgz",
"integrity": "sha512-UNxNOLQydcOFi41yHNMcKRZ39NeXlr8AxGuZJsdub8vIb12fHzcq37DTU/QtbI6WLxNg2gF9Z+8qtRwTj1UI1Q==",
"peer": true,
"requires": {
"nanoid": "^3.3.4",
"picocolors": "^1.0.0",
"source-map-js": "^1.0.2"
}
},
"regenerator-runtime": {
"version": "0.13.9",
"resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz",
@ -543,6 +907,18 @@
"resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
},
"source-map-js": {
"version": "1.0.2",
"resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz",
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
"peer": true
},
"sourcemap-codec": {
"version": "1.4.8",
"resolved": "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
"integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
"peer": true
},
"tiny-emitter": {
"version": "2.1.0",
"resolved": "https://registry.npmmirror.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz",
@ -574,6 +950,19 @@
"mutation-observer": "^1.0.3"
}
},
"vue": {
"version": "3.2.40",
"resolved": "https://registry.npmmirror.com/vue/-/vue-3.2.40.tgz",
"integrity": "sha512-1mGHulzUbl2Nk3pfvI5aXYYyJUs1nm4kyvuz38u4xlQkLUn1i2R7nDbI4TufECmY8v1qNBHYy62bCaM+3cHP2A==",
"peer": true,
"requires": {
"@vue/compiler-dom": "3.2.40",
"@vue/compiler-sfc": "3.2.40",
"@vue/runtime-dom": "3.2.40",
"@vue/server-renderer": "3.2.40",
"@vue/shared": "3.2.40"
}
},
"vue-i18n": {
"version": "9.2.2",
"resolved": "https://registry.npmmirror.com/vue-i18n/-/vue-i18n-9.2.2.tgz",

2
pages/login/register.vue

@ -1,6 +1,6 @@
<template>
<view class="main">
<navigation>{{ i18n.SignUp }}</navigation>
<navigation :showLang="true">{{ i18n.SignUp }}</navigation>
<!-- #ifdef APP-PLUS -->
<view class="body-app">

12
pages/markets/contractOrder.vue

@ -2,7 +2,12 @@
<view class="entrustOrderList">
<navigation>{{ i18n.contractOrder }}</navigation>
<!-- 四个tab -->
<!-- #ifdef APP-PLUS -->
<view class="tab" style="margin-top: 210rpx;">
<!-- #endif -->
<!-- #ifdef H5 -->
<view class="tab">
<!-- #endif -->
<view class="item" :class="{ select: type === 1 }" @click="onChangeType(1)">{{ i18n.Position }}
</view>
@ -279,9 +284,14 @@
//
getValue(e){
let data = e*100
data = parseFloat(data.toPrecision(10))
data = parseFloat(data)
data = String(data)
if(data.indexOf(".")!=-1){
return data.substring(0, data.indexOf(".") + 3);
}else{
return data;
}
},
//
getPrice(s) {

4
pages/markets/kLine.vue

@ -74,11 +74,11 @@
<view class="btn">
<!-- open按钮 -->
<u-button class="button" color="#00E8A2" throttleTime="500" @click="btnClick('buy')">
{{ i18n.open }}
{{ i18n.LONG }}
</u-button>
<!-- close按钮 -->
<u-button class="button" color="#F4506A" throttleTime="500" @click="btnClick('sell')">
{{ i18n.close }}
{{ i18n.SHORT }}
</u-button>
</view>

96
pages/me/confirmInfo.vue

@ -18,7 +18,8 @@
<view class="title" v-if="bankInfo.auditStatus=='reject'">{{ i18n.Reasonforrejection }}</view>
<view class="" style="word-break: break-all;margin-bottom: 20rpx;" v-if="bankInfo.auditStatus=='reject'">
<view class="" style="word-break: break-all;margin-bottom: 20rpx;"
v-if="bankInfo.auditStatus=='reject'">
{{bankInfo.auditReason}}
</view>
@ -40,15 +41,16 @@
</u-form-item>
</view>
<view class="title" v-if="bankInfo.auditStatus!='agree'">{{ i18n.IDcard }}</view>
<view class="title" v-show="bankInfo.auditStatus!='agree'">{{ i18n.IDcard }}</view>
<u-upload v-if="bankInfo.auditStatus!='agree'" :fileList="fileList1" @afterRead="afterRead" @delete="deletePic" name="1" multiple
:maxCount="1">
<u-upload v-show="bankInfo.auditStatus!='agree'" :fileList="fileList1" @afterRead="afterRead"
@delete="deletePic" name="1" multiple :maxCount="1">
<image class="add" src="/static/home/id.png" mode="aspectFit" v-if="!bankInfo.certFrontImgPath"></image>
<image class="add" src="/static/home/id.png" mode="aspectFit"
v-if="!bankInfo.certFrontImgPath"></image>
<image :src="baseURL+bankInfo.certFrontImgPath"
mode="" class="add" v-if="bankInfo.certFrontImgPath"></image>
<image :src="baseURL+bankInfo.certFrontImgPath" mode="" class="add"
v-if="bankInfo.certFrontImgPath"></image>
</u-upload>
@ -79,6 +81,8 @@
name: "withdrawalRecord",
data() {
return {
language: '',
ticket: '',
hideButton: false,
baseURL: '',
fileList1: [],
@ -120,6 +124,8 @@
}
},
onLoad(option) {
this.language = uni.getStorageSync("language") || 'en_US';
this.ticket = uni.getStorageSync('ticket')
this.getBank()
this.baseURL = constant.BASE_URL
},
@ -128,6 +134,7 @@
//
deletePic(event) {
this[`fileList${event.name}`].splice(event.index, 1)
this.bankInfo.certFrontImgPath = null;
},
//
@ -138,7 +145,6 @@
})
// mutiple true , file
let lists = [].concat(event.file)
console.log(event)
let fileListLen = this[`fileList${event.name}`].length
lists.map((item) => {
this[`fileList${event.name}`].push({
@ -160,70 +166,31 @@
},
uploadFilePromise(url) {
// #ifdef APP-PLUS
console.log(url)
pathToBase64(url)
.then(path => {
console.log(path)
let res=path
res = res.split(',')[1]
console.log(res,'res')
return new Promise((resolve, reject) => {
api.uploadImg({
img: res
}).then(res => {
let a = uni.uploadFile({
url: this.baseURL + '/api/user/uploadImg1', //
filePath: url,
name: 'file',
formData: {
ticket: this.ticket,
lang: this.language,
},
success: (res) => {
setTimeout(() => {
uni.hideLoading()
this.bankInfo.certFrontImgPath=res
})
})
})
.catch(error => {
let data = JSON.parse(res.data)
this.bankInfo.certFrontImgPath = data.data
}, 1000)
},
failed(res) {
uni.hideLoading()
console.error(error)
})
// #endif
// #ifdef H5
const image = new Image() // imgDOM)
//blob:http://localhost:8080/b878edea-e649-4f8d-b723-c3f25454141b
image.src = url;
image.onload = () => {
const canvas = document.createElement('canvas')
canvas.width = image.width
canvas.height = image.height
const context = canvas.getContext('2d')
context.drawImage(image, 0, 0, image.width, image.height);
let imgUrl = canvas.toDataURL() //base64
imgUrl = imgUrl.split(',')[1]
return new Promise((resolve, reject) => {
api.uploadImg({
img: imgUrl
}).then(res => {
this.bankInfo.certFrontImgPath=res
console.log(res)
console.log(this.bankInfo.certFrontImgPath)
})
})
}
// #endif
},
getBase64(file) {
return new Promise((resolve, reject) => {
const reader = new FileReader()
reader.readAsDataURL(file)
reader.onload = () => resolve(reader.result)
reader.onerror = (error) => reject(error)
});
})
},
//
getBank() {
api.certificationInfo().then(res => {
@ -261,12 +228,13 @@
</script>
<style lang="scss" scoped>
/deep/ .uicon-camera-fill {
display: none !important;
}
/deep/ .u-upload {
position: relative;
.add {
width: 620rpx !important;
height: 360rpx !important;

6
pages/recharge/recharge.vue

@ -33,7 +33,6 @@
<view class="selectCoinBtn">
</view>
</view>
<view class="coin-item">
<view class="QRCode">
<u-image class="QRCodeImg" :src="qr" width="310rpx" height="310rpx">
@ -69,16 +68,13 @@
</view>
<radio color="#00E8A2" shape="square" :checked="coin==item.enname"></radio>
</label>
</radio-group>
</scroll-view>
<u-button class="button" color="#00E8A2" throttleTime="500" @click="USDTPopupShow = false">OK
</u-button>
</view>
</u-popup>
</view>
<view class="cashContent" v-if="pageState === 'online'">
<view class="enter">
<view class="selectTitle">{{ i18n.selectAmount }}</view>
@ -100,7 +96,6 @@
</view>
</view>
</view>
<u-button class="button" color="#00E8A2" throttleTime="500" @click="recharge">{{ i18n.Submit }}
</u-button>
</view>
@ -240,7 +235,6 @@
this.message = this.i18n.message.replace('{rechargeMinAmount}', '').replaceAll(
'{enname}', '')
// } else {
// let coinInfo = {
// coinCode: this.reInfo.coins[0].code
// }

BIN
static/recharge/ic_link.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 989 B

BIN
static/recharge/img_add.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

2
utils/api.js

@ -6,7 +6,7 @@ const api = {
rechargeAddress: (params) => Vue.prototype.$axios.post('/api/recharge/rechargeAddress',params),//获取对应数字币种的充值地址
recharge: (params) => Vue.prototype.$axios.post('/api/recharge/recharge',params),//法币在线充值下单
rechargeList: (params) => Vue.prototype.$axios.post('/api/recharge/rechargeList',params),//充值记录
uploadImg: (params) => Vue.prototype.$axios.post('/api/user/uploadImg',params),//充值记录
uploadImg: (params) => Vue.prototype.$axios.post('/api/user/uploadImg1',params),//充值记录
//--------------------------------- withdraw提现 ---------------------------------

2
utils/axios.js

@ -29,7 +29,7 @@ service.interceptors.request.use(
// mask: true
// })
}
console.log(config.url)
console.log(config.data)
if (config.url.indexOf("/api/index/register") !== -1 ||
config.url.indexOf("/api/user/login") !== -1 ||
config.url.indexOf("/api/user/forgotPassword") !== -1 ||

20
utils/language/en_US.js

@ -194,6 +194,7 @@ export default {
Record: 'Record',
CoinRecharge: 'Coin Recharge',
CashRecharge: 'Cash Recharge ',
OfflineRecharge: 'Offline Recharge',
PleaseChooseCoin: 'Please choose coin',
CoinDepositAddress: 'Coin deposit address',
CopyAddress: 'Copy address',
@ -215,6 +216,25 @@ export default {
Pickup: 'Pick up',
USDTRate: 'USDT Rate',
USDT: 'USDT',
FillTransactionInformation:'Fill in transaction information',
Buy:'BUY',
Minimal:'Minimal',
Pay:'PAY',
MarketPrice:'Market price',
TransactionDetails:'Transaction details',
BankAccountTransfer:'Bank Account Transfer',
TransferInfoTip:'Please transfer to the following bank account',
StandardBank:'Standard bank',
BankAccountNo:'Bank Account No',
BankAccount:'Bank Account',
PaymentAmount:'Payment Amount',
TransactionConfirmation:'Transaction confirmation',
PayerName:'Payer Name',
ProofPayment:'Proof of payment',
TransferUploadTip:'Please upload your proof of payment after the bank account transfer is completed.',
Copy: 'Copy',
SubmitSuccess: 'Submit success',
},
//mine

19
utils/language/vi_VN.js

@ -191,6 +191,7 @@ export default {
Record: 'Ghi lại',
CoinRecharge: 'nạp tiền kỹ thuật số',
CashRecharge: 'nạp tiền',
OfflineRecharge: 'Nạp tiền ngoại tuyến',
PleaseChooseCoin: 'Vui lòng chọn đơn vị tiền tệ',
CoinDepositAddress: 'Địa chỉ gửi tiền',
CopyAddress: 'sao chép địa chỉ',
@ -211,6 +212,24 @@ export default {
Pickup: 'cất đi',
USDTRate: 'Tỷ giá hối đoái USDT',
USDT: 'USDT',
FillTransactionInformation:'Điền thông tin giao dịch',
Buy:'Mua',
Minimal:'Tối thiểu',
Pay:'Trả',
MarketPrice:'Giá thị trường',
TransactionDetails:'Chi tiết giao dịch',
BankAccountTransfer:'Chuyển khoản Ngân hàng',
TransferInfoTip:'Vui lòng chuyển vào tài khoản ngân hàng sau',
StandardBank:'Ngân hàng',
BankAccountNo:'Số tài khoản ngân hàng',
BankAccount:'Tài khoản Ngân hàng',
PaymentAmount:'Số tiền thanh toán',
TransactionConfirmation:'Xác nhận Giao dịch',
PayerName:'Tên người trả tiền',
ProofPayment:'Bằng chứng thanh toán',
TransferUploadTip:'Vui lòng tải lên bằng chứng thanh toán của bạn sau khi chuyển khoản ngân hàng hoàn tất.',
Copy: 'sao chép',
SubmitSuccess: 'Gửi thành công',
},
//mine

21
utils/language/zh_TW.js

@ -196,6 +196,7 @@ export default {
Record: '記錄',
CoinRecharge: '數字貨幣充值',
CashRecharge: '現金充值',
OfflineRecharge: '線下充值',
PleaseChooseCoin: '請選擇幣種',
CoinDepositAddress: '充幣地址',
CopyAddress: '複製地址',
@ -217,6 +218,24 @@ export default {
Pickup: '收起',
USDTRate: 'USDT 匯率',
USDT: 'USDT',
FillTransactionInformation:'填寫交易信息',
Buy:'買',
Minimal:'最小',
Pay:'支付',
MarketPrice:'市場價格',
TransactionDetails:'交易詳情',
BankAccountTransfer:'銀行賬戶轉賬',
TransferInfoTip:'請轉賬到以下銀行賬戶',
StandardBank:'銀行',
BankAccountNo:'銀行帳號',
BankAccount:'銀行賬戶',
PaymentAmount:'支付金額',
TransactionConfirmation:'交易確認',
PayerName:'付款人姓名',
ProofPayment:'付款證明',
TransferUploadTip:'請在銀行賬戶轉賬完成後上傳您的付款證明。',
Copy: '複製',
SubmitSuccess: '提交成功',
},
//mine
@ -336,7 +355,7 @@ export default {
EditBankInformation: '修改銀行信息',
AddBankInformation: '添加銀行信息',
FirstName: '真實姓名',
enterName: '請輸入的真實姓名',
enterName: '請輸入的真實姓名',
Account: '帳戶',
enterAccount: '請輸入您的賬戶',
enterIdNumber: '請輸入您的身份證號碼',

Loading…
Cancel
Save