Browse Source

Merge remote-tracking branch 'origin/mergeBranch' into mergeBranch

qymljy 1 year ago
parent
commit
193f8c74cd

+ 14 - 6
src/HDrpManagement/customerData/components/pageTable.vue

@@ -1,8 +1,8 @@
 
 <template>
-  <div>
+  <div style="width:100%">
     <div>
-      <tableLayout height="400px" :layout="tablecols" :data="list2" :opwidth="200"  :custom="true" :width="false" fixedName="operation" :customHeader="true">
+      <tableLayout height="356px" :layout="tablecols" v-bind="$attrs" :data="list2" :opwidth="200"  :custom="true" :width="false" fixedName="operation" :customHeader="true">
         <template v-slot:header="data">
           <div v-if="data.data.label == '综合折扣'" style="display:flex;align-items:center">
             <span>{{ data.data.label }}</span>
@@ -55,8 +55,13 @@ export default {
     }
   },
   methods:{
-    async listData(){
-      const res = await this.$api.requested(this.param)
+    async listData(init){
+      if(init) this.$emit('handleParam',this.param)
+      let param = JSON.parse(JSON.stringify(this.param))
+      if (param.content.dataid instanceof Array) {
+        param.content.dataid = param.content.dataid[param.content.dataid.length - 1]
+      }
+      const res = await this.$api.requested(param)
       this.list = res.data
       this.list2 = res.data.length && res.data[0].isEmpty ? [] : res.data
       this.total = res.data.length && res.data[0].isEmpty ? 0 : res.total
@@ -74,11 +79,14 @@ export default {
     },
   },
   created() {
-    this.listData()
+    this.listData(true)
   }
 }
 
 </script>
 <style scoped>
-
+/deep/.el-table {
+  min-height: 100% !important;
+  max-height: 100% !important;
+}
 </style>

+ 127 - 99
src/HDrpManagement/customerData/index.vue

@@ -3,7 +3,7 @@
   <normalLayout>
     <template #refresh>
       <div style="margin-right:15px">
-        <el-button style="font-size:14px !important" type="text" size="small" @click="$refs.scroll.wrap.scrollTop=0">返回顶部</el-button>
+        <el-button style="font-size:14px !important;color: #999999" type="text" size="small" @click="$refs.scroll.wrap.scrollTop=0">返回顶部</el-button>
       </div>
       <!-- <i class="el-icon-refresh-right" @click="refresh" v-loading.fullscreen.lock="fullscreenLoading"></i> -->
     </template>
@@ -36,7 +36,7 @@
                     <p>
                       成交客户数
                       <el-tooltip class="item" effect="dark" content="成交客户:已成交状态的客户数量" placement="top">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                     </p>
                   </div>
@@ -45,7 +45,7 @@
                     <p>
                       参与项目客户数
                       <el-tooltip class="item" effect="dark" content="参与项目客户数:参与有下订单的项目的关联客户数" placement="top">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                     </p>
                   </div>
@@ -56,19 +56,19 @@
                     <p>
                       {{ item.value}}
                       <el-tooltip class="item" effect="dark" content="无分类客户数:统计没有客户分类信息的客户数量" placement="top" v-if="item.value == '无分类客户'">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                       <el-tooltip class="item" effect="dark" content="A核心客户:客户分类为A核心客户的数量" placement="top" v-else-if="item.value == 'A核心客户'">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                       <el-tooltip class="item" effect="dark" content="B重要客户:客户分类为B重要客户的数量" placement="top" v-else-if="item.value == 'B重要客户'">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                       <el-tooltip class="item" effect="dark" content="C普通客户:客户分类为C普通客户的数量" placement="top" v-else-if="item.value == 'C普通客户'">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                       <el-tooltip class="item" effect="dark" content="D一般客户:客户分类为D一般客户的数量" placement="top" v-else-if="item.value == 'D一般客户'">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                     </p>
                   </div>
@@ -84,19 +84,19 @@
                 <div class="panel-select">
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >部门:</label>
-                    <el-cascader
-                      ref="selectdep"
-                      size="small"
-                      v-model="chartParam1.content.dataid"
-                      :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {chartParam1.content.type=1;chartParam1.content.dataid=$event[$event.length - 1];chartParam1.content.username='';chart1Fun()} else {chartParam1.content.dataid='';chartParam1.content.type='';chartParam1.content.username='';chart1Fun()}}"></el-cascader>
+                    <el-cascader 
+                      ref="selectdep" 
+                      size="small" 
+                      v-model="chartParam1.content.dataid" 
+                      :options="deplist" 
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"
+                      @change="$event => {if($event.length) {chartParam1.content.type=1;chartParam1.content.username='';chart1Fun()} else {chartParam1.content.dataid='';chartParam1.content.type='';chartParam1.content.username='';chart1Fun()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="chartParam1.content.username" filterable placeholder="请选择" size="small"
                       @change="$event => {if($event) {chartParam1.content.type=0;chartParam1.content.dataid=$event;chartParam1.content.depname='';chart1Fun()} else {chartParam1.content.dataid='';chartParam1.content.type='';chartParam1.content.depname='';chart1Fun()}}"
-                      clearable>
+                      >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -128,19 +128,19 @@
                 <div class="panel-select">
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >部门:</label>
-                    <el-cascader
-                      ref="selectdep"
-                      size="small"
-                      v-model="typeTableParam.content.dataid"
-                      :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {typeMapParam.content.type=1;typeMapParam.content.dataid=$event[$event.length - 1];typeTableParam.content.type=1;typeTableParam.content.dataid=$event[$event.length - 1];typeTableParam.content.username='';$refs.customerTypeTable.listData();customerTypeInit()} else {typeMapParam.content.type='';typeMapParam.content.dataid='';typeTableParam.content.dataid='';typeTableParam.content.type='';typeTableParam.content.username='';$refs.customerTypeTable.listData();customerTypeInit()}}"></el-cascader>
+                    <el-cascader 
+                      ref="selectdep" 
+                      size="small" 
+                      v-model="typeTableParam.content.dataid" 
+                      :options="deplist" 
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  
+                      @change="$event => {if($event.length) {typeMapParam.content.type=1;typeMapParam.content.dataid=$event[$event.length - 1];typeTableParam.content.type=1;typeTableParam.content.username='';$refs.customerTypeTable.listData();customerTypeInit()} else {typeMapParam.content.type='';typeMapParam.content.dataid='';typeTableParam.content.dataid='';typeTableParam.content.type='';typeTableParam.content.username='';$refs.customerTypeTable.listData();customerTypeInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="typeTableParam.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {typeMapParam.content.type=0;typeMapParam.content.dataid=$event;typeTableParam.content.type=0;typeTableParam.content.dataid=$event;typeTableParam.content.depname='';$refs.customerTypeTable.listData();customerTypeInit()} else {typeMapParam.content.type='';typeMapParam.content.dataid='';typeTableParam.content.dataid='';typeTableParam.content.type='';typeTableParam.content.depname='';$refs.customerTypeTable.listData();customerTypeInit()}}"
-                    clearable>
+                    >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -199,19 +199,19 @@
                 <div class="panel-select">
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >部门:</label>
-                    <el-cascader
-                      ref="selectdep"
-                      size="small"
-                      v-model="gradTableParam.content.dataid"
-                      :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {gradMapParam.content.type=1;gradMapParam.content.dataid=$event[$event.length - 1];gradTableParam.content.type=1;gradTableParam.content.dataid=$event[$event.length - 1];gradTableParam.content.username='';$refs.customerGradTable.listData();customerGradInit()} else {gradMapParam.content.type='';gradMapParam.content.dataid='';gradTableParam.content.dataid='';gradTableParam.content.type='';gradTableParam.content.username='';$refs.customerGradTable.listData();customerGradInit()}}"></el-cascader>
+                    <el-cascader 
+                      ref="selectdep" 
+                      size="small" 
+                      v-model="gradTableParam.content.dataid" 
+                      :options="deplist" 
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  
+                      @change="$event => {if($event.length) {gradMapParam.content.type=1;gradMapParam.content.dataid=$event[$event.length - 1];gradTableParam.content.type=1;gradTableParam.content.username='';$refs.customerGradTable.listData();customerGradInit()} else {gradMapParam.content.type='';gradMapParam.content.dataid='';gradTableParam.content.dataid='';gradTableParam.content.type='';gradTableParam.content.username='';$refs.customerGradTable.listData();customerGradInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="gradTableParam.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {gradMapParam.content.type=0;gradMapParam.content.dataid=$event;gradTableParam.content.type=0;gradTableParam.content.dataid=$event;gradTableParam.content.depname='';$refs.customerGradTable.listData();customerGradInit()} else {gradMapParam.content.type='';gradMapParam.content.dataid='';gradTableParam.content.dataid='';gradTableParam.content.type='';gradTableParam.content.depname='';$refs.customerGradTable.listData();customerGradInit()}}"
-                    clearable>
+                    >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -267,19 +267,19 @@
                 <div class="panel-select">
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >部门:</label>
-                    <el-cascader
-                      ref="selectdep"
-                      size="small"
-                      v-model="contactTableParam.content.dataid"
-                      :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {contactMapParam.content.type=1;contactMapParam.content.dataid=$event[$event.length - 1];contactTableParam.content.type=1;contactTableParam.content.dataid=$event[$event.length - 1];contactTableParam.content.username='';$refs.customerContactTable.listData();customerContactInit()} else {contactMapParam.content.type='';contactMapParam.content.dataid='';contactTableParam.content.dataid='';contactTableParam.content.type='';contactTableParam.content.username='';$refs.customerContactTable.listData();customerContactInit()}}"></el-cascader>
+                    <el-cascader 
+                      ref="selectdep" 
+                      size="small" 
+                      v-model="contactTableParam.content.dataid" 
+                      :options="deplist" 
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  
+                      @change="$event => {if($event.length) {contactMapParam.content.type=1;contactMapParam.content.dataid=$event[$event.length - 1];contactTableParam.content.type=1;contactTableParam.content.username='';$refs.customerContactTable.listData();customerContactInit()} else {contactMapParam.content.type='';contactMapParam.content.dataid='';contactTableParam.content.dataid='';contactTableParam.content.type='';contactTableParam.content.username='';$refs.customerContactTable.listData();customerContactInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="contactTableParam.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {contactMapParam.content.type=0;contactMapParam.content.dataid=$event;contactTableParam.content.type=0;contactTableParam.content.dataid=$event;contactTableParam.content.depname='';$refs.customerContactTable.listData();customerContactInit()} else {contactMapParam.content.type='';contactMapParam.content.dataid='';contactTableParam.content.dataid='';contactTableParam.content.type='';contactTableParam.content.depname='';$refs.customerContactTable.listData();customerContactInit()}}"
-                    clearable>
+                    >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -334,19 +334,19 @@
                 <div class="panel-select">
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >部门:</label>
-                    <el-cascader
-                      ref="selectdep"
-                      size="small"
-                      v-model="projectTableParam.content.dataid"
-                      :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {projectMapParam.content.type=1;projectMapParam.content.dataid=$event[$event.length - 1];projectTableParam.content.type=1;projectTableParam.content.dataid=$event[$event.length - 1];projectTableParam.content.username='';$refs.customerProjectTable.listData();customerFllowInit()} else {projectMapParam.content.type='';projectMapParam.content.dataid='';projectTableParam.content.dataid='';projectTableParam.content.type='';projectTableParam.content.username='';$refs.customerProjectTable.listData();customerFllowInit()}}"></el-cascader>
+                    <el-cascader 
+                      ref="selectdep" 
+                      size="small" 
+                      v-model="projectTableParam.content.dataid" 
+                      :options="deplist" 
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  
+                      @change="$event => {if($event.length) {projectMapParam.content.type=1;projectMapParam.content.dataid=$event[$event.length - 1];projectTableParam.content.type=1;projectTableParam.content.username='';$refs.customerProjectTable.listData();customerFllowInit()} else {projectMapParam.content.type='';projectMapParam.content.dataid='';projectTableParam.content.dataid='';projectTableParam.content.type='';projectTableParam.content.username='';$refs.customerProjectTable.listData();customerFllowInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="projectTableParam.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {projectMapParam.content.type=0;projectMapParam.content.dataid=$event;projectTableParam.content.type=0;projectTableParam.content.dataid=$event;projectTableParam.content.depname='';$refs.customerProjectTable.listData();customerFllowInit()} else {projectMapParam.content.type='';projectMapParam.content.dataid='';projectTableParam.content.dataid='';projectTableParam.content.type='';projectTableParam.content.depname='';$refs.customerProjectTable.listData();customerFllowInit()}}"
-                    clearable>
+                    >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -401,19 +401,19 @@
                 <div class="panel-select">
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >部门:</label>
-                    <el-cascader
-                      ref="selectdep"
-                      size="small"
-                      v-model="fllowTableParam.content.dataid"
-                      :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {fllowMapParam.content.type=1;fllowMapParam.content.dataid=$event[$event.length - 1];fllowTableParam.content.type=1;fllowTableParam.content.dataid=$event[$event.length - 1];fllowTableParam.content.username='';$refs.customerFllowTable.listData();customerFllowInit()} else {fllowMapParam.content.type='';fllowMapParam.content.dataid='';fllowTableParam.content.dataid='';fllowTableParam.content.type='';fllowTableParam.content.username='';$refs.customerFllowTable.listData();customerFllowInit()}}"></el-cascader>
+                    <el-cascader 
+                      ref="selectdep" 
+                      size="small" 
+                      v-model="fllowTableParam.content.dataid" 
+                      :options="deplist" 
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  
+                      @change="$event => {if($event.length) {fllowMapParam.content.type=1;fllowMapParam.content.dataid=$event[$event.length - 1];fllowTableParam.content.type=1;fllowTableParam.content.username='';$refs.customerFllowTable.listData();customerFllowInit()} else {fllowMapParam.content.type='';fllowMapParam.content.dataid='';fllowTableParam.content.dataid='';fllowTableParam.content.type='';fllowTableParam.content.username='';$refs.customerFllowTable.listData();customerFllowInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="fllowTableParam.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {fllowMapParam.content.type=0;fllowMapParam.content.dataid=$event;fllowTableParam.content.type=0;fllowTableParam.content.dataid=$event;fllowTableParam.content.depname='';$refs.customerFllowTable.listData();customerFllowInit()} else {fllowMapParam.content.type='';fllowMapParam.content.dataid='';fllowTableParam.content.dataid='';fllowTableParam.content.type='';fllowTableParam.content.depname='';$refs.customerFllowTable.listData();customerFllowInit()}}"
-                    clearable>
+                    >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -468,19 +468,19 @@
                 <div class="panel-select">
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >部门:</label>
-                    <el-cascader
-                      ref="selectdep"
-                      size="small"
-                      v-model="chartParam2.content.dataid"
-                      :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {chartParam2.content.type=1;chartParam2.content.dataid=$event[$event.length - 1];chartParam2.content.username='';chart2Fun()} else {chartParam2.content.dataid='';chartParam2.content.type='';chartParam2.content.username='';chart2Fun()}}"></el-cascader>
+                    <el-cascader 
+                      ref="selectdep" 
+                      size="small" 
+                      v-model="chartParam2.content.dataid" 
+                      :options="deplist" 
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  
+                      @change="$event => {if($event.length) {chartParam2.content.type=1;chartParam2.content.username='';chart2Fun()} else {chartParam2.content.dataid='';chartParam2.content.type='';chartParam2.content.username='';chart2Fun()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="chartParam2.content.username" filterable placeholder="请选择" size="small"
                       @change="$event => {if($event) {chartParam2.content.type=0;chartParam2.content.dataid=$event;chartParam2.content.depname='';chart2Fun()} else {chartParam2.content.dataid='';chartParam2.content.type='';chartParam2.content.depname='';chart2Fun()}}"
-                      clearable>
+                      >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -512,19 +512,19 @@
                 <div class="panel-select">
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >部门:</label>
-                    <el-cascader
-                      ref="selectdep"
-                      size="small"
-                      v-model="unfllowTableParam.content.dataid"
-                      :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {unfllowMapParam.content.type=1;unfllowMapParam.content.dataid=$event[$event.length - 1];unfllowTableParam.content.type=1;unfllowTableParam.content.dataid=$event[$event.length - 1];unfllowTableParam.content.username='';$refs.customerUnfllowTable.listData();customerUnfllowInit()} else {unfllowMapParam.content.type='';unfllowMapParam.content.dataid='';unfllowTableParam.content.dataid='';unfllowTableParam.content.type='';unfllowTableParam.content.username='';$refs.customerUnfllowTable.listData();customerUnfllowInit()}}"></el-cascader>
+                    <el-cascader 
+                      ref="selectdep" 
+                      size="small" 
+                      v-model="unfllowTableParam.content.dataid" 
+                      :options="deplist" 
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  
+                      @change="$event => {if($event.length) {unfllowMapParam.content.type=1;unfllowMapParam.content.dataid=$event[$event.length - 1];unfllowTableParam.content.type=1;unfllowTableParam.content.username='';$refs.customerUnfllowTable.listData();customerUnfllowInit()} else {unfllowMapParam.content.type='';unfllowMapParam.content.dataid='';unfllowTableParam.content.dataid='';unfllowTableParam.content.type='';unfllowTableParam.content.username='';$refs.customerUnfllowTable.listData();customerUnfllowInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="unfllowTableParam.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {unfllowMapParam.content.type=0;unfllowMapParam.content.dataid=$event;unfllowTableParam.content.type=0;unfllowTableParam.content.dataid=$event;unfllowTableParam.content.depname='';$refs.customerUnfllowTable.listData();customerUnfllowInit()} else {unfllowMapParam.content.type='';unfllowMapParam.content.dataid='';unfllowTableParam.content.dataid='';unfllowTableParam.content.type='';unfllowTableParam.content.depname='';$refs.customerUnfllowTable.listData();customerUnfllowInit()}}"
-                    clearable>
+                    >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -618,19 +618,19 @@
                 <div class="panel-select">
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >部门:</label>
-                    <el-cascader
-                      ref="selectdep"
-                      size="small"
-                      v-model="projectParam.content.dataid"
-                      :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {projectParam.content.type=1;projectParam.content.dataid=$event[$event.length - 1];projectParam.content.username='';chart3Fun()} else {projectParam.content.dataid='';projectParam.content.type='';projectParam.content.username='';chart3Fun()}}"></el-cascader>
+                    <el-cascader 
+                      ref="selectdep" 
+                      size="small" 
+                      v-model="projectParam.content.dataid" 
+                      :options="deplist" 
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"
+                      @change="$event => {if($event.length) {projectParam.content.type=1;projectParam.content.username='';chart3Fun()} else {projectParam.content.dataid='';projectParam.content.type='';projectParam.content.username='';chart3Fun()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="projectParam.content.username" filterable placeholder="请选择" size="small"
                       @change="$event => {if($event) {projectParam.content.type=0;projectParam.content.dataid=$event;projectParam.content.depname='';chart3Fun()} else {projectParam.content.dataid='';projectParam.content.type='';projectParam.content.depname='';chart3Fun()}}"
-                      clearable>
+                      >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -668,6 +668,7 @@ import { DualAxes,Pie,measureTextWidth,Column,Line  } from '@antv/g2plot'
 import pageTable from './components/pageTable.vue'
 import borderTemp from '@/HDrpManagement/dataanalysis/components/border.vue'
 export default {
+  name:'customerData',
   components:{borderTemp,pageTable},
   data () {
     return {
@@ -942,8 +943,11 @@ export default {
     },
     //12月新增初始化
     async chart1Fun (init) {
-      console.log(this.chartParam1);
-      let res = await this.$api.requested(this.chartParam1)
+      let param = JSON.parse(JSON.stringify(this.chartParam1))
+      if (param.content.dataid instanceof Array) {
+        param.content.dataid = param.content.dataid[param.content.dataid.length - 1]
+      }
+      let res = await this.$api.requested(param)
       this.uvBillData = res.data.histogram
       res.data.lineChart.forEach(item => item[`同比增长率(%)`] = item.value)
       this.transformData = res.data.lineChart
@@ -973,7 +977,11 @@ export default {
     },
     //12月跟进初始化
     async chart2Fun (init) {
-      let res = await this.$api.requested(this.chartParam2)
+      let param = JSON.parse(JSON.stringify(this.chartParam2))
+      if (param.content.dataid instanceof Array) {
+        param.content.dataid = param.content.dataid[param.content.dataid.length - 1]
+      }
+      let res = await this.$api.requested(param)
       console.log(res.data,'近12月跟进');
       this.chartMapData = res.data
       this.chartMapData.tbzzl.forEach(item => item.key = '同比增长率(%)')
@@ -1051,12 +1059,12 @@ export default {
           interactions: [{ type: 'element-single-selected' }, { type: 'element-active' }, { type: 'pie-statistic-active' }],
         });
         this.customerTypeMap.on('element:click',(v) => {
-          if (v.data.data.key != this.gradTableParam.content.where.grade) {
-            this.gradTableParam.content.where.grade = v.data.data.key
-            this.$refs.customerGradTable.listData()
+          if (v.data.data.key != this.typeTableParam.content.where.customerstype) {
+            this.typeTableParam.content.where.customerstype = v.data.data.key
+            this.$refs.customerTypeTable.listData()
           } else {
-            this.gradTableParam.content.where.grade = ''
-            this.$refs.customerGradTable.listData()
+            this.typeTableParam.content.where.customerstype = ''
+            this.$refs.customerTypeTable.listData()
           }
         })
         this.customerTypeMap.render();
@@ -1259,7 +1267,11 @@ export default {
     },
     //客户跟进情况图初始化
     async customerFllowInit (init) {
-      let res = await this.$api.requested(this.fllowMapParam)
+      let param = JSON.parse(JSON.stringify(this.fllowMapParam))
+      if (param.content.dataid instanceof Array) {
+        param.content.dataid = param.content.dataid[param.content.dataid.length - 1]
+      }
+      let res = await this.$api.requested(param)
       this.customerFllowData.map = res.data
       console.log(this.customerFllowData,'关联项目数据');
       if (init) {
@@ -1351,7 +1363,17 @@ export default {
               { type: 'adjust-color' },
             ],
           },
+          interactions: [{ type: 'element-highlight-by-x' }],
         });
+        this.customerUnfllowMap.on('element:click',(v) => {
+          console.log(v);
+          if (v.data.data.datetype == this.unfllowTableParam.content.where.dateType) {
+            this.unfllowTableParam.content.where.dateType = ''
+          } else {
+            this.unfllowTableParam.content.where.dateType = v.data.data.datetype
+          }
+          this.$refs.customerUnfllowTable.listData()
+        })
         this.customerUnfllowMap.render()
       } else {
         this.customerUnfllowMap.changeData(this.customerUnfllowData.map)
@@ -1360,7 +1382,11 @@ export default {
     },
     //客户报价情况图初始化
     async chart3Fun (init) {
-      let res = await this.$api.requested(this.projectParam)
+      let param = JSON.parse(JSON.stringify(this.projectParam))
+      if (param.content.dataid instanceof Array) {
+        param.content.dataid = param.content.dataid[param.content.dataid.length - 1]
+      }
+      let res = await this.$api.requested(param)
       console.log(res.data,'近12月报价');
       this.projectMapData = res.data
       if (init) {
@@ -1518,20 +1544,21 @@ export default {
         this.unfllowTableParam.content.username = ''
         this.$refs.customerUnfllowTable.listData()
       } else {
+        let name = JSON.parse(sessionStorage.getItem('accountinfo')).name
         this.chartParam1.content.dataid = ''
         this.chartParam1.content.type =''
-        this.chartParam1.content.username = ''
+        this.chartParam1.content.username =name
         this.chartParam1.content.depname = ''
         this.chart1Fun()
 
         this.chartParam2.content.dataid = ''
         this.chartParam2.content.type =''
-        this.chartParam2.content.username = ''
+        this.chartParam2.content.username =name
         this.chart2Fun()
 
         this.projectParam.content.dataid = ''
         this.projectParam.content.type =''
-        this.projectParam.content.username = ''
+        this.projectParam.content.username =name
         this.chart3Fun()
 
         this.typeMapParam.content.dataid = ''
@@ -1539,7 +1566,7 @@ export default {
         this.customerTypeInit()
         this.typeTableParam.content.dataid = ''
         this.typeTableParam.content.type =''
-        this.typeTableParam.content.username = ''
+        this.typeTableParam.content.username = name
         this.$refs.customerTypeTable.listData()
 
         this.gradMapParam.content.dataid = ''
@@ -1547,7 +1574,8 @@ export default {
         this.customerGradInit()
         this.gradTableParam.content.dataid = ''
         this.gradTableParam.content.type =''
-        this.gradTableParam.content.username = ''
+        this.gradTableParam.content.username = name
+        console.log(this.gradTableParam.content.username,'除非');
         this.$refs.customerGradTable.listData()
 
 
@@ -1556,7 +1584,7 @@ export default {
         this.customerContactInit()
         this.contactTableParam.content.dataid = ''
         this.contactTableParam.content.type =''
-        this.contactTableParam.content.username = ''
+        this.contactTableParam.content.username = name
         this.$refs.customerContactTable.listData()
 
         this.projectMapParam.content.dataid = ''
@@ -1564,7 +1592,7 @@ export default {
         this.customerProjectInit()
         this.projectTableParam.content.dataid = ''
         this.projectTableParam.content.type =''
-        this.projectTableParam.content.username = ''
+        this.projectTableParam.content.username = name
         this.$refs.customerProjectTable.listData()
 
         this.fllowMapParam.content.dataid = ''
@@ -1572,7 +1600,7 @@ export default {
         this.customerFllowInit()
         this.fllowTableParam.content.dataid = ''
         this.fllowTableParam.content.type =''
-        this.fllowTableParam.content.username = ''
+        this.fllowTableParam.content.username = name
         this.$refs.customerFllowTable.listData()
 
         this.unfllowMapParam.content.dataid = ''
@@ -1580,7 +1608,7 @@ export default {
         this.customerUnfllowInit()
         this.unfllowTableParam.content.dataid = ''
         this.unfllowTableParam.content.type =''
-        this.unfllowTableParam.content.username = ''
+        this.unfllowTableParam.content.username = name
         this.$refs.customerUnfllowTable.listData()
       }
     },

+ 13 - 5
src/HDrpManagement/projectData/components/pageTable.vue

@@ -2,7 +2,7 @@
 <template>
   <div style="width:100%">
     <div>
-      <tableLayout height="400px" :layout="tablecols" v-bind="$attrs" :data="list2" :opwidth="200"  :custom="true" :width="false" fixedName="operation" :customHeader="true">
+      <tableLayout height="356px" :layout="tablecols" v-bind="$attrs" :data="list2" :opwidth="200"  :custom="true" :width="false" fixedName="operation" :customHeader="true">
         <template v-slot:header="data">
           <div v-if="data.data.label == '综合折扣'" style="display:flex;align-items:center">
             <span>{{ data.data.label }}</span>
@@ -55,8 +55,13 @@ export default {
     }
   },
   methods:{
-    async listData(){
-      const res = await this.$api.requested(this.param)
+    async listData(init){
+      if(init) this.$emit('handleParam',this.param)
+      let param = JSON.parse(JSON.stringify(this.param))
+      if (param.content.dataid instanceof Array) {
+        param.content.dataid = param.content.dataid[param.content.dataid.length - 1]
+      }
+      const res = await this.$api.requested(param)
       this.list = res.data
       this.list2 = res.data.length && res.data[0].isEmpty ? [] : res.data
       this.total = res.data.length && res.data[0].isEmpty ? 0 : res.total
@@ -74,11 +79,14 @@ export default {
     },
   },
   created() {
-    this.listData()
+    this.listData(true)
   }
 }
 
 </script>
 <style scoped>
-
+/deep/.el-table {
+  min-height: 100% !important;
+  max-height: 100% !important;
+}
 </style>

+ 1 - 1
src/HDrpManagement/projectData/components/table.vue

@@ -1,7 +1,7 @@
 <template>
   <div>
     <!-- :header-cell-style="{background:'#EEEEEE',color:'#333'}" -->
-    <el-table ref="table" :row-class-name="tableClassName" highlight-current-row :data="data"  size="mini" :header-cell-style="{height:'40px',color:'#606266',fontWeight:'400',fontSize:'14px'}"
+    <el-table ref="table" :row-class-name="tableClassName" highlight-current-row :data="data" style="height:100%"  size="mini" :header-cell-style="{height:'40px',color:'#606266',fontWeight:'400',fontSize:'14px'}"
               :cell-style="{height:'40px',color:'#666666',fontWeight:'400'}" border @selection-change="selectionChange">
       <el-table-column
           type="selection"

+ 173 - 87
src/HDrpManagement/projectData/index.vue

@@ -3,7 +3,7 @@
   <normalLayout>
     <template #refresh>
       <div style="margin-right:15px">
-        <el-button style="font-size:14px !important" type="text" size="small" @click="$refs.scroll.wrap.scrollTop=0">返回顶部</el-button>
+        <el-button style="font-size:14px !important;color: #999999" type="text" size="small" @click="$refs.scroll.wrap.scrollTop=0">返回顶部</el-button>
       </div>
       <!-- <i class="el-icon-refresh-right" @click="refresh" v-loading.fullscreen.lock="fullscreenLoading"></i> -->
     </template>
@@ -30,15 +30,15 @@
               <div class="data-all-wrapper">
                 <div class="data-left">
                   <div class="data-item">
-                    <p>{{ tool.formatAmount(dataAll.dealProject) }}</p>
+                    <p>{{ tool.formatAmount(dataAll.totalqty) }}</p>
                     <p>项目总数</p>
                   </div>
                   <div class="data-item">
                     <p>{{ tool.formatAmount(dataAll.reportProject)}}</p>
-                    <p>
+                    <p >
                       报备项目数
                       <el-tooltip class="item" effect="dark" content="报备项目数:统计已报备的项目数量" placement="top">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                     </p>
                   </div>
@@ -47,16 +47,16 @@
                     <p>
                       进行中项目数
                       <el-tooltip class="item" effect="dark" content="参与项目客户数:参与有下订单的项目的关联客户数" placement="top">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                     </p>
                   </div>
                   <div class="data-item">
-                    <p>{{ tool.formatAmount(dataAll.totalqty) }}</p>
+                    <p>{{ tool.formatAmount(dataAll.dealProject) }}</p>
                     <p>
                       项目成交数
                       <el-tooltip class="item" effect="dark" content="项目成交数:统计有关联审核过的订单的项目数量" placement="top">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                     </p>
                   </div>
@@ -65,7 +65,7 @@
                     <p>
                       项目成交率
                       <el-tooltip class="item" effect="dark" content="项目成交率=有关联审核订单的项目数÷项目总数×100%" placement="top">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                     </p>
                   </div>
@@ -76,19 +76,19 @@
                     <p>
                       {{ item.value }}
                       <el-tooltip class="item" effect="dark" content="无分类客户数:统计没有客户分类信息的客户数量" placement="top" v-if="item.value == '无分类客户'">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                       <el-tooltip class="item" effect="dark" content="A核心客户:客户分类为A核心客户的数量" placement="top" v-else-if="item.value == 'A核心客户'">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                       <el-tooltip class="item" effect="dark" content="B重要客户:客户分类为B重要客户的数量" placement="top" v-else-if="item.value == 'B重要客户'">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                       <el-tooltip class="item" effect="dark" content="C普通客户:客户分类为C普通客户的数量" placement="top" v-else-if="item.value == 'C普通客户'">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                       <el-tooltip class="item" effect="dark" content="D一般客户:客户分类为D一般客户的数量" placement="top" v-else-if="item.value == 'D一般客户'">
-                        <i class="el-icon-warning-outline"></i>
+                        <img style="vertical-align: middle" src="@/assets/icons/prompt_icon.svg" alt="">
                       </el-tooltip>
                     </p>
                   </div>
@@ -108,14 +108,14 @@
                       size="small"
                       v-model="typeTableParam.content.dataid"
                       :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {typeMapParam.content.type=1;typeMapParam.content.dataid=$event[$event.length - 1];typeTableParam.content.type=1;typeTableParam.content.dataid=$event[$event.length - 1];typeTableParam.content.username='';$refs.typeTable.listData();typeInit()} else {typeMapParam.content.type='';typeMapParam.content.dataid='';typeTableParam.content.dataid='';typeTableParam.content.type='';typeTableParam.content.username='';$refs.typeTable.listData();typeInit()}}"></el-cascader>
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}" 
+                      @change="$event => {if($event.length) {typeMapParam.content.type=1;typeMapParam.content.dataid=$event[$event.length - 1];typeTableParam.content.type=1;typeTableParam.content.username='';$refs.typeTable.listData();typeInit()} else {typeMapParam.content.type='';typeMapParam.content.dataid='';typeTableParam.content.dataid='';typeTableParam.content.type='';typeTableParam.content.username='';$refs.typeTable.listData();typeInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="typeTableParam.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {typeMapParam.content.type=0;typeMapParam.content.dataid=$event;typeTableParam.content.type=0;typeTableParam.content.dataid=$event;typeTableParam.content.depname='';$refs.typeTable.listData();typeInit()} else {typeMapParam.content.type='';typeMapParam.content.dataid='';typeTableParam.content.dataid='';typeTableParam.content.type='';typeTableParam.content.depname='';$refs.typeTable.listData();typeInit()}}"
-                    clearable>
+                  >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -124,14 +124,14 @@
                       </el-option>
                     </el-select>
                   </div>
-                  <div class="mt-10 inline-16" style="margin-left:10px">
+                  <!-- <div class="mt-10 inline-16" style="margin-left:10px">
                     <FullScroll domId="projectType"></FullScroll>
-                  </div>
+                  </div> -->
                 </div>
               </div>
               <div class="panel-content" id="projectType">
-                <div ref="typeEl" style="width:430rem"></div>
-                <div class="panel-table" style="width:1151rem;">
+                <div ref="typeEl" style="width:30%"></div>
+                <div class="panel-table" style="width:70%">
                   <pageTable
                     ref="typeTable"
                     :tablecols="tool.tabelCol($route.name).projectTable.tablecols"
@@ -185,14 +185,14 @@
                       size="small"
                       v-model="gradTableParam.content.dataid"
                       :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {gradMapParam.content.type=1;gradMapParam.content.dataid=$event[$event.length - 1];gradTableParam.content.type=1;gradTableParam.content.dataid=$event[$event.length - 1];gradTableParam.content.username='';$refs.gradTable.listData();gradInit()} else {gradMapParam.content.type='';gradMapParam.content.dataid='';gradTableParam.content.dataid='';gradTableParam.content.type='';gradTableParam.content.username='';$refs.gradTable.listData();gradInit()}}"></el-cascader>
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}" 
+                      @change="$event => {if($event.length) {gradMapParam.content.type=1;gradMapParam.content.dataid=$event[$event.length - 1];gradTableParam.content.type=1;gradTableParam.content.username='';$refs.gradTable.listData();gradInit()} else {gradMapParam.content.type='';gradMapParam.content.dataid='';gradTableParam.content.dataid='';gradTableParam.content.type='';gradTableParam.content.username='';$refs.gradTable.listData();gradInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="gradTableParam.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {gradMapParam.content.type=0;gradMapParam.content.dataid=$event;gradTableParam.content.type=0;gradTableParam.content.dataid=$event;gradTableParam.content.depname='';$refs.gradTable.listData();gradInit()} else {gradMapParam.content.type='';gradMapParam.content.dataid='';gradTableParam.content.dataid='';gradTableParam.content.type='';gradTableParam.content.depname='';$refs.gradTable.listData();gradInit()}}"
-                    clearable>
+                    >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -204,8 +204,8 @@
                 </div>
               </div>
               <div class="panel-content">
-                <div ref="gradEl" style="width:430rem"></div>
-                <div class="panel-table" style="width:1151rem">
+                <div ref="gradEl" style="width:30%"></div>
+                <div class="panel-table" style="width:70%">
                   <pageTable
                     ref="gradTable"
                     :tablecols="tool.tabelCol($route.name).projectTable.tablecols"
@@ -259,14 +259,14 @@
                       size="small"
                       v-model="scoreTableParam1.content.dataid"
                       :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {scoreMapParam1.content.type=1;scoreMapParam1.content.dataid=$event[$event.length - 1];scoreTableParam1.content.type=1;scoreTableParam1.content.dataid=$event[$event.length - 1];scoreTableParam1.content.username='';$refs.scoreTable.listData();scoreInit()} else {scoreMapParam1.content.type='';scoreMapParam1.content.dataid='';scoreTableParam1.content.dataid='';scoreTableParam1.content.type='';scoreTableParam1.content.username='';$refs.scoreTable.listData();scoreInit()}}"></el-cascader>
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}" 
+                      @change="$event => {if($event.length) {scoreMapParam1.content.type=1;scoreMapParam1.content.dataid=$event[$event.length - 1];scoreTableParam1.content.type=1;scoreTableParam1.content.username='';$refs.scoreTable.listData();scoreInit()} else {scoreMapParam1.content.type='';scoreMapParam1.content.dataid='';scoreTableParam1.content.dataid='';scoreTableParam1.content.type='';scoreTableParam1.content.username='';$refs.scoreTable.listData();scoreInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="scoreTableParam1.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {scoreMapParam1.content.type=0;scoreMapParam1.content.dataid=$event;scoreTableParam1.content.type=0;scoreTableParam1.content.dataid=$event;scoreTableParam1.content.depname='';$refs.scoreTable.listData();scoreInit()} else {scoreMapParam1.content.type='';gradMapParam.content.dataid='';scoreTableParam1.content.dataid='';scoreTableParam1.content.type='';scoreTableParam1.content.depname='';$refs.scoreTable.listData();scoreInit()}}"
-                    clearable>
+                    >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -284,7 +284,7 @@
                     <label  class="search__label" >评估分档位:</label>
                     <el-select v-model="scoreTableParam1.content.where.taskType" filterable placeholder="请选择" size="small"
                     @change="$refs.scoreTable.listData()"
-                    clearable>
+                    >
                       <el-option label="全部" value="" />
                       <el-option label="高分档" value="高分档" />
                       <el-option label="中分档" value="中分档" />
@@ -347,14 +347,14 @@
                       size="small"
                       v-model="addParam.content.dataid"
                       :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {addParam.content.type=1;addParam.content.dataid=$event[$event.length - 1];addParam.content.username='';addFun()} else {addParam.content.dataid='';addParam.content.type='';addParam.content.username='';addFun()}}"></el-cascader>
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}" 
+                      @change="$event => {if($event.length) {addParam.content.type=1;addParam.content.username='';addFun()} else {addParam.content.dataid='';addParam.content.type='';addParam.content.username='';addFun()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="addParam.content.username" filterable placeholder="请选择" size="small"
                       @change="$event => {if($event) {addParam.content.type=0;addParam.content.dataid=$event;addParam.content.depname='';addFun()} else {addParam.content.dataid='';addParam.content.type='';addParam.content.depname='';addFun()}}"
-                      clearable>
+                      >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -391,14 +391,14 @@
                       size="small"
                       v-model="baobeiParam.content.dataid"
                       :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {baobeiParam.content.type=1;baobeiParam.content.dataid=$event[$event.length - 1];baobeiParam.content.username='';baobeiFun()} else {baobeiParam.content.dataid='';baobeiParam.content.type='';baobeiParam.content.username='';baobeiFun()}}"></el-cascader>
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}" 
+                      @change="$event => {if($event.length) {baobeiParam.content.type=1;baobeiParam.content.username='';baobeiFun()} else {baobeiParam.content.dataid='';baobeiParam.content.type='';baobeiParam.content.username='';baobeiFun()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="baobeiParam.content.username" filterable placeholder="请选择" size="small"
                       @change="$event => {if($event) {baobeiParam.content.type=0;baobeiParam.content.dataid=$event;baobeiParam.content.depname='';baobeiFun()} else {baobeiParam.content.dataid='';baobeiParam.content.type='';baobeiParam.content.depname='';baobeiFun()}}"
-                      clearable>
+                      >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -435,14 +435,14 @@
                       size="small"
                       v-model="baojiaParam.content.dataid"
                       :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {baojiaParam.content.type=1;baojiaParam.content.dataid=$event[$event.length - 1];baojiaParam.content.username='';baojiaFun()} else {baojiaParam.content.dataid='';baojiaParam.content.type='';baojiaParam.content.username='';baojiaFun()}}"></el-cascader>
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}" 
+                      @change="$event => {if($event.length) {baojiaParam.content.type=1;baojiaParam.content.username='';baojiaFun()} else {baojiaParam.content.dataid='';baojiaParam.content.type='';baojiaParam.content.username='';baojiaFun()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="baojiaParam.content.username" filterable placeholder="请选择" size="small"
                       @change="$event => {if($event) {baojiaParam.content.type=0;baojiaParam.content.dataid=$event;baojiaParam.content.depname='';baojiaFun()} else {baojiaParam.content.dataid='';baojiaParam.content.type='';baojiaParam.content.depname='';baojiaFun()}}"
-                      clearable>
+                      >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -479,14 +479,14 @@
                       size="small"
                       v-model="fllowParam.content.dataid"
                       :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {fllowParam.content.type=1;fllowParam.content.dataid=$event[$event.length - 1];fllowParam.content.username='';fllowFun()} else {fllowParam.content.dataid='';fllowParam.content.type='';fllowParam.content.username='';fllowFun()}}"></el-cascader>
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}" 
+                      @change="$event => {if($event.length) {fllowParam.content.type=1;fllowParam.content.username='';fllowFun()} else {fllowParam.content.dataid='';fllowParam.content.type='';fllowParam.content.username='';fllowFun()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="fllowParam.content.username" filterable placeholder="请选择" size="small"
                       @change="$event => {if($event) {fllowParam.content.type=0;fllowParam.content.dataid=$event;fllowParam.content.depname='';fllowFun()} else {fllowParam.content.dataid='';fllowParam.content.type='';fllowParam.content.depname='';fllowFun()}}"
-                      clearable>
+                      >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -523,14 +523,14 @@
                       size="small"
                       v-model="fllowTableParam.content.dataid"
                       :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {fllowMapParam.content.type=1;fllowMapParam.content.dataid=$event[$event.length - 1];fllowTableParam.content.type=1;fllowTableParam.content.dataid=$event[$event.length - 1];fllowTableParam.content.username='';$refs.projectFllowTable.listData();fllowInit()} else {fllowMapParam.content.type='';fllowMapParam.content.dataid='';fllowTableParam.content.dataid='';fllowTableParam.content.type='';fllowTableParam.content.username='';$refs.projectFllowTable.listData();fllowInit()}}"></el-cascader>
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}" 
+                      @change="$event => {if($event.length) {fllowMapParam.content.type=1;fllowMapParam.content.dataid=$event[$event.length - 1];fllowTableParam.content.type=1;fllowTableParam.content.username='';$refs.projectFllowTable.listData();fllowInit()} else {fllowMapParam.content.type='';fllowMapParam.content.dataid='';fllowTableParam.content.dataid='';fllowTableParam.content.type='';fllowTableParam.content.username='';$refs.projectFllowTable.listData();fllowInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="fllowTableParam.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {fllowMapParam.content.type=0;fllowMapParam.content.dataid=$event;fllowTableParam.content.type=0;fllowTableParam.content.dataid=$event;fllowTableParam.content.depname='';$refs.projectFllowTable.listData();fllowInit()} else {fllowMapParam.content.type='';fllowMapParam.content.dataid='';fllowTableParam.content.dataid='';fllowTableParam.content.type='';fllowTableParam.content.depname='';$refs.projectFllowTable.listData();fllowInit()}}"
-                    clearable>
+                    >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -542,8 +542,8 @@
                 </div>
               </div>
               <div class="panel-content">
-                <div ref="projectFllowEl" style="width:430rem"></div>
-                <div class="panel-table" style="width:1151rem">
+                <div ref="projectFllowEl" style="width:30%"></div>
+                <div class="panel-table" style="width:70%">
                   <pageTable
                     ref="projectFllowTable"
                     :tablecols="tool.tabelCol($route.name).projectTable.tablecols"
@@ -597,14 +597,14 @@
                       size="small"
                       v-model="contactTableParam.content.dataid"
                       :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {contactMapParam.content.type=1;contactMapParam.content.dataid=$event[$event.length - 1];contactTableParam.content.type=1;contactTableParam.content.dataid=$event[$event.length - 1];contactTableParam.content.username='';$refs.projectContactTable.listData();contactInit()} else {contactMapParam.content.type='';contactMapParam.content.dataid='';contactTableParam.content.dataid='';contactTableParam.content.type='';contactTableParam.content.username='';$refs.projectContactTable.listData();contactInit()}}"></el-cascader>
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}" 
+                      @change="$event => {if($event.length) {contactMapParam.content.type=1;contactMapParam.content.dataid=$event[$event.length - 1];contactTableParam.content.type=1;contactTableParam.content.username='';$refs.projectContactTable.listData();contactInit()} else {contactMapParam.content.type='';contactMapParam.content.dataid='';contactTableParam.content.dataid='';contactTableParam.content.type='';contactTableParam.content.username='';$refs.projectContactTable.listData();contactInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="contactTableParam.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {contactMapParam.content.type=0;contactMapParam.content.dataid=$event;contactTableParam.content.type=0;contactTableParam.content.dataid=$event;contactTableParam.content.depname='';$refs.projectContactTable.listData();contactInit()} else {contactMapParam.content.type='';contactMapParam.content.dataid='';contactTableParam.content.dataid='';contactTableParam.content.type='';contactTableParam.content.depname='';$refs.projectContactTable.listData();contactInit()}}"
-                    clearable>
+                    >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -616,8 +616,8 @@
                 </div>
               </div>
               <div class="panel-content">
-                <div ref="projectContactEl" style="width:430rem"></div>
-                <div class="panel-table" style="width:1151rem">
+                <div ref="projectContactEl" style="width:30%"></div>
+                <div class="panel-table" style="width:70%">
                   <pageTable
                     ref="projectContactTable"
                     :tablecols="tool.tabelCol($route.name).projectTable.tablecols"
@@ -671,14 +671,14 @@
                       size="small"
                       v-model="customerTableParam.content.dataid"
                       :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {customerMapParam.content.type=1;customerMapParam.content.dataid=$event[$event.length - 1];customerTableParam.content.type=1;customerTableParam.content.dataid=$event[$event.length - 1];customerTableParam.content.username='';$refs.projectCustomerTable.listData();customerInit()} else {customerMapParam.content.type='';customerMapParam.content.dataid='';customerTableParam.content.dataid='';customerTableParam.content.type='';customerTableParam.content.username='';$refs.projectCustomerTable.listData();customerInit()}}"></el-cascader>
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}" 
+                      @change="$event => {if($event.length) {customerMapParam.content.type=1;customerMapParam.content.dataid=$event[$event.length - 1];customerTableParam.content.type=1;customerTableParam.content.username='';$refs.projectCustomerTable.listData();customerInit()} else {customerMapParam.content.type='';customerMapParam.content.dataid='';customerTableParam.content.dataid='';customerTableParam.content.type='';customerTableParam.content.username='';$refs.projectCustomerTable.listData();customerInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="customerTableParam.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {customerMapParam.content.type=0;customerMapParam.content.dataid=$event;customerTableParam.content.type=0;customerTableParam.content.dataid=$event;customerTableParam.content.depname='';$refs.projectCustomerTable.listData();customerInit()} else {customerMapParam.content.type='';customerMapParam.content.dataid='';customerTableParam.content.dataid='';customerTableParam.content.type='';customerTableParam.content.depname='';$refs.projectCustomerTable.listData();customerInit()}}"
-                    clearable>
+                    >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -690,8 +690,8 @@
                 </div>
               </div>
               <div class="panel-content">
-                <div ref="projectCustomerEl" style="width:430rem"></div>
-                <div class="panel-table" style="width:1151rem">
+                <div ref="projectCustomerEl" style="width:30%"></div>
+                <div class="panel-table" style="width:70%">
                   <pageTable
                     ref="projectCustomerTable"
                     :tablecols="tool.tabelCol($route.name).projectTable.tablecols"
@@ -745,14 +745,14 @@
                       size="small"
                       v-model="scoreTableParam.content.dataid"
                       :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {scoreMapParam.content.type=1;scoreMapParam.content.dataid=$event[$event.length - 1];scoreTableParam.content.type=1;scoreTableParam.content.dataid=$event[$event.length - 1];scoreTableParam.content.username='';$refs.projectScoreTable.listData();projectScoreInit()} else {scoreMapParam.content.type='';scoreMapParam.content.dataid='';scoreTableParam.content.dataid='';scoreTableParam.content.type='';scoreTableParam.content.username='';$refs.projectScoreTable.listData();projectScoreInit()}}"></el-cascader>
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}" 
+                      @change="$event => {if($event.length) {scoreMapParam.content.type=1;scoreMapParam.content.dataid=$event[$event.length - 1];scoreTableParam.content.type=1;scoreTableParam.content.username='';$refs.projectScoreTable.listData();projectScoreInit()} else {scoreMapParam.content.type='';scoreMapParam.content.dataid='';scoreTableParam.content.dataid='';scoreTableParam.content.type='';scoreTableParam.content.username='';$refs.projectScoreTable.listData();projectScoreInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="scoreTableParam.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {scoreMapParam.content.type=0;scoreMapParam.content.dataid=$event;scoreTableParam.content.type=0;scoreTableParam.content.dataid=$event;scoreTableParam.content.depname='';$refs.projectScoreTable.listData();projectScoreInit()} else {scoreMapParam.content.type='';scoreMapParam.content.dataid='';scoreTableParam.content.dataid='';scoreTableParam.content.type='';scoreTableParam.content.depname='';$refs.projectScoreTable.listData();projectScoreInit()}}"
-                    clearable>
+                    >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -764,8 +764,8 @@
                 </div>
               </div>
               <div class="panel-content">
-                <div ref="projectScoreEl" style="width:430rem"></div>
-                <div class="panel-table" style="width:1151rem">
+                <div ref="projectScoreEl" style="width:30%"></div>
+                <div class="panel-table" style="width:70%">
                   <pageTable
                     ref="projectScoreTable"
                     :tablecols="tool.tabelCol($route.name).projectTable.tablecols"
@@ -819,14 +819,14 @@
                       size="small"
                       v-model="unfllowTableParam.content.dataid"
                       :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {unfllowMapParam.content.type=1;unfllowMapParam.content.dataid=$event[$event.length - 1];unfllowTableParam.content.type=1;unfllowTableParam.content.dataid=$event[$event.length - 1];unfllowTableParam.content.username='';$refs.customerUnfllowTable.listData();customerUnfllowInit()} else {unfllowMapParam.content.type='';unfllowMapParam.content.dataid='';unfllowTableParam.content.dataid='';unfllowTableParam.content.type='';unfllowTableParam.content.username='';$refs.customerUnfllowTable.listData();customerUnfllowInit()}}"></el-cascader>
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}" 
+                      @change="$event => {if($event.length) {unfllowMapParam.content.type=1;unfllowMapParam.content.dataid=$event[$event.length - 1];unfllowTableParam.content.type=1;unfllowTableParam.content.username='';$refs.customerUnfllowTable.listData();customerUnfllowInit()} else {unfllowMapParam.content.type='';unfllowMapParam.content.dataid='';unfllowTableParam.content.dataid='';unfllowTableParam.content.type='';unfllowTableParam.content.username='';$refs.customerUnfllowTable.listData();customerUnfllowInit()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label" >业务员:</label>
                     <el-select v-model="unfllowTableParam.content.username" filterable placeholder="请选择" size="small"
                     @change="$event => {if($event) {unfllowMapParam.content.type=0;unfllowMapParam.content.dataid=$event;unfllowTableParam.content.type=0;unfllowTableParam.content.dataid=$event;unfllowTableParam.content.depname='';$refs.customerUnfllowTable.listData();customerUnfllowInit()} else {unfllowMapParam.content.type='';unfllowMapParam.content.dataid='';unfllowTableParam.content.dataid='';unfllowTableParam.content.type='';unfllowTableParam.content.depname='';$refs.customerUnfllowTable.listData();customerUnfllowInit()}}"
-                    clearable>
+                    >
                       <el-option
                           v-for="item in personnelList"
                           :key="item.index"
@@ -835,16 +835,47 @@
                       </el-option>
                     </el-select>
                   </div>
+                  <div class="mt-10 inline-16">
+                    <label  class="search__label">项目类型:</label>
+                    <el-select 
+                      v-model="unfllowMapParam.content.where.projecttype" 
+                      placeholder="请选择项目类型" 
+                      @change="$event => {if($event.length) {unfllowTableParam.content.where.projecttype=$event;$refs.customerUnfllowTable.listData();customerUnfllowInit()} else {unfllowTableParam.content.where.project='';$refs.customerUnfllowTable.listData();customerUnfllowInit()}}" 
+                      size="small" clearable>
+                      <el-option
+                          v-for="item in projectType"
+                          :key="item.value"
+                          :label="item.value"
+                          :value="item.value">
+                        <span style="float: left">{{ item.value }}</span>
+                        <span style="float: right; color: #8492a6; font-size: 12px">{{ item.remarks?item.remarks:'暂无描述' }}</span>
+                      </el-option>
+                    </el-select>
+                  </div>
+                  <div class="mt-10 inline-16">
+                    <label  class="search__label" >分析日期:</label>
+                    <el-date-picker
+                        v-model="unfllowMapParam.content.enddate"
+                        format="yyyy-MM-dd"
+                        value-format="yyyy-MM-dd"
+                        type="date"
+                        size="small"
+                        placeholder="选择日期"
+                        @change="unfllowTableParam.content.where.enddate=unfllowMapParam.content.enddate;customerUnfllowInit();$refs.customerUnfllowTable.listData()">
+                    </el-date-picker>
+                  </div>
                 </div>
               </div>
               <div>
                 <div ref="customerUnfllowEl" style="height:400px"></div>
                 <div style="margin-top:25px">
                   <pageTable
+                    v-if="projectType[0].value != ''"
                     ref="customerUnfllowTable"
                     :tablecols="tool.tabelCol($route.name).projectTable1.tablecols.splice(0,tool.tabelCol($route.name).projectTable1.tablecols.length - 1)"
                     :param="unfllowTableParam"
                     :custom="true"
+                    @handleParam="handleUnfllowParam"
                   >
                     <template v-slot:custom="scope">
                       <div v-if="scope.data.columnname == 'sys_tag'">
@@ -914,8 +945,8 @@
                       size="small"
                       v-model="dateParam.content.dataid"
                       :options="deplist"
-                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  clearable
-                      @change="$event => {if($event.length) {[$event.length - 1];dateParam.content.type=1;dateParam.content.dataid=$event[$event.length - 1];dateParam.content.username='';getDate()} else {dateParam.content.dataid='';dateParam.content.type='';dateParam.content.username='';getDate()}}"></el-cascader>
+                      :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}" 
+                      @change="$event => {if($event.length) {[$event.length - 1];dateParam.content.type=1;dateParam.content.username='';getDate()} else {dateParam.content.dataid='';dateParam.content.type='';dateParam.content.username='';getDate()}}"></el-cascader>
                   </div>
                   <div class="mt-10 inline-16">
                     <label  class="search__label">项目类型:</label>
@@ -962,7 +993,7 @@
                 <selectProject :projectType="projectType" :projectLead="projectLead" :tradefieldSelect="tradefieldSelect"  @selectRow="selectRow" ref="selectProject">
                   <div slot="input" style="display:flex;align-items:center">
                     <el-input v-model="projectname" style="width:300px" size="small" placeholder="请选择项目" @focus="$refs.selectProject.visible=true"></el-input>
-                    <el-button @click="projectname='';dateParam.content.where.sa_projectid='';getDate()" size="mini" type="text" v-if="dateParam.content.where.sa_projectid">清空</el-button>
+                    <el-button style="margin-left:10px" @click="projectname='';dateParam.content.where.sa_projectid='';getDate()" size="mini" type="text" v-if="dateParam.content.where.sa_projectid">清空</el-button>
                   </div>
                 </selectProject>
               </div>
@@ -978,7 +1009,7 @@
                     <el-option label="结案" value="结案"></el-option>
                   </el-select>
                 </div>
-                <span style="margin:0 25px">至</span>
+                <span style="margin:0 35px 0 25px">至</span>
                 <div class="mt-10 inline-16">
                   <label  class="search__label">结束节点:</label>
                   <el-select v-model="dateParam.content.endnode" placeholder="结束节点" @change="getDate" size="small" clearable>
@@ -1007,6 +1038,7 @@ import selectProject from './components/selectProject.vue'
 import borderTemp from '@/HDrpManagement/dataanalysis/components/border.vue'
 import FullScroll from '@/components/fullScroll/index.vue'
 export default {
+  name:'projectData',
   components:{borderTemp,pageTable,selectProject,FullScroll},
   data () {
     return {
@@ -1018,7 +1050,7 @@ export default {
         "content": {
         }
       },
-      projectType:[],
+      projectType:[{value:''}],
       projectLead:[],
       tradefieldSelect:[],
       projectname:'',
@@ -1310,8 +1342,8 @@ export default {
       dateParam: {
         "id": 20231023092304,
         "content": {
-          "type": '',
-          "dataid": '',
+          "type": 1,
+          "dataid": [54,59],
           "username":JSON.parse(sessionStorage.getItem('accountinfo')).name,
           "begnode":"",//开始节点
           "endnode":"",//结束节点
@@ -1518,7 +1550,17 @@ export default {
           legend: {
             position: 'top-left',
           },
+          interactions: [{ type: 'element-single-selected' }],
         });
+        this.scoreMap.on('element:click',(v) => {
+          if (v.data.data.key != this.scoreTableParam1.content.occupancyratio) {
+            this.scoreTableParam1.content.occupancyratio = v.data.data.key
+            this.$refs.scoreTable.listData()
+          } else {
+            this.scoreTableParam1.content.occupancyratio = ''
+            this.$refs.scoreTable.listData()
+          }
+        })
         this.scoreMap.render();
       } else {
         this.scoreMap.changeData(this.scoreData.map)
@@ -1527,7 +1569,11 @@ export default {
     },
     //12月新增初始化
     async addFun (init) {
-      let res = await this.$api.requested(this.addParam)
+      let param = JSON.parse(JSON.stringify(this.addParam))
+      if (param.content.dataid instanceof Array) {
+        param.content.dataid = param.content.dataid[param.content.dataid.length - 1]
+      }
+      let res = await this.$api.requested(param)
       this.addData.arr1 = res.data.histogram
       res.data.lineChart.forEach(item => item[`同比增长率(%)`] = item.value)
       this.addData.arr2 = res.data.lineChart
@@ -1557,7 +1603,11 @@ export default {
     },
     //12月报备初始化
     async baobeiFun (init) {
-      let res = await this.$api.requested(this.baobeiParam)
+      let param = JSON.parse(JSON.stringify(this.baobeiParam))
+      if (param.content.dataid instanceof Array) {
+        param.content.dataid = param.content.dataid[param.content.dataid.length - 1]
+      }
+      let res = await this.$api.requested(param)
       this.baobeiData.arr1 = res.data.histogram
       res.data.lineChart.forEach(item => item[`同比增长率(%)`] = item.value)
       this.baobeiData.arr2 = res.data.lineChart
@@ -1587,7 +1637,11 @@ export default {
     },
     //12月跟进初始化
     async fllowFun (init) {
-      let res = await this.$api.requested(this.fllowParam)
+      let param = JSON.parse(JSON.stringify(this.fllowParam))
+      if (param.content.dataid instanceof Array) {
+        param.content.dataid = param.content.dataid[param.content.dataid.length - 1]
+      }
+      let res = await this.$api.requested(param)
       this.fllowData = res.data
       this.fllowData.tbzzl.forEach(item => item.key = '同比增长率(%)')
       console.log(res.data,'跟进数据');
@@ -1616,7 +1670,11 @@ export default {
     },
     //12月报价初始化
     async baojiaFun (init) {
-      let res = await this.$api.requested(this.baojiaParam)
+      let param = JSON.parse(JSON.stringify(this.baojiaParam))
+      if (param.content.dataid instanceof Array) {
+        param.content.dataid = param.content.dataid[param.content.dataid.length - 1]
+      }
+      let res = await this.$api.requested(param)
       this.baojiaData = res.data
       console.log(res.data,'报价数据');
       if (init) {
@@ -1859,7 +1917,7 @@ export default {
             position:'left'
           },
           // 添加 中心统计文本 交互
-          interactions: [{ type: 'element-selected' },{ type: 'element-active' },{ type: 'pie-statistic-active' }],
+          interactions: [{ type: 'element-highlight-by-x ' },{ type: 'element-active' },{ type: 'pie-statistic-active' }],
         });
         this.projectScoreMap.on('element:click',(v) => {
           if (v.data.data.key != this.scoreTableParam.content.where.istask) {
@@ -1876,8 +1934,13 @@ export default {
       }
 
     },
-    async getDate () {
-      let res = await this.$api.requested(this.dateParam)
+    async getDate (init) {
+      if(init === true) this.dateParam.content.where.projecttype = this.projectType.length ? this.projectType[0].value : ''
+      let param = JSON.parse(JSON.stringify(this.dateParam))
+      if (param.content.dataid instanceof Array) {
+        param.content.dataid = param.content.dataid[param.content.dataid.length - 1]
+      }
+      let res = await this.$api.requested(param)
       this.dateList = res.data
       console.log(this.dateList,'周期数据');
     },
@@ -1910,7 +1973,17 @@ export default {
               { type: 'adjust-color' },
             ],
           },
+          interactions: [{ type: 'element-highlight-by-x' }],
         });
+        this.customerUnfllowMap.on('element:click',(v) => {
+          console.log(v);
+          if (v.data.data.datetype == this.unfllowTableParam.content.where.dateType) {
+            this.unfllowTableParam.content.where.dateType = ''
+          } else {
+            this.unfllowTableParam.content.where.dateType = v.data.data.datetype
+          }
+          this.$refs.customerUnfllowTable.listData()
+        })
         this.customerUnfllowMap.render()
       } else {
         this.customerUnfllowMap.changeData(this.customerUnfllowData.map)
@@ -2064,13 +2137,18 @@ export default {
         this.unfllowTableParam.content.type = 1
         this.unfllowTableParam.content.username = ''
         this.$refs.customerUnfllowTable.listData()
+
+        this.dateParam.content.dataid = id
+        this.getDate()
+
       } else {
+        let name = JSON.parse(sessionStorage.getItem('accountinfo')).name
         this.typeMapParam.content.dataid = ''
         this.typeMapParam.content.type = ''
         this.typeInit()
         this.typeTableParam.content.dataid = ''
         this.typeTableParam.content.type = ''
-        this.typeTableParam.content.username = ''
+        this.typeTableParam.content.username = name
         this.$refs.typeTable.listData()
 
         this.gradMapParam.content.dataid = ''
@@ -2078,7 +2156,7 @@ export default {
         this.gradInit()
         this.gradTableParam.content.dataid = ''
         this.gradTableParam.content.type = ''
-        this.gradTableParam.content.username = ''
+        this.gradTableParam.content.username = name
         this.$refs.gradTable.listData()
 
         this.scoreMapParam1.content.dataid = ''
@@ -2086,7 +2164,7 @@ export default {
         this.scoreInit()
         this.scoreTableParam1.content.dataid = ''
         this.scoreTableParam1.content.type = ''
-        this.scoreTableParam1.content.username = ''
+        this.scoreTableParam1.content.username = name
         this.$refs.scoreTable.listData()
 
         this.addParam.content.dataid = ''
@@ -2110,7 +2188,7 @@ export default {
         this.fllowInit()
         this.fllowTableParam.content.dataid = ''
         this.fllowTableParam.content.type = ''
-        this.fllowTableParam.content.username = ''
+        this.fllowTableParam.content.username = name
         this.$refs.projectFllowTable.listData()
 
         this.contactMapParam.content.dataid = ''
@@ -2118,7 +2196,7 @@ export default {
         this.contactInit()
         this.contactTableParam.content.dataid = ''
         this.contactTableParam.content.type = ''
-        this.contactTableParam.content.username = ''
+        this.contactTableParam.content.username = name
         this.$refs.projectContactTable.listData()
 
         this.customerMapParam.content.dataid = ''
@@ -2126,7 +2204,7 @@ export default {
         this.customerInit()
         this.customerTableParam.content.dataid = ''
         this.customerTableParam.content.type = ''
-        this.customerTableParam.content.username = ''
+        this.customerTableParam.content.username = name
         this.$refs.projectCustomerTable.listData()
 
         this.scoreMapParam.content.dataid = ''
@@ -2134,7 +2212,7 @@ export default {
         this.scoreInit()
         this.scoreTableParam.content.dataid = ''
         this.scoreTableParam.content.type = ''
-        this.scoreTableParam.content.username = ''
+        this.scoreTableParam.content.username = name
         this.$refs.projectScoreTable.listData()
 
         this.unfllowMapParam.content.dataid = ''
@@ -2142,14 +2220,22 @@ export default {
         this.customerUnfllowInit()
         this.unfllowTableParam.content.dataid = ''
         this.unfllowTableParam.content.type = ''
-        this.unfllowTableParam.content.username = ''
+        this.unfllowTableParam.content.username = name
         this.$refs.customerUnfllowTable.listData()
+
+        this.dateParam.content.dataid = ''
+        this.getDate()
       }
     },
     selectRow (data) {
       this.projectname = data.projectname
       this.dateParam.content.where.sa_projectid = data.sa_projectid
       this.getDate()
+    },
+    handleUnfllowParam (param) {
+      console.log('触发',param,this.projectType);
+      param.content.where.projecttype = this.projectType.length ? this.projectType[0].value : ''
+      this.unfllowMapParam.content.where.projecttype = this.projectType.length ? this.projectType[0].value : ''
     }
   },
   async mounted () {
@@ -2167,7 +2253,6 @@ export default {
     this.projectScoreInit(true)
     this.customerInit(true)
     this.customerUnfllowInit(true)
-    this.getDate()
     let baseWidth = 1920
     document.querySelector('html').style.fontSize = `${100 / baseWidth}vw`
 
@@ -2175,6 +2260,7 @@ export default {
     /* 获取项目类型 */
     let res = await this.$store.dispatch('optiontypeselect','projecttype')
     this.projectType = res.data
+    this.getDate(true)
     /* 获取项目等级 */
     let res2 = await this.$store.dispatch('optiontypeselect','projectgrade')
     this.projectLead = res2.data