Commit 9bb9460c by yuzhenWang

解决合并冲突

parents 856a34d4 37fa8424
...@@ -498,6 +498,14 @@ export function billCalculateToAmount(data) { ...@@ -498,6 +498,14 @@ export function billCalculateToAmount(data) {
data: data data: data
}) })
} }
// 应收款管理--明细列表
export function newQueryCommissionExpectedByPage(data) {
return request({
url: 'csf/api/CommissionExpected/queryCommissionExpectedByPage/new',
method: 'post',
data: data
})
}
// 应收款管理修改应收记录状态 // 应收款管理修改应收记录状态
export function CommissionExpectedChangeStatus(data) { export function CommissionExpectedChangeStatus(data) {
......
...@@ -127,7 +127,7 @@ ...@@ -127,7 +127,7 @@
</el-col> </el-col>
<el-col :xs="24" :sm="12" :md="4" class="text-center mb-4"> <el-col :xs="24" :sm="12" :md="4" class="text-center mb-4">
<el-statistic <el-statistic
:value="detailRecordStatistics.totalUnpaidAmount" :value="detailRecordStatistics.pendingPaidAmount"
:formatter="value => formatCurrency(value)" :formatter="value => formatCurrency(value)"
> >
<template #title> <template #title>
...@@ -145,13 +145,13 @@ ...@@ -145,13 +145,13 @@
</template> </template>
</el-statistic> </el-statistic>
</el-col> </el-col>
<el-col :xs="24" :sm="12" :md="4" class="text-center mb-4"> <!-- <el-col :xs="24" :sm="12" :md="4" class="text-center mb-4">
<el-statistic :value="detailRecordStatistics.totalPolicyCount"> <el-statistic :value="detailRecordStatistics.totalPolicyCount">
<template #title> <template #title>
<div style="display: inline-flex; align-items: center">总保单数</div> <div style="display: inline-flex; align-items: center">总保单数</div>
</template> </template>
</el-statistic> </el-statistic>
</el-col> </el-col> -->
<el-col :xs="24" :sm="12" :md="4" class="text-center mb-4"> <el-col :xs="24" :sm="12" :md="4" class="text-center mb-4">
<el-statistic <el-statistic
:value="detailRecordStatistics.totalPremium" :value="detailRecordStatistics.totalPremium"
...@@ -162,6 +162,16 @@ ...@@ -162,6 +162,16 @@
</template> </template>
</el-statistic> </el-statistic>
</el-col> </el-col>
<el-col :xs="24" :sm="12" :md="4" class="text-center mb-4">
<el-statistic
:value="detailRecordStatistics.fromTotalPremium"
:formatter="value => formatCurrency(value)"
>
<template #title>
<div style="display: inline-flex; align-items: center">原币种保费</div>
</template>
</el-statistic>
</el-col>
</el-row> </el-row>
</div> </div>
<el-table <el-table
...@@ -290,6 +300,7 @@ import { ref, reactive, onMounted, computed, nextTick } from 'vue' ...@@ -290,6 +300,7 @@ import { ref, reactive, onMounted, computed, nextTick } from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus' import { ElMessage, ElMessageBox } from 'element-plus'
import { MoreFilled } from '@element-plus/icons-vue' import { MoreFilled } from '@element-plus/icons-vue'
import { import {
newQueryCommissionExpectedByPage,
receivedFortuneList, receivedFortuneList,
updateCommissionExpected, updateCommissionExpected,
commissionEntryEditRecords, commissionEntryEditRecords,
...@@ -313,6 +324,12 @@ const commissionBizTypeOptions = [ ...@@ -313,6 +324,12 @@ const commissionBizTypeOptions = [
{ value: 'R', label: '关联保单应收单' }, { value: 'R', label: '关联保单应收单' },
{ value: 'U', label: '非关联保单应收单' } { value: 'U', label: '非关联保单应收单' }
] ]
//是否实收
const typeOptions = [
{ value: 1, label: '预计' },
{ value: 2, label: '实收' }
]
const editStatus = ref('add') const editStatus = ref('add')
// 新增应收款管理 // 新增应收款管理
...@@ -444,7 +461,6 @@ const resetAddReceivablesForm = () => { ...@@ -444,7 +461,6 @@ const resetAddReceivablesForm = () => {
const handleConfirmAddReceivables = async () => { const handleConfirmAddReceivables = async () => {
if (editStatus.value === 'add') { if (editStatus.value === 'add') {
const p = addRecordRef.value.getFormData() const p = addRecordRef.value.getFormData()
try { try {
await addReceivedFortune({ await addReceivedFortune({
commissionExpectedAddDtoList: [p] commissionExpectedAddDtoList: [p]
...@@ -621,6 +637,11 @@ const getCommissionBizTypeLabel = value => { ...@@ -621,6 +637,11 @@ const getCommissionBizTypeLabel = value => {
const item = commissionBizTypeOptions.find(item => item.value === value) const item = commissionBizTypeOptions.find(item => item.value === value)
return item?.label || '' return item?.label || ''
} }
// 是否实收通过value转成label
const getTypeLabel = value => {
const item = typeOptions.find(item => item.value === value)
return item?.label || ''
}
// 表格操作菜单 // 表格操作菜单
const dropdownItems = [ const dropdownItems = [
...@@ -730,11 +751,6 @@ const handleCurrentChange = val => { ...@@ -730,11 +751,6 @@ const handleCurrentChange = val => {
// 加载表格数据 // 加载表格数据
const loadTableData = async () => { const loadTableData = async () => {
const searchParams = searchFormRef.value.getFormData() || {} const searchParams = searchFormRef.value.getFormData() || {}
// let msg = validateEnglish2(searchParams.eng)
// if (searchParams.eng && msg) {
// ElMessage.error(`投保人(英文):${msg}`)
// return
// }
loading.value = true loading.value = true
try { try {
const params = { const params = {
...@@ -940,7 +956,6 @@ const receivableReportTableColumns = ref([ ...@@ -940,7 +956,6 @@ const receivableReportTableColumns = ref([
fixed: 'left', fixed: 'left',
formatter: row => row.policyNo || '-' formatter: row => row.policyNo || '-'
}, },
{ {
prop: 'reconciliationCompany', prop: 'reconciliationCompany',
label: '对账公司', label: '对账公司',
...@@ -1058,6 +1073,13 @@ const receivableReportTableColumns = ref([ ...@@ -1058,6 +1073,13 @@ const receivableReportTableColumns = ref([
// 应收明细 // 应收明细
const receivableReportItemTableColumns = ref([ const receivableReportItemTableColumns = ref([
{ {
prop: 'type',
label: '是否实收',
sortable: true,
width: '150',
formatter: row => getTypeLabel(row.type) || '-'
},
{
prop: 'commissionBizType', prop: 'commissionBizType',
label: '应收单类型', label: '应收单类型',
sortable: true, sortable: true,
...@@ -1065,12 +1087,19 @@ const receivableReportItemTableColumns = ref([ ...@@ -1065,12 +1087,19 @@ const receivableReportItemTableColumns = ref([
formatter: row => getCommissionBizTypeLabel(row.commissionBizType) || '-' formatter: row => getCommissionBizTypeLabel(row.commissionBizType) || '-'
}, },
{ {
prop: 'receivableNo', prop: 'no',
label: '应收编号', label: '应收编号',
sortable: true, sortable: true,
width: '150', width: '150',
formatter: row => row.receivableNo || '-' formatter: row => row.no || '-'
}, },
// {
// prop: 'receivableNo',
// label: '应收款编号',
// sortable: true,
// width: '150',
// formatter: row => row.receivableNo || '-'
// },
{ {
prop: 'policyNo', prop: 'policyNo',
label: '保单号', label: '保单号',
...@@ -1114,13 +1143,28 @@ const receivableReportItemTableColumns = ref([ ...@@ -1114,13 +1143,28 @@ const receivableReportItemTableColumns = ref([
formatter: row => row.commissionName || '-' formatter: row => row.commissionName || '-'
}, },
{ {
prop: 'commissionDateMonth',
label: '入账年月(估)',
sortable: true,
width: '130',
formatter: row => row.commissionDateMonth || '-'
},
{
prop: 'commissionDate', prop: 'commissionDate',
label: '入账日(估)', label: '入账年月(实)',
sortable: true, sortable: true,
width: '130', width: '130',
formatter: row => row.commissionDate || '-' formatter: row => row.commissionDate || '-'
}, },
{ {
prop: 'totalRevenueRatio',
label: '累积已入账比例',
sortable: true,
width: '130',
formatter: row => (row.totalRevenueRatio || 0) + '%' || '-'
},
{
prop: 'commissionRatio', prop: 'commissionRatio',
label: '产品对应来佣率', label: '产品对应来佣率',
sortable: true, sortable: true,
...@@ -1128,32 +1172,47 @@ const receivableReportItemTableColumns = ref([ ...@@ -1128,32 +1172,47 @@ const receivableReportItemTableColumns = ref([
formatter: row => (row.commissionRatio || 0) + '%' || '-' formatter: row => (row.commissionRatio || 0) + '%' || '-'
}, },
{ {
prop: 'expectedAmount', prop: 'realRate',
label: '预估入账金额', label: '实佣率',
sortable: true, sortable: true,
width: '120', width: '120',
formatter: row => formatCurrency(row.expectedAmount || 0) formatter: row => (row.realRate || 0) + '%' || '-'
}, },
{ {
prop: 'paidRatio', prop: 'gapRate',
label: '实佣率', label: '达成率缺口',
sortable: true, sortable: true,
width: '120', width: '120',
formatter: row => (row.paidRatio || 0) + '%' || '-' formatter: row => (row.gapRate || 0) + '%' || '-'
}, },
{ {
prop: 'paidAmount', prop: 'realExchangeRate',
label: '结算汇率实',
sortable: true,
width: '120',
formatter: row => row.realExchangeRate || '-'
},
{
prop: 'realAmount',
label: '已入账金额', label: '已入账金额',
sortable: true, sortable: true,
width: '120', width: '120',
formatter: row => formatCurrency(row.paidAmount || 0) formatter: row => row.realAmount || '-'
}, },
//还不确定字段
{ {
prop: 'pendingRatio', prop: 'realReconciliationYearMonth',
label: '实佣率缺口', label: '检核年月',
sortable: true, sortable: true,
width: '120', width: '120',
formatter: row => (row.pendingRatio || 0) + '%' || '-' formatter: row => row.realReconciliationYearMonth || '-'
},
{
prop: 'revenueRatio',
label: '本次入账比例',
sortable: true,
width: '120',
formatter: row => (row.revenueRatio || 0) + '%' || '-'
}, },
{ {
prop: 'pendingAmount', prop: 'pendingAmount',
...@@ -1162,7 +1221,20 @@ const receivableReportItemTableColumns = ref([ ...@@ -1162,7 +1221,20 @@ const receivableReportItemTableColumns = ref([
width: '120', width: '120',
formatter: row => formatCurrency(row.pendingAmount || 0) formatter: row => formatCurrency(row.pendingAmount || 0)
}, },
{ prop: 'defaultExchangeRate', label: '结算汇率(估)', sortable: true, width: '120' }, {
prop: 'expectedAmount',
label: '预计入账金额',
sortable: true,
width: '120',
formatter: row => formatCurrency(row.expectedAmount || 0)
},
{
prop: 'defaultExchangeRate',
label: '结算汇率估',
sortable: true,
width: '120',
formatter: row => row.defaultExchangeRate || '-'
},
{ {
prop: 'insuranceCompany', prop: 'insuranceCompany',
label: '保险公司', label: '保险公司',
...@@ -1177,12 +1249,13 @@ const receivableReportItemTableColumns = ref([ ...@@ -1177,12 +1249,13 @@ const receivableReportItemTableColumns = ref([
width: '120', width: '120',
formatter: row => row.productName || '-' formatter: row => row.productName || '-'
}, },
//还不确定字段
{ {
prop: 'premium', prop: 'issueNumber',
label: '期交保费', label: '年期',
sortable: true, sortable: true,
width: '120', width: '120',
formatter: row => formatCurrency(row.premium || 0) formatter: row => row.issueNumber || '-'
}, },
{ {
prop: 'policyCurrency', prop: 'policyCurrency',
...@@ -1192,26 +1265,57 @@ const receivableReportItemTableColumns = ref([ ...@@ -1192,26 +1265,57 @@ const receivableReportItemTableColumns = ref([
formatter: row => row.policyCurrency || '-' formatter: row => row.policyCurrency || '-'
}, },
{ {
prop: 'currency', prop: 'premium',
label: '入账币种', label: '期交保费',
sortable: true, sortable: true,
width: '120', width: '120',
formatter: row => row.currency || '-' formatter: row => formatCurrency(row.premium || 0)
}, },
{ {
prop: 'statusDesc', prop: 'realRemark',
label: '入账状态修改理由', label: '备注',
sortable: true, sortable: true,
width: '120', width: '120',
formatter: row => row.statusDesc || '-' formatter: row => row.realRemark || '-'
}, },
{ {
prop: 'remark', prop: 'realUpdaterName',
label: '备注', label: '操作人',
sortable: true, sortable: true,
width: '120', width: '120',
formatter: row => row.remark || '-' formatter: row => row.realUpdaterName || '-'
},
{
prop: 'realUpdateTime',
label: '操作时间',
sortable: true,
width: '120',
formatter: row => row.realUpdateTime || '-'
} }
// {
// prop: 'pendingRatio',
// label: '实佣率缺口',
// sortable: true,
// width: '120',
// formatter: row => (row.pendingRatio || 0) + '%' || '-'
// },
// { prop: 'defaultExchangeRate', label: '结算汇率(估)', sortable: true, width: '120' },
// {
// prop: 'currency',
// label: '入账币种',
// sortable: true,
// width: '120',
// formatter: row => row.currency || '-'
// },
// {
// prop: 'statusDesc',
// label: '入账状态修改理由',
// sortable: true,
// width: '120',
// formatter: row => row.statusDesc || '-'
// },
]) ])
const detailRecordStatistics = ref({}) const detailRecordStatistics = ref({})
...@@ -1222,7 +1326,7 @@ const detailPageInfo = ref({ ...@@ -1222,7 +1326,7 @@ const detailPageInfo = ref({
total: 0 total: 0
}) })
// 获取入账报告 // 获取应收明细
const receivedFortuneListData = async () => { const receivedFortuneListData = async () => {
loading.value = true loading.value = true
try { try {
...@@ -1233,18 +1337,21 @@ const receivedFortuneListData = async () => { ...@@ -1233,18 +1337,21 @@ const receivedFortuneListData = async () => {
pageNo: detailPageInfo.value.currentPage, pageNo: detailPageInfo.value.currentPage,
pageSize: detailPageInfo.value.pageSize pageSize: detailPageInfo.value.pageSize
} }
const response = await receivedFortuneList(params) const response = await newQueryCommissionExpectedByPage(params)
receivableReportTableData.value = response.data.page.records || [] receivableReportTableData.value = response.data.page.records || []
detailPageInfo.value.total = response.data.page.total || 0 detailPageInfo.value.total = response.data.page.total || 0
detailPageInfo.value.pageSize = response.data.page.size || 50 detailPageInfo.value.pageSize = response.data.page.size || 50
// 统计信息 // 统计信息
detailRecordStatistics.value = { // detailRecordStatistics.value = {
totalAmount: response.data.expectedStatisticsVO.totalAmount, // totalAmount: response.data.expectedStatisticsVO.totalAmount,
totalPaidAmount: response.data.expectedStatisticsVO.totalPaidAmount, // totalPaidAmount: response.data.expectedStatisticsVO.totalPaidAmount,
pendingPaidAmount: response.data.expectedStatisticsVO.pendingPaidAmount, // pendingPaidAmount: response.data.expectedStatisticsVO.pendingPaidAmount,
paidAmountRatio: response.data.expectedStatisticsVO.paidAmountRatio, // paidAmountRatio: response.data.expectedStatisticsVO.paidAmountRatio,
totalPolicyCount: response.data.expectedStatisticsVO.totalPolicyCount, // totalPolicyCount: response.data.expectedStatisticsVO.totalPolicyCount,
totalPremium: response.data.expectedStatisticsVO.totalPremium // totalPremium: response.data.expectedStatisticsVO.totalPremium
// }
if (response.data.expectedStatisticsVO) {
detailRecordStatistics.value = response.data.expectedStatisticsVO
} }
} catch (error) { } catch (error) {
console.error('加载数据失败:', error) console.error('加载数据失败:', error)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment