forked from all_user/stat_center
109 lines
2.4 KiB
Go
109 lines
2.4 KiB
Go
package appInfoSer
|
|
|
|
import (
|
|
"context"
|
|
"stat/api/proto"
|
|
"stat/common/stdLog"
|
|
"stat/common/utils"
|
|
"stat/models/appInfoMod"
|
|
"time"
|
|
)
|
|
|
|
// 获取appInfo列表
|
|
func GetAppInfoList(ctx context.Context, param proto.ListAppInfoReq) (code stdLog.CodeType, data interface{}, err error) {
|
|
resp := proto.ListAppInfoRes{
|
|
Total: 0,
|
|
List: make([]proto.AppInfoRes, 0),
|
|
}
|
|
|
|
skip, limit := utils.ToDBPage(param.PageNum, param.PageSize)
|
|
|
|
total, aList, err := appInfoMod.GetAppInfoList(ctx, param.AppName, param.Used, skip, limit)
|
|
if err != nil {
|
|
code = stdLog.Failure
|
|
return
|
|
}
|
|
|
|
for _, v := range aList {
|
|
tmp := proto.AppInfoRes{
|
|
AppId: v.AppId,
|
|
Name: v.Name,
|
|
LandPages: v.LandPages,
|
|
IconImg: v.IconImg,
|
|
CreatedAt: v.CreatedAt,
|
|
AdvertiseNum: v.AdvertiseNum,
|
|
AdvertiseNewNum: v.AdvertiseNewNum,
|
|
UpdatedAt: v.UpdatedAt,
|
|
}
|
|
|
|
resp.List = append(resp.List, tmp)
|
|
}
|
|
|
|
resp.Total = total
|
|
|
|
data = resp
|
|
code = stdLog.Success
|
|
return
|
|
}
|
|
|
|
// 添加appInfo
|
|
func AddAppInfo(ctx context.Context, param proto.AddAppInfoReq) (code stdLog.CodeType, data interface{}, err error) {
|
|
_, serr := appInfoMod.GetAppInfoById(ctx, *param.AppId)
|
|
if serr != nil {
|
|
return stdLog.AppExistErr, nil, serr
|
|
}
|
|
|
|
now := time.Now()
|
|
doc := appInfoMod.AppInfo{
|
|
AppId: *param.AppId,
|
|
Name: *param.Name,
|
|
IconImg: *param.IconImg,
|
|
// LandPages: *param.LandPages,
|
|
Used: true,
|
|
AdvertiseNum: 5,
|
|
AdvertiseNewNum: 5,
|
|
CreatedAt: now,
|
|
UpdatedAt: now,
|
|
}
|
|
|
|
if err = appInfoMod.AddAppInfo(ctx, &doc); err != nil {
|
|
code = stdLog.Failure
|
|
return
|
|
}
|
|
|
|
code = stdLog.Success
|
|
return
|
|
}
|
|
|
|
// 更新appInfo
|
|
func UpdateAppInfo(ctx context.Context, param proto.UpdateAppInfoReq) (code stdLog.CodeType, data interface{}, err error) {
|
|
now := time.Now()
|
|
doc := appInfoMod.AppInfoUpdate{
|
|
Name: param.Name,
|
|
LandPages: param.LandPages,
|
|
IconImg: param.IconImg,
|
|
UpdatedAt: &now,
|
|
AdvertiseNum: param.AdvertiseNum,
|
|
AdvertiseNewNum: param.AdvertiseNewNum,
|
|
}
|
|
|
|
if err = appInfoMod.UpdateAppInfo(ctx, *param.AppId, doc); err != nil {
|
|
code = stdLog.Failure
|
|
return
|
|
}
|
|
|
|
code = stdLog.Success
|
|
return
|
|
}
|
|
|
|
// 删除appInfo
|
|
func DelAppInfo(ctx context.Context, param proto.DelAppInfoReq) (code stdLog.CodeType, data interface{}, err error) {
|
|
if err = appInfoMod.DelAppInfo(ctx, *param.AppId); err != nil {
|
|
code = stdLog.Failure
|
|
return
|
|
}
|
|
|
|
code = stdLog.Success
|
|
return
|
|
}
|