refactor-location #134
			
				
			
		
		
		
	| 
						 | 
					@ -0,0 +1,35 @@
 | 
				
			||||||
 | 
					package client
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import (
 | 
				
			||||||
 | 
						"encoding/json"
 | 
				
			||||||
 | 
						"errors"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						"git.selly.red/Selly-Modules/natsio"
 | 
				
			||||||
 | 
						"git.selly.red/Selly-Modules/natsio/model"
 | 
				
			||||||
 | 
						"git.selly.red/Selly-Modules/natsio/subject"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Product ...
 | 
				
			||||||
 | 
					type Product struct{}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetProduct ...
 | 
				
			||||||
 | 
					func GetProduct() Product {
 | 
				
			||||||
 | 
						return Product{}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (c Product) ApplyRequest(p model.ProductApplyRequestPayload) error {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.Product.ApplyRequest, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Error string `json:"error"`
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if err = json.Unmarshal(msg.Data, &r); err != nil {
 | 
				
			||||||
 | 
							return err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						if r.Error != "" {
 | 
				
			||||||
 | 
							return errors.New(r.Error)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return nil
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,5 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type ProductApplyRequestPayload struct {
 | 
				
			||||||
 | 
						RequestID string `json:"requestId"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,8 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type QueueScheduleTaskRequest struct {
 | 
				
			||||||
 | 
						ID          string `json:"id"`
 | 
				
			||||||
 | 
						NatsSubject string `json:"natsSubject"`
 | 
				
			||||||
 | 
						Data        string `json:"data"`
 | 
				
			||||||
 | 
						StartAt     int64  `json:"startAt"` // unix
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -101,6 +101,7 @@ type GetWarehousesRequest struct {
 | 
				
			||||||
	Status       string   `json:"status"`
 | 
						Status       string   `json:"status"`
 | 
				
			||||||
	Supplier     string   `json:"supplier"`
 | 
						Supplier     string   `json:"supplier"`
 | 
				
			||||||
	BusinessType string   `json:"businessType"`
 | 
						BusinessType string   `json:"businessType"`
 | 
				
			||||||
 | 
						IDs          []string `json:"ids"`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	Page  int64 `json:"page"`
 | 
						Page  int64 `json:"page"`
 | 
				
			||||||
	Limit int64 `json:"limit"`
 | 
						Limit int64 `json:"limit"`
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -21,6 +21,8 @@ var prefixes = struct {
 | 
				
			||||||
	SupplierRole       string
 | 
						SupplierRole       string
 | 
				
			||||||
	Campaign           string
 | 
						Campaign           string
 | 
				
			||||||
	Affiliate          string
 | 
						Affiliate          string
 | 
				
			||||||
 | 
						Product            string
 | 
				
			||||||
 | 
						Queue              string
 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	Communication:      "communication",
 | 
						Communication:      "communication",
 | 
				
			||||||
	Order:              "order",
 | 
						Order:              "order",
 | 
				
			||||||
| 
						 | 
					@ -42,4 +44,6 @@ var prefixes = struct {
 | 
				
			||||||
	Segment:            "segment",
 | 
						Segment:            "segment",
 | 
				
			||||||
	Campaign:           "campaign",
 | 
						Campaign:           "campaign",
 | 
				
			||||||
	Affiliate:          "affiliate",
 | 
						Affiliate:          "affiliate",
 | 
				
			||||||
 | 
						Product:            "product",
 | 
				
			||||||
 | 
						Queue:              "queue",
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,14 @@
 | 
				
			||||||
 | 
					package subject
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import "fmt"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// getSegmentValue ...
 | 
				
			||||||
 | 
					func getProductValue(val string) string {
 | 
				
			||||||
 | 
						return fmt.Sprintf("%s.%s", prefixes.Product, val)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var Product = struct {
 | 
				
			||||||
 | 
						ApplyRequest string
 | 
				
			||||||
 | 
					}{
 | 
				
			||||||
 | 
						ApplyRequest: getProductValue("apply_request"),
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,13 @@
 | 
				
			||||||
 | 
					package subject
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import "fmt"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func getQueueValue(val string) string {
 | 
				
			||||||
 | 
						return fmt.Sprintf("%s.%s", prefixes.Queue, val)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var Queue = struct {
 | 
				
			||||||
 | 
						ScheduleTask string
 | 
				
			||||||
 | 
					}{
 | 
				
			||||||
 | 
						ScheduleTask: getQueueValue("schedule_task"),
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
		Loading…
	
		Reference in New Issue