Browse Source

修复bug

master
longjieli 8 months ago
parent
commit
1b95b2cd31
23 changed files with 360 additions and 386 deletions
  1. +5
    -0
      components/base/tabBar.vue
  2. +24
    -6
      components/popUpWindow/popUpWindow.vue
  3. +28
    -118
      components/virtualScroll/virtualScroll.vue
  4. +11
    -3
      locale/ar.js
  5. +7
    -2
      locale/en.js
  6. +7
    -2
      locale/es.js
  7. +8
    -2
      locale/fr.js
  8. +7
    -2
      locale/ru.js
  9. +177
    -168
      pages/center/center.vue
  10. +12
    -11
      pages/home/home.vue
  11. +1
    -1
      pages/invitationList/invitationList.vue
  12. +1
    -1
      pages/loginRecord/loginRecord.vue
  13. +1
    -1
      pages/personalInfo/personalInfo.vue
  14. +34
    -16
      pages/purse/purse.vue
  15. +0
    -35
      pages/register/register.vue
  16. +1
    -1
      pages/runningWater/runningWater.vue
  17. +4
    -1
      pages/signIn/signIn.vue
  18. +1
    -1
      pages/winningRecord/winningRecord.vue
  19. +22
    -14
      pages/withdraw/withdraw.vue
  20. BIN
      static/tabbar/7.png
  21. BIN
      static/tabbar/8.png
  22. +1
    -1
      utils/request.js
  23. +8
    -0
      utils/shop.js

+ 5
- 0
components/base/tabBar.vue View File

@ -56,6 +56,11 @@
"iconPath": "/static/tabbar/5.png",
"pagePath": "/pages/order/order",
"title": "tabbar.title.3"
},{
"selectedIconPath": "/static/tabbar/8.png",
"iconPath": "/static/tabbar/7.png",
"pagePath": "/pages/center/center",
"title": "tabbar.title.4"
}
]
}


+ 24
- 6
components/popUpWindow/popUpWindow.vue View File

@ -8,10 +8,7 @@
<image src="../../static/popUpWindow/bg.png" mode="widthFix"></image>
</div>
<view class="popup-desc">
Important note: At present, the number of people who recharge is large, and the recharge will fail
due to congestion. If payment fails, please contact customer service assistance. Join Tik Tok shop
and get a part-time allowance. After completing the tasks of regular employees, you can join the
regular employees and receive at least 100-5000USDT commission and salary income per day.
{{ tip[type[$i18n.locale]] }}
</view>
<view class="popup-btn">
<view @click="close" class="">ok</view>
@ -25,9 +22,20 @@
export default {
data() {
return {
tip: {}, //
type: {
en: 'keyEnglish',
es: "keySpanish",
zh: "keyChinese",
ar : "keyA",
fr : "keyF",
ru : "keyE"
},
}
},
created() {
this.getIndexTip()
},
props: {
show: {
type: Boolean,
@ -35,9 +43,19 @@
}
},
methods: {
//
close() {
uni.setStorageSync('clickPopUp', {}); //
this.$emit('close')
},
//
getIndexTip() {
this.request('getIndexTip').then(res => {
if (res.code == 200) {
this.tip = res.result
}
})
}
}
}
@ -76,7 +94,7 @@
.popup-main {
border-radius: 15rpx;
overflow: hidden;
.bg {
height: 200rpx;
overflow: hidden;


+ 28
- 118
components/virtualScroll/virtualScroll.vue View File

@ -1,6 +1,6 @@
<!-- 首页虚拟滚动 -->
<template>
<view class="virtualScroll content">
<view :style="{ height : tableListSize < visibleSize ? tableListSize * lineHeight + getRpxToPx(65) + 'px' : '560rpx' }" class="virtualScroll content">
<view class="success_info_body">
<!-- 标准title可以调用组件 -->
<view class="title_view">
@ -9,15 +9,13 @@
<!-- 参数名称列数根据实际情况调整 -->
<view class="table_body">
<view class="table_main_body">
<view class="table_inner_body" :class="{ animate }" :style="{top: tableTop + 'px'}">
<view :style="{ height : tableListSize < visibleSize ? tableListSize * lineHeight + 'px' : '480rpx'}" class="table_main_body">
<view class="table_inner_body" :class="{ animate }" :style="{ transform: 'translateY(' + tableTop + 'px)' , height : tableListSize < visibleSize ? tableListSize * lineHeight + 'px' : '480rpx'}">
<view class="table_tr" v-for="(item,index) in tableList" :key="index">
<view class="tr1 tr">{{item.planNo}}</view>
<view class="tr2 tr">{{item.type}}</view>
<view class="tr3 tr" v-if="item.startDate!='-'">{{item.startDate}} ~ {{item.endDate}}</view>
<view class="tr1 tr">{{item.auccont}}</view>
<view class="tr2 tr">{{item.money}}</view>
<view class="tr3 tr" v-if="item.createTime">{{item.createTime}}</view>
<view class="tr3 tr" v-else>-</view>
<view class="tr4 tr" v-if="item.process!='-'">{{Number(item.process).toFixed(2)}} %</view>
<view class="tr4 tr" v-else>-</view>
</view>
</view>
</view>
@ -32,81 +30,23 @@
return {
tableTimer: null,
tableTop: 0,
tableList: [{
"process": 0.0000,
"planNo": "BP2022060701",
"endDate": "2022-06-07",
"type": "block",
"startDate": "2022-06-07"
},
{
"process": 0.0000,
"planNo": "WP2022061301",
"endDate": "2022-06-13",
"type": "wallboard",
"startDate": "2022-06-13"
},
{
"process": 0.0000,
"planNo": "WP2022061301",
"endDate": "2022-06-13",
"type": "wallboard",
"startDate": "2022-06-13"
},
{
"process": 0.0000,
"planNo": "WP2022061301",
"endDate": "2022-06-13",
"type": "wallboard",
"startDate": "2022-06-13"
},
{
"process": 0.0000,
"planNo": "WP2022061301",
"endDate": "2022-06-13",
"type": "wallboard",
"startDate": "2022-06-13"
},
{
"process": 0.0000,
"planNo": "WP2022061301",
"endDate": "2022-06-13",
"type": "wallboard",
"startDate": "2022-06-13"
},
{
"process": 0.0000,
"planNo": "WP2022061301",
"endDate": "2022-06-13",
"type": "wallboard",
"startDate": "2022-06-13"
}
],
tableList: [],
tableListSize: 0,
componentTimer: null,
//
visibleSize: 3, //
lineHeight: this.getRpxToPx(162), //margin-top/bottom,border
//
lineHeight: this.getRpxToPx(140) + this.getRpxToPx(20) + this.getRpxToPx(2), //margin-top/bottom,border
componentTimerInterval: 3600000, //
tableTimerInterval: 1000, // 1px 100
animate : true
}
},
//watchmounted
props: ["activeFactoryId"],
watch: {
activeFactoryId(val, oldVal) {
clearInterval(this.componentTimer);
this.bsGetProductProcess();
this.componentTimerFun();
}
},
mounted() {
clearInterval(this.componentTimer);
this.bsGetProductProcess();
this.componentTimerFun();
},
beforeDestroy() {
clearInterval(this.componentTimer);
@ -117,45 +57,28 @@
bsGetProductProcess() {
clearInterval(this.tableTimer);
this.tableTop = 0;
if (this.activeFactoryId != "") {
// this.request('forgetPass').then(res => {
// if(res.code == 200){
// this.serverList = res.result
// }
// })
this.tableActionFun();
}
this.request('getIndexScroll').then(res => {
if(res.code == 200){
this.tableList = res.result
this.tableActionFun();
}
})
},
tableActionFun() {
this.tableListSize = this.tableList.length; //
if (this.tableListSize > this.visibleSize) { //
this.tableList = this.tableList.concat(this.tableList); //
this.tableTimerFun();
} else {
this.fillTableList();
}
},
//
fillTableList() {
var addLength = this.visibleSize - this.tableListSize;
for (var i = 0; i < addLength; i++) {
this.tableList.push({
planNo: "-",
type: "-",
startDate: "-",
endDate: "-",
process: "-"
});
}
this.tableList = this.tableList.concat(this.tableList); //
this.tableTimerFun();
},
//
tableTimerFun() {
var count = 0;
this.tableTimer = setInterval(() => {
if (count < (this.tableList.length / 2) * this.lineHeight) {
this.animate = true
this.tableTop -= this.lineHeight;
count += this.lineHeight;
this.tableTop -= this.lineHeight
count += this.lineHeight
} else {
this.animate = false
this.tableTop = 0;
@ -164,13 +87,6 @@
}, this.tableTimerInterval);
},
//
componentTimerFun() {
this.componentTimer = setInterval(() => {
this.bsGetProductProcess();
}, this.componentTimerInterval);
},
//rpx
getRpxToPx(rpx) {
// 使uni.getSystemInfoSync
@ -185,8 +101,7 @@
}
// 1rpxpx
const rpxToPx = screenWidth / (designWidth / rpx);
console.log(rpxToPx);
return rpxToPx;
return parseInt(rpxToPx);
}
}
}
@ -195,7 +110,6 @@
<style lang="scss" scoped>
.virtualScroll {
width: 100%;
height: 560rpx;
}
.content {
@ -205,8 +119,11 @@
}
.title_view {
display: flex;
align-items: center;
width: 100%;
font-size: 32rpx;
height: 50rpx;
}
.table_body {
@ -229,29 +146,22 @@
}
.tr2 {
width: 15%;
width: 22%;
}
.tr3 {
width: 35%;
width: 50%;
font-size: 24rpx;
}
.tr4 {
flex: 1;
}
.table_main_body {
width: 100%;
height: 480rpx;
overflow: hidden;
position: relative;
}
.table_inner_body {
width: 98%;
position: absolute;
left: 1%;
margin-left: 1%;
}
.animate{


+ 11
- 3
locale/ar.js View File

@ -5,6 +5,7 @@ export default {
"tabbar.title.1": "الرئيسية",
"tabbar.title.2": "البداية",
"tabbar.title.3": "طلبات",
"tabbar.title.4": "مركز individual",
"nav.login": "تسجيل الدخول",
"nav.register": "التسجيل",
"nav.home": "الرئيسية",
@ -67,7 +68,8 @@ export default {
"agreement_item_1": "الشروط والأحكام",
"agreement_item_2": "حدث",
"agreement_item_3": "أسئلة شائعة",
"agreement_item_4": "من نحن"
"agreement_item_4": "من نحن",
"addressEmpty" : "رجاءً إضافة العنوان"
},
"prizeDraw": {
"title_1": "البداية",
@ -145,8 +147,12 @@ export default {
"moneyEmpty": "يرجى ملء مبلغ الإعادة الشحن",
"AmountThan0": "يجب أن يكون مبلغ الإعادة الشحن أكبر من 0",
"payPassEmpty": "يرجى ملء رمز الدفع",
"orderId" : "رقم الطلب",
"copyAddress" : "نسخ العنوان",
"copySuccess" : "نسخ ناجح"
"copySuccess" : "نسخ ناجح",
"addressEmpty" : "رجاء إضافة العنوان",
"orderNumberEmpty" : "يرجى إدخال رقم الطلب",
"imgEmpty" : "يرجى تحميل الصور"
},
"withdraw": {
"title": "سحب",
@ -165,7 +171,9 @@ export default {
"payPassEmpty": "يرجى إدخال مبلغ السحب",
"warn": "تحذير",
"warn-detail": "بما أن أموالك كبيرة وتتجاوز مبلغ السحب للمستخدمين العاديين، يرجى التفكير في ترقية مستوى عضوية VIP الخاص بك!",
"ok": "موافق"
"ok": "موافق",
"address" : "عنوان الشحن",
"addressEmpty" : "رجاء إضافة العنوان"
},
"login": {
"username": "اسم المستخدم",


+ 7
- 2
locale/en.js View File

@ -5,6 +5,7 @@ export default {
"tabbar.title.1": "Home",
"tabbar.title.2": "STARTING",
"tabbar.title.3": "Order",
"tabbar.title.4": "Individual center",
"nav.login": "Login",
"nav.register": "Register",
"nav.home": "Home",
@ -147,7 +148,10 @@ export default {
"payPassEmpty": "Please fill in the payment code",
"orderId" : "Order number",
"copyAddress" : "Copy address",
"copySuccess" : "Successful replication"
"copySuccess" : "Successful replication",
"addressEmpty" : "Please add address",
"orderNumberEmpty" : "Please fill in the order number",
"imgEmpty" : "Please upload pictures"
},
"withdraw": {
"title": "Withdrawal",
@ -167,7 +171,8 @@ export default {
"warn": "Warning",
"warn-detail": "Since your funds are large and exceed the withdrawal amount of ordinary users, please consider upgrading your VIP level!",
"ok": "OK",
"address" : "Withdrawal address"
"address" : "Withdrawal address",
"addressEmpty" : "Please add address"
},
"login": {
"username": "Username",


+ 7
- 2
locale/es.js View File

@ -5,6 +5,7 @@ export default {
"tabbar.title.1": "Inicio",
"tabbar.title.2": "COMIENZO",
"tabbar.title.3": "Orden",
"tabbar.title.4": "Centro Personal",
"nav.login": "Iniciar sesión",
"nav.register": "Registrar",
"nav.home": "Inicio",
@ -147,7 +148,10 @@ export default {
"payPassEmpty": "Por favor, ingresa el código de pago",
"orderId": "Número de pedido",
"copyAddress": "Copiar dirección",
"copySuccess": "Replicación exitosa"
"copySuccess": "Replicación exitosa",
"addressEmpty" : "Por favor, agregue la dirección",
"orderNumberEmpty" : "Por favor, rellene el número de pedido",
"imgEmpty" : "Por favor, suba la imagen"
},
"withdraw": {
"title": "Retiro",
@ -167,7 +171,8 @@ export default {
"warn": "Advertencia",
"warn-detail": "Debido a que sus fondos son grandes y exceden la cantidad de retiro de usuarios comunes, ¡considere actualizar su nivel VIP!",
"ok": "OK",
"address": "Dirección de retiro"
"address": "Dirección de retiro",
"addressEmpty" : "Por favor, agregue la dirección"
},
"login": {
"username": "Nombre de usuario",


+ 8
- 2
locale/fr.js View File

@ -5,6 +5,7 @@ export default {
"tabbar.title.1": "Accueil",
"tabbar.title.2": "DÉMARRAGE",
"tabbar.title.3": "Commande",
"tabbar.title.4": "Centre Personne",
"nav.login": "Connexion",
"nav.register": "S'inscrire",
"nav.home": "Accueil",
@ -146,7 +147,10 @@ export default {
"AmountThan0": "Le montant de recharge doit être supérieur à 0",
"payPassEmpty": "Veuillez remplir le code de paiement",
"copyAddress": "Copier l'adresse",
"copySuccess": "Réplication réussie"
"copySuccess": "Réplication réussie",
"addressEmpty" : "Veuillez ajouter une adresse",
"orderNumberEmpty" : "Veuillez remplir le numéro de commande",
"imgEmpty" : "Veuillez télécharger des images"
},
"withdraw": {
"title": "Retrait",
@ -165,7 +169,9 @@ export default {
"payPassEmpty": "Veuillez entrer le montant de retrait",
"warn": "Avertissement",
"warn-detail": "Vos fonds sont élevés et dépassent le montant de retrait des utilisateurs ordinaires, veuillez envisager de mettre à niveau votre niveau VIP !",
"ok": "OK"
"ok": "OK",
"address" : "Adresse de retrait",
"addressEmpty" : "Veuillez ajouter l'adresse"
},
"login": {
"username": "Nom d'utilisateur",


+ 7
- 2
locale/ru.js View File

@ -5,6 +5,7 @@ export default {
"tabbar.title.1": "Главная",
"tabbar.title.2": "НАЧАЛО",
"tabbar.title.3": "Заказ",
"tabbar.title.4": "Личный кабинет",
"nav.login": "Войти",
"nav.register": "Регистрация",
"nav.home": "Главная",
@ -147,7 +148,10 @@ export default {
"payPassEmpty": "Пожалуйста, введите платежный код",
"orderId": "Номер заказа",
"copyAddress" : "Копировать адрес",
"copySuccess" : "Успешная репликация"
"copySuccess" : "Успешная репликация",
"addressEmpty" : "Пожалуйста, заполните адрес",
"orderNumberEmpty" : "Пожалуйста, добавьте адрес",
"imgEmpty" : "Пожалуйста, загрузите фото."
},
"withdraw": {
"title": "Вывод",
@ -167,7 +171,8 @@ export default {
"warn": "Предупреждение",
"warn-detail": "Поскольку ваши средства значительны и превышают сумму вывода обычных пользователей, пожалуйста, рассмотрите возможность повышения уровня VIP!",
"ok": "ОК",
"address": "Адрес вывода"
"address": "Адрес вывода",
"addressEmpty" : "Пожалуйста, добавьте адрес"
},
"login": {
"username": "Имя пользователя",


components/center/center.vue → pages/center/center.vue View File

@ -1,24 +1,20 @@
<template>
<u-popup :show="show" mode="left" width="70%" @close="$emit('close')" @open="open">
<view class="user-center">
<view style="justify-content: center;display: flex;width: 600rpx;" v-if="loading">
<u-loading-icon
mode="semicircle"
size="30"></u-loading-icon>
<u-loading-icon mode="semicircle" size="30"></u-loading-icon>
</view>
<view class="center" v-if="!loading">
<view class="line" style="margin-top: 30rpx;
position: relative;">
<view style="position: absolute;left: 20rpx;"
@click="$emit('close')">
<!-- <view class="line" style="margin-top: 30rpx;
position: relative;">
<view style="position: absolute;left: 20rpx;" @click="$emit('close')">
x
</view>
<view class="logo">
Tiktok
</view>
</view>
</view> -->
<view class="line">
<img src="/static/center/5.png" width="80rpx" />
</view>
@ -36,21 +32,20 @@
{{ $t('page.center.cradibiliy_value') }}
</view>
<view style="flex: 1;padding-right: 20rpx;">
<u-line-progress
:percentage="userInfo.contribution"
activeColor="#000" height="16"></u-line-progress>
</view>
<!-- <view style="flex: 1;">
<view style="background-color: #000;
text-align:center;border-radius: 20rpx;
margin-right: 20rpx;
">{{ userInfo.contribution }}%</view>
</view> -->
<u-line-progress :percentage="userInfo.contribution" activeColor="#000"
height="16"></u-line-progress>
</view>
<!-- <view style="flex: 1;">
<view style="background-color: #000;
text-align:center;border-radius: 20rpx;
margin-right: 20rpx;
">{{ userInfo.contribution }}%</view>
</view> -->
</view>
<view class="line">
<view class="box">
<view style="color: #000;font-weight: 900;
display: flex;justify-content: space-between;font-size: 28rpx;">
display: flex;justify-content: space-between;font-size: 28rpx;">
<view class="">
{{ $t('page.center.account_balance') }}
</view>
@ -66,7 +61,7 @@
<view class="line">
<view class="box">
<view style="color: #000;font-weight: 900;
display: flex;justify-content: space-between;font-size: 28rpx;">
display: flex;justify-content: space-between;font-size: 28rpx;">
<view class="">
{{ $t('page.center.wallet_amount') }}
</view>
@ -166,7 +161,7 @@
{{ $t('page.center.loginRecord') }}
</view>
</u-cell>
<!-- 退出登录 -->
<u-cell @click="logout" color="#fff" isLink>
<view slot="icon">
@ -179,162 +174,164 @@
</view>
<!-- 填写地址弹框 -->
<u-popup :show="showAddress" mode="center" bgColor="fff"
@close="showAddress=false;$play()">
<u-popup :show="showAddress" mode="center" bgColor="fff" @close="showAddress=false;$play()">
<view class="address-content">
<view class="address-top">
<view class="title">{{ $t('page.center.Tips') }}</view>
<uni-icons @click="showAddress=false;$play()"
class="close-icon"
color="#B0C73B" type="close"
<uni-icons @click="showAddress=false;$play()" class="close-icon" color="#B0C73B" type="close"
size="40rpx"></uni-icons>
</view>
<view class="address-detail">
<view class="title">{{ $t('page.center.Address') }}:</view>
<textarea v-model="moneyAddress"
:placeholder="$t('page.center.type-address')"></textarea>
<textarea v-model="moneyAddress" :placeholder="$t('page.center.type-address')"></textarea>
</view>
<view @click="editMoneyAddress"
class="save">{{ $t('page.center.save') }}</view>
<view @click="editMoneyAddress" class="save">{{ $t('page.center.save') }}</view>
</view>
</u-popup>
<sTabbar select="3" />
<!-- 选择语言弹框 -->
<changeLanguage :show.sync="showLanguage" @close="closeLanguage"></changeLanguage>
<!-- 客服列表 -->
<serviceList :show="showService" :serverList="serverList" @close="closeServiceList"></serviceList>
</u-popup>
</view>
</template>
<script>
import changeLanguage from '@/components/changeLanguage/changeLanguage.vue'
import serviceList from '@/components/serviceList/serviceList.vue'
import sTabbar from '@/components/base/tabBar.vue'
export default {
name: "center",
components : { changeLanguage , serviceList },
components: {
changeLanguage,
serviceList,
sTabbar
},
data() {
return {
list: [{
}],
showAddress: false,
showLanguage : false,
showService : false,
serverList : [],
moneyAddress : '',
loading : false,
showLanguage: false,
showService: false,
serverList: [],
moneyAddress: '',
loading: false,
userInfo: {}
};
},
props : {
userInfo : {
type : Object,
default : function() {
return {}
}
},
show : {
type : Boolean,
default : false
}
onShow() {
this.getUserInfo()
this.forgetPass()
},
methods: {
open() {
this.forgetPass()
this.moneyAddress = this.userInfo.moneyAddress
},
// open() {
// this.moneyAddress = this.userInfo.moneyAddress
// },
//
revealAddress() {
this.$play()
this.showAddress = true;
},
//
closeLanguage(){
closeLanguage() {
this.$play()
this.showLanguage = false;
},
//
toPurse(){
toPurse() {
this.$play()
uni.navigateTo({
url: '/pages/purse/purse'
})
},
//
toWithdraw(){
toWithdraw() {
this.$play()
uni.navigateTo({
url: '/pages/withdraw/withdraw'
})
},
//
toPersonalInfo(){
toPersonalInfo() {
this.$play()
uni.navigateTo({
url: '/pages/personalInfo/personalInfo'
})
},
//
toRunningWater(){
toRunningWater() {
this.$play()
uni.navigateTo({
url: '/pages/runningWater/runningWater'
})
},
//
revealServiceList(){
revealServiceList() {
this.$play()
this.showService = true;
},
//
closeServiceList(){
closeServiceList() {
this.$play()
this.showService = false;
},
//退
logout(){
logout() {
this.$play()
localStorage.removeItem('token')
uni.navigateTo({
url: "/pages/login/login"
})
},
//()
forgetPass(){
forgetPass() {
this.request('forgetPass').then(res => {
if(res.code == 200){
if (res.code == 200) {
this.serverList = res.result
}
})
},
//
editMoneyAddress(){
editMoneyAddress() {
this.$play()
if(this.userInfo.moneyAddress){
return uni.showToast({ title: this.$t('page.center.cannotModified'), icon: 'none' })
if (this.userInfo.moneyAddress) {
return uni.showToast({
title: this.$t('page.center.cannotModified'),
icon: 'none'
})
}
this.request('editMoneyAddress',{},{moneyAddress : this.moneyAddress}).then(res => {
if(res.code == 200){
this.request('editMoneyAddress', {}, {
moneyAddress: this.moneyAddress
}).then(res => {
if (res.code == 200) {
this.showAddress = false;
uni.showToast({ title: this.$t('message.15'), icon: 'none' })
uni.showToast({
title: this.$t('message.15'),
icon: 'none'
})
}
})
},
//
copy(text){
copy(text) {
this.$play()
uni.setClipboardData({
data: text,
@ -346,120 +343,132 @@
}
})
},
//
toInvitationList(){
toInvitationList() {
this.$play()
uni.navigateTo({
url: '/pages/invitationList/invitationList'
})
},
//
toLoginRecord(){
toLoginRecord() {
this.$play()
uni.navigateTo({
url: '/pages/loginRecord/loginRecord'
})
},
//
toWinningRecord(){
toWinningRecord() {
this.$play()
uni.navigateTo({
url: '/pages/winningRecord/winningRecord'
})
}
},
//
getUserInfo() {
this.request('userInfo').then(res => {
if (res.code == 200) {
this.userInfo = res.result.userInfo
this.vipInfo = res.result.vip
this.moneyAddress = this.userInfo.moneyAddress
}
})
},
}
}
</script>
<style scoped lang="scss">
.center {
width: 600rpx;
overflow: scroll;
height: 100vh;
.logo{
color: uni-bg-color-app;
font-weight: bold;
font-size: 32rpx;
}
.user-center {
padding-bottom: 120rpx;
.center {
overflow: scroll;
.line {
display: flex;
justify-content: center;
align-items: center;
margin-top: 40rpx;
flex-shrink: 1;
.box {
border: 1px solid #777;
box-sizing: border-box;
width: 100%;
padding: 20rpx;
}
}
}
.address-content {
box-sizing: border-box;
border: 1px solid #ccc;
padding: 15rpx;
width: 700rpx;
.address-top {
position: relative;
display: flex;
align-items: center;
justify-content: center;
margin-top: 10rpx;
.title {
font-size: 44rpx;
color: $uni-text-color;
.logo {
color: uni-bg-color-app;
font-weight: bold;
font-size: 32rpx;
}
.close-icon {
position: absolute;
top: 50%;
right: 30rpx;
transform: translateY(-50%);
.line {
display: flex;
justify-content: center;
align-items: center;
margin-top: 40rpx;
flex-shrink: 1;
.box {
border: 1px solid #777;
box-sizing: border-box;
width: 100%;
padding: 20rpx;
}
}
}
.address-detail {
.title {
color: $uni-text-color;
margin-bottom: 20rpx;
font-size: 28rpx;
.address-content {
box-sizing: border-box;
border: 1px solid #ccc;
padding: 15rpx;
width: 700rpx;
.address-top {
position: relative;
display: flex;
align-items: center;
justify-content: center;
margin-top: 10rpx;
.title {
font-size: 44rpx;
color: $uni-text-color;
font-weight: bold;
}
.close-icon {
position: absolute;
top: 50%;
right: 30rpx;
transform: translateY(-50%);
}
}
textarea {
border: 1px solid $uni-text-color;
color: $uni-text-color;
border-radius: 25rpx;
height: 150rpx;
width: 100%;
text-indent: 1em;
font-size: 28rpx;
.address-detail {
.title {
color: $uni-text-color;
margin-bottom: 20rpx;
font-size: 28rpx;
}
textarea {
border: 1px solid $uni-text-color;
color: $uni-text-color;
border-radius: 25rpx;
height: 150rpx;
width: 100%;
text-indent: 1em;
font-size: 28rpx;
}
}
}
.save{
display: flex;
align-items: center;
justify-content: center;
background: $uni-bg-color-app;
color: $uni-text-color-inverse !important;
height: 80rpx;
margin: 20rpx auto;
border-radius: 30rpx;
color: black;
font-size: 34rpx;
.save {
display: flex;
align-items: center;
justify-content: center;
background: $uni-bg-color-app;
color: $uni-text-color-inverse !important;
height: 80rpx;
margin: 20rpx auto;
border-radius: 30rpx;
color: black;
font-size: 34rpx;
}
}
}
</style>

+ 12
- 11
pages/home/home.vue View File

@ -4,8 +4,8 @@
<!-- 首页顶部 -->
<view class="home-top content">
<view class="menu-icon" @click="centerShow = true;$play()">
<image src="@/static/home/menu.png" mode="aspectFit"></image>
<view class="menu-icon">
<!-- <image src="@/static/home/menu.png" mode="aspectFit"></image> -->
</view>
<view class="logo">
Tiktok
@ -39,6 +39,7 @@
<!-- 虚拟滚动 -->
<virtualScroll></virtualScroll>
<virtualScroll1></virtualScroll1>
<!-- 会员等级信息 -->
<view class="member-list content">
@ -84,8 +85,6 @@
<sTabbar select="0" />
<center :show="centerShow" :userInfo="userInfo" @close="centerShow = false;$play()" />
<!-- 客服列表 -->
<serviceList :show="showService" :serverList="serverList" @close="closeServiceList"></serviceList>
@ -97,23 +96,22 @@
<script>
import sTabbar from '@/components/base/tabBar.vue'
import center from '@/components/center/center.vue'
import serviceList from '@/components/serviceList/serviceList.vue'
import popUpWindow from '../../components/popUpWindow/popUpWindow.vue'
import virtualScroll from '../../components/virtualScroll/virtualScroll.vue'
import virtualScroll1 from '../../components/virtualScroll1/virtualScroll1.vue'
export default {
components: {
sTabbar,
center,
serviceList,
popUpWindow,
virtualScroll
virtualScroll,
virtualScroll1
},
data() {
return {
notification: {},
centerShow: false,
showService: false,
menuTitles: ['CustomerService', 'Certifcate', 'Deposit', 'Withdraw'],
agreementTitles: ['agreement_item_1', 'agreement_item_2', 'agreement_item_3', 'agreement_item_4'],
@ -126,7 +124,10 @@
notificationType: {
en: 'keyEnglish',
es: "keySpanish",
"zh": "keyChinese"
zh: "keyChinese",
ar : "keyA",
fr : "keyF",
ru : "keyE"
},
showPopUp : uni.getStorageSync('clickPopUp') ? false : true
}
@ -148,14 +149,14 @@
//
toPurse() {
uni.navigateTo({
url: '/pages/purse/purse'
url: '/pages/purse/purse?type=1'
})
},
//
toWithdraw() {
uni.navigateTo({
url: '/pages/withdraw/withdraw'
url: '/pages/withdraw/withdraw?type=1'
})
},


+ 1
- 1
pages/invitationList/invitationList.vue View File

@ -42,7 +42,7 @@
methods: {
leftClick() {
uni.navigateTo({
url: '/pages/home/home'
url: '/pages/center/center'
})
},


+ 1
- 1
pages/loginRecord/loginRecord.vue View File

@ -52,7 +52,7 @@
methods : {
leftClick() {
uni.navigateTo({
url: '/pages/home/home'
url: '/pages/center/center'
})
},


+ 1
- 1
pages/personalInfo/personalInfo.vue View File

@ -84,7 +84,7 @@
},
leftClick() {
uni.navigateTo({
url: '/pages/home/home'
url: '/pages/center/center'
})
},
updateUser(){


+ 34
- 16
pages/purse/purse.vue View File

@ -22,14 +22,11 @@
<!-- 输入框 -->
<view class="input content">
<input v-model="form.orderId" class="input content" type="text" :placeholder="$t('page.purse.orderId')" />
<input v-model="form.no" class="input content" type="text" disabled :placeholder="$t('page.purse.orderId')" />
</view>
<view class="input content">
<input @input="moneyChange" v-model="form.money" class="input content" type="number" :placeholder="$t('page.purse.deposit-now')" />
</view>
<view class="input content">
<input v-model="form.payPass" class="input content" type="password" :placeholder="$t('page.purse.security-pin')" />
</view>
<view class="input content">
<view class="address-info" style="margin-top: 20rpx;">
{{ userInfo.moneyAddress }}
@ -74,10 +71,10 @@
money : '',
form : {
money : '',
payPass : '',
id : '',
orderId : '',
image : ''
no : Date.now(),
image : '',
address : ''
},
serverList : [],
showService : false,
@ -91,16 +88,21 @@
},
methods: {
leftClick() {
uni.navigateTo({
url: '/pages/home/home'
})
if(this.$route.query.type){
return uni.navigateTo({
url: '/pages/home/home'
})
}else{
uni.navigateTo({
url: '/pages/center/center'
})
}
},
uploadImage(){
let self = this
uni.chooseImage({
success(res) {
console.log(res);
self.form.image = res.tempFilePaths[0]
}
})
@ -137,17 +139,24 @@
//
recharge(){
this.$play()
let { money , payPass } = this.form
this.form.address = this.userInfo.moneyAddress
let { money , no , address , image } = this.form
if(!no){
return uni.$u.toast(this.$t('page.purse.orderNumberEmpty'))
}
if(!money){
return uni.$u.toast(this.$t('page.purse.moneyEmpty'))
}
if(money <= 0){
return uni.$u.toast(this.$t('page.purse.AmountThan0'))
}
if(payPass.trim() == ''){
return uni.$u.toast(this.$t('page.purse.payPassEmpty'))
if(address.trim() == ''){
return uni.$u.toast(this.$t('page.purse.addressEmpty'))
}
this.request('recharge',{},this.form).then(res => {
if(image.trim() == ''){
return uni.$u.toast(this.$t('page.purse.imgEmpty'))
}
this.request('recharge2',{},this.form).then(res => {
if(res.code == 200){
uni.$u.toast(this.$t('page.purse.success'))
this.cleanForm()
@ -190,11 +199,20 @@
//
cleanForm(){
this.form = {}
this.form = {
money : '100',
id : '',
no : Date.now(),
image : '',
address : ''
}
},
//
copy(content) {
if(!content){
return uni.$u.toast(this.$t('page.purse.addressEmpty'))
}
uni.setClipboardData({
data: content,
success: () => {


+ 0
- 35
pages/register/register.vue View File

@ -21,11 +21,8 @@
<input v-model="form.account" type="text" :placeholder="$t('page.register.username-placeholder')" />
<input v-model="form.password" type="password"
:placeholder="$t('page.register.password-placeholder')" />
<input v-model="form.okPassword" type="password" :placeholder="$t('page.register.confirm-password')" />
<input v-model="form.payPass" type="password"
:placeholder="$t('page.register.PaymentPassword-placeholder')" />
<input v-model="form.okPayPass" type="password"
:placeholder="$t('page.register.PaymentPassword-placeholder')" />
<input v-model="form.invitationCode" :placeholder="$t('page.register.invitation-code')" />
</view>
@ -75,9 +72,7 @@
form: {
account: '',
password: '',
okPassword: '',
payPass: '',
okPayPass: '',
invitationCode: ''
},
agree: [],
@ -116,9 +111,7 @@
let {
account,
password,
okPassword,
payPass,
okPayPass,
invitationCode
} = this.form
if (account.trim() == '') {
@ -135,20 +128,6 @@
});
return false;
}
if (okPassword.trim() == '') {
uni.showToast({
title: this.$t('page.register.okPassEmpty'),
icon: 'none'
});
return false;
}
if (password.trim() != okPassword.trim()) {
uni.showToast({
title: this.$t('page.register.passInconsistency'),
icon: 'none'
});
return false;
}
if (payPass.trim() == '') {
uni.showToast({
title: this.$t('page.register.payPassEmpty'),
@ -156,20 +135,6 @@
});
return false;
}
if (okPayPass.trim() == '') {
uni.showToast({
title: this.$t('page.register.okPayPassEmpty'),
icon: 'none'
});
return false;
}
if (payPass.trim() != okPayPass.trim()) {
uni.showToast({
title: this.$t('page.register.payPassInconsistency'),
icon: 'none'
});
return false;
}
if(invitationCode.trim() == ''){
uni.showToast({
title: this.$t('page.register.invitationCodeEmpty'),


+ 1
- 1
pages/runningWater/runningWater.vue View File

@ -43,7 +43,7 @@
leftClick() {
uni.navigateTo({
url: '/pages/home/home'
url: '/pages/center/center'
})
},


+ 4
- 1
pages/signIn/signIn.vue View File

@ -58,7 +58,10 @@
type: {
en: 'keyEnglish',
es: "keySpanish",
"zh": "keyChinese"
zh: "keyChinese",
ar : "keyA",
fr : "keyF",
ru : "keyE"
},
monthIndex: 0, //(0-11)
signinList : [], //


+ 1
- 1
pages/winningRecord/winningRecord.vue View File

@ -39,7 +39,7 @@
methods: {
leftClick() {
uni.navigateTo({
url: '/pages/home/home'
url: '/pages/center/center'
})
},


+ 22
- 14
pages/withdraw/withdraw.vue View File

@ -37,12 +37,12 @@
<input v-model="form.money" type="number" :placeholder="$t('page.withdraw.deposit-now')"/>
</view>
<view class="input-item">
<!-- <view class="input-item">
<view class="input-top">
<view class="title">{{ $t('page.withdraw.pin') }}</view>
</view>
<input v-model="form.payPass" type="password"/>
</view>
</view> -->
</view>
<!-- 提交按钮 -->
@ -75,7 +75,8 @@
money : '',
form : {
money : '', //
payPass : ''
// payPass : '',
address : ''
},
vipInfo : {},
showModal : false, //
@ -91,9 +92,15 @@
methods: {
leftClick() {
uni.navigateTo({
url: '/pages/home/home'
})
if(this.$route.query.type){
return uni.navigateTo({
url: '/pages/home/home'
})
}else{
uni.navigateTo({
url: '/pages/center/center'
})
}
},
//
@ -119,20 +126,21 @@
//
withdraw(){
this.$play()
let { money , payPass } = this.form;
this.form.address = this.userInfo.moneyAddress
let { money , address } = this.form;
if(address.trim() == ''){
return uni.$u.toast(this.$t('page.withdraw.addressEmpty'))
}
if(money <= 0){
return uni.$u.toast(this.$t('page.withdraw.creditLimit'))
}
// if(money > this.vipInfo.maxPrice){ //vip(使toast)
// return this.showModal = true
// }
if(money > this.money){ //
return uni.$u.toast(this.$t('page.withdraw.insufficientBalance'))
}
if(payPass.trim() == ''){
return uni.$u.toast(this.$t('page.withdraw.payPassEmpty'))
}
this.request('withdrawal',{},this.form).then(res => {
// if(payPass.trim() == ''){
// return uni.$u.toast(this.$t('page.withdraw.payPassEmpty'))
// }
this.request('withdrawal2',{},this.form).then(res => {
if(res.code == 200){
uni.$u.toast(this.$t('page.withdraw.successfulWithdrawal'))
this.cleanForm()


BIN
static/tabbar/7.png View File

Before After
Width: 150  |  Height: 150  |  Size: 3.2 KiB

BIN
static/tabbar/8.png View File

Before After
Width: 150  |  Height: 150  |  Size: 3.1 KiB

+ 1
- 1
utils/request.js View File

@ -8,7 +8,7 @@ import shop from "./shop";
const request = axios.create({
// baseURL: 'https://admin.arcskytech.top/uav-api',//生产环境外国服务器
baseURL: 'https://uav-api.xzaiyp.top/uav-api',//演示环境
// baseURL: 'http://h5.xzaiyp.top/uav-api',//开发环境
// baseURL: 'http://h5.xzaiyp.top/uav-two',//开发环境
// baseURL: 'https://shop-admin.xzaiyp.top/shop_demo',
timeout: '5000s',


+ 8
- 0
utils/shop.js View File

@ -61,4 +61,12 @@ export default {
getAppBanner : { url : '/shop/getAppBanner' , method : 'GET' , auth : true },
//获取banner列表
getIpLogPage : { url : '/info/getIpLogPage' , method : 'GET' , auth : true },
//获取首页提示
getIndexTip : { url : '/index/getIndexTips' , method : 'GET' , auth : true },
//获取首页提现滚动
getIndexScroll : { url : '/index/getIndexTixian' , method : 'GET' , auth : true },
//充值第二个版本
recharge2 : { url : '/info/recharge2' , method : 'GET' , auth : true },
//提现第二版
withdrawal2 : { url : '/info/withdrawal2' , method : 'GET' , auth : true },
}

Loading…
Cancel
Save