guo před 3 roky
rodič
revize
695229f183

+ 1 - 1
operatingCompany/common/common.js

@@ -10,7 +10,7 @@ const isUserId = function() {
 //是否 部门主管
 const isDirector = function(){
 	var director = uni.getStorageSync("userInfo").director;
-	console.log("director---" + director)
+	// console.log("director---" + director)
 	if (director == 1) {
 		return true
 	}

+ 26 - 17
operatingCompany/pages.json

@@ -86,20 +86,20 @@
 				"enablePullDownRefresh": true
 			}
 		},
-	   {
-	   	"path": "pages/shop/shopIndex/index",
-	   	"style": {
-	   		"navigationBarTitleText": "运营陪伴",
-			 "navigationStyle": "custom" 
-	   		/* "navigationBarBackgroundColor": "#FFFFFF",
-	   		"enablePullDownRefresh": true, */
-			/* "app-plus":{
-				"titleNView":{
-					"autoBackButton":false
-				}
-			} */
-	   	}
-        },
+		{
+			"path": "pages/shop/shopIndex/index",
+			"style": {
+				"navigationBarTitleText": "运营陪伴",
+				"navigationStyle": "custom"
+				/* "navigationBarBackgroundColor": "#FFFFFF",
+				"enablePullDownRefresh": true, */
+				/* "app-plus":{
+					"titleNView":{
+						"autoBackButton":false
+					}
+				} */
+			}
+		},
 		{
 			"path": "pages/entryReport/entered",
 			"style": {
@@ -107,10 +107,19 @@
 				"navigationBarBackgroundColor": "#FFFFFF"
 				/* "enablePullDownRefresh": true */
 			}
+		},
+		{
+			"path": "pages/entryReport/historyReport",
+			"style": {
+				"navigationBarTitleText": "历史记录",
+				"navigationBarBackgroundColor": "#FFFFFF",
+				"enablePullDownRefresh": true
+			}
+
 		}
-		
-	    
-    ],
+
+
+	],
 	"globalStyle": {
 		"navigationBarTextStyle": "black",
 		"navigationBarTitleText": "uni-app",

+ 8 - 3
operatingCompany/pages/entryReport/entryReport.vue

@@ -72,7 +72,7 @@
 
 					<!-- btns -->
 					<view class="btns">
-						<view class="lishi">历史记录</view>
+						<view class="lishi" @click="goHistory(item)">历史记录</view>
 						<view class="qiandao">签到</view>
 						<view class="baogao" @click="goEntered(item)">录入报告</view>
 					</view>
@@ -129,7 +129,12 @@
 			  that.getShopData()
 			   // #endif
 		},
-		methods: {
+		methods: {
+			goHistory(item){
+				uni.navigateTo({
+					url:'historyReport?shopId=' + item.shopId
+				})
+			},
 			goEntered(item){
 				uni.navigateTo({
 					url:'entered?shopId='+item.shopId+'&ShopName='+item.ShopName
@@ -235,7 +240,7 @@
 	}
 </script>
 
-<style>
+<style scoped>
 	.content {
 		background-color: #F4F5F7;
 		min-height: 100vh;

+ 406 - 0
operatingCompany/pages/entryReport/historyReport.vue

@@ -0,0 +1,406 @@
+<template>
+	<view class="content">
+		<view class="topView">
+			<!-- 切换tab -->
+			<view class="tabBox">
+				<scroll-view scroll-x="true" class="scroll">
+					<view class="tabCotn">
+						<view class="tabLine" :class="{tabactive:tabIndex==0}" @click="tabClick(0)">全部</view>
+						<view class="tabLine" :class="{tabactive:tabIndex==1}" @click="tabClick(1)">待提交</view>
+						<view class="tabLine" :class="{tabactive:tabIndex==2}" @click="tabClick(2)">待作业</view>
+						<view class="tabLine" :class="{tabactive:tabIndex==3}" @click="tabClick(3)">待评价</view>
+						<view class="tabLine" :class="{tabactive:tabIndex==4}" @click="tabClick(4)">待回复</view>
+
+					</view>
+				</scroll-view>
+			</view>
+
+
+			<!-- 搜索 -->
+			<view class="searchBox">
+				<image src="../../static/img/icon_search.png" class="searchImg"></image>
+				<input type="text" class="searchInput" placeholder="请输入门店名称、联系人、手机号" v-model="searchValue"
+					@confirm="searchDone" />
+			</view>
+
+			<!-- 条件筛选 -->
+			<view class="siftBg">
+
+				<!-- 日期选择 -->
+				<view class="timeChose">
+					<view @click="timeClick">{{dateTime == null ? '日期筛选' : dateTime}}</view>
+					<image class="downArrow" src="../../static/img/icon_downArrow.png"></image>
+				</view>
+
+
+
+				<picker :value="thirdIndex" mode="selector" range-key='name' :range="thirdArr"
+					@change="bindPickerChange3" v-if="isDirector">
+					<view class="uni-input">{{thirdIndex == null ? '访问人' : thirdArr[thirdIndex].name}}
+						<image class="downArrow" src="../../static/img/icon_downArrow.png"></image>
+					</view>
+				</picker>
+			</view>
+		</view>
+		<!-- 列表 -->
+		<view class="shopList">
+			<view v-for="(item,index) in shopData" :key="index">
+
+				<!-- shopBox -->
+				<view class="shopBox" @click="goAppraise(item)">
+					<view class=" shopTop">
+
+						<view class="shopName">{{item.ShopName}}</view>
+
+						<!-- 订单状态 1 待提交 草稿 2 已提交 待作业 3 已作业 待点评 4 已评价 待回复,5 已回复 已完成 -->
+						<view class="type" v-if="item.State == 1">待提交</view>
+						<view class="type" v-if="item.State == 2">已提交</view>
+						<view class="type" v-if="item.State == 3">已作业</view>
+						<view class="type" v-if="item.State == 4">已评价</view>
+						<view class="type" v-if="item.State == 5">已回复</view>
+
+					</view>
+
+
+
+					<!-- 第2行 -->
+					<view class="bottomView">
+						<!-- 运营经理 -->
+						<view class="manager">{{item.ManagerName}} · {{item.CheckTime}}</view>
+						<!-- 评分 -->
+						<view class="score" v-if="item.ShopScore">{{item.ShopScore}}分</view>
+					</view>
+
+
+				</view>
+			</view>
+		</view>
+
+		<!-- 上拉 加载更多 -->
+		<view class="noMore" v-if="noMoreShow">没有更多数据</view>
+		<!-- 无数据空白页 -->
+		<view class="nodataBox" v-if="shopData.length == 0">
+			<image src="../../static/img/pic_empty_def.png" mode="widthFix" class="nodataImg"></image>
+			<view class="noTxt">暂无数据</view>
+		</view>
+
+		<timeChose ref="timepop" @returnDate="returnDate" :isShow="timeShow"></timeChose>
+	</view>
+</template>
+
+<script>
+	import timeChose from '@/components/timeChose/timeChose.vue'
+	export default {
+		components: {
+			timeChose
+		},
+		data() {
+			return {
+				tabIndex: 0,
+				status: '', //订单状态 1 待提交 草稿 2 已提交 待作业 3 已作业 待点评 4 已评价 待回复,5 已回复 已完成
+				searchValue: '',
+				
+				thirdIndex: null,
+				thirdArr: [{
+					name: '请选择',
+					ID: ''
+				}],
+				managerId: '',
+				shopData: [],
+				page: 1,
+				noMoreShow: false,
+				timeShow: false,
+				starTime: '',
+				endTime: '',
+				dateTime: null,
+				isDirector:'',
+				shopId:'',
+			}
+		},
+		onShow() {
+			this.page = 1
+			this.getShopData()
+		},
+		onLoad(opt) {
+			this.isDirector = this.$common.isDirector()
+			this.shopId = opt.shopId
+			if(this.isDirector) {
+				this.getManager()
+			}
+
+			this.page = 1
+			this.getShopData()
+		},
+		methods: {
+			timeClick() {
+				
+				this.$refs.timepop.father();
+			},
+			returnDate(e) {
+				console.log(e)
+				this.starTime = e.startTime
+				this.endTime = e.endTime
+				if (e.startTime) {
+					this.dateTime = e.startTime + '-' + e.endTime
+				} else {
+					this.dateTime = null
+				}
+
+				this.page = 1;
+				this.getShopData()
+			},
+			tabClick(num) {
+				this.tabIndex = num;
+
+				if (num == 0) {
+					this.status = ''
+				} else {
+					this.status = num;
+				}
+				this.page = 1;
+				this.getShopData()
+			},
+			searchDone(e) {
+				this.searchValue = e.target.value
+				this.page = 1
+				this.getShopData()
+			},
+
+			
+			bindPickerChange3(e) {
+				this.thirdIndex = e.target.value
+				this.managerId = this.thirdArr[this.thirdIndex].ID
+				this.page = 1
+				this.getShopData()
+			},
+
+			getManager() {
+				uni.showLoading({
+					title: '加载中'
+				})
+				let url = 'accompany/SuperAccounts/queryManagerListByDept',
+					params = {
+						name: '',
+					}
+				this.$http(url, params, 'GET').then(res => {
+					this.thirdArr = this.thirdArr.concat(res.data)
+				})
+			},
+			getShopData() {
+				uni.showLoading({
+					title: '加载中'
+				})
+				let url = 'accompany/SuperAccounts/listShopInfoCheckPage',
+					params = {
+						page: this.page,
+						limit: 20,
+						managerID: this.managerId,
+						shopName: this.searchValue,
+						starTime: this.starTime,
+						endTime: this.endTime,
+						state: this.status,
+						shopId:this.shopId,
+
+					}
+				this.$http(url, params, 'GET').then(res => {
+					var list = res.data.Items
+
+					// 处理 undefined和null转为空白字符串
+					list.forEach((item, index) => {
+						for (const key in item) {
+							item[key] = this.$praseStrEmpty(item[key])
+						}
+					})
+
+					if (this.page == 1 && list.length == 0) {
+						this.noMoreShow = false
+					} else if (list.length < 20) {
+						this.noMoreShow = true
+					}
+					if (this.page == 1) {
+						this.shopData = list
+					} else {
+						this.shopData = this.shopData.concat(list)
+					}
+
+				})
+			},
+			goAppraise(v) {
+
+			}
+
+		},
+
+		// 下拉刷新 上拉加载更多
+		onPullDownRefresh() {
+			this.page = 1
+			this.getShopData()
+			setTimeout(function() {
+				uni.stopPullDownRefresh();
+			}, 1000);
+		},
+		onReachBottom() {
+			this.page++;
+			this.getShopData()
+		},
+
+	}
+</script>
+
+<style>
+	.content {
+		background-color: #F4F5F7;
+		min-height: 100vh;
+	}
+
+	.topView {
+		width: 100%;
+		height: 290rpx;
+		background-color: #FFFFFF;
+		left: 0rpx;
+		top: 0rpx;
+		position: fixed;
+		z-index: 99;
+	}
+
+	/* #ifdef H5 */
+	.topView {
+		top: 44px;
+	}
+
+	/* #endif */
+
+	.searchBox {
+		height: 72rpx;
+		margin: 24rpx;
+		background-color: #F4F5F7;
+		border-radius: 36rpx;
+		display: flex;
+	}
+
+	.searchImg {
+		margin-top: 20rpx;
+		margin-left: 20rpx;
+		width: 32rpx;
+		height: 32rpx;
+	}
+
+	.searchInput {
+		height: 72rpx;
+		font-size: 28rpx;
+		padding-left: 16rpx;
+		width: 85%;
+	}
+
+	.siftBg {
+		display: flex;
+		justify-content: space-around;
+		height: 80rpx;
+		align-items: center;
+	}
+
+	.timeChose {
+		display: flex;
+		justify-content: space-between;
+		align-items: center;
+	}
+
+	.downArrow {
+		width: 16rpx;
+		height: 12rpx;
+		padding: 6rpx 8rpx;
+	}
+
+	.tabBox {
+		width: 100%;
+	}
+
+	.tabCotn {
+		display: flex;
+	}
+
+	.tabLine {
+		width: 150rpx;
+		text-align: center;
+		color: #3C3C3C;
+		font-size: 30rpx;
+		line-height: 88rpx;
+	}
+
+	.tabactive {
+		color: #FF4F00;
+		border-bottom: 4rpx solid #FF4F00;
+	}
+
+	.shopList {
+		background-color: #F4F5F7;
+		padding: 0rpx 24rpx;
+		padding-top: 290rpx;
+	}
+
+	.shopBox {
+		background-color: #FFFFFF;
+		border-radius: 10rpx;
+		margin: 20rpx 0rpx;
+
+	}
+
+	.shopTop {
+		display: flex;
+		padding: 30rpx 20rpx 10rpx 20rpx;
+		justify-content: space-between;
+
+	}
+
+	.shopName {
+		font-size: 28rpx;
+		color: #3C3C3C;
+		font-weight: bold;
+		width: 500rpx;
+	}
+
+	.type {
+		font-size: 28rpx;
+		color: #FF4F00;
+		margin-left: 10rpx;
+	}
+
+	.bottomView {
+		padding: 28rpx 20rpx;
+		display: flex;
+		justify-content: space-between;
+	}
+
+	.manager {
+		font-size: 24rpx;
+		color: #666666;
+	}
+
+	.score {
+		font-size: 28rpx;
+		color: #B98B5D;
+	}
+
+	/* 空白页css */
+	.nodataBox {
+		text-align: center;
+	}
+
+	.nodataImg {
+		width: 400rpx;
+		padding-top: 290rpx;
+	}
+
+	.noTxt {
+		font-size: 30rpx;
+		color: #999999;
+		padding-top: 50rpx;
+	}
+
+	.noMore {
+		text-align: center;
+		line-height: 50rpx;
+		color: #999999;
+		font-size: 28rpx;
+	}
+</style>

+ 2 - 3
operatingCompany/pages/reportManage/reportManage.vue

@@ -143,8 +143,7 @@
 		},
 		methods: {
 			timeClick() {
-				/* this.timeShow=true;
-				console.log(this.timeShow) */
+				
 				this.$refs.timepop.father();
 			},
 			returnDate(e) {
@@ -234,7 +233,7 @@
 						provinceCode: this.data.provinceCode,
 						cityCode: this.data.cityCode,
 						areaCode: this.data.areaCode,
-						manager: this.managerId,
+						managerID: this.managerId,
 						shopName: this.searchValue,
 						starTime: this.starTime,
 						endTime: this.endTime,

+ 7 - 4
operatingCompany/pages/teamStore/teamStore.vue

@@ -62,7 +62,7 @@
 
 					<!-- 历史记录 -->
 					<view class="bottomView">
-						<view class="lishi" @click="history">历史记录</view>
+						<view class="lishi" @click="goHistory(item)">历史记录</view>
 					</view>
 
 
@@ -164,6 +164,11 @@
 				this.managerId = this.thirdArr[this.thirdIndex].ID
 				this.page = 1
 				this.getShopData()
+			},
+			goHistory(item){
+				uni.navigateTo({
+					url:'../entryReport/historyReport?shopId=' + item.shopId
+				})
 			},
 			goAddress(v) {
 
@@ -181,9 +186,7 @@
 					})
 				}
 			},
-			history() {
-				console.log('历史记录');
-			},
+			
 
 			getManager() {
 				uni.showLoading({