/** 基础响应类型 */
export interface BaseResponse<T = any> {
  code: number
  message: string
  data: T
}

/** 获取openId响应类型 */
export type GetOpenIdResponse = string

/** 登录请求参数类型 */
export interface LoginRequest {
  openId: string
  avatarUrl: string
  userName: string
}

/** 登录响应类型 */
export interface LoginResponse {
  /** 用户ID */
  id?: number
  /** 用户token */
  'x-token'?: string
  /** 账户余额，展示在个人信息页面 */
  points?: string
  /** 退款状态 */
  refundStatus?: string
  /** 手机号 */
  phone?: string
  /** 头像URL */
  avatar?: string
  /** 昵称 */
  nickName?: string
  /** 生日，日期Date类型 */
  birthday?: string
  /** 工作地址 */
  workArea?: string
  /** 工作省份名称 */
  workProvinceName?: string
  /** 工作城市名称 */
  workCityName?: string
  /** 工作区县名称 */
  workCountryName?: string
  /** 户籍地址 */
  householdArea?: string
  /** 婚姻状况 (1-未婚, 2-离异, 3-丧偶) */
  maritalStatus?: string
  /** 身高，单位：米 */
  height?: number
  /** 体重，单位：千克 */
  weight?: number
  /** 学历 (1-初中, 2-高中, 3-大专, 4-本科, 5-硕士, 6-博士) */
  education?: string
  /** 月收入 1-3000以下 2-3000~5000 3-5000~8000 4-8000~10000 5-10000~20000 6-20000以上 */
  monthlyIncome?: string
  /** 职业 */
  profession?: string
  /** 住房情况（1-已购房(有贷款) 2-已购房(无贷款) 3-有能力购房 4-无房 5-无房希望对方解决 6-无房希望双方解决 7-与父母同住 8-独自租房 9-与人合租 10-住单位房） */
  housingStatus?: string
  /** 购车情况（1-无车 2-已购车(经济型) 3-已购车(中档型) 4-已购车(豪华型) 5-单位用车 6-需要时购置） */
  carOwnership?: string
  /** 期望结婚时间（1-随时 2-半年内 3-一年内 4-两年内 5-三年内） */
  expectedMarriageTime?: string
  /** 自我介绍 */
  selfIntroduction?: string
  /** 微信 */
  wechat?: string
  /** 微信二维码url */
  wechatQrcode?: string
  /** QQ号 */
  qq?: string
  /** 邮箱 */
  email?: string
  /** 父母状况（1-父母均建在 2-只有母亲建在 3-只有父亲建在 4-父母均以离世） */
  parentsStatus?: string
  /** 兄弟姐妹 (1-独生子女 2-2 3-3 4-4 5-5） */
  siblings?: string
  /** 与Ta父母住（1-愿意 2-不愿意 3-视具体情况而定 4-尊重伴侣意见） */
  liveWithParents?: string
  /** 是否吸烟（1-是 0-否） */
  smoke?: number
  /** 婚娶形式（1-嫁娶 2-两顾 3-上门） */
  marriageForm?: string
  /** 是否饮酒（1-是 0-否） */
  drink?: number
  /** 子女情况（1-未育 2-子女归自己 3-子女归对方） */
  childrenStatus?: string
  /** 养宠物情况（多选）（猫，狗，鸟，鱼，兔，鼠，乌龟，蛇，爬行动物，另类动物，不喜欢养，可能会养，过敏） */
  pets?: string
  /** 兴趣爱好 */
  hobbies?: string
  /** 血型（A B AB O 其他） */
  bloodType?: string
  /** 作息习惯（早睡早起很规律，经常夜猫子，总是早起鸟，偶尔懒散一下，没有规律） */
  sleepHabits?: string
  /** 民族 */
  nation?: string
  /** 毕业院校 */
  graduationSchool?: string
  /** 锻炼习惯（每天锻炼，每周至少一次，每月几次，没时间锻炼，集中时间锻炼，不喜欢锻炼） */
  exerciseHabits?: string
  /** 工作行业 */
  workIndustry?: string
  /** 单位类型（政府机关，事业单位，外资企业，合资企业，国营企业，私营企业，自有公司，其他） */
  companyType?: string
  /** 工作单位 */
  workUnit?: string
  /** 我的标签（多选）（孝顺，酷，责任心，经济适用，憨直，感性，事业，睿智，猥琐，幽默，旅行，宅男，体贴，有魄力，仗义，稳重） */
  tags?: string
  /** 房产位置（多选）（市区 城区有房 老家有房） */
  propertyLocation?: string
  /** 期望婚况（多选）（1-未婚 2-离异 3-丧偶） */
  partnerMaritalStatus?: string
  /** 期望年龄范围 20-23 */
  ageRange?: string
  /** 期望身高范围 160-180 */
  heightRange?: string
  /** 期望最低学历（1-初中 2-高中 3-大专 4-本科 5-硕士 6-博士） */
  minEducation?: string
  /** 期望月收入 1-3000以下 2-3000~5000 3-5000~8000 4-8000~10000 5-10000~20000 6-20000以上 */
  minIncome?: string
  /** 期望工作地区,选省份代码 */
  partnerWorkArea?: string
  /** 期望其他要求 */
  otherRequirements?: string
  /** 创建时间 */
  createTime?: string
  /** 更新时间 */
  updateTime?: string
  /** 邀请人id */
  inviterId?: string
}

/** 用户信息类型 */
export type UserInfo = LoginResponse

/** 更新用户信息请求参数类型 */
export type UpdateUserInfoRequest = Partial<UserInfo>

/** 邀请用户列表项类型 */
export interface InviteUserItem {
  id: string
  nickname: string
  child: {
    id: string
    nickname: string
  }[]
}

/** 用户消费明细类型 */
export interface SpendHistoryItem {
  id: string
  spendPrice: string
  spendType: number
  createTime: string
}

export interface PayInfoList {
  id: string
  payPoints: string
  createTime: string
  orderNo: string
}

/** 获取邀请码响应类型 */
export type GetInviteCodeResponse = string

/** 退款记录类型 */
export interface RefundInfoList {
  id: string
  refundPoints: string
  refundReason: string
  refundStatus: string
  createTime: string
  auditTime: string
}
