lalala 6 tahun lalu
induk
melakukan
d3034fe38d

+ 11 - 11
admin-update/src/mock/userInfo.js

@@ -477,17 +477,17 @@ let menu = {
 			viewPath: 'views/my-invite/index.vue',
 			keepAlive: 1
 		},
-		{
-			id: '12',
-			parentId: null,
-			name: '收入明细',
-			type: 1,
-			icon: 'iconkehuguanli',
-			orderNum: 12,
-			router: '/admin/assets/list',
-			viewPath: 'views/assets/list.vue',
-			keepAlive: 1
-		},
+		// {
+		// 	id: '12',
+		// 	parentId: null,
+		// 	name: '收入明细',
+		// 	type: 1,
+		// 	icon: 'iconkehuguanli',
+		// 	orderNum: 12,
+		// 	router: '/admin/assets/list',
+		// 	viewPath: 'views/assets/list.vue',
+		// 	keepAlive: 1
+		// },
 		// ========================================================
 		{
 			id: '13',

+ 48 - 0
admin-update/src/utils/util.js

@@ -1,3 +1,5 @@
+// import router from '@/router';
+import router from '@/router';
 // 是否为空
 const isEmpty = val => {
 	if (val instanceof Array) {
@@ -26,6 +28,51 @@ const getShortUrl = url => {
 	return url.substring(startIndex, endIndex) + '.' + urlArr[urlArr.length - 1];
 };
 
+/** *
+ * 全局公共按钮跳转
+ * @parmas item.funtion 为可执行函数
+ * @parmas item.url 为跳转的路径
+ * @parmas item.query 为跳转携带的参数
+ * @parmas item.type 为跳转调用的函数 1为navigateTo, 2为redirectTo, 3为reLaunch, 4为switchTab
+ */
+export const pageTo = item => {
+	if (isNumber(item)) {
+		// uni.navigateBack({
+		// 	delta: item
+		// })
+	}
+	if (isString(item)) {
+		router.push({
+			path: item
+		});
+		return false;
+	}
+	if (item.funtion) {
+		item.funtion();
+	}
+	if (item.url) {
+		let query = item.query ? parse(item.query) : '';
+		let allUrl = `${item.url}${query}`;
+		if (item.type == 2) {
+			router.replace({
+				path: allUrl
+			});
+		} else if (item.type == 3) {
+			// uni.reLaunch({
+			// 	url: allUrl
+			// });
+		} else if (item.type == 4) {
+			// uni.switchTab({
+			// 	url: allUrl
+			// });
+		} else {
+			router.push({
+				path: allUrl
+			});
+		}
+	}
+};
+
 // 是否为数组
 const isArray = arr => {
 	return typeof arr == 'object' && arr.constructor == Array;
@@ -141,6 +188,7 @@ export const $formatDate = (num, fmt = 'YYYY-MM-DD HH:mm', all) => {
 export default {
 	isEmpty,
 	parse,
+	pageTo,
 	$checkName,
 	$formatDate,
 	getShortUrl

+ 41 - 19
admin-update/src/views/home.vue

@@ -2,7 +2,12 @@
 	<div class="home">
 		<!-- total -->
 		<div class="card-statistics">
-			<div class="card block" v-for="(item, index) in totalData" :key="index">
+			<div
+				class="card block"
+				v-for="(item, index) in totalData"
+				:key="index"
+				@click="$util.pageTo(item)"
+			>
 				<div class="val">
 					<div class="left">
 						<i :class="item.icon"></i>
@@ -20,7 +25,12 @@
 			<div class="card-title">待处理事务</div>
 			<div class="card-body">
 				<div class="pending-list-wrap">
-					<div class="list" v-for="(item, index) in pendingData" :key="index">
+					<div
+						class="list"
+						v-for="(item, index) in pendingData"
+						:key="index"
+						@click="$util.pageTo(item)"
+					>
 						<span>{{ item.name }}</span>
 						<span>{{ item.val }}</span>
 					</div>
@@ -32,7 +42,12 @@
 			<div class="card-title">运营快捷入口</div>
 			<div class="card-body">
 				<div class="entry-list-wrap">
-					<div class="list" v-for="(item, index) in entryData" :key="index">
+					<div
+						class="list"
+						v-for="(item, index) in entryData"
+						:key="index"
+						@click="$util.pageTo(item)"
+					>
 						<div class="icon-wrap">
 							<i class="iconfont" :class="[item.icon]"></i>
 						</div>
@@ -130,7 +145,8 @@ export default {
 				{
 					name: '今日收入',
 					icon: 'el-icon-s-marketing',
-					val: '¥0.00'
+					val: '¥0.00',
+					url: '/admin/assets/list'
 				},
 				{
 					name: '今日订单',
@@ -152,27 +168,33 @@ export default {
 			pendingData: [
 				{
 					name: '待付款订单',
-					val: 0
+					val: 0,
+					url: '/order/list'
 				},
 				{
 					name: '配送中订单',
-					val: 0
+					val: 0,
+					url: '/order/list'
 				},
 				{
 					name: '已完结订单',
-					val: 0
+					val: 0,
+					url: '/order/list'
 				},
 				{
 					name: '待配送订单',
-					val: 0
+					val: 0,
+					url: '/order/list'
 				},
 				{
 					name: '待通知订单',
-					val: 0
+					val: 0,
+					url: '/order/list'
 				},
 				{
 					name: '全部订单',
-					val: 0
+					val: 0,
+					url: '/order/list'
 				}
 			],
 			// 快捷入口
@@ -180,42 +202,42 @@ export default {
 				{
 					name: '发货',
 					icon: 'icondingdanguanli',
-					path: ''
+					url: ''
 				},
 				{
 					name: '订单管理',
 					icon: 'icondingdanguanli',
-					path: '/order/list'
+					url: '/order/list'
 				},
 				{
 					name: '添加图库',
 					icon: 'iconshangpinguanli',
-					path: 'goods/img-store'
+					url: 'goods/img-store'
 				},
 				{
 					name: '客户管理',
 					icon: 'iconkehuguanli',
-					path: 'member/list'
+					url: 'member/list'
 				},
 				{
 					name: '添加商品',
 					icon: 'icontupiantianjia',
-					path: 'goods/add'
+					url: 'goods/add'
 				},
 				{
 					name: '商品管理',
 					icon: 'iconshangpinguanli',
-					path: 'goods/list'
+					url: 'goods/list'
 				},
 				{
 					name: '邀请有礼',
 					icon: 'iconyaoqingyouli',
-					path: 'invite/list'
+					url: 'invite/list'
 				},
 				{
 					name: '广告管理',
 					icon: 'iconguanggao',
-					path: 'ad/list'
+					url: 'ad/list'
 				}
 				// {
 				// 	name: '拼团管理',
@@ -316,7 +338,7 @@ export default {
 		},
 		initChart() {
 			this.$refs.incomeEchart.initChart();
-			this.$refs.visitorEchart.initChart();
+			// this.$refs.visitorEchart.initChart();
 		},
 		noticeFn(item) {
 			window.open(item.url);

+ 15 - 0
admin-update/src/views/member/list.vue

@@ -26,6 +26,14 @@
 				></cl-avatar>
 			</template>
 
+			<template #table-column-userName="{scope}">
+				<div class="user-name-warp">
+					<i v-if="scope.row.source == 0" class="iconfont iconweixinlaiyuan"></i>
+					<i v-if="scope.row.source == 1" class="iconfont iconzhifubao"></i>
+					<span>{{ scope.row.userName }}</span>
+				</div>
+			</template>
+
 			<template #table-column-balance="{scope}">
 				<span>{{ scope.row.userAsset.balance }}</span>
 			</template>
@@ -478,6 +486,13 @@ export default {
 </script>
 
 <style lang="scss" scoped>
+.user-name-warp {
+	display: flex;
+	align-items: center;
+	span {
+		margin-left: 6px;
+	}
+}
 .recharge-modal-content {
 	@include disFlex(center, space-around);
 	.card-name {