import request from '@/config/axios' // 车辆续保订单 VO export interface RenewalOrderVO { id: number // 主键ID carBrand: string // 汽车品牌 carModel: string // 车型 licensePlate: string // 车牌号 factoryModel: string // 厂牌型号 invoiceAmount: number // 发票金额 purchaseMileage: number // 购买时公里数 engineNo: string // 发动机号 vin: string // 车架号 invoiceDate: Date // 发票日期 invoiceUrl: string // 发票图片地址 serviceBuyer: string // 服务购买方 carBuyer: string // 车辆购买方 certType: string // 证件类型 mobile: string // 联系电话 certNo: string // 证件号码 contactAddress: string // 联系地址 memberEmail: string // 会员邮箱 storeId: number // 门店ID(关联 tire_store.id) storeName?: string // 门店名称 productId: number // 续保产品ID(关联 car_renewal_product.id) serviceProduct: string // 服务产品 productType: string // 产品类别(来自续保产品) productValidity: string // 产品时效 originalWarrantyYears: string // 原厂质保时长 originalWarrantyMileage: string // 原厂质保里程 productFee: number // 产品费用 settlementMethod: string // 结算方式 remark: string // 备注 inputUser: string // 录单人 contractRemark: string // 合同备注 customerSignatureUrl?: string // 客户签名 idCardFrontUrl?: string // 身份证正面 idCardBackUrl?: string // 身份证反面 drivingLicenseUrl?: string // 行驶证 carInvoiceUrls?: string[] // 购车发票(多张,JSON字符串) purchaseTaxInvoiceUrls?: string[] // 购置税发票(多张,JSON字符串) businessInsurancePolicyUrls?: string[] // 商业险保单(多张,JSON字符串) certificateOfConformityUrl?: string // 合格证 odometerPhotoUrl?: string // 里程表照片 nameplatePhotoUrl?: string // 车名牌照片 } // 车辆续保订单 API export const RenewalOrderApi = { // 查询车辆续保订单分页 getRenewalOrderPage: async (params: any) => { return await request.get({ url: `/car/renewal-order/page`, params }) }, // 查询车辆续保订单详情 getRenewalOrder: async (id: number) => { return await request.get({ url: `/car/renewal-order/get?id=` + id }) }, // 新增车辆续保订单 createRenewalOrder: async (data: RenewalOrderVO) => { return await request.post({ url: `/car/renewal-order/create`, data }) }, // 修改车辆续保订单 updateRenewalOrder: async (data: RenewalOrderVO) => { return await request.put({ url: `/car/renewal-order/update`, data }) }, // 删除车辆续保订单 deleteRenewalOrder: async (id: number) => { return await request.delete({ url: `/car/renewal-order/delete?id=` + id }) }, // 导出车辆续保订单 Excel exportRenewalOrder: async (params) => { return await request.download({ url: `/car/renewal-order/export-excel`, params }) } , // 生成在线合同 PDF 并上传(回写 contractUrl) generateContract: async (id: number) => { return await request.post({ url: `/car/renewal-order/generate-contract`, params: { id } }) }, // 生成合同 HTML(用于预览) generateContractHtml: async (id: number) => { return await request.get({ url: `/car/renewal-order/generate-contract-html?id=` + id }) }, // 创建线上签名令牌 createSignToken: async (id: number) => { return await request.post({ url: `/car/renewal-order/create-sign-token`, params: { id } }) }, // 清空订单合同与客户签名(重新生成合同时先清空再扫码签名) clearContractAndSignature: async (id: number) => { return await request.post({ url: `/car/renewal-order/clear-contract-sign`, params: { id } }) }, // 身份证识别(用于图片识别新增) recognizeIdcard: async (file: File, idCardSide: 'front' | 'back' = 'front') => { const formData = new FormData() formData.append('file', file) formData.append('idCardSide', idCardSide) return await request.upload({ url: '/car/renewal-order/recognize-idcard', data: formData }) }, // 机动车销售发票识别(用于图片识别新增) recognizeVehicleInvoice: async (file: File) => { const formData = new FormData() formData.append('file', file) return await request.upload({ url: '/car/renewal-order/recognize-vehicle-invoice', data: formData }) } }