Merge pull request #2 from Selly-Modules/v1

[Update] Response search data
This commit is contained in:
Nam Huynh 2022-03-10 20:51:00 +07:00 committed by GitHub
commit 34bba1aa32
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 33 additions and 14 deletions

View File

@ -42,8 +42,12 @@ func NewClient(config Config) (*Client, error) {
func (c *Client) SyncData(data SyncData) (bool, error) { func (c *Client) SyncData(data SyncData) (bool, error) {
var ( var (
res Response res Response
req = RequestBody{
ApiKey: c.Config.ApiKey,
Body: toBytes(data),
}
) )
msg, err := c.natsServer.Request(SubjectSyncData, toBytes(data)) msg, err := c.natsServer.Request(SubjectSyncData, toBytes(req))
if err != nil { if err != nil {
return false, err return false, err
} }
@ -58,40 +62,48 @@ func (c *Client) SyncData(data SyncData) (bool, error) {
// Search // Search
// Request search to service es // Request search to service es
func (c *Client) Search(query ESQuery) ([]string, error) { func (c *Client) Search(query ESQuery) (*Response, error) {
var ( var (
res Response req = RequestBody{
ApiKey: c.Config.ApiKey,
Body: toBytes(query),
}
res *Response
) )
msg, err := c.natsServer.Request(SubjectSearch, toBytes(query)) msg, err := c.natsServer.Request(SubjectSearch, toBytes(req))
if err != nil { if err != nil {
return res.Data, err return nil, err
} }
if err = json.Unmarshal(msg.Data, &res); err != nil { if err = json.Unmarshal(msg.Data, &res); err != nil {
return res.Data, err return nil, err
} }
if res.Message != "" { if res.Message != "" {
return res.Data, errors.New(res.Message) return nil, errors.New(res.Message)
} }
return res.Data, nil return res, nil
} }
// UpdateDocument // UpdateDocument
// Insert or update document to ES // Insert or update document to ES
func (c *Client) UpdateDocument(query UpdateDataPayload) ([]string, error) { func (c *Client) UpdateDocument(query UpdateDataPayload) (bool, error) {
var ( var (
req = RequestBody{
ApiKey: c.Config.ApiKey,
Body: toBytes(query),
}
res Response res Response
) )
msg, err := c.natsServer.Request(SubjectUpdateDocument, toBytes(query)) msg, err := c.natsServer.Request(SubjectUpdateDocument, toBytes(req))
if err != nil { if err != nil {
return res.Data, err return false, err
} }
if err = json.Unmarshal(msg.Data, &res); err != nil { if err = json.Unmarshal(msg.Data, &res); err != nil {
return res.Data, err return false, err
} }
if res.Message != "" { if res.Message != "" {
return res.Data, errors.New(res.Message) return res.Success, errors.New(res.Message)
} }
return res.Data, nil return res.Success, nil
} }
func toBytes(data interface{}) []byte { func toBytes(data interface{}) []byte {

View File

@ -2,6 +2,12 @@ package elasticsearch
import "time" import "time"
// RequestBody ...
type RequestBody struct {
ApiKey string `json:"apiKey"`
Body []byte `json:"body"`
}
// Response // Response
// response to service es // response to service es
type Response struct { type Response struct {
@ -50,6 +56,7 @@ type ESQuery struct {
PaymentMethod string PaymentMethod string
Source string Source string
FromNewActiveSeller string FromNewActiveSeller string
FromNewActiveBuyer string
EmailStatus string EmailStatus string
MerchantStatus string MerchantStatus string
IsCalled string IsCalled string