From 79745a1b12fa6d69edd3a353cb11b8ae02b8d4aa Mon Sep 17 00:00:00 2001 From: zhangwei <1504152376@qq.com> Date: 星期一, 26 八月 2024 17:16:53 +0800 Subject: [PATCH] 投递与确认 --- src/pages/release/index.vue | 181 +++++++++++++++++++++++++------------------- 1 files changed, 103 insertions(+), 78 deletions(-) diff --git a/src/pages/release/index.vue b/src/pages/release/index.vue index 703211f..96ef3b7 100644 --- a/src/pages/release/index.vue +++ b/src/pages/release/index.vue @@ -1,69 +1,57 @@ <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'> + <up-form labelPosition="left" :model="publicJob" ref="form1" labelWidth='160rpx'> <view class="content c-p-10 c-p-l-24 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> + <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-10 c-p-l-24 c-m-t-10 c-m-b-20"> - <up-form-item label="宸ヤ綔鏃堕棿" prop="userInfo.name" :borderBottom='false' ref="item1" - @click="clickTime"> - <up-input v-model="model1.userInfo.name" border="none" readonly - placeholder="鐐瑰嚮閫夋嫨宸ヤ綔鏃堕棿"></up-input> + <up-form-item label="宸ヤ綔鏃堕棿" prop="workTime" :borderBottom='false' ref="item1" @click="clickTime"> + <up-input v-model="workTime" border="none" readonly placeholder="鐐瑰嚮閫夋嫨宸ヤ綔鏃堕棿"></up-input> <up-icon #right name="arrow-right"></up-icon> </up-form-item> </view> <view class="content c-p-10 c-p-l-24 c-m-t-10 c-m-b-20"> - <up-form-item label="鐢ㄥ伐瑕佹眰" prop="userInfo.name" :borderBottom='false' ref="item1"> + <up-form-item label="鐢ㄥ伐瑕佹眰" prop="publicJob.demand" :borderBottom='false' ref="item1"> <view class="c-p-b-20"> - <up-textarea v-model="value1" border="none" placeholder="璇疯緭鍏ョ敤宸ヨ姹�" count + <up-textarea v-model="publicJob.demand" border="none" placeholder="璇疯緭鍏ョ敤宸ヨ姹�" count maxlength='400'></up-textarea> </view> - <!-- <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> - <!-- <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 label="鎷涘伐浜烘暟" prop="publicJob.worderCount" :borderBottom='false' ref="item1"> + <up-number-box v-model="publicJob.worderCount" @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" @click="toMap"> - <up-input v-model="model1.userInfo.address" border="none" readonly placeholder="璇疯緭鍏ュ伐浣滃湴鐐�"></up-input> + <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> </view> </view> <view class="content c-p-10 c-p-l-24 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="璇疯緭鍏ヨ仈绯荤數璇�"></up-input> + <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> </view> <view class="content c-p-10 c-p-l-24 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='!(style=="time")' size="large" - @click='changStyle("time")'></up-tag> - <up-tag class='c-p-r-14' text="璁′欢" type="warning" :plain='!(style=="piece")' size="large" - @click='changStyle("piece")'></up-tag> + <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")' size="large" + @click='changStyle(0)'></up-tag> + <up-tag class='c-p-r-14' text="璁′欢" type="warning" :plain='!(publicJob.workerType=="1")' size="large" + @click='changStyle(1)'></up-tag> </up-form-item> </view> <view class="content c-p-10 c-p-l-24 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>{{style=="time"?'鍏�/灏忔椂':'鍏�/浠�'}}</template></up-input> + <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="coreshop-bg-white c-m-t-20 c-p-20"> @@ -83,12 +71,12 @@ </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='250'> <fui-icon name="kefu-fill" color='#000'></fui-icon> </fui-fab> --> - <fui-date-picker range :show="datePickerShow" type="5" @change="changePicker" + <fui-date-picker range :show="datePickerShow" type="5" @change="changePicker" :minDate='minDate' @cancel="cancel"></fui-date-picker> </view> </template> @@ -96,62 +84,99 @@ <script setup> import { ref, - reactive + reactive, + getCurrentInstance } from 'vue'; - import { useStore } from 'vuex' - let longitude= ref(0) - let latitude= ref(0) + 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 + } + }) + let minDate = $util.formatDate(new Date()) + let longitude = ref(0) + let latitude = ref(0) + let workTime = ref('') const store = useStore() - const value1 = ref('') let datePickerShow = ref(false) - const model1 = reactive({ - userInfo: { - name: '', - sex: '', - number: 12345678989, - value: 3, - address: '鍥涘窛鐪佹垚閮藉競姝︿警鍖虹幆鐞冧笢璺�', - xiaoshi: 20, - longitude:0, - latitude:0 - }, - }); + const publicJob = reactive({ + id: 0, //鎷涘伐Id + orderUserId: '', //鎷涘伐鐢ㄦ埛id + orderName: '', //鎷涘伐鍚嶇О + wordStartTime: '', //宸ヤ綔寮�濮嬫椂闂� + wordEndTime: '', //宸ヤ綔缁撴潫鏃堕棿 + demand: '', //闇�姹� + worderCount: '', //鎷涘伐浜烘暟 + worderAddress: '', //宸ヤ綔鍦扮偣 + contactPhone: '', //鑱旂郴鐢佃瘽 + workerType: 0, //宸ヤ綔鏂瑰紡 0璁℃椂1璁′欢 + workPrice: '', //宸ヤ环 + }) + const style = ref('time') const changStyle = (val) => { - style.value = val + publicJob.workerType = val } const clickTime = () => { datePickerShow.value = !datePickerShow.value } const changePicker = (val) => { console.log(val); + workTime.value = val.startDate.result + '鑷�' + val.endDate.result + publicJob.wordStartTime = new Date(val.startDate.result) //宸ヤ綔寮�濮嬫椂闂� + publicJob.wordEndTime = new Date(val.endDate.result) + } + const saveOrder = () => { + // publicJob.worderCount = (+publicJob.worderCount) + $api.saveOrder(publicJob).then(res => { + $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: model1.userInfo.latitude == "" ? latitude : model1.userInfo.latitude, - longitude: model1.userInfo.longitude == "" ? longitude : model1.userInfo.longitude - }); - const category = ''; + // #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 + 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 - } + // #ifdef APP-PLUS || APP-PLUS-NVUE + uni.chooseLocation({ + success: (res) => { + console.log(res, 'res'); + } + }); + // #endif + } </script> <style> -- Gitblit v1.9.1