You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
104 lines
2.7 KiB
104 lines
2.7 KiB
package http |
|
|
|
import ( |
|
"encoding/json" |
|
"io/ioutil" |
|
|
|
"go-common/app/admin/main/videoup/model/archive" |
|
"go-common/library/ecode" |
|
"go-common/library/log" |
|
bm "go-common/library/net/http/blademaster" |
|
xtime "go-common/library/time" |
|
) |
|
|
|
// upArchiveArr update archive attribute. |
|
func upCMArr(c *bm.Context) { |
|
req := c.Request |
|
// read |
|
bs, err := ioutil.ReadAll(req.Body) |
|
if err != nil { |
|
log.Error("ioutil.ReadAll() error(%v)", err) |
|
c.JSON(nil, ecode.RequestErr) |
|
return |
|
} |
|
req.Body.Close() |
|
// params |
|
var ap struct { |
|
Aid int64 `json:"aid"` |
|
AdminID int64 `json:"admin_id"` |
|
RankAttr struct { |
|
Main int32 `json:"main"` |
|
RecentArc int32 `json:"recent_arc"` |
|
AllArc int32 `json:"all_arc"` |
|
} `json:"rank_attr"` |
|
DynamicAttr struct { |
|
Main int32 `json:"main"` |
|
} `json:"dynamic_attr"` |
|
RecommendAttr struct { |
|
Main int32 `json:"main"` |
|
} `json:"recommend_attr"` |
|
} |
|
if err = json.Unmarshal(bs, &ap); err != nil { |
|
log.Error("http upArchiveArr() json.Unmarshal(%s) error(%v)", string(bs), err) |
|
c.JSON(nil, ecode.RequestErr) |
|
return |
|
} |
|
if ap.Aid == 0 { |
|
log.Error("aid==0") |
|
c.JSON(nil, ecode.RequestErr) |
|
return |
|
} |
|
attrs := make(map[uint]int32, 6) |
|
attrs[archive.AttrBitNoRank] = ap.RankAttr.Main |
|
attrs[archive.AttrBitNoDynamic] = ap.DynamicAttr.Main |
|
attrs[archive.AttrBitNoRecommend] = ap.RecommendAttr.Main |
|
// forbid |
|
forbidAttrs := make(map[string]map[uint]int32, 3) |
|
forbidAttrs[archive.ForbidRank] = map[uint]int32{ |
|
archive.ForbidRankMain: ap.RankAttr.Main, |
|
archive.ForbidRankRecentArc: ap.RankAttr.RecentArc, |
|
archive.ForbidRankAllArc: ap.RankAttr.AllArc, |
|
} |
|
forbidAttrs[archive.ForbidDynamic] = map[uint]int32{ |
|
archive.ForbidDynamicMain: ap.DynamicAttr.Main, |
|
} |
|
forbidAttrs[archive.ForbidRecommend] = map[uint]int32{ |
|
archive.ForbidRecommendMain: ap.RecommendAttr.Main, |
|
} |
|
// update attrs and forbid |
|
c.JSON(nil, vdaSvc.UpArchiveAttr(c, ap.Aid, ap.AdminID, attrs, forbidAttrs, "")) |
|
} |
|
|
|
// upCMArrDelay up cm archive delaytime |
|
func upCMArcDelay(c *bm.Context) { |
|
req := c.Request |
|
// read |
|
bs, err := ioutil.ReadAll(req.Body) |
|
if err != nil { |
|
log.Error("ioutil.ReadAll() error(%v)", err) |
|
c.JSON(nil, ecode.RequestErr) |
|
return |
|
} |
|
req.Body.Close() |
|
// params |
|
var ap struct { |
|
Aid int64 `json:"aid"` |
|
Dtime xtime.Time `json:"dtime"` |
|
} |
|
if err = json.Unmarshal(bs, &ap); err != nil { |
|
log.Error("http struct aid json.Unmarshal(%s) error(%v)", string(bs), err) |
|
c.JSON(nil, ecode.RequestErr) |
|
return |
|
} |
|
if ap.Aid == 0 { |
|
log.Error("aid==0") |
|
c.JSON(nil, ecode.RequestErr) |
|
return |
|
} |
|
if err = vdaSvc.UpArcDtime(c, ap.Aid, ap.Dtime); err != nil { |
|
log.Error("vdaSvc.UpArcDtime() error(%v)", err) |
|
c.JSON(nil, err) |
|
return |
|
} |
|
c.JSON(nil, nil) |
|
}
|
|
|