From b5391c8c5a802d6662f4336e1e2290439d0a91c4 Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期三, 03 九月 2025 09:23:19 +0800
Subject: [PATCH] 前端
---
server/services/src/main/java/com/doumee/core/constants/Constants.java | 3
small-program/pages/demand-hall/demand-hall.vue | 18 +++-
small-program/pages/order-details/order-details.vue | 218 ++++++++++++++++++++++++++++++++++++++++++++++++++----
3 files changed, 216 insertions(+), 23 deletions(-)
diff --git a/server/services/src/main/java/com/doumee/core/constants/Constants.java b/server/services/src/main/java/com/doumee/core/constants/Constants.java
index bde9912..cb06d9a 100644
--- a/server/services/src/main/java/com/doumee/core/constants/Constants.java
+++ b/server/services/src/main/java/com/doumee/core/constants/Constants.java
@@ -445,6 +445,8 @@
AUTO_COMMENT(13, "绯荤粺-鑷姩璇勪环","瓒呭嚭7鏃ユ湭璇勪环锛岀郴缁熷凡鑷姩璇勪环",2),
AUTO_AGREE(14, "绯荤粺-鑷姩鍚屾剰","鎺ュ崟鏂硅秴鏃舵湭澶勭悊锛屽凡鑷姩鍚屾剰",2),
+ FEE_CONFIRM(15, "鎺ュ崟鏂�-纭璐圭敤","{userName}宸茬‘璁よ垂鐢�",1),
+
;
// 鎴愬憳鍙橀噺
private String name;
@@ -564,6 +566,7 @@
accept(2, "宸叉帴鍗�"),
doing(3, "杩涜涓�"),
done(4, "宸插畬鎴�"),
+ feeconfirm(5, "宸茬‘璁よ垂鐢�"),
cancel(99, "宸插彇娑�"),
;
// 鎴愬憳鍙橀噺
diff --git a/small-program/pages/demand-hall/demand-hall.vue b/small-program/pages/demand-hall/demand-hall.vue
index f5c1ca0..5fd1ef8 100644
--- a/small-program/pages/demand-hall/demand-hall.vue
+++ b/small-program/pages/demand-hall/demand-hall.vue
@@ -6,7 +6,6 @@
<text>鎴戠殑璁㈠崟</text>
</view>
</view>
-
<!-- 鏈櫥褰� -->
<view class="index-wu" v-if="!isLogin">
<image src="/static/icon/default_login@2x.png" mode="widthFix"></image>
@@ -46,7 +45,7 @@
<text v-if="item.type === 0 && item.workType === 0">鐢ㄥ伐鍗� - 閲囨憳宸�</text>
<text v-else-if="item.type === 0 && item.workType === 1">鐢ㄥ伐鍗� - 鍒嗘嫞宸�</text>
<text v-else-if="item.type === 0 && item.workType === 2">鐢ㄥ伐鍗� - 鍖呰宸�</text>
- <text v-else-if="item.type === 1">杩愯揣鍗�-{{item.categoryName}}-{{item.carUnit}}</text>
+ <text v-else-if="item.type === 1">杩愯揣鍗�</text>
<text v-else-if="item.type === 2">璁㈤鍗�</text>
</view>
<view class="index-list-item-head-r" v-if="item.status === 1">寰呮帴鍗曟柟鎺ュ崟</view>
@@ -65,6 +64,9 @@
</view>
<view class="index-list-item-info" v-if="item.type === 0 && item.workType === 2">
{{item.categoryName}}锝渰{item.priceNum1}}浜�
+ </view>
+ <view class="index-list-item-info" v-if="item.type === 1">
+ {{item.categoryName}}-{{item.carUnit}}
</view>
<view class="index-list-item-info" v-if="item.type === 1">
{{item.transportTypeName}} | {{item.transportNum}}{{item.transportUnit}}锝滅敤杞{item.priceNum1}}澶�
@@ -122,7 +124,7 @@
<text v-if="item.type === 0 && item.workType === 0">鐢ㄥ伐鍗� - 閲囨憳宸�</text>
<text v-else-if="item.type === 0 && item.workType === 1">鐢ㄥ伐鍗� - 鍒嗘嫞宸�</text>
<text v-else-if="item.type === 0 && item.workType === 2">鐢ㄥ伐鍗� - 鍖呰宸�</text>
- <text v-else-if="item.type === 1">杩愯揣鍗�-{{item.categoryName}}-{{item.carUnit}}</text>
+ <text v-else-if="item.type === 1">杩愯揣鍗�</text>
<text v-else-if="item.type === 2">璁㈤鍗�</text>
<view class="tips" v-if="item.acceptType === 1">绯荤粺娲惧崟</view>
<view class="tips1" v-if="item.acceptType === 0">鑷富鎶㈠崟</view>
@@ -140,6 +142,9 @@
</view>
<view class="index-list-item-info" v-if="item.type === 0 && item.workType === 2">
{{item.categoryName}}锝渰{item.priceNum1}}浜�
+ </view>
+ <view class="index-list-item-info" v-if="item.type === 1">
+ {{item.categoryName}}-{{item.carUnit}}
</view>
<view class="index-list-item-info" v-if="item.type === 1">
{{item.transportTypeName}} | {{item.transportNum}}{{item.transportUnit}}锝滅敤杞{item.priceNum1}}澶�
@@ -267,9 +272,10 @@
{ name: '寰呮帴鍗�', id: 1 },
{ name: '宸叉帴鍗�', id: 2 },
{ name: '杩涜涓�', id: 3 },
+ { name: '纭璐圭敤', id: 5 },
{ name: '宸插畬鎴�', id: 4 },
{ name: '宸插彇娑�', id: 99 },
- { name: '寰呰瘎浠�', id: 5 }
+ { name: '寰呰瘎浠�', id: 6 }
],
orderId: null,
status: '',
@@ -369,8 +375,8 @@
page: this.page,
model: {
queryMyOrderType: this.userInfo.useIdentity,
- status: this.status === 5 ? 4 : this.status,
- commentStatus: this.status === 5 ? 0 : '',
+ status: this.status === 6 ? 4 : this.status,
+ commentStatus: this.status === 6 ? 0 : '',
queryLat: this.latitude,
queryLgt: this.longitude
}
diff --git a/small-program/pages/order-details/order-details.vue b/small-program/pages/order-details/order-details.vue
index 26843f6..cef62de 100644
--- a/small-program/pages/order-details/order-details.vue
+++ b/small-program/pages/order-details/order-details.vue
@@ -11,8 +11,7 @@
<view class="order-head-info" v-else >{{getStatusInfo()}}</view>
</view>
<view class="order-quxiao">
- <view class="order-quxiao-btn" @click="show = true" v-if="userInfo.id === info.acceptMemberId && info.status ===2">鍙栨秷璁㈠崟</view>
- <view class="order-quxiao-btn" @click="show = true" v-if="userInfo.id === info.releaseMemberId && info.isUpdate!=1 && info.status ===2">鍙栨秷璁㈠崟</view>
+ <view class="order-quxiao-btn" @click="show = true" v-if="(userInfo.id === info.acceptMemberId && info.status ===2) || (userInfo.id === info.releaseMemberId && info.isUpdate!=1 && info.status ===2)">鍙栨秷璁㈠崟</view>
<view class="order-quxiao-btn1" v-if="userInfo.id === info.releaseMemberId && info.type!=2 && info.isUpdate!=1 && info.status ===2 " @click="jumpEdit()">淇敼璁㈠崟</view>
</view>
<view class="order-user" v-if="userInfo.id === info.releaseMemberId && info.acceptMemberId">
@@ -39,7 +38,7 @@
</view>
</view>
</view>
- <view class="user-info-r" @click="contactPhone(info.acceptPhone)">
+ <view class="user-info-r" @click="contactPhone(info.acceptPhone)" v-if="info.status ==2||info.status==3||info.status==5">
<image src="/static/icon/ic_call@2x.png" mode="widthFix"></image>
<text>鑱旂郴甯堝倕</text>
</view>
@@ -133,7 +132,7 @@
<view class="order-ren-left-tip">涓氫富</view>
</view>
<view class="order-ren-x"></view>
- <view class="order-ren-lx" @click="contactPhone(info.releasePhone)">
+ <view class="order-ren-lx" v-if="info.status ==2||info.status==3||info.status==5" @click="contactPhone(info.releasePhone)">
<image src="/static/icon/ic_call@2x.png" mode="widthFix"></image>
<text>鍙戝崟鏂�</text>
</view>
@@ -186,10 +185,9 @@
<view class="order-footer-btn-a" @click="show = true" v-if="1==2&& userInfo.id === info.acceptMemberId && info.status ===2">鍙栨秷璁㈠崟</view>
<view class="order-footer-btn-a" @click="show = true" v-if="userInfo.id === info.releaseMemberId && (info.status ===0 || info.status ===1|| info.status ===2)">鍙栨秷璁㈠崟</view>
<view class="order-footer-btn-b" @click="show2=true" v-if="userInfo.id === info.releaseMemberId && (info.status ===4 && info.commentStatus!=1)">鍘昏瘎浠�</view>
- <view class="order-footer-btn-b" v-if="userInfo.id === info.releaseMemberId &&((info.status ===3 && info.type !==2)|| (info.status ===0 && info.type===2))" @click="show1 = true">{{info.type === 2 ? '缁х画鏀粯' : '瀹屾垚骞舵敮浠�'}}</view>
-
+ <view class="order-footer-btn-b" v-if="userInfo.id === info.releaseMemberId &&((info.status ===5 && info.type !==2)|| (info.status ===0 && info.type===2))" @click="show1 = true">{{info.type === 2 ? '缁х画鏀粯' : '瀹屾垚骞舵敮浠�'}}</view>
+ <view class="order-footer-btn-a" @click="show7 = true" v-if=" info.type!==2 && userInfo.id === info.acceptMemberId && info.status ===3">纭璐圭敤</view>
<view class="order-footer-btn-b" v-if="userInfo.id === info.releaseMemberId && ((info.status ===3 && info.type===2))" @click="payment1">瀹屾垚浣滀笟</view>
-
<view class="order-footer-btn-b" v-if="info.type !=2 && info.isUpdate!=1&& userInfo.id === info.releaseMemberId && (info.status ===0 || info.status ===1|| info.status ===2)" @click="jumpEdit()">淇敼璁㈠崟</view>
<view class="order-footer-btn-b" @click="show5 =true" v-if="userInfo.id === info.acceptMemberId && (info.isUpdate==1 && info.status ===2)">淇敼纭</view>
<!-- <view class="order-footer-btn-b" @click="startJobs()" v-if="userInfo.id === info.releaseMemberId && (info.status ===2)">寮�濮嬩綔涓�</view> -->
@@ -278,7 +276,66 @@
<view class="zhifu-botton" @click="payment">纭鏀粯</view>
</view>
</u-popup>
-
+ <!-- 鏀粯寮圭獥 -->
+ <u-popup :show="show7" round="15" mode="bottom">
+ <view class="querenfee">
+ <view class="querenfee-head">
+ <view></view>
+ <text>璐圭敤纭</text>
+ <image @click="show7 = false" src="/static/icon/ic_close@2x.png" mode="widthFix"></image>
+ </view>
+ <view class="querenfee-c">
+ <view class="querenfee-c-info1">璐圭敤鏍囧噯锛�</view>
+ <viem class=" money">{{((info.price||0)/100).toFixed(2) }}{{info.priceUnit || '' }}</viem>
+ </view>
+ <view class="querenfee-c" >
+ <view class="querenfee-c-info1" v-if="info.type ==1 && info.carType ==0"><text style="color: red;">*</text>瀹為檯鐢ㄨ溅澶╂暟锛�</view>
+ <view class="querenfee-c-info1" v-if="info.type ==1 && info.carType ==1"><text style="color: red;">*</text>瀹為檯鐢ㄨ溅娆℃暟锛�</view>
+ <view class="querenfee-c-info1" v-if="info.type ==0 && info.workType ==0"><text style="color: red;">*</text>瀹為檯閲囨憳閲嶉噺锛�</view>
+ <view class="querenfee-c-info1" v-if="info.type ==0 && info.workType ==1"><text style="color: red;">*</text>瀹為檯鐢ㄥ伐澶╂暟锛�</view>
+ <view class="querenfee-c-info1" v-if="info.type ==0 && info.workType ==2"><text style="color: red;">*</text>瀹為檯鐢ㄨ溅娆℃暟锛�</view>
+ <view class="querenfee-c-input">
+ <input type="number" v-model="feeForm.priceNum1" placeholder="璇疯緭鍏�" />
+ </view>
+ <text class="querenfee-c-info1" v-if="info.type ==1 && info.carType ==0">澶�</text>
+ <text class="querenfee-c-info1" v-if="info.type ==1 && info.carType ==1">娆�</text>
+ </view>
+ <view class="querenfee-c" v-if="info.type ==0 && (info.workType ==1 ||info.workType ==2)">
+ <view class="querenfee-c-info1" v-if="info.workType ==1"><text style="color: red;">*</text>瀹為檯鐢ㄥ伐浜烘暟锛�</view>
+ <view class="querenfee-c-info1" v-if="info.workType ==2 && info.carType ==0"><text style="color: red;">*</text>瀹為檯鐢ㄥ伐浜烘暟锛�</view>
+ <view class="querenfee-c-info1" v-if="info.workType ==2 && info.carType ==1"><text style="color: red;">*</text>瀹為檯鐢ㄥ伐鏃堕棿锛�</view>
+ <view class="querenfee-c-info1" v-if="info.workType ==2 && info.carType ==1"><text style="color: red;">*</text>瀹為檯鐢ㄥ伐鏃堕棿锛�</view>
+ <view class="querenfee-c-input">
+ <input type="number" v-model="feeForm.priceNum2" placeholder="璇疯緭鍏�" />
+ </view>
+ <text class="querenfee-c-info1" v-if="info.workType ==1">浜�</text>
+ <text class="querenfee-c-info1" v-if="info.workType ==2 && ">娆�</text>
+ </view>
+ <view class="querenfee-c">
+ <view class="querenfee-c-info1">鍏朵粬璐圭敤锛�</view>
+ <view class="querenfee-c-input">
+ <input type="number" v-model="feeForm.confirmOtherFee" placeholder="璇疯緭鍏�" />
+ </view>
+ </view>
+ <view class="querenfee-c">
+ <view class="querenfee-c-info1">澶囨敞淇℃伅锛�</view>
+ <view class="querenfee-c-input">
+ <u--textarea placeholder="濡傞渶澶囨敞锛岃杈撳叆" border="none" v-model="feeForm.confirmFeeRemark" ></u--textarea>
+ </view>
+ </view>
+ <view class="querenfee-c">
+ <view class="querenfee-c-info1">瀹為檯鎬昏垂鐢細</view>
+ <view class="querenfee-c-input">
+ <image src="/static/icon/ic_money@2x.png" mode="widthFix"></image>
+ <text class="querenfee-c-input money">{{confirmPayFee}}</text>
+ </view>
+ </view>
+ <view class="querenfee-c">
+ <view class="querenfee-tips">鏈�缁堣垂鐢ㄧ敱鍙戝崟鏂规敮浠橈紝鎺ュ崟鏂规敹鍒扮殑閲戦灏嗘墸闄ゅ钩鍙版墜缁垂鐢�</view>
+ </view>
+ <view class="querenfee-botton" @click="confirmFee">纭璐圭敤</view>
+ </view>
+ </u-popup>
<!-- 璇勪环 -->
<u-popup :show="show2" round="15" mode="bottom">
<view class="zhifu">
@@ -321,6 +378,7 @@
show4:false,
show5:false,
show6:false,
+ show7:true,
timeInfo:'00:00:00',
lessTime:null,
value:0,
@@ -330,7 +388,14 @@
loading:false,
commentInfo:'',
info: {},
- amount: ''
+ amount: '',
+ confirmPayFee:0.00,
+ feeFrom:{
+ priceNum1:null,
+ priceNum2:null,
+ confirmFeeRemark:null,
+ confirmOtherFee:null,
+ }
};
},
onLoad(options) {
@@ -389,6 +454,9 @@
that.getOrderData()
}
})
+ },
+ confirmFee(){
+ console.log("confirmFee")
},
payment() {
var that = this
@@ -575,14 +643,17 @@
}
var that =this
this.lessTime = Math.floor( Number(that.info.confirmCountdown || 0)/1000) ;
- this.timer = setInterval(function(){
- let h = Math.floor(that.lessTime/60/60) ;
- let m = Math.floor((that.lessTime - h*60*60)/60);
- let s= Math.floor(that.lessTime- h*60*60 -m*60);
- that.timeInfo =(h<10?'0':'')+ h+":"+(m<10?'0':'')+m+":"+(s<10?'0':'')+s;
- that.lessTime =that.lessTime-1;
- // console.log( that.timeInfo)
- },1000)
+ if(lessTime>0){
+ this.timer = setInterval(function(){
+ let h = Math.floor(that.lessTime/60/60) ;
+ let m = Math.floor((that.lessTime - h*60*60)/60);
+ let s= Math.floor(that.lessTime- h*60*60 -m*60);
+ that.timeInfo =(h<10?'0':'')+ h+":"+(m<10?'0':'')+m+":"+(s<10?'0':'')+s;
+ that.lessTime =that.lessTime-1;
+ // console.log( that.timeInfo)
+ },1000)
+ }
+
},
getOrderData(){
var that = this
@@ -630,6 +701,116 @@
<style lang="scss" scoped>
.order {
width: 100%;
+ .querenfee {
+ width: 100%;
+ padding: 40rpx 30rpx;
+ box-sizing: border-box;
+
+ .querenfee-textarea {
+ width: 100%;
+ height: 364rpx;
+ padding: 30rpx;
+ box-sizing: border-box;
+ background: #F7F7F7;
+ border-radius: 16rpx;
+ border: 1rpx solid #EEEEEE;
+ margin-top: 48rpx;
+ display: flex;
+ align-items: start;
+ image {
+ flex-shrink: 0;
+ width: 29rpx;
+ height: 29rpx;
+ margin-right: 10rpx;
+ }
+ }
+
+ .querenfee-head {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ image {
+ width: 28rpx;
+ height: 28rpx;
+ }
+ text {
+ font-weight: 500;
+ font-size: 32rpx;
+ color: #222222;
+ }
+ }
+ .querenfee-c {
+ width: 100%;
+ margin-top: 46rpx;
+ display: flex;
+ .querenfee-c-info {
+ align-items: center;
+ font-weight: 500;
+ font-size: 30rpx;
+ color: #222222;
+ margin-bottom: 30rpx;
+ text {
+ color: #00BC12;
+ margin-left: 10rpx;
+ }
+ }
+ .querenfee-c-info1 {
+ width: 50%;
+ font-weight: 400;
+ font-size: 30rpx;
+ color: #666666;
+ margin-bottom: 20rpx;
+ }
+ .querenfee-tips{
+ width: 100%;
+ font-weight: 400;
+ font-size: 26rpx;
+ color: #999999;
+ line-height: 36rpx;
+ }
+ .money{
+ width: 50%;
+ text-align: right;
+ color: red !important;
+ }
+ .querenfee-c-input {
+ width: 100%;
+ padding: 0 30rpx;
+ box-sizing: border-box;
+ height: 60rpx;
+ background: #F7F7F7;
+ border-radius: 10rpx;
+ border: 1rpx solid #EEEEEE;
+ display: flex;
+ align-items: center;
+ image {
+ flex-shrink: 0;
+ width: 28rpx;
+ height: 60rpx;
+ margin-right: 24rpx;
+ }
+ input {
+ flex: 1;
+ height: 100%;
+ font-weight: 500;
+ color: #222222;
+ }
+ }
+ }
+ .querenfee-botton {
+ width: 100%;
+ height: 88rpx;
+ line-height: 88rpx;
+ text-align: center;
+ font-weight: 500;
+ font-size: 32rpx;
+ color: #FFFFFF;
+ background: #00BC12;
+ border-radius: 44rpx;
+ margin-top: 264rpx;
+ }
+ }
.zhifu {
width: 100%;
padding: 40rpx 30rpx;
@@ -702,6 +883,9 @@
color: #666666;
margin-bottom: 20rpx;
}
+ .money{
+ color: red !important;
+ }
.zhifu-c-input {
width: 100%;
padding: 0 30rpx;
--
Gitblit v1.9.3