package cross_variety import ( "eta/eta_api/global" "eta/eta_api/utils" "github.com/beego/beego/v2/client/orm" "time" ) // ChartVarietyMapping // @Description: 图表与品种的关系表 type ChartVarietyMapping struct { Id int `orm:"column(id);pk" gorm:"primaryKey" ` ChartInfoId int `description:"图表id"` ChartVarietyId int `description:"品种id"` ModifyTime time.Time `description:"修改时间"` CreateTime time.Time `description:"创建时间"` } // GetChartVarietyMappingList // @Description: 获取图表与品种的关系列表表 // @author: Roc // @datetime 2023-11-24 15:22:36 // @param chartInfoId int // @return items []*ChartVarietyMapping // @return err error func GetChartVarietyMappingList(chartInfoId int) (items []*ChartVarietyMapping, err error) { o := orm.NewOrmUsingDB("data") sql := `SELECT * FROM chart_variety_mapping WHERE chart_info_id = ? ` _, err = o.Raw(sql, chartInfoId).QueryRows(&items) return } // GetCountChartByVarietyId // @Description: 根据品种id获取引用该标签的图表数量 // @author: Roc // @datetime 2023-11-27 10:41:46 // @param tagId int // @return total int64 // @return err error func GetCountChartByVarietyId(varietyId int) (total int64, err error) { sql := `SELECT count(1) total FROM chart_info AS a JOIN chart_variety_mapping AS b on a.chart_info_id = b.chart_info_id WHERE b.chart_variety_id = ? ` err = global.DbMap[utils.DbNameIndex].Raw(sql, varietyId).Scan(&total).Error return } // GetChartVarietyMappingListByChartInfoIdList // @Description: 根据图表id列表获取图表与品种的关系列表 // @author: Roc // @datetime 2023-11-24 15:22:36 // @param chartInfoId int // @return items []*ChartVarietyMapping // @return err error func GetChartVarietyMappingListByChartInfoIdList(chartInfoIdList []int) (items []*ChartVarietyMapping, err error) { num := len(chartInfoIdList) if num <= 0 { return } sql := `SELECT * FROM chart_variety_mapping WHERE chart_info_id in (` + utils.GetOrmInReplace(num) + `) ` err = global.DbMap[utils.DbNameIndex].Raw(sql, chartInfoIdList).Find(&chartInfoIdList).Error return }