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
|
|
}
|