修复表单金额限制,修复订单刷新状态,修复驳回信息显示异常问题,综法订单详情新增律师信息,支付新增支付选项接口

This commit is contained in:
唐明明
2023-06-01 13:57:48 +08:00
14 changed files with 154 additions and 57 deletions

View File

@@ -13,47 +13,48 @@
<!-- 选择支付方式 -->
<view class="choose">
<radio-group @change="changeRadio" >
<label class="choose-item" v-if="payType != 'free'">
<!-- payType != 'free' -->
<label class="choose-item" v-if="payCan.coin">
<view class="choose-text nowrap">
<image src="@/static/icons/pay_alipay.png" mode="aspectFill"></image>
火力值支付
</view>
<radio class="choose-radio" value="coin" :checked="payMethod == 'coin'"></radio>
</label>
<label class="choose-item nowrap">
<label class="choose-item nowrap" v-if="payCan.wx">
<view class="choose-text">
<image src="@/static/icons/pay_wechat.png" mode="aspectFill"></image>
微信支付(银联)
</view>
<radio class="choose-radio" value="wx" :checked="payMethod == 'wx'"></radio>
</label>
<label class="choose-item nowrap">
<label class="choose-item nowrap" v-if="payCan.dgwx">
<view class="choose-text">
<image src="@/static/icons/pay_wechat.png" mode="aspectFill"></image>
微信支付(汇付)
</view>
<radio class="choose-radio" value="dgwx" :checked="payMethod == 'dgwx'"></radio>
</label>
<label class="choose-item nowrap" v-if="Number(total) <= 10000">
<label class="choose-item nowrap" v-if="payCan.ali && Number(total) <= 10000">
<view class="choose-text">
<image src="@/static/icons/pay_ali.png" mode="aspectFill"></image>
支付宝支付(银联)
</view>
<radio class="choose-radio" value="ali" :checked="payMethod == 'ali'"></radio>
</label>
<label class="choose-item nowrap">
<label class="choose-item nowrap" v-if="payCan.dgali">
<view class="choose-text">
<image src="@/static/icons/pay_ali.png" mode="aspectFill"></image>
支付宝支付(汇付)
</view>
<radio class="choose-radio" value="dgali" :checked="payMethod == 'dgali'"></radio>
</label>
<label class="choose-item nowrap">
<label class="choose-item nowrap" v-if="payCan.code">
<view class="choose-text">
<image src="@/static/icons/pay_code.png" mode="aspectFill"></image>
付款码支付
</view>
<radio class="choose-radio" value="code"></radio>
<radio class="choose-radio" value="code" :checked="payMethod == 'code'"></radio>
</label>
</radio-group>
</view>
@@ -146,7 +147,9 @@
// 二维码支付
payCodeShow : false,
payQrUrl : '',
payQrType : ''
payQrType : '',
// 支付选项
payCan : {}
};
},
onShow() {
@@ -161,14 +164,15 @@
})
// 自由服务包订单信息
if(this.$Route.query.paytype === 'free'){
this.payMethod = "wx"
umsFreeInfo(this.$Route.query.serviceId).then(res => {
let { order_id, price, order_no } = res;
let { order_id, price, order_no, can_use_channel } = res;
this.orderId = order_id
this.total = price
this.orderNo = order_no
this.payType = this.$Route.query.paytype
this.payCan = can_use_channel
uni.hideLoading()
this.getDefaultType(can_use_channel)
}).catch(err => {
uni.showToast({
title: err.message,
@@ -181,7 +185,7 @@
if(this.$Route.query.paytype === 'synthesize'){
let order_type = this.$Route.query.orderType.replace(/\-/g, '\\')
oderinfo( this.$Route.query.orderId, order_type).then(res => {
let { order_no, price, score, order_id, rate, total_fire } = res
let { order_no, price, score, order_id, rate, total_fire, can_use_channel } = res
this.rate = rate
this.totalFire = total_fire
this.orderType = order_type
@@ -190,7 +194,9 @@
this.total = price
this.orderNo = order_no
this.balance = score
this.payCan = can_use_channel
uni.hideLoading()
this.getDefaultType(can_use_channel)
}).catch(err => {
uni.showToast({
title: err.message,
@@ -201,14 +207,16 @@
}
// 其他支付方式订单信息
info(this.$Route.query.orderId).then(res => {
let { total, order_no, business_order_id, diff_prices, diff, score } = res
let { total, order_no, business_order_id, diff_prices, diff, score, can_use_channel } = res
this.orderId = business_order_id
this.diffId = diff.business_order_diff_price_id
this.payType = this.$Route.query.paytype
this.total = this.payType === 'diff' ? diff_prices: total
this.orderNo = order_no
this.balance = score
this.payCan = can_use_channel
uni.hideLoading()
this.getDefaultType(can_use_channel)
}).catch(err => {
uni.showToast({
title: err.message,
@@ -217,6 +225,16 @@
})
},
methods: {
// 检查默认支付选项
getDefaultType(can_use_channel){
// 检查支付默认选项
for(let key of Object.keys(can_use_channel)){
if(can_use_channel[key] > 1){
this.payMethod = key
return
}
}
},
// 查询订单状态
onGetOrderPayState(){
// 查询支付状态

View File

@@ -7,32 +7,42 @@
</form>
<view class="diff-list">
<view class="diff-title">补差价记录</view>
<view class="diff-item" v-for="(item, index) in diffArr" :key="index">
<view class="diff-info">
<view class="diff-info-item">
<label>差价金额</label>
<view class="nowrap">{{item.price}}</view>
<block v-if="diffArr.length > 0">
<view class="diff-item" v-for="(item, index) in diffArr" :key="index">
<view class="diff-info">
<view class="diff-info-item">
<label>差价金额</label>
<view class="nowrap">{{item.price}}</view>
</view>
<view class="diff-info-item">
<label>订单状态</label>
<view class="nowrap">{{item.status.text}}</view>
</view>
<view class="diff-info-item">
<label>创建时间</label>
<view class="nowrap">{{item.created_at}}</view>
</view>
</view>
<view class="diff-info-item">
<label>订单状态</label>
<view class="nowrap">{{item.status.text}}</view>
</view>
<view class="diff-info-item">
<label>创建时间</label>
<view class="nowrap">{{item.created_at}}</view>
</view>
</view>
<view class="diff-state border-solid" v-if="item.can.pay_status != 5 && item.can.pay_status != 7">
<view class="diff-btn" v-if="item.can.cancel" @click="onCancel(item.synthesis_diff_price_id, index)">取消订单</view>
<view class="diff-btn in" @click="onListPay(item)" :class="{'hide': item.can.pay_status == 2 || item.can.pay_status == 4}">
<text v-if="item.can.pay_status == 1">立即支付</text>
<text v-if="item.can.pay_status == 2 || item.can.pay_status == 4">审核中</text>
<text v-if="item.can.pay_status == 3 || item.can.pay_status == 6">被驳回</text>
<view class="diff-state border-solid" v-if="item.can.pay_status != 5 && item.can.pay_status != 7">
<view class="diff-btn" v-if="item.can.cancel" @click="onCancel(item.synthesis_diff_price_id, index)">取消订单</view>
<view class="diff-btn in" @click="onListPay(item)" :class="{'hide': item.can.pay_status == 2 || item.can.pay_status == 4}">
<text v-if="item.can.pay_status == 1">立即支付</text>
<text v-if="item.can.pay_status == 2 || item.can.pay_status == 4">审核中</text>
<text v-if="item.can.pay_status == 3 || item.can.pay_status == 6">被驳回</text>
</view>
</view>
</view>
<!-- 分页 -->
<u-loadmore v-if="pagesShow" :status="status" />
</block>
<view class="diff-null" v-else>
<u-empty
mode="history"
icon="http://cdn.uviewui.com/uview/empty/history.png"
text="无补差价记录"
>
</u-empty>
</view>
<!-- 分页 -->
<u-loadmore v-if="pagesShow" :status="status" />
</view>
</view>
</template>
@@ -139,7 +149,7 @@
},
// 列表补差价
onListPay(obj){
let { synthesis_diff_price_id, order_type, can, price, remark, offline_pays } = obj
let { synthesis_diff_price_id, order_type, can, price, remark, offline_pays, order_id } = obj
if(can.pay_status == 2 || can.pay_status == 4){
uni.showToast({
title: '补差价信息正在审核中',
@@ -150,15 +160,14 @@
if(can.pay_status == 3 || can.pay_status == 6){
uni.showModal({
title : '提示',
content : '驳回原因:' + remark,
content : '驳回原因:' + offline_pays.remark,
showCancel : false,
success : res => {
if(res.confirm && can.pay_status == 3){
this.$Router.push({
name: 'BankPay',
params: {
payId : payId,
orderId : offline_pays.offline_pay_id,
payId : offline_pays.offline_pay_id,
orderType : order_type.replace(/\\/g, '-'),
price : price,
type : 'edit'
@@ -231,6 +240,13 @@
padding: 1rpx 0;
box-sizing: border-box;
}
// 页面空
.diff-null{
height: 40vh;
display: flex;
align-items: center;
justify-content: center;
}
// 差价列表
.diff-list{
padding: 0 30rpx;

View File

@@ -69,18 +69,15 @@
synthesisArr: [], //企业-年费服务包列表
}
},
created() {
onShow() {
this.yearServe();
},
methods: {
// 年费服务包列表
yearServe(){
yearSynthList({
type: 2
}).then(res => {
console.log(res)
this.synthesisArr = res
}).catch(err => {
uni.showToast({

View File

@@ -104,12 +104,10 @@
entrustArr : [], // 案件委托列表
}
},
created() {
onShow() {
// 获取-案件委托-列表
this.yearServe();
},
methods: {
// 案件委托-列表
yearServe(){

View File

@@ -192,6 +192,8 @@
}
},
methods: {
// 民事类型列表
yearSon(){
@@ -307,7 +309,6 @@
type : 'self',
channel : 'app'
}).then(res => {
console.log(res)
let { order_id, order_type, can } = res;
this.expressSheet(order_id, order_type, can )
uni.hideLoading()
@@ -368,7 +369,7 @@
background-color: #111e4b;
width: 100vw;
overflow-y: scroll;
position: fixed;
// position: fixed;
}
.top {

View File

@@ -33,6 +33,18 @@
</view>
</view>
</view>
<view class="block" v-if="lawyer != null">
<view class="block-item">
<view class="block-item-flex">
<label>服务律师</label>
<view class="val">{{lawyer.name}}</view>
</view>
<view class="block-item-flex">
<label>律师电话</label>
<view class="val">{{lawyer.username}}</view>
</view>
</view>
</view>
<view class="block">
<view class="block-item">
<view class="block-item-flex">
@@ -69,6 +81,7 @@
params : [],
createdAt: '',
user : {},
lawyer : null,
price : '0.00'
};
},
@@ -78,13 +91,17 @@
mask : true
})
entrustInfo(this.$Route.query.id).then(res => {
let { entrust, params, created_at, user, order_no, total } = res;
console.log(res)
let { entrust, params, created_at, user, order_no, total, lawyer } = res;
this.entrust = entrust
this.params = params
this.createdAt = created_at
this.user = user
this.no = order_no
this.price = total
this.lawyer = lawyer
}).catch(err => {
uni.showToast({
title: err.message,

View File

@@ -32,6 +32,18 @@
</view>
</view>
</view>
<view class="block" v-if="lawyer != null">
<view class="block-item">
<view class="block-item-flex">
<label>服务律师</label>
<view class="val">{{lawyer.name}}</view>
</view>
<view class="block-item-flex">
<label>律师电话</label>
<view class="val">{{lawyer.username}}</view>
</view>
</view>
</view>
<view class="block">
<view class="block-item">
<view class="block-item-flex">
@@ -68,6 +80,7 @@
params : [],
createdAt: '',
user : {},
lawyer : null,
price : '0.00'
};
},
@@ -77,7 +90,8 @@
mask : true
})
expandInfo(this.$Route.query.id).then(res => {
let { expand, params, created_at, user, order_no, total } = res;
let { expand, params, created_at, user, order_no, total, lawyer } = res;
this.lawyer = lawyer
this.expand = expand
this.params = params
this.createdAt = created_at
@@ -85,9 +99,6 @@
this.no = order_no
this.price = total
}).catch(err => {
console.log(err)
uni.showToast({
title: err.message,
icon : 'none'

View File

@@ -32,7 +32,7 @@
<!-- 价格输入框 -->
<view class="idcardAdd-block-write" v-if="item.type === 'price'">
<input class="idcardAdd-input" type="digit" v-model="item.value" :placeholder="'请输入' + item.title" />
<input class="idcardAdd-input" type="digit" v-model="item.value" @blur="priceBlur(item, keyIndex)" :placeholder="'请输入' + item.title" />
</view>
<!-- 密码输入框 -->
@@ -157,6 +157,18 @@
},
methods: {
// 判断最小输入金额
priceBlur(obj, index){
let minPrice = this.price
if(Number(obj.value) < Number(minPrice)){
obj.value = Number(minPrice)
this.$set(this.paramsArr, index, obj)
uni.showToast({
title: '金额不能小于' + minPrice + '元',
icon : 'none'
})
}
},
// 综法咨询-详情
getBusiness(){
expandsInfo(this.$Route.query.entrustId).then(res => {

View File

@@ -65,7 +65,6 @@
}
},
onShow() {
this.yearServe();
},
methods: {

View File

@@ -13,7 +13,7 @@
{{item.title}}
</view>
<view class="list-label-price"><rich-text :nodes="item.content"></rich-text></view>
<view class="list-label-go" @click="$Router.push({name: 'ExpandWrite', params: {entrustId: item.expand_id, title: item.title}})">购买</view>
<view class="list-label-go" @click="$Router.push({name: 'ExpandWrite', params: { entrustId: item.expand_id, title: item.title }})">购买</view>
</view>
</view>
</view>

View File

@@ -32,6 +32,18 @@
</view>
</view>
</view>
<view class="block" v-if="lawyer != null">
<view class="block-item">
<view class="block-item-flex">
<label>服务律师</label>
<view class="val">{{lawyer.name}}</view>
</view>
<view class="block-item-flex">
<label>律师电话</label>
<view class="val">{{lawyer.username}}</view>
</view>
</view>
</view>
<view class="block">
<view class="block-item">
<view class="block-item-flex">
@@ -68,6 +80,7 @@
params : [],
createdAt: '',
user : {},
lawyer : null,
price : '0.00'
};
},
@@ -77,7 +90,8 @@
mask : true
})
servicesInfo(this.$Route.query.id).then(res => {
let { service, params, created_at, user, order_no, total } = res;
let { service, params, created_at, user, order_no, total, lawyer } = res;
this.lawyer = lawyer
this.service = service
this.params = params
this.createdAt = created_at

View File

@@ -32,6 +32,18 @@
</view>
</view>
</view>
<view class="block" v-if="lawyer != null">
<view class="block-item">
<view class="block-item-flex">
<label>服务律师</label>
<view class="val">{{lawyer.name}}</view>
</view>
<view class="block-item-flex">
<label>律师电话</label>
<view class="val">{{lawyer.username}}</view>
</view>
</view>
</view>
<view class="block">
<view class="block-item">
<view class="block-item-flex">
@@ -68,6 +80,7 @@
params : [],
createdAt: '',
user : {},
lawyer : null,
price : '0.00'
};
},
@@ -77,13 +90,14 @@
mask : true
})
synthesisInfo(this.$Route.query.id).then(res => {
let { synthesis, params, created_at, user, order_no, price } = res;
let { synthesis, params, created_at, user, order_no, price, lawyer } = res;
this.synthesis = synthesis
this.params = params
this.createdAt = created_at
this.user = user
this.no = order_no
this.price = price
this.lawyer = lawyer
}).catch(err => {
uni.showToast({
title: err.message,

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 77 KiB

After

Width:  |  Height:  |  Size: 29 KiB