From 9d901b4215323c97a00a068cd962f5c9c04dadfa Mon Sep 17 00:00:00 2001 From: doum <doum> Date: 星期四, 04 九月 2025 10:15:09 +0800 Subject: [PATCH] 前端 --- small-program/pages/using-workers/using-workers.vue | 306 ++++++++++++++++++++++++++++---------------------- 1 files changed, 170 insertions(+), 136 deletions(-) diff --git a/small-program/pages/using-workers/using-workers.vue b/small-program/pages/using-workers/using-workers.vue index 4be22fe..e319d7e 100644 --- a/small-program/pages/using-workers/using-workers.vue +++ b/small-program/pages/using-workers/using-workers.vue @@ -13,95 +13,104 @@ <u-icon name="arrow-right" color="#111111" size="16"></u-icon> </view> </view> - <view class="list-item-row" @click="selectAddress()"> - <view class="list-item-row-label">鐢ㄥ伐鍦扮偣<b>*</b></view> - <view class="list-item-row-val"> - <text>{{form.location ? form.location : '璇烽�夋嫨'}}</text> - <u-icon name="arrow-right" color="#111111" size="16"></u-icon> - </view> - </view> - <view class="list-item-row"> - <view class="list-item-row-label">鍦扮偣鎻忚堪</view> - <view class="list-item-row-val"> - <input type="text" v-model="form.locationRemark" placeholder="璇疯緭鍏�" /> - </view> - </view> - </view> - <view class="list-item"> - <view class="list-item-label"> - <view class="list-item-label-x"></view> - <text>闇�姹�</text> - </view> - <view class="list-item-row" @click="show1 = true"> - <view class="list-item-row-label">閲囨憳鍝佺<b>*</b></view> - <view class="list-item-row-val"> - <text>{{form.categoryName ? form.categoryName : '璇烽�夋嫨'}}</text> - <u-icon name="arrow-right" color="#111111" size="16"></u-icon> - </view> - </view> - <view class="list-item-row"> - <view class="list-item-row-label">閲囨憳閲嶉噺<b>*</b></view> - <view class="list-item-row-val"> - <input type="number" v-model="form.priceNum1" @blur="getPrice" placeholder="璇疯緭鍏�" /> - <text>鏂�</text> - </view> - </view> - <view class="list-item-row" v-if="viewStatus"> - <view class="list-item-row-label">闇�姹傝ˉ鍏�</view> - <view class="list-item-row-val"> - <textarea v-model="form.supplement" cols="30" rows="10" placeholder="璇疯緭鍏�" maxlength="200"></textarea> - </view> - </view> - <view class="list-item-row" v-if="viewStatus"> - <view class="list-item-row-label">鍥剧墖</view> - <view class="list-item-row-upload"> - <view class="upload-item" v-for="(item, index) in form.multifileList" :key="index"> - <image :src="item.url || item.fileurlFull" mode="widthFix"></image> - <image class="upload-item-dele" @click="form.multifileList.splice(index, 1)" src="/static/icon/ic_delete1@2x.png" mode="widthFix"></image> + <template v-if="!(info.type !== 2 && info.status === 2)"> + <view class="list-item-row" @click="selectAddress()"> + <view class="list-item-row-label">鐢ㄥ伐鍦扮偣<b>*</b></view> + <view class="list-item-row-val"> + <text style="width:80%;">{{form.location ? form.location : '璇烽�夋嫨'}}</text> + <u-icon name="arrow-right" color="#111111" size="16"></u-icon> </view> - <view class="upload-item" @click="uploadImg"> - <u-icon name="plus" color="#999999" size="24"></u-icon> - <text>鐐瑰嚮涓婁紶</text> + </view> + <view class="list-item-row"> + <view class="list-item-row-label">鍦扮偣鎻忚堪</view> + <!-- <view class="list-item-row-val"> + <input type="text" v-model="form.locationRemark" placeholder="璇疯緭鍏�" /> + </view> --> + <view class="list-item-row-val"> + <textarea v-model="form.locationRemark" cols="30" rows="10" placeholder="璇疯緭鍏�" maxlength="200"></textarea> + </view> + </view> + </template> + + </view> + <template v-if="!(info.type !== 2 && info.status === 2)"> + <view class="list-item"> + <view class="list-item-label"> + <view class="list-item-label-x"></view> + <text>闇�姹�</text> + </view> + <view class="list-item-row" @click="show1 = true"> + <view class="list-item-row-label">閲囨憳鍝佺<b>*</b></view> + <view class="list-item-row-val"> + <text>{{form.categoryName ? form.categoryName : '璇烽�夋嫨'}}</text> + <u-icon name="arrow-right" color="#111111" size="16"></u-icon> + </view> + </view> + <view class="list-item-row"> + <view class="list-item-row-label">閲囨憳閲嶉噺<b>*</b></view> + <view class="list-item-row-val"> + <input type="number" v-model="form.priceNum1" @blur="getPrice" placeholder="璇疯緭鍏�" /> + <text>鏂�</text> + </view> + </view> + <view class="list-item-row" v-if="viewStatus"> + <view class="list-item-row-label">闇�姹傝ˉ鍏�</view> + <view class="list-item-row-val"> + <textarea v-model="form.supplement" cols="30" rows="10" placeholder="璇疯緭鍏�" maxlength="200"></textarea> + </view> + </view> + <view class="list-item-row" v-if="viewStatus"> + <view class="list-item-row-label">鍥剧墖</view> + <view class="list-item-row-upload"> + <view class="upload-item" v-for="(item, index) in form.multifileList" :key="index"> + <image :src="item.url || item.fileurlFull" mode="widthFix"></image> + <image class="upload-item-dele" @click="form.multifileList.splice(index, 1)" src="/static/icon/ic_delete1@2x.png" mode="widthFix"></image> + </view> + <view class="upload-item" @click="uploadImg"> + <u-icon name="plus" color="#999999" size="24"></u-icon> + <text>鐐瑰嚮涓婁紶</text> + </view> + </view> + </view> + <view class="list-item-zk" @click="viewStatus = !viewStatus"> + <text>{{viewStatus ? '鏀惰捣' : '琛ュ厖闇�姹�'}}</text> + <u-icon :name="viewStatus ? 'arrow-up' : 'arrow-down'" color="#00BC12" size="16"></u-icon> + </view> + </view> + <view class="list-item"> + <view class="list-item-label"> + <view class="list-item-label-x"></view> + <text>璐圭敤</text> + </view> + <view class="list-item-row"> + <view class="list-item-row-label">璐圭敤鏍囧噯<b>*</b></view> + <view class="list-item-row-val"> + <input v-model="form.price" type="digit" @blur="getPrice" placeholder="璇疯緭鍏�" /> + <text>鍏�/鏂�</text> </view> </view> </view> - <view class="list-item-zk" @click="viewStatus = !viewStatus"> - <text>{{viewStatus ? '鏀惰捣' : '琛ュ厖闇�姹�'}}</text> - <u-icon :name="viewStatus ? 'arrow-up' : 'arrow-down'" color="#00BC12" size="16"></u-icon> - </view> - </view> - <view class="list-item"> - <view class="list-item-label"> - <view class="list-item-label-x"></view> - <text>璐圭敤</text> - </view> - <view class="list-item-row"> - <view class="list-item-row-label">璐圭敤鏍囧噯<b>*</b></view> - <view class="list-item-row-val"> - <input v-model="form.price" type="number" @blur="getPrice" placeholder="璇疯緭鍏�" /> - <text>鍏�/鏂�</text> + <view class="list-item"> + <view class="list-item-label"> + <view class="list-item-label-x"></view> + <text>鑱旂郴浜轰俊鎭�</text> + <text class="list-item-label-info">榛樿鍙戝崟鏂硅仈绯绘柟寮忥紝鍙慨鏀硅仈绯讳汉</text> + </view> + <view class="list-item-row"> + <view class="list-item-row-label">鑱旂郴浜哄鍚�</view> + <view class="list-item-row-val"> + <input type="text" v-model="form.linkName" placeholder="璇疯ˉ鍏�" /> + </view> + </view> + <view class="list-item-row"> + <view class="list-item-row-label">鑱旂郴鐢佃瘽<b>*</b></view> + <view class="list-item-row-val"> + <input type="text" v-model="form.linkPhone" maxlength="11" placeholder="璇疯ˉ鍏�" /> + </view> </view> </view> - </view> - <view class="list-item"> - <view class="list-item-label"> - <view class="list-item-label-x"></view> - <text>鑱旂郴浜轰俊鎭�</text> - <text class="list-item-label-info">榛樿鍙戝崟鏂硅仈绯绘柟寮忥紝鍙慨鏀硅仈绯讳汉</text> - </view> - <view class="list-item-row"> - <view class="list-item-row-label">鑱旂郴浜哄鍚�</view> - <view class="list-item-row-val"> - <input type="text" v-model="form.linkName" placeholder="璇疯ˉ鍏�" /> - </view> - </view> - <view class="list-item-row"> - <view class="list-item-row-label">鑱旂郴鐢佃瘽<b>*</b></view> - <view class="list-item-row-val"> - <input type="text" v-model="form.linkPhone" maxlength="11" placeholder="璇疯ˉ鍏�" /> - </view> - </view> - </view> + </template> + </view> <view style="width: 100%; height: calc(214rpx + env(safe-area-inset-bottom));"></view> <view class="footer"> @@ -113,9 +122,9 @@ </view> </view> <view class="footer-bottom"> - <div class="footer-bottom-btn" @click="submit"> - <text>绔嬪嵆涓嬪崟</text> - <text>锛堟湇鍔″畬鎴愬悗浠樻锛�</text> + <div class="footer-bottom-btn" @click="submit" > + <text>{{form.id?'纭淇敼':'绔嬪嵆涓嬪崟'}}</text> + <text v-if="!form.id">锛堟湇鍔″畬鎴愬悗浠樻锛�</text> </div> </view> <view style="width: 100%; height: env(safe-area-inset-bottom);"></view> @@ -126,6 +135,7 @@ :show="show" color="#00BC12" mode="range" + :allowSameDay="true" @close="show = false" @confirm="confirmDate" /> @@ -152,6 +162,7 @@ }, data() { return { + info: {}, show: false, show1: false, form: { @@ -178,7 +189,7 @@ }, modify: false, cateList: [], - viewStatus: false + viewStatus: true }; }, onLoad(option) { @@ -188,14 +199,22 @@ this.$u.api.getDetail({ orderId: option.id }).then(res => { - for (const key in this.form) { - this.form[key] = res.data[key] + if (res.code === 200) { + this.info = res.data + for (const key in this.form) { + this.form[key] = res.data[key] + } + this.form.days = res.data.totalDays + this.form.price = Number(this.form.price) / 100 + if (!this.form.multifileList) { + this.form.multifileList = [] + } } - this.form.days = res.data.totalDays - this.form.price = Number(this.form.price) / 100 + }) } else { this.form.linkPhone = this.userInfo.telephone + this.form.linkName = this.userInfo.name this.form.days = option.days this.form.startDate = option.startDate this.form.endDate = option.endDate @@ -209,6 +228,7 @@ methods: { // 鎻愪氦璁㈠崟 submit() { + var that = this; if (!this.form.categoryId) { return uni.showToast({ title: '璇烽�夋嫨閲囨憳鍝佺', icon: 'none' }) } @@ -221,32 +241,41 @@ if (!this.form.linkPhone) { return uni.showToast({ title: '璇疯緭鍏ヨ仈绯荤數璇�', icon: 'none' }) } - if (!this.form.id) { - this.$u.api.release({ ...this.form, price: Number(this.form.price) * 100 }) - .then(res => { - if (res.code == 200) { - uni.navigateTo({ - url: `/pages/success/success?orderId=${res.data.id}` + if (!that.form.id) { + uni.requestSubscribeMessage({ + tmplIds: ['oVjOBLcHxIlGzOMJsdInmgI5CHGXh-UTvMzQqfFOnIg','AA97cHjvlPiNO4viMkVe4JifCf9TD5b5Eb7s6El3VS8'], + success(res) { + that.$u.api.release({ ...that.form, price: Number(that.form.price) * 100 }) + .then(res => { + if (res.code == 200) { + uni.navigateTo({ + url: `/pages/success/success?orderId=${res.data.id}` + }) + } }) - } - }) + } + }) } else { - this.$u.api.updateOrder({ ...this.form, price: Number(this.form.price) * 100 }) - .then(res => { - if (res.code == 200) { - uni.showToast({ - title: '缂栬緫鎴愬姛', - icon: 'success', - mask: true, - duration: 2000 + // uni.requestSubscribeMessage({ + // tmplIds: ['3YSC7gouRlSjHXz4CrWOGFzPmGwEBtFj4snwdfMvKHk'], + // success(res) { + that.$u.api.updateOrder({ ...that.form, price: Number(that.form.price) * 100 }) + .then(res => { + if (res.code == 200) { + uni.showToast({ + title: '缂栬緫鎴愬姛', + icon: 'success', + mask: true, + duration: 2000 + }) + setTimeout(() => { + uni.navigateBack({ delta: 1 }); + // uni.$emit('refresh') + }, 1500) + } }) - setTimeout(() => { - uni.navigateBack({ delta: 1 }); - uni.$emit('refresh') - }, 1500) - - } - }) + // } + // }) } }, // 璁$畻閲戦 @@ -260,8 +289,10 @@ type: this.form.type, workType: this.form.workType }).then(res => { - this.modify = true - this.form.estimatedAccount = res.data + if (res.code === 200) { + this.modify = true + this.form.estimatedAccount = res.data + } }) } }, @@ -276,7 +307,7 @@ success: (res) => { this.form.lat = res.latitude this.form.lgt = res.longitude - this.form.address = res.address + this.form.address = res.name || res.address } }); }, @@ -289,30 +320,33 @@ this.$u.api.getCategoryList({ type: 0 }).then(res => { - this.cateList = [res.data] + if (res.code === 200) { + this.cateList = [res.data] + } }) }, uploadImg() { uni.chooseImage({ success: (chooseImageRes) => { - const tempFilePaths = chooseImageRes.tempFilePaths; - uni.uploadFile({ - url: this.$baseUrl + '/web/public/upload', - filePath: tempFilePaths[0], - name: 'file', - formData: { - 'folder': 'orders' - }, - success: (uploadFileRes) => { - const res = JSON.parse(uploadFileRes.data) - this.form.multifileList.push({ - fileurl: res.data.imgaddr, - name: res.data.originname, - url: res.data.url, - type: 0 - }) - } - }); + for (let i = 0; i < chooseImageRes.tempFilePaths.length; i++) { + uni.uploadFile({ + url: this.$baseUrl + '/web/public/upload', + filePath: chooseImageRes.tempFilePaths[i], + name: 'file', + formData: { + 'folder': 'orders' + }, + success: (uploadFileRes) => { + const res = JSON.parse(uploadFileRes.data) + this.form.multifileList.push({ + fileurl: res.data.imgaddr, + name: res.data.originname, + url: res.data.url, + type: 0 + }) + } + }); + } } }); } -- Gitblit v1.9.3