import request from '@/config/axios'

// 客户拜访记录 VO
export interface InfoVO {
  id: number // 主键ID
  customerName: string // 客户姓名
  contact: string // 联系方式（客户手机号）
  companyName: string // 客户公司名称
  provinceName: string // 省名称
  cityName: string // 市名称
  areaName: string // 区名称
  locationText: string // 定位地址文字描述
  longitude: number // 经度
  latitude: number // 纬度
  locationImage: string // 定位静态图URL
  visitDate: Date // 拜访日期
  customerStatus: number // 性质等级
  visitProductIds: string // 拜访品种（多选，逗号分隔）
  visitMethod: number // 拜访方式（字典）
  visitType: number // 拜访类型（字典）
  serviceContent: string // 服务内容
  customerFeedback: string // 客户反馈
  serviceImages: string // 服务记录图片URL列表（JSON数组）
}

// 客户拜访记录 API
export const InfoApi = {
  // 查询客户拜访记录分页
  getInfoPage: async (params: any) => {
    return await request.get({ url: `/visit/info/page`, params })
  },

  // 查询客户拜访记录详情
  getInfo: async (id: number) => {
    return await request.get({ url: `/visit/info/get?id=` + id })
  },

  // 新增客户拜访记录
  createInfo: async (data: InfoVO) => {
    return await request.post({ url: `/visit/info/create`, data })
  },

  // 修改客户拜访记录
  updateInfo: async (data: InfoVO) => {
    return await request.put({ url: `/visit/info/update`, data })
  },

  // 删除客户拜访记录
  deleteInfo: async (id: number) => {
    return await request.delete({ url: `/visit/info/delete?id=` + id })
  },

  // 导出客户拜访记录 Excel
  exportInfo: async (params) => {
    return await request.download({ url: `/visit/info/export-excel`, params })
  },
}
