1.调整
This commit is contained in:
parent
2c9695f6c5
commit
188836b06a
|
@ -86,36 +86,36 @@
|
|||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="商户号" prop="merchantId">
|
||||
<el-input style="width: 100%" v-model="form.merchantId" placeholder="请输入商户号" />
|
||||
<el-input style="width: 100%" v-model="form.merchantId" placeholder="请输入商户号" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="apiV3密钥" prop="apiV3Key">
|
||||
<el-input v-model="form.apiV3Key" placeholder="请输入apiV3密钥" />
|
||||
<el-input v-model="form.apiV3Key" placeholder="请输入apiV3密钥" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="通知回调地址" label-width="100" prop="notifyUrl">
|
||||
<el-input style="width: 66%" v-model="form.notifyUrl" placeholder="请输入通知回调地址" />
|
||||
<el-input style="width: 66%" v-model="form.notifyUrl" placeholder="请输入通知回调地址" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="密钥所在位置" label-width="100" prop="privateKeyPath">
|
||||
<el-input style="width: 70%" v-model="form.privateKeyPath" placeholder="请输入密钥所在位置" />
|
||||
<el-input style="width: 70%" v-model="form.privateKeyPath" placeholder="请输入密钥所在位置" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="证书序列号" label-width="90" prop="merchantSerialNumber">
|
||||
<el-input style="width: 70%" v-model="form.merchantSerialNumber" placeholder="请输入证书序列号" />
|
||||
<el-input style="width: 70%" v-model="form.merchantSerialNumber" placeholder="请输入证书序列号" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="退款回调地址" label-width="100" prop="refundNotifyUrl">
|
||||
<el-input style="width: 70%" v-model="form.refundNotifyUrl" placeholder="请输入退款回调地址" />
|
||||
<el-input style="width: 70%" v-model="form.refundNotifyUrl" placeholder="请输入退款回调地址" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
|
|
@ -6,16 +6,14 @@
|
|||
size="small"
|
||||
:inline="true"
|
||||
v-show="showSearch"
|
||||
label-width="68px"
|
||||
>
|
||||
label-width="68px">
|
||||
<el-form-item label="代理商" prop="deptId" v-if="userName == 'admin'">
|
||||
<el-select
|
||||
v-model="queryParams.deptId"
|
||||
filterable
|
||||
placeholder="选择代理商"
|
||||
style="width: 120px"
|
||||
clearable
|
||||
>
|
||||
clearable>
|
||||
<el-option
|
||||
v-for="item in deptOptions"
|
||||
:key="item.deptId"
|
||||
|
@ -615,6 +613,7 @@
|
|||
<el-select
|
||||
v-model="form.deptId"
|
||||
clearable
|
||||
filterable
|
||||
placeholder="请选择代理商"
|
||||
>
|
||||
<el-option
|
||||
|
|
|
@ -94,7 +94,7 @@
|
|||
<el-row>
|
||||
<el-col :span="12" v-if="userName == 'admin'">
|
||||
<el-form-item label="代理商" prop="deptId" >
|
||||
<el-select v-model="form.deptId" placeholder="请选择运营区">
|
||||
<el-select v-model="form.deptId" filterable placeholder="请选择代理商">
|
||||
<el-option
|
||||
v-for="item in deptOptions"
|
||||
:key="item.deptId"
|
||||
|
|
|
@ -1,6 +1,21 @@
|
|||
<template>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||
<el-form-item label="代理商" prop="deptId" v-if="userName == 'admin'">
|
||||
<el-select
|
||||
v-model="queryParams.deptId"
|
||||
filterable
|
||||
placeholder="选择代理商"
|
||||
style="width: 120px"
|
||||
clearable>
|
||||
<el-option
|
||||
v-for="item in deptOptions"
|
||||
:key="item.deptId"
|
||||
:label="item.deptName"
|
||||
:value="item.deptId"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="运营区" prop="areaId" v-if="userName == 'admin'">
|
||||
<el-select v-model="queryParams.areaId" filterable placeholder="请选择运营区" clearable>
|
||||
<el-option
|
||||
|
@ -194,7 +209,11 @@
|
|||
<!-- <el-table-column label="金额(元)" align="center" prop="totalFee" width="70"/>-->
|
||||
<el-table-column label="费用详情" header-align="center" align="left" width="200">
|
||||
<template slot-scope="scope">
|
||||
<div>
|
||||
<!-- {{scope.row.status}}-->
|
||||
<!-- <div v-if="scope.row.status == '2'"> <!– 如果状态是骑行中 –>-->
|
||||
<!-- <span>预估金额:{{ calculateEstimateFee(scope.row) }}</span><br />-->
|
||||
<!-- </div>-->
|
||||
<div> <!-- 其他状态下显示费用详情 -->
|
||||
<template>
|
||||
<span>结算金额:{{ formatFee(calculateSettlementAmount(scope.row)) }}</span><br />
|
||||
</template>
|
||||
|
@ -210,7 +229,7 @@
|
|||
<template v-if="scope.row.manageFee > 0">
|
||||
<span>停车点外调度费:{{ formatFee(scope.row.manageFee) }}</span><br />
|
||||
</template>
|
||||
<template v-if="scope.row.manageFee > 0">
|
||||
<template v-if="scope.row.payFee > 0">
|
||||
<span>订单金额:{{ formatFee(scope.row.payFee) }}</span><br />
|
||||
</template>
|
||||
<template v-if="scope.row.totalRefundFee > 0">
|
||||
|
@ -225,7 +244,7 @@
|
|||
<el-table-column label="备注" align="center" prop="mark" width="140"/>
|
||||
<!-- <el-table-column label="交易金额" align="center" prop="amount" :formatter="formatAmount"/>-->
|
||||
<el-table-column label="手续费" align="center" prop="handlingCharge" :formatter="formatAmount"/>
|
||||
<el-table-column label="成本" align="center" prop="handlingCharge" :formatter="formatAmount"/>
|
||||
<el-table-column label="成本" align="center" prop="cost" :formatter="formatAmount"/>
|
||||
<el-table-column label="服务费" align="center" prop="platformServiceFee" :formatter="formatAmount"/>
|
||||
<!-- <el-table-column label="到账金额" align="center" prop="platformServiceFee" :formatter="formatAmount"/>-->
|
||||
<!-- <el-table-column label="订单时长" align="center" prop="duration" :formatter="formatDuration"/>-->
|
||||
|
@ -535,6 +554,8 @@
|
|||
} from '@/api/system/order'
|
||||
import TrajectoryMap from '@/components/Map/TrajectoryMap'
|
||||
import { getArea, optionselect as getAreaOptionselect } from '@/api/system/area'
|
||||
import { getFee } from '@/api/system/fee'
|
||||
import { listDept2 } from '@/api/system/dept'
|
||||
|
||||
export default {
|
||||
name: "Order",
|
||||
|
@ -556,6 +577,7 @@ export default {
|
|||
// 通过key重新渲染area-map组件
|
||||
key: 0,
|
||||
areaOptions: [],
|
||||
deptOptions: [],
|
||||
// 总条数
|
||||
total: 0,
|
||||
view: false,
|
||||
|
@ -656,6 +678,7 @@ export default {
|
|||
this.reset2();
|
||||
this.getList();
|
||||
this.getAreaList();
|
||||
this.getDeptList();
|
||||
},
|
||||
watch: {
|
||||
open(val) {
|
||||
|
@ -669,6 +692,11 @@ export default {
|
|||
}
|
||||
},
|
||||
methods: {
|
||||
getDeptList() {
|
||||
listDept2({ status: "0", pageNum: 1, pageSize: 999 }).then((response) => {
|
||||
this.deptOptions = response.rows;
|
||||
});
|
||||
},
|
||||
formatAmount(row, column) {
|
||||
const key = column.property;
|
||||
return parseFloat(row[key] || 0).toFixed(2);
|
||||
|
@ -846,6 +874,7 @@ export default {
|
|||
},
|
||||
//金额格式化,如果金额是null,则返回0.00,如果本来就是两位小数则直接返回,否则保留两位小数
|
||||
formatFee(fee){
|
||||
console.log("formatFee:"+fee)
|
||||
if (!fee) return '0.00元';
|
||||
const feeStr = fee.toString();
|
||||
const twoDecimalPattern = /^\d+(\.\d{2})?$/;
|
||||
|
@ -855,6 +884,42 @@ export default {
|
|||
const formattedFee = parseFloat(fee).toFixed(2);
|
||||
return `${formattedFee}元`;
|
||||
},
|
||||
|
||||
calculateEstimateFee(row) {
|
||||
const ridingRule = JSON.parse( row.ridingRuleJson);
|
||||
console.log("ridingRule",ridingRule)
|
||||
const startingPrice = parseFloat(ridingRule.startingPrice);
|
||||
const startingTime = parseInt(ridingRule.startingTime);
|
||||
const timeoutPrice = parseFloat(ridingRule.timeoutPrice);
|
||||
const timeoutTime = parseInt(ridingRule.timeoutTime);
|
||||
|
||||
console.log("ridingRule:" + JSON.stringify(ridingRule));
|
||||
|
||||
const createTime = new Date(row.createTime);
|
||||
const currentTime = new Date();
|
||||
const durationMinutes = Math.floor((currentTime - createTime) / (1000 * 60)); // 骑行时长(分钟)
|
||||
|
||||
// 计算预估费用
|
||||
let estimatedFee = startingPrice;
|
||||
if (durationMinutes > startingTime) {
|
||||
const extraTime = durationMinutes - startingTime;
|
||||
const extraCharges = Math.ceil(extraTime / timeoutTime) * timeoutPrice;
|
||||
estimatedFee += extraCharges;
|
||||
}
|
||||
console.log("durationMinutes:" + durationMinutes);
|
||||
console.log("estimatedFee:" + estimatedFee);
|
||||
// 格式化费用
|
||||
if (!estimatedFee) return '0.00元';
|
||||
const feeStr = estimatedFee.toString();
|
||||
const twoDecimalPattern = /^\d+(\.\d{2})?$/;
|
||||
console.log("feeStr:" + feeStr)
|
||||
if (twoDecimalPattern.test(feeStr)) {
|
||||
return `${feeStr}元`;
|
||||
}
|
||||
const formattedFee = parseFloat(estimatedFee).toFixed(2);
|
||||
console.log("formattedFee:" + formattedFee)
|
||||
return `${formattedFee}元`;
|
||||
},
|
||||
calculateSettlementAmount(row) {
|
||||
// 计算结算金额 = 总费用 - 退款金额
|
||||
const payFee = row.payFee || 0;
|
||||
|
@ -901,10 +966,7 @@ export default {
|
|||
},
|
||||
formatDuration(row) {
|
||||
const createTime = new Date(row.createTime);
|
||||
const endTime = new Date(row.returnTime);
|
||||
if (!row.returnTime) {
|
||||
return "未结束";
|
||||
}
|
||||
const endTime = row.returnTime ? new Date(row.returnTime) : new Date(); // 如果未结束,则使用当前时间
|
||||
const durationMilliseconds = endTime - createTime;
|
||||
// 计算小时、分钟和秒
|
||||
const hours = Math.floor(durationMilliseconds / (1000 * 60 * 60));
|
||||
|
|
|
@ -136,7 +136,7 @@
|
|||
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
|
||||
<el-form-item label="代理商" prop="operator" v-if="userName == 'admin'">
|
||||
<el-select v-model="form.deptId" clearable placeholder="请选择代理商">
|
||||
<el-select v-model="form.deptId" clearable filterable placeholder="请选择代理商">
|
||||
<el-option
|
||||
v-for="item in deptOptions"
|
||||
:key="item.deptId"
|
||||
|
|
Loading…
Reference in New Issue
Block a user