Browse Source

增加商品活动查询

master v0.5.9
guzeng 3 years ago
parent
commit
acd68471a5
6 changed files with 325 additions and 63 deletions
  1. +9
    -9
      activity.go
  2. +50
    -54
      activity_test.go
  3. +1
    -0
      go.mod
  4. +2
    -0
      go.sum
  5. +246
    -0
      product_activity.go
  6. +17
    -0
      product_activity_test.go

+ 9
- 9
activity.go View File

@ -58,12 +58,12 @@ func GetActivity(site_id, dbname, id string, sku_id string, url ...string) ([]ma
var start int var start int
for _, item := range res_arr { for _, item := range res_arr {
start, err = strconv.Atoi(item["Starttime"])
start, err = strconv.Atoi(item["starttime"])
if err != nil { if err != nil {
log.Println(err) log.Println(err)
} }
activitys = append(activitys, Activity{ activitys = append(activitys, Activity{
Id: item["Id"],
Id: item["id"],
Start: start, Start: start,
}) })
} }
@ -76,7 +76,7 @@ func GetActivity(site_id, dbname, id string, sku_id string, url ...string) ([]ma
if len(activitys) > 0 { if len(activitys) > 0 {
for _, v := range activitys { for _, v := range activitys {
for _, old := range res_arr { for _, old := range res_arr {
if v.Id == old["Id"] {
if v.Id == old["id"] {
list = append(list, old) list = append(list, old)
break break
} }
@ -136,12 +136,12 @@ func GetWarmingActivity(site_id, dbname, id string, sku_id string, url ...string
var start int var start int
for _, item := range res_arr { for _, item := range res_arr {
start, err = strconv.Atoi(item["Starttime"])
start, err = strconv.Atoi(item["starttime"])
if err != nil { if err != nil {
log.Println(err) log.Println(err)
} }
activitys = append(activitys, Activity{ activitys = append(activitys, Activity{
Id: item["Id"],
Id: item["id"],
Start: start, Start: start,
}) })
} }
@ -154,7 +154,7 @@ func GetWarmingActivity(site_id, dbname, id string, sku_id string, url ...string
if len(activitys) > 0 { if len(activitys) > 0 {
for _, v := range activitys { for _, v := range activitys {
for _, old := range res_arr { for _, old := range res_arr {
if v.Id == old["Id"] {
if v.Id == old["id"] {
list = append(list, old) list = append(list, old)
break break
} }
@ -214,12 +214,12 @@ func GetAllActivity(site_id, dbname, id string, sku_id string, url ...string) ([
var start int var start int
for _, item := range res_arr { for _, item := range res_arr {
start, err = strconv.Atoi(item["Starttime"])
start, err = strconv.Atoi(item["starttime"])
if err != nil { if err != nil {
log.Println(err) log.Println(err)
} }
activitys = append(activitys, Activity{ activitys = append(activitys, Activity{
Id: item["Id"],
Id: item["id"],
Start: start, Start: start,
}) })
} }
@ -232,7 +232,7 @@ func GetAllActivity(site_id, dbname, id string, sku_id string, url ...string) ([
if len(activitys) > 0 { if len(activitys) > 0 {
for _, v := range activitys { for _, v := range activitys {
for _, old := range res_arr { for _, old := range res_arr {
if v.Id == old["Id"] {
if v.Id == old["id"] {
list = append(list, old) list = append(list, old)
break break
} }


+ 50
- 54
activity_test.go View File

@ -1,73 +1,69 @@
package productrpc package productrpc
import ( import (
"log"
"sort"
"strconv"
"testing" "testing"
) )
func Test_GetAllActivity(t *testing.T) { func Test_GetAllActivity(t *testing.T) {
// dbname := "shop_v2"
// id := "10248"
// site_id := "10248"
// sku_id := "10248"
dbname := "shop_v2"
id := "122"
site_id := "1058278"
// ret, err := GetAllActivity(site_id, dbname, id, sku_id)
ret, err := GetAllActivity(site_id, dbname, id, "0")
// t.Log(ret)
// t.Log(err)
t.Log(ret)
t.Log(err)
res_arr := []map[string]string{
map[string]string{
"Id": "55",
"Starttime": "19852365",
},
map[string]string{
"Id": "22",
"Starttime": "17852365",
},
map[string]string{
"Id": "11",
"Starttime": "18852365",
},
}
t.Log(res_arr)
// res_arr := []map[string]string{
// map[string]string{
// "Id": "55",
// "Starttime": "19852365",
// },
// map[string]string{
// "Id": "22",
// "Starttime": "17852365",
// },
// map[string]string{
// "Id": "11",
// "Starttime": "18852365",
// },
// }
// t.Log(res_arr)
var activitys Activitys
var err error
// var activitys Activitys
// var err error
if len(res_arr) > 0 {
var start int
// if len(res_arr) > 0 {
// var start int
for _, item := range res_arr {
start, err = strconv.Atoi(item["Starttime"])
if err != nil {
log.Println(err)
}
activitys = append(activitys, Activity{
Id: item["Id"],
Start: start,
})
}
}
// for _, item := range res_arr {
// start, err = strconv.Atoi(item["Starttime"])
// if err != nil {
// log.Println(err)
// }
// activitys = append(activitys, Activity{
// Id: item["Id"],
// Start: start,
// })
// }
// }
sort.Sort(activitys)
// sort.Sort(activitys)
t.Log(activitys)
// t.Log(activitys)
var list []map[string]string = make([]map[string]string, 0)
// var list []map[string]string = make([]map[string]string, 0)
if len(activitys) > 0 {
for _, v := range activitys {
for _, old := range res_arr {
if v.Id == old["Id"] {
list = append(list, old)
break
}
}
}
}
// if len(activitys) > 0 {
// for _, v := range activitys {
// for _, old := range res_arr {
// if v.Id == old["Id"] {
// list = append(list, old)
// break
// }
// }
// }
// }
t.Log(list)
// t.Log(list)
} }

+ 1
- 0
go.mod View File

@ -5,6 +5,7 @@ go 1.14
require ( require (
git.tetele.net/tgo/conf v0.33.1 // indirect git.tetele.net/tgo/conf v0.33.1 // indirect
git.tetele.net/tgo/crypter v0.2.2 // indirect git.tetele.net/tgo/crypter v0.2.2 // indirect
git.tetele.net/tgo/helper v0.1.9 // indirect
github.com/chai2010/protorpc v1.1.3 // indirect github.com/chai2010/protorpc v1.1.3 // indirect
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 // indirect golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 // indirect
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c // indirect golang.org/x/sync v0.0.0-20210220032951-036812b2e83c // indirect


+ 2
- 0
go.sum View File

@ -2,6 +2,8 @@ git.tetele.net/tgo/conf v0.33.1 h1:ZEIv3Vq35RCv5f3T3Uz97s2mkZLl7W5OlmXvzI3/sS8=
git.tetele.net/tgo/conf v0.33.1/go.mod h1:AWVIBEDE5dtotthUgR0SWaR2Qa6/f+O5WQ3s7Tj8q7A= git.tetele.net/tgo/conf v0.33.1/go.mod h1:AWVIBEDE5dtotthUgR0SWaR2Qa6/f+O5WQ3s7Tj8q7A=
git.tetele.net/tgo/crypter v0.2.2 h1:YMQJh2Gj5Po4ZfelJUmXBKi01UbmtiSy3bmqRfnYQMo= git.tetele.net/tgo/crypter v0.2.2 h1:YMQJh2Gj5Po4ZfelJUmXBKi01UbmtiSy3bmqRfnYQMo=
git.tetele.net/tgo/crypter v0.2.2/go.mod h1:vfvRLZA8+lHNgNXneOcgvVhDyuv25ZRb+C6xHOmXNx0= git.tetele.net/tgo/crypter v0.2.2/go.mod h1:vfvRLZA8+lHNgNXneOcgvVhDyuv25ZRb+C6xHOmXNx0=
git.tetele.net/tgo/helper v0.1.9 h1:i1KMqWAlilnrFfkJMw1+aJVU2Mlfz1ISBLLCFGvwCHA=
git.tetele.net/tgo/helper v0.1.9/go.mod h1:89mQwyfqZ+t8YXiVwzSxA70gLlUNqoZGDEUxvV46jXk=
github.com/chai2010/protorpc v1.1.3 h1:VJK5hIoZn0XCGol0GmbxZkUG6FbTI5LP2Lam6RVd15w= github.com/chai2010/protorpc v1.1.3 h1:VJK5hIoZn0XCGol0GmbxZkUG6FbTI5LP2Lam6RVd15w=
github.com/chai2010/protorpc v1.1.3/go.mod h1:/wO0kiyVdu7ug8dCMrA2yDr2vLfyhsLEuzLa9J2HJ+I= github.com/chai2010/protorpc v1.1.3/go.mod h1:/wO0kiyVdu7ug8dCMrA2yDr2vLfyhsLEuzLa9J2HJ+I=
github.com/golang/protobuf v1.0.0 h1:lsek0oXi8iFE9L+EXARyHIjU5rlWIhhTkjDz3vHhWWQ= github.com/golang/protobuf v1.0.0 h1:lsek0oXi8iFE9L+EXARyHIjU5rlWIhhTkjDz3vHhWWQ=


+ 246
- 0
product_activity.go View File

@ -0,0 +1,246 @@
package productrpc
import (
"encoding/json"
"log"
"sort"
"strconv"
// "strconv"
// "time"
"git.tetele.net/tgo/helper"
)
/**
* 获取商品进行中活动
* 2021/10/06
* GZ
*/
func GetProductActivity(site_id, dbname, id string, url ...string) ([]map[string]string, error) {
conn, err := rpc_server_conn(url...)
if err != nil {
return nil, err
}
defer conn.Close()
arg := GetActivityParam{site_id, dbname, id, "0"}
req, err := SetReqData(arg)
if err != nil {
return nil, err
}
res := &Response{}
err = conn.GetProductActivity(req, res)
if err != nil {
return nil, err
}
res_data_de, err := GetResData(res)
if err != nil {
return nil, err
}
if res_data_de == "" {
return nil, nil
}
var res_arr []map[string]string
err = json.Unmarshal([]byte(res_data_de), &res_arr)
if err != nil {
return nil, err
}
var activitys Activitys
if len(res_arr) > 0 {
var start int
for _, item := range res_arr {
start, err = strconv.Atoi(item["Starttime"])
if err != nil {
log.Println(err)
}
activitys = append(activitys, Activity{
Id: item["Id"],
Start: start,
})
}
}
sort.Sort(activitys)
var list []map[string]string = make([]map[string]string, 0)
if len(activitys) > 0 {
for _, v := range activitys {
for _, old := range res_arr {
if v.Id == old["Id"] {
list = append(list, old)
break
}
}
}
}
return list, nil
}
/**
* 获取商品预热中活动
* 2021/10/06
* GZ
*/
func GetProductWarmingActivity(site_id, dbname, id string, url ...string) ([]map[string]string, error) {
conn, err := rpc_server_conn(url...)
if err != nil {
return nil, err
}
defer conn.Close()
arg := GetActivityParam{site_id, dbname, id, "0"}
req, err := SetReqData(arg)
if err != nil {
return nil, err
}
res := &Response{}
err = conn.GetProductWarmingActivity(req, res)
if err != nil {
return nil, err
}
res_data_de, err := GetResData(res)
if err != nil {
return nil, err
}
if res_data_de == "" {
return nil, nil
}
var res_arr []map[string]string
err = json.Unmarshal([]byte(res_data_de), &res_arr)
if err != nil {
return nil, err
}
var activitys Activitys
if len(res_arr) > 0 {
var start int
for _, item := range res_arr {
start, err = strconv.Atoi(item["Starttime"])
if err != nil {
log.Println(err)
}
activitys = append(activitys, Activity{
Id: item["Id"],
Start: start,
})
}
}
sort.Sort(activitys)
var list []map[string]string = make([]map[string]string, 0)
if len(activitys) > 0 {
for _, v := range activitys {
for _, old := range res_arr {
if v.Id == old["Id"] {
list = append(list, old)
break
}
}
}
}
return list, nil
}
/**
* 获取商品进行中活动
* 2021/10/06
* GZ
*/
func GetProductAllActivity(site_id, dbname, id string, url ...string) ([]map[string]interface{}, error) {
conn, err := rpc_server_conn(url...)
if err != nil {
return nil, err
}
defer conn.Close()
arg := GetActivityParam{site_id, dbname, id, "0"}
req, err := SetReqData(arg)
if err != nil {
return nil, err
}
res := &Response{}
err = conn.GetProductAllActivity(req, res)
if err != nil {
return nil, err
}
res_data_de, err := GetResData(res)
if err != nil {
return nil, err
}
if res_data_de == "" {
return nil, nil
}
var res_arr []map[string]interface{}
err = json.Unmarshal([]byte(res_data_de), &res_arr)
if err != nil {
log.Println(err)
return nil, err
}
var activitys Activitys
if len(res_arr) > 0 {
var start int
for _, item := range res_arr {
start = helper.ToInt(item["starttime"])
activitys = append(activitys, Activity{
Id: helper.ToStr(item["id"]),
Start: start,
})
}
}
sort.Sort(activitys)
var list []map[string]interface{} = make([]map[string]interface{}, 0)
if len(activitys) > 0 {
for _, v := range activitys {
for _, old := range res_arr {
if v.Id == helper.ToStr(old["id"]) {
list = append(list, old)
break
}
}
}
}
return list, nil
}

+ 17
- 0
product_activity_test.go View File

@ -0,0 +1,17 @@
package productrpc
import (
"testing"
)
func Test_GetProductAllActivity(t *testing.T) {
dbname := "shop_v2"
id := "122"
site_id := "1058278"
ret, err := GetAllActivity(site_id, dbname, id, "0")
t.Log(ret)
t.Log(err)
}

Loading…
Cancel
Save