package bean

/*
*
活动列表
https://flash.flashxsport.com/flash/activity/list?pageNo=1&pageSize=6&sortRule=0&latitude=39.92190170288086&longitude=116.44355010986328&area=&city=%E5%8C%97%E4%BA%AC&nearby=&date=&levelLower=1&levelUpper=9&sportId=1&isQueryFreePlayAct=0
*/
type ActivityRecord struct {
	Success bool   `json:"success"`
	Message string `json:"message"`
	Code    int    `json:"code"`
	Result  struct {
		Records []struct {
			Data any `json:"data"`
			Type int `json:"type"`
		} `json:"records"`
	} `json:"result"`
}

type ActivityMemberDto struct {
	ClubMemberId          interface{} `json:"clubMemberId"`
	GroupId               interface{} `json:"groupId"`
	GroupName             interface{} `json:"groupName"`
	UserID                int64       `json:"userId"`
	Avatar                string      `json:"avatar"`
	Nickname              interface{} `json:"nickname"`
	Realname              interface{} `json:"realname"`
	Sex                   interface{} `json:"sex"`
	Phone                 interface{} `json:"phone"`
	Level                 interface{} `json:"level"`
	IsSubstitute          interface{} `json:"isSubstitute"`
	CancelStatus          interface{} `json:"cancelStatus"`
	HangPeopleCount       int         `json:"hangPeopleCount"`
	PayStatus             interface{} `json:"payStatus"`
	PayType               interface{} `json:"payType"`
	PayAmount             interface{} `json:"payAmount"`
	IsReport              interface{} `json:"isReport"`
	CreateTime            interface{} `json:"createTime"`
	CreateTimeS           interface{} `json:"createTimeS"`
	IsReplace             interface{} `json:"isReplace"`
	MemberID              int64       `json:"memberId"`
	TargetId              interface{} `json:"targetId"`
	IsHangPeople          int         `json:"isHangPeople"`
	MemberType            interface{} `json:"memberType"`
	ApplyRemark           interface{} `json:"applyRemark"`
	ReplaceUserAvatar     interface{} `json:"replaceUserAvatar"`
	ReplaceUid            interface{} `json:"replaceUid"`
	ClubDiscountLevel     interface{} `json:"clubDiscountLevel"`
	RemarkDesc            interface{} `json:"remarkDesc"`
	RemarkExample         interface{} `json:"remarkExample"`
	ActApplyRemarkDtoList interface{} `json:"actApplyRemarkDtoList"`
	IsCurrBuyedInsure     interface{} `json:"isCurrBuyedInsure"`
	InsurePlanId          interface{} `json:"insurePlanId"`
	EnrollChannel         interface{} `json:"enrollChannel"`
	EnrollId              interface{} `json:"enrollId"`
	TrackProjectNames     interface{} `json:"trackProjectNames"`
	HangPeopleList        interface{} `json:"hangPeopleList"`
	IsFirstJoin           interface{} `json:"isFirstJoin"`
	IsHitInfo             int         `json:"isHitInfo"`
	YxsRank               interface{} `json:"yxsRank"`
	IsFlashRank           interface{} `json:"isFlashRank"`
}

type RandUser struct {
	IsClub       int           `json:"isClub"`
	UserCount    int           `json:"userCount"`
	RandUserList []interface{} `json:"randUserList"`
}

type OrganizerInfoDto struct {
	OrganizeType        int         `json:"organizeType"`
	OrganizerName       string      `json:"organizerName"`
	OrganizerAvatar     string      `json:"organizerAvatar"`
	ClubId              int         `json:"clubId"`
	CertificationType   interface{} `json:"certificationType"`
	AvgEvaluateScore    int         `json:"avgEvaluateScore"`
	EvaluateCount       int         `json:"evaluateCount"`
	IsBadmintonBadge    interface{} `json:"isBadmintonBadge"`
	InsureBadge         int         `json:"insureBadge"`
	InsureSubBadge      interface{} `json:"insureSubBadge"`
	ClubBadge           int         `json:"clubBadge"`
	MainLevel           int         `json:"mainLevel"`
	SubLevel            int         `json:"subLevel"`
	AaEstimateAmount    float64     `json:"aaEstimateAmount"`
	IsHaveYxs           interface{} `json:"isHaveYxs"`
	IsFreePlayRisk      interface{} `json:"isFreePlayRisk"`
	FreePlayRiskEndDate interface{} `json:"freePlayRiskEndDate"`
}

type ActivityData struct {
	ID                     int                 `json:"id"`
	Version                interface{}         `json:"version"`
	CreateTime             interface{}         `json:"createTime"`
	UpdateTime             interface{}         `json:"updateTime"`
	DelFlag                int                 `json:"delFlag"`
	PublisherUid           int                 `json:"publisherUid"`
	AdminUid               int                 `json:"adminUid"`
	ClubId                 int                 `json:"clubId"`
	PlaceId                int                 `json:"placeId"`
	SportId                int                 `json:"sportId"`
	ActivityTitle          string              `json:"activityTitle"`
	ActivityAvatar         string              `json:"activityAvatar"`
	ActivityStatus         int                 `json:"activityStatus"`
	ActivityDate           string              `json:"activityDate"`
	EndDate                string              `json:"endDate"`
	StartTime              string              `json:"startTime"`
	EndTime                string              `json:"endTime"`
	StartTimestamp         interface{}         `json:"startTimestamp"`
	EndTimestamp           interface{}         `json:"endTimestamp"`
	CancelApplyDeadline    interface{}         `json:"cancelApplyDeadline"`
	PaymentType            int                 `json:"paymentType"`
	ActivityType           interface{}         `json:"activityType"`
	OrganizeType           int                 `json:"organizeType"`
	TotalCost              interface{}         `json:"totalCost"`
	Bond                   int                 `json:"bond"`
	BondWay                interface{}         `json:"bondWay"`
	ContactPerson          interface{}         `json:"contactPerson"`
	WxCode                 interface{}         `json:"wxCode"`
	Phone                  string              `json:"phone"`
	LevelLower             int                 `json:"levelLower"`
	LevelUpper             int                 `json:"levelUpper"`
	Des                    interface{}         `json:"des"`
	IsRefund               interface{}         `json:"isRefund"`
	IsTakeRate             interface{}         `json:"isTakeRate"`
	ActivityPics           interface{}         `json:"activityPics"`
	IsFemaleDiscount       int                 `json:"isFemaleDiscount"`
	FemaleDiscountAmount   int                 `json:"femaleDiscountAmount"`
	IsEarlyDiscount        int                 `json:"isEarlyDiscount"`
	EarlyDay               int                 `json:"earlyDay"`
	EarlyTime              string              `json:"earlyTime"`
	EarlyDiscountAmount    int                 `json:"earlyDiscountAmount"`
	ActivityQrcode         interface{}         `json:"activityQrcode"`
	AmountPath             interface{}         `json:"amountPath"`
	PlaceNum               interface{}         `json:"placeNum"`
	Type                   int                 `json:"type"`
	IsOpenSign             interface{}         `json:"isOpenSign"`
	IsPlatShow             interface{}         `json:"isPlatShow"`
	IsAllowQueue           int                 `json:"isAllowQueue"`
	IsAllowExchange        interface{}         `json:"isAllowExchange"`
	IsAllowHang            interface{}         `json:"isAllowHang"`
	HangCount              interface{}         `json:"hangCount"`
	IsBuyInsure            int                 `json:"isBuyInsure"`
	IsOpenClubInsure       int                 `json:"isOpenClubInsure"`
	IsShowRealName         interface{}         `json:"isShowRealName"`
	IsRealName             interface{}         `json:"isRealName"`
	IsOpenSignRegular      interface{}         `json:"isOpenSignRegular"`
	OpenAdvanceDay         interface{}         `json:"openAdvanceDay"`
	OpenSignTime           interface{}         `json:"openSignTime"`
	RemarkReason           interface{}         `json:"remarkReason"`
	IsApplyRemark          interface{}         `json:"isApplyRemark"`
	RemarkDesc             interface{}         `json:"remarkDesc"`
	RemarkExample          interface{}         `json:"remarkExample"`
	OpenAaDetail           interface{}         `json:"openAaDetail"`
	CopyInfoRemark         interface{}         `json:"copyInfoRemark"`
	IsAaOpenMemberDiscount interface{}         `json:"isAaOpenMemberDiscount"`
	IsAutoCancel           interface{}         `json:"isAutoCancel"`
	AutoCancelHours        interface{}         `json:"autoCancelHours"`
	AutoCancelCount        interface{}         `json:"autoCancelCount"`
	InsurePlanId           interface{}         `json:"insurePlanId"`
	IsUnifyBuyInsure       interface{}         `json:"isUnifyBuyInsure"`
	PubChannel             interface{}         `json:"pubChannel"`
	HtmlContent            interface{}         `json:"htmlContent"`
	IsSupportCardPay       interface{}         `json:"isSupportCardPay"`
	IsSupportFreePlay      int                 `json:"isSupportFreePlay"`
	FreePlayCount          int                 `json:"freePlayCount"`
	IsSupportRaffle        interface{}         `json:"isSupportRaffle"`
	IsAllowRaffleList      interface{}         `json:"isAllowRaffleList"`
	IsVipDiscount          interface{}         `json:"isVipDiscount"`
	DiscountWay            interface{}         `json:"discountWay"`
	City                   interface{}         `json:"city"`
	Region                 interface{}         `json:"region"`
	Address                interface{}         `json:"address"`
	Latitude               float64             `json:"latitude"`
	Longitude              float64             `json:"longitude"`
	ReminderAfterText      interface{}         `json:"reminderAfterText"`
	ReminderAfterImgUrl    interface{}         `json:"reminderAfterImgUrl"`
	Distance               string              `json:"distance"`
	DistanceDouble         float64             `json:"distanceDouble"`
	ActivityAddress        string              `json:"activityAddress"`
	NeedMemberNum          int                 `json:"needMemberNum"`
	ApplyMemberNum         int                 `json:"applyMemberNum"`
	ActivityMemberDtos     []ActivityMemberDto `json:"activityMemberDtos"`
	OrganizerName          string              `json:"organizerName"`
	OrganizerAvatar        string              `json:"organizerAvatar"`
	ShowCost               string              `json:"showCost"`
	ActivityStats          interface{}         `json:"activityStats"`
	PayStatus              int                 `json:"payStatus"`
	IsPublisher            int                 `json:"isPublisher"`
	ActivityTime           string              `json:"activityTime"`
	IsBadge                int                 `json:"isBadge"`
	IsUploadAlbum          interface{}         `json:"isUploadAlbum"`
	RandUser               RandUser            `json:"randUser"`
	ReceiveStatus          interface{}         `json:"receiveStatus"`
	IsInEarlyDiscount      int                 `json:"isInEarlyDiscount"`
	SportEmoji             string              `json:"sportEmoji"`
	IsPromotion            int                 `json:"isPromotion"`
	PromotionOid           interface{}         `json:"promotionOid"`
	ViewCount              int                 `json:"viewCount"`
	OrganizerInfoDto       OrganizerInfoDto    `json:"organizerInfoDto"`
	IsFreeSixty            interface{}         `json:"isFreeSixty"`
}

/**
活动详情数据
https://flash.flashxsport.com/flash/activity/detail?activityId=3410982&latitude=39.92190170288086&longitude=116.44355010986328
*/

type ApplyList struct {
	NormalList     []interface{} `json:"normalList"`
	SubstituteList []interface{} `json:"substituteList"`
}

type AllApplyerAvatar struct {
	Avatar string `json:"avatar"`
}

type PlaceDo struct {
	ID              int         `json:"id"`
	Version         int         `json:"version"`
	CreateTime      string      `json:"createTime"`
	UpdateTime      string      `json:"updateTime"`
	DelFlag         int         `json:"delFlag"`
	PlaceName       string      `json:"placeName"`
	Score           string      `json:"score"`
	IsBusiness      int         `json:"isBusiness"`
	Phone           string      `json:"phone"`
	BusinessDate    interface{} `json:"businessDate"`
	City            string      `json:"city"`
	Region          string      `json:"region"`
	Address         string      `json:"address"`
	Type            string      `json:"type"`
	AlbumPics       string      `json:"albumPics"`
	Latitude        float64     `json:"latitude"`
	Longitude       float64     `json:"longitude"`
	SportId         int         `json:"sportId"`
	SportIds        string      `json:"sportIds"`
	Citycode        string      `json:"citycode"`
	Adcode          string      `json:"adcode"`
	BusinessArea    interface{} `json:"businessArea"`
	GaodeId         interface{} `json:"gaodeId"`
	DoorPics        interface{} `json:"doorPics"`
	IdCardStart     interface{} `json:"idCardStart"`
	IdCardEnd       interface{} `json:"idCardEnd"`
	BusinessLicense interface{} `json:"businessLicense"`
	AddressDetail   interface{} `json:"addressDetail"`
	VenueDetail     interface{} `json:"venueDetail"`
	UserID          interface{} `json:"userId"`
	UseChannel      int         `json:"useChannel"`
}

type ActivityRemarkParamDto struct {
	ActivityId            int           `json:"activityId"`
	RemarkReason          interface{}   `json:"remarkReason"`
	ActivityRemarkDtoList []interface{} `json:"activityRemarkDtoList"`
}

type OrganizerInfoDtoDetail struct {
	OrganizeType        int         `json:"organizeType"`
	OrganizerName       string      `json:"organizerName"`
	OrganizerAvatar     string      `json:"organizerAvatar"`
	ClubId              int         `json:"clubId"`
	CertificationType   interface{} `json:"certificationType"`
	AvgEvaluateScore    float64     `json:"avgEvaluateScore"`
	EvaluateCount       int         `json:"evaluateCount"`
	IsBadmintonBadge    int         `json:"isBadmintonBadge"`
	InsureBadge         int         `json:"insureBadge"`
	InsureSubBadge      interface{} `json:"insureSubBadge"`
	ClubBadge           int         `json:"clubBadge"`
	MainLevel           int         `json:"mainLevel"`
	SubLevel            int         `json:"subLevel"`
	AaEstimateAmount    float64     `json:"aaEstimateAmount"`
	IsHaveYxs           int         `json:"isHaveYxs"`
	IsFreePlayRisk      int         `json:"isFreePlayRisk"`
	FreePlayRiskEndDate interface{} `json:"freePlayRiskEndDate"`
}

type ClubDo struct {
	ID                  int         `json:"id"`
	Version             int         `json:"version"`
	CreateTime          string      `json:"createTime"`
	UpdateTime          string      `json:"updateTime"`
	DelFlag             int         `json:"delFlag"`
	ClubName            string      `json:"clubName"`
	Avatar              string      `json:"avatar"`
	BgImg               string      `json:"bgImg"`
	Synopsis            string      `json:"synopsis"`
	Province            string      `json:"province"`
	City                string      `json:"city"`
	Region              string      `json:"region"`
	Address             string      `json:"address"`
	Latitude            float64     `json:"latitude"`
	Longitude           float64     `json:"longitude"`
	SportId             interface{} `json:"sportId"`
	SportIds            string      `json:"sportIds"`
	ContactPerson       string      `json:"contactPerson"`
	WxCode              string      `json:"wxCode"`
	Phone               string      `json:"phone"`
	Discount            float64     `json:"discount"`
	Pics                interface{} `json:"pics"`
	IsBadge             int         `json:"isBadge"`
	ClubBadge           int         `json:"clubBadge"`
	ClubQrcode          string      `json:"clubQrcode"`
	ActCount            int         `json:"actCount"`
	MemberCount         int         `json:"memberCount"`
	SettlementPeriod    int         `json:"settlementPeriod"`
	AmountPath          int         `json:"amountPath"`
	DiscountRange       int         `json:"discountRange"`
	IsHangDiscount      int         `json:"isHangDiscount"`
	CreateBy            string      `json:"createBy"`
	SysOrgCode          interface{} `json:"sysOrgCode"`
	IsAutoJoin          int         `json:"isAutoJoin"`
	IsCloseRecharge     int         `json:"isCloseRecharge"`
	IsExpandHang        int         `json:"isExpandHang"`
	CertificationType   int         `json:"certificationType"`
	IsOpenEvaluate      int         `json:"isOpenEvaluate"`
	DiscountWay         int         `json:"discountWay"`
	SmsSendStatus       int         `json:"smsSendStatus"`
	AaEstimateAmount    float64     `json:"aaEstimateAmount"`
	AaActStatus         int         `json:"aaActStatus"`
	ActRiskStatus       int         `json:"actRiskStatus"`
	RiskSecureStartDate string      `json:"riskSecureStartDate"`
	RiskSecureEndDate   string      `json:"riskSecureEndDate"`
	MainLevel           int         `json:"mainLevel"`
	SubLevel            int         `json:"subLevel"`
	SettledType         int         `json:"settledType"`
}

type ActivityDetailResult struct {
	ActivityId              int                    `json:"activityId"`
	PlaceId                 int                    `json:"placeId"`
	PublisherUid            int                    `json:"publisherUid"`
	PublisherName           string                 `json:"publisherName"`
	PublisherAvatar         string                 `json:"publisherAvatar"`
	IsOrganizer             interface{}            `json:"isOrganizer"`
	SportId                 int                    `json:"sportId"`
	ClubId                  int                    `json:"clubId"`
	CoachId                 interface{}            `json:"coachId"`
	CoachType               interface{}            `json:"coachType"`
	ActStartTimeTamp        int                    `json:"actStartTimeTamp"`
	ActivityTitle           string                 `json:"activityTitle"`
	ActivityAvatar          string                 `json:"activityAvatar"`
	ActivityPics            string                 `json:"activityPics"`
	PlaceName               string                 `json:"placeName"`
	ActivityAddress         string                 `json:"activityAddress"`
	ActivityDate            string                 `json:"activityDate"`
	EndDate                 string                 `json:"endDate"`
	Distance                string                 `json:"distance"`
	StartTime               string                 `json:"startTime"`
	EndTime                 string                 `json:"endTime"`
	ActivityTime            string                 `json:"activityTime"`
	CancelApplyDeadline     int                    `json:"cancelApplyDeadline"`
	LevelLower              float64                `json:"levelLower"`
	LevelUpper              float64                `json:"levelUpper"`
	MaleLevelLower          float64                `json:"maleLevelLower"`
	MaleLevelUpper          float64                `json:"maleLevelUpper"`
	FemaleLevelLower        float64                `json:"femaleLevelLower"`
	FemaleLevelUpper        float64                `json:"femaleLevelUpper"`
	OrganizeType            int                    `json:"organizeType"`
	PaymentType             int                    `json:"paymentType"`
	Des                     string                 `json:"des"`
	Precautions             string                 `json:"precautions"`
	StartTimeList           []string               `json:"startTimeList"`
	EndTimeList             []string               `json:"endTimeList"`
	WxCode                  string                 `json:"wxCode"`
	Phone                   string                 `json:"phone"`
	Latitude                float64                `json:"latitude"`
	Longitude               float64                `json:"longitude"`
	NeedMemberNum           int                    `json:"needMemberNum"`
	ApplyMemberNum          int                    `json:"applyMemberNum"`
	CostMemberNum           int                    `json:"costMemberNum"`
	OrganizerName           string                 `json:"organizerName"`
	OrganizerAvatar         string                 `json:"organizerAvatar"`
	OrganizerSex            interface{}            `json:"organizerSex"`
	IsPublisher             int                    `json:"isPublisher"`
	IsClubMember            int                    `json:"isClubMember"`
	IsSign                  int                    `json:"isSign"`
	IsPay                   int                    `json:"isPay"`
	IsOver                  int                    `json:"isOver"`
	IsLiving                int                    `json:"isLiving"`
	IsCanCancel             int                    `json:"isCanCancel"`
	AaActivityCostDo        interface{}            `json:"aaActivityCostDo"`
	TotalCost               string                 `json:"totalCost"`
	ShowCost                string                 `json:"showCost"`
	FemaleCost              string                 `json:"femaleCost"`
	UnitCost                interface{}            `json:"unitCost"`
	Bond                    float64                `json:"bond"`
	BondWay                 int                    `json:"bondWay"`
	IsSubstitute            interface{}            `json:"isSubstitute"`
	PayExpirationTime       interface{}            `json:"payExpirationTime"`
	CurSportLevel           interface{}            `json:"curSportLevel"`
	CurIsChangeSportLevel   interface{}            `json:"curIsChangeSportLevel"`
	CurUserApplyGroupId     interface{}            `json:"curUserApplyGroupId"`
	CurIsSubstitute         interface{}            `json:"curIsSubstitute"`
	CurWxPayStatus          interface{}            `json:"curWxPayStatus"`
	CurPayType              interface{}            `json:"curPayType"`
	ReceiveStatus           int                    `json:"receiveStatus"`
	IsSendPayNotify         int                    `json:"isSendPayNotify"`
	IsNotify                int                    `json:"isNotify"`
	IsBuyInsure             int                    `json:"isBuyInsure"`
	IsOpenClubInsure        int                    `json:"isOpenClubInsure"`
	IsBuyedInsure           interface{}            `json:"isBuyedInsure"`
	IsCurrBuyedInsure       interface{}            `json:"isCurrBuyedInsure"`
	ActivityStatus          int                    `json:"activityStatus"`
	IsOpenSign              int                    `json:"isOpenSign"`
	IsAllowExchange         int                    `json:"isAllowExchange"`
	Discount                float64                `json:"discount"`
	DiscountLevel           interface{}            `json:"discountLevel"`
	IsRealName              int                    `json:"isRealName"`
	IsShowRealName          int                    `json:"isShowRealName"`
	IsAllowHang             int                    `json:"isAllowHang"`
	HangCount               int                    `json:"hangCount"`
	IsAllowQueue            int                    `json:"isAllowQueue"`
	ActivityQrcode          string                 `json:"activityQrcode"`
	IsBadge                 int                    `json:"isBadge"`
	ApplyList               []ApplyList            `json:"applyList"`
	AllApplyerAvatarList    []AllApplyerAvatar     `json:"allApplyerAvatarList"`
	PlaceDo                 PlaceDo                `json:"placeDo"`
	AlbumStatus             int                    `json:"albumStatus"`
	IsFemaleDiscount        int                    `json:"isFemaleDiscount"`
	FemaleDiscountAmount    float64                `json:"femaleDiscountAmount"`
	IsInEarlyDiscount       int                    `json:"isInEarlyDiscount"`
	IsEarlyDiscount         int                    `json:"isEarlyDiscount"`
	EarlyDay                int                    `json:"earlyDay"`
	EarlyTime               string                 `json:"earlyTime"`
	EarlyDiscountAmount     float64                `json:"earlyDiscountAmount"`
	PlaceNum                string                 `json:"placeNum"`
	IsInOpenSignTime        int                    `json:"isInOpenSignTime"`
	IsOpenSignRegular       int                    `json:"isOpenSignRegular"`
	OpenAdvanceDay          int                    `json:"openAdvanceDay"`
	OpenSignTime            string                 `json:"openSignTime"`
	OpenSignTimeS           interface{}            `json:"openSignTimeS"`
	Type                    int                    `json:"type"`
	MatchDo                 interface{}            `json:"matchDo"`
	SportPic                string                 `json:"sportPic"`
	ActivityType            int                    `json:"activityType"`
	CurrUserHangCount       interface{}            `json:"currUserHangCount"`
	IsApplyRemark           int                    `json:"isApplyRemark"`
	RemarkDesc              interface{}            `json:"remarkDesc"`
	RemarkExample           interface{}            `json:"remarkExample"`
	DiscountRange           int                    `json:"discountRange"`
	IsHangDiscount          int                    `json:"isHangDiscount"`
	IsAutoJoin              int                    `json:"isAutoJoin"`
	IsOpenEvaluate          int                    `json:"isOpenEvaluate"`
	ActivityRemarkParamDto  ActivityRemarkParamDto `json:"activityRemarkParamDto"`
	CurrentUserIsAdmin      interface{}            `json:"currentUserIsAdmin"`
	AdminUid                int                    `json:"adminUid"`
	OpenAaDetail            int                    `json:"openAaDetail"`
	CopyInfoRemark          string                 `json:"copyInfoRemark"`
	IsAaOpenMemberDiscount  int                    `json:"isAaOpenMemberDiscount"`
	IsAutoCancel            int                    `json:"isAutoCancel"`
	AutoCancelHours         int                    `json:"autoCancelHours"`
	AutoCancelCount         int                    `json:"autoCancelCount"`
	InsurePlanId            int                    `json:"insurePlanId"`
	InsurancePlanDo         interface{}            `json:"insurancePlanDo"`
	ActInsuranceApplicantDo interface{}            `json:"actInsuranceApplicantDo"`
	IsUnifyBuyInsure        int                    `json:"isUnifyBuyInsure"`
	PubChannel              int                    `json:"pubChannel"`
	HtmlContent             interface{}            `json:"htmlContent"`
	IsSupportCardPay        int                    `json:"isSupportCardPay"`
	OrganizerInfoDto        OrganizerInfoDtoDetail `json:"organizerInfoDto"`
	TrackActConfigDto       interface{}            `json:"trackActConfigDto"`
	ActivityProjectDtoList  interface{}            `json:"activityProjectDtoList"`
	IsSupportFreePlay       int                    `json:"isSupportFreePlay"`
	FreePlayCount           int                    `json:"freePlayCount"`
	FreePlayApplyCount      int                    `json:"freePlayApplyCount"`
	IsSupportRaffle         int                    `json:"isSupportRaffle"`
	IsAllowRaffleList       int                    `json:"isAllowRaffleList"`
	IsRaffle                int                    `json:"isRaffle"`
	GroupCount              int                    `json:"groupCount"`
	IsVipDiscount           int                    `json:"isVipDiscount"`
	DiscountWay             int                    `json:"discountWay"`
	ClubInsureType          int                    `json:"clubInsureType"`
	ClubInsureIsNew         int                    `json:"clubInsureIsNew"`
	ClubDo                  ClubDo                 `json:"clubDo"`
	ReminderAfterText       string                 `json:"reminderAfterText"`
	ReminderAfterImgUrl     string                 `json:"reminderAfterImgUrl"`
	MaleCount               int                    `json:"maleCount"`
	FemaleCount             int                    `json:"femaleCount"`
	RandUser                RandUser               `json:"randUser"`
}

type ActivityDetail struct {
	Success   bool                 `json:"success"`
	Message   string               `json:"message"`
	Code      int                  `json:"code"`
	Result    ActivityDetailResult `json:"result"`
	Timestamp int64                `json:"timestamp"`
}

/**
俱乐部详情
https://flash.flashxsport.com/flash/club/detail?clubId=1470
*/

// ClubDetail represents the club detail response
type ClubDetail struct {
	Success   bool             `json:"success"`
	Message   string           `json:"message"`
	Code      int              `json:"code"`
	Result    ClubDetailResult `json:"result"`
	Timestamp int64            `json:"timestamp"`
}

// ClubDetailResult represents the club detail result
type ClubDetailResult struct {
	ID                       int          `json:"id"`
	ClubName                 string       `json:"clubName"`
	ClubAvatar               string       `json:"clubAvatar"`
	Synopsis                 string       `json:"synopsis"`
	MemberCount              int          `json:"memberCount"`
	ActivityCount            int          `json:"activityCount"`
	ContactPerson            string       `json:"contactPerson"`
	WxCode                   string       `json:"wxCode"`
	Phone                    string       `json:"phone"`
	Discount                 string       `json:"discount"`
	Pics                     interface{}  `json:"pics"`
	SportIds                 string       `json:"sportIds"`
	IsClubOwner              bool         `json:"isClubOwner"`
	IsClubAdmin              bool         `json:"isClubAdmin"`
	IsJionClub               bool         `json:"isJionClub"`
	PicList                  interface{}  `json:"picList"`
	SportList                []SportItem  `json:"sportList"`
	ClubMemberList           []ClubMember `json:"clubMemberList"`
	IsBadge                  int          `json:"isBadge"`
	BgImg                    string       `json:"bgImg"`
	SettlementPeriod         int          `json:"settlementPeriod"`
	IsSetedDiscount          int          `json:"isSetedDiscount"`
	DiscountLevel            int          `json:"discountLevel"`
	ThisPeriodActCount       int          `json:"thisPeriodActCount"`
	Amount                   float64      `json:"amount"`
	CurrMemberId             int          `json:"currMemberId"`
	IsAutoJoin               int          `json:"isAutoJoin"`
	Province                 string       `json:"province"`
	City                     string       `json:"city"`
	Region                   string       `json:"region"`
	Address                  string       `json:"address"`
	Latitude                 float64      `json:"latitude"`
	Longitude                float64      `json:"longitude"`
	IsCloseRecharge          int          `json:"isCloseRecharge"`
	AvgEvaluateScore         float64      `json:"avgEvaluateScore"`
	EvaluateCount            int          `json:"evaluateCount"`
	CurrMemberDiscountPeriod string       `json:"currMemberDiscountPeriod"`
	CertificationType        int          `json:"certificationType"`
	IsOpenEvaluate           int          `json:"isOpenEvaluate"`
	LeftSmsCount             int          `json:"leftSmsCount"`
	InsureBadge              int          `json:"insureBadge"`
	AaEstimateAmount         float64      `json:"aaEstimateAmount"`
	IsExpandHang             int          `json:"isExpandHang"`
	ClubBadge                int          `json:"clubBadge"`
	MainLevel                int          `json:"mainLevel"`
	SubLevel                 int          `json:"subLevel"`
	AaActStatus              int          `json:"aaActStatus"`
	ActRiskStatus            int          `json:"actRiskStatus"`
}

// SportItem represents a sport in the club
type SportItem struct {
	SportId   string `json:"sportId"`
	SportName string `json:"sportName"`
}

// ClubMember represents a club member
type ClubMember struct {
	ID               int         `json:"id"`
	MemberId         interface{} `json:"memberId"`
	MemberAvatar     string      `json:"memberAvatar"`
	UserId           int         `json:"userId"`
	ClubId           int         `json:"clubId"`
	UserStatus       int         `json:"userStatus"`
	Amount           float64     `json:"amount"`
	Level            interface{} `json:"level"`
	SportLevel       interface{} `json:"sportLevel"`
	Phone            string      `json:"phone"`
	Sex              int         `json:"sex"`
	MemberRole       int         `json:"memberRole"`
	MemberName       string      `json:"memberName"`
	ActivityNumber   interface{} `json:"activityNumber"`
	BlackStatus      interface{} `json:"blackStatus"`
	DiscountLevel    interface{} `json:"discountLevel"`
	IsApplyRemark    interface{} `json:"isApplyRemark"`
	RemarkDesc       interface{} `json:"remarkDesc"`
	RemarkExample    interface{} `json:"remarkExample"`
	ApplyRemark      interface{} `json:"applyRemark"`
	IsApplyed        interface{} `json:"isApplyed"`
	Discount         interface{} `json:"discount"`
	MemberRemarkList interface{} `json:"memberRemarkList"`
	IsAllowReplace   interface{} `json:"isAllowReplace"`
}

/**
报名信息接口
https://flash.flashxsport.com/flash/activityGroup/groupListWithInitMember?activityId=3345144&pageSize=10000
*/

// ActivityGroupMember represents a member in an activity group
type ActivityGroupMember struct {
	ClubMemberId          interface{} `json:"clubMemberId"`
	GroupId               interface{} `json:"groupId"`
	GroupName             interface{} `json:"groupName"`
	UserID                int64       `json:"userId"`
	Avatar                string      `json:"avatar"`
	Nickname              interface{} `json:"nickname"`
	Realname              interface{} `json:"realname"`
	Sex                   interface{} `json:"sex"`
	Phone                 interface{} `json:"phone"`
	Level                 interface{} `json:"level"`
	IsSubstitute          interface{} `json:"isSubstitute"`
	CancelStatus          interface{} `json:"cancelStatus"`
	HangPeopleCount       int         `json:"hangPeopleCount"`
	PayStatus             interface{} `json:"payStatus"`
	PayType               interface{} `json:"payType"`
	PayAmount             interface{} `json:"payAmount"`
	IsReport              interface{} `json:"isReport"`
	CreateTime            interface{} `json:"createTime"`
	CreateTimeS           interface{} `json:"createTimeS"`
	IsReplace             interface{} `json:"isReplace"`
	MemberID              int64       `json:"memberId"`
	TargetId              interface{} `json:"targetId"`
	IsHangPeople          int         `json:"isHangPeople"`
	MemberType            interface{} `json:"memberType"`
	ApplyRemark           interface{} `json:"applyRemark"`
	ReplaceUserAvatar     interface{} `json:"replaceUserAvatar"`
	ReplaceUid            interface{} `json:"replaceUid"`
	ClubDiscountLevel     interface{} `json:"clubDiscountLevel"`
	RemarkDesc            interface{} `json:"remarkDesc"`
	RemarkExample         interface{} `json:"remarkExample"`
	ActApplyRemarkDtoList interface{} `json:"actApplyRemarkDtoList"`
	IsCurrBuyedInsure     interface{} `json:"isCurrBuyedInsure"`
	InsurePlanId          interface{} `json:"insurePlanId"`
	EnrollChannel         interface{} `json:"enrollChannel"`
	EnrollId              interface{} `json:"enrollId"`
	TrackProjectNames     interface{} `json:"trackProjectNames"`
	HangPeopleList        interface{} `json:"hangPeopleList"`
	IsFirstJoin           interface{} `json:"isFirstJoin"`
	IsHitInfo             int         `json:"isHitInfo"`
	YxsRank               interface{} `json:"yxsRank"`
	IsFlashRank           interface{} `json:"isFlashRank"`
}

// ActivityGroup represents a group in the activity
type ActivityGroup struct {
	GroupId      int64                  `json:"groupId"`
	GroupName    string                 `json:"groupName"`
	MemberList   []ActivityGroupMember  `json:"memberList"`
	HangMemberList []ActivityGroupMember `json:"hangMemberList"`
}

// ActivityGroupList represents the response of the groupListWithInitMember API
type ActivityGroupList struct {
	Success bool            `json:"success"`
	Message string          `json:"message"`
	Code    int             `json:"code"`
	Result  []ActivityGroup `json:"result"`
}
