|
|
package evaluation
|
|
|
|
|
|
import (
|
|
|
mysql2 "git.oa00.com/go/mysql"
|
|
|
"github.com/gin-gonic/gin"
|
|
|
"recook/internal/dbc"
|
|
|
"recook/internal/model/goods"
|
|
|
"recook/internal/v2/lib/back"
|
|
|
"recook/internal/v2/model/actives"
|
|
|
live2 "recook/internal/v2/model/live"
|
|
|
"recook/internal/v2/model/recook/user"
|
|
|
"recook/tools"
|
|
|
"time"
|
|
|
)
|
|
|
|
|
|
type AppEvaluation struct {
|
|
|
}
|
|
|
type delRes struct {
|
|
|
Id uint `json:"id"` //相关表id
|
|
|
//Type uint `json:"type"` //1图文,2视频
|
|
|
}
|
|
|
|
|
|
//删除视频或图文
|
|
|
func (e AppEvaluation) Del(c *gin.Context) {
|
|
|
args := delRes{}
|
|
|
if err := tools.ParseParams(&args, c); err != nil {
|
|
|
back.Fail(c, err.Error())
|
|
|
return
|
|
|
}
|
|
|
if args.Id <= 0 {
|
|
|
back.Fail(c, "请正确传入表id")
|
|
|
return
|
|
|
}
|
|
|
|
|
|
//if args.Type == 0 {
|
|
|
// back.Fail(c, "类型为必传项")
|
|
|
// return
|
|
|
//}
|
|
|
tx := dbc.DB.Begin()
|
|
|
{
|
|
|
//查询总表内容
|
|
|
var trend live2.UserTrend
|
|
|
tx.Table(trend.TableName()).Where("id=?", args.Id).First(&trend)
|
|
|
if trend.Id == 0 {
|
|
|
back.Fail(c, "不存在该id")
|
|
|
tx.Rollback()
|
|
|
return
|
|
|
}
|
|
|
|
|
|
//删除分表数据
|
|
|
if trend.TrendType == 1 {
|
|
|
var a goods.MomentsCopy
|
|
|
err := tx.Table(a.TableName()).Where("id=?", trend.OriginId).Delete(&a).Error
|
|
|
if err != nil {
|
|
|
back.Fail(c, err.Error())
|
|
|
tx.Rollback()
|
|
|
return
|
|
|
}
|
|
|
//删除图片
|
|
|
var gl []goods.MomentsCopyPhoto
|
|
|
err = tx.Table("recook_goods_moments_copy_photo").Where("moments_copy_id=?", trend.OriginId).Delete(&gl).Error
|
|
|
if err != nil {
|
|
|
back.Fail(c, err.Error())
|
|
|
tx.Rollback()
|
|
|
return
|
|
|
}
|
|
|
}
|
|
|
if trend.TrendType == 2 {
|
|
|
var s live2.Short
|
|
|
err := tx.Table(s.TableName()).Where("id=?", trend.OriginId).Delete(&s).Error
|
|
|
if err != nil {
|
|
|
back.Fail(c, err.Error())
|
|
|
tx.Rollback()
|
|
|
return
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//删除总关系表的数据
|
|
|
err := tx.Table(trend.TableName()).Where(" id=?", args.Id).Delete(&trend).Error
|
|
|
if err != nil {
|
|
|
back.Fail(c, err.Error())
|
|
|
tx.Rollback()
|
|
|
return
|
|
|
}
|
|
|
}
|
|
|
tx.Commit()
|
|
|
|
|
|
back.Suc(c, "ok", nil)
|
|
|
}
|
|
|
|
|
|
type activeRes struct {
|
|
|
Id uint `json:"id"` //传入用户id
|
|
|
}
|
|
|
|
|
|
//Active 统计在线活跃人数
|
|
|
func (e AppEvaluation) Active(c *gin.Context) {
|
|
|
var p activeRes
|
|
|
if err := tools.ParseParams(&p, c); err != nil {
|
|
|
back.Fail(c, err.Error())
|
|
|
return
|
|
|
}
|
|
|
//t1 := time.Now().Format("2006-01-02")
|
|
|
//t2, _ := time.ParseInLocation("2006-01-02", t1, time.Local)
|
|
|
////t3, _ := strconv.Atoi(t2)
|
|
|
////cache.SetActiveNum(uint(t3), p.Id)
|
|
|
//var ac actives.ActiveUserModel
|
|
|
//mysql2.Db.Table(ac.TableName()).Where("date=?", t2).First(&ac)
|
|
|
//if ac.Id > 0 {
|
|
|
// mysql2.Db.Table(ac.TableName()).Where("date=?", t2).Updates(&actives.ActiveUserModel{
|
|
|
// ActiveList: fmt.Sprintf("%v,%v", ac.ActiveList, p.Id),
|
|
|
// })
|
|
|
//
|
|
|
//} else {
|
|
|
// mysql2.Db.Table(ac.TableName()).Create(&actives.ActiveUserModel{
|
|
|
// Date: t2,
|
|
|
// ActiveList: fmt.Sprintf("%v", p.Id),
|
|
|
// })
|
|
|
//}
|
|
|
var ac actives.ActiveUserModel
|
|
|
mysql2.Db.Table(ac.TableName()).Where("user_id=?", p.Id).First(&ac)
|
|
|
if ac.Id > 0 { //存在更新用户的活跃时间
|
|
|
mysql2.Db.Table(ac.TableName()).Where("id=?", ac.Id).Update("update_time", time.Now())
|
|
|
back.Suc(c, "ok", nil)
|
|
|
return
|
|
|
} else {
|
|
|
var uf user.RecookUserInfoModel
|
|
|
mysql2.Db.Table(uf.TableName()).Where("id=?", p.Id).First(&uf)
|
|
|
if uf.Id > 0 {
|
|
|
t1 := uf.CreatedAt.Time.Format("2006-01-02 15:04:06")
|
|
|
t2, _ := time.ParseInLocation("2006-01-02 15:04:06", t1, time.Local)
|
|
|
var act = actives.ActiveUserModel{
|
|
|
UserID: p.Id,
|
|
|
CreatedTime: t2,
|
|
|
UpdateTime: time.Now(),
|
|
|
}
|
|
|
mysql2.Db.Table(act.TableName()).Create(&act)
|
|
|
back.Suc(c, "ok", nil)
|
|
|
return
|
|
|
} else {
|
|
|
back.Fail(c, "该用户不存在")
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|