package classify import ( "hongze/hongze_yb/global" "hongze/hongze_yb/utils" ) func GetSimpleAll()(list []*Classify, err error) {// 过滤权益研报的分类 err = global.MYSQL["rddp"].Select("id, classify_name, yb_icon_url, yb_bg_url, parent_id").Model(Classify{}).Where("is_show = 1 AND parent_id != 56 AND id != 56").Scan(&list).Error return } // GetByClassifyName 根据分类名称查找专栏详情 func GetByClassifyName(classifyName string) (item *Classify, err error) { err = global.MYSQL["rddp"].Model(Classify{}).Where("classify_name = ?", classifyName).First(&item).Error if err == utils.ErrNoRow { err = nil } return } // GetSecondIdsByClassifyNames 根据权限相关的二级分类名称获取名称ID func GetSecondIdsByClassifyNames(names []string) (ids []int, err error) { var list []*Classify err = global.MYSQL["rddp"].Model(Classify{}).Select("id").Where("classify_name in (?) and parent_id >0 AND is_show = 1 AND parent_id != 56", names).Scan(&list).Error if err != nil { if err == utils.ErrNoRow { err = nil } return } for _, v := range list { ids = append(ids, v.Id) } return } // GetParentList 查询所有一级分类 func GetParentList() (list []*Classify, err error) { err = global.MYSQL["rddp"].Model(Classify{}). Select("id, classify_name, show_type"). Where("parent_id = 0 and classify_name != '权益研报' AND is_show = 1"). Order("sort asc, id asc").Scan(&list).Error if err == utils.ErrNoRow { err = nil } return } // GetByClassifyId 根据分类ID查询分类详情 func GetByClassifyId(id int) (item *Classify, err error) { err = global.MYSQL["rddp"].Model(Classify{}).Where("id = ? AND is_show = 1", id).First(&item).Error if err == utils.ErrNoRow { err = nil } return } // GetListByPid 根据分类名称查找专栏列表 func GetListByPid(pid int) (list []*Classify, err error) { err = global.MYSQL["rddp"].Model(Classify{}). Select("id, classify_name, parent_id, report_author, author_descript, home_img_url, vip_title"). Where("parent_id = ? AND is_show = 1 ", pid).Order("sort asc, id asc").Scan(&list).Error if err == utils.ErrNoRow { err = nil } return } // GetIdsByClassifyNameAndParentId 查询 func GetIdsByClassifyNameAndParentId(names []string, parentId int) (ids []int, err error) { var list []*Classify err = global.MYSQL["rddp"].Model(Classify{}).Select("id").Where("classify_name in (?) and parent_id = ? AND is_show = 1", names, parentId).Scan(&list).Error if err != nil { return } for _, v := range list { ids = append(ids, v.Id) } return } // GetOtherIdsByClassifyNames 查询 func GetOtherIdsByClassifyNames(names []string) (ids []int, err error) { var list []*Classify err = global.MYSQL["rddp"].Model(Classify{}).Select("id").Where("classify_name in (?) and parent_id > 0 AND is_show = 1", names).Scan(&list).Error if err != nil { return } for _, v := range list { ids = append(ids, v.Id) } return } // GetOtherIdsByClassifyNames 查询 func GetOtherSecondIds(names []string) (ids []int, err error) { var list []*Classify err = global.MYSQL["rddp"].Model(Classify{}).Select("id").Where("parent_id IN (SELECT id FROM classify WHERE classify_name IN (?) AND parent_id = 0 AND is_show = 1)", names).Scan(&list).Error if err != nil { return } for _, v := range list { ids = append(ids, v.Id) } return } // GetChildByPid 根据一级分类查找二级分类 func GetChildByPid(pid int) (list []*Classify, err error) { err = global.MYSQL["rddp"].Model(Classify{}).Where("parent_id = ? AND is_show = 1 ", pid).Scan(&list).Error if err == utils.ErrNoRow { err = nil } return }