|
@@ -2,14 +2,15 @@ package category_model
|
|
|
|
|
|
|
|
import (
|
|
import (
|
|
|
"fmt"
|
|
"fmt"
|
|
|
|
|
+ "fohow.com/cache"
|
|
|
"github.com/astaxie/beego"
|
|
"github.com/astaxie/beego"
|
|
|
"github.com/astaxie/beego/orm"
|
|
"github.com/astaxie/beego/orm"
|
|
|
- "fohow.com/cache"
|
|
|
|
|
"time"
|
|
"time"
|
|
|
)
|
|
)
|
|
|
|
|
|
|
|
const (
|
|
const (
|
|
|
navigate_icon_configs_tablename = "navigate_icon_configs"
|
|
navigate_icon_configs_tablename = "navigate_icon_configs"
|
|
|
|
|
+ navigate_source = "app"
|
|
|
)
|
|
)
|
|
|
|
|
|
|
|
type NavigateIconConfig struct {
|
|
type NavigateIconConfig struct {
|
|
@@ -19,8 +20,9 @@ type NavigateIconConfig struct {
|
|
|
Url string `orm:"column(url)" json:"url"` // varchar(4096)
|
|
Url string `orm:"column(url)" json:"url"` // varchar(4096)
|
|
|
UrlType int64 `orm:"column(url_type)" json:"url_type"` //tinyint(4)
|
|
UrlType int64 `orm:"column(url_type)" json:"url_type"` //tinyint(4)
|
|
|
Cover string `orm:"column(cover)" json:"cover"`
|
|
Cover string `orm:"column(cover)" json:"cover"`
|
|
|
- State int64 `orm:"column(state)" json:"state"` // tinyint(1)
|
|
|
|
|
- Remark string `orm:"column(remark)" json:"-"` // varchar(225)
|
|
|
|
|
|
|
+ State int64 `orm:"column(state)" json:"state"` // tinyint(1)
|
|
|
|
|
+ AppState int64 `orm:"column(app_state)" json:"app_state"` // tinyint(1)
|
|
|
|
|
+ Remark string `orm:"column(remark)" json:"-"` // varchar(225)
|
|
|
ProductCatIndex int64 `orm:"column(product_cat_index)" json:"product_cat_index"`
|
|
ProductCatIndex int64 `orm:"column(product_cat_index)" json:"product_cat_index"`
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -28,18 +30,25 @@ func (self *NavigateIconConfig) TableName() string {
|
|
|
return navigate_icon_configs_tablename
|
|
return navigate_icon_configs_tablename
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-func GetNavigateIconsByState(state int64, useCache bool) (cats []*NavigateIconConfig) {
|
|
|
|
|
- k := fmt.Sprintf("category_model.GetNavigateIconsByState(%d)", state)
|
|
|
|
|
|
|
+func GetNavigateIconsByState(useCache bool, source string) (cats []*NavigateIconConfig) {
|
|
|
|
|
+ k := fmt.Sprintf("category_model.GetNavigateIconsByState(%s)", source)
|
|
|
if useCache {
|
|
if useCache {
|
|
|
if ret, ok := cache.Cache.Get(k).([]*NavigateIconConfig); ok {
|
|
if ret, ok := cache.Cache.Get(k).([]*NavigateIconConfig); ok {
|
|
|
return ret
|
|
return ret
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
cat := new(NavigateIconConfig)
|
|
cat := new(NavigateIconConfig)
|
|
|
- if _, err := orm.NewOrm().QueryTable(cat).Filter("state", state).OrderBy("-sort").All(&cats); err != nil {
|
|
|
|
|
|
|
+ qs := orm.NewOrm().QueryTable(cat)
|
|
|
|
|
+ if source == navigate_source {
|
|
|
|
|
+ qs = qs.Filter("state", true)
|
|
|
|
|
+ } else {
|
|
|
|
|
+ qs = qs.Filter("app_state", true)
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if _, err := qs.OrderBy("-sort").All(&cats); err != nil {
|
|
|
beego.BeeLogger.Error("GetCatsByPlatform[%s] err=[%s]", err)
|
|
beego.BeeLogger.Error("GetCatsByPlatform[%s] err=[%s]", err)
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
for _, item := range cats {
|
|
for _, item := range cats {
|
|
|
item.Cover = GetFullImgUrl(item.Cover)
|
|
item.Cover = GetFullImgUrl(item.Cover)
|
|
|
}
|
|
}
|