| 
					
				 | 
			
			
				@@ -14,10 +14,22 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                @size-change="sizeChange" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                @refresh-change="refreshChange" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                @on-load="onLoad"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <template slot="menuLeft"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          icon="el-icon-printer" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          size="small" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          type="primary" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :loading="exportLoading" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          @click.stop="downFile" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        >导 出 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       <template slot="flagSearch"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <el-select 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           v-model="search.flag" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          placeholder="" > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          placeholder="" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          @change="cut" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <el-option 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             v-for="item in flagOptions" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             :key="item.value" 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -56,9 +68,8 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 <script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   import option from "./config/mainList.json"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   import clientOption from "./config/clientList.json"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  import { performanceAnalysis } from "@/api/workManagement/mainProject"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  import { performanceAnalysis ,importAnalysis} from "@/api/workManagement/mainProject"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   import { getUserList } from "@/api/workManagement/mainProject"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  import _ from "lodash"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     data() { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -66,6 +77,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         form: {}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         search:{}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         option: option, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        exportLoading:false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         loading:false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         dataList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         userNameOptions:[], 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -96,6 +108,34 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     methods: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      downFile(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.exportLoading = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let  searchParams = Object.assign({},this.search); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let param = this.paramsAdjustment(searchParams) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let option = this.deepClone(this.option.column) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        importAnalysis(param).then(res=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          option.shift(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          option.shift(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.$Export.excel({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            title: "业绩分析", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            columns: option, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            data: res.data.data, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }).finally(()=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.exportLoading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      cut(val){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(val == 1){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.option = option 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.onLoad(this.page,this.search) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.option = clientOption 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.onLoad(this.page,this.search) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       userNameRemoteMethod(val){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         getUserList({realName : val}).then(res=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.userNameOptions = res.data.data 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -137,12 +177,6 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if(!params.year){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           params.year = "2021" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(params.flag == 1){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          this.option = option 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          this.option = clientOption 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return params 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -150,20 +184,6 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         this.loading = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         params = this.paramsAdjustment(params) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         performanceAnalysis(page.currentPage, page.pageSize,params).then(res=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          res.data.data.records.forEach((item)=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            item.total =parseFloat(item.jan)  + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              parseFloat(item.feb)  + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              parseFloat(item.mar)  + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              parseFloat(item.apr)  + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              parseFloat(item.may)  + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              parseFloat(item.june)  + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              parseFloat(item.july)  + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              parseFloat(item.aug)  + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              parseFloat(item.sept)  + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              parseFloat(item.oct)  + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              parseFloat(item.nov)  + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              parseFloat(item.dece) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.dataList = res.data.data.records 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           this.page.total = res.data.data.total 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }).finally(()=>{ 
			 |