|
@@ -4,22 +4,18 @@
|
|
|
<div class="table-page-search-wrapper">
|
|
|
<a-form layout="inline" @keyup.enter.native="refresh">
|
|
|
<a-row :gutter="48">
|
|
|
- <a-col :lg="6" :sm="12">
|
|
|
- <a-form-item label="结算时间:">
|
|
|
+ <a-col :lg="8" :sm="12">
|
|
|
+ <a-form-item label="提现时间" :label-col="{ span:4 }" :wrapper-col="{ span:16}">
|
|
|
<a-range-picker
|
|
|
- style="width:100%"
|
|
|
id="PaySettlementRecords-queryOrderDate"
|
|
|
:disabledDate="disabledDate"
|
|
|
+ style="width: 100%;"
|
|
|
v-model="queryOrderDate"
|
|
|
- format="YYYY-MM-DD"
|
|
|
+ :show-time="{ format: 'HH:mm' }"
|
|
|
+ format="YYYY-MM-DD HH:mm"
|
|
|
:placeholder="['开始时间', '结束时间']" />
|
|
|
</a-form-item>
|
|
|
</a-col>
|
|
|
- <a-col :lg="6" :sm="12">
|
|
|
- <a-form-item label="结算单号">
|
|
|
- <a-input class="full-width" v-model="queryParam.settleNo" placeholder="请输入" allowClear id="PaySettlementRecords-queryOrderDate"/>
|
|
|
- </a-form-item>
|
|
|
- </a-col>
|
|
|
<a-col :lg="6" :sm="12">
|
|
|
<a-button type="primary" @click="refresh" id="PaySettlementRecords-refresh">查询</a-button>
|
|
|
<a-button style="margin-left: 8px" @click="resetSearchForm" id="PaySettlementRecords-resetSearchForm">重置</a-button>
|
|
@@ -28,9 +24,9 @@
|
|
|
</a-form>
|
|
|
</div>
|
|
|
<!-- 合计 -->
|
|
|
- <a-alert type="info" showIcon style="margin-bottom:15px">
|
|
|
- <div class="ftext" slot="message">共<span>{{ orderTotal }}</span>单,实收<span>¥{{ amountTotal }}</span>元</div>
|
|
|
- </a-alert>
|
|
|
+ <div class="ftext" >
|
|
|
+ <a-button class="btn-cont" type="primary" @click="openModal" id="PaySettlementRecords-refresh">申请提现</a-button>
|
|
|
+ 可提现余额:<span>{{ amountTotal }}</span>元</div>
|
|
|
<!-- 列表 -->
|
|
|
<div>
|
|
|
<s-table
|
|
@@ -40,16 +36,10 @@
|
|
|
bordered
|
|
|
:columns="columns"
|
|
|
:data="loadData">
|
|
|
- <template slot="action" slot-scope="text, record">
|
|
|
- <!-- <a-icon type="eye" title="查看" :style="{ fontSize: '20px', color: '#e29e14', padding: '0 10px' }" @click="handleDetail(record)" /> -->
|
|
|
- <a-button type="primary" @click="handleDetail(record)" id="PaySettlementRecords-handleDetail">详情</a-button>
|
|
|
- </template>
|
|
|
</s-table>
|
|
|
</div>
|
|
|
- <!-- 应收结算记录详情弹窗 -->
|
|
|
- <pay-settlement-records-details-modal :itemId="itemId" :openModalDetails="openModalDetails" @close="openModalDetails=false"></pay-settlement-records-details-modal>
|
|
|
- <!-- 核销详情弹窗 -->
|
|
|
- <WriteOffDetailsModal :settleId="settleId" :openWriteOffModal="openWriteOffModal" @close="openWriteOffModal=false"></WriteOffDetailsModal>
|
|
|
+ <!-- 申请提现弹窗 -->
|
|
|
+ <cashOut-modal :openCashOutModal="openCashOutModal" @close="openCashOutModal=false" @refresh="refresh"></cashOut-modal>
|
|
|
</a-card>
|
|
|
</template>
|
|
|
|
|
@@ -59,43 +49,33 @@ import {
|
|
|
STable,
|
|
|
VSelect
|
|
|
} from '@/components'
|
|
|
+import cashOutModal from './CashOutModal.vue'
|
|
|
import {
|
|
|
settlementRecordsList,
|
|
|
settlementRecordsListTotal
|
|
|
} from '@/api/FinancialManagement'
|
|
|
-import PaySettlementRecordsDetailsModal from './PaySettlementRecordsDetailsModal.vue'
|
|
|
-import WriteOffDetailsModal from './WriteOffDetailsModal.vue'
|
|
|
export default {
|
|
|
- name: 'SettlementRecordsList',
|
|
|
+ name: 'CashOutManagement',
|
|
|
components: {
|
|
|
VSelect,
|
|
|
STable,
|
|
|
- PaySettlementRecordsDetailsModal,
|
|
|
- WriteOffDetailsModal
|
|
|
+ cashOutModal
|
|
|
},
|
|
|
data () {
|
|
|
return {
|
|
|
- loadData: parameter => {
|
|
|
- const searchData = Object.assign(parameter, this.queryParam)
|
|
|
- console.log(this.queryOrderDate, 'this.queryOrderDate')
|
|
|
- if (this.queryOrderDate && this.queryOrderDate.length) {
|
|
|
- searchData.beginDate = moment(this.queryOrderDate[0]).format('YYYY-MM-DD')
|
|
|
- searchData.endDate = moment(this.queryOrderDate[1]).format('YYYY-MM-DD')
|
|
|
- } else {
|
|
|
- searchData.beginDate = ''
|
|
|
- searchData.endDate = ''
|
|
|
- }
|
|
|
- return settlementRecordsList(searchData).then(res => {
|
|
|
- const no = (res.data.pageNo - 1) * res.data.pageSize
|
|
|
- for (let i = 0; i < res.data.list.length; i++) {
|
|
|
- const _item = res.data.list[i]
|
|
|
- _item.no = no + i + 1
|
|
|
- }
|
|
|
- return res.data
|
|
|
- })
|
|
|
- },
|
|
|
+ openCashOutModal: false, // 是否打开申请提现弹窗
|
|
|
queryOrderDate: undefined,
|
|
|
+ storeList: [
|
|
|
+ { id: 11, name: '常青二路店' },
|
|
|
+ { id: 112, name: '西部大道店' },
|
|
|
+ { id: 114, name: '渭滨路店' },
|
|
|
+ { id: 115, name: '未央店' },
|
|
|
+ { id: 116, name: '凤城八路店' }
|
|
|
+ ],
|
|
|
queryParam: {
|
|
|
+ storeName: '', // 客户名称
|
|
|
+ partName: '', // 配件名称
|
|
|
+ status: '', // 分账状态
|
|
|
settleNo: '',
|
|
|
beginDate: '',
|
|
|
endDate: ''
|
|
@@ -104,51 +84,80 @@ export default {
|
|
|
amountTotal: 0, // 实收总金额
|
|
|
itemId: '', // 每条数据id
|
|
|
settleId: '',
|
|
|
- openModalDetails: false, // 默认关闭详情弹窗
|
|
|
- openWriteOffModal: false,
|
|
|
columns: [{
|
|
|
title: '序号',
|
|
|
dataIndex: 'no',
|
|
|
- width: '60px',
|
|
|
+ width: 60,
|
|
|
align: 'center'
|
|
|
},
|
|
|
{
|
|
|
- title: '结算单号',
|
|
|
- dataIndex: 'settleNo',
|
|
|
- width: '150px',
|
|
|
+ title: '提现时间',
|
|
|
+ dataIndex: 'settleDate',
|
|
|
+ width: 200,
|
|
|
align: 'center'
|
|
|
},
|
|
|
{
|
|
|
- title: '结算时间',
|
|
|
- dataIndex: 'settleDate',
|
|
|
- width: '150px',
|
|
|
+ title: '提现单号',
|
|
|
+ dataIndex: 'settleNo',
|
|
|
+ width: 150,
|
|
|
align: 'center'
|
|
|
},
|
|
|
{
|
|
|
- title: '结算订单数',
|
|
|
+ title: '申请提现金额',
|
|
|
dataIndex: 'orderNum',
|
|
|
- width: '150px',
|
|
|
+ width: 150,
|
|
|
align: 'center',
|
|
|
scopedSlots: {
|
|
|
customRender: 'userInfo'
|
|
|
}
|
|
|
},
|
|
|
{
|
|
|
- title: '结算金额',
|
|
|
+ title: '开户名',
|
|
|
dataIndex: 'realAmount',
|
|
|
align: 'center',
|
|
|
- width: '150px'
|
|
|
+ width: 150
|
|
|
},
|
|
|
{
|
|
|
- title: '操作',
|
|
|
- dataIndex: 'action',
|
|
|
- width: '100px',
|
|
|
+ title: '银行卡号',
|
|
|
+ dataIndex: 'code',
|
|
|
align: 'center',
|
|
|
- scopedSlots: {
|
|
|
- customRender: 'action'
|
|
|
+ width: 150
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '状态',
|
|
|
+ dataIndex: 'status',
|
|
|
+ align: 'center',
|
|
|
+ width: 150
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '备注',
|
|
|
+ dataIndex: 'remarks',
|
|
|
+ width: 100,
|
|
|
+ align: 'center',
|
|
|
+ customRender: (text) => {
|
|
|
+ return text || '--'
|
|
|
}
|
|
|
}
|
|
|
- ]
|
|
|
+ ],
|
|
|
+ loadData: parameter => {
|
|
|
+ const searchData = Object.assign(parameter, this.queryParam)
|
|
|
+ console.log(this.queryOrderDate, 'this.queryOrderDate')
|
|
|
+ if (this.queryOrderDate && this.queryOrderDate.length) {
|
|
|
+ searchData.beginDate = moment(this.queryOrderDate[0]).format('YYYY-MM-DD')
|
|
|
+ searchData.endDate = moment(this.queryOrderDate[1]).format('YYYY-MM-DD')
|
|
|
+ } else {
|
|
|
+ searchData.beginDate = ''
|
|
|
+ searchData.endDate = ''
|
|
|
+ }
|
|
|
+ return settlementRecordsList(searchData).then(res => {
|
|
|
+ const no = (res.data.pageNo - 1) * res.data.pageSize
|
|
|
+ for (let i = 0; i < res.data.list.length; i++) {
|
|
|
+ const _item = res.data.list[i]
|
|
|
+ _item.no = no + i + 1
|
|
|
+ }
|
|
|
+ return res.data
|
|
|
+ })
|
|
|
+ }
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
@@ -156,18 +165,6 @@ export default {
|
|
|
disabledDate (current) {
|
|
|
return current && current > moment().endOf('day')
|
|
|
},
|
|
|
- // 查看详情
|
|
|
- handleDetail (record) {
|
|
|
- this.itemId = record.settleNo
|
|
|
- this.settleId = record.settleNo
|
|
|
- console.log(this.itemId, record.settleType)
|
|
|
- if (record.settleType === 'BUNDLE_SALE') {
|
|
|
- this.openModalDetails = true
|
|
|
- console.log(this.openModalDetails)
|
|
|
- } else {
|
|
|
- this.openWriteOffModal = true
|
|
|
- }
|
|
|
- },
|
|
|
// 查询
|
|
|
refresh () {
|
|
|
this.$refs.table.refresh(true)
|
|
@@ -211,7 +208,12 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
})
|
|
|
+ },
|
|
|
+ // 打开提现弹窗
|
|
|
+ openModal () {
|
|
|
+ this.openCashOutModal = true
|
|
|
}
|
|
|
+ //
|
|
|
|
|
|
},
|
|
|
beforeRouteEnter (to, from, next) {
|
|
@@ -222,7 +224,14 @@ export default {
|
|
|
}
|
|
|
</script>
|
|
|
|
|
|
-<style scoped>
|
|
|
+<style scoped lang="less">
|
|
|
+ .ftext{
|
|
|
+ margin-bottom: 15px;
|
|
|
+ font-size: 18px;
|
|
|
+ .btn-cont{
|
|
|
+ margin-right: 20px;
|
|
|
+ }
|
|
|
+ }
|
|
|
.ftext span {
|
|
|
color: #fa8c16;
|
|
|
font-weight: bold;
|