Commit b567c4f0 by Sweet Zhang

新单跟进对接

parent d1d8bca2
...@@ -247,3 +247,12 @@ export function batchSaveBrokers(data) { ...@@ -247,3 +247,12 @@ export function batchSaveBrokers(data) {
data: data data: data
}) })
} }
// 通过保险公司、险种查询产品列表及参数
export function getProductList(data) {
return request({
url: '/csf/prodcut/api/relProjectProductLaunch/parameter/page',
method: 'post',
data: data
})
}
...@@ -75,19 +75,12 @@ ...@@ -75,19 +75,12 @@
border border
max-height="380px" max-height="380px"
> >
<el-table-column type="index" width="50" label="序号" /> <el-table-column type="index" width="60" label="序号" />
<el-table-column label="客户姓名" align="center" prop="customerName" width="100" /> <el-table-column label="客户姓名" align="center" prop="customerName" width="100" />
<el-table-column label="状态" align="center" width="150"> <!-- <el-table-column label="状态" align="center" prop="status" width="100" :formatter="getDictLabel('csf_fna_status')"/> -->
<el-table-column label="状态" sortable align="center" prop="status" width="200">
<template #default="scope"> <template #default="scope">
<span v-if="scope.row.status == 'UNCOMPLETED'"> <span>{{ selectDictLabel(csf_fna_status, scope.row.status) }}</span>
<span style="color: #ff7d00" class="iconfont icon-yanqiweiwancheng"></span> 未完成
</span>
<span v-if="scope.row.status == 'COMPLETED'"
><span style="color: #43cf7c" class="iconfont icon-yiwancheng"></span> 已完成
</span>
<span v-if="scope.row.status == 'DRAFT'"
><span style="color: #86909c" class="iconfont icon-genjinjilu"></span> 草稿
</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
......
...@@ -71,8 +71,9 @@ ...@@ -71,8 +71,9 @@
<CommonDialog :dialogTitle='mode === "viewDetail" ? "查看详情" : "更新数据"' dialogWidth='80%' <CommonDialog :dialogTitle='mode === "viewDetail" ? "查看详情" : "更新数据"' dialogWidth='80%'
:openDialog=viewDetailDialogFlag :showAction='false' :showClose='true' @close='viewDetailDialogFlag = false' :openDialog=viewDetailDialogFlag :showAction='false' :showClose='true' @close='viewDetailDialogFlag = false'
@confirm='handleUpdateSubmit'> @confirm='handleUpdateSubmit'>
<PolicyDetail v-model="policyDetailFormData" ref="policyDetailFormRef" @submit="onSubmit" <PolicyDetail v-model="policyDetailFormData" :policyBizId="selectedRow.policyBizId" :mode="mode"
@cancel="viewDetailDialogFlag = false" /> ref="policyDetailFormRef" @submit="onSubmit" @cancel="viewDetailDialogFlag = false"
v-if="viewDetailDialogFlag" />
</CommonDialog> </CommonDialog>
...@@ -172,7 +173,6 @@ const onSubmit = async (data) => { ...@@ -172,7 +173,6 @@ const onSubmit = async (data) => {
const res = await saveMailingInfo(params) const res = await saveMailingInfo(params)
if (res.code === 200) { if (res.code === 200) {
ElMessage.success('保存邮寄信息成功') ElMessage.success('保存邮寄信息成功')
// viewDetailDialogFlag.value = false
} else { } else {
ElMessage.error(res.msg || '保存邮寄信息失败') ElMessage.error(res.msg || '保存邮寄信息失败')
} }
...@@ -184,10 +184,10 @@ const onSubmit = async (data) => { ...@@ -184,10 +184,10 @@ const onSubmit = async (data) => {
} }
const res = await updatePolicyfollow(params) const res = await updatePolicyfollow(params)
if (res.code === 200) { if (res.code === 200) {
ElMessage.success('保存基本信息成功') ElMessage.success(data.activeTab === 'basic' ? '保存基本信息成功' : '保存产品计划成功')
// viewDetailDialogFlag.value = false // viewDetailDialogFlag.value = false
} else { } else {
ElMessage.error(res.msg || '保存基本信息失败') ElMessage.error(res.msg || (data.activeTab === 'basic' ? '保存基本信息失败' : '保存产品计划失败'))
} }
} else if (data.activeTab === 'introducer') { } else if (data.activeTab === 'introducer') {
params = { params = {
...@@ -228,10 +228,7 @@ const onSubmit = async (data) => { ...@@ -228,10 +228,7 @@ const onSubmit = async (data) => {
} }
const handleClose = () => { // 处理转介人数据格式
// 可选:清空数据
}
const normalizeIntroducerData = (data) => { const normalizeIntroducerData = (data) => {
if (Array.isArray(data)) return data if (Array.isArray(data)) return data
if (data && typeof data === 'object') { if (data && typeof data === 'object') {
...@@ -407,44 +404,40 @@ const dropdownItems = [ ...@@ -407,44 +404,40 @@ const dropdownItems = [
{ label: '更新数据', value: 'updateData' }, { label: '更新数据', value: 'updateData' },
{ label: '生成签单报告', value: 'generateReport' }, { label: '生成签单报告', value: 'generateReport' },
{ label: '设置新单状态', value: 'setNewSingleStatus' }, { label: '设置新单状态', value: 'setNewSingleStatus' },
{ label: '查看关联', value: 'viewRelated' }, // { label: '查看关联', value: 'viewRelated' },
// { label: '查看记录', value: 'viewRecord' }, // { label: '查看记录', value: 'viewRecord' },
] ]
const mode = ref('viewDetail') const mode = ref('viewDetail')
const handleSelect = async (e, row) => { const handleSelect = async (e, row) => {
selectedRow.value = { ...row } selectedRow.value = { ...row }
console.log('列表点击操作', e, selectedRow.value)
mode.value = e mode.value = e
switch (e) { switch (e) {
case 'viewDetail': case 'viewDetail':
// ElMessage.info('查看详情')
viewDetailDialogFlag.value = true viewDetailDialogFlag.value = true
// 等待 DOM 更新完成
await nextTick()
if (policyDetailFormRef.value) {
// 调用子组件详情查询接口
const data = await policyDetailFormRef.value.getPolicyfollowDetail(row.policyBizId)
}
break break
case 'updateData': case 'updateData':
ElMessage.info('更新数据') if (selectedRow.value.status === '生效') {
ElMessage.warning('非新单状态,不能更新数据')
return
}
viewDetailDialogFlag.value = true
break break
case 'setNewSingleStatus': case 'setNewSingleStatus':
// ElMessage.info('设置新单状态')
editStatusDialogFlag.value = true editStatusDialogFlag.value = true
editStatusFormData.value = { editStatusFormData.value = {
status: row.status status: row.status
} }
break break
case 'viewRelated': case 'viewRelated':
// ElMessage.info('查看关联')
viewRelatedDialogFlag.value = true viewRelatedDialogFlag.value = true
break break
case 'generateReport': case 'generateReport':
generateReport(row) generateReport(row)
break break
case 'viewRecord': case 'viewRecord':
ElMessage.info('查看记录') // ElMessage.info('查看记录')
break break
default: default:
break break
...@@ -465,10 +458,15 @@ const generateReport = async (row) => { ...@@ -465,10 +458,15 @@ const generateReport = async (row) => {
fileName, fileName,
'application/pdf;charset=utf-8' 'application/pdf;charset=utf-8'
) )
ElMessage.success('报告生成成功') if (res.code === 200) {
ElMessage.success('报告生成成功')
}else{
ElMessage.error(res.msg || '报告生成失败')
}
// 可以添加下载报告的逻辑 // 可以添加下载报告的逻辑
} catch (error) { } catch (error) {
ElMessage.error(error.message || '报告生成失败') console.error(error.message || '报告生成失败')
} }
} }
......
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