bding 6 kuukautta sitten
vanhempi
commit
6bbeff6980

+ 12 - 2
src/views/roadshow_manage/compononts/activityDetailDia.vue

@@ -130,7 +130,11 @@ export default {
 					试用路演: 'try_out',
 					正式路演: 'formal',
 					公开会议: 'meeting',
+					路演: 'road_show',
+					沙龙: 'salon',
 				}
+				console.log(key,'---===');
+				
 				roadshowInterence.statisticDetailList({
 					DataType: typeMapObj[key] && typeMapObj[key],
 					StartDate: startDate,
@@ -160,7 +164,7 @@ export default {
       this.companyInfo = Data;
     },
 
-		initState() {
+	initState() {
 			const dynamic_column = this.fromType === 'researcher' ? {
 				label: '发起人',
 				key: 'SellerName',
@@ -213,12 +217,18 @@ export default {
 						},
 						{ ...dynamic_column }
 				]	
+			this.tableColumns = this.tableColumnsHandler()
 			this.$refs.tableRef && this.$refs.tableRef.clearSort()
 			this.$nextTick(()=>{
 				// 滚动条高度归零
 				this.$refs.tableRef && (this.$refs.tableRef.$el.querySelector('.el-table__body-wrapper').scrollTop=0)
 			})
-		}
+	},
+	// 处理下 权益下面 没有合作方的表格
+	tableColumnsHandler(){
+	let arr = this.tableColumns.filter(item=> !(this.form.departmentType && this.form.departmentType=='权益' && item.label =='合作方'))
+	 return arr
+	}
 	},
 	created() {},
 	mounted() {},

+ 21 - 0
src/views/roadshow_manage/statistics/index.scss

@@ -84,4 +84,25 @@
 			}
 		}
 	}
+	.tabs-content {
+		display:flex;
+		align-items: center;
+		margin-bottom: 20px;
+		.item {
+			display:block;
+			margin-right: 60px;
+			font-size: 18px;
+			padding-bottom: 6px;
+			border-bottom: 2px solid rgba(255, 255, 255, 0);
+			cursor: pointer;
+			color: #999999;
+		}
+		.item-act {
+			border-bottom: 2px solid #409EFF;
+				color: #409EFF;
+		}
+	}
+	.rai_thead-rs {
+		width: 120px;
+	}
 }

+ 37 - 8
src/views/roadshow_manage/statistics/mixin.js

@@ -23,14 +23,21 @@ export default {
 			diaTitle: '路演详情',
 			datalist:[],//表格数据
 			totalGroupArr: [],//总合计列表
+
+			departmentTabs:[{label:'ficc',val:'ficc'},{label:'权益',val:'权益'}],
+			departmentAct:'ficc'
+		}
+	},
+	computed:{
+		departmentTheadColumns(){
+			return this.departmentAct == 'ficc' ?  ['试用路演','正式路演','公开会议'] :  ['路演','沙龙']
 		}
 	},
-
 	methods: {
 
 		/* 切换顶部tab */
 		changeTabHandle(tab,type) {
-			if(tab === this.default_tab) return
+			// if(tab === this.default_tab) return
 			$('.table-body-wrapper')[0].scrollTop = 0;
 			this.default_tab = tab;
 			switch(tab) {
@@ -62,8 +69,7 @@ export default {
 							];
 					break;
 				default:
-					this.tableTheadColumns = ['试用路演','正式路演','公开会议'];
-
+					this.tableTheadColumns = this.departmentTheadColumns;
 					break;
 			}
 
@@ -80,7 +86,7 @@ export default {
 
 		/* 处理数据结构 便于页面渲染 userid 时间用于弹窗获取列表*/
 		filterTableData(data,userid= '') {
-			let list = data.map(item => ([
+			let list = this.departmentAct == 'ficc' ? data.map(item => ([
 				{
 					key: '试用路演',
 					value: item.TryOutNum,
@@ -102,6 +108,21 @@ export default {
 					endDate: item.EndDate,
 					userid
 				}
+			])) :data.map(item => ([
+				{
+					key: '路演',
+					value: item.RoadShowNum,
+					startDate: item.StartDate,
+					endDate: item.EndDate,
+					userid
+				},
+				{
+					key: '沙龙',
+					value: item.SalonNum,
+					startDate: item.StartDate,
+					endDate: item.EndDate,
+					userid
+				},
 			]))
 			
 			return list.flat(Infinity);
@@ -111,12 +132,13 @@ export default {
 		openDiaHandle({ startDate,endDate,userid,value,key }) {
 			if(value === 0) return;
 
-			this.diaTitle = key === '公开会议' ? `${key}详情` : '路演详情';
+			this.diaTitle = key === '路演' || key === '沙龙' || key === '公开会议' ? `${key}详情` : '路演详情';
 			this.dialogForm = {
 				startDate,
 				endDate,
 				userid,
-				key
+				key,
+				departmentType:this.departmentAct
 			}
 			this.isShowDia = true;
 		},
@@ -150,9 +172,16 @@ export default {
 		/* 选择日期改变清空高亮按钮 */
 		dateChange() {
 			this.default_tab = '';
-			this.tableTheadColumns = ['试用路演','正式路演','公开会议'];
+			this.tableTheadColumns = this.departmentTheadColumns;
 
 			this.getTableData();
+		},
+		// 头部的点击事件
+		tabsHandler(item) {
+			// this.default_tab = '周度统计表';
+			this.departmentAct = item.val;
+			this.changeTabHandle('周度统计表')
+			// this.getTableData();
 		}
 	}
 }

+ 71 - 74
src/views/roadshow_manage/statistics/researcher.vue

@@ -1,5 +1,8 @@
 <template>
 	<div class="statistic-container">
+		<div class="tabs-content">
+			<span @click="tabsHandler(item)" :class="['item',departmentAct==item.val && 'item-act']" v-for="item in departmentTabs" :key="item.val">{{item.label}}</span>
+		</div>
 		<div class="frequency-cont">
 			<ul class="frequency-ul">
 				<li v-for="tab in staticTabs" :key="tab" :class="{act: tab=== default_tab}" @click="changeTabHandle(tab)">{{ tab }}</li>
@@ -13,84 +16,77 @@
 			@change="dateChange"
 			placeholder="请选择统计时间"/>
 		</div>
-		<div class="table-cont" v-show="dataLoading">
-			<table>
-				<thead>
-					<tr>
-						<td rowspan="2" class="thead-rs">组别</td>
-						<td rowspan="2" class="thead-rs">研究员</td>
-						<td 
-							:colspan="['周度统计表','月度统计表'].includes(default_tab) ? 3 : 1" 
-							v-for="item in tableTheadColumns" 
-							:key="item" 
-							class="head-column"
-						>
-							{{item}}
-						</td>	
-					</tr>
-					<tr v-if="['月度统计表'].includes(default_tab)">
-						<template v-for="(item,index) in new Array(4)">
-							<td :key="index+'_0'">试用路演</td>
-							<td :key="index+'_1'">正式路演</td>
-							<td :key="index+'_2'">公开会议</td>
-						</template>
-					</tr>
-					<tr v-if="['周度统计表'].includes(default_tab)">
-						<template v-for="(item,index) in new Array(3)">
-							<td :key="index+'_0'">试用路演</td>
-							<td :key="index+'_1'">正式路演</td>
-							<td :key="index+'_2'">公开会议</td>
-						</template>
-					</tr>
-				</thead>
-			</table>
-
+		<div class="table-cont" v-show="dataLoading" >
 			<div class="table-body-wrapper" ref="bodyRef">
 				<table>
+					<thead>
+						<tr>
+							<td rowspan="2" :class="['thead-rs']">组别</td>
+							<td rowspan="2" :class="['thead-rs']">销售</td>
+							<td
+								:colspan="departmentAct == '权益' && ['周度统计表','月度统计表'].includes(default_tab) ? 2 : ['周度统计表','月度统计表'].includes(default_tab) ? 3 : 1"
+								v-for="item in tableTheadColumns" 
+								:key="item" 
+								class="head-column"
+							>
+								{{item}}
+							</td>	
+						</tr>
+						<tr v-if="['月度统计表'].includes(default_tab)">
+							<template v-for="(item,index) in new Array(4)">
+								<td  v-for="(tdItem,inx) in departmentTheadColumns" :key="index+'_'+inx">{{tdItem}}</td>
+							</template>
+						</tr>
+						<tr v-if="['周度统计表'].includes(default_tab)">
+							<template v-for="(item,index) in new Array(3)">
+								<td  v-for="(tdItem,inx) in departmentTheadColumns" :key="index+'_'+inx">{{tdItem}}</td>
+							</template>
+						</tr>
+					</thead>
 					<tbody v-for="item in datalist" :key="item.Name">
-							<tr>
-								<td :rowspan="item.Item.length+1" class="thead-rs">{{item.Name}}</td>
-							</tr>
-
-							<tr v-for="rs in item.Item" :key="rs.AdminId">
-								<td class="thead-rs">{{rs.Name}}</td>
-
-								<td
-									class="data-cell"
-									v-for="(data,data_key) in rs.dataArr" 
-									:key="data_key" 
-									@click="openDiaHandle(data)"
-								>
-									{{ data.value !== 0 ? data.value : '' }}
-								</td>
-
-							</tr>
-							
-							<tr>
-								<td colspan="2">组合计</td>
-								<td 
-									v-for="(group_data,group_data_key) in item.subGroupArr" 
-									:key="group_data_key"
-								>
-									{{ group_data.value !== 0 ? group_data.value : '' }}
-								</td>
-
-							</tr>
-					</tbody>
-
-						<tfoot>
-							<tr>
-								<td colspan="2">总合计</td>
-								<td 
-									v-for="(total_data,total_data_key) in totalGroupArr" 
-									:key="total_data_key"
-								>
-									{{  total_data.value !== 0 ? total_data.value : '' }}
-								</td>
-							</tr>
-						</tfoot>
+								<tr>
+									<td :rowspan="item.Item.length+1" class="thead-rs">{{item.Name}}</td>
+								</tr>
+
+								<tr v-for="rs in item.Item" :key="rs.AdminId">
+									<td class="thead-rs">{{rs.Name}}</td>
+
+									<td
+										class="data-cell"
+										v-for="(data,data_key) in rs.dataArr" 
+										:key="data_key" 
+										@click="openDiaHandle(data)"
+									>
+										{{ data.value !== 0 ? data.value : '' }}
+									</td>
+
+								</tr>
+								
+								<tr>
+									<td colspan="2">组合计</td>
+									<td 
+										v-for="(group_data,group_data_key) in item.subGroupArr" 
+										:key="group_data_key"
+									>
+										{{ group_data.value !== 0 ? group_data.value : '' }}
+									</td>
+
+								</tr>
+						</tbody>
+
+							<tfoot>
+								<tr>
+									<td colspan="2">总合计</td>
+									<td 
+										v-for="(total_data,total_data_key) in totalGroupArr" 
+										:key="total_data_key"
+									>
+										{{  total_data.value !== 0 ? total_data.value : '' }}
+									</td>
+								</tr>
+							</tfoot>
 				</table>
-			</div>	
+			</div>
 		</div>
 
 		<!-- 详情弹窗 -->
@@ -125,6 +121,7 @@ export default {
 				DataType: this.default_tab === '周度统计表' ? 'week' : this.default_tab === '月度统计表' ? 'month' : 'time_interval',
 				StartDate: this.select_date ? this.select_date[0] : '',
 				EndDate: this.select_date ? this.select_date[1] : '',
+				CompanyType:this.departmentAct
 			}).then(res => {
 				const { Data,Ret } = res;
 				if(Ret !== 200) return

+ 16 - 43
src/views/roadshow_manage/statistics/seller.vue

@@ -1,5 +1,8 @@
 <template>
 	<div class="statistic-container">
+		<div class="tabs-content">
+			<span @click="tabsHandler(item)" :class="['item',departmentAct==item.val && 'item-act']" v-for="item in departmentTabs" :key="item.val">{{item.label}}</span>
+		</div>
 		<div class="frequency-cont">
 			<ul class="frequency-ul">
 				<li v-for="tab in staticTabs" :key="tab" :class="{act: tab=== default_tab}" @click="changeTabHandle(tab)">{{ tab }}</li>
@@ -14,45 +17,14 @@
 			placeholder="请选择统计时间"/>
 		</div>
 		<div class="table-cont" v-show="dataLoading">
-			<!-- <table>
-				<thead>
-					<tr>
-						<td rowspan="2" class="thead-rs">组别</td>
-						<td rowspan="2" class="thead-rs">销售</td>
-						<td
-							:colspan="['周度统计表','月度统计表'].includes(default_tab) ? 3 : 1"
-							v-for="item in tableTheadColumns" 
-							:key="item" 
-							class="head-column"
-						>
-							{{item}}
-						</td>	
-					</tr>
-					<tr v-if="['月度统计表'].includes(default_tab)">
-						<template v-for="(item,index) in new Array(4)">
-							<td :key="index+'_0'">试用路演</td>
-							<td :key="index+'_1'">正式路演</td>
-							<td :key="index+'_2'">公开会议</td>
-						</template>
-					</tr>
-					<tr v-if="['周度统计表'].includes(default_tab)">
-						<template v-for="(item,index) in new Array(3)">
-							<td :key="index+'_0'">试用路演</td>
-							<td :key="index+'_1'">正式路演</td>
-							<td :key="index+'_2'">公开会议</td>
-						</template>
-					</tr>
-				</thead>
-			</table>	 -->
-
 			<div class="table-body-wrapper">
 				<table>
 					<thead>
 						<tr>
-							<td rowspan="2" class="thead-rs">组别</td>
-							<td rowspan="2" class="thead-rs">销售</td>
+							<td rowspan="2" :class="['thead-rs',departmentAct == '权益' && !['周度统计表','月度统计表'].includes(default_tab) && 'rai_thead-rs']">组别</td>
+							<td rowspan="2" :class="['thead-rs',departmentAct == '权益' && !['周度统计表','月度统计表'].includes(default_tab) && 'rai_thead-rs']">销售</td>
 							<td
-								:colspan="['周度统计表','月度统计表'].includes(default_tab) ? 3 : 1"
+								:colspan="departmentAct == '权益' && ['周度统计表','月度统计表'].includes(default_tab) ? 2 : ['周度统计表','月度统计表'].includes(default_tab) ? 3 : 1"
 								v-for="item in tableTheadColumns" 
 								:key="item" 
 								class="head-column"
@@ -62,16 +34,12 @@
 						</tr>
 						<tr v-if="['月度统计表'].includes(default_tab)">
 							<template v-for="(item,index) in new Array(6)">
-								<td :key="index+'_0'">试用路演</td>
-								<td :key="index+'_1'">正式路演</td>
-								<td :key="index+'_2'">公开会议</td>
+								<td  v-for="(tdItem,inx) in departmentTheadColumns" :key="index+'_'+inx">{{tdItem}}</td>
 							</template>
 						</tr>
 						<tr v-if="['周度统计表'].includes(default_tab)">
 							<template v-for="(item,index) in new Array(6)">
-								<td :key="index+'_0'">试用路演</td>
-								<td :key="index+'_1'">正式路演</td>
-								<td :key="index+'_2'">公开会议</td>
+								<td  v-for="(tdItem,inx) in departmentTheadColumns" :key="index+'_'+inx">{{tdItem}}</td>
 							</template>
 						</tr>
 					</thead>
@@ -99,7 +67,7 @@
 					</tbody>
 					<tfoot>
 						<tr>
-							<td colspan="2">ficc总合计</td>
+							<td colspan="2">{{departmentAct}}总合计</td>
 							<td v-for="(total_data,total_data_key) in totalGroupArr" :key="total_data_key">
 								{{ total_data.value !== 0 ? total_data.value : '' }}
 							</td>
@@ -131,6 +99,7 @@ export default {
 	data () {
 		return {
 			Role:localStorage.getItem('Role') || '',
+			
 		};
 	},
 	methods: {
@@ -141,6 +110,8 @@ export default {
 				DataType: this.default_tab === '周度统计表' ? 'week' : this.default_tab === '月度统计表' ? 'month' : 'time_interval',
 				StartDate: this.select_date ? this.select_date[0] : '',
 				EndDate: this.select_date ? this.select_date[1] : '',
+				CompanyType: this.departmentAct,
+				DimensionType: 'roadshow_rai'
 			}).then(res => {
 
 				const { Data,Ret } = res;
@@ -153,7 +124,7 @@ export default {
 				//处理数据结构
 				let data = _.cloneDeep(Data.List);
 				data.forEach(item => {
-					item.showDetail=false
+					item.showDetail = this.departmentAct == '权益' ? true : false;
 					let groupDataArr = this.filterTableData(item.RsReportRecordNumList);
 					this.$set(item,'subGroupArr',groupDataArr)
 
@@ -168,7 +139,8 @@ export default {
 				this.datalist = data;
 				this.dataLoading = true;
 			})
-		}
+		},
+
 	},
 	mounted() {
 		this.getTableData();
@@ -178,4 +150,5 @@ export default {
 <style lang='scss' scoped>
 *{ box-sizing: border-box;}
 @import './index.scss';
+
 </style>