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 | 198 ++++++++++++++++++++++++++++++++++---------------
1 files changed, 137 insertions(+), 61 deletions(-)
diff --git a/src/pages/release/index.vue b/src/pages/release/index.vue
index 76c066f..96ef3b7 100644
--- a/src/pages/release/index.vue
+++ b/src/pages/release/index.vue
@@ -1,68 +1,60 @@
<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>
+ <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="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>
+ <view class="content c-p-10 c-p-l-24 c-m-t-10 c-m-b-20">
+ <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-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> -->
+ <view class="content c-p-10 c-p-l-24 c-m-t-10 c-m-b-20">
+ <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>
<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 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">
- <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-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-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>
+ <view class="content c-p-10 c-p-l-24 c-m-t-10 c-m-b-20">
+ <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-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>
+ <view class="content c-p-10 c-p-l-24 c-m-t-10 c-m-b-20">
+ <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-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>
+ <view class="content c-p-10 c-p-l-24 c-m-t-10 c-m-b-20">
+ <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">
+ <!-- <view class="coreshop-bg-white c-m-t-20 c-p-20">
<view class="c-p-b-20 colorgray">
鎷涘伐瑕佹眰鎴栫鍒�(鍙閫�)
</view>
@@ -75,44 +67,128 @@
<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="5" @change="changePicker" :minDate='minDate'
+ @cancel="cancel"></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
+ }
+ })
+ let minDate = $util.formatDate(new Date())
+ let longitude = ref(0)
+ let latitude = ref(0)
+ let workTime = ref('')
+ const store = useStore()
+ let datePickerShow = ref(false)
+ 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) => {
+ 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: 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