|
|
@ -56,6 +56,9 @@
|
|
|
|
<span v-if="record.isLocked">是</span>
|
|
|
|
<span v-if="record.isLocked">是</span>
|
|
|
|
<span v-else>否</span>
|
|
|
|
<span v-else>否</span>
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
|
|
|
|
|
<template v-if="column.dataIndex == 'businessType'">
|
|
|
|
|
|
|
|
<span v-if="record.businessType == 1">海运出口</span>
|
|
|
|
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
|
</BasicTable>
|
|
|
|
</BasicTable>
|
|
|
|
</a-spin>
|
|
|
|
</a-spin>
|
|
|
@ -80,8 +83,11 @@
|
|
|
|
<script lang="ts" setup>
|
|
|
|
<script lang="ts" setup>
|
|
|
|
import { onMounted, ref, reactive, watch, defineExpose, defineProps, defineEmits, h } from 'vue'
|
|
|
|
import { onMounted, ref, reactive, watch, defineExpose, defineProps, defineEmits, h } from 'vue'
|
|
|
|
import { BasicTable, useTable } from '/@/components/Table'
|
|
|
|
import { BasicTable, useTable } from '/@/components/Table'
|
|
|
|
import { InvoiceSettlementGetInvoiceList, InvoiceSettlementGetInvoiceDetails, InvoiceSettlementGetExchanges, GetExchangeRate } from '../api'
|
|
|
|
import {
|
|
|
|
import { invoiceTableColums, invoiceSearchFormSchema, invoiceTableDetailColums } from '../columns'
|
|
|
|
InvoiceSettlementGetInvoiceList, InvoiceSettlementGetInvoiceDetails,
|
|
|
|
|
|
|
|
InvoiceSettlementGetExchanges, GetExchangeRate, PaymentFreeSettlementGetBizList
|
|
|
|
|
|
|
|
} from '../api'
|
|
|
|
|
|
|
|
import { invoiceTableColums, invoiceSearchFormSchema, invoiceTableDetailColums, freeTableColums, freeSearchFormSchema } from '../columns'
|
|
|
|
import { GetFeeCurrencySelectList } from '/@/api/common'
|
|
|
|
import { GetFeeCurrencySelectList } from '/@/api/common'
|
|
|
|
import feeTable from '/@/components/CostEntry/components/feeTable.vue'
|
|
|
|
import feeTable from '/@/components/CostEntry/components/feeTable.vue'
|
|
|
|
import { BasicForm, useForm } from '/@/components/Form'
|
|
|
|
import { BasicForm, useForm } from '/@/components/Form'
|
|
|
@ -91,13 +97,21 @@ import { useMessage } from '/@/hooks/web/useMessage'
|
|
|
|
import { Divider } from 'ant-design-vue'
|
|
|
|
import { Divider } from 'ant-design-vue'
|
|
|
|
import { formatParams } from '/@/hooks/web/common'
|
|
|
|
import { formatParams } from '/@/hooks/web/common'
|
|
|
|
const emits = defineEmits(['updateList', 'refresh'])
|
|
|
|
const emits = defineEmits(['updateList', 'refresh'])
|
|
|
|
|
|
|
|
import { useRoute, useRouter } from 'vue-router'
|
|
|
|
|
|
|
|
const route = useRoute()
|
|
|
|
const { createMessage } = useMessage()
|
|
|
|
const { createMessage } = useMessage()
|
|
|
|
// 未收rmb
|
|
|
|
// 未收rmb
|
|
|
|
const rrmb = ref(0)
|
|
|
|
const rrmb = ref(0)
|
|
|
|
const loading = ref(false)
|
|
|
|
const loading = ref(false)
|
|
|
|
const [registerTable, { reload, getForm, getSelectRows, setSelectedRowKeys, getDataSource }] = useTable({
|
|
|
|
const [registerTable, { reload, getForm, getSelectRows, setSelectedRowKeys, getDataSource }] = useTable({
|
|
|
|
api: async (p) => {
|
|
|
|
api: async (p) => {
|
|
|
|
const res = await InvoiceSettlementGetInvoiceList(p)
|
|
|
|
let res = {} as any
|
|
|
|
|
|
|
|
if (route.query.type == 'free') {
|
|
|
|
|
|
|
|
res = await PaymentFreeSettlementGetBizList(p)
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (route.query.type == 'invoice') {
|
|
|
|
|
|
|
|
res = await InvoiceSettlementGetInvoiceList(p)
|
|
|
|
|
|
|
|
}
|
|
|
|
return new Promise((resolve) => {
|
|
|
|
return new Promise((resolve) => {
|
|
|
|
resolve({ data: [...res.data], total: res.count })
|
|
|
|
resolve({ data: [...res.data], total: res.count })
|
|
|
|
})
|
|
|
|
})
|
|
|
@ -108,12 +122,12 @@ const [registerTable, { reload, getForm, getSelectRows, setSelectedRowKeys, getD
|
|
|
|
beforeFetch: (p) => {
|
|
|
|
beforeFetch: (p) => {
|
|
|
|
return formatParams(p)
|
|
|
|
return formatParams(p)
|
|
|
|
},
|
|
|
|
},
|
|
|
|
columns: invoiceTableColums,
|
|
|
|
columns: getColums(),
|
|
|
|
maxHeight: '900',
|
|
|
|
maxHeight: '900',
|
|
|
|
rowKey: 'id',
|
|
|
|
rowKey: 'id',
|
|
|
|
formConfig: {
|
|
|
|
formConfig: {
|
|
|
|
labelWidth: 120,
|
|
|
|
labelWidth: 120,
|
|
|
|
schemas: invoiceSearchFormSchema,
|
|
|
|
schemas: getSearch(),
|
|
|
|
useAdvancedSearch: true
|
|
|
|
useAdvancedSearch: true
|
|
|
|
},
|
|
|
|
},
|
|
|
|
isTreeTable: false,
|
|
|
|
isTreeTable: false,
|
|
|
@ -144,6 +158,24 @@ const [registerTable1, { getSelectRows: getSelectRowsFee, setProps: setPropsFee,
|
|
|
|
canResize: false,
|
|
|
|
canResize: false,
|
|
|
|
immediate: false,
|
|
|
|
immediate: false,
|
|
|
|
})
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function getColums() {
|
|
|
|
|
|
|
|
if (route.query.type == 'invoice') {
|
|
|
|
|
|
|
|
return invoiceTableColums
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (route.query.type == 'free') {
|
|
|
|
|
|
|
|
return freeTableColums
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function getSearch() {
|
|
|
|
|
|
|
|
if (route.query.type == 'invoice') {
|
|
|
|
|
|
|
|
return invoiceTableDetailColums
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (route.query.type == 'free') {
|
|
|
|
|
|
|
|
return freeSearchFormSchema
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
const exchangarr = ref([]) as any
|
|
|
|
const exchangarr = ref([]) as any
|
|
|
|
const currenciesData = ref([]) as any
|
|
|
|
const currenciesData = ref([]) as any
|
|
|
|
const exchangeFlag = ref(false)
|
|
|
|
const exchangeFlag = ref(false)
|
|
|
@ -265,6 +297,7 @@ function onSelectChange(selectedRowKeys) {
|
|
|
|
})
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
|
|
|
const openFlag = ref(false)
|
|
|
|
const openFlag = ref(false)
|
|
|
|
|
|
|
|
const opneType = ref('')
|
|
|
|
function init() {
|
|
|
|
function init() {
|
|
|
|
openFlag.value = true
|
|
|
|
openFlag.value = true
|
|
|
|
setTimeout(() => {
|
|
|
|
setTimeout(() => {
|
|
|
|