USER-20230908AJ\Administrator 6 meses atrás
pai
commit
b20ea2cdeb
4 arquivos alterados com 183 adições e 90 exclusões
  1. 1 0
      api/deal.js
  2. 153 78
      pages/convert/convert-index.vue
  3. 5 4
      pages/home/home-index.vue
  4. 24 8
      pages/my/my-index.vue

+ 1 - 0
api/deal.js

@@ -4,4 +4,5 @@ const commonUrl = '/api/deal/'
 // 获取sts
 export const addDeal = (data) => request(commonUrl + 'add', 'post', { ...data })
 export const getAddress = (data) => request(commonUrl + 'address', 'post', { ...data })
+export const getDealList = (data) => request(commonUrl + 'list', 'post', { ...data })
 

+ 153 - 78
pages/convert/convert-index.vue

@@ -3,19 +3,20 @@
 	import {
 		getTotalMoney
 	} from "@/api/money";
-	import {
-		addDeal,
-		getAddress
-	} from "@/api/deal";
+  import {
+    addDeal,
+    getAddress, getDealList
+  } from "@/api/deal";
 	import tools from "@/common/js/tools";
 	import web3 from "web3";
 	import {
 		ethers
 	} from "ethers";
+  import blank from "@/components/en-utils/en-blank/en-blank.vue";
 
 	export default {
 		name: "convert-index",
-		components: {},
+		components: {blank},
 		data() {
 			return {
 				usdtNum: '',
@@ -27,6 +28,8 @@
 				address: '',
 				dealAddress: '',
 				change_num: 0,
+        list:[],
+        page: 1,
 			};
 		},
 		watch: {
@@ -47,6 +50,7 @@
 			this.getIconNum()
 			this.getTotalMoney()
 			this.getAddress()
+			this.getDealList()
 		},
 		methods: {
 			getAddress() {
@@ -128,85 +132,138 @@
 
 			},
 			setType() {
+        return
 				this.type = (this.type === 1 ? 2 : 1)
 				this.formNUm = ''
-			}
+			},
+      abbreviateString(str) {
+        let startLength = 4;
+        let endLength = 4;
+        if (str.length <= startLength + endLength + 1) {
+          return str; // 如果字符串长度不足以被截断,则返回原字符串
+        }
+        return str.slice(0, startLength) + '...' + str.slice(-endLength);
+      },
+      getDealList(){
+        if(this.total>=this.list.length){
+          return
+        }
+        getDealList({'page': this.page}).then(res=>{
+          if(res.code===1){
+            this.list.push(...res.data.items)
+            this.total = res.data.total
+            ++this.page
+          }
+
+        })
+      }
 		},
 	}
 </script>
 
 <template>
-	<view class="flex-common-box p-20 box-sizing-border">
-		<view class="bgc-f p-40 box-sizing-border b-rad-20">
-			<view>
-				<view class="bgc-F6F7FA b-rad-20 mb-20 p-20 box-sizing-border mb-20" v-if="type===1">
-					<view class="align-items-start flex-justify-space mb-20">
-						<view class="align-items-center">
-							<image class="t-img mr-8" :src="require('@/static/img/index/index/usdt.png')"></image>
-							<view class="fs-28">USDT</view>
-						</view>
-						<view class="max-box b-rad-20 fs-28" @click="setMax">
-							Max {{usdtNum}}
-						</view>
-					</view>
-					<view>
-						<input v-model="formNUm" placeholder="输入要兑换的USDT数量" placeholder-class="fs-28"></input>
-					</view>
-				</view>
-				<view class="bgc-F6F7FA b-rad-20 mb-20 p-20 box-sizing-border mb-20" v-else>
-					<view class="align-items-start flex-justify-space mb-20">
-						<view class="align-items-center">
-							<image class="t-img mr-8" :src="require('@/static/img/logo/logo.png')"></image>
-							<view class="fs-28">DAO</view>
-						</view>
-						<view class="max-box b-rad-20 fs-28" @click="setMax">
-							Max {{iconNum}}
-						</view>
-					</view>
-					<view>
-						<input v-model="formNUm" placeholder="输入要兑换的DAO数量" placeholder-class="fs-28"></input>
-					</view>
-				</view>
-			</view>
-
-			<view class="flex-direction-column align-items-center flex-justify-center mb-20" @click="setType">
-				<view class="fs-28">
-					FORM
-				</view>
-				<image class="jh-img" :src="require('@/static/img/index/index/jiaohuan.png')"></image>
-				<view class="fs-28">
-					TO
-				</view>
-			</view>
-			<view>
-				<view class="bgc-F6F7FA b-rad-20 mb-20 p-20 box-sizing-border mb-50" v-if="type===1">
-					<view class="align-items-start flex-justify-space mb-20">
-						<view class="align-items-center">
-							<image class="logo-img mr-8" :src="require('@/static/img/logo/logo.png')"></image>
-							<view class="fs-28">DAO</view>
-						</view>
-					</view>
-					<view class="fs-28" :class="toNum?'':'fc-808080'">
-						{{toNum?toNum:'请输入需要兑换的USDT数量'}}
-					</view>
-				</view>
-				<view class="bgc-F6F7FA b-rad-20 mb-20 p-20 box-sizing-border mb-50" v-else>
-					<view class="align-items-start flex-justify-space mb-20">
-						<view class="align-items-center">
-							<image class="logo-img mr-8" :src="require('@/static/img/index/index/usdt.png')"></image>
-							<view class="fs-28">USDT</view>
-						</view>
-					</view>
-					<view class="fs-28" :class="toNum?'':'fc-808080'">
-						{{toNum?toNum:'请输入需要兑换的DAO数量'}}
-					</view>
-				</view>
-			</view>
-
-			<view class="convent-but b-rad-20 text-align-center fs-28 fc-f" @click="addDeal">
-				兑换
-			</view>
-		</view>
+	<view class="flex-common-box  box-sizing-border">
+    <view class="top-b bgc-f plr-20 box-sizing-border align-items-center flex-justify-space">
+      <image class="img-box" src="@/static/img/logo/logo.png"></image>
+      <view class="fs-30">
+        {{abbreviateString(address)}}
+      </view>
+    </view>
+    <view class="p-20">
+      <view class="bgc-f p-40 box-sizing-border b-rad-20 ">
+
+        <view class="">
+          <view class="bgc-F6F7FA b-rad-20 mb-20 p-20 box-sizing-border mb-20" v-if="type===1">
+            <view class="align-items-start flex-justify-space mb-20">
+              <view class="align-items-center">
+                <image class="t-img mr-8" :src="require('@/static/img/index/index/usdt.png')"></image>
+                <view class="fs-28">USDT</view>
+              </view>
+              <view class="max-box b-rad-20 fs-28" @click="setMax">
+                Max {{usdtNum}}
+              </view>
+            </view>
+            <view>
+              <input v-model="formNUm" placeholder="输入要兑换的USDT数量" placeholder-class="fs-28"></input>
+            </view>
+          </view>
+          <view class="bgc-F6F7FA b-rad-20 mb-20 p-20 box-sizing-border mb-20" v-else>
+            <view class="align-items-start flex-justify-space mb-20">
+              <view class="align-items-center">
+                <image class="t-img mr-8" :src="require('@/static/img/logo/logo.png')"></image>
+                <view class="fs-28">DAO</view>
+              </view>
+              <view class="max-box b-rad-20 fs-28" @click="setMax">
+                Max {{iconNum}}
+              </view>
+            </view>
+            <view>
+              <input v-model="formNUm" placeholder="输入要兑换的DAO数量" placeholder-class="fs-28"></input>
+            </view>
+          </view>
+        </view>
+
+        <view class="flex-direction-column align-items-center flex-justify-center mb-20" @click="setType">
+          <view class="fs-28">
+            FORM
+          </view>
+          <image class="jh-img" :src="require('@/static/img/index/index/jiaohuan.png')"></image>
+          <view class="fs-28">
+            TO
+          </view>
+        </view>
+        <view>
+          <view class="bgc-F6F7FA b-rad-20 mb-20 p-20 box-sizing-border mb-50" v-if="type===1">
+            <view class="align-items-start flex-justify-space mb-20">
+              <view class="align-items-center">
+                <image class="logo-img mr-8" :src="require('@/static/img/logo/logo.png')"></image>
+                <view class="fs-28">DAO</view>
+              </view>
+            </view>
+            <view class="fs-28" :class="toNum?'':'fc-808080'">
+              {{toNum?toNum:'请输入需要兑换的USDT数量'}}
+            </view>
+          </view>
+          <view class="bgc-F6F7FA b-rad-20 mb-20 p-20 box-sizing-border mb-50" v-else>
+            <view class="align-items-start flex-justify-space mb-20">
+              <view class="align-items-center">
+                <image class="logo-img mr-8" :src="require('@/static/img/index/index/usdt.png')"></image>
+                <view class="fs-28">USDT</view>
+              </view>
+            </view>
+            <view class="fs-28" :class="toNum?'':'fc-808080'">
+              {{toNum?toNum:'请输入需要兑换的DAO数量'}}
+            </view>
+          </view>
+        </view>
+
+        <view class="convent-but b-rad-20 text-align-center fs-28 fc-f" @click="addDeal">
+          兑换
+        </view>
+      </view>
+      <view class="bgc-f p-20 box-sizing-border b-rad-20 m-t-40">
+        <view class="fs-28 pt-5 mb-8">
+          兑换记录
+        </view>
+        <view v-if="list.length<=0" class="blank-box align-items-center flex-justify-center">
+          <blank :showBlank="list.length<=0?true:false" message="暂无数据"></blank>
+        </view>
+        <view class="bgc-F6F7FA" v-else>
+          <view class="item-box align-items-center flex-justify-space" v-for="item in list" :key="item.id">
+            <view>
+              <view class="mb-8 fs-28 fw-b">兑换 {{item.money}} USDT</view>
+              <view class="fs-24">{{item.created_date}}</view>
+            </view>
+            <view class="align-items-center">
+              <view class="fs-24">{{item.status_str}}</view>
+              <view class="fs-28 ">到账: <text class="fc-ED301D">{{item.to_money}} DAO</text></view>
+            </view>
+          </view>
+
+        </view>
+      </view>
+    </view>
+
 	</view>
 
 </template>
@@ -238,6 +295,7 @@
 	.jh-img {
 		width: 60rpx;
 		height: 60rpx;
+    transform: rotate(90deg);
 	}
 
 	.logo-img {
@@ -251,4 +309,21 @@
 		color: #fff;
 		line-height: 80rpx;
 	}
-</style>
+
+  .img-box {
+    width: 78rpx;
+    height: 60rpx;
+  }
+  .top-b {
+    width: 100%;
+    height: 98rpx;
+    line-height: 98rpx;
+  }
+  .item-box {
+    width: 100%;
+    height: 120rpx;
+    padding: 10rpx 20rpx;
+    box-sizing: border-box;
+    border-top: 2rpx solid #e5e5e5;
+  }
+</style>

+ 5 - 4
pages/home/home-index.vue

@@ -83,12 +83,16 @@
 				}
 			},
       getDividendList() {
+        if(this.total>=this.list.length){
+          return
+        }
         getDividendList({
 					'page': this.page
 				}).then(res => {
 					if (res.code === 1) {
 						this.list.push(...res.data.items)
 						this.total = res.data.total
+            this.page++
 					}
 				})
 			},
@@ -270,9 +274,7 @@
             <view class="fs-28 fc-ED301D">{{item.sorting_money}}</view>
           </view>
         </view>
-<!--        <view class="h-50 text-align-center fs-28">-->
-<!--          ~暂无记录-->
-<!--        </view>-->
+
       </view>
 <!--			<view class="bgc-F6F7FA" v-else>-->
 <!--				<view class="item-box align-items-center flex-justify-space" v-for="item in list" :key="item.id">-->
@@ -289,7 +291,6 @@
 <!--				</view>-->
 
 			</view>
-		</view>
 	</view>
 </template>
 

+ 24 - 8
pages/my/my-index.vue

@@ -88,14 +88,21 @@
 				uni.navigateTo({
 					url: 'pages/my/inner-page/all_profit'
 				});
-			}
+			},
+
 		},
 	}
 </script>
 
 <template>
-	<view class="flex-common-box p-20 box-sizing-border">
-		<view>
+	<view class="flex-common-box  box-sizing-border">
+    <view class="top-b bgc-f plr-20 box-sizing-border align-items-center flex-justify-space">
+      <image class="img-box" src="@/static/img/logo/logo.png"></image>
+      <view class="fs-30">
+        {{abbreviateString(address)}}
+      </view>
+    </view>
+		<view class="p-20">
 			<view class="align-items-center mb-32">
 				<view
 					class="h-80 b-rad-20 bg-one flex-1 flex-direction-column align-items-center flex-justify-center mr-20">
@@ -133,10 +140,10 @@
 							<view class="fs-28 mb-4">团队人数:{{item.clanNum}}</view>
 							<view class="fs-28">直推人数:{{item.recomNum}}</view>
 						</view>
-						<!--      <view class="flex-1 pl-20 box-sizing-border">-->
-						<!--        <view class="fs-28 mb-4">自身业绩:10000</view>-->
-						<!--        <view class="fs-28">团队业绩:10000</view>-->
-						<!--      </view>-->
+						      <view class="flex-1 pl-20 box-sizing-border">
+						        <view class="fs-28 mb-4">自身业绩:{{item.recomPledge}}</view>
+						        <view class="fs-28">团队业绩:{{item.clanPledge}}</view>
+						      </view>
 					</view>
 				</view>
 			</scroll-view>
@@ -171,4 +178,13 @@
 	.left-box {
 		border-right: 2rpx solid #ccc;
 	}
-</style>
+  .img-box {
+    width: 78rpx;
+    height: 60rpx;
+  }
+  .top-b {
+    width: 100%;
+    height: 98rpx;
+    line-height: 98rpx;
+  }
+</style>