import { Pager } from '/@/api/types/pager';
import { UploadApiResponse } from '/@/api/sys/model/uploadModel';
import type { RemoveEnum } from '/@/enums/removeEnum';

/**
 * @description: 投诉列表接口查询字段
 */
export interface ComplaintsParams extends Pager {
  platform?: string;
  orderNo?: string;
  userName?: string;
  userMobile?: string;
  userEmail?: string;
  tsTime?: string;
  supplier?: string;
  no?: string;
  state?: number | string;
}

/**
 * @description: 投诉列表接口返回字段
 */
export interface ComplaintsData {
  id: number;
  no?: string;
  platform?: string;
  userName?: string;
  userJobno?: string;
  userMobile?: string;
  userEmail?: string;
  orderNo?: string;
  state?: number;
  tsTime?: string;
  tsReason?: string;
  supplier?: string;
  supplierId?: number;
  stateLastdt?: number;
  closed?: number;
  closedDt?: number;
  closedUser?: string;
  handleType?: string;
  handleDesc?: string;
  handleReply?: string;
  handleLastdt?: string;
  handleUser?: string;
  removed?: RemoveEnum;
}

export interface ComplaintsDetailParams {
  id: number;
  busType?: number | string | undefined | null;
  busDesc?: string;
  busText?: string;
  attaches?: UploadApiResponse[];
}

export interface ComplainGetDownItemData {
  id: number;
  content: string;
}

export interface ComplainGetDownData extends ComplainGetDownItemData {
  children: ComplainGetDownItemData[];
}

export interface ComplainCloseData extends ComplaintsDetailParams{
  mainId: string;
  operTime: number;
}
