用户画像模型页面
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1.9 KiB |
|
After Width: | Height: | Size: 597 B |
|
After Width: | Height: | Size: 497 B |
|
After Width: | Height: | Size: 655 B |
|
After Width: | Height: | Size: 335 B |
|
After Width: | Height: | Size: 328 B |
|
After Width: | Height: | Size: 580 B |
|
After Width: | Height: | Size: 456 B |
|
After Width: | Height: | Size: 543 B |
|
After Width: | Height: | Size: 521 B |
|
After Width: | Height: | Size: 567 B |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 788 B |
|
After Width: | Height: | Size: 382 B |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 973 B |
@ -0,0 +1,35 @@
|
|||||||
|
<template>
|
||||||
|
<div class="main-content">
|
||||||
|
<el-scrollbar height="680px">
|
||||||
|
<component :is="currentComponent" ref="content"></component>
|
||||||
|
</el-scrollbar>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script setup>
|
||||||
|
const props = defineProps({
|
||||||
|
currentComponent: {
|
||||||
|
type: Object,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
const content = ref(null);
|
||||||
|
const consumerLeft = () => {
|
||||||
|
content.value.consumer();
|
||||||
|
};
|
||||||
|
const resLeft = () => {
|
||||||
|
content.value.practicalTraining();
|
||||||
|
};
|
||||||
|
const submitDataLeft = () => {
|
||||||
|
content.value.submitData();
|
||||||
|
};
|
||||||
|
defineExpose({
|
||||||
|
consumerLeft,
|
||||||
|
resLeft,
|
||||||
|
submitDataLeft,
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.main-content {
|
||||||
|
width: calc(100% - 60px);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -0,0 +1,9 @@
|
|||||||
|
<template>
|
||||||
|
<div class="content">
|
||||||
|
帕累托/ABC分析
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup></script>
|
||||||
|
|
||||||
|
<style scoped lang="scss"></style>
|
||||||
@ -0,0 +1,440 @@
|
|||||||
|
<template>
|
||||||
|
<div class="content">
|
||||||
|
<div class="tabList">
|
||||||
|
<div
|
||||||
|
class="tabs"
|
||||||
|
v-for="item in tabList"
|
||||||
|
:key="item.id"
|
||||||
|
@click="changeTab(item)"
|
||||||
|
>
|
||||||
|
<div style="display: flex; align-items: center">
|
||||||
|
<img :src="item.backImg" alt="" />
|
||||||
|
<span>{{ item.title }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="container" v-if="menuIndex != 0">
|
||||||
|
<div class="leftContent">
|
||||||
|
<div class="title">
|
||||||
|
<img src="@/assets/images/图标1.png" alt="" />
|
||||||
|
<span>内置表</span>
|
||||||
|
</div>
|
||||||
|
<el-menu
|
||||||
|
default-active="1"
|
||||||
|
@open="handleOpen"
|
||||||
|
@close="handleClose"
|
||||||
|
@select="handleChange"
|
||||||
|
background-color="#041C49"
|
||||||
|
style="border-right: none"
|
||||||
|
active-text-color="#ffffff"
|
||||||
|
text-color="#9BD1FF"
|
||||||
|
>
|
||||||
|
<el-menu-item index="1">
|
||||||
|
<span>用户属性表</span>
|
||||||
|
</el-menu-item>
|
||||||
|
<el-menu-item index="2">
|
||||||
|
<span>用户登录活跃表</span>
|
||||||
|
</el-menu-item>
|
||||||
|
<el-menu-item index="3">
|
||||||
|
<span>用户消费能力表</span>
|
||||||
|
</el-menu-item>
|
||||||
|
<el-menu-item index="4">
|
||||||
|
<span>用户行为表</span>
|
||||||
|
</el-menu-item>
|
||||||
|
<el-menu-item index="5">
|
||||||
|
<span>用户评论表</span>
|
||||||
|
</el-menu-item>
|
||||||
|
</el-menu>
|
||||||
|
</div>
|
||||||
|
<div class="table">
|
||||||
|
<el-table
|
||||||
|
v-if="menuIndex == 1"
|
||||||
|
:data="fileTable"
|
||||||
|
style="width: 1350px"
|
||||||
|
:header-cell-style="{
|
||||||
|
color: '#fff',
|
||||||
|
fontSize: '14px',
|
||||||
|
background: `linear-gradient(0deg, #002651 0%, #0087F9 100%)`,
|
||||||
|
}"
|
||||||
|
>
|
||||||
|
<el-table-column label="用户ID" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="登录名" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="用户姓名" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="学号" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="班级" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="专业" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="学校" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="角色名称" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="角色性别" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="角色年龄" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="注册时间" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="所在地" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<el-table
|
||||||
|
v-if="menuIndex == 2"
|
||||||
|
:data="fileTable"
|
||||||
|
style="width: 1350px"
|
||||||
|
:header-cell-style="{
|
||||||
|
color: '#fff',
|
||||||
|
fontSize: '14px',
|
||||||
|
background: `linear-gradient(0deg, #002651 0%, #0087F9 100%)`,
|
||||||
|
}"
|
||||||
|
>
|
||||||
|
<el-table-column label="用户ID" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="登录名" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="用户姓名" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="学号" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="班级" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="专业" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="学校" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="角色名称" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="常登录地" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="最近登录日期" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="登录频次" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="登录时长" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<el-table
|
||||||
|
v-if="menuIndex == 3"
|
||||||
|
:data="fileTable"
|
||||||
|
style="width: 1350px"
|
||||||
|
:header-cell-style="{
|
||||||
|
color: '#fff',
|
||||||
|
fontSize: '14px',
|
||||||
|
background: `linear-gradient(0deg, #002651 0%, #0087F9 100%)`,
|
||||||
|
}"
|
||||||
|
>
|
||||||
|
<el-table-column label="用户ID" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="登录名" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="用户姓名" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="学号" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="班级" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="专业" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="学校" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="角色名称" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="消费商品小类"
|
||||||
|
align="center"
|
||||||
|
prop="a1"
|
||||||
|
width="110"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="消费商品类型"
|
||||||
|
align="center"
|
||||||
|
prop="a1"
|
||||||
|
width="110"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="累计消费金额"
|
||||||
|
align="center"
|
||||||
|
prop="a1"
|
||||||
|
width="110"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="累计消费次数"
|
||||||
|
align="center"
|
||||||
|
prop="a1"
|
||||||
|
width="110"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="近七天消费金额"
|
||||||
|
align="center"
|
||||||
|
prop="a1"
|
||||||
|
width="130"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="近七天消费次数"
|
||||||
|
align="center"
|
||||||
|
prop="a1"
|
||||||
|
width="130"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="最近消费时间"
|
||||||
|
align="center"
|
||||||
|
prop="a1"
|
||||||
|
width="110"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<el-table
|
||||||
|
v-if="menuIndex == 4"
|
||||||
|
:data="fileTable"
|
||||||
|
style="width: 1350px"
|
||||||
|
:header-cell-style="{
|
||||||
|
color: '#fff',
|
||||||
|
fontSize: '14px',
|
||||||
|
background: `linear-gradient(0deg, #002651 0%, #0087F9 100%)`,
|
||||||
|
}"
|
||||||
|
>
|
||||||
|
<el-table-column label="用户ID" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="登录名" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="用户姓名" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="学号" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="班级" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="专业" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="学校" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="角色名称" align="center" prop="a1">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="商品名称"
|
||||||
|
align="center"
|
||||||
|
prop="a1"
|
||||||
|
width="110"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="商品小类"
|
||||||
|
align="center"
|
||||||
|
prop="a1"
|
||||||
|
width="110"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="商品类型"
|
||||||
|
align="center"
|
||||||
|
prop="a1"
|
||||||
|
width="110"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="用户行为类型"
|
||||||
|
align="center"
|
||||||
|
prop="a1"
|
||||||
|
width="110"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="行为日期"
|
||||||
|
align="center"
|
||||||
|
prop="a1"
|
||||||
|
width="130"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<main-content
|
||||||
|
v-if="menuIndex == 0"
|
||||||
|
:currentComponent="currentComponent"
|
||||||
|
></main-content>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import mainContent from "@/views/components/mainContent.vue";
|
||||||
|
import rfmAnalysis from "./components/rfmAnalysis.vue";
|
||||||
|
import abcAnalysis from "./components/abcAnalysis.vue";
|
||||||
|
const currentComponent = ref(null);
|
||||||
|
const menuIndex = ref(1);
|
||||||
|
const tabIndex = ref(0);
|
||||||
|
const fileTable = ref([
|
||||||
|
{
|
||||||
|
a1: "666",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
a1: "111",
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
const tabList = ref([
|
||||||
|
{
|
||||||
|
id: "1",
|
||||||
|
key: rfmAnalysis,
|
||||||
|
title: "RFM分析",
|
||||||
|
backImg: "src/assets/images/icon1.png",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "2",
|
||||||
|
key: abcAnalysis,
|
||||||
|
title: "帕累托/ABC分析",
|
||||||
|
backImg: "src/assets/images/icon2.png",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "3",
|
||||||
|
title: "波士顿矩阵分析",
|
||||||
|
backImg: "src/assets/images/icon3.png",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "4",
|
||||||
|
title: "转化分析-漏斗模型",
|
||||||
|
backImg: "src/assets/images/icon4.png",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "5",
|
||||||
|
title: "购物篮分析",
|
||||||
|
backImg: "src/assets/images/icon5.png",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "6",
|
||||||
|
title: "复购分析",
|
||||||
|
backImg: "src/assets/images/icon6.png",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "7",
|
||||||
|
title: "留存分析",
|
||||||
|
backImg: "src/assets/images/icon7.png",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "8",
|
||||||
|
title: "用户粘性分析",
|
||||||
|
backImg: "src/assets/images/icon8.png",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "9",
|
||||||
|
title: "AARRR用户运营分析",
|
||||||
|
backImg: "src/assets/images/icon9.png",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "10",
|
||||||
|
title: "用户画像分析",
|
||||||
|
backImg: "src/assets/images/icon10.png",
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
const handleChange = (index) => {
|
||||||
|
console.log(index);
|
||||||
|
menuIndex.value = index;
|
||||||
|
};
|
||||||
|
const changeTab = (item) => {
|
||||||
|
currentComponent.value = item.key;
|
||||||
|
menuIndex.value = 0;
|
||||||
|
// tabIndex = item.id;
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.content {
|
||||||
|
color: #fff;
|
||||||
|
.tabList {
|
||||||
|
// display: flex;
|
||||||
|
width: 1060px;
|
||||||
|
.tabs {
|
||||||
|
cursor: pointer;
|
||||||
|
font-size: 14px;
|
||||||
|
margin-right: 20px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
width: 188px;
|
||||||
|
height: 61px;
|
||||||
|
background-image: url("@/assets/images/itembg1.png");
|
||||||
|
// display: flex;
|
||||||
|
// justify-content: center;
|
||||||
|
// align-items: center;
|
||||||
|
padding-left: 30px;
|
||||||
|
line-height: 60px;
|
||||||
|
display: inline-block;
|
||||||
|
img {
|
||||||
|
margin-right: 15px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.tabs:nth-of-type(2),
|
||||||
|
.tabs:nth-of-type(9) {
|
||||||
|
background-image: url("@/assets/images/itembg2.png");
|
||||||
|
}
|
||||||
|
.tabs:nth-of-type(3),
|
||||||
|
.tabs:nth-of-type(10) {
|
||||||
|
background-image: url("@/assets/images/itembg3.png");
|
||||||
|
}
|
||||||
|
.tabs:nth-of-type(4),
|
||||||
|
.tabs:nth-of-type(6) {
|
||||||
|
background-image: url("@/assets/images/itembg4.png");
|
||||||
|
}
|
||||||
|
.tabs:nth-of-type(5),
|
||||||
|
.tabs:nth-of-type(7) {
|
||||||
|
background-image: url("@/assets/images/itembg5.png");
|
||||||
|
}
|
||||||
|
.tabs:nth-of-type(8) {
|
||||||
|
background-image: url("@/assets/images/itembg1.png");
|
||||||
|
}
|
||||||
|
.tabs:nth-of-type(4),
|
||||||
|
.tabs:nth-of-type(9) {
|
||||||
|
padding-left: 20px;
|
||||||
|
img {
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.container {
|
||||||
|
display: flex;
|
||||||
|
.leftContent {
|
||||||
|
width: 205px;
|
||||||
|
height: 691px;
|
||||||
|
background: #041c49;
|
||||||
|
border: 1px solid #063373;
|
||||||
|
.title {
|
||||||
|
padding-left: 10px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 18px;
|
||||||
|
color: #3596eb;
|
||||||
|
font-weight: bold;
|
||||||
|
height: 50px;
|
||||||
|
border-bottom: 1px solid #063373;
|
||||||
|
span {
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.el-menu-item {
|
||||||
|
padding-left: 40px;
|
||||||
|
height: 40px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.table {
|
||||||
|
margin-left: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.el-menu-item.is-active {
|
||||||
|
// color: var(--el-menu-active-color);
|
||||||
|
background-color: #1983dd !important;
|
||||||
|
}
|
||||||
|
::v-deep .el-table tr {
|
||||||
|
background-color: #002652 !important;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
::v-deep .el-table--enable-row-hover .el-table__body tr:hover > td {
|
||||||
|
background-color: #0077dd !important;
|
||||||
|
/* color: #fff; */
|
||||||
|
}
|
||||||
|
</style>
|
||||||