Ver código fonte

银行卡提现初稿

zhangyujun 3 anos atrás
pai
commit
f3eb8cac1a

+ 14 - 0
src/api/modules/cashOut.ts

@@ -22,7 +22,21 @@ class CashOut {
 	extractList(): AxiosPromise<CashOutType.ExtractList> {
 		return request("/wx/extract/list");
 	}
+	// 查询微信提现到银行卡记录
+	studentWxBankList(params:Object) :AxiosPromise<CashOutType.bankList> {
+		return request("/student/wx/bank/list",{
+			params,
+			method:"get"
+		})
+	}
+	//银行卡提现
+	studentWxExtractWxwithbankdrawal(data:Object){
+		return request("/student/wx/extract/wxwithbankdrawal",{
+			data,
+			method:"post"
+		})
 
+	}
 	/**微信提现 */
 	cashout(params: { amount: number }): AxiosPromise<CashoutRes> {
 		return request("/student/wx/extract/withdraw", {

+ 9 - 0
src/api/types/cashOut.d.ts

@@ -23,6 +23,15 @@ declare namespace CashOutType {
 	interface extensionIncomePriceRes extends Common.Res {
 		data: userInfo;
 	}
+	interface bankList extends Common.Res {
+		rows: Array<{
+			bankCode:Number,
+			encBankNo:string,
+			encTrueName:string,
+			id:Number,
+			openid:string
+		}>;
+	}
 
 	interface ExtractList extends Common.Res {
 		rows: Array<{

BIN
src/assets/img/提现到银行卡.png


+ 6 - 1
src/components/m-user-name/index.vue

@@ -1,5 +1,6 @@
 <template>
-  <span class="user-name">{{ userName }}</span>
+	<span class="user-name">{{ userName }}</span>
+	<div v-if="schoolName&&showSchoolName" class="user-name">{{ schoolName }}</div>
 </template>
 
 <script setup lang="ts">
@@ -7,6 +8,10 @@ import { computed } from "vue";
 import { useStore } from "vuex";
 const store = useStore();
 const userName = computed(() => store.getters.getUserData.nickname);
+const schoolName = computed(() => store.getters.getUserData.schoolName);
+const props = defineProps({
+  showSchoolName:Boolean
+})
 </script>
 
 <style scoped></style>

+ 70 - 0
src/hooks/bank/wxBank.ts

@@ -0,0 +1,70 @@
+import { computed, reactive } from "vue";
+import { useRoute } from "vue-router";
+
+export const useWxBank = () => {
+    const wxBankList = reactive([
+        { bankName: "工商银行", bankCode: 1002 },
+        { bankName: "农业银行", bankCode: 1005 },
+        { bankName: "建设银行", bankCode: 1003 },
+        { bankName: "中国银行", bankCode: 1026 },
+        { bankName: "交通银行", bankCode: 1020 },
+        { bankName: "招商银行", bankCode: 1001 },
+        { bankName: "邮储银行", bankCode: 1066 },
+        { bankName: "民生银行", bankCode: 1006 },
+        { bankName: "平安银行", bankCode: 1010 },
+        { bankName: "中信银行", bankCode: 1021 },
+        { bankName: "浦发银行", bankCode: 1004 },
+        { bankName: "兴业银行", bankCode: 1009 },
+        { bankName: "光大银行", bankCode: 1022 },
+        { bankName: "广发银行", bankCode: 1027 },
+        { bankName: "华夏银行", bankCode: 1025 },
+        { bankName: "宁波银行", bankCode: 1056 },
+        { bankName: "北京银行", bankCode: 4836 },
+        { bankName: "上海银行", bankCode: 1024 },
+        { bankName: "南京银行", bankCode: 1054 },
+        { bankName: "长子县融汇村镇银行", bankCode: 475 },
+        { bankName: "长沙银行", bankCode: 4216 },
+        { bankName: "浙江泰隆商业银行", bankCode: 4051 },
+        { bankName: "中原银行", bankCode: 4753 },
+        { bankName: "企业银行(中国)", bankCode: 4761 },
+        { bankName: "顺德农商银行", bankCode: 4036 },
+        { bankName: "衡水银行", bankCode: 4752 },
+        { bankName: "长治银行", bankCode: 4756 },
+        { bankName: "大同银行", bankCode: 4767 },
+        { bankName: "河南省农村信用社", bankCode: 4115 },
+        { bankName: "宁夏黄河农村商业银行", bankCode: 4150 },
+        { bankName: "山西省农村信用社", bankCode: 4156 },
+        { bankName: "安徽省农村信用社", bankCode: 4166 },
+        { bankName: "甘肃省农村信用社", bankCode: 4157 },
+        { bankName: "天津农村商业银行", bankCode: 4153 },
+        { bankName: "广西壮族自治区农村信用社", bankCode: 4113 },
+        { bankName: "陕西省农村信用社", bankCode: 4108 },
+        { bankName: "深圳农村商业银行", bankCode: 4076 },
+        { bankName: "宁波鄞州农村商业银行", bankCode: 4052 },
+        { bankName: "浙江省农村信用社联合社", bankCode: 4764 },
+        { bankName: "江苏省农村信用社联合社", bankCode: 4217 },
+        { bankName: "江苏紫金农村商业银行股份有限公司", bankCode: 4072 },
+        { bankName: "北京中关村银行股份有限公司", bankCode: 4769 },
+        { bankName: "星展银行(中国)有限公司", bankCode: 4778 },
+        { bankName: "枣庄银行股份有限公司", bankCode: 4766 },
+        { bankName: "海口联合农村商业银行股份有限公司", bankCode: 4758 },
+        { bankName: "南洋商业银行(中国)有限公司", bankCode: 4763 },
+    ]);
+    const getBankNameByCode = (bankCode:number)=>{
+        let bankName = ""
+        wxBankList.forEach(item=>{
+            if(item.bankCode===bankCode){
+                bankName = item.bankName
+            }
+        })
+        return bankName
+
+
+
+    }
+    return {
+        wxBankList,
+        getBankNameByCode
+    }
+
+}

+ 19 - 13
src/views/cashOut/index.vue

@@ -15,10 +15,18 @@
 			<div class="draw-button">
 				<m-button @click="showCashout(updateExtractList)" class="continue" width="90px" height="30px" text="我要提现" />
 			</div>
-			<!-- <div  class="draw-button mr15">
-				<m-button @click="()=>{
-					push('/drawByBank')}" class="bank" width="90px" height="30px" text="银行卡提现" />
-			</div> -->
+			<div v-if="userData.saleType==2||userData.saleType==3" class="draw-button mr15">
+				<m-button
+					@click="
+						() => {
+							push('/drawByBankRecord');
+						}
+					"
+					class="bank"
+					width="90px"
+					height="30px"
+					text="银行卡提现" />
+			</div>
 		</div>
 	</div>
 	<div class="summary content-box">
@@ -45,8 +53,9 @@
 <script lang="ts">
 import { CashOutModel } from "@/model/cashOut";
 import { ref, onBeforeMount } from "vue";
-import { userData} from "@/hooks/base/userData"
+import { userData } from "@/hooks/base/userData";
 const cashOutModel = new CashOutModel();
+
 /**用户提现列表展示 */
 const useExtract = () => {
 	type ExtractType = {
@@ -58,19 +67,17 @@ const useExtract = () => {
 	};
 
 	const extractList = ref<Array<ExtractType>>([]);
-	// const userData = 
+	// const userData =
 	const updateExtractList = async () => {
 		const extractListRes = await cashOutModel.extractList();
 		extractList.value = extractListRes.rows;
 	};
 	onBeforeMount(updateExtractList);
-	const isAgent = userData.value.saleType==2||userData.value.saleType==3||false
+
 	return {
 		extractList,
 		updateExtractList,
 		userData,
-		isAgent,
-		
 	};
 };
 </script>
@@ -80,13 +87,13 @@ import { useProfitPrice } from "@/hooks/user";
 import { showCashout } from "./components/cashout";
 import { useRouter } from "vue-router";
 const searchValue = ref("");
-const push = useRouter().push
+const push = useRouter().push;
 const { profitPrice } = useProfitPrice();
 const { extractList, updateExtractList } = useExtract();
 </script>
 
 <style scoped lang="scss">
-.mr15{
+.mr15 {
 	margin-top: 15px;
 }
 .header-back {
@@ -123,14 +130,13 @@ const { extractList, updateExtractList } = useExtract();
 				}
 			}
 		}
-		.bank{
+		.bank {
 			font-size: 13px;
 			font-family: PingFang SC;
 			font-weight: 400;
 			line-height: 19px;
 			color: #498ef5;
 			background: #fff;
-
 		}
 		.continue {
 			font-size: 13px;

+ 198 - 100
src/views/drawByBank/index.vue

@@ -1,120 +1,218 @@
 <template>
-	<div class="">
-		<div class="header0">
-			<m-nav-bar :transparent="true" title="提现记录" style="color: #ffffff" />
-			<div class="btn1-container">
-				<div class="btn1">
-					<img class="" src="@/assets/img/提现到银行卡.png" />
-					<span class="btn1-text">提现到银行卡</span>
+	<div style="background: #f5f5f5">
+		<div class="rect1"></div>
+		<van-form ref="drawByBank" class="custom-from">
+			<van-cell-group inset>
+				<van-field v-model="form.encTrueName" name="提现户名" label="提现户名" placeholder="提现户名" :rules="[{ required: true, message: '请填写提现户名' }]" />
+				<van-field v-model="form.encBankNo" type="number" name="提现至账户" label="提现至账户" placeholder="提现至账户" :rules="[{ required: true, message: '请填写提现至账户' }]" />
+				<van-field
+					@click="
+						() => {
+							bankVisible = true;
+						}
+					"
+					readonly
+					is-link
+					v-model="form.bankName"
+					type="text"
+					name="银行"
+					label="银行"
+					placeholder="银行"
+					:rules="[{ required: true, message: '请选择银行' }]" />
+			</van-cell-group>
+			<van-popup v-model:show="bankVisible">
+				<van-picker
+					:columns-field-names="{
+						text: 'bankName',
+						value: 'bankCode',
+					}"
+					@confirm="selectBank"
+					@cancel="
+						() => {
+							bankVisible = false;
+						}
+					"
+					title="选择银行"
+					:columns="wxBankList" />
+			</van-popup>
+
+			<div class="rect1"></div>
+			<div class="money">
+				<div class="header">提现金额</div>
+				<div class="mid"><span>¥</span> 
+                <!-- <input v-model="form.amount" class="money-input" type="text" /> -->
+                <van-field style="font-size:25px;" :rules="[{ required: true, message: '请填写提现至账户' }]" v-model="form.amount" type="number" />
+                </div>
+				<div class="bottom">
+					<span>(可提现余额{{ profitPrice }}元)</span>
+					<span
+						style="color: #498ef5"
+						@click="
+							() => {
+								form.amount = profitPrice;
+							}
+						"
+						class=""
+						>全部提现</span
+					>
 				</div>
 			</div>
-		</div>
-        <div class="rect1"></div>
-		<div class="list">
-			<div class="draw">
-				<span class="draw-text1">最近转账·一点即提</span>
-                <span class="draw-text2">查看全部</span>
+			<div style="margin: 16px">
+				<van-button round block type="primary" @click="onSubmit"> 提交 </van-button>
 			</div>
-            <div class="list-item">
-                <img src="@/assets/img/招行.png" class="bank-logo">
-                <div>
-                    <div  class="list-item-text1">林好</div>
-                    <div class="list-item-text2">中国建设银行(6227****2458)</div>
-                </div>
-                <div class="list-item-text3">2021-10-11 18:17:06 </div>
-
-            </div>
-		</div>
+		</van-form>
 	</div>
 </template>
 
 <script setup lang="ts">
+import { onMounted, reactive, ref } from "vue";
+import type { FormInstance } from "vant";
+import { useProfitPrice } from "@/hooks/user";
+import { cashOut } from "@/api";
+import { Dialog } from "vant";
+import { useRouter } from "vue-router";
+import { useWxBank } from "@/hooks/bank/wxBank"
+
+const query = useRouter().currentRoute.value.query
+const drawByBank = ref<FormInstance>();
+
+const { profitPrice } = useProfitPrice();
+const bankVisible = ref(false);
+const { wxBankList,getBankNameByCode } = useWxBank()
+// const wxBankList = reactive([
+// 	{ bankName: "工商银行", bankCode: 1002 },
+// 	{ bankName: "农业银行", bankCode: 1005 },
+// 	{ bankName: "建设银行", bankCode: 1003 },
+// 	{ bankName: "中国银行", bankCode: 1026 },
+// 	{ bankName: "交通银行", bankCode: 1020 },
+// 	{ bankName: "招商银行", bankCode: 1001 },
+// 	{ bankName: "邮储银行", bankCode: 1066 },
+// 	{ bankName: "民生银行", bankCode: 1006 },
+// 	{ bankName: "平安银行", bankCode: 1010 },
+// 	{ bankName: "中信银行", bankCode: 1021 },
+// 	{ bankName: "浦发银行", bankCode: 1004 },
+// 	{ bankName: "兴业银行", bankCode: 1009 },
+// 	{ bankName: "光大银行", bankCode: 1022 },
+// 	{ bankName: "广发银行", bankCode: 1027 },
+// 	{ bankName: "华夏银行", bankCode: 1025 },
+// 	{ bankName: "宁波银行", bankCode: 1056 },
+// 	{ bankName: "北京银行", bankCode: 4836 },
+// 	{ bankName: "上海银行", bankCode: 1024 },
+// 	{ bankName: "南京银行", bankCode: 1054 },
+// 	{ bankName: "长子县融汇村镇银行", bankCode: 475 },
+// 	{ bankName: "长沙银行", bankCode: 4216 },
+// 	{ bankName: "浙江泰隆商业银行", bankCode: 4051 },
+// 	{ bankName: "中原银行", bankCode: 4753 },
+// 	{ bankName: "企业银行(中国)", bankCode: 4761 },
+// 	{ bankName: "顺德农商银行", bankCode: 4036 },
+// 	{ bankName: "衡水银行", bankCode: 4752 },
+// 	{ bankName: "长治银行", bankCode: 4756 },
+// 	{ bankName: "大同银行", bankCode: 4767 },
+// 	{ bankName: "河南省农村信用社", bankCode: 4115 },
+// 	{ bankName: "宁夏黄河农村商业银行", bankCode: 4150 },
+// 	{ bankName: "山西省农村信用社", bankCode: 4156 },
+// 	{ bankName: "安徽省农村信用社", bankCode: 4166 },
+// 	{ bankName: "甘肃省农村信用社", bankCode: 4157 },
+// 	{ bankName: "天津农村商业银行", bankCode: 4153 },
+// 	{ bankName: "广西壮族自治区农村信用社", bankCode: 4113 },
+// 	{ bankName: "陕西省农村信用社", bankCode: 4108 },
+// 	{ bankName: "深圳农村商业银行", bankCode: 4076 },
+// 	{ bankName: "宁波鄞州农村商业银行", bankCode: 4052 },
+// 	{ bankName: "浙江省农村信用社联合社", bankCode: 4764 },
+// 	{ bankName: "江苏省农村信用社联合社", bankCode: 4217 },
+// 	{ bankName: "江苏紫金农村商业银行股份有限公司", bankCode: 4072 },
+// 	{ bankName: "北京中关村银行股份有限公司", bankCode: 4769 },
+// 	{ bankName: "星展银行(中国)有限公司", bankCode: 4778 },
+// 	{ bankName: "枣庄银行股份有限公司", bankCode: 4766 },
+// 	{ bankName: "海口联合农村商业银行股份有限公司", bankCode: 4758 },
+// 	{ bankName: "南洋商业银行(中国)有限公司", bankCode: 4763 },
+// ]);
+const form = reactive({
+	encTrueName: "",
+	encBankNo: "",
+	bankName: "",
+	bankCode: 0,
+	amount: 0,
+});
+const selectBank = (item: any) => {
+	form.bankCode = item.bankCode;
+	form.bankName = item.bankName;
+	bankVisible.value = false;
+};
+onMounted(()=>{
+	if(query.encTrueName&&query.bankCode&&query.encBankNo){
+		form.encTrueName = query.encTrueName as string
+        form.bankCode = Number(query.bankCode) 
+        form.encBankNo = query.encBankNo as string
+        form.bankName = getBankNameByCode(form.bankCode)
+
+	}
+
+})
+const onSubmit = () => {
+	// drawByBank.drawByBank
+	let submitForm = {
+		...form,
+	};
+    submitForm.amount = Number(submitForm.amount) * 100;
+	// console.log(drawByBank,"drawByBank")
+	drawByBank.value.validate(["encTrueName", "encBankNo", "bankCode","amount"]).then(() => {
+		cashOut.studentWxExtractWxwithbankdrawal(submitForm).then((res) => {
+			if (res.data.code == 200) {
+				Dialog({ title: "成功", message: "提现成功,1到3个工作日到账" });
+			} else {
+				Dialog({ title: "失败", message: "提现失败,请检查输入的值" });
+			}
+		});
+	});
+	
+};
 </script>
 
 <style lang="scss" scoped>
-.header0 {
-	background: linear-gradient(180deg, #498ef5 0%, #4da8e6 100%);
-}
-.btn1-container {
-	padding-top: 26px;
-	padding-bottom: 30px;
+.rect1 {
+	width: 100%;
+	height: 13px;
+	background: #f5f5f5;
 }
-.btn1 {
-	margin: 0 auto;
-	width: 256px;
-	border-radius: 10px;
-	background: #fff;
-	display: flex;
-	justify-content: center;
-	align-items: center;
-	align-content: center;
-	height: 55px;
-	.btn1-text {
-		font-size: 16px;
-		color: #498ef5;
-	}
-
-	img {
-		width: 31px;
-		height: 24px;
+.custom-from {
+	:deep .van-cell-group {
+		margin: 0;
 	}
 }
-.rect1{
-    width: 100%;
-    height: 13px;
-    background: #F5F5F5;
+.money {
+	width: 100%;
+	height: 152px;
+	background: #fff;
+	padding: 0px 15px;
 
+	.header {
+		font-size: 13px;
 
-}
-.list {
-	.draw {
-		width: 100%;
-		height: 63px;
-		padding-left: 29px;
-		padding-right: 29px;
-        display: flex;
-        justify-content: space-between;
-        align-items: center;
-		.draw-text1 {
-			font-size: 15px;
-			color: #333;
-            font-weight: 600;
-			font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Segoe UI, Arial, Roboto, "PingFang SC", miui, "Hiragino Sans GB", "Microsoft Yahei", sans-serif;
+		height: 44px;
+		line-height: 44px;
+		border-bottom: 1px solid #e8e8e8;
+	}
+	.mid {
+		height: 64px;
+		display: flex;
+		align-content: center;
+		align-items: center;
+		.money-input {
+			border: 0;
+			width: 250px;
 		}
-        .draw-text2{
-            font-size: 13px;
-            color: #498EF5;
-
-        }
 	}
-    .list-item{
-        width: 345px;
-        height: 65px;
-        margin: 0 auto;
-        display: flex;
-        position: relative;
-        align-content: flex-start;
-        align-items: flex-start;
-        .bank-logo{
-            width: 25px;
-            height: 25px;
-            margin-right: 8px;
-            margin-top: 19px;
-        }
-        .list-item-text1{
-            font-size: 15px;
-        }
-        .list-item-text2{
-            font-size: 13px;
-            color: #5C6066;
-        }
-        .list-item-text3{
-            position: absolute;
-            right: 0;
-            font-size: 11px;
-            color: #8A9099;
-         
-        }
-    }
+	.bottom {
+		border-top: 1px solid #e8e8e8;
+		width: 100%;
+		color: #8a9099;
+		font-size: 13px;
+		display: flex;
+		justify-content: space-between;
+		align-content: center;
+		line-height: 44px;
+		align-items: center;
+	}
 }
 </style>

+ 160 - 0
src/views/drawByBankRecord/index.vue

@@ -0,0 +1,160 @@
+<template>
+	<div class="">
+		<div class="header0">
+			<m-nav-bar :transparent="true" title="提现记录" style="color: #ffffff" />
+			<div class="btn1-container">
+				<div @click="()=>{
+					push('/drawByBank')
+					}" class="btn1">
+					<img class="" src="@/assets/img/提现到银行卡.png" />
+					<span class="btn1-text">提现到银行卡</span>
+				</div>
+			</div>
+		</div>
+		<div class="rect1"></div>
+		<div class="list">
+			<div class="draw">
+				<span class="draw-text1">最近提现·一点即提</span>
+				<span class="draw-text2">查看全部</span>
+			</div>
+			<div @click="()=>{
+				push({
+					name:'drawByBank',
+					query:{
+						encBankNo:item.encBankNo,
+						encTrueName:item.encTrueName,
+						bankCode:item.bankCode
+
+					}
+				})
+				}" v-for="(item,index) in wxBankCardList" class="list-item" :key="index">
+				<img src="@/assets/img/招行.png" class="bank-logo" />
+				<div>
+					<div class="list-item-text1">{{item.encTrueName}}</div>
+					<div class="list-item-text2">{{getBankNameByCode(item.bankCode)}}({{item.encBankNo}})</div>
+				</div>
+				<div class="list-item-text3">{{item.createTime}}</div>
+			</div>
+		</div>
+	</div>
+</template>
+
+<script setup lang="ts">
+import { cashOut } from "@/api";
+import { ref,onMounted } from "vue";
+import { useRouter } from "vue-router";
+import { useWxBank } from "@/hooks/bank/wxBank"
+
+const query = useRouter().currentRoute.value.query
+const wxBankCardList = ref([{}])
+const { wxBankList,getBankNameByCode } = useWxBank()
+const push = useRouter().push
+const getWxBankList = () => {
+	cashOut
+		.studentWxBankList({
+			pageNum: 1,
+			pageSize: 50,
+		})
+		.then((res) => {
+			wxBankCardList.value = res.data.rows;
+            console.log(res.data.rows)
+		});
+    
+};
+onMounted(()=>{
+	if(query){
+
+	}
+
+})
+getWxBankList()
+</script>
+
+<style lang="scss" scoped>
+.header0 {
+	background: linear-gradient(180deg, #498ef5 0%, #4da8e6 100%);
+}
+.btn1-container {
+	padding-top: 26px;
+	padding-bottom: 30px;
+}
+.btn1 {
+	margin: 0 auto;
+	width: 256px;
+	border-radius: 10px;
+	background: #fff;
+	display: flex;
+	justify-content: center;
+	align-items: center;
+	align-content: center;
+	height: 55px;
+	.btn1-text {
+		font-size: 16px;
+		color: #498ef5;
+	}
+
+	img {
+		width: 31px;
+		height: 24px;
+		margin-right: 8px;
+	}
+}
+.rect1 {
+	width: 100%;
+	height: 13px;
+	background: #f5f5f5;
+}
+.list {
+	.draw {
+		width: 100%;
+		height: 63px;
+		padding-left: 29px;
+		padding-right: 29px;
+		display: flex;
+		justify-content: space-between;
+		align-items: center;
+		.draw-text1 {
+			font-size: 15px;
+			color: #333;
+			font-weight: 600;
+			font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Segoe UI, Arial, Roboto, "PingFang SC", miui, "Hiragino Sans GB", "Microsoft Yahei", sans-serif;
+		}
+		.draw-text2 {
+			font-size: 13px;
+			color: #498ef5;
+		}
+	}
+	.list-item {
+		width: 345px;
+		height: 65px;
+		margin: 0 auto;
+		display: flex;
+		position: relative;
+		align-content: flex-start;
+		align-items: flex-start;
+		border-bottom: 1px solid #e8e8e8;
+		.bank-logo {
+			width: 25px;
+			height: 25px;
+			margin-right: 8px;
+			margin-top: 19px;
+			// opacity: 0;
+		}
+		.list-item-text1 {
+			font-size: 15px;
+			margin-top: 11px;
+		}
+		.list-item-text2 {
+			font-size: 13px;
+			color: #5c6066;
+		}
+		.list-item-text3 {
+			position: absolute;
+			right: 0;
+			font-size: 11px;
+			color: #8a9099;
+			top: 15px;
+		}
+	}
+}
+</style>

+ 27 - 27
src/views/home/children/user/index.vue

@@ -1,11 +1,11 @@
 <template>
 	<div class="user">
-		<van-cell label="" is-link center @click="showVConsole">
+		<van-cell label="" center @click="showVConsole">
 			<template #icon>
 				<m-user-avatar class="user-avatar" />
 			</template>
 			<template #title>
-				<m-user-name />
+				<m-user-name :showSchoolName="true" />
 			</template>
 		</van-cell>
 		<van-cell-group class="group">
@@ -41,37 +41,37 @@
 </template>
 
 <script lang="ts">
-	import { useExpireTime, RouterBus } from "@/hooks";
-	import VConsole from "vconsole";
+import { useExpireTime, RouterBus } from "@/hooks";
+import VConsole from "vconsole";
 </script>
 
 <script lang="ts" setup>
-	const { expireTime } = useExpireTime();
-	const { goBuyVip, goCashOut, goMyBranch, goMyIntegral } = new RouterBus();
-	let doubleClickNumber = 0;
-	const showVConsole = () => {
-		if (doubleClickNumber !== 9) {
-			doubleClickNumber = (doubleClickNumber + 1) % 10;
-		} else {
-			new VConsole();
-		}
-	};
+const { expireTime } = useExpireTime();
+const { goBuyVip, goCashOut, goMyBranch, goMyIntegral } = new RouterBus();
+let doubleClickNumber = 0;
+const showVConsole = () => {
+	if (doubleClickNumber !== 9) {
+		doubleClickNumber = (doubleClickNumber + 1) % 10;
+	} else {
+		new VConsole();
+	}
+};
 </script>
 
 <style scoped lang="scss">
-	.user {
-		background-color: #f2f3f5;
-		/* height: 100vh; */
-		.group {
-			margin: 10px 0;
-		}
-		.user-avatar {
-			width: 46px;
-			height: 46px;
-			margin-right: 10px;
-		}
+.user {
+	background-color: #f2f3f5;
+	/* height: 100vh; */
+	.group {
+		margin: 10px 0;
 	}
-	.cell-icon {
-		margin-right: 5px;
+	.user-avatar {
+		width: 46px;
+		height: 46px;
+		margin-right: 10px;
 	}
+}
+.cell-icon {
+	margin-right: 5px;
+}
 </style>