Pārlūkot izejas kodu

新增积分日志等接口

k.zhang 2 gadi atpakaļ
vecāks
revīzija
b9656743ce

+ 33 - 1
apis/bizhi/apis/score_log.go

@@ -1,7 +1,39 @@
 package apis
 
-import "github.com/gin-gonic/gin"
+import (
+	"duoduo/apis/bizhi/models"
+	"duoduo/models/bizhi"
+	"duoduo/tools/app"
+	"github.com/gin-gonic/gin"
+)
 
 func ScoreLogList(c *gin.Context) {
+	var inData models.ScoreLogListRequest
 
+	var score bizhi.ScoreLog
+
+	var pageSize = 10
+	var pageIndex = 1
+
+	err := c.ShouldBindJSON(&inData)
+	if err != nil {
+		app.Error(c, 400, err, err.Error())
+		return
+	}
+
+	if inData.PageSize != 0 {
+		pageSize = inData.PageSize
+	}
+	if inData.PageIndex != 0 {
+		pageIndex = inData.PageIndex
+	}
+
+	score.OpenID = inData.OpenId
+	scoreVal, count, err := score.ScoreLogList(pageSize, pageIndex)
+	if err != nil {
+		app.Error(c, 500, err, err.Error())
+		return
+	}
+
+	app.PageOK(c, scoreVal, count, pageIndex, pageSize, app.Success)
 }

+ 47 - 5
apis/bizhi/apis/user.go

@@ -4,10 +4,10 @@ import (
 	"duoduo/apis/bizhi/models"
 	"duoduo/apis/pdd"
 	"duoduo/models/bizhi"
+	"duoduo/tools"
 	"duoduo/tools/app"
 	"fmt"
 	"github.com/gin-gonic/gin"
-	"pmo/pkg/tools"
 )
 
 //获取用户openid,没有,注册用户
@@ -47,15 +47,15 @@ func OpenIdSet(c *gin.Context) {
 		if inData.OpenId != "" { //有上级
 			sql1.OpenID = inData.OpenId
 			//创建用户
-			sqlData.CreateTime = tools.GetCurrentTimeStr()
-			sqlData.UpdateTime = tools.GetCurrentTimeStr()
+			sqlData.CreateTime = tools.GetCurrntTimeStr()
+			sqlData.UpdateTime = tools.GetCurrntTimeStr()
 			sqlData.OpenID1 = inData.OpenId
 
 			sqlData.Create()
 		} else { //无上级用户
 			//创建用户
-			sqlData.CreateTime = tools.GetCurrentTimeStr()
-			sqlData.UpdateTime = tools.GetCurrentTimeStr()
+			sqlData.CreateTime = tools.GetCurrntTimeStr()
+			sqlData.UpdateTime = tools.GetCurrntTimeStr()
 			sqlData.Create()
 		}
 
@@ -84,6 +84,7 @@ func GetUserScore(c *gin.Context) {
 	app.OK(c, data.Score, "成功")
 }
 
+//用户消费积分
 func SubUserScore(c *gin.Context) {
 	var inData models.SubUserScoreRequest
 	var sqlData bizhi.User
@@ -103,3 +104,44 @@ func SubUserScore(c *gin.Context) {
 	app.OK(c, nil, "")
 
 }
+
+//下级用户列表
+func GetUserList(c *gin.Context) {
+	var inData models.GetUserListRequest
+
+	var user bizhi.User
+
+	var pageSize = 10
+	var pageIndex = 1
+
+	err := c.ShouldBindJSON(&inData)
+	if err != nil {
+		app.Error(c, 400, err, err.Error())
+		return
+	}
+
+	if inData.PageSize != 0 {
+		pageSize = inData.PageSize
+	}
+	if inData.PageIndex != 0 {
+		pageIndex = inData.PageIndex
+	}
+
+	user.OpenID1 = inData.OpenIdOne
+	userVal, count, err := user.GetOpenIdList(pageSize, pageIndex)
+	if err != nil {
+		app.Error(c, 500, err, err.Error())
+		return
+	}
+	for i := 0; i < len(userVal); i++ {
+		///pages/image/my_fill1.png
+		if userVal[i].AvatarUrl == "" {
+			userVal[i].AvatarUrl = "/pages/image/my_fill1.png"
+		}
+		if userVal[i].NickName == "" {
+			userVal[i].NickName = "用户暂未授权昵称获取"
+		}
+	}
+
+	app.PageOK(c, userVal, count, pageIndex, pageSize, app.Success)
+}

+ 6 - 0
apis/bizhi/models/user.go

@@ -20,3 +20,9 @@ type SubUserScoreRequest struct {
 	OpenId string `json:"openId"`
 	Score  int    `json:"score"`
 }
+
+type GetUserListRequest struct {
+	OpenIdOne string `json:"openIdOne"`
+	PageSize  int    `json:"pageSize"`
+	PageIndex int    `json:"pageIndex"`
+}

+ 2 - 1
apis/bizhi/router.go

@@ -15,6 +15,7 @@ func InitBiZhiRouter(engine *gin.RouterGroup) {
 		v1.POST("/get.score", apis.GetUserScore)  // 校验积分
 		v1.POST("/sub.score", apis.SubUserScore)  //+-积分
 		v1.POST("/score.list", apis.ScoreLogList) //积分消费记录
-		//邀请用户列表
+		v1.POST("/openid.list", apis.GetUserList) //邀请用户列表
+
 	}
 }

+ 17 - 0
models/bizhi/score_log.go

@@ -1,5 +1,7 @@
 package bizhi
 
+import orm "duoduo/database"
+
 type ScoreLog struct {
 	ID         int64  `gorm:"column:id;type:bigint(20);primary_key" json:"id"`     // 主键
 	OpenID     string `gorm:"column:open_id;type:varchar(255)" json:"open_id"`     // open_id
@@ -10,3 +12,18 @@ type ScoreLog struct {
 func (m *ScoreLog) TableName() string {
 	return "score_log"
 }
+
+func (m *ScoreLog) ScoreLogList(pageSize int, pageIndex int) ([]ScoreLog, int, error) {
+	var doc []ScoreLog
+
+	table := orm.BzMysql.Table(m.TableName())
+
+	table = table.Where("open_id = ?  ", m.OpenID)
+
+	var count int
+	if err := table.Select("id,open_id,score,DATE_FORMAT(create_time,'%Y-%m-%d %H:%i:%s') as create_time").Order("id desc").Offset((pageIndex - 1) * pageSize).Limit(pageSize).Find(&doc).Error; err != nil {
+		return nil, 0, err
+	}
+	table.Count(&count)
+	return doc, count, nil
+}

+ 22 - 3
models/bizhi/user.go

@@ -3,7 +3,8 @@ package bizhi
 import (
 	models2 "duoduo/apis/bizhi/models"
 	orm "duoduo/database"
-	"pmo/pkg/tools"
+	"duoduo/tools"
+	"strconv"
 )
 
 type User struct {
@@ -62,8 +63,10 @@ func (u *User) SubScore(req models2.SubUserScoreRequest) error {
 	}()
 	score.Score = req.Score
 	score.OpenID = req.OpenId
-	score.CreateTime = tools.GetCurrentTimeStr()
-	scoreStr := tools.IntToString(req.Score)
+
+	score.CreateTime = tools.GetCurrntTimeStr()
+	scoreStr := strconv.Itoa(req.Score)
+	//scoreStr := tools.IntToString(req.Score)
 	if err := tx.Table(u.TableName()).Model(&u).Where("open_id = ? ", u.OpenID).Updates(
 		map[string]interface{}{
 			"score": "score + " + scoreStr}).Error; err != nil {
@@ -76,3 +79,19 @@ func (u *User) SubScore(req models2.SubUserScoreRequest) error {
 
 	return nil
 }
+
+//list 接口使用
+func (u *User) GetOpenIdList(pageSize int, pageIndex int) ([]User, int, error) {
+	var doc []User
+
+	table := orm.BzMysql.Table(u.TableName())
+
+	table = table.Where("open_id_1 = ?  ", u.OpenID)
+
+	var count int
+	if err := table.Select("id,nick_name,avatar_url,DATE_FORMAT(create_time,'%Y-%m-%d %H:%i:%s') as create_time").Order("id desc").Offset((pageIndex - 1) * pageSize).Limit(pageSize).Find(&doc).Error; err != nil {
+		return nil, 0, err
+	}
+	table.Count(&count)
+	return doc, count, nil
+}