import type { PageParam } from '@/api/index';
import type {CompanyParameter} from "@/api/system/companyParameter/model";
import type {CompanyUrl} from "@/api/system/companyUrl/model";
import type {CompanyGit} from "@/api/system/companyGit/model";

/**
 * 企业信息
 */
export interface Company {
  companyId?: number;
  type?: number;
  menuId?: number;
  shortName?: string;
  companyName?: string;
  companyType?: number;
  companyTypeMultiple?: string;
  appType?: string;
  companyLogo?: string;
  image?: string;
  content?: string;
  files?: any;
  companyCode?: string;
  domain?: string;
  phone?: string;
  tel?: string;
  email?: string;
  InvoiceHeader?: string;
  startTime?: string;
  expirationTime?: string;
  version?: number;
  versionName?: string;
  versionCode?: string;
  members?: number;
  storage?: string;
  storageMax?: string;
  buys?: number;
  clicks?: number;
  users?: number;
  departments?: number;
  industryParent?: string;
  industryChild?: string;
  country?: string;
  province?: string;
  city?: string;
  region?: string;
  address?: string;
  latitude?: string;
  longitude?: string;
  businessEntity?: string;
  comments?: any;
  authentication?: number;
  industryId?: number;
  industryName?: string;
  status?: number;
  userId?: number;
  official?: boolean;
  price?: number;
  chargingMethod?: number;
  planId?: number;
  sortNumber?: number;
  authoritative?: boolean;
  merchantId?: number;
  tenantId?: number;
  tenantName?: string;
  tenantCode?: string;
  modules?: string;
  requestUrl?: string;
  socketUrl?: string;
  serverUrl?: string;
  modulesUrl?: string;
  merchantUrl?: string;
  websiteUrl?: string;
  mpWeixinCode?: string;
  mpAlipayCode?: string;
  h5Code?: string;
  androidUrl?: string;
  iosUrl?: string;
  avatar?: string;
  nickname?: string;
  code?: number;
  createTime?: string;
  updateTime?: string;
  password?: string;
  password2?: string;
  collection?: boolean;
  recommend?: boolean;
  title?: string;
  parentName?: string;
  categoryName?: string;
  rate?: number;
  isBuy?: boolean;
  installed?: boolean;
  parameters?: CompanyParameter[];
  links?: CompanyUrl[];
  accounts?: CompanyUrl[];
  gits?: CompanyGit[];
}

/**
 * 企业信息搜索条件
 */
export interface CompanyParam extends PageParam {
  companyId?: number;
  type?: any;
  official?: boolean;
  shortName?: string;
  companyName?: string;
  domain?: string;
  authoritative?: number;
  authentication?: number;
  industryParent?: string;
  industryChild?: string;
  province?: string;
  city?: string;
  region?: string;
  version?: number;
  status?: number;
  recommend?: boolean;
  collection?: boolean;
}
