import request from '@/utils/request' export interface ContractTemplate { id: number contract_name: string contract_template: string contract_status: string contract_type: string created_at: string } export interface PlaceholderConfig { id: number contract_id: number placeholder: string table_name: string field_name: string field_type: string is_required: number default_value: string } export interface ContractDistribution { id: number contract_name: string personnel_name: string type: number status: string source_type: string created_at: string sign_time: string } export interface GenerateLog { id: number contract_name: string user_name: string user_type: number status: string created_at: string completed_at: string error_msg: string } // 模板管理API export const contractTemplateApi = { // 获取模板列表 getList: (params: any) => request.get('/document_template/lists', { params }), // 上传模板 uploadTemplate: (data: FormData) => request.post('/document_template/upload', data, { headers: { 'Content-Type': 'multipart/form-data' } }), // 获取占位符配置 getPlaceholderConfig: (contractId: number) => request.get(`/document_template/info/${contractId}`), // 保存占位符配置 savePlaceholderConfig: (contractId: number, data: any) => request.post(`/document_template/config/save`, data), // 更新模板状态 updateStatus: (id: number, status: string) => request.post(`/document_template/update_status/${id}`, { contract_status: status }), // 删除模板 delete: (id: number) => request.delete(`/document_template/delete/${id}`) } // 合同分发API export const contractDistributionApi = { // 获取分发记录 getList: (params: any) => request.get('/contract_distribution/lists', { params }), // 手动分发 manualDistribute: (data: any) => request.post('/contract_distribution/manual_distribute', data), // 获取人员列表 getPersonnelList: (params: any) => request.get('/contract_distribution/available_personnel', { params }) } // 生成记录API export const generateLogApi = { // 获取生成记录 getList: (params: any) => request.get('/document_generate/lists', { params }), // 下载生成的文档 downloadDocument: (id: number) => request.get(`/document_generate/download/${id}`, { responseType: 'blob' }) }