talent/api_line_sales.go

64 lines
1.2 KiB
Go

package main
import (
"fmt"
"strings"
"github.com/line/line-bot-sdk-go/v7/linebot"
)
func ApiSelectSales(event *linebot.Event) {
args := strings.Split(event.Postback.Data, "&")
data := strings.TrimPrefix(args[0], "sales=")
pname := strings.TrimPrefix(args[1], "purchase=")
sales := &Sales{}
DB.First(sales, "name = ?", data)
tmp, _ := linebot.UnmarshalFlexMessageJSON([]byte(
fmt.Sprintf(greet, sales.Img, sales.Name, "很高興為您服務!"),
))
msg := linebot.NewFlexMessage("很高興為您服務!", tmp)
sticker := linebot.NewStickerMessage("1070", "17852")
SendMessage(event.ReplyToken, event.Source.UserID, msg, sticker)
prod := &Product{}
DB.First(prod, "name = ?", pname)
go func() {
// sales called and start proccess
SendMessage("", event.Source.UserID)
// proccessing
//proccess complete
}()
}
var greet string = `
{
"type": "bubble",
"hero": {
"type": "image",
"url": "%v",
"size": "full"
},
"body": {
"type": "box",
"layout": "vertical",
"contents": [
{
"type": "text",
"text": "你好! 我是%v",
"weight": "bold",
"size": "xl"
},
{
"type": "text",
"text": "%v"
}
]
}
}
`