浏览代码

feat:画像文案修改、需求开发

tsz 2 年之前
父节点
当前提交
1f81e69286

+ 2 - 1
src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/chart_options.js

@@ -729,6 +729,7 @@ var chartOptions = {
         },
     },
     deformPieChart:{
+        roseType: true,
         dataset: {
             source: []
         },
@@ -784,7 +785,7 @@ var chartOptions = {
             clockWise: false,
             startAngle: 60,
             center: ['50%', '50%'],
-            roseType: 'area',
+            ...(this.roseType ? {roseType: 'area'} : {}),
             encode: {
                 x:0,
                 y:1,

+ 1 - 0
src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/ent_portrait.js

@@ -1247,6 +1247,7 @@ var vNode = {
       var normal = ['行业', '中标金额占比', '中标金额', '项目数量', '平均折扣率'];
       var newArr = that.arrTrans(5, arr);
       newArr.unshift(normal)
+      chartOptions.deformPieChart.roseType = false;
       chartOptions.deformPieChart.dataset.source = newArr;
       chartOptions.deformPieChart.tooltip.formatter = function (params) {
         var tip = '';

+ 1 - 0
src/jfw/modules/app/src/web/staticres/jyapp/big-member/js/unit_portrayal.js

@@ -1395,6 +1395,7 @@ var vNode = {
       var normal = ['行业', '采购规模占比', '采购规模', '采购项目数量', '平均节支率'];
       var newArr = that.arrTrans(5, arr);
       newArr.unshift(normal)
+      chartOptions.deformPieChart.roseType = false;
       chartOptions.deformPieChart.dataset.source = newArr;
       chartOptions.deformPieChart.tooltip.formatter = function (params) {
         var tip = '';

+ 77 - 12
src/jfw/modules/app/src/web/templates/big-member/page_report_analysis.html

@@ -10,6 +10,7 @@
     <link rel="stylesheet" href='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/collection/css/index.css?v={{Msg "seo" "version"}}'/>
     <link rel="stylesheet" href='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/report-analysis/css/report_analysis.css?v={{Msg "seo" "version"}}1' />
     <link rel="stylesheet" href='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/collection/css/index.css?v={{Msg "seo" "version"}}' />
+    <link rel="stylesheet" href='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/filter/css/project_header.css?v={{Msg "seo" "version"}}' />
     <style>
         /* fix: --- 弹窗组件不能显示底部问题  */
         .report-popup .j-main.unitTab {
@@ -126,7 +127,7 @@
                         <div class="height8" v-show="false"></div>
                         <section class="section bg-white dimension">
                             <div class="section-title"> - 分析维度 -</div>
-                            <van-sticky class="section-sticky" z-index="99999999" :offset-top="stickyOffset">
+                            <van-sticky class="section-sticky" z-index="2000" :offset-top="stickyOffset">
                                 <div class="section-content dimension-list bg-white">
                                     <div
                                         class="j-button j-button-item dimension-item"
@@ -283,6 +284,59 @@
                                 <market-area-scatter :chart-data="sections.areaScatter.chartData"></market-area-scatter>
                             </div>
                         </div>
+                        <!-- 城市分布 -->
+                        <div class="section bg-white pd-16 city-scatter" v-if="sections.areaScatter.dataAlready && notOneAreaFilter && getStatus">
+                          <div class="section-title">城市分布</div>
+                          <div class="section-content">
+                            <!-- <market-area-scatter :chart-data="sections.areaScatter.chartData"></market-area-scatter> -->
+                            <div class="section-content-header">
+                              <div class="set-area-city" @click="setAreaCity">
+                                <span>${sections.areaScatter.selectArea.area}</span>
+                                <van-icon name="play"></van-icon>
+                              </div>
+                              <div class="set-sort-type">
+                                <project-header :showtotal="false" @setsort-type="setsortType"></project-header>
+                              </div>
+                              <div class="set-unit">单位:万元</div>
+                            </div>
+                            <div class="progress-bar-container">
+                              <div class="progress-bar-item" v-for="(item,index) in showAreaCityBtn" :key="index">
+                                  <div class="item-label">
+                                      <span class="item-name">${item.city}</span>
+                                      <span class="item-count" :class="[index < 3 && !getStatus ? 'shade': '']">${item.total}个</span>
+                                  </div>
+                                  <div class="item-progress">
+                                      <span class="item-progress-count blue-progress" :style="{width: item.parent}"></span>
+                                  </div>
+                              </div>
+                            </div>
+                            <div class="more" @click="sections.areaScatter.showAreaCityListBtn = false" v-if="sections.areaScatter.showAreaCityListBtn">
+                              <span>查看更多</span>
+                            </div>
+                          </div>
+                        </div>
+                        <van-popup
+                          v-model="sections.areaScatter.showAreaPopup"
+                          closeable
+                          round
+                          position="bottom"
+                          close-icon="clear"
+                          class="j-popup collection"
+                          :lazy-render="false"
+                          overlay-class="j-overlay"
+                          :style="{ height: '60%' }"
+                          get-container="body">
+                          <div class="j-container report-popup">
+                              <div class="popup-header header-title">请选择省份</div>
+                              <div class="j-main">
+                                  <area-component
+                                      :multiple="false"
+                                      ref="areaSelector"
+                                      @cancel="cancelSelectArea"
+                                      @confirm="confirmSelectArea"></area-component>
+                              </div>
+                          </div>
+                        </van-popup>
                         <div class="section bg-white pd-16" v-if="sections.areaScatter.projectCountTop3 && getStatus">
                             <div class="section-title">项目数量TOP3地区的重点中标单位</div>
                             <div class="section-content">
@@ -381,7 +435,7 @@
                             <div class="section-title">项目数量TOP30采购单位及其重点合作中标单位</div>
                             <div class="section-content">
                                 <market-top3-table :table-data="showBuyerBtn" type="count" @save="saveState"></market-top3-table>
-                                <div class="more" @click="sections.buyerclass.showViewAllBtn = false" v-if="sections.buyerclass.showViewAllBtn">
+                                <div class="more" @click="sections.buyerclass.showCountAllBtn = false" v-if="sections.buyerclass.showCountAllBtn">
                                   <span>查看更多</span>
                                 </div>
                             </div>
@@ -395,10 +449,13 @@
                             </chart-example>
                           </div>
                         </div>
-                        <div class="section bg-white pd-16" v-if="sections.buyerclass.projectAmountTop3 && getStatus">
+                        <div class="section bg-white pd-16" v-if="showAmoutBtn && getStatus">
                             <div class="section-title">采购金额TOP30采购单位及其重点合作中标单位</div>
                             <div class="section-content">
-                                <market-top3-table :table-data="sections.buyerclass.projectAmountTop3" type="amount" @save="saveState"></market-top3-table>
+                                <market-top3-table :table-data="showAmoutBtn" type="amount" @save="saveState"></market-top3-table>
+                                <div class="more" @click="sections.buyerclass.showAmoutAllBtn = false" v-if="sections.buyerclass.showAmoutAllBtn">
+                                  <span>查看更多</span>
+                                </div>
                             </div>
                         </div>
                         <div class="vip_component"
@@ -417,31 +474,37 @@
                                 <line-chart-scatter :chart-data="sections.winner.chartData"></line-chart-scatter>
                             </div>
                         </div>
-                        <div class="section bg-white pd-16" v-if="sections.winner.projectCountTop3 && getStatus">
-                            <div class="section-title">项目数量TOP3中标单位及其重点合作采购单位</div>
+                        <div class="section bg-white pd-16" v-if="showWinnerCountBtn && getStatus">
+                            <div class="section-title">项目数量TOP30中标单位及其重点合作采购单位</div>
                             <div class="section-content">
-                                <market-top3-table :table-data="sections.winner.projectCountTop3" type="count" @save="saveState"></market-top3-table>
+                                <market-top3-table :table-data="showWinnerCountBtn" type="count" @save="saveState"></market-top3-table>
+                                <div class="more" @click="sections.winner.showCountAllBtn = false" v-if="sections.winner.showCountAllBtn">
+                                  <span>查看更多</span>
+                                </div>
                             </div>
                         </div>
                         <div class="vip_component"
                           v-if="!getStatus"
                           style="height:10.8rem">
-                          <p class="example-title">项目数量TOP3中标单位及其重点合作采购单位</p>
+                          <p class="example-title">项目数量TOP30中标单位及其重点合作采购单位</p>
                           <div class="chart_com" style="background:url('{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/report-analysis/image/07-bg.png?v={{Msg "seo" "version"}}') no-repeat;background-size:100% 100%">
                             <chart-example type="item_7" imgurl='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/report-analysis/image/07.png?v={{Msg "seo" "version"}}'>
                             </chart-example>
                           </div>
                         </div>
-                        <div class="section bg-white pd-16" v-if="sections.winner.projectAmountTop3 && getStatus">
-                            <div class="section-title">中标金额TOP3中标单位及其重点合作采购单位</div>
+                        <div class="section bg-white pd-16" v-if="showWinnerAmoutBtn && getStatus">
+                            <div class="section-title">中标金额TOP30中标单位及其重点合作采购单位</div>
                             <div class="section-content">
-                                <market-top3-table :table-data="sections.winner.projectAmountTop3" type="amount" @save="saveState"></market-top3-table>
+                                <market-top3-table :table-data="showWinnerAmoutBtn" type="amount" @save="saveState"></market-top3-table>
+                                <div class="more" @click="sections.winner.showAmoutAllBtn = false" v-if="sections.winner.showAmoutAllBtn">
+                                  <span>查看更多</span>
+                                </div>
                             </div>
                         </div>
                         <div class="vip_component"
                           v-if="!getStatus"
                           style="height:10.8rem">
-                          <p class="example-title">中标金额TOP3中标单位及其重点合作采购单位</p>
+                          <p class="example-title">中标金额TOP30中标单位及其重点合作采购单位</p>
                           <div class="chart_com" style="background:url('{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/report-analysis/image/08-bg.png?v={{Msg "seo" "version"}}') no-repeat;background-size:100% 100%">
                             <chart-example type="item_8" imgurl='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/report-analysis/image/08.png?v={{Msg "seo" "version"}}'>
                             </chart-example>
@@ -565,6 +628,7 @@
 <script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/collection/js/keyword-mobile.js?v={{Msg "seo" "version"}}'></script>
 <script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/collection/js/date-mobile.js?v={{Msg "seo" "version"}}'></script>
 <script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/collection/js/area-city-mobile.js?v={{Msg "seo" "version"}}'></script>
+<script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/collection/js/area-mobile.js?v={{Msg "seo" "version"}}'></script>
 <script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/collection/js/industry-mobile.js?v={{Msg "seo" "version"}}'></script>
 <script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/collection/js/cate-mobile.js?v={{Msg "seo" "version"}}'></script>
 <!-- components -->
@@ -577,6 +641,7 @@
 <script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/report-analysis/js/components/marketUserScatter.js?v={{Msg "seo" "version"}}'></script>
 <script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/report-analysis/js/components/marketSegment.js?v={{Msg "seo" "version"}}'></script>
 <script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/report-analysis/js/components/lineChartScatter.js?v={{Msg "seo" "version"}}'></script>
+<script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/filter/js/project_header.js?v={{Msg "seo" "version"}}'></script>
 <!-- main.js -->
 <script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/report-analysis/js/report_analysis.js?v={{Msg "seo" "version"}}13'></script>
 

+ 1 - 0
src/web/staticres/big-member/js/unit_portrayal.js

@@ -1355,6 +1355,7 @@ var vNode = {
             var normal =['行业','采购规模占比','采购规模', '采购项目数量','平均节支率'];
             var newArr = that.arrTrans(5,arr);
             newArr.unshift(normal)
+            chartOptions.deformPieChart.roseType = false;
             chartOptions.deformPieChart.dataset.source = newArr;
             chartOptions.deformPieChart.tooltip.formatter = function(params){
                 var tip = '';

+ 2 - 1
src/web/staticres/common-module/collection/js/chart_options.js

@@ -729,6 +729,7 @@ var chartOptions = {
         },
     },
     deformPieChart:{
+        roseType: true,
         dataset: {
             source: []
         },
@@ -784,7 +785,7 @@ var chartOptions = {
             clockWise: false,
             startAngle: 60,
             center: ['50%', '50%'],
-            roseType: 'area',
+            ...(this.roseType ? {roseType: 'area'} : {}),
             encode: {
                 x:0,
                 y:1,

+ 1 - 0
src/web/staticres/common-module/collection/js/ent_portrait.js

@@ -1229,6 +1229,7 @@ var vNode = {
       var normal = ['行业', '中标金额占比', '中标金额', '项目数量', '平均折扣率'];
       var newArr = that.arrTrans(5, arr);
       newArr.unshift(normal)
+      chartOptions.deformPieChart.roseType = false;
       chartOptions.deformPieChart.dataset.source = newArr;
       chartOptions.deformPieChart.tooltip.formatter = function (params) {
         var tip = '';

+ 6 - 2
src/web/staticres/common-module/filter/js/project_header.js

@@ -1,10 +1,10 @@
 var projectHeaderTemp = `
 <div class="project-detail-title">
-  <div class="p-d-t-left">
+  <div class="p-d-t-left" v-if="showtotal">
     共<span style="color:#2ABED1"> {{ total }} </span>个项目
   </div>
   <div class="p-d-t-right">
-    <span class="sort-label">排序:</span>
+    <span class="sort-label" v-if="showtotal">排序:</span>
     <van-dropdown-menu active-color="#2ABED1">
       <van-dropdown-item ref="sortMenu" :title="sortOptionSelect">
         <van-cell center :class="{'activeColor': item.active}" @click="setSortRules(item)" :title="item.text" v-for="(item, index) in sortOption" :key="index">
@@ -25,6 +25,10 @@ var projectHeaderComponent = {
     total: {
       type: String,
       default: ''
+    },
+    showtotal: {
+      type: Boolean,
+      default: true
     }
   },
   data () {

+ 77 - 0
src/web/staticres/common-module/report-analysis/css/report_analysis.css

@@ -332,6 +332,81 @@
 .search-result .dimension .section-content {
   padding: .28rem 0;
 }
+
+.section-content .progress-bar-container {
+  background-color: #fff;
+  padding: 0 0 .32rem;
+}
+
+.section-content .progress-bar-item {
+  display: flex;
+  flex-direction: column;
+  justify-content: space-around;
+  /* height: 1.04rem; */
+  margin-top: .28rem;
+}
+
+.section-content .progress-bar-item .item-label {
+  display: flex;
+  justify-content: space-between;
+}
+
+.section-content .progress-bar-item .item-label .item-name {
+  font-size: .26rem;
+  line-height:.4rem;
+  color: #5F5E64;
+  flex: 1;
+}
+
+.section-content .progress-bar-item .item-label .item-count {
+  font-size: .26rem;
+  color: #171826;
+  line-height:.4rem;
+}
+
+.section-content .progress-bar-item .item-progress {
+  position: relative;
+  height: .2rem;
+  background-color: #EDEFF2;
+  border-radius: 0 .28rem .28rem 0;
+  overflow: hidden;
+  margin-top: .14rem;
+}
+
+.section-content .progress-bar-item .item-progress-count {
+  position: absolute;
+  top: 0;
+  left: 0;
+  height: 100%;
+  border-radius: 0 .28rem .28rem 0;
+}
+.section-content .yellow-progress{
+  background: linear-gradient(to right,#FAE7CA, #F1D090);
+}
+.section-content .blue-progress{
+  background: linear-gradient(to right,#8DE0EB, #2ABED1);
+}
+.section-content .section-content-header{
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  height: .88rem;
+}
+.set-area-city{
+  font-size: .28rem;
+  color: #5F5E64;
+}
+.set-area-city .van-icon{
+  transform: rotate(90deg);
+  color: #C0C4CC;
+}
+.set-sort-type{
+
+}
+.set-unit{
+  font-size: .18rem;
+  color: #9B9CA3;
+}
 .van-sticky--fixed {
   display: flex;
   align-items: center;
@@ -607,3 +682,5 @@
   font-size: .28rem;
   line-height: .4rem;
 }
+
+

+ 89 - 6
src/web/staticres/common-module/report-analysis/js/report_analysis.js

@@ -7,10 +7,12 @@ var vm = new Vue({
   components: {
     keywordComponent: keywordComponent,
     areaCityMobile: areaCityMobileComponent,
+    areaComponent: areaComponent,
     industryComponent: industryComponent,
     cateComponent: cateComponent,
     dateComponent: dateComponent,
     chartExample: chartExample,
+    projectHeader: projectHeaderComponent,
     // 图表
     projectScatter: projectScatter,
     marketTimeScatter: marketTimeScatter,
@@ -201,6 +203,11 @@ var vm = new Vue({
       areaScatter: {
         dataAlready: false,
         chartData: null,
+        showAreaPopup: false,
+        setCityList: [],
+        selectArea: {},
+        sortType: 0,
+        showAreaCityListBtn: false,
         // 项目数量Top3
         projectCountTop3: null,
         // 项目金额Top3
@@ -216,19 +223,22 @@ var vm = new Vue({
       buyerclass: {
         dataAlready: false,
         chartData: null,
-        showViewAllBtn: false,
         // 项目数量Top3
         projectCountTop3: null,
+        showCountAllBtn: false,
         // 项目金额Top3
-        projectAmountTop3: null
+        projectAmountTop3: null,
+        showAmoutAllBtn: false
       },
       winner: {
         dataAlready: false,
         chartData: null,
         // 项目数量Top3
         projectCountTop3: null,
+        showCountAllBtn: false,
         // 项目金额Top3
-        projectAmountTop3: null
+        projectAmountTop3: null,
+        showAmoutAllBtn: false
       }
     },
     empty: {
@@ -243,7 +253,26 @@ var vm = new Vue({
   },
   computed: {
     showBuyerBtn: function () {
-      return this.sections.buyerclass.showViewAllBtn ? this.sections.buyerclass.projectCountTop3.slice(0, 3) : this.sections.buyerclass.projectCountTop3
+      return this.sections.buyerclass.showCountAllBtn ? this.sections.buyerclass.projectCountTop3.slice(0, 3) : this.sections.buyerclass.projectCountTop3
+    },
+    showAmoutBtn: function () {
+      return this.sections.buyerclass.showAmoutAllBtn ? this.sections.buyerclass.projectAmountTop3.slice(0, 3) : this.sections.buyerclass.projectAmountTop3
+    },
+    showWinnerCountBtn: function () {
+      return this.sections.winner.showCountAllBtn ? this.sections.winner.projectCountTop3.slice(0, 3) : this.sections.winner.projectCountTop3
+    },
+    showWinnerAmoutBtn: function () {
+      return this.sections.winner.showAmoutAllBtn ? this.sections.winner.projectAmountTop3.slice(0, 3) : this.sections.winner.projectAmountTop3
+    },
+    showAreaCityBtn: function () {
+      return this.sections.areaScatter.showAreaCityListBtn ? this.sections.areaScatter.setCityList.slice(0, 5) : this.sections.areaScatter.setCityList
+    },
+    // 选出项目数量最多的省份
+    getMaxProjectCount: function () {
+      const result  = this.sections.areaScatter.chartData.rows.reduce((max, item) => {
+        return item.项目数量 > max.项目数量 ? item : max
+      })
+      return result
     },
     getStatus: function () {
       if (JSON.stringify(this.powerInfo) !== '{}') {
@@ -335,6 +364,14 @@ var vm = new Vue({
     utils.iosBackRefresh()
   },
   methods: {
+    // 设置排序方式
+    setsortType (data) {
+      this.sections.areaScatter.sortType = data
+    },
+    cancelSelectArea () {},
+    confirmSelectArea (data) {
+      console.log(data)
+    },
     inProList () {
       this.saveState()
       if(utils.$envs.inWX){
@@ -892,6 +929,8 @@ var vm = new Vue({
         this.sortProjectScatter(data.projectScale)
         // 地区规模分布
         this.sortAreaScatter(data.area_infos)
+        // 城市分布
+        this.sortAreaCityScatter(data.area_infos)
         // 客户分布
         if(data.customer_scale){
           if(data.customer_scale.length!=0){
@@ -1299,6 +1338,35 @@ var vm = new Vue({
         this.sections.areaScatter.dataAlready = true
       }
     },
+    setAreaCity () {
+      this.sections.areaScatter.showAreaPopup = true
+    },
+    // 城市分布
+    sortAreaCityScatter (areacitylist) {
+      const result  = areacitylist.reduce((max, item) => {
+        return item.total > max.total ? item : max
+      })
+      if (result.areaDetails.length > 5) {
+        this.sections.areaScatter.showAreaCityListBtn = true
+      } else {
+        this.sections.areaScatter.showAreaCityListBtn = false
+      }
+      this.sections.areaScatter.setCityList = this.formatterWinData(result.areaDetails, 'total')
+      this.sections.areaScatter.selectArea = result
+    },
+    // 格式化进度条图表数据
+    formatterWinData: function(data,type) {
+      data.forEach(function(v,i){
+          // v.bidamount = (v.bidamount / 10000).fixed(2);
+          // v.average = (v.average / 10000).fixed(2);
+          switch (type) {
+            case 'total':
+              v.parent = v.total / data[0].total*100 + "%";
+              break;
+          }
+      })
+      return data;
+  },
     // 客户分布
     sortUserScatter (userList) {
       if (Array.isArray(userList)) {
@@ -1669,13 +1737,18 @@ var vm = new Vue({
       }
       if (dataCount.rows.length) {
         if (dataCount.rows.length > 3) {
-          this.sections.buyerclass.showViewAllBtn = true
+          this.sections.buyerclass.showCountAllBtn = true
         } else {
-          this.sections.buyerclass.showViewAllBtn = false
+          this.sections.buyerclass.showCountAllBtn = false
         }
         this.$set(this.sections.buyerclass, 'projectCountTop3', dataCount.rows)
       }
       if (dataAmount.rows.length) {
+        if (dataAmount.rows.length > 3) {
+          this.sections.buyerclass.showAmoutAllBtn = true
+        } else {
+          this.sections.buyerclass.showAmoutAllBtn = false
+        }
         this.$set(this.sections.buyerclass, 'projectAmountTop3', dataAmount.rows)
       }
     },
@@ -1782,9 +1855,19 @@ var vm = new Vue({
       }
 
       if (dataCount.rows.length) {
+        if (dataCount.rows.length > 3) {
+          this.sections.winner.showCountAllBtn = true
+        } else {
+          this.sections.winner.showCountAllBtn = false
+        }
         this.$set(this.sections.winner, 'projectCountTop3', dataCount.rows)
       }
       if (dataAmount.rows.length) {
+        if (dataAmount.rows.length > 3) {
+          this.sections.winner.showAmoutAllBtn = true
+        } else {
+          this.sections.winner.showAmoutAllBtn = false
+        }
         this.$set(this.sections.winner, 'projectAmountTop3', dataAmount.rows)
       }
     },

+ 26 - 14
src/web/templates/big-member/wx/page_report_analysis.html

@@ -385,10 +385,13 @@
                               <line-chart-scatter :chart-data="sections.buyerclass.chartData"></line-chart-scatter>
                           </div>
                       </div>
-                      <div class="section bg-white pd-16" v-if="sections.buyerclass.projectCountTop3 && getStatus">
+                      <div class="section bg-white pd-16" v-if="showBuyerBtn && getStatus">
                           <div class="section-title">项目数量TOP3采购单位及其重点合作中标单位</div>
                           <div class="section-content">
-                              <market-top3-table :table-data="sections.buyerclass.projectCountTop3" type="count" @save="saveState"></market-top3-table>
+                              <market-top3-table :table-data="showBuyerBtn" type="count" @save="saveState"></market-top3-table>
+                              <div class="more" @click="sections.buyerclass.showCountAllBtn = false" v-if="sections.buyerclass.showCountAllBtn">
+                                <span>查看更多</span>
+                              </div>
                           </div>
                       </div>
                       <div class="vip_component"
@@ -400,16 +403,19 @@
                           </chart-example>
                         </div>
                       </div>
-                      <div class="section bg-white pd-16" v-if="sections.buyerclass.projectAmountTop3 && getStatus">
-                          <div class="section-title">采购金额TOP3采购单位及其重点合作中标单位</div>
+                      <div class="section bg-white pd-16" v-if="showAmoutBtn && getStatus">
+                          <div class="section-title">采购金额TOP30采购单位及其重点合作中标单位</div>
                           <div class="section-content">
-                              <market-top3-table :table-data="sections.buyerclass.projectAmountTop3" type="amount" @save="saveState"></market-top3-table>
+                              <market-top3-table :table-data="showAmoutBtn" type="amount" @save="saveState"></market-top3-table>
+                              <div class="more" @click="sections.buyerclass.showAmoutAllBtn = false" v-if="sections.buyerclass.showAmoutAllBtn">
+                                <span>查看更多</span>
+                              </div>
                           </div>
                       </div>
                       <div class="vip_component"
                         v-if="!getStatus"
                         style="height:10.8rem">
-                        <p class="example-title">采购金额TOP3采购单位及其重点合作中标单位</p>
+                        <p class="example-title">采购金额TOP30采购单位及其重点合作中标单位</p>
                         <div class="chart_com" style="background:url('/common-module/report-analysis/image/06-bg.png?v={{Msg "seo" "version"}}') no-repeat;background-size:100% 100%">
                           <chart-example type="item_6" imgurl='{{Msg "seo" "cdn"}}/common-module/report-analysis/image/06.png?v={{Msg "seo" "version"}}'>
                           </chart-example>
@@ -422,31 +428,37 @@
                               <line-chart-scatter :chart-data="sections.winner.chartData"></line-chart-scatter>
                           </div>
                       </div>
-                      <div class="section bg-white pd-16" v-if="sections.winner.projectCountTop3 && getStatus">
-                          <div class="section-title">项目数量TOP3中标单位及其重点合作采购单位</div>
+                      <div class="section bg-white pd-16" v-if="showWinnerCountBtn && getStatus">
+                          <div class="section-title">项目数量TOP30中标单位及其重点合作采购单位</div>
                           <div class="section-content">
-                              <market-top3-table :table-data="sections.winner.projectCountTop3" type="count" @save="saveState"></market-top3-table>
+                              <market-top3-table :table-data="showWinnerCountBtn" type="count" @save="saveState"></market-top3-table>
+                              <div class="more" @click="sections.winner.showCountAllBtn = false" v-if="sections.winner.showCountAllBtn">
+                                <span>查看更多</span>
+                              </div>
                           </div>
                       </div>
                       <div class="vip_component"
                         v-if="!getStatus"
                         style="height:10.8rem">
-                        <p class="example-title">项目数量TOP3中标单位及其重点合作采购单位</p>
+                        <p class="example-title">项目数量TOP30中标单位及其重点合作采购单位</p>
                         <div class="chart_com" style="background:url('/common-module/report-analysis/image/07-bg.png?v={{Msg "seo" "version"}}') no-repeat;background-size:100% 100%">
                           <chart-example type="item_7" imgurl='{{Msg "seo" "cdn"}}/common-module/report-analysis/image/07.png?v={{Msg "seo" "version"}}'>
                           </chart-example>
                         </div>
                       </div>
-                      <div class="section bg-white pd-16" v-if="sections.winner.projectAmountTop3 && getStatus">
-                          <div class="section-title">中标金额TOP3中标单位及其重点合作采购单位</div>
+                      <div class="section bg-white pd-16" v-if="showWinnerAmoutBtn && getStatus">
+                          <div class="section-title">中标金额TOP30中标单位及其重点合作采购单位</div>
                           <div class="section-content">
-                              <market-top3-table :table-data="sections.winner.projectAmountTop3" type="amount" @save="saveState"></market-top3-table>
+                              <market-top3-table :table-data="showWinnerAmoutBtn" type="amount" @save="saveState"></market-top3-table>
+                              <div class="more" @click="sections.winner.showAmoutAllBtn = false" v-if="sections.winner.showAmoutAllBtn">
+                                <span>查看更多</span>
+                              </div>
                           </div>
                       </div>
                       <div class="vip_component"
                         v-if="!getStatus"
                         style="height:10.8rem">
-                        <p class="example-title">中标金额TOP3中标单位及其重点合作采购单位</p>
+                        <p class="example-title">中标金额TOP30中标单位及其重点合作采购单位</p>
                         <div class="chart_com" style="background:url('/common-module/report-analysis/image/08-bg.png?v={{Msg "seo" "version"}}') no-repeat;background-size:100% 100%">
                           <chart-example type="item_8" imgurl='{{Msg "seo" "cdn"}}/common-module/report-analysis/image/08.png?v={{Msg "seo" "version"}}'>
                           </chart-example>