You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
91 lines
2.3 KiB
91 lines
2.3 KiB
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' })
|
|
}
|
|
|