package crm import ( "eta/eta_bridge/global" "time" ) // EtaTrialQuestionnaire 问卷调查题目 type EtaTrialQuestionnaire struct { QuestionnaireId int `gorm:"primaryKey;column:questionnaire_id;type:int(11);not null" json:"questionnaire_id"` Question string `gorm:"column:question;type:varchar(255)" json:"question"` // 题目 Options string `gorm:"column:options;type:varchar(255);default:''" json:"options"` // 选项 Type int `gorm:"column:type;type:tinyint(4)" json:"type"` // 1单选 2多选 3简答题 4标题 CreateTime time.Time `gorm:"column:create_time;type:datetime" json:"create_time"` // 创建时间 Sort int `gorm:"column:sort;type:int(11);default:0" json:"sort"` IsMust int `gorm:"column:is_must;type:tinyint(4);not null;default:0" json:"is_must"` // 0必填 1非必填 } func (m *EtaTrialQuestionnaire) TableName() string { return "eta_trial_questionnaire" } // Create 新增 func (m *EtaTrialQuestionnaire) Create() (err error) { err = global.MYSQL["hz_crm"].Create(m).Error return } // Update 更新 func (m *EtaTrialQuestionnaire) Update(cols []string) (err error) { err = global.MYSQL["hz_crm"].Model(m).Select(cols).Updates(m).Error return } // List 列表 func (m *EtaTrialQuestionnaire) List(cond string, pars []interface{}) (items []*EtaTrialQuestionnaire, err error) { err = global.MYSQL["hz_crm"].Where(cond, pars...).Find(&items).Error return } // EtaTrialQuestionnaireRespItem 问卷调查信息 type EtaTrialQuestionnaireRespItem struct { QuestionnaireId int `orm:"column(questionnaire_id);pk" description:"问卷题目id"` Question string `description:"题目"` Type int `description:"1单选 2多选 3简答题"` Sort int `description:"排序"` Option []string `description:"选项"` IsMust int `description:"是否必填"` CreateTime string } // EtaTrialQuestionnaireResp 问卷调查列表响应体 type EtaTrialQuestionnaireResp struct { List []EtaTrialQuestionnaireRespItem } func (m EtaTrialQuestionnaireResp) Len() int { return len(m.List) } func (m EtaTrialQuestionnaireResp) Less(i, j int) bool { return m.List[i].Sort < m.List[j].Sort } func (m EtaTrialQuestionnaireResp) Swap(i, j int) { m.List[i], m.List[j] = m.List[j], m.List[i] }