Commit 220d00dc by Sweet Zhang

暂存

parent c58ec623
......@@ -226,7 +226,7 @@ export function policyData(data) {
// 应付款管理列表
export function expectedFortuneList(data) {
return request({
url: '/csf/api/expectedFortune/list',
url: '/csf/api/expectedFortune/page',
method: 'post',
data: data
})
......@@ -272,3 +272,21 @@ export function commissionEntryEditRecords(data) {
data: data
})
}
// 出账记录查询
export function payRecordList(data) {
return request({
url: '/csf/api/fortune/list/page/fortuneAccount',
method: 'post',
data: data
})
}
// 获取保单发佣列表
export function policyNoCommissionPayRecord(data) {
return request({
url: '/csf/api/fortune/list/page/vo',
method: 'post',
data: data
})
}
// src/api/search.ts
import request from '@/utils/request'
// 通用搜索接口
export function commonSearch(params: {
module: string
keyword?: string
pageSize?: number
}) {
// 特定模块搜索
// 搜索保险公司
export function searchInsurers(params) {
return request({
url: '/common/search',
method: 'get',
url: '/insurance/base/api/insuranceCompany/page',
method: 'POST',
params
})
}
// 特定模块搜索
export function searchCompanies(params: {
type?: string
keyword?: string
pageSize?: number
}) {
// 搜索产品
export function searchProducts(params) {
return request({
url: '/company/search',
method: 'get',
url: '/product/base/api/product/search',
method: 'POST',
params
})
}
export function searchCommissionTypes(params: {
keyword?: string
pageSize?: number
}) {
// 获取对账公司
export function searchReconciliationCompanies(params) {
return request({
url: '/commission/type/search',
method: 'get',
url: '/insurance/base/api/insuranceReconciliationCompany/page',
method: 'POST',
params
})
}
export function searchInsurers(params: {
keyword?: string
pageSize?: number
}) {
// 获取签单员列表
export function searchSigners(params) {
return request({
url: '/insurer/search',
method: 'get',
url: '/insurance/base/api/userSignExpand/page',
method: 'POST',
params
})
}
export function searchProducts(params: {
keyword?: string
pageSize?: number
}) {
// 获取转介人列表
export function searchIntermediaries(params) {
return request({
url: '/product/search',
method: 'get',
url: '/insurance/base/api/userSaleExpand/page',
method: 'POST',
params
})
}
statistics-cards<template>
<CommonPage :operationBtnList="operationBtnList" :showSearchForm="true" :show-pagination="true" :total="pageTotal"
:current-page="currentPage" :page-size="pageSize" @size-change="handleSizeChange"
<template>
<div>
<CommonPage :operationBtnList="operationBtnList" :showSearchForm="true" :show-pagination="true"
:total="pageTotal" :current-page="currentPage" :page-size="pageSize" @size-change="handleSizeChange"
@current-change="handleCurrentChange">
<!-- 搜索区域 -->
<template #searchForm>
<SearchForm ref="searchFormRef" v-model="searchFormData" :fields="searchFields" label-position="top"
:label-width="null" :inline="false" :gutter="20" class="custom-search-form" />
{{ searchFormData }}
</template>
<!-- 列表区域 -->
<template #table>
......@@ -104,10 +106,12 @@ statistics-cards<template>
</el-table-column>
</el-table>
</template>
</CommonPage>
<!-- 比对状态表格弹窗-->
<CommonDialog dialogTitle="入账记录" dialogWidth="80%" :openDialog="entryRecordDialogTableVisible" :showAction="false" :showClose="true" @close="entryRecordDialogTableVisible=false">
<el-table :data="entryRecordDialogTableData" border style="width: 100%">
<CommonDialog dialogTitle="入账记录" dialogWidth="80%" :openDialog="entryRecordDialogTableVisible"
:showAction="false" :showClose="true" @close="entryRecordDialogTableVisible = false">
<el-table :data="entryRecordDialogTableData" border style="width: 100%" >
<el-table-column v-for="item in entryRecordDialogTableColumns" :key="item.property"
:property="item.property" :label="item.label" :width="item.width" />
<el-table-column fixed="right" label="操作" min-width="120">
......@@ -121,7 +125,8 @@ statistics-cards<template>
</CommonDialog>
<!-- 操作记录表格弹窗-->
<CommonDialog dialogTitle="操作记录" dialogWidth="80%" :openDialog="actionRecordsDialogVisible" :showAction="false" :showClose="true" @close="actionRecordsDialogVisible=false">
<CommonDialog dialogTitle="操作记录" dialogWidth="80%" :openDialog="actionRecordsDialogVisible" :showAction="false"
:showClose="true" @close="actionRecordsDialogVisible = false">
<el-table :data="actionRecordsDialogTableData" border style="width: 100%">
<el-table-column v-for="item in actionRecordsDialogTableColumns" :key="item.property"
:property="item.property" :label="item.label" :width="item.width" />
......@@ -129,7 +134,8 @@ statistics-cards<template>
</CommonDialog>
<!-- 设置状态 弹窗-->
<CommonDialog dialogTitle="设置入账状态" dialogWidth="80%" :openDialog="setStatusDialogTableVisible" @close="setStatusDialogTableVisible=false" @confirm="setStatusDialogTableVisible=false">
<CommonDialog dialogTitle="设置入账状态" dialogWidth="80%" :openDialog="setStatusDialogTableVisible"
@close="setStatusDialogTableVisible = false" @confirm="setStatusDialogTableVisible = false">
<el-form :model="form">
<el-form-item label="入账状态" label-width="120">
<el-select v-model="form.status" placeholder="请选择入账状态">
......@@ -150,17 +156,19 @@ statistics-cards<template>
</div>
</template>
</CommonDialog>
</div>
</template>
<script setup name="Receivables">
import CommonPage from '@/components/commonPage'
import CommonDialog from '@/components/commonDialog'
import { ref, reactive, onMounted, watch } from 'vue'
import { ref, reactive } from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus'
import { formatCurrency } from '@/utils/number'
import { receivedFortuneList, commissionEntryRecord, commissionEntryEditRecords } from '@/api/financial/commission'
import SearchForm from '@/components/SearchForm/index.vue'
import { searchCompanies, searchCommissionTypes } from '@/api/search'
// 分页相关
const currentPage = ref(1)
const pageSize = ref(10)
......@@ -186,9 +194,9 @@ const form = reactive({
const selectedRow = ref(null)
const handleSelect = (e, row) => {
console.log(e, row)
selectedRow.value = row
if (e === 'entryRecord') {
// 入账记录
entryRecordDialogTableVisible.value = true
entryRecordDialogTableColumns.value = [
{ property: 'commissionPeriod', label: '佣金期数', width: '100' },
......@@ -202,6 +210,7 @@ const handleSelect = (e, row) => {
]
// 加载入账记录-假数据等待接口修改
loadEntryRecordData(selectedRow.value.commissionExpectedBizId).then(records => {
console.log(records)
entryRecordDialogTableData.value = records =
[{
commissionPeriod: '2023-08-01',
......@@ -290,20 +299,11 @@ const searchFields = ref([
label: '入账状态',
placeholder: '请选择入账状态',
colSpan: 6,
remoteConfig: {
type: 'commissionType',
apiMethod: searchCommissionTypes,
formatResult: (data) => data.map(item => ({
label: item.typeName,
value: item.typeCode,
remark: item.remark
})),
defaultOptions: [
options: [
{ label: '已入账', value: '1' },
{ label: '待入账', value: '0' },
{ label: '部分入账', value: '2' }
]
}
},
{
type: 'input',
......@@ -320,7 +320,6 @@ const searchFields = ref([
colSpan: 6,
remoteConfig: {
type: 'company',
apiMethod: (params) => searchCompanies({ ...params, type: 'reconciliation' }),
defaultOptions: []
}
},
......@@ -352,7 +351,6 @@ const searchFields = ref([
placeholder: '请选择应收款类型',
colSpan: 6,
options: [
{ label: '全部', value: '' },
{ label: '关联保单应收单', value: '1' },
{ label: '非关联保单应收单', value: '2' }
]
......@@ -409,8 +407,7 @@ const handleReset = () => {
const handleQuery = async () => {
loadTableData()
}
// 控制要显示的默认按钮
const visibleDefaultButtons = ref(['add', 'import', 'export']) // 只显示新增和查询两个默认按钮
// 按钮配置
const operationBtnList = ref([
{
......@@ -453,6 +450,7 @@ const handleCurrentChange = (val) => {
// 加载表格数据
const loadTableData = async () => {
console.log(searchFormData)
loading.value = true
try {
const params = {
......@@ -461,9 +459,9 @@ const loadTableData = async () => {
pageSize: pageSize.value
}
const response = await receivedFortuneList(params)
tableData.value = response.data.page.records
pageTotal.value = response.data.page.total
pageSize.value = response.data.page.size
tableData.value = response.data.page.records || []
pageTotal.value = response.data.page.total || 0
pageSize.value = response.data.page.size || 10
// 统计信息
statisticsData.value = {
......@@ -521,18 +519,17 @@ const loadEntryEditRecordData = async (cbd) => {
// 初始化加载数据
onMounted(() => {
loadTableData()
})
loadTableData()
</script>
<style scoped lang="scss">
.statistics-cards {
margin-bottom: 5px;
background: RGBA(0,82,217,0.03);
background: RGBA(0, 82, 217, 0.03);
border-radius: 8px;
padding: 10px 20px;
}
.page-search-container {
padding: 20px;
background: #fff;
......
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