Просмотр исходного кода

用户选择产品接口开发

jiaojiao7 4 лет назад
Родитель
Сommit
527d6ef1fb
2 измененных файлов с 44 добавлено и 29 удалено
  1. 29 28
      manage/user/user.go
  2. 15 1
      test/manage/user_test.go

+ 29 - 28
manage/user/user.go

@@ -1,15 +1,13 @@
 package user
 
 import (
+	"encoding/json"
 	"github.com/gin-gonic/gin"
 	"go.uber.org/zap"
+	"log"
 	"sfbase/global"
-	"sfis/db"
-	"sfis/model"
-	"sfis/model/response"
+	"sfis/service"
 	"strconv"
-	"strings"
-	"time"
 )
 
 func DevUserManageRegister(router *gin.Engine) {
@@ -18,6 +16,7 @@ func DevUserManageRegister(router *gin.Engine) {
 	{
 		userGroup.POST("/create", userCreate)
 		userGroup.POST("/userProjectChoose", userProjectChoose)
+		userGroup.POST("/userProjectList", userProjectList)
 	}
 }
 
@@ -35,28 +34,30 @@ func userProjectChoose(c *gin.Context) {
 	interfaceStatus, _ := strconv.Atoi(c.PostForm("interfaceStatus"))
 	callTimesLimitDay, _ := strconv.Atoi(c.PostForm("callTimesLimitDay"))
 	dataNumOneTimes, _ := strconv.Atoi(c.PostForm("dataNumOneTimes"))
-	insertArr := []*model.UserProduct{}
-	projectIdsArr := strings.Split(projectIds, ",")
-	if len(projectIdsArr) > 0 {
-		for _, v := range projectIdsArr {
-			userProject := &model.UserProduct{}
-			userProject.AppID = appId
-			userProject.StartAt, _ = time.ParseInLocation("2006-01-02 15:04:05", startTime, time.Local)
-			userProject.EndAt, _ = time.ParseInLocation("2006-01-02 15:04:05", endTime, time.Local)
-			userProject.LeftNum = leftNum
-			userProject.CostModel = costModel
-			userProject.InterfaceStatus = interfaceStatus
-			userProject.CallTimesLimitDay = callTimesLimitDay
-			userProject.DataNumLimitOneTimes = dataNumOneTimes
-			id, _ := strconv.Atoi(v)
-			userProject.ProductID = id
-			insertArr = append(insertArr, userProject)
-		}
-		tx := db.GetSFISDB().CreateInBatches(insertArr, len(insertArr))
-		if tx.Error == nil {
-			response.Ok(c)
-			return
-		}
+	tradeMoney, _ := strconv.Atoi(c.PostForm("tradeMoney"))
+	tradeMoney = tradeMoney * 100
+	buyType,_ := strconv.Atoi(c.PostForm("buyType"))
+	historyUnitPrice,_ := strconv.Atoi(c.PostForm("historyUnitPrice"))
+	log.Println("tradeMoney", tradeMoney)
+	p := gin.H{
+		"appId":             appId,
+		"projectIds":        projectIds,
+		"startTime":         startTime,
+		"endTime":           endTime,
+		"leftNum":           leftNum,
+		"costModel":         costModel,
+		"interfaceStatus":   interfaceStatus,
+		"callTimesLimitDay": callTimesLimitDay,
+		"dataNumOneTimes":   dataNumOneTimes,
 	}
-	response.FailWithMessage("缺少参数", c)
+	bs, _ := json.Marshal(p)
+	param := string(bs)
+	global.Logger.Info("api userProjectChoose参数:", zap.Any("param", param))
+	service.UserProject(projectIds, appId, startTime, endTime, leftNum, costModel, interfaceStatus, callTimesLimitDay, dataNumOneTimes, tradeMoney, buyType, historyUnitPrice, c)
+}
+
+func userProjectList(c *gin.Context) {
+	appId := c.PostForm("appId")
+	global.Logger.Info("manage userProjectList接口参数:", zap.Any("appId", appId))
+	service.UserProjectList(appId, c)
 }

+ 15 - 1
test/manage/user_test.go

@@ -55,7 +55,7 @@ func Test_CreateUser(t *testing.T) {
 }
 func Test_UserProductChoose(t *testing.T) {
 	appId := "sfPQRYRQMAAwcGBwYBCgcA"
-	projectIds := "1007,1008"
+	projectIds := "1009"
 	startTime := "2021-01-11 00:00:00"
 	endTime := "2022-01-11 00:00:00"
 	leftNum := "10000"
@@ -73,6 +73,9 @@ func Test_UserProductChoose(t *testing.T) {
 	data["interfaceStatus"] = []string{interfaceStatus}
 	data["callTimesLimitDay"] = []string{callTimesLimitDay}
 	data["dataNumOneTimes"] = []string{dataNumOneTimes}
+	data["tradeMoney"] = []string{"1000"}
+	data["buyType"] = []string{"1"}
+	data["historyUnitPrice"] = []string{"18"}
 	now := time.Now().Unix()
 
 	bs, _ := sutil.HttpPostForm("http://localhost:8080/manage/user/userProjectChoose", map[string]string{
@@ -81,6 +84,17 @@ func Test_UserProductChoose(t *testing.T) {
 	log.Print(string(bs))
 }
 
+func Test_UserProjectList(t *testing.T) {
+	appId := "sfPQRYRQMAAwcGBwYBCgcA"
+	data := make(url.Values)
+	data["appId"] = []string{appId}
+	now := time.Now().Unix()
+	bs, _ := sutil.HttpPostForm("http://localhost:8080/manage/user/userProjectList", map[string]string{
+		"timestamp": fmt.Sprint(now),
+	}, data)
+	log.Print(string(bs))
+}
+
 func post(url string, form map[string]string) (data map[string]interface{}) {
 	str := ""
 	for k, v := range form {