From 376ac09a54e8c95190d06bf39f295c890829c103 Mon Sep 17 00:00:00 2001
From: zhangwei <1504152376@qq.com>
Date: 星期二, 03 九月 2024 15:43:25 +0800
Subject: [PATCH] 查看工人详情

---
 src/pages/release/index.vue |  235 +++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 159 insertions(+), 76 deletions(-)

diff --git a/src/pages/release/index.vue b/src/pages/release/index.vue
index 76c066f..f6cab1b 100644
--- a/src/pages/release/index.vue
+++ b/src/pages/release/index.vue
@@ -1,68 +1,50 @@
 <template>
 	<view class="full-page c-m-b-40">
-		<view class="list c-p-t-10">
-			<up-form labelPosition="left" :model="model1" ref="form1" labelWidth='160rpx'>
-				<view class="content c-p-20 c-m-t-10 c-m-b-20">
-					<up-form-item label="鏍囬" prop="userInfo.name" :borderBottom='false' ref="item1">
-						<up-input v-model="model1.userInfo.name" border="none" placeholder="璇峰~鍐欐嫑宸ラ渶姹�,濡�:璐存爣鎵撳寘"></up-input>
-						<template #right>
+		<view class="list">
+			<up-form labelPosition="left" :model="publicJob" ref="form1" labelWidth='160rpx'>
+				<view class="content c-p-l-24">
+					<up-form-item label="宸ヤ綔鍚嶇О" prop="publicJob.orderName" :borderBottom='false' ref="item1">
+						<up-input v-model="publicJob.orderName" border="none" placeholder="璇峰~鍐欏伐浣滃悕绉�"></up-input>
+						<!-- <template #right>
 							<up-icon name="arrow-right"></up-icon>
-						</template>
+						</template> -->
 					</up-form-item>
-				</view>
-				<view class="content c-p-20 c-m-t-10 c-m-b-20">
-					<up-form-item label="宸ヤ綔鏃堕棿" prop="userInfo.name" :borderBottom='false' ref="item1">
-						<up-input v-model="model1.userInfo.name" border="none" placeholder="濡備粖澶�9:00-浠婂ぉ17:00"></up-input>
+					<up-form-item label="宸ヤ綔鏃ユ湡" prop="workDate" :borderBottom='false' ref="item1" @click="clickTime(3)">
+						<up-input v-model="workDate" border="none" readonly placeholder="鐐瑰嚮閫夋嫨宸ヤ綔鏃ユ湡"></up-input>
 						<up-icon #right name="arrow-right"></up-icon>
 					</up-form-item>
-				</view>
-				<view class="content c-p-20 c-m-t-10 c-m-b-20">
-					<up-form-item label="鎬у埆瑕佹眰" prop="userInfo.name" :borderBottom='false' ref="item1">
-
-						<up-tag class='c-p-r-14' text="鐢�" type="warning" plain size="large"></up-tag>
-						<up-tag class='c-p-r-14' text="濂�" type="warning" plain size="large"></up-tag>
-						<up-tag class='c-p-r-14' text="涓嶉檺" type="warning" size="large"></up-tag>
-						<!-- <up-input v-model="model1.userInfo.name" border="none" placeholder="濡備粖澶�9:00-浠婂ぉ17:00"></up-input> -->
+					<up-form-item label="宸ヤ綔鏃堕棿" prop="workTime" :borderBottom='false' ref="item1" @click="clickTime(6)">
+						<up-input v-model="workTime" border="none" readonly placeholder="鐐瑰嚮閫夋嫨宸ヤ綔鏃堕棿"></up-input>
+						<up-icon #right name="arrow-right"></up-icon>
 					</up-form-item>
-					<view class="c-p-t-20 c-p-b-20">
-						<up-form-item label="骞撮緞闄愬埗" prop="userInfo.name" :borderBottom='false' ref="item1">
-							<up-input v-model="model1.userInfo.name" border="none" placeholder="16~涓嶉檺"></up-input>
-							<up-icon #right name="arrow-right"></up-icon>
-						</up-form-item>
-					</view>
-					<view class="c-p-t-20 c-p-b-20">
-						<up-form-item label="鎷涘伐浜烘暟" prop="userInfo.name" :borderBottom='false' ref="item1">
-							<up-number-box v-model="model1.userInfo.value" @change="valChange"></up-number-box>
-						</up-form-item>
-					</view>
-					<view class="c-p-t-20 c-p-b-20">
-						<up-form-item label="宸ヤ綔鍦扮偣" prop="userInfo.name" :borderBottom='false' ref="item1">
-							<up-input v-model="model1.userInfo.address" border="none"
-								placeholder="濡備粖澶�9:00-浠婂ぉ17:00"></up-input>
-							<up-icon #right name="arrow-right"></up-icon>
-						</up-form-item>
-					</view>
-				</view>
-				<view class="content c-p-20 c-m-t-10 c-m-b-20">
-					<up-form-item label="鑱旂郴鐢佃瘽" prop="userInfo.name" :borderBottom='false' ref="item1">
-						<up-input v-model="model1.userInfo.number" border="none"
-							placeholder="濡備粖澶�9:00-浠婂ぉ17:00"></up-input>
+					<up-form-item label="鐢ㄥ伐瑕佹眰" prop="publicJob.demand" :borderBottom='false' ref="item1">
+						<view class="c-p-b-20">
+							<up-textarea v-model="publicJob.demand" border="none" placeholder="璇疯緭鍏ョ敤宸ヨ姹�" count
+								maxlength='400'></up-textarea>
+						</view>
+					</up-form-item>
+					<up-form-item label="鎷涘伐浜烘暟" prop="publicJob.worderCount" :borderBottom='false' ref="item1">
+						<up-number-box button-size="24" v-model="publicJob.worderCount"></up-number-box>
+					</up-form-item>
+					<up-form-item label="宸ヤ綔鍦扮偣" prop="publicJob.worderAddress" :borderBottom='false' ref="item1">
+						<up-input v-model="publicJob.worderAddress" border="none" placeholder="璇疯緭鍏ュ伐浣滃湴鐐�"></up-input>
+						<up-icon #right name="arrow-right"></up-icon>
+					</up-form-item>
+					<up-form-item label="鑱旂郴鐢佃瘽" prop="publicJob.contactPhone" :borderBottom='false' ref="item1">
+						<up-input v-model="publicJob.contactPhone" border="none" placeholder="璇疯緭鍏ヨ仈绯荤數璇�"></up-input>
+					</up-form-item>
+					<up-form-item label="鏂瑰紡" prop="publicJob.workerType" :borderBottom='false' ref="item1">
+						<up-tag class='c-p-r-14' text="璁℃椂" type="warning" :plain='!(publicJob.workerType=="0")'
+							@click='changStyle(0)'></up-tag>
+						<up-tag class='c-p-r-14' text="璁′欢" type="warning" :plain='!(publicJob.workerType=="1")'
+							@click='changStyle(1)'></up-tag>
+					</up-form-item>
+					<up-form-item label="璁℃椂宸ヤ环" prop="publicJob.workPrice" :borderBottom='false' ref="item1">
+						<up-input v-model="publicJob.workPrice" border="none" placeholder="璇疯緭鍏ュ伐浠�">
+							<template #suffix>{{publicJob.workerType=="0"?'鍏�/灏忔椂':'鍏�/浠�'}}</template></up-input>
 					</up-form-item>
 				</view>
-				<view class="content c-p-20 c-m-t-10 c-m-b-20">
-					<up-form-item label="鏂瑰紡" prop="userInfo.name" :borderBottom='false' ref="item1">
-						<up-tag class='c-p-r-14' text="璁℃椂" type="warning"  size="large"></up-tag>
-						<up-tag class='c-p-r-14' text="璁′欢" type="warning" plain size="large"></up-tag>
-					</up-form-item>
-				</view>
-				<view class="content c-p-20 c-m-t-10 c-m-b-20">
-					<up-form-item label="璁℃椂宸ヤ环" prop="userInfo.name" :borderBottom='false' ref="item1">
-						<up-input v-model="model1.userInfo.xiaoshi" border="none"
-							placeholder="濡備粖澶�9:00-浠婂ぉ17:00">
-							<template #suffix>鍏�/灏忔椂</template></up-input>
-					</up-form-item>
-				</view>
-				<view class="coreshop-bg-white c-m-t-20 c-p-20">
+				<!-- <view class="coreshop-bg-white c-m-t-20 c-p-20">
 					<view class="c-p-b-20 colorgray">
 						鎷涘伐瑕佹眰鎴栫鍒�(鍙閫�)
 					</view>
@@ -75,44 +57,145 @@
 					<view class="c-p-b-20">
 						<up-textarea v-model="value1" placeholder="璇疯緭鍏�:鍙互琛ュ厖鎷涘伐瑕佹眰鍜岀鍒�" ></up-textarea>
 					</view>
-				</view>
+				</view> -->
 			</up-form>
 		</view>
 		<view class="tabbtns">
-			<up-button color='#fece01' class="text-69" text="鍙戝竷鎷涘伐"></up-button>
+			<up-button color='#fece01' class="text-69" text="鍙戝竷鎷涘伐" @click="saveOrder"></up-button>
 		</view>
-		<fui-fab :zIndex="10" background='#fff' bottom='150'>
+		<!-- <fui-fab :zIndex="10" background='#fff' bottom='250'>
 			<fui-icon name="kefu-fill" color='#000'></fui-icon>
-		</fui-fab>
+		</fui-fab> -->
+		<fui-date-picker range :show="datePickerShow" :type="dateType" @change="changePicker" :minDate='minDate'
+			@cancel="cancel" :param='$util.formatDate(new Date())'></fui-date-picker>
 	</view>
 </template>
 
 <script setup>
 	import {
 		ref,
-		reactive
+		reactive,
+		getCurrentInstance
 	} from 'vue';
-	const tags = ['鍙棤缁忛獙','鏅氫笂鍖呴キ','鍙鐔熸墜','鎵嬭剼楹诲埄','涓崍鍖呴キ','鍚冮キ涓嶆墸鏃�','涓嶇(娲嬪伐','绂佹鍚哥儫']
-	const value1 = ref('')
-	const model1 = reactive({
-		userInfo: {
-			name: '',
-			sex: '',
-			number: 12345678989,
-			value: 3,
-			address: '鍥涘窛鐪佹垚閮藉競姝︿警鍖虹幆鐞冧笢璺�',
-			xiaoshi:20
-		},
-	});
+	import {
+		onLoad,
+		onShow
+	} from "@dcloudio/uni-app";
+	const {
+		$upload,
+		$api,
+		$util,
+		$db
+	} = getCurrentInstance().appContext.config.globalProperties
+	import {
+		useStore
+	} from 'vuex'
+	onLoad(() => {
+		let data = JSON.parse($db.get('userInfo')).userCompany
+		if (data) {
+			publicJob.orderUserId = 5
+			publicJob.worderAddress = data.address
+			publicJob.contactPhone = data.phone //鑱旂郴鐢佃瘽
+		}
+	})
+	let dateType = ref()
+	let minDate = $util.formatDate(new Date())
+	let longitude = ref(0)
+	let latitude = ref(0)
+	let workDate = ref('')
+	let workTime = ref('')
+	const store = useStore()
+	let datePickerShow = ref(false)
+	const publicJob = reactive({
+		id: 0, //鎷涘伐Id
+		orderUserId: '', //鎷涘伐鐢ㄦ埛id
+		orderName: '', //鎷涘伐鍚嶇О
+		wordStartTime: '', //宸ヤ綔寮�濮嬫棩鏈�
+		wordEndTime: '', //宸ヤ綔缁撴潫鏃ユ湡
+		StartTime: '', //宸ヤ綔寮�濮嬫椂闂�
+		EndTime: '', //宸ヤ綔缁撴潫鏃堕棿
+		demand: '', //闇�姹�
+		worderCount: '', //鎷涘伐浜烘暟
+		worderAddress: '', //宸ヤ綔鍦扮偣
+		contactPhone: '', //鑱旂郴鐢佃瘽
+		workerType: 0, //宸ヤ綔鏂瑰紡 0璁℃椂1璁′欢
+		workPrice: '', //宸ヤ环
+	})
+
+	const style = ref('time')
+	const changStyle = (val) => {
+		publicJob.workerType = val
+	}
+	const clickTime = (type) => {
+		dateType.value = type
+		datePickerShow.value = !datePickerShow.value
+	}
+	const cancel = () => {
+		datePickerShow.value = !datePickerShow.value
+	}
+	const changePicker = (val) => {
+		console.log(val);
+		if (dateType.value == 3) {
+			workDate.value = val.startDate.result + '鑷�' + val.endDate.result
+			publicJob.wordStartTime = new Date(val.startDate.result) //宸ヤ綔寮�濮嬫椂闂�
+			publicJob.wordEndTime = new Date(val.endDate.result)
+		} else {
+			workTime.value = val.startDate.result + '鑷�' + val.endDate.result
+			publicJob.StartTime = `${val.startDate.param}T${val.startDate.result}:00.000` //宸ヤ綔寮�濮嬫椂闂�
+			publicJob.EndTime = `${val.endDate.param}T${val.endDate.result}:00.000`
+		}
+	}
+	const saveOrder = () => {
+		$api.saveOrder(publicJob).then(res => {
+			if(res.code==1){
+				$util.showToast({
+					title: "淇濆瓨鎴愬姛锛�",
+					icon: "success"
+				})
+				uni.navigateTo({
+					url: '/pages/order/order'
+				})
+			}
+		})
+	}
+	const toMap = () => {
+		// #ifdef MP-WEIXIN
+		console.log(store, 'store鈥�');
+		const txMapkey = store.state.config.qqMapKey; //浣跨敤鍦ㄨ吘璁綅缃湇鍔$敵璇风殑key
+		const referer = store.state.config.shopName; //璋冪敤鎻掍欢鐨刟pp鐨勫悕绉�
+		const location = JSON.stringify({
+			latitude: publicJob.latitude == "" ? latitude : publicJob.latitude,
+			longitude: publicJob.longitude == "" ? longitude : publicJob.longitude
+		});
+		const category = '';
+
+		wx.navigateTo({
+			url: 'plugin://chooseLocation/index?key=' + txMapkey + '&referer=' + referer +
+				'&location=' +
+				location + '&category=' + category
+		});
+		// #endif
+
+		// #ifdef APP-PLUS || APP-PLUS-NVUE
+		uni.chooseLocation({
+			success: (res) => {
+				console.log(res, 'res');
+			}
+		});
+		// #endif
+	}
 </script>
 
 <style>
-	.list{
-		
-	}
+	.list {}
+
 	.content {
 		width: 100%;
 		box-sizing: border-box;
 		background-color: #fff;
 	}
+
+	.u-textarea {
+		padding: 0 !important;
+	}
 </style>
\ No newline at end of file

--
Gitblit v1.9.1