From 94384dcf5066aa1a7b2e37874fe331e148bc9249 Mon Sep 17 00:00:00 2001
From: zhangwei <1504152376@qq.com>
Date: 星期日, 29 九月 2024 17:27:03 +0800
Subject: [PATCH] 工人工资查询

---
 src/pages/index/index.vue |  186 ++++++++++++++++++++++++++++++++--------------
 1 files changed, 130 insertions(+), 56 deletions(-)

diff --git a/src/pages/index/index.vue b/src/pages/index/index.vue
index be995d8..47c1403 100644
--- a/src/pages/index/index.vue
+++ b/src/pages/index/index.vue
@@ -1,16 +1,20 @@
 <template>
-	<view class="full-page">
+	<scroll-view class="full-page" scroll-y	using-sticky>
 		<up-sticky bgColor="#fff">
 			<view class="coreshop-ff c-p-10">
-				<up-search placeholder="璇风偣鍑婚�夋嫨鏃ユ湡" @clear='clear' @clickIcon='clickTime' @custom='search'
-					v-model="workTime" search-icon="calendar" @search='search'></up-search>
+				<!-- <up-search placeholder="璇风偣鍑婚�夋嫨鏃ユ湡" @clear='clear' @clickIcon='clickTime' @custom='search'
+					v-model="workTime" search-icon="calendar" @search='search'></up-search> -->
+				<up-search placeholder="璇疯緭鍏ュ伐浣滃悕绉�" @clear='clear' @custom='search' v-model="state.orderName"
+					@search='search'></up-search>
 			</view>
 		</up-sticky>
-		<scroll-view enable-flex="true">
+		<view v-if="listO.orderList">
 			<view class="list chuany-flex chuany-flex-direction chuany-align-center c-p-b-30 "
-				v-if="listO.orderList&&listO.orderList.length>0">
-				<view class="content c-p-b-18" v-for="(item,index) in listO.orderList" @click='toDetail(item.id)' :key='item.id'>
-					<view class="bgblue c-p-l-18 c-p-r-18 c-p-t-10 c-p-b-10 chuany-flex chuany-justify-between chuany-font30">
+				v-if="listO.orderList.length>0">
+				<view class="content c-p-b-18" v-for="(item,index) in listO.orderList" @click='toDetail(item.id)'
+					:key='item.id'>
+					<view
+						class="bgblue c-p-l-18 c-p-r-18  c-p-b-10 c-p-t-10 chuany-flex chuany-justify-between chuany-font30">
 						<view class="chuany-flex chuany-flex-direction">
 							<text class=''>
 								{{$util.formatDate(item.startTime)}}
@@ -20,31 +24,49 @@
 							鎷泏{item.worderCounted}}/{{item.worderCount}}浜�
 						</text>
 					</view>
-					<view class="c-p-l-18 c-p-b-14 c-p-t-14 c-p-r-18 chuany-font34">
+					<view class="c-p-l-18 c-p-t-10 c-p-b-10 c-p-r-18 chuany-font32">
+						{{item.orderComName}}
+					</view>
+					<view class="c-p-l-18 c-p-r-18 c-p-b-10 chuany-font32">
 						{{item.orderName}}
 					</view>
 					<!-- <view class="chuany-flex c-p-l-18">
 						<up-tag class='c-p-r-14' :text="item" plain v-for="(item,index) in item.tags" :key="index">
 						</up-tag>
 					</view> -->
-					<view class="chuany-flex chuany-flex-direction">
-						<text class='c-p-l-18 c-p-b-14 c-p-r-18 text-69'>
+					<view class="chuany-flex chuany-flex-direction chuany-font28">
+						<text class='c-p-l-18 c-p-r-18 text-69 c-p-b-10'>
+							鏃ユ湡锛歿{item.wordStartTimeName}} 鑷� {{item.wordEndTimeName}}
+						</text>
+						<!-- <text class='c-p-l-18 c-p-r-18 text-69 c-p-b-10'>
+							鏃堕棿锛歿{item.startTimeName}} 鑷� {{item.endTimeName}}
+						</text> -->
+						<view class="c-p-l-18 c-p-r-18 text-69 c-p-b-10" v-if="item.zixinganpai">
+							鏃堕棿锛歿{item.zixinganpaiName}}
+						</view>
+						<view class="c-p-l-18 c-p-r-18 text-69 c-p-b-10" v-else>
+							鏃堕棿锛歿{item.startTimeName}} 鑷� {{item.endTimeName}}
+						</view>
+					</view>
+					<view class="chuany-flex chuany-flex-direction chuany-font28">
+						<text class='c-p-l-18 c-p-r-18 text-69 c-p-b-10'>
 							瑕佹眰锛歿{item.demand}}
 						</text>
-						<text class='c-p-l-18 c-p-b-14 c-p-r-18 text-69'>
+						<text class='c-p-l-18 c-p-r-18 text-69 c-p-b-10'>
 							鍦板潃锛歿{item.worderAddress}}
 						</text>
 					</view>
 					<view class='chuany-flex chuany-justify-between c-p-l-18 c-p-r-18'>
 						<view class="redcla">
-							<text class="chuany-font40 chuany-text-bold">
+							<text class="chuany-font40">
 								{{item.workPrice}}
 							</text>
 							<text class='chuany-font20'>
 								{{item.workerType==0?'鍏�/灏忔椂':'鍏�/浠�'}}
 							</text>
 						</view>
-						<up-tag text="鍘绘姠娲�" type="warning" shape="circle" @click.stop='deliver(item.id)'></up-tag>
+						<up-tag text="鍘绘姠娲�" v-if="identity !== 'enterprise'" type="warning" shape="circle"
+							@click.stop='deliver(item.id)'></up-tag>
 						<!-- <up-tag text="鍘绘姠娲�" type="warning" shape="circle"></up-tag> -->
 					</view>
 				</view>
@@ -54,10 +76,14 @@
 				<up-empty text='鏆傛棤' icon="/static/order.png">
 				</up-empty>
 			</view>
-		</scroll-view>
+		</view>
+		<view v-else>
+			<up-empty text='鏆傛棤' icon="/static/order.png">
+			</up-empty>
+		</view>
 		<fui-date-picker range :show="datePickerShow" type="5" @change="changePicker"
 			@cancel="cancel"></fui-date-picker>
-	</view>
+	</scroll-view>
 </template>
 
 <script setup>
@@ -65,7 +91,8 @@
 		onLoad,
 		onShow,
 		onReachBottom,
-		onPullDownRefresh
+		onPullDownRefresh,
+		onHide
 	} from "@dcloudio/uni-app";
 	import {
 		reactive,
@@ -78,26 +105,29 @@
 		$util,
 		$db
 	} = getCurrentInstance().appContext.config.globalProperties
-
+	const userToken = $db.get("userToken");
+	let identity = ref('')
 	let workTime = ref('')
 	let datePickerShow = ref(false)
 	const state = reactive({
 		pageIndex: 1,
 		pageSize: 20,
+		orderName: ''
 	})
 	let listO = reactive({
 		orderList: []
 	})
 	const search = (index) => {
-		console.log(index, '------鈥�');
-		if (index == 0) {
-			PostListPage()
-		} else {
-			PostListPage(index - 1)
-		}
-
+		PostListPage()
+	}
+	const changePicker = (val) => {
+		console.log(val);
+		workTime.value = val.startDate.result + '鑷�' + val.endDate.result
+		state.wordStartTime = new Date(val.startDate.result) //宸ヤ綔寮�濮嬫椂闂�
+		state.wordEndTime = new Date(val.endDate.result)
 	}
 	const clear = () => {
+		state.orderName = ''
 		state.wordStartTime = ""
 		state.wordEndTime = ""
 	}
@@ -105,14 +135,7 @@
 		datePickerShow.value = !datePickerShow.value
 	}
 	let loadStatus = ref('loadmore')
-	// 鍒涘缓鍝嶅簲寮忔暟鎹�  
-	const list1 = reactive([{
-			name: '鏂颁换鍔�'
-		},
-		{
-			name: '鎴戠殑璁㈠崟'
-		},
-	]);
+	let tokenVal = $db.get('userToken') || ''
 	onReachBottom(() => {
 		if (loadStatus.value != 'nomore') {
 			PostListPage();
@@ -122,12 +145,21 @@
 	onPullDownRefresh(() => {
 		state.pageIndex = 1
 		state.pageSize = 20
+		loadStatus.value = 'loadmore'
 		PostListPage();
+		uni.stopPullDownRefresh();
 	})
-	onLoad(() => {
+	onShow(() => {
+		identity.value = $db.get('identity')
+		tokenVal = $db.get('userToken')
+		console.log(identity.value);
 		PostListPage()
 	})
+	onHide(() => {
+		listO.orderList = []
+	})
 	const PostListPage = (orderStatus) => {
+		console.log(identity.value, 'identity----------');
 		let data = {
 			pageIndex: state.pageIndex,
 			pageSize: state.pageSize,
@@ -135,40 +167,81 @@
 		if (orderStatus) {
 			data.orderStatus = orderStatus
 		}
+		if (state.orderName) {
+			data.orderName = state.orderName
+		}
 		loadStatus.value = 'loading';
-		$api.PostListPage(data).then(res => {
-			if (res.code == 1) {
-				console.log(res, res.code, '-----------123鈥�');
-				if (state.pageIndex == 1) {
-					listO.orderList = res.data.items
+		if (identity.value == 'enterprise' && tokenVal) {
+			$api.PostMyListPageCompany(data).then(res => {
+				if (res.code == 1) {
+					console.log(res, res.code, '-----------123鈥�');
+					if (state.pageIndex == 1) {
+						listO.orderList = res.data.items
+					} else {
+						listO.orderList = listO.orderList.concat(...res.data.items)
+					}
+					console.log(listO.orderList, 'listO.orderList鈥�');
+					// totalPages.value = res.data.totalCount
+					// 鏍规嵁count鏁伴噺鍒ゆ柇鏄惁杩樻湁鏁版嵁
+					if (res.data.totalCount > listO.orderList.length) {
+						loadStatus.value = 'loadmore'
+						state.pageIndex++
+					} else {
+						// 鏁版嵁宸插姞杞藉畬姣�
+						loadStatus.value = 'nomore'
+					}
 				} else {
-					listO.orderList.concat(...res.data.items)
+					// _that.$refs.uToast.show({ message: res.msg, type: 'error' });
 				}
-				console.log(listO.orderList, 'listO.orderList鈥�');
-				// totalPages.value = res.data.totalCount
-				// 鏍规嵁count鏁伴噺鍒ゆ柇鏄惁杩樻湁鏁版嵁
-				if (res.data.totalCount > listO.orderList.length) {
-					loadStatus.value = 'loadmore'
-					state.pageIndex++
+			})
+		} else {
+			$api.PostListPage(data).then(res => {
+				if (res.code == 1) {
+					console.log(res, res.code, '-----------123鈥�');
+					if (state.pageIndex == 1) {
+						listO.orderList = res.data.items
+					} else {
+						listO.orderList = listO.orderList.concat(...res.data.items)
+					}
+					console.log(listO.orderList, 'listO.orderList鈥�');
+					// totalPages.value = res.data.totalCount
+					// 鏍规嵁count鏁伴噺鍒ゆ柇鏄惁杩樻湁鏁版嵁
+					if (res.data.totalCount > listO.orderList.length) {
+						loadStatus.value = 'loadmore'
+						state.pageIndex++
+					} else {
+						// 鏁版嵁宸插姞杞藉畬姣�
+						loadStatus.value = 'nomore'
+					}
 				} else {
-					// 鏁版嵁宸插姞杞藉畬姣�
-					loadStatus.value = 'nomore'
+					// _that.$refs.uToast.show({ message: res.msg, type: 'error' });
 				}
-			} else {
-				// _that.$refs.uToast.show({ message: res.msg, type: 'error' });
-			}
-		})
+			})
+		}
+
 	}
 	const click = () => {
+
+	}
+	const cancel = () => {
 
 	}
 	const change = (e) => {
 		state.currentIdex = e.index
 	}
 	const toDetail = (val) => {
-		uni.navigateTo({
-			url: `/pages/detail/detail?orderid=${val}`
-		})
+		if(!tokenVal){
+			return false
+		}
+		if (identity.value !== 'enterprise') {
+			uni.navigateTo({
+				url: `/pages/detail/detail?orderid=${val}`
+			})
+		} else {
+			uni.navigateTo({
+				url: `/pages/order/detail?orderid=${val}`
+			});
+		}
 	}
 	const deliver = (val) => {
 		uni.navigateTo({
@@ -185,11 +258,12 @@
 	}
 
 	.content {
+		width: 93%;
 		min-height: 330rpx;
-		width: 90%;
+		/* width: 90%; */
 		background-color: #fff;
 		border-radius: 20rpx;
-		margin: 30rpx 30rpx 0 30rpx;
+		margin: 28rpx 28rpx 0 28rpx;
 	}
 
 	.bgblue {

--
Gitblit v1.9.1