|
@@ -1,221 +1,382 @@
|
|
<template>
|
|
<template>
|
|
<div class="app-container">
|
|
<div class="app-container">
|
|
-
|
|
|
|
- <!--<el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal">
|
|
|
|
- <el-menu-item index="1" @click="backToList">用户退款列表</el-menu-item>
|
|
|
|
- <el-menu-item index="2">用户退款详情</el-menu-item>
|
|
|
|
- </el-menu>-->
|
|
|
|
- <div class="app-header-top" style="width: 100%;float: right;margin-bottom: 10px;">
|
|
|
|
- <div class="app-title">用户退款详情</div>
|
|
|
|
- <el-button type="primary" icon="el-icon-back" style="float: right;" @click="backToList">返回</el-button>
|
|
|
|
|
|
+ <div class="filter-container" style="text-align: right;">
|
|
|
|
+ <el-button v-print="printObj" type="primary">打印</el-button>
|
|
|
|
+ <el-button plain @click="backToList">返回</el-button>
|
|
</div>
|
|
</div>
|
|
-
|
|
|
|
- <el-card v-for="refund in refundList" :key="refund.orderID" class="box-card">
|
|
|
|
- <h1>退款单</h1>
|
|
|
|
- <div class="refund-item">
|
|
|
|
- <el-row :gutter="24" class="box-row">
|
|
|
|
- <el-col :span="6"><b>退款编号:</b> {{ refund.returnedNo }}</el-col>
|
|
|
|
- <el-col :span="6"><b>申请时间:</b> <template v-if="refund.returnTime">{{ refund.returnTime | parseTime('{y}-{m}-{d} {h}:{i}:{s}') }}</template></el-col>
|
|
|
|
- <el-col :span="6"><b>申请金额:</b> ¥{{ refund.refundFee | toThousandFloatFilter }}</el-col>
|
|
|
|
- <el-col :span="6"><b>退款状态:</b>
|
|
|
|
- <el-tag v-if="refund.status*1===1" type="warning" size="small">待审核</el-tag>
|
|
|
|
- <el-tag v-if="refund.status*1===2" type="success" size="small">审核通过</el-tag>
|
|
|
|
- <el-tag v-if="refund.status*1===3" type="danger" size="small">审核不通过</el-tag>
|
|
|
|
- </el-col>
|
|
|
|
- </el-row>
|
|
|
|
- <el-row :gutter="24" class="box-row">
|
|
|
|
- <el-col :span="20"><b>退款方式:</b>
|
|
|
|
- <template v-if="refund.returnedWay*1===4">未支付无退款</template>
|
|
|
|
- <template v-else-if="refund.returnedWay*1===1">
|
|
|
|
- <span v-if="refund.refundBalanceFee*1 !== 0">余额账户:¥{{ refund.refundBalanceFee | toThousandFloatFilter }}</span>
|
|
|
|
- <span v-if="refund.refundOnlineFee*1 !== 0">线上退回:¥{{ refund.refundOnlineFee | toThousandFloatFilter }}</span>
|
|
|
|
- <span v-if="refund.refundOfflineFee*1 !== 0">线下转账:¥{{ refund.refundOfflineFee | toThousandFloatFilter }}</span>
|
|
|
|
- </template>
|
|
|
|
- <template v-else>----</template>
|
|
|
|
- </el-col>
|
|
|
|
- </el-row>
|
|
|
|
- <template v-if="refund.returnedWay*1===1 && refund.refundOfflineFee*1!==0">
|
|
|
|
|
|
+ <div id="printBox" style="margin: 0 auto;">
|
|
|
|
+ <h1 class="app-title">退款单</h1>
|
|
|
|
+ <el-card ref="print" class="box-card" style="margin: 5px auto;">
|
|
|
|
+ <div class="refund-item">
|
|
<el-row :gutter="24" class="box-row">
|
|
<el-row :gutter="24" class="box-row">
|
|
- <el-col v-if="refund.refundFee" :span="12"><b>退款银行:</b>
|
|
|
|
- <template v-if="refund.payType*1===1">建设银行7297</template>
|
|
|
|
- <template v-else-if="refund.payType*1===2">中信银行0897</template>
|
|
|
|
- <template v-else-if="refund.payType*1===3">中信银行7172</template>
|
|
|
|
- <template v-else-if="refund.payType*1===4">广发银行0115</template>
|
|
|
|
- <template v-else-if="refund.payType*1===5">广发银行5461</template>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col v-else :span="12">暂无支付方式</el-col>
|
|
|
|
|
|
+ <el-col :span="7"><b>退款编号:</b> T1678087730239854</el-col>
|
|
|
|
+ <el-col :span="6"><b>申请时间:</b> 2023-03-06 15:28:50</el-col>
|
|
|
|
+ <el-col :span="4"><b>申请金额:</b> 30000.00元</el-col>
|
|
|
|
+ <el-col :span="3"><b>退款状态:</b> 审核通过</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
<el-row :gutter="24" class="box-row">
|
|
<el-row :gutter="24" class="box-row">
|
|
- <el-col :span="6"><b>开户名:</b> {{ refund.bankAccountName ? refund.bankAccountName : '' }}</el-col>
|
|
|
|
- <el-col :span="6"><b>账号:</b> {{ refund.bankAccountNo ? refund.bankAccountNo : '' }}</el-col>
|
|
|
|
- <el-col :span="6"><b>开户行:</b> {{ refund.openBank ? refund.openBank : '' }}</el-col>
|
|
|
|
- <el-col :span="6"><b>账户类型:</b>
|
|
|
|
- <el-tag v-if="refund.bankAccountType*1===1" type="warning" size="small">公账</el-tag>
|
|
|
|
- <el-tag v-if="refund.bankAccountType*1===2" type="danger" size="small">私账</el-tag>
|
|
|
|
- </el-col>
|
|
|
|
|
|
+ <el-col :span="24"><b>退款方式:</b> 线上退回:597.00元</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
- </template>
|
|
|
|
- </div>
|
|
|
|
-
|
|
|
|
- <div class="refund-item">
|
|
|
|
- <template v-if="order">
|
|
|
|
|
|
+ </div>
|
|
|
|
+ </el-card>
|
|
|
|
+ <el-card ref="print" class="box-card" style="margin: 5px auto;">
|
|
|
|
+ <div class="refund-item">
|
|
<el-row :gutter="24" class="box-row">
|
|
<el-row :gutter="24" class="box-row">
|
|
- <el-col :span="6"><b>订单编号(ID):</b> {{ order.orderNo + '(' + order.orderID + ')' }}</el-col>
|
|
|
|
- <el-col :span="6"><b>下单时间:</b> <template v-if="order.orderTime">{{ order.orderTime | parseTime('{y}-{m}-{d} {h}:{i}:{s}') }}</template></el-col>
|
|
|
|
- <el-col :span="6"><b>订单状态:</b>
|
|
|
|
- <template v-if="['11','12','13','21','22','23','31','32','33'].indexOf(order.status)>=0">
|
|
|
|
- <el-tag type="success" size="small">{{ '交易中('+statusObj[order.status]+')' }}</el-tag>
|
|
|
|
- </template>
|
|
|
|
- <template v-else>
|
|
|
|
- <el-tag :type="order.status*1===6?'info':''" size="small">{{ statusObj[order.status] }}</el-tag>
|
|
|
|
- </template>
|
|
|
|
- </el-col>
|
|
|
|
|
|
+ <el-col :span="7"><b>订单编号(ID):</b> {{ repacts.orderNo }}({{ repacts.orderId }})</el-col>
|
|
|
|
+ <el-col :span="6"><b>下单时间:</b> {{ repacts.applyTime }}</el-col>
|
|
|
|
+ <el-col :span="4"><b>订单状态:</b> 交易中</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
<el-row :gutter="24" class="box-row">
|
|
<el-row :gutter="24" class="box-row">
|
|
- <el-col :span="6"><b>订单金额:</b>¥{{ order.payTotalFee | toThousandFloatFilter }}</el-col>
|
|
|
|
- <el-col :span="6"><b>应收总额:</b>¥{{ order.payableAmount | toThousandFloatFilter }}</el-col>
|
|
|
|
- <el-col :span="6"><b>经理折扣:</b>¥{{ order.discountFee | toThousandFloatFilter }}</el-col>
|
|
|
|
- <el-col :span="6"><b>运费:</b>
|
|
|
|
- <template v-if="order.freight*1===0">包邮</template>
|
|
|
|
- <template v-else-if="order.freight*1===-1">到付</template>
|
|
|
|
- <template v-else-if="order.freight*1===-2">仪器到付-产品包邮</template>
|
|
|
|
- <template v-else>¥{{ order.freight | toThousandFloatFilter }}</template>
|
|
|
|
- </el-col>
|
|
|
|
|
|
+ <el-col :span="7"><b>订单金额:</b> {{ repacts.payableAmount }}</el-col>
|
|
|
|
+ <el-col :span="6"><b>应收金额:</b> {{ repacts.payableAmount }}</el-col>
|
|
|
|
+ <el-col :span="4"><b>机构运费:</b> 包邮</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
<el-row :gutter="24" class="box-row">
|
|
<el-row :gutter="24" class="box-row">
|
|
- <el-col :span="6"><b>收款状态:</b>
|
|
|
|
- <el-tag v-if="order.receiptStatus*1===1" type="danger" size="small">待收款</el-tag>
|
|
|
|
- <el-tag v-if="order.receiptStatus*1===2" type="warning" size="small">部分收款</el-tag>
|
|
|
|
- <el-tag v-if="order.receiptStatus*1===3" type="success" size="small">已收款</el-tag>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="6"><b>退款状态:</b>
|
|
|
|
- <el-tag v-if="order.refundType*1===1" type="warning" size="small">部分退款</el-tag>
|
|
|
|
- <el-tag v-else-if="order.refundType*1===2" type="danger" size="small">已退款</el-tag>
|
|
|
|
- <el-tag v-else type="info" size="small">无退款</el-tag>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="6"><b>发货状态:</b>
|
|
|
|
- <el-tag v-if="order.sendOutStatus*1===1" type="danger" size="small">待发货</el-tag>
|
|
|
|
- <el-tag v-if="order.sendOutStatus*1===2" type="warning" size="small">部分发货</el-tag>
|
|
|
|
- <el-tag v-if="order.sendOutStatus*1===3" type="success" size="small">已发货</el-tag>
|
|
|
|
- </el-col>
|
|
|
|
|
|
+ <el-col :span="7"><b>收款状态:</b> {{ repacts.status | statusFilter }}</el-col>
|
|
|
|
+ <el-col :span="6"><b>发货状态:</b> {{ repacts.status | statusFilter }}</el-col>
|
|
|
|
+ <el-col :span="4"><b>付款状态:</b> {{ repacts.status | statusFilter }}</el-col>
|
|
|
|
+ <el-col :span="4"><b>退款状态:</b> {{ repacts.status | statusFilter }}</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
- <el-row v-if="order.bpOrderUserinfo" :gutter="24" class="box-row">
|
|
|
|
- <el-col :span="6"><b>买家:</b> {{ order.bpOrderUserinfo.name }}</el-col>
|
|
|
|
- <el-col :span="6"><b>收货人:</b> {{ order.bpOrderUserinfo.shouHuoRen }}</el-col>
|
|
|
|
- <el-col :span="6"><b>手机:</b> {{ order.bpOrderUserinfo.mobile }}</el-col>
|
|
|
|
- <el-col :span="6"><b>地址:</b> {{ order.bpOrderUserinfo.province +' '+ order.bpOrderUserinfo.city +' '+ order.bpOrderUserinfo.town +' '+ order.bpOrderUserinfo.address }}</el-col>
|
|
|
|
|
|
+ <el-row :gutter="24" class="box-row">
|
|
|
|
+ <el-col :span="7"><b>机构名称:</b> {{ repacts.clubName }}</el-col>
|
|
|
|
+ <el-col :span="6"><b>收货人:</b> 黄志国(15817887257)</el-col>
|
|
|
|
+ <el-col :span="11"><b>地址:</b> 广东省深圳市龙华区大浪街道上早新村</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
- </template>
|
|
|
|
- </div>
|
|
|
|
- <div class="refund-item">
|
|
|
|
- <div v-for="shopOrder in refund.shopOrderReturnedList" :key="shopOrder.shopOrderID" class="order-item">
|
|
|
|
- <el-row :gutter="22" class="box-row">
|
|
|
|
- <el-col :span="9"><b>子订单号(ID):</b> {{ shopOrder.shopOrderNo + '(' + shopOrder.shopOrderID + ')' }}</el-col>
|
|
|
|
- <el-col :span="5"><b>子订单金额:</b> ¥{{ shopOrder.productAmount | toThousandFloatFilter }}</el-col>
|
|
|
|
- <el-col :span="5"><b>发货状态:</b>
|
|
|
|
- <el-tag v-if="shopOrder.sendOutStatus*1===1" type="danger" size="small">待发货</el-tag>
|
|
|
|
- <el-tag v-if="shopOrder.sendOutStatus*1===2" type="warning" size="small">部分发货</el-tag>
|
|
|
|
- <el-tag v-if="shopOrder.sendOutStatus*1===3" type="success" size="small">已发货</el-tag>
|
|
|
|
- </el-col>
|
|
|
|
|
|
+ <el-table :data="repacts.shopOrderIdList" border fit highlight-current-row default-expand-all :header-cell-style="{background:'#e9f3f7',color:'#606266'}">
|
|
|
|
+ <el-table-column label="商品信息" type="expand" width="110">
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <el-table :data="scope.row.products" border fit highlight-current-row :header-cell-style="{background:'#f9f9f9',color:'#606266'}">
|
|
|
|
+ <el-table-column label="商品图片" align="center" prop="image" width="100">
|
|
|
|
+ <template slot-scope="{row}">
|
|
|
|
+ <el-popover
|
|
|
|
+ placement="top-start"
|
|
|
|
+ title=""
|
|
|
|
+ width="120"
|
|
|
|
+ trigger="hover"
|
|
|
|
+ >
|
|
|
|
+ <img :src="row.image" alt="" style="width:100px;height:100px;">
|
|
|
|
+ <img slot="reference" :src="row.image" alt="" style="width:50px;height:50px;">
|
|
|
|
+ </el-popover>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column label="商品名" align="center" prop="productName" />
|
|
|
|
+ <el-table-column label="规格" align="center" prop="unit" />
|
|
|
|
+ <el-table-column label="购买数量" align="center" prop="num" width="100" />
|
|
|
|
+ <el-table-column label="退货" align="center" prop="returnNum" width="100" />
|
|
|
|
+ <el-table-column label="单价" align="center" prop="price" />
|
|
|
|
+ <el-table-column label="总额" align="center" prop="totalPrice" />
|
|
|
|
+ <el-table-column label="已发货" align="center" prop="num" width="100" />
|
|
|
|
+ <el-table-column label="已退货" align="center" prop="num" width="100" />
|
|
|
|
+ <el-table-column label="本次退货" align="center" prop="num" width="100" />
|
|
|
|
+ <el-table-column label="待发货" align="center" prop="num" width="100" />
|
|
|
|
+ <el-table-column label="已取消" align="center" prop="num" width="100" />
|
|
|
|
+ <el-table-column label="本次取消" align="center" prop="num" width="100" />
|
|
|
|
+ </el-table>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column label="子订单编号(ID)" align="center" prop="shopOrderNos">
|
|
|
|
+ <template slot-scope="scope">
|
|
|
|
+ <span>{{ scope.row.shopOrderNos }}({{ scope.row.shopOrderIds }})</span>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column label="子订单金额" align="center" prop="payShopTotals" />
|
|
|
|
+ <el-table-column label="收款状态" prop="status" align="center">
|
|
|
|
+ <template slot-scope="{ row }">
|
|
|
|
+ <span
|
|
|
|
+ :class="{
|
|
|
|
+ 'el-span-warning': row.status == 0,
|
|
|
|
+ 'el-span-success': row.status == 1,
|
|
|
|
+ 'el-span-danger': row.status == 2
|
|
|
|
+ }"
|
|
|
|
+ >
|
|
|
|
+ 待收款
|
|
|
|
+ </span>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column label="发货状态" prop="status" align="center">
|
|
|
|
+ <template slot-scope="{ row }">
|
|
|
|
+ <span
|
|
|
|
+ :class="{
|
|
|
|
+ 'el-span-warning': row.status == 0,
|
|
|
|
+ 'el-span-success': row.status == 1,
|
|
|
|
+ 'el-span-danger': row.status == 2
|
|
|
|
+ }"
|
|
|
|
+ >
|
|
|
|
+ 待发货
|
|
|
|
+ </span>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column label="付款状态" prop="status" align="center">
|
|
|
|
+ <template slot-scope="{ row }">
|
|
|
|
+ <span
|
|
|
|
+ :class="{
|
|
|
|
+ 'el-span-warning': row.status == 0,
|
|
|
|
+ 'el-span-success': row.status == 1,
|
|
|
|
+ 'el-span-danger': row.status == 2
|
|
|
|
+ }"
|
|
|
|
+ >
|
|
|
|
+ 待付款
|
|
|
|
+ </span>
|
|
|
|
+ </template>
|
|
|
|
+ </el-table-column>
|
|
|
|
+ <el-table-column label="供应商" align="center" prop="shopName" />
|
|
|
|
+ </el-table>
|
|
|
|
+ </div>
|
|
|
|
+ </el-card>
|
|
|
|
+ <el-card ref="print" class="box-card" style="margin: 5px auto;">
|
|
|
|
+ <div class="refund-item">
|
|
|
|
+ <h1 class="refund-item-title">审核信息</h1>
|
|
|
|
+ <el-row :gutter="24" class="box-row">
|
|
|
|
+ <el-col :span="5"><b>审核人:</b> 卢海珠</el-col>
|
|
|
|
+ <el-col :span="6"><b>审核时间:</b> 2023-03-06 15:28:50</el-col>
|
|
|
|
+ <el-col :span="11"><b>审核备注:</b> 没有货了</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
- <el-row :gutter="22" class="box-row">
|
|
|
|
- <el-col :span="22"><b>供应商:</b> {{ shopOrder.shopName }}</el-col>
|
|
|
|
|
|
+ </div>
|
|
|
|
+ </el-card>
|
|
|
|
+ <el-card ref="print" class="box-card" style="margin: 5px auto;">
|
|
|
|
+ <div class="refund-item">
|
|
|
|
+ <h1 class="refund-item-title">申请信息</h1>
|
|
|
|
+ <el-row :gutter="24" class="box-row">
|
|
|
|
+ <el-col :span="5"><b>申请人:</b> 卢海珠</el-col>
|
|
|
|
+ <el-col :span="6"><b>申请时间:</b> 2023-03-06 15:28:50</el-col>
|
|
|
|
+ <el-col :span="11"><b>退款备注:</b> 有部分没有货,客户需要重新下单</el-col>
|
|
</el-row>
|
|
</el-row>
|
|
- <el-row v-for="op in shopOrder.cmReturnedPurchaseProductList" :key="op.orderProductID" :gutter="22" class="product-row">
|
|
|
|
- <el-col :span="1.5">
|
|
|
|
- <img :src="op.mainImage" width="60" alt="">
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="7">{{ op.name }}</el-col>
|
|
|
|
- <el-col :span="5">
|
|
|
|
- <div class="op-item"><b>单价:</b> ¥{{ op.price | toThousandFloatFilter }}</div>
|
|
|
|
- <div class="op-item"><b>已发货:</b> {{ op.num - op.notOutStore }}</div>
|
|
|
|
- <div class="op-item"><b>待发货:</b> {{ op.notOutStore - op.cancelProductNum }}</div>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="5">
|
|
|
|
- <div class="op-item"><b>数量:</b> {{ op.num }}</div>
|
|
|
|
- <div class="op-item"><b>已退货:</b> {{ op.returnedPurchaseProductNum }}</div>
|
|
|
|
- <div class="op-item"><b>已取消:</b> {{ op.cancelProductNum }}</div>
|
|
|
|
- </el-col>
|
|
|
|
- <el-col :span="5">
|
|
|
|
- <div class="op-item"><b>总额:</b> ¥{{ op.totalFee | toThousandFloatFilter }}</div>
|
|
|
|
- <div class="op-item"><b>本次退货:</b> {{ op.actualReturnedNum ? op.actualReturnedNum : 0 }}</div>
|
|
|
|
- <div class="op-item"><b>本次取消:</b> {{ op.actualCancelNum ? op.actualCancelNum : 0 }}</div>
|
|
|
|
- </el-col>
|
|
|
|
|
|
+ </div>
|
|
|
|
+ </el-card>
|
|
|
|
+ <el-card ref="print" class="box-card" style="margin: 5px 0 0 0;">
|
|
|
|
+ <div class="refund-item">
|
|
|
|
+ <el-row :gutter="24" class="box-row">
|
|
|
|
+ <el-col :span="14"><b>申请退款金额:</b> 30000.00元</el-col>
|
|
|
|
+ <el-col :span="5"><b>财务签名:</b> </el-col>
|
|
|
|
+ <el-col :span="5"><b>总经理签名:</b> </el-col>
|
|
</el-row>
|
|
</el-row>
|
|
</div>
|
|
</div>
|
|
- </div>
|
|
|
|
-
|
|
|
|
- <div class="refund-item">
|
|
|
|
- <h3>审核信息</h3>
|
|
|
|
- <el-row :gutter="24" class="box-row">
|
|
|
|
- <el-col :span="6"><b>审核人:</b> {{ refund.reviewUserName }}</el-col>
|
|
|
|
- <el-col :span="6"><b>审核时间:</b> {{ refund.confirmReturnTime }}</el-col>
|
|
|
|
- </el-row>
|
|
|
|
- <el-row>
|
|
|
|
- <el-col :span="24"><b>审核备注:</b> {{ refund.reviewRemarks ? refund.reviewRemarks : '无' }}</el-col>
|
|
|
|
- </el-row>
|
|
|
|
- <el-row v-if="refund.reviewImage1 || refund.reviewImage2 || refund.reviewImage3 || refund.reviewImage4 || refund.reviewImage5 " :gutter="24" class="box-row">
|
|
|
|
- <el-col :span="2"><b>审核凭证:</b></el-col>
|
|
|
|
- </el-row>
|
|
|
|
- <el-row>
|
|
|
|
- <el-col :span="22">
|
|
|
|
- <img v-if="refund.reviewImage1" :src="refund.reviewImage1" width="65" alt="">
|
|
|
|
- <img v-if="refund.reviewImage2" :src="refund.reviewImage2" width="65" alt="">
|
|
|
|
- <img v-if="refund.reviewImage3" :src="refund.reviewImage3" width="65" alt="">
|
|
|
|
- <img v-if="refund.reviewImage4" :src="refund.reviewImage4" width="65" alt="">
|
|
|
|
- <img v-if="refund.reviewImage5" :src="refund.reviewImage5" width="65" alt="">
|
|
|
|
- </el-col>
|
|
|
|
-
|
|
|
|
- </el-row>
|
|
|
|
- </div>
|
|
|
|
- <div class="refund-item">
|
|
|
|
- <h3>申请信息</h3>
|
|
|
|
- <el-row :gutter="24" class="box-row">
|
|
|
|
- <el-col :span="6"><b>申请人:</b> {{ refund.applicationUserName }}</el-col>
|
|
|
|
- <el-col :span="6"><b>申请时间:</b> <template v-if="refund.returnTime">{{ refund.returnTime | parseTime('{y}-{m}-{d} {h}:{i}:{s}') }}</template></el-col>
|
|
|
|
- </el-row>
|
|
|
|
- <el-row>
|
|
|
|
- <el-col :span="24"><b>退款备注:</b> {{ refund.remarks ? refund.remarks : '无' }}</el-col>
|
|
|
|
- </el-row>
|
|
|
|
- <el-row v-if="refund.image1 || refund.image2 || refund.image3 || refund.image4 || refund.image5 " :gutter="24" class="box-row">
|
|
|
|
- <el-col :span="2"><b>申请凭证:</b></el-col>
|
|
|
|
- </el-row>
|
|
|
|
- <el-row>
|
|
|
|
- <el-col :span="22">
|
|
|
|
- <img v-if="refund.image1" :src="refund.image1" width="65" alt="">
|
|
|
|
- <img v-if="refund.image2" :src="refund.image2" width="65" alt="">
|
|
|
|
- <img v-if="refund.image3" :src="refund.image3" width="65" alt="">
|
|
|
|
- <img v-if="refund.image4" :src="refund.image4" width="65" alt="">
|
|
|
|
- <img v-if="refund.image5" :src="refund.image5" width="65" alt="">
|
|
|
|
- </el-col>
|
|
|
|
- </el-row>
|
|
|
|
- </div>
|
|
|
|
- <div class="refund-item">
|
|
|
|
- <el-row :gutter="24" class="box-row">
|
|
|
|
- <el-col :span="6"><b>申请退款金额:</b> ¥{{ refund.refundFee | toThousandFloatFilter }}</el-col>
|
|
|
|
- <el-col :span="6"><b>财务签名:</b></el-col>
|
|
|
|
- <el-col :span="6"><b>总经理签名:</b></el-col>
|
|
|
|
- </el-row>
|
|
|
|
- </div>
|
|
|
|
- </el-card>
|
|
|
|
-
|
|
|
|
- <template>
|
|
|
|
- <el-backtop style="right: 40px; bottom: 40px;">
|
|
|
|
- <i class="el-icon-upload2" />
|
|
|
|
- </el-backtop>
|
|
|
|
- </template>
|
|
|
|
|
|
+ </el-card>
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
-import { getRefundDetail } from '@/api/order'
|
|
|
|
|
|
+import { getDetail, getRemarks } from '@/api/order'
|
|
export default {
|
|
export default {
|
|
|
|
+ name: 'RefundRecord',
|
|
|
|
+ filters: {
|
|
|
|
+ statusFilter(status) {
|
|
|
|
+ const map = {
|
|
|
|
+ 0: '待付款',
|
|
|
|
+ 1: '已付款',
|
|
|
|
+ 2: '审核不通过'
|
|
|
|
+ }
|
|
|
|
+ return map[status]
|
|
|
|
+ }
|
|
|
|
+ },
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
|
|
+ printObj: {
|
|
|
|
+ id: 'printBox', // 局部打印的<div> Id
|
|
|
|
+ popTitle: '', // 打印配置页上方标题
|
|
|
|
+ extraHead: '', // 最上方的头部文字,附加在head标签上的额外标签,使用逗号分隔
|
|
|
|
+ preview: '', // 是否启动预览模式,默认是false(开启预览模式,可以先预览后打印)
|
|
|
|
+ previewTitle: '', // 打印预览的标题(开启预览模式后出现),
|
|
|
|
+ previewPrintBtnLabel: '', // 打印预览的标题的下方按钮文本,点击可进入打印(开启预览模式后出现)
|
|
|
|
+ zIndex: '', // 预览的窗口的z-index,默认是 20002(此值要高一些,这涉及到预览模式是否显示在最上面)
|
|
|
|
+ previewBeforeOpenCallback() {}, // 预览窗口打开之前的callback(开启预览模式调用)
|
|
|
|
+ previewOpenCallback() {}, // 预览窗口打开之后的callback(开启预览模式调用)
|
|
|
|
+ beforeEntryIframe() {
|
|
|
|
+ const cells = document.querySelectorAll('.cell')
|
|
|
|
+ const tableNode = document.querySelectorAll('.el-table__header,.el-table__body')
|
|
|
|
+ // el-table 打印不全的问题
|
|
|
|
+ for (let j = 0; j < tableNode.length; j++) {
|
|
|
|
+ const tableItem = tableNode[j]
|
|
|
|
+ tableItem.style.width = '100%'
|
|
|
|
+ const child = tableItem.childNodes
|
|
|
|
+ for (let i = 0; i < child.length; i++) {
|
|
|
|
+ const element = child[i]
|
|
|
|
+ if (element.localName === 'colgroup') {
|
|
|
|
+ element.innerHTML = ''
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ // el-table 格子里面打印超过格子的问题
|
|
|
|
+ for (let i = 0; i < cells.length; i++) {
|
|
|
|
+ const cell = cells[i]
|
|
|
|
+ cell.style.width = '100%'
|
|
|
|
+ cell.removeAttribute('style')
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ openCallback() {
|
|
|
|
+
|
|
|
|
+ }, // 调用打印之后的回调事件
|
|
|
|
+ closeCallback() {}, // 关闭打印的回调事件(无法确定点击的是确认还是取消)
|
|
|
|
+ url: '',
|
|
|
|
+ standard: '',
|
|
|
|
+ extraCss: '',
|
|
|
|
+ loading: false
|
|
|
|
+ },
|
|
|
|
+ payRepacts: {
|
|
|
|
+ name: '卢海珠',
|
|
|
|
+ account: '6214 8328 2826 4957 ',
|
|
|
|
+ accountBank: '中国建设银行',
|
|
|
|
+ accountType: '公账'
|
|
|
|
+ },
|
|
|
|
+ repacts: {
|
|
|
|
+ id: 7580,
|
|
|
|
+ name: '卢海珠',
|
|
|
|
+ account: '6214 8328 2826 4957 ',
|
|
|
|
+ accountBank: '中国建设银行',
|
|
|
|
+ accountType: '公账',
|
|
|
|
+ type: '子订单付款',
|
|
|
|
+ shopName: '采美信息技术有限公司',
|
|
|
|
+ payableAmount: '20000.00',
|
|
|
|
+ shopOrderNo: 'P1682650952091471001',
|
|
|
|
+ shopOrderId: '19747',
|
|
|
|
+ orderNo: 'P16265095220221471',
|
|
|
|
+ orderId: '18179',
|
|
|
|
+ clubName: '广州白云区松洲蒂亚美容院',
|
|
|
|
+ applyMan: '路海珠',
|
|
|
|
+ applyTime: '2020-01-01:20:30:56',
|
|
|
|
+ verifyMan: '李昕',
|
|
|
|
+ verifyTime: '2020-01-01:20:30:56',
|
|
|
|
+ status: 0,
|
|
|
|
+ totalProduct: '3000.00',
|
|
|
|
+ payShopTotal: '3000.00',
|
|
|
|
+ childOrderId: ['P16265095220221471', 'P16265095220221471', 'P16265095220221471'],
|
|
|
|
+ shopOrderIdList: [
|
|
|
|
+ {
|
|
|
|
+ shopName: '采美信息技术有限公司',
|
|
|
|
+ shopOrderNos: 'P1682650952091471001',
|
|
|
|
+ shopOrderIds: '19747',
|
|
|
|
+ orderNos: 'P16265095220221471',
|
|
|
|
+ orderIds: '18179',
|
|
|
|
+ clubNames: '广州白云区松洲蒂亚美容院',
|
|
|
|
+ applyMans: '路海珠',
|
|
|
|
+ applyTimes: '2020-01-01:20:30:56',
|
|
|
|
+ verifyMans: '李昕',
|
|
|
|
+ verifyTimes: '2020-01-01:20:30:56',
|
|
|
|
+ statuss: 0,
|
|
|
|
+ totalProducts: '3000.00',
|
|
|
|
+ payShopTotals: '3000.00',
|
|
|
|
+ products: [
|
|
|
|
+ {
|
|
|
|
+ image: 'https://img.caimei365.com/group1/M00/00/1E/rB-lF2JgwmuAfQQrAAE3BA2cBSY028.jpg',
|
|
|
|
+ productName: '阶雪山之恋保滋润面霜吖',
|
|
|
|
+ unit: '50ml',
|
|
|
|
+ num: 3,
|
|
|
|
+ returnNum: 0,
|
|
|
|
+ price: '2000.00',
|
|
|
|
+ totalPrice: '6000.00',
|
|
|
|
+ costPrice: '1000.00',
|
|
|
|
+ totalCostPrice: '3000.00'
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ image: 'https://img.caimei365.com/group1/M00/00/1E/rB-lF2JgwmuAfQQrAAE3BA2cBSY028.jpg',
|
|
|
|
+ productName: '阶雪山之恋保滋润面霜吖',
|
|
|
|
+ unit: '50ml',
|
|
|
|
+ num: 3,
|
|
|
|
+ returnNum: 0,
|
|
|
|
+ price: '2000.00',
|
|
|
|
+ totalPrice: '6000.00',
|
|
|
|
+ costPrice: '1000.00',
|
|
|
|
+ totalCostPrice: '3000.00'
|
|
|
|
+ }
|
|
|
|
+ ]
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ shopName: '采美信息技术有限公司',
|
|
|
|
+ shopOrderNos: 'P1682650952091471001',
|
|
|
|
+ shopOrderIds: '19747',
|
|
|
|
+ orderNos: 'P16265095220221471',
|
|
|
|
+ orderIds: '18179',
|
|
|
|
+ clubNames: '广州白云区松洲蒂亚美容院',
|
|
|
|
+ applyMans: '路海珠',
|
|
|
|
+ applyTimes: '2020-01-01:20:30:56',
|
|
|
|
+ verifyMans: '李昕',
|
|
|
|
+ verifyTimes: '2020-01-01:20:30:56',
|
|
|
|
+ statuss: 0,
|
|
|
|
+ totalProducts: '3000.00',
|
|
|
|
+ payShopTotals: '3000.00',
|
|
|
|
+ products: [
|
|
|
|
+ {
|
|
|
|
+ image: 'https://img.caimei365.com/group1/M00/00/1E/rB-lF2JgwmuAfQQrAAE3BA2cBSY028.jpg',
|
|
|
|
+ productName: '阶雪山之恋保滋润面霜吖',
|
|
|
|
+ unit: '50ml',
|
|
|
|
+ num: 3,
|
|
|
|
+ returnNum: 0,
|
|
|
|
+ price: '2000.00',
|
|
|
|
+ totalPrice: '6000.00',
|
|
|
|
+ costPrice: '1000.00',
|
|
|
|
+ totalCostPrice: '3000.00'
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ image: 'https://img.caimei365.com/group1/M00/00/1E/rB-lF2JgwmuAfQQrAAE3BA2cBSY028.jpg',
|
|
|
|
+ productName: '阶雪山之恋保滋润面霜吖',
|
|
|
|
+ unit: '50ml',
|
|
|
|
+ num: 3,
|
|
|
|
+ returnNum: 0,
|
|
|
|
+ price: '2000.00',
|
|
|
|
+ totalPrice: '6000.00',
|
|
|
|
+ costPrice: '1000.00',
|
|
|
|
+ totalCostPrice: '3000.00'
|
|
|
|
+ }
|
|
|
|
+ ]
|
|
|
|
+ }
|
|
|
|
+ ]
|
|
|
|
+ },
|
|
|
|
+ products: [
|
|
|
|
+ {
|
|
|
|
+ productName: '阶雪山之恋保滋润面霜吖',
|
|
|
|
+ unit: '50ml',
|
|
|
|
+ num: 3,
|
|
|
|
+ returnNum: 0,
|
|
|
|
+ price: '2000.00',
|
|
|
|
+ totalPrice: '6000.00',
|
|
|
|
+ costPrice: '1000.00',
|
|
|
|
+ totalCostPrice: '3000.00',
|
|
|
|
+ verifyTimes: '2020-01-01:20:30:56'
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ productName: '阶雪山之恋保滋润面霜吖',
|
|
|
|
+ unit: '50ml',
|
|
|
|
+ num: 3,
|
|
|
|
+ returnNum: 0,
|
|
|
|
+ price: '2000.00',
|
|
|
|
+ totalPrice: '6000.00',
|
|
|
|
+ costPrice: '1000.00',
|
|
|
|
+ totalCostPrice: '3000.00',
|
|
|
|
+ verifyTimes: '2020-01-01:20:30:56'
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ productName: '阶雪山之恋保滋润面霜吖',
|
|
|
|
+ unit: '50ml',
|
|
|
|
+ num: 3,
|
|
|
|
+ returnNum: 0,
|
|
|
|
+ price: '2000.00',
|
|
|
|
+ totalPrice: '6000.00',
|
|
|
|
+ costPrice: '1000.00',
|
|
|
|
+ totalCostPrice: '3000.00',
|
|
|
|
+ verifyTimes: '2020-01-01:20:30:56'
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ productName: '阶雪山之恋保滋润面霜吖',
|
|
|
|
+ unit: '50ml',
|
|
|
|
+ num: 3,
|
|
|
|
+ returnNum: 0,
|
|
|
|
+ price: '2000.00',
|
|
|
|
+ totalPrice: '6000.00',
|
|
|
|
+ costPrice: '1000.00',
|
|
|
|
+ totalCostPrice: '3000.00',
|
|
|
|
+ verifyTimes: '2020-01-01:20:30:56'
|
|
|
|
+ }
|
|
|
|
+ ],
|
|
activeIndex: '2',
|
|
activeIndex: '2',
|
|
- bpClauses: [],
|
|
|
|
order: null,
|
|
order: null,
|
|
- refundList: [],
|
|
|
|
|
|
+ receiptAmount: 0,
|
|
|
|
+ returnValue: 0,
|
|
|
|
+ returnedPurchaseFee: 0,
|
|
|
|
+ bpClauses: null,
|
|
|
|
+ dialogRemarkList: [],
|
|
|
|
+ dialogRemarksVisible: false,
|
|
|
|
+ dialogRemarksOrderId: 0,
|
|
statusObj: {
|
|
statusObj: {
|
|
'0': '待确认',
|
|
'0': '待确认',
|
|
'4': '交易完成',
|
|
'4': '交易完成',
|
|
@@ -236,32 +397,38 @@ export default {
|
|
},
|
|
},
|
|
computed: {
|
|
computed: {
|
|
orderID: function() {
|
|
orderID: function() {
|
|
- return this.$route.query.orderID
|
|
|
|
- },
|
|
|
|
- refundId: function() {
|
|
|
|
- return this.$route.params.id
|
|
|
|
|
|
+ return this.$route.query.orderID * 1
|
|
}
|
|
}
|
|
},
|
|
},
|
|
created() {
|
|
created() {
|
|
- this.fetchData()
|
|
|
|
|
|
+ // this.fetchData()
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
fetchData() {
|
|
fetchData() {
|
|
this.listLoading = true
|
|
this.listLoading = true
|
|
- getRefundDetail({ id: this.refundId, orderID: this.orderID }).then(response => {
|
|
|
|
|
|
+ getDetail({ id: this.orderID }).then(response => {
|
|
this.order = response.data.order
|
|
this.order = response.data.order
|
|
this.bpClauses = response.data.bpClauses
|
|
this.bpClauses = response.data.bpClauses
|
|
- this.refundList = response.data.cmReturnedPurchaseList
|
|
|
|
|
|
+ this.receiptAmount = response.data.receiptAmount
|
|
|
|
+ this.returnValue = response.data.returnValue
|
|
|
|
+ this.returnedPurchaseFee = response.data.returnedPurchaseFee
|
|
this.listLoading = false
|
|
this.listLoading = false
|
|
}).catch(() => {
|
|
}).catch(() => {
|
|
this.listLoading = false
|
|
this.listLoading = false
|
|
})
|
|
})
|
|
},
|
|
},
|
|
|
|
+ RemarksOrder: function(id) {
|
|
|
|
+ getRemarks({ orderID: id }).then(response => {
|
|
|
|
+ this.dialogRemarkList = response.data
|
|
|
|
+ })
|
|
|
|
+ this.dialogRemarksOrderId = id
|
|
|
|
+ this.dialogRemarksVisible = true
|
|
|
|
+ },
|
|
backToList() {
|
|
backToList() {
|
|
this.$store.dispatch('tagsView/delView', this.$route).then(() => {
|
|
this.$store.dispatch('tagsView/delView', this.$route).then(() => {
|
|
this.$nextTick(() => {
|
|
this.$nextTick(() => {
|
|
this.$router.replace({
|
|
this.$router.replace({
|
|
- path: '/order/refund'
|
|
|
|
|
|
+ path: '/finance/list'
|
|
})
|
|
})
|
|
})
|
|
})
|
|
})
|
|
})
|
|
@@ -272,21 +439,12 @@ export default {
|
|
|
|
|
|
<style scoped>
|
|
<style scoped>
|
|
.app-title{
|
|
.app-title{
|
|
- float: left;
|
|
|
|
- line-height: 36px;
|
|
|
|
- font-size: 18px;
|
|
|
|
|
|
+ line-height: 32px;
|
|
|
|
+ font-size: 24px;
|
|
font-weight: bold;
|
|
font-weight: bold;
|
|
- color: #999999;
|
|
|
|
- }
|
|
|
|
- h1{
|
|
|
|
color: #409EFF;
|
|
color: #409EFF;
|
|
- font-size: 24px;
|
|
|
|
text-align: center;
|
|
text-align: center;
|
|
- }
|
|
|
|
- h3{
|
|
|
|
- color: #409EFF;
|
|
|
|
- font-size: 16px;
|
|
|
|
- margin: 0;
|
|
|
|
|
|
+ margin: 10px 0;
|
|
}
|
|
}
|
|
.box-card{
|
|
.box-card{
|
|
margin-top: 20px;
|
|
margin-top: 20px;
|
|
@@ -295,15 +453,22 @@ export default {
|
|
.box-row{
|
|
.box-row{
|
|
padding: 10px 0;
|
|
padding: 10px 0;
|
|
}
|
|
}
|
|
|
|
+ .box-row .dropdown{
|
|
|
|
+ margin-top: -10px;
|
|
|
|
+ }
|
|
.refund-item{
|
|
.refund-item{
|
|
- border-bottom:1px dashed #E4E7ED;
|
|
|
|
- margin-bottom: 20px;
|
|
|
|
|
|
+ padding: 5px 0;
|
|
|
|
+ }
|
|
|
|
+ .refund-item-title{
|
|
|
|
+ line-height: 24px;
|
|
|
|
+ font-size: 14px;
|
|
|
|
+ color: #409EFF;
|
|
|
|
+ margin: 0;
|
|
}
|
|
}
|
|
.order-item{
|
|
.order-item{
|
|
- border-bottom: 1px solid #DCDFE6;
|
|
|
|
- background:#F2F6FC;
|
|
|
|
- margin-top: 20px;
|
|
|
|
- padding: 5px 15px 0;
|
|
|
|
|
|
+ background:#f7f7f7;
|
|
|
|
+ margin-bottom: 20px;
|
|
|
|
+ padding: 10px 15px;
|
|
border-radius: 5px;
|
|
border-radius: 5px;
|
|
}
|
|
}
|
|
.product-row{
|
|
.product-row{
|
|
@@ -314,5 +479,20 @@ export default {
|
|
.op-item{
|
|
.op-item{
|
|
padding: 5px 0;
|
|
padding: 5px 0;
|
|
}
|
|
}
|
|
|
|
+ .el-span-warning{
|
|
|
|
+ color: #E6A23C;
|
|
|
|
+ }
|
|
|
|
+ .el-span-success{
|
|
|
|
+ color: #67C23A;
|
|
|
|
+ }
|
|
|
|
+ .el-span-danger{
|
|
|
|
+ color: #F56C6C;
|
|
|
|
+ }
|
|
|
|
+ /deep/ .el-table__expanded-cell[class*=cell]{
|
|
|
|
+ padding:10px 10px !important;
|
|
|
|
+ }
|
|
|
|
+ /deep/ .el-card__body{
|
|
|
|
+ padding: 5px 20px !important;
|
|
|
|
+ }
|
|
</style>
|
|
</style>
|
|
|
|
|