feat-IRONFANS-70 #260
|
@ -3935,6 +3935,19 @@ func (m *Mongo) GetZoneById(ctx *gin.Context, id int64) (*dbstruct.Zone, error)
|
||||||
return zone, err
|
return zone, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *Mongo) RecordZoneStatisticsById(ctx *gin.Context, id int64, zoneMomentCount int64, imageCount int64, videoCount int64) error {
|
||||||
|
col := m.getColZone()
|
||||||
|
up := qmgo.M{
|
||||||
|
"$inc": qmgo.M{
|
||||||
|
"zone_moment_count": zoneMomentCount,
|
||||||
|
"image_count": imageCount,
|
||||||
|
"video_count": videoCount,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
err := col.UpdateId(ctx, id, up)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
// 私密圈动态相关
|
// 私密圈动态相关
|
||||||
func (m *Mongo) CreateZoneMoment(ctx *gin.Context, zonemoment *dbstruct.ZoneMoment) error {
|
func (m *Mongo) CreateZoneMoment(ctx *gin.Context, zonemoment *dbstruct.ZoneMoment) error {
|
||||||
col := m.getColZoneMoment()
|
col := m.getColZoneMoment()
|
||||||
|
|
|
@ -2272,6 +2272,17 @@ func (s *Service) ApiCreateZoneMoment(ctx *gin.Context, req *zonemomentproto.Api
|
||||||
func (s *Service) ApiUpdateZoneMoment(ctx *gin.Context, req *zonemomentproto.ApiUpdateReq) (ec errcode.ErrCode) {
|
func (s *Service) ApiUpdateZoneMoment(ctx *gin.Context, req *zonemomentproto.ApiUpdateReq) (ec errcode.ErrCode) {
|
||||||
ec = errcode.ErrCodeZoneMomentSrvOk
|
ec = errcode.ErrCodeZoneMomentSrvOk
|
||||||
|
|
||||||
|
zonemoment, err := _DefaultZoneMoment.GetById(ctx, util.DerefInt64(req.Id))
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("_DefaultZoneMoment GetById fail, req: %v, err: %v", util.ToJson(req), err)
|
||||||
|
ec = errcode.ErrCodeZoneMomentSrvFail
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if zonemoment == nil {
|
||||||
|
ec = errcode.ErrCodeZoneMomentNotExist
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
// 抹消审核信息,回退到初始
|
// 抹消审核信息,回退到初始
|
||||||
isReauditRequired := false
|
isReauditRequired := false
|
||||||
if req.ZoneMoment.MediaComp != nil && util.DerefInt64(req.ZoneMoment.MType) == consts.MediaTypeImg {
|
if req.ZoneMoment.MediaComp != nil && util.DerefInt64(req.ZoneMoment.MType) == consts.MediaTypeImg {
|
||||||
|
@ -2292,7 +2303,7 @@ func (s *Service) ApiUpdateZoneMoment(ctx *gin.Context, req *zonemomentproto.Api
|
||||||
req.ZoneMoment.ManuallyReviewOperator = goproto.Int64(0) // 信息抹除
|
req.ZoneMoment.ManuallyReviewOperator = goproto.Int64(0) // 信息抹除
|
||||||
}
|
}
|
||||||
|
|
||||||
err := _DefaultZoneMoment.OpUpdate(ctx, &zonemomentproto.OpUpdateReq{
|
err = _DefaultZoneMoment.OpUpdate(ctx, &zonemomentproto.OpUpdateReq{
|
||||||
BaseRequest: req.BaseRequest,
|
BaseRequest: req.BaseRequest,
|
||||||
ZoneMoment: req.ZoneMoment,
|
ZoneMoment: req.ZoneMoment,
|
||||||
})
|
})
|
||||||
|
@ -2307,6 +2318,19 @@ func (s *Service) ApiUpdateZoneMoment(ctx *gin.Context, req *zonemomentproto.Api
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 回退空间内统计总数
|
||||||
|
if isReauditRequired {
|
||||||
|
id := util.DerefInt64(req.ZoneMoment.Id)
|
||||||
|
mediaCountInc := len(zonemoment.MediaComp.GetImageIds())
|
||||||
|
videoCountInc := len(zonemoment.MediaComp.GetVideoIds())
|
||||||
|
err := _DefaultZone.RecordStatisticsById(ctx, id, -1, -int64(mediaCountInc), -int64(videoCountInc))
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("RecordStatisticsById fail, req: %v, err: %v", util.ToJson(req), err)
|
||||||
|
ec = errcode.ErrCodeZoneSrvFail
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 添加审核任务
|
// 添加审核任务
|
||||||
imageaudittasks := s.CreateZoneMomentImageAudit(ctx, req.ZoneMoment)
|
imageaudittasks := s.CreateZoneMomentImageAudit(ctx, req.ZoneMoment)
|
||||||
textaudittasks := s.CreateZoneMomentTextAudit(ctx, req.ZoneMoment)
|
textaudittasks := s.CreateZoneMomentTextAudit(ctx, req.ZoneMoment)
|
||||||
|
|
|
@ -108,6 +108,15 @@ func (p *Zone) OpUpdateByIdAndLastZoneMomentCt(ctx *gin.Context, req *zoneproto.
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (p *Zone) RecordStatisticsById(ctx *gin.Context, id int64, zoneMomentCount int64, imageCount int64, videoCount int64) error {
|
||||||
|
err := p.store.RecordZoneStatisticsById(ctx, id, zoneMomentCount, imageCount, videoCount)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("RecordZoneStatisticsById fail, err: %v", err)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
func (p *Zone) GetById(ctx *gin.Context, id int64) (*dbstruct.Zone, error) {
|
func (p *Zone) GetById(ctx *gin.Context, id int64) (*dbstruct.Zone, error) {
|
||||||
zone, err := p.store.GetZoneById(ctx, id)
|
zone, err := p.store.GetZoneById(ctx, id)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -3292,6 +3292,16 @@ func (s *Service) OpDeleteZoneMoment(ctx *gin.Context, req *zonemomentproto.OpDe
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 回退空间内统计总数
|
||||||
|
id := util.DerefInt64(req.Id)
|
||||||
|
mediaCountInc := len(zonemoment.MediaComp.GetImageIds())
|
||||||
|
videoCountInc := len(zonemoment.MediaComp.GetVideoIds())
|
||||||
|
err = _DefaultZone.RecordStatisticsById(ctx, id, -1, -int64(mediaCountInc), -int64(videoCountInc))
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("RecordStatisticsById fail, req: %v, err: %v", util.ToJson(req), err)
|
||||||
|
ec = errcode.ErrCodeZoneSrvFail
|
||||||
|
return
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3360,6 +3370,28 @@ func (s *Service) OpReviewZoneMoment(ctx *gin.Context, req *zonemomentproto.OpRe
|
||||||
ec = errcode.ErrCodeZoneMomentSrvFail
|
ec = errcode.ErrCodeZoneMomentSrvFail
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 增加空间内统计总数
|
||||||
|
for _, id := range req.ZoneMomentIds {
|
||||||
|
zonemoment, err := _DefaultZoneMoment.GetById(ctx, id)
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("_DefaultZoneMoment GetById fail, req: %v, err: %v", util.ToJson(req), err)
|
||||||
|
ec = errcode.ErrCodeZoneMomentSrvFail
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if zonemoment == nil {
|
||||||
|
ec = errcode.ErrCodeZoneMomentNotExist
|
||||||
|
return
|
||||||
|
}
|
||||||
|
mediaCountInc := len(zonemoment.MediaComp.GetImageIds())
|
||||||
|
videoCountInc := len(zonemoment.MediaComp.GetVideoIds())
|
||||||
|
err = _DefaultZone.RecordStatisticsById(ctx, id, 1, int64(mediaCountInc), int64(videoCountInc))
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("RecordStatisticsById fail, req: %v, err: %v", util.ToJson(req), err)
|
||||||
|
ec = errcode.ErrCodeZoneSrvFail
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return
|
return
|
||||||
|
|
|
@ -5,6 +5,9 @@ type Zone struct {
|
||||||
Mid *int64 `json:"mid" bson:"mid"` // 用户表id
|
Mid *int64 `json:"mid" bson:"mid"` // 用户表id
|
||||||
Profile *string `json:"profile" bson:"profile"` // 空间简介
|
Profile *string `json:"profile" bson:"profile"` // 空间简介
|
||||||
LastZoneMomentCt *int64 `json:"last_zone_moment_ct" bson:"last_zone_moment_ct"` // 最后空间动态创建时间
|
LastZoneMomentCt *int64 `json:"last_zone_moment_ct" bson:"last_zone_moment_ct"` // 最后空间动态创建时间
|
||||||
|
ZoneMomentCount *int64 `json:"zone_moment_count" bson:"zone_moment_count"` // 空间内动态总数
|
||||||
|
ImageCount *int64 `json:"image_count" bson:"image_count"` // 空间内图片总数
|
||||||
|
VideoCount *int64 `json:"video_count" bson:"video_count"` // 空间内视频总数
|
||||||
Ct *int64 `json:"ct" bson:"ct"` // 创建时间
|
Ct *int64 `json:"ct" bson:"ct"` // 创建时间
|
||||||
Ut *int64 `json:"ut" bson:"ut"` // 更新时间
|
Ut *int64 `json:"ut" bson:"ut"` // 更新时间
|
||||||
DelFlag *int64 `json:"del_flag" bson:"del_flag"` // 删除标记
|
DelFlag *int64 `json:"del_flag" bson:"del_flag"` // 删除标记
|
||||||
|
|
Loading…
Reference in New Issue