import { request,noLoginRequest } from "../utils/request"; /** * 是否需要保险提示 * @author zjp */ export function enterpriseInsComInsPromptInitEnterpriseIns(data) { return request('/enterprise/ins/com-ins/prompt-init-enterprise-ins', { method: 'POST', data: data || {} }); } //企业保险查询分页 export function comInsGetComInsPage(data) { return request('/enterprise/ins/com-ins/get-com-ins-page', { method: 'POST', data }); } //线下保单添加备注 export function comInsUpdateComInsRemark(data) { return request('/enterprise/ins/com-ins/update-com-ins-remark', { method: 'POST', data }); } //企业保险查询分页 export function getOnlineInsBlbReportPageLink(data) { return request('/enterprise/ins/com-ins/get-online-ins-blb-report-page-link', { method: 'POST', data }); } //方案书分页查询 export function enterpriseInsComInsGetInsBootPage(data) { return request('/enterprise/ins/com-ins/get-ins-boot-page', { method: 'POST', data }); } //保全链接生成 export async function enterpriseInsComInsGetOnlineInsBlbPreservationLink(data) { return request( '/enterprise/ins/com-ins/get-online-ins-blb-preservation-link', { method: 'POST', async: false, data } ); } //获取在线保险链接 export function getOnlineInsBlbLink(data) { return request('/enterprise/ins/com-ins/get-online-ins-blb-link', { method: 'POST', data }); } //获得百联保保险产品列表链接生成带cacheId export function getCompnayAndPersonPutCacheLink(data) { return request('/enterprise/ins/com-ins/get-compnay-and-person-put-cache-link', { method: 'POST', data }); } //获取在线保险链接 export function getOnlineInsBlbDetailLink(data) { return request('/enterprise/ins/com-ins/get-online-ins-blb-detail-link', { method: 'POST', data }); } //查询线下或线上保险列表 export function findOfflineOrOnlinePolicy(data) { return request('/enterprise/ins/com-ins/find-offline-or-online-policy', { method: 'POST', data }); } //关联线上保险 export function addPreservationService(data) { return request('/enterprise/ins/com-ins/save-ins-blb-add-preservation-service', { method: 'POST', data }); } //批量模板上传人员线上做增员 export function tempBatchInsPerToAddPreservationService(data) { return request('/enterprise/ins/com-ins/temp-batch-ins-per-to-add-preservation-service', { method: 'POST', data }); } //批量模板上传人员关联线下保单 export function tempBatchInsPerToRelevance(data) { return request('/enterprise/ins/com-ins/temp-batch-ins-per-to-relevance', { method: 'POST', data }); } //获得百联保保险产品列表链接生成带cacheId(批量模板上传人员) export function getCompnayAndTempBatchInsPerPutCache(data) { return request('/enterprise/ins/com-ins/get-compnay-and-temp-batch-ins-per-put-cache', { method: 'POST', data }); } //关联线下保险 export function addBatchRelevancePer(data) { return request('/enterprise/ins/com-ins/add-batch-relevance-per', { method: 'POST', data }); } //根据条件查询已投保未录入的人员信息 export function findNotIncludedInsurancePerList(data) { return request('/enterprise/ins/com-ins/find-not-included-insurance-per-list', { method: 'POST', data }); } //选择在保未录入列表人员做减员保全 export function saveInsBlbMinusPreservationByNotIncluded(data) { return request('/enterprise/ins/com-ins/save-ins-blb-minus-preservation-by-not-included', { method: 'POST', data }); } //查询保单已关联在保人员数量 export function findUnderWarrantyPerListCount(data) { return request('/enterprise/ins/com-ins/find-under-warranty-per-list-count', { method: 'POST', data }, false, true); } //选择订单和人员信息推送到百联保做减员保全 export function saveInsBlbMinusPreservationService(data) { return request('/enterprise/ins/com-ins/save-ins-blb-minus-preservation-service', { method: 'POST', data }); } //查询在保人员离职人数 export function findYIncumbencyPerCount(data = {}) { return request('/enterprise/ins/com-ins/find-y-incumbency-per-count', { method: 'POST', data }); } //人员批量减员线下保单 export function minusBatchRelevancePer(data) { return request('/enterprise/ins/com-ins/minus-batch-relevance-per', { method: 'POST', data }); } //根据条件查询已投保的人员信息 export function findUnderWarrantyPerList(data) { return request('/enterprise/ins/com-ins/find-under-warranty-per-list', { method: 'POST', data }); } //删除企业保险 export function comInsDeleteComInsUnderline(data) { return request('/enterprise/ins/com-ins/delete-com-ins-underline', { method: 'POST', data }); } //企业保险详情 export function comInsGetComInsDetail(data) { return request('/enterprise/ins/com-ins/get-com-ins-detail', { method: 'POST', data }); } //新增企业保险 export function comInsInsertComInsUnderline(data) { return request('/enterprise/ins/com-ins/insert-com-ins-underline', { method: 'POST', data }); } //获取线上人员参保列表 export function enterpriseInsComInsGetOnlineInsPerList(data) { return request('/enterprise/ins/com-ins/get-online-ins-per-list', { method: 'POST', data }); } //订单列表页面链接生成 export function getOnlineInsBlbOrderPageLink(data = {}) { return request('/enterprise/ins/com-ins/get-online-ins-blb-order-page-link', { method: 'POST', data }); } //分页查询保险负责人列表 export function selectPrincipalByComId(data) { return request('/enterprise/ins/com-ins/select-principal-by-comId', { method: 'POST', data }); } //批量插入保险负责人 添加负责人 export function insertBatchPrincipal(data) { return request('/enterprise/ins/com-ins/insert-batch-principal', { method: 'POST', data }); } //批量删除保险负责人 删除负责人 export function delBatchPrincipal(data) { return request('/enterprise/ins/com-ins/del-batch-principal', { method: 'POST', data }); } //获取保全缴费记录 export function findUninsuredPerList(data) { return request( '/enterprise/ins/com-ins/find-uninsured-per-list', { method: 'POST', data: data || {} } ); } //获取保全缴费记录 export function enterpriseInsComInsGetOnlineInsBlbPreservationPageLink(data) { return request( '/enterprise/ins/com-ins/get-online-ins-blb-preservation-page-link', { method: 'POST', data: data || {} } ); } // 得到保障项目信息 export function getInsProjects(data) { return noLoginRequest('/public/common/get-ins-projects', { method: 'POST', data }); } // OCR识别保单文档(本地开发服务器) export function ocrRecognizePolicyDocumentLocal(data) { return request('http://localhost:8080/api/v2/recogInvoive.do', { method: "post", headers: { 'Content-Type': 'multipart/form-data' }, data }); } // OCR识别保单文档(使用百度通用文字识别高精度版) export async function ocrRecognizePolicyDocument(data) { try { // 导入百度OCR API调用和解析功能 const { recognizeInsurancePolicy } = await import('./api_ocr'); console.log('API loaded successfully', process.env); // 准备OCR参数 const ocrParams = { detect_direction: false, paragraph: false, probability: false, multidirectional_recognize: false, }; // 根据FormData中的数据类型设置不同的参数 if (data.get('fileBase64')) { // 如果是base64格式的数据 ocrParams.pdf_file = data.get('fileBase64'); console.log('使用base64格式的图像数据进行OCR识别'); } else if (data.get('fileUrl')) { // 如果是URL格式的数据 ocrParams.url = data.get('fileUrl'); console.log('使用URL格式的图像数据进行OCR识别'); } else if (data.get('file')) { // 如果是文件对象 // 需要将文件对象转换为base64格式 const file = data.get('file'); if (typeof file === 'string') { // 如果file是字符串(可能是URL),直接使用 ocrParams.url = file; console.log('使用文件URL进行OCR识别'); } else { // 如果file是文件对象,需要读取文件内容并转换为base64 const reader = new FileReader(); const fileBase64 = await new Promise((resolve, reject) => { reader.onload = () => resolve(reader.result.split(',')[1]); reader.onerror = reject; reader.readAsDataURL(file); }); ocrParams.pdf_file = fileBase64; console.log('使用文件对象转换为base64格式进行OCR识别'); } } else { throw new Error('未提供有效的图像数据'); } // 调用百度OCR API并解析结果 const result = await recognizeInsurancePolicy(ocrParams); return { retType: '0', data: result }; } catch (error) { console.error('保单OCR识别失败:', error); return { retType: '1', msg: error.message || '保单OCR识别失败', error }; } } //查询临保项目列表 export function getLianbaoProList(data) { return request( '/enterprise/ins/com-ins/find-com-project-list', { method: 'POST', data: data || {} } ); }