wolyshaw 4 роки тому
батько
коміт
b74ec40769

+ 14 - 9
src/views/main/baseinfo/business.vue

@@ -2,7 +2,12 @@
   <el-card header="业务数据">
     <statistic class="statistic" :cols="0">
       <statistic-item v-for="(item, key) in items" :key="key" :class="{active: active === key}" @click="active = key">
-        <span>{{item.title}}</span>
+        <span>
+          {{item.title}}
+          <el-tooltip v-if="item.desc" :content="item.desc" :open-delay=".3" placement="top">
+            <i style="margin-left: 5px;cursor: pointer;" class="el-icon-warning-outline"/>
+          </el-tooltip>
+        </span>
         <span>
           <count-to :endVal="item.percent" :decimals="2"/>%
         </span>
@@ -58,12 +63,12 @@ export default {
 }
 </script>
 <style lang="less" scoped>
-  .statistic{
-    /deep/ .statistic-content{
-      cursor: pointer;
-      &.active > span{
-        color: #14928a !important;
-      }
-    }
-  }
+  // .statistic{
+  //   /deep/ .statistic-content{
+  //     cursor: pointer;
+  //     &.active > span{
+  //       color: #14928a !important;
+  //     }
+  //   }
+  // }
 </style>

+ 14 - 9
src/views/main/baseinfo/curriculum.vue

@@ -2,7 +2,12 @@
   <el-card header="课程数据">
     <statistic class="statistic" :cols="0">
       <statistic-item v-for="(item, key) in items" :key="key" :class="{active: active === key}" @click="active = key">
-        <span>{{item.title}}</span>
+        <span>
+          {{item.title}}
+          <el-tooltip v-if="item.desc" :content="item.desc" :open-delay=".3" placement="top">
+            <i style="margin-left: 5px;cursor: pointer;" class="el-icon-warning-outline"/>
+          </el-tooltip>
+        </span>
         <span>
           <count-to :endVal="item.percent"/>
         </span>
@@ -57,12 +62,12 @@ export default {
 }
 </script>
 <style lang="less" scoped>
-  .statistic{
-    /deep/ .statistic-content{
-      cursor: pointer;
-      &.active > span{
-        color: #14928a !important;
-      }
-    }
-  }
+  // .statistic{
+  //   /deep/ .statistic-content{
+  //     cursor: pointer;
+  //     &.active > span{
+  //       color: #14928a !important;
+  //     }
+  //   }
+  // }
 </style>

+ 14 - 9
src/views/main/baseinfo/hr.vue

@@ -2,7 +2,12 @@
   <el-card header="人事数据">
     <statistic class="statistic" :cols="0">
       <statistic-item v-for="(item, key) in items" :key="key" :class="{active: active === key}" @click="active = key">
-        <span>{{item.title}}</span>
+        <span>
+          {{item.title}}
+          <el-tooltip v-if="item.desc" :content="item.desc" :open-delay=".3" placement="top">
+            <i style="margin-left: 5px;cursor: pointer;" class="el-icon-warning-outline"/>
+          </el-tooltip>
+        </span>
         <span>
           <count-to :endVal="item.percent"/>
         </span>
@@ -58,12 +63,12 @@ export default {
 }
 </script>
 <style lang="less" scoped>
-  .statistic{
-    /deep/ .statistic-content{
-      cursor: pointer;
-      &.active > span{
-        color: #14928a !important;
-      }
-    }
-  }
+  // .statistic{
+  //   /deep/ .statistic-content{
+  //     cursor: pointer;
+  //     &.active > span{
+  //       color: #14928a !important;
+  //     }
+  //   }
+  // }
 </style>

+ 12 - 7
src/views/main/baseinfo/index.vue

@@ -32,22 +32,22 @@
     </save-form>
     <empty desc="暂无统计数据" v-if="isEmpty"/>
     <el-row v-else class="rows" :gutter="20">
-      <el-col :xs="24" :sm="24" :md="12" :span="7">
+      <el-col :xs="24" :sm="24" :md="12" :xl="7">
         <operate :data="dataInfo"/>
       </el-col>
-      <el-col :xs="24" :sm="24" :md="12" :span="7">
+      <el-col :xs="24" :sm="24" :md="12" :xl="7">
         <business :data="dataInfo"/>
       </el-col>
-      <el-col :xs="24" :sm="24" :md="24" :span="10">
+      <el-col :xs="24" :sm="24" :md="24" :xl="10">
         <management :data="dataInfo"/>
       </el-col>
-      <el-col :xs="24" :sm="24" :md="12" :span="7">
+      <el-col :xs="24" :sm="24" :md="12" :xl="7">
         <hrdata :data="dataInfo"/>
       </el-col>
-      <el-col :xs="24" :sm="24" :md="12" :span="7">
+      <el-col :xs="24" :sm="24" :md="12" :xl="7">
         <student :data="dataInfo"/>
       </el-col>
-      <el-col :xs="24" :sm="24" :md="24" :span="10">
+      <el-col :xs="24" :sm="24" :md="24" :xl="10">
         <curriculum :data="dataInfo"/>
       </el-col>
     </el-row>
@@ -62,6 +62,8 @@ import hrdata from './hr'
 import student from './student'
 import curriculum from './curriculum'
 
+import { descs } from '../constant'
+
 export default {
   components: {
     operate,
@@ -100,7 +102,10 @@ export default {
           organIds: this.search.organIds.join(',')
         })
         for (const item of res.data) {
-          data[item.dataType] = item
+          data[item.dataType] = {
+            ...item,
+            desc: descs[item.dataType]
+          }
         }
       } catch (error) {
         console.log(error)

+ 14 - 9
src/views/main/baseinfo/management.vue

@@ -2,7 +2,12 @@
   <el-card header="经营数据">
     <statistic :col="5" class="statistic" :cols="0">
       <statistic-item v-for="(item, key) in items" :key="key" :class="{active: active === key}" @click="active = key">
-        <span>{{item.title}}</span>
+        <span>
+          {{item.title}}
+          <el-tooltip v-if="item.desc" :content="item.desc" :open-delay=".3" placement="top">
+            <i style="margin-left: 5px;cursor: pointer;" class="el-icon-warning-outline"/>
+          </el-tooltip>
+        </span>
         <span>
           <count-to :endVal="item.percent"/>
         </span>
@@ -59,12 +64,12 @@ export default {
 }
 </script>
 <style lang="less" scoped>
-  .statistic{
-    /deep/ .statistic-content{
-      cursor: pointer;
-      &.active > span{
-        color: #14928a !important;
-      }
-    }
-  }
+  // .statistic{
+  //   /deep/ .statistic-content{
+  //     cursor: pointer;
+  //     &.active > span{
+  //       color: #14928a !important;
+  //     }
+  //   }
+  // }
 </style>

+ 14 - 9
src/views/main/baseinfo/operate.vue

@@ -2,7 +2,12 @@
   <el-card header="运营数据">
     <statistic class="statistic" :cols="0">
       <statistic-item v-for="(item, key) in items" :key="key" :class="{active: active === key}" @click="active = key">
-        <span>{{item.title}}</span>
+        <span>
+          {{item.title}}
+          <el-tooltip v-if="item.desc" :content="item.desc" :open-delay=".3" placement="top">
+            <i style="margin-left: 5px;cursor: pointer;" class="el-icon-warning-outline"/>
+          </el-tooltip>
+        </span>
         <span>
           <count-to :endVal="item.percent"/>
         </span>
@@ -58,12 +63,12 @@ export default {
 }
 </script>
 <style lang="less" scoped>
-  .statistic{
-    /deep/ .statistic-content{
-      cursor: pointer;
-      &.active > span{
-        color: #14928a !important;
-      }
-    }
-  }
+  // .statistic{
+  //   /deep/ .statistic-content{
+  //     cursor: pointer;
+  //     &.active > span{
+  //       color: #14928a !important;
+  //     }
+  //   }
+  // }
 </style>

+ 14 - 9
src/views/main/baseinfo/student.vue

@@ -2,7 +2,12 @@
   <el-card header="学员变动">
     <statistic class="statistic" :cols="0">
       <statistic-item v-for="(item, key) in items" :key="key" :class="{active: active === key}" @click="active = key">
-        <span>{{item.title}}</span>
+        <span>
+          {{item.title}}
+          <el-tooltip v-if="item.desc" :content="item.desc" :open-delay=".3" placement="top">
+            <i style="margin-left: 5px;cursor: pointer;" class="el-icon-warning-outline"/>
+          </el-tooltip>
+        </span>
         <span>
           <count-to :endVal="item.percent"/>{{key === 'STUDENT_CONVERSION' ? '%' : ''}}
         </span>
@@ -57,12 +62,12 @@ export default {
 }
 </script>
 <style lang="less" scoped>
-  .statistic{
-    /deep/ .statistic-content{
-      cursor: pointer;
-      &.active > span{
-        color: #14928a !important;
-      }
-    }
-  }
+  // .statistic{
+  //   /deep/ .statistic-content{
+  //     cursor: pointer;
+  //     &.active > span{
+  //       color: #14928a !important;
+  //     }
+  //   }
+  // }
 </style>

+ 25 - 0
src/views/main/constant.js

@@ -0,0 +1,25 @@
+export const descs = {
+  SCHOOL: '当月【开启】状态【合作单位】总数',
+  MUSIC_GROUP_NUM: '当月【进行中】乐团总数',
+  MUSIC_GROUP_STUDENT: '当月乐团【在读】学员总数(去重)',
+  OTHER_STUDENT: '当月VIP、网管课【在读】学员总数(去重)',
+  ACTIVATION_RATE: '本年度截止到当月激活人数总数/本年度截止到当月注册总人数*100%',
+  HOMEWORK_CREATE_RATE: '本年度截止到当月服务指标【实际安排次数】/本年度截止到当月服务指标【预期安排次数】*100%',
+  HOMEWORK_SUBMIT_RATE: '本年度截止到当月服务指标【提交次数】/本年度截止到当月服务指标【实际安排】*100%',
+  HOMEWORK_COMMENT_RATE: '本年度截止到当月服务指标【评价次数】/本年度截止到当月服务指标【提交次数】',
+  SHOULD_INCOME_MONEY: '本年度截止到当月所有缴费项目应收金额总和',
+  ANTICIPATED_INCOME_MONEY: '本年度截止到当月已缴费但实际还未产生费用金额总和',
+  SHOULD_EXPEND_MONEY: '本年度截止到当月预计支出费用总和(暂无此数据)',
+  ANTICIPATED_EXPEND_MONEY: '本年度截止到当月应付金额总和(暂无此数据)',
+  REVENUE_MONEY: '本年度截止到当月营收金额总和',
+  TEACHER_NUM: '当月【非冻结】状态老师总数',
+  FULL_TIME_NUM: '当月【非冻结】且【工作类型】为【全职】总数',
+  PART_TIME_NUM: '当月【非冻结】且【工作类型】为【兼职】总数',
+  DIMISSION_NUM: '本年度截止到当月【离职】+【冻结】总人数',
+  NEWLY_STUDENT_NUM: '本年度截止到当月新增【乐团】学员总数',
+  QUIT_MUSIC_GROUP_STUDENT_NUM: '本年度截止到当月【退团】学员总数',
+  STUDENT_CONVERSION: '本年度新增【乐团】学员中,购买VIP、网管课人数(去重)/本年度截止到当月新增【乐团】学员总数',
+  MUSIC_GROUP_COURSE: '本年度截止到当月乐团课【已完成】+【未开始】总数',
+  VIP_GROUP_COURSE: '本年度截止到当月VIP课【已完成】+【未开始】总数',
+  PRACTICE_GROUP_COURSE: '本年度截止到当月网管课【已完成】+【未开始】总数',
+}