瀏覽代碼

页面补充全选,调整排行榜文案展示

yejian 2 年之前
父節點
當前提交
be91cd51df

+ 19 - 3
src/views/Ranking/FusionNumberManuscript.vue

@@ -14,6 +14,15 @@
           @click="handleClick(cur)"
           >{{ cur }}</el-button
         >
+        <el-checkbox
+          v-if="tabs.btns.length"
+          v-model="checkedAll"
+          label="全选"
+          size="large"
+          border
+          @change="handleCheck"
+          class="checkAll"
+        />
       </el-row>
     </div>
     <div class="card-rank">
@@ -42,8 +51,7 @@ export default {
         btns: [],
       },
       tableData: [],
-      typeData: [],
-      tabHigh: 600,
+      checkedAll: false,
     };
   },
   mounted() {
@@ -58,6 +66,10 @@ export default {
       }
       this.setTableData();
     },
+    handleCheck() {
+      this.btnFocus = this.checkedAll ? this.tabs.btns : [];
+      this.setTableData();
+    },
     setTableData() {
       const that = this;
       this.tableData = [];
@@ -78,7 +90,8 @@ export default {
       const that = this;
       getAccountType()
         .then((res) => {
-          that.btnFocus = res;
+          const [cur] = res;
+          that.btnFocus = [cur];
           that.tabs.btns = res;
           that.setTableData();
         })
@@ -126,4 +139,7 @@ h4 {
   border-color:#409eff !important;
   background-color:#409eff !important;
 }
+.checkAll{
+  margin-left: 10px;
+}
 </style>

+ 20 - 3
src/views/Ranking/FusionVermicelli.vue

@@ -14,6 +14,15 @@
           @click="handleClick(cur)"
           >{{ cur }}</el-button
         >
+        <el-checkbox
+          v-if="tabs.btns.length"
+          v-model="checkedAll"
+          label="全选"
+          size="large"
+          border
+          @change="handleCheck"
+          class="checkAll"
+        />
       </el-row>
     </div>
     <div class="card-rank">
@@ -22,7 +31,7 @@
           :data="tableData"
           header-row-class-name="card-tabs-header"
         >
-          <el-table-column align="center" prop="title" label="关键词" />
+          <el-table-column align="center" prop="title" label="融合号" />
           <el-table-column align="center" prop="fansCount" label="粉丝量" />
         </el-table>
       </div>
@@ -45,7 +54,7 @@ export default {
         btns: [],
       },
       tableData: [],
-      typeData: [],
+      checkedAll: false,
     };
   },
   mounted() {
@@ -60,6 +69,10 @@ export default {
       }
       this.setTableData();
     },
+    handleCheck() {
+      this.btnFocus = this.checkedAll ? this.tabs.btns : [];
+      this.setTableData();
+    },
     setTableData() {
       const that = this;
       this.tableData = [];
@@ -78,7 +91,8 @@ export default {
       const that = this;
       getAccountType()
         .then((res) => {
-          that.btnFocus = res;
+          const [cur] = res;
+          that.btnFocus = [cur];
           that.tabs.btns = res;
           that.setTableData();
 
@@ -127,4 +141,7 @@ h4 {
   border-color:#409eff !important;
   background-color:#409eff !important;
 }
+.checkAll{
+  margin-left: 10px;
+}
 </style>

+ 10 - 8
src/views/Ranking/ManuscriptDissemination.vue

@@ -18,32 +18,32 @@
     </div>
     <div class="card-rank">
       <div>
-        <h4>分中心日榜</h4>
+        <h4>{{title}}日榜</h4>
         <el-table
           :data="dayData"
           header-row-class-name="card-tabs-header"
         >
-          <el-table-column align="center" prop="name" :label="title" />
+          <el-table-column align="center" prop="name" :label="subTitle" />
           <el-table-column align="center" prop="cnt" label="传播量" />
         </el-table>
       </div>
       <div>
-        <h4>分中心周榜</h4>
+        <h4>{{title}}周榜</h4>
         <el-table
           :data="weekData"
           header-row-class-name="card-tabs-header"
         >
-          <el-table-column align="center" prop="name" :label="title" />
+          <el-table-column align="center" prop="name" :label="subTitle" />
           <el-table-column align="center" prop="cnt" label="传播量" />
         </el-table>
       </div>
       <div>
-        <h4>分中心月榜</h4>
+        <h4>{{title}}月榜</h4>
         <el-table
           :data="monthData"
           header-row-class-name="card-tabs-header"
         >
-          <el-table-column align="center" prop="name" :label="title" />
+          <el-table-column align="center" prop="name" :label="subTitle" />
           <el-table-column align="center" prop="cnt" label="传播量" />
         </el-table>
       </div>
@@ -62,7 +62,8 @@ export default {
     return {
       activeName: 1,
       btnFocus: "center",
-      title:"中心名称",
+      title:"分中心",
+      subTitle:"中心名称",
       tabs: {
         name: "稿件传播量排行榜",
         code: 1,
@@ -99,8 +100,9 @@ export default {
   },
   methods: {
     handleClick(e) {
+      this.title=e.label.substring(0,e.label.length-1);
       this.btnFocus = e.value;
-      this.title = e.title;
+      this.subTitle = e.title;
       this.setTableData();
     },
     setTableData() {

+ 20 - 27
src/views/Ranking/ManuscriptIssued.vue

@@ -18,32 +18,23 @@
     </div>
     <div class="card-rank">
       <div>
-        <h4>分中心日榜</h4>
-        <el-table
-          :data="dayData"
-          header-row-class-name="card-tabs-header"
-        >
-          <el-table-column align="center" prop="name" :label="title" />
+        <h4>{{ title }}日榜</h4>
+        <el-table :data="dayData" header-row-class-name="card-tabs-header">
+          <el-table-column align="center" prop="name" :label="subTitle" />
           <el-table-column align="center" prop="cnt" label="次数" />
         </el-table>
       </div>
       <div>
-        <h4>分中心周榜</h4>
-        <el-table
-          :data="weekData"
-          header-row-class-name="card-tabs-header"
-        >
-          <el-table-column align="center" prop="name" :label="title" />
+        <h4>{{ title }}周榜</h4>
+        <el-table :data="weekData" header-row-class-name="card-tabs-header">
+          <el-table-column align="center" prop="name" :label="subTitle" />
           <el-table-column align="center" prop="cnt" label="次数" />
         </el-table>
       </div>
       <div>
-        <h4>分中心月榜</h4>
-        <el-table
-          :data="monthData"
-          header-row-class-name="card-tabs-header"
-        >
-          <el-table-column align="center" prop="name" :label="title" />
+        <h4>{{ title }}月榜</h4>
+        <el-table :data="monthData" header-row-class-name="card-tabs-header">
+          <el-table-column align="center" prop="name" :label="subTitle" />
           <el-table-column align="center" prop="cnt" label="次数" />
         </el-table>
       </div>
@@ -62,7 +53,8 @@ export default {
     return {
       activeName: 1,
       btnFocus: "center",
-      title:"中心名称",
+      title: "分中心",
+      subTitle: "中心名称",
       tabs: {
         name: "已发稿件数量排行榜",
         code: 1,
@@ -70,12 +62,12 @@ export default {
           {
             label: "分中心榜",
             value: "center",
-            title:"中心名称"
+            title: "中心名称",
           },
           {
             label: "人员榜",
             value: "user",
-            title:"人员名称"
+            title: "人员名称",
           },
           // {
           //   label: "中心内部榜",
@@ -85,7 +77,7 @@ export default {
           {
             label: "部门内部人员榜",
             value: "depart",
-            title:"部门名称"
+            title: "部门名称",
           },
         ],
       },
@@ -99,8 +91,9 @@ export default {
   },
   methods: {
     handleClick(e) {
+      this.title = e.label.substring(0, e.label.length - 1);
       this.btnFocus = e.value;
-      this.title = e.title;
+      this.subTitle = e.title;
       this.setTableData();
     },
     setTableData() {
@@ -132,7 +125,7 @@ export default {
 .el-tabs__header {
   padding: 0 100px;
 }
-.groupType{
+.groupType {
   padding: 15px 10px;
   box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.12);
 }
@@ -156,8 +149,8 @@ h4 {
   background: #f5f7fa !important;
 }
 .btnFocus {
-  color:#FFF !important;
-  border-color:#409eff !important;
-  background-color:#409eff !important;
+  color: #fff !important;
+  border-color: #409eff !important;
+  background-color: #409eff !important;
 }
 </style>

+ 28 - 9
src/views/Ranking/ManuscriptQuantity.vue

@@ -14,12 +14,21 @@
           @click="handleClick(cur)"
           >{{ cur }}</el-button
         >
+        <el-checkbox
+          v-if="tabs.btns.length"
+          v-model="checkedAll"
+          label="全选"
+          size="large"
+          border
+          @change="handleCheck"
+          class="checkAll"
+        />
       </el-row>
     </div>
     <div class="card-rank">
       <div>
         <el-table :data="tableData" header-row-class-name="card-tabs-header">
-          <el-table-column align="center" prop="AccountName" label="关键词" />
+          <el-table-column align="center" prop="AccountName" label="融合号" />
           <el-table-column align="center" prop="cnt" label="稿件数量" />
         </el-table>
       </div>
@@ -42,7 +51,7 @@ export default {
         btns: [],
       },
       tableData: [],
-      typeData: [],
+      checkedAll: false,
     };
   },
   mounted() {
@@ -50,13 +59,19 @@ export default {
   },
   methods: {
     handleClick(e) {
-      if(this.btnFocus.includes(e) && this.btnFocus.length!==1){
-        this.btnFocus = this.btnFocus.filter((v)=>{return v!==e});
-      }else if(!this.btnFocus.includes(e)){
+      if (this.btnFocus.includes(e) && this.btnFocus.length !== 1) {
+        this.btnFocus = this.btnFocus.filter((v) => {
+          return v !== e;
+        });
+      } else if (!this.btnFocus.includes(e)) {
         this.btnFocus.push(e);
       }
       this.setTableData();
     },
+    handleCheck() {
+      this.btnFocus = this.checkedAll ? this.tabs.btns : [];
+      this.setTableData();
+    },
     setTableData() {
       const that = this;
       this.tableData = [];
@@ -77,7 +92,8 @@ export default {
       const that = this;
       getAccountType()
         .then((res) => {
-          that.btnFocus = res;
+          const [cur] = res;
+          that.btnFocus = [cur];
           that.tabs.btns = res;
           that.setTableData();
         })
@@ -125,8 +141,11 @@ h4 {
   margin: 15px 0px 10px;
 }
 .btnFocus {
-  color:#FFF !important;
-  border-color:#409eff !important;
-  background-color:#409eff !important;
+  color: #fff !important;
+  border-color: #409eff !important;
+  background-color: #409eff !important;
+}
+.checkAll{
+  margin-left: 10px;
 }
 </style>

+ 10 - 8
src/views/Ranking/MaterialContribution.vue

@@ -18,32 +18,32 @@
     </div>
     <div class="card-rank">
       <div>
-        <h4>分中心日榜</h4>
+        <h4>{{ title }}日榜</h4>
         <el-table
           :data="dayData"
           header-row-class-name="card-tabs-header"
         >
-          <el-table-column align="center" prop="name" :label="title" />
+          <el-table-column align="center" prop="name" :label="subTitle" />
           <el-table-column align="center" prop="cnt" label="贡献量" />
         </el-table>
       </div>
       <div>
-        <h4>分中心周榜</h4>
+        <h4>{{ title }}周榜</h4>
         <el-table
           :data="weekData"
           header-row-class-name="card-tabs-header"
         >
-          <el-table-column align="center" prop="name" :label="title" />
+          <el-table-column align="center" prop="name" :label="subTitle" />
           <el-table-column align="center" prop="cnt" label="贡献量" />
         </el-table>
       </div>
       <div>
-        <h4>分中心月榜</h4>
+        <h4>{{ title }}月榜</h4>
         <el-table
           :data="monthData"
           header-row-class-name="card-tabs-header"
         >
-          <el-table-column align="center" prop="name" :label="title" />
+          <el-table-column align="center" prop="name" :label="subTitle" />
           <el-table-column align="center" prop="cnt" label="贡献量" />
         </el-table>
       </div>
@@ -62,7 +62,8 @@ export default {
     return {
       activeName: 1,
       btnFocus: "center",
-      title:"中心名称",
+      title: "分中心",
+      subTitle: "中心名称",
       tabs: {
         name: "素材贡献量排行榜",
         code: 1,
@@ -99,8 +100,9 @@ export default {
   },
   methods: {
     handleClick(e) {
+      this.title=e.label.substring(0,e.label.length-1);
       this.btnFocus = e.value;
-      this.title = e.title;
+      this.subTitle = e.title;
       this.setTableData();
     },
     setTableData() {

+ 0 - 1
src/views/Ranking/UserStayRanking.vue

@@ -43,7 +43,6 @@ export default {
         btns: [],
       },
       tableData: [],
-      typeData: [],
     };
   },
   mounted() {