import request from '@/utils/axios' // 接口类型定义 export interface ActivityInfo { activityName: string activityStartTime: string activityEndTime: string money: number status: number } export interface OcrUploadResponse { uploadId: string } export interface OcrParseResponse { raw: string words: string[] parsed: { marriageNo: string husbandName: string wifeName: string registerDate: string } } export interface MarriageCodeDTO { marriageNo?: string receiveName?: string receiveMobile?: string code?: string smsCode?: string signImage?: string salesNo?: string dataTime?: string } export interface MarriageCodeVO { code: string status: number marriageNo: string | null receiveName: string | null receiveMobile: string | null receiveTime: string | null salesNo?: string } export interface MarriageCodeListVO { codeList: MarriageCodeVO[] receiveCount: string receiveAmount: string } export interface CommSmsDTO { mobile: string type: 0 | 1 | 2; // 0=登录;1=兑换领取;2=OCR识别 } // API服务实现 export const apiService = { // 活动介绍页 // 获取当前活动信息 getCurrentActivity() { return request.get('/marriage/activity/current') }, // OCR识别相关接口 // 上传OCR图片 uploadOcrImage(formData: FormData) { return request.post('/marriage/ocr/upload', formData, { headers: { 'Content-Type': 'multipart/form-data', }, }) }, // 发送短信验证码 sendSms(data: CommSmsDTO) { return request.post('/marriage/common/sms', data) }, // OCR识别并返回证件信息 parseOcrInfo(data: { mobile: string smsCode: string uploadId: string }) { return request.post('/marriage/ocr/parse', data) }, // 领取流程相关接口 // 领取前校验(生成二维码前的校验与预览) receiveCheck(data: MarriageCodeDTO) { return request.post('/marriage/receiveCheck', data) }, // 确认领取(落库并置为已核销) receiveCode(data: MarriageCodeDTO) { return request.post('/marriage/receiveCode', data) }, // 二维码状态相关接口 // 按站点号与月份分页统计列表 getCodeList(data: { salesNo: string page: number size: number dataTime?: string }) { return request.post('/marriage/codeList', data) }, // 按核销码查询状态 getCodeStatus(data: { code: string }) { return request.post('/marriage/code/status', data) }, // 兑奖页面相关接口 // 根据核销码获取领取信息(用于自动带出) getCodeInfo(data: { code: string }) { return request.post('/marriage/code/info', data) }, // 站点登录相关接口 // 登录 login(data: { mobile: string password?: string smsCode?: string }) { return request.post('/marriage/common/login', data) }, // 后台活动管理接口(可选,用于管理端) // 获取活动列表 getActivityList() { return request.post('/admin/activity/list') }, } export default apiService