export interface CustomerVO {
    keywords: string;
    /**
     * 客户主键
     */
    id: string | number;

    /**
     * 客户种类（1客户、2线索）
     */
    customerForm: number;

    /**
     * 是否从线索过来（0否，1是）
     */
    hasFromCustomer: number;

    /**
     * 是否是公共线索/公海客户（0不是，1是）
     */
    hasPublicCustomer: number;

    /**
     * 客户代码
     */
    dataCode: string;

    /**
     * 客户代码
     */
    customerCode: string;

    /**
     * 所属大洲
     */
    continent: string;

    /**
     * 所属国家
     */
    country: string;

    /**
     * 归属人员姓名
     */
    ownerByName: string;

    /**
     * 客户名称
     */
    customerName: string;

    /**
     * 意向产品id，逗号隔开（产品来源：官网后台）
     */
    intendedProductsIds: string | number;

    /**
     * 意向产品名称，逗号隔开（产品来源：官网后台）
     */
    intendedProductsNames: string;

    /**
     * 客户状态id（对应字典客户状态id）
     */
    customerStatusDictId: string | number;

    customerStatusDictValue: string;

    clueStatusDictValue: string;

    customerStatusName: string;

    clueStatusName: string;

    /**
     * 客户来源id（对应字典客户来源id）
     */
    customerSourceDictId: string | number;

    customerSourceDictValue: string;

    /**
     * 客户类型id（对应字典客户类型id）
     */
    customerTypeDictId: string | number;

    /**
     * 客户等级id（对应字典客户等级id）
     */
    customerLevelDictId: string | number;

    /**
     * 客户信用等级id（对应字典客户信用等级id）
     */
    customerCreditLevelDictId: string | number;

    /**
     * 客户经济性质id（对应字典客户经济性质id）
     */
    customerEconomicNatureDictId: string | number;

    /**
     * 助记名称
     */
    mnemonicName: string;

    /**
     * 备注信息
     */
    remarks: string;
    /**
     * 备注信息
     */
    remark: string;

    /**
     * 开户行
     */
    openingBank: string;

    /**
     * 税号
     */
    taxNumber: string;


    /**
     * 银行账号
     */
    bankAccount: string;

    /**
     * 是否删除：0未删除，1已删除
     */
    isDelete: number;

    /**
     * 是否重点关注
     */
    hasFollow: boolean;

    /**
     * 是否启用:1:启用,0:不启用
     */
    enabled: number | string | undefined;

    /**
     * 拥有者
     */
    ownerBy: number;

    /**
     * 显示顺序
     */
    sort: number;

    /**
     * 下次跟进时间
     */
    nextFollowUpTime: string;

    /**
     * 未跟进天数
     */
    notFollowedDays: string;

    /**
     * 上一个客户
     */
    previousId: string;

    /**
     * 下一个客户
     */
    nextId: string;


    /**
     * 联系人
     */
    liaison: {
        id?: string;
        name?: string;
        call?: number;
        callName?: string;
        liaisonRoleDictValue?: string;
        departmentPosition?: string;
        address?: string;
        birthday?: string;
        email?: string;
        email1?: string;
        email2?: string;
        email3?: string;
        linkedin?: string;
        facebook?: string;
        whatsapp?: string;
        telephone?: string;
        twitter?: string;
        faxNumber?: string;
        postcode?: string;
        qq?: string;
        skype?: string;
        wangwang?: string;
        wechat?: string;
        remarks?: string;
        hasPrimaryLialison?: boolean
        liaisonRoleName: string;
        fixedLineTelephone: string;
        homeElectricity: string;
        ownerBy?: number | string;
        ownerByName?: string;
    }

    /**
     * 企业信息
     */
    customerCompany: {
        name?: string;
        address?: string;
        communicationAddress?: string;
        customerId?: number;
        email?: string;
        email1?: string;
        email2?: string;
        email3?: string;
        faxNumber?: string;
        industry?: string;
        postcode?: string;
        scaleDictValue?: any;
        telephone?: string;
        website?: string;
        website1?: string;
        website2?: string;
        website3?: string;
        scaleName?: string;
        remark?: string;
    },

    createByName: string;

    deptName: string;

    updateTime: string;

    createTime: string;

    lastFollowUpTime: string;

    customerTypeDictValue: string;

    customerTypeName: string;

    customerLevelDictValue: string;

    customerLevelName: string;

    customerSourceName: string;

    customerEconomicNatureName: string;

    customerCreditLevelName: string;

    customerStatusValue: string;
    owenByName: string;
    collaboratorName: string;
    formerOwnerByName: string;
    formerDeptName: string;
    // 保护到期时间
    protectionDate: string;
}

export interface CustomerForm extends BaseEntity {
    errorCanSaveVOList?: any
    /**
     * 客户归属分类
     */
    customerBelongType?: any,
    id?: any,
    fromId?: any;
    /**
     * 客户名称
     */
    customerName?: string;
    customerCode?: string;
    /**
     * 归属人员
     */
    ownerByName?: string;
    ownerBy?: any;
    bankAccount?: string;
    continent?: string;
    country?: string;
    dataCode?: string;
    customerCreditLevelDictValue?: string;
    customerEconomicNatureDictValue?: string;
    clueStatusDictValue?: string;
    customerForm?: number;
    customerLevelDictValue?: string;
    customerSourceDictValue?: string;
    customerStatusDictValue?: string;
    customerTypeDictValue?: string;
    hasFromClue?: boolean;
    hasPublicCustomer?: boolean;
    intendedProductsIds?: string;
    intendedProductsNames?: string;
    mnemonicName?: string;
    openingBank?: string;
    remarks?: string;
    taxNumber?: string;
    nextFollowUpTime?: string;
    followUpTime?: string;
    remark?: string;
    cooperativeCustomerId?: string;
    cooperativeCustomerName?: string;
    standbyList?: any;
    standbyCompanyList?: any;
    standbyWebsiteList?: any;
    /**
     * 联系人信息
     */
    liaison?: {
        id?: string;
        name?: string;
        call?: number | string;
        liaisonRoleDictValue?: string;
        departmentPosition?: string;
        address?: string;
        birthday?: string;
        email?: string;
        linkedin?: string;
        facebook?: string;
        whatsapp?: string;
        telephone?: string;
        twitter?: string;
        faxNumber?: string;
        postcode?: string;
        qq?: string;
        skype?: string;
        wangwang?: string;
        wechat?: string;
        remark?: string;
        hasPrimaryLialison?: boolean
        fixedLineTelephone?: string;
        homeElectricity?: string;
        internationalArea?: string;
        ownerBy?: number | string;
        ownerByName?: string;
        email1?: string;
        email2?: string;
        email3?: string;
    }
    /**
     * 企业信息
     */
    customerCompany?: {
        name?: string;
        address?: string;
        communicationAddress?: string;
        customerId?: number;
        email?: string;
        email1?: string;
        email2?: string;
        email3?: string;
        faxNumber?: string;
        industry?: string;
        postcode?: string;
        scaleDictValue?: any;
        telephone?: string;
        website?: string;
        website1?: string;
        website2?: string;
        website3?: string;
    }
    // 任务信息
    task?: {
        taskBeginTime?: string,
        taskContent?: string,
        remindModels?: string[],
        remindType?: string,
        ownerBy?: string
        objectiveValue?: number | string;
        isCreateTask?: boolean
    }
}

export interface CustomerQuery {
    hasFromClue?: boolean;
    commonScope?: number;
    commonScopeType?: string;
    /**
     * 搜索关键词
     */
    blurry?: string;

    /**
     * 类型 10客户、11线索
     */
    customerForm?: number | string;

    /**
     * 是否是公共客户/公共线索
     */
    hasPublicCustomer?: string | number;

    /**
     * 是否是垃圾客户
     */
    hasGarbageCustomer?: boolean | number;

    /**
     * 客户状态
     */
    customerStatusDictValue?: string;

    /**
     * 客户类型
     */
    customerTypeDictValue?: string;

    /**
     * 客户等级
     */
    customerLevelDictValue?: string;

    /**
     * 最后跟进时间
     */
    lastFollowUpTime?: string;

    queryRangeType?: string | number;

    customerSourceDictValue?: string;

    clueStatusDictValue?: string;

    ownerBy?: string;
    ownerByIds?: string[];

// 跟进时间查询开始时间
    lastFollowUpBeginTime?: string;

// 跟进时间查询结束时间
    lastFollowUpEndTime?: string;
    pageSize?: string | number;

    // 是否有订单（成交客户，0没有，1有）
    hasOrderForm?: string | number;
    // 跟进模式
    hasFollowMode?: boolean;
    customerName?: string;
    liaisonName?: string;
    beginCycleTime?: string;
    endCycleTime?: string;
    deptId?: string,
    country?: string,
    // 前归属人员
    formerOwnerByList?: string | number;
    // 置公原因
    reasonPublicCustomerDictValue?: string | number;
}





