|
@@ -6,13 +6,13 @@
|
|
|
统计数据
|
|
|
</el-col>
|
|
|
<el-col :span="24" class="left">
|
|
|
- <el-col class="box" :span="5">
|
|
|
- <el-col :span="24" class="four one">
|
|
|
- <p>企业注册数量</p>
|
|
|
- <p>{{ detail.num1 }}</p>
|
|
|
+ <el-col class="list" :span="5" v-for="(item, index) in list" :key="index">
|
|
|
+ <el-col :span="24" class="one">
|
|
|
+ <p>{{ item.name }}</p>
|
|
|
+ <p>{{ item.value }}</p>
|
|
|
</el-col>
|
|
|
</el-col>
|
|
|
- <el-col class="box" :span="5">
|
|
|
+ <!-- <el-col class="box" :span="5">
|
|
|
<el-col :span="24" class="two one">
|
|
|
<p>个人注册数量</p>
|
|
|
<p>{{ detail.num2 }}</p>
|
|
@@ -53,7 +53,7 @@
|
|
|
<p>对接完成</p>
|
|
|
<p>{{ transaction3 }}</p>
|
|
|
</el-col>
|
|
|
- </el-col>
|
|
|
+ </el-col> -->
|
|
|
</el-col>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -62,61 +62,25 @@
|
|
|
|
|
|
<script>
|
|
|
import { mapState, mapActions, createNamespacedHelpers } from 'vuex';
|
|
|
-const { mapActions: users } = createNamespacedHelpers('users');
|
|
|
-const { mapActions: expertsuser } = createNamespacedHelpers('expertsuser');
|
|
|
-const { mapActions: marketproduct } = createNamespacedHelpers('marketproduct');
|
|
|
-const { mapActions: transaction } = createNamespacedHelpers('transaction');
|
|
|
-const { mapActions: survey } = createNamespacedHelpers('survey');
|
|
|
+const { mapActions: count } = createNamespacedHelpers('count');
|
|
|
export default {
|
|
|
name: 'userTwo',
|
|
|
props: {},
|
|
|
components: {},
|
|
|
data: () => ({
|
|
|
- dynamic1: require('@/assets/dynamic1.png'),
|
|
|
- dynamic2: require('@/assets/dynamic2.png'),
|
|
|
- dynamic3: require('@/assets/dynamic3.png'),
|
|
|
- dynamic4: require('@/assets/dynamic4.png'),
|
|
|
- transaction1: '',
|
|
|
- transaction2: '',
|
|
|
- transaction3: '',
|
|
|
- detail: {
|
|
|
- num1: 0,
|
|
|
- num2: 0,
|
|
|
- num3: 0,
|
|
|
- num4: 0,
|
|
|
- num5: 0,
|
|
|
- },
|
|
|
+ list: [],
|
|
|
loading: true,
|
|
|
}),
|
|
|
created() {
|
|
|
this.searchInfo();
|
|
|
},
|
|
|
methods: {
|
|
|
- ...users({ userQuery: 'query' }),
|
|
|
- ...expertsuser({ expertsuserQurty: 'query' }),
|
|
|
- ...marketproduct({ marketproductQuery: 'query' }),
|
|
|
- ...transaction({ transactionQuery: 'query' }),
|
|
|
- ...survey({ surveyquery: 'query' }),
|
|
|
+ ...count(['circleQuery']),
|
|
|
async searchInfo({} = {}) {
|
|
|
- // 个人,企业
|
|
|
- let res = await this.userQuery();
|
|
|
- let s1 = res.data.filter(f => f.role == '4');
|
|
|
- let s2 = res.data.filter(f => f.role == '5');
|
|
|
- // 专家
|
|
|
- let exportNum = await this.expertsuserQurty();
|
|
|
- // 发布需求
|
|
|
- let productNum = await this.marketproductQuery({ status: 1 });
|
|
|
- // 在线咨询
|
|
|
- let zxzx = await this.surveyquery();
|
|
|
- let listData = { num1: s2.length, num2: s1.length, num3: exportNum.data.length, num4: productNum.data.length, num5: zxzx.total };
|
|
|
- this.$set(this, `detail`, listData);
|
|
|
- //交易
|
|
|
- let transaction1 = await this.transactionQuery({ status: 0 });
|
|
|
- let transaction2 = await this.transactionQuery({ status: 1 });
|
|
|
- let transaction3 = await this.transactionQuery({ status: 2 });
|
|
|
- this.$set(this, `transaction1`, transaction1.total);
|
|
|
- this.$set(this, `transaction2`, transaction2.total);
|
|
|
- this.$set(this, `transaction3`, transaction3.total);
|
|
|
+ let res = await this.circleQuery();
|
|
|
+ if (this.$checkRes(res)) {
|
|
|
+ this.$set(this, `list`, res.data);
|
|
|
+ }
|
|
|
this.loading = false;
|
|
|
},
|
|
|
},
|
|
@@ -149,44 +113,56 @@ export default {
|
|
|
.right {
|
|
|
float: right;
|
|
|
}
|
|
|
-.box {
|
|
|
+.list {
|
|
|
overflow: hidden;
|
|
|
border-radius: 10px;
|
|
|
box-shadow: 0 0 5px #ccc;
|
|
|
padding: 10px;
|
|
|
margin: 30px 5px 30px 14px;
|
|
|
+ .one {
|
|
|
+ height: 110px;
|
|
|
+ p {
|
|
|
+ font-size: 22px;
|
|
|
+ color: #346da4;
|
|
|
+ font-weight: bold;
|
|
|
+ text-align: center;
|
|
|
+ }
|
|
|
+ p:first-child {
|
|
|
+ padding: 40px 0 0 0;
|
|
|
+ font-size: 12px;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
-.one {
|
|
|
+.list:nth-child(1) .one {
|
|
|
+ background: url('~@/assets/dynamic4.png') no-repeat;
|
|
|
+ background-size: 100% 100%;
|
|
|
+}
|
|
|
+.list:nth-child(2) .one {
|
|
|
background: url('~@/assets/dynamic1.png') no-repeat;
|
|
|
background-size: 100% 100%;
|
|
|
- // height: 150px;
|
|
|
- height: 110px;
|
|
|
}
|
|
|
-.one p {
|
|
|
- font-size: 22px;
|
|
|
- color: #346da4;
|
|
|
- font-weight: bold;
|
|
|
- text-align: center;
|
|
|
+.list:nth-child(3) .one {
|
|
|
+ background: url(../../../assets/dynamic3.png) no-repeat;
|
|
|
+ background-size: 100% 100%;
|
|
|
}
|
|
|
-.one p:first-child {
|
|
|
- // padding: 60px 0 0 0;
|
|
|
- padding: 40px 0 0 0;
|
|
|
- font-size: 12px;
|
|
|
+.list:nth-child(4) .one {
|
|
|
+ background: url(../../../assets/dynamic2.png) no-repeat;
|
|
|
+ background-size: 100% 100%;
|
|
|
}
|
|
|
-.two {
|
|
|
- background: url('~@/assets/dynamic1.png') no-repeat;
|
|
|
+.list:nth-child(5) .one {
|
|
|
+ background: url(../../../assets/dynamic2.png) no-repeat;
|
|
|
background-size: 100% 100%;
|
|
|
}
|
|
|
-.three {
|
|
|
+.list:nth-child(6) .one {
|
|
|
background: url(../../../assets/dynamic3.png) no-repeat;
|
|
|
background-size: 100% 100%;
|
|
|
}
|
|
|
-.four {
|
|
|
- background: url(../../../assets/dynamic4.png) no-repeat;
|
|
|
+.list:nth-child(7) .one {
|
|
|
+ background: url(../../../assets/dynamic1.png) no-repeat;
|
|
|
background-size: 100% 100%;
|
|
|
}
|
|
|
-.five {
|
|
|
- background: url(../../../assets/dynamic2.png) no-repeat;
|
|
|
+.list:nth-child(8) .one {
|
|
|
+ background: url(../../../assets/dynamic4.png) no-repeat;
|
|
|
background-size: 100% 100%;
|
|
|
}
|
|
|
</style>
|