package request

import "gin-vue-admin/model"

type CreateSurveyUserReq struct {
	Data            []model.SurveyUserData `json:"data"`
	SurveyId        int                    `gorm:"type:int(255)" json:"survey_id"`
	UserId          int                    `gorm:"type:int(255)" json:"user_id"`
	MocId           int                    `gorm:"type:int(255)" json:"moc_id"`
	Contacts        string                 `gorm:"type:string(255)" json:"contacts"`
	ContactsMobile  string                 `gorm:"type:string(255)" json:"contacts_mobile"`
	Reference       string                 `gorm:"type:string(255)" json:"reference"`
	ReferenceMobile string                 `gorm:"type:string(255)" json:"reference_mobile"`
}

type GetSurveyUserListReq struct {
	PageInfo
	MocId           int    `gorm:"type:int(255)" json:"moc_id"`
	Region          string `gorm:"type:string(255)" json:"region"`
	City            string `gorm:"type:string(255)" json:"city"`
	Zone            string `gorm:"type:string(255)" json:"zone"`
	Address         string `gorm:"type:string(255)" json:"address"`
	Contacts        string `gorm:"type:string(255)" json:"contacts"`
	ContactsMobile  string `gorm:"type:string(255)" json:"contacts_mobile"`
	Reference       string `gorm:"type:string(255)" json:"reference"`
	ReferenceMobile string `gorm:"type:string(255)" json:"reference_mobile"`
	StartCreateTime string `json:"start_create_time" form:"start_create_time"`
	EndCreateTime   string `json:"end_create_time" form:"end_create_time"`
}

type GetSurveyUserListReply struct {
	List  []GetSurveyUserList `json:"list"`
	Total int64               `json:"total"`
}

type GetSurveyUserList struct {
	Data            []model.SurveyUserData `gorm:"-" json:"data"`
	SurveyId        int                    `gorm:"type:int(255)" json:"survey_id"`
	UserId          int                    `gorm:"type:int(255)" json:"user_id"`
	MocId           int                    `gorm:"type:int(255)" json:"moc_id"`
	Contacts        string                 `gorm:"type:string(255)" json:"contacts"`
	ContactsMobile  string                 `gorm:"type:string(255)" json:"contacts_mobile"`
	Reference       string                 `gorm:"type:string(255)" json:"reference"`
	ReferenceMobile string                 `gorm:"type:string(255)" json:"reference_mobile"`
	WorkerName      string                 `gorm:"type:string(255)" json:"worker_name"`
	WorkerMobile    string                 `gorm:"type:string(255)" json:"worker_mobile"`
}

type GetSurveyLogListReq struct {
	PageInfo
	UserId          int    `gorm:"type:int(255)" json:"user_id"`
	MocId           int    `gorm:"type:int(255)" json:"moc_id"`
	WorkerName      string `gorm:"type:string(255)" json:"worker_name"`
	WorkerMobile    string `gorm:"type:string(255)" json:"worker_mobile"`
	Region          string `gorm:"type:string(255)" json:"region"`
	City            string `gorm:"type:string(255)" json:"city"`
	Zone            string `gorm:"type:string(255)" json:"zone"`
	StartCreateTime string `json:"start_create_time" form:"start_create_time"`
	EndCreateTime   string `json:"end_create_time" form:"end_create_time"`
}

type GetSurveyLogListReply struct {
	List  []GetSurveyLogList `json:"list"`
	Total int64              `json:"total"`
}

type GetSurveyLogList struct {
	Mobile       string `json:"mobile" form:"mobile"`
	MaxPage      string `gorm:"type:string(255)" json:"max_page"`
	WorkerName   string `gorm:"type:string(255)" json:"worker_name"`
	WorkerMobile string `gorm:"type:string(255)" json:"worker_mobile"`
}