Compare commits

..

No commits in common. "master" and "define-communication-func" have entirely different histories.

85 changed files with 79 additions and 3735 deletions

View File

@ -1,36 +0,0 @@
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"
)
// Affiliate ...
type Affiliate struct{}
// GetAffiliate ...
func GetAffiliate() Affiliate {
return Affiliate{}
}
// GetTransactions ...
func (w Affiliate) GetTransactions(p model.GetTransactionsRequest) (*model.GetTransactionsResponse, error) {
msg, err := natsio.GetServer().Request(subject.Affiliate.GetTransactions, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.GetTransactionsResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}

View File

@ -1,55 +0,0 @@
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"
)
// Bank ...
type Bank struct{}
// GetBank ...
func GetBank() Bank {
return Bank{}
}
func (s Bank) GetBankById(bankID string) (*model.BankBrief, error) {
msg, err := natsio.GetServer().Request(subject.Bank.GetBankById, toBytes(bankID))
if err != nil {
return nil, err
}
var r struct {
Data *model.BankBrief `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
func (s Bank) CheckBankAndBranchByID(p model.BankBranchRequest) bool {
msg, err := natsio.GetServer().Request(subject.Bank.CheckBankAndBranchByID, toBytes(p))
if err != nil {
return false
}
var r struct {
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return false
}
return r.Error == ""
}

View File

@ -1,39 +0,0 @@
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"
)
// BankBranch ...
type BankBranch struct{}
// GetBankBranch ...
func GetBankBranch() BankBranch {
return BankBranch{}
}
func (s BankBranch) GetBankBranchById(bankBranchID string) (*model.BankBranchBrief, error) {
msg, err := natsio.GetServer().Request(subject.Bank.GetBankBranchById, toBytes(bankBranchID))
if err != nil {
return nil, err
}
var r struct {
Data *model.BankBranchBrief `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}

View File

@ -1,58 +0,0 @@
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"
)
// Campaign ...
type Campaign struct{}
// GetCampaign ...
func GetCampaign() Campaign {
return Campaign{}
}
// GetCampaignTransaction ...
func (c Campaign) GetCampaignTransaction(p model.GetCampaignTransactionsRequest) (*model.ResponseCampaignTransactionAll, error) {
msg, err := natsio.GetServer().Request(subject.Campaign.GetListCampaignTransactionAdminInfoByIDs, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseCampaignTransactionAll `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetCampaignSellerStatistic ....
func (c Campaign) GetCampaignSellerStatistic(req model.GetCampaignSellerStatisticBySellerIDs) (*model.ResponseCampaignSellerStatisticList, error) {
msg, err := natsio.GetServer().Request(subject.Campaign.GetCampaignSellerStatisticBySellerIDs, toBytes(req))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseCampaignSellerStatisticList `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}

View File

@ -3,9 +3,9 @@ package client
import (
"encoding/json"
"git.selly.red/Selly-Modules/natsio"
"git.selly.red/Selly-Modules/natsio/model"
"git.selly.red/Selly-Modules/natsio/subject"
"github.com/Selly-Modules/natsio"
"github.com/Selly-Modules/natsio/model"
"github.com/Selly-Modules/natsio/subject"
)
// Communication ...
@ -18,7 +18,7 @@ func GetCommunication() Communication {
// RequestHttp ...
func (c Communication) RequestHttp(p model.CommunicationRequestHttp) (r *model.CommunicationHttpResponse, err error) {
msg, err := natsio.GetServer().Request(subject.Communication.RequestHTTP, toBytes(p))
msg, err := natsio.GetServer().Request(subject.CommunicationRequestHTTP, toBytes(p))
if err != nil {
return nil, err
}

View File

@ -1,335 +0,0 @@
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"
)
// Location ...
type Location struct{}
// GetLocation ...
func GetLocation() Location {
return Location{}
}
// GetLocationByCode ...
func (l Location) GetLocationByCode(payload model.LocationRequestPayload) (*model.ResponseLocationAddress, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetLocationByCodeFromLocationService, toBytes(payload))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseLocationAddress `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetLocationByWardCode ...
func (l Location) GetLocationByWardCode(payload model.RequestCondition) (*model.ResponseLocationAddress, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetLocationByWardCode, toBytes(payload))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseLocationAddress `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetProvincesByCodes ...
func (l Location) GetProvincesByCodes(p model.ProvinceRequestPayload) (*model.LocationProvinceResponse, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetProvincesByCodesFromLocationService, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.LocationProvinceResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetDistrictsByCodes ...
func (l Location) GetDistrictsByCodes(p model.DistrictRequestPayload) (*model.LocationDistrictResponse, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetDistrictsByCodesFromLocationService, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.LocationDistrictResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetWardsByCodes ...
func (l Location) GetWardsByCodes(p model.WardRequestPayload) (*model.LocationWardResponse, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetWardsByCodesFromLocationService, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.LocationWardResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetProvinceByCondition ...
func (l Location) GetProvinceByCondition(p model.RequestCondition) (*model.LocationProvinceDetailResponse, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetProvinceByCondition, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.LocationProvinceDetailResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetProvincesByCondition ...
func (l Location) GetProvincesByCondition(p model.RequestCondition) ([]*model.LocationProvinceDetailResponse, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetProvincesByCondition, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data []*model.LocationProvinceDetailResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetDistrictByCondition ...
func (l Location) GetDistrictByCondition(p model.RequestCondition) (*model.LocationDistrictDetailResponse, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetDistrictByCondition, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.LocationDistrictDetailResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetDistrictsByCondition ...
func (l Location) GetDistrictsByCondition(p model.RequestCondition) ([]*model.LocationDistrictDetailResponse, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetDistrictsByCondition, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data []*model.LocationDistrictDetailResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetWardByCondition ...
func (l Location) GetWardByCondition(p model.RequestCondition) (*model.LocationWardDetailResponse, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetWardByCondition, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.LocationWardDetailResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetWardsByCondition ...
func (l Location) GetWardsByCondition(p model.RequestCondition) ([]*model.LocationWardDetailResponse, error) {
msg, err := natsio.GetServer().Request(subject.Location.GetWardsByCondition, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data []*model.LocationWardDetailResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// CountProvinceByCondition ...
func (l Location) CountProvinceByCondition(p model.RequestCondition) (int64, error) {
msg, err := natsio.GetServer().Request(subject.Location.CountProvinceByCondition, toBytes(p))
if err != nil {
return 0, err
}
var r struct {
Data int64 `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return 0, err
}
if r.Error != "" {
return 0, errors.New(r.Error)
}
return r.Data, nil
}
// CountDistrictByCondition ...
func (l Location) CountDistrictByCondition(p model.RequestCondition) (int64, error) {
msg, err := natsio.GetServer().Request(subject.Location.CountDistrictByCondition, toBytes(p))
if err != nil {
return 0, err
}
var r struct {
Data int64 `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return 0, err
}
if r.Error != "" {
return 0, errors.New(r.Error)
}
return r.Data, nil
}
// CountWardByCondition ...
func (l Location) CountWardByCondition(p model.RequestCondition) (int64, error) {
msg, err := natsio.GetServer().Request(subject.Location.CountWardByCondition, toBytes(p))
if err != nil {
return 0, err
}
var r struct {
Data int64 `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return 0, err
}
if r.Error != "" {
return 0, errors.New(r.Error)
}
return r.Data, nil
}
// DistinctWithField ...
func (l Location) DistinctWithField(p model.ProvinceDistinctWithField) ([]interface{}, error) {
msg, err := natsio.GetServer().Request(subject.Location.ProvinceDistinctWithField, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data []interface{} `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}

View File

@ -1,36 +0,0 @@
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"
)
// News ...
type News struct{}
// GetNews ...
func GetNews() News {
return News{}
}
// GetProductNoticesByInventory ...
func (n News) GetProductNoticesByInventory(p model.GetProductNoticesByInventoryRequest) (*model.GetProductNoticesByInventoryResponse, error) {
msg, err := natsio.GetServer().Request(subject.News.GetProductNoticesByInventory, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.GetProductNoticesByInventoryResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}

View File

@ -4,9 +4,9 @@ import (
"encoding/json"
"errors"
"git.selly.red/Selly-Modules/natsio"
"git.selly.red/Selly-Modules/natsio/model"
"git.selly.red/Selly-Modules/natsio/subject"
"github.com/Selly-Modules/natsio"
"github.com/Selly-Modules/natsio/model"
"github.com/Selly-Modules/natsio/subject"
)
// Order ...
@ -19,7 +19,7 @@ func GetOrder() Order {
// UpdateORStatus ...
func (o Order) UpdateORStatus(p model.OrderUpdateORStatus) error {
msg, err := natsio.GetServer().Request(subject.Order.UpdateORStatus, toBytes(p))
msg, err := natsio.GetServer().Request(subject.OrderUpdateORStatus, toBytes(p))
if err != nil {
return err
}
@ -37,7 +37,7 @@ func (o Order) UpdateORStatus(p model.OrderUpdateORStatus) error {
// CancelDelivery ...
func (o Order) CancelDelivery(p model.OrderCancelDelivery) error {
msg, err := natsio.GetServer().Request(subject.Order.CancelDelivery, toBytes(p))
msg, err := natsio.GetServer().Request(subject.OrderCancelDelivery, toBytes(p))
if err != nil {
return err
}
@ -50,91 +50,3 @@ func (o Order) CancelDelivery(p model.OrderCancelDelivery) error {
}
return nil
}
// ChangeDeliveryStatus ...
func (o Order) ChangeDeliveryStatus(p model.OrderChangeDeliveryStatus) error {
msg, err := natsio.GetServer().Request(subject.Order.ChangeDeliveryStatus, toBytes(p))
if err != nil {
return err
}
var r model.CommonResponseData
if err = json.Unmarshal(msg.Data, &r); err != nil {
return err
}
if r.Error != "" {
return errors.New(r.Error)
}
return nil
}
// UpdateLogisticInfoFailed ...
func (o Order) UpdateLogisticInfoFailed(p model.OrderUpdateLogisticInfoFailed) error {
msg, err := natsio.GetServer().Request(subject.Order.UpdateLogisticInfoFailed, toBytes(p))
if err != nil {
return err
}
var r model.CommonResponseData
if err = json.Unmarshal(msg.Data, &r); err != nil {
return err
}
if r.Error != "" {
return errors.New(r.Error)
}
return nil
}
// ORNotUpdateStatus ...
func (o Order) ORNotUpdateStatus(p model.OrderORsNotUpdateStatus) error {
msg, err := natsio.GetServer().Request(subject.Order.ORNotUpdateStatus, toBytes(p))
if err != nil {
return err
}
var r model.CommonResponseData
if err = json.Unmarshal(msg.Data, &r); err != nil {
return err
}
if r.Error != "" {
return errors.New(r.Error)
}
return nil
}
// GetSupplierOrders ...
func (o Order) GetSupplierOrders(p model.OrderSupplierQuery) (*model.SupplierOrderList, error) {
msg, err := natsio.GetServer().Request(subject.Order.GetSupplierOrders, toBytes(p))
if err != nil {
return nil, err
}
var (
r struct {
Data model.SupplierOrderList `json:"data"`
Error string `json:"error"`
}
)
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return &r.Data, nil
}
// GetUserTotalWarningOrder ...
func (o Order) GetUserTotalWarningOrder(p model.OrderGetTotalWarningPayload) (*model.OrderGetTotalWarningRes, error) {
msg, err := natsio.GetServer().Request(subject.Order.GetUserTotalWarningOrders, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data model.OrderGetTotalWarningRes `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return &r.Data, nil
}

View File

@ -1,86 +0,0 @@
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
}
func (c Product) CreateRequestSteps(p model.ProductCreateStepsPayload) error {
msg, err := natsio.GetServer().Request(subject.Product.CreateRequestStep, 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
}
func (c Product) ProcessApplyRequest(p model.ProductApplyRequestPayload) error {
msg, err := natsio.GetServer().Request(subject.Product.ProcessApplyRequest, 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
}
func (c Product) RequestChangeStatus(p model.ProductRequestChangeStatus) error {
msg, err := natsio.GetServer().Request(subject.Product.RequestChangeStatus, 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
}

View File

@ -1,35 +0,0 @@
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"
)
// Queue ...
type Queue struct{}
// GetQueue ...
func GetQueue() Queue {
return Queue{}
}
func (c Queue) ScheduleTask(p model.QueueScheduleTaskRequest) error {
msg, err := natsio.GetServer().Request(subject.Queue.ScheduleTask, 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
}

View File

@ -1,41 +0,0 @@
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"
)
// Segment ...
type Segment struct{}
// GetSegment ...
func GetSegment() Segment {
return Segment{}
}
// GetListSegmentInfoByIds ...
func (s Segment) GetListSegmentInfoByIds(p model.GetListSegmentRequest) (*model.ResponseListSegmentInfo, error) {
msg, err := natsio.GetServer().Request(subject.Segment.GetListSegmentInfo, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseListSegmentInfo `json:"data"`
Error string `json:"error"`
}
if err := json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}

View File

@ -1,87 +0,0 @@
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"
)
// Seller ...
type Seller struct{}
// GetSeller ...
func GetSeller() Seller {
return Seller{}
}
// GetSellerInfoByID ...
func (s Seller) GetSellerInfoByID(p model.GetSellerByIDRequest) (*model.ResponseSellerInfo, error) {
msg, err := natsio.GetServer().Request(subject.Seller.GetSellerInfoByID, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseSellerInfo `json:"data"`
Error string `json:"error"`
}
if err := json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetListSellerInfoByIDs ...
func (s Seller) GetListSellerInfoByIDs(p model.GetListSellerByIDsRequest) (*model.ResponseListSellerInfo, error) {
msg, err := natsio.GetServer().Request(subject.Seller.GetListSellerInfoByIDs, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseListSellerInfo `json:"data"`
Error string `json:"error"`
}
if err := json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetListSellerInfoSupportChatByIDs ...
func (s Seller) GetListSellerInfoSupportChatByIDs(p model.GetListSellerSupportChatByIDsRequest) (*model.ResponseListSellerInfoSupportChat, error) {
msg, err := natsio.GetServer().Request(subject.SupportChat.GetListSellerInfoSupportChatByIDs, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseListSellerInfoSupportChat `json:"data"`
Error string `json:"error"`
}
if err := json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}

View File

@ -1,65 +0,0 @@
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"
)
// SocialPost ...
type SocialPost struct{}
// GetSocialPost ...
func GetSocialPost() SocialPost {
return SocialPost{}
}
// GetListSocialPostAppInfoByIDs ...
func (s SocialPost) GetListSocialPostAppInfoByIDs(p model.GetListSocialPostAppByIDsRequest) (*model.ResponseListSocialPostAppInfo, error) {
msg, err := natsio.GetServer().Request(subject.SocialPost.GetListSocialPostAppInfoByIDs, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseListSocialPostAppInfo `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetBriefDetailSocialPostAdminByIDsRequest ...
func (s SocialPost) GetBriefDetailSocialPostAdminByIDsRequest(p model.GetBriefInfoSocialPostAdminByIDsRequest) (*model.ResponseListSocialPostAdminInfo, error) {
msg, err := natsio.GetServer().Request(subject.SocialPost.GetBriefInfoSocialPostAdminByIDs, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseListSocialPostAdminInfo `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}

View File

@ -1,27 +0,0 @@
package client
import (
"git.selly.red/Selly-Modules/natsio"
"git.selly.red/Selly-Modules/natsio/model"
"git.selly.red/Selly-Modules/natsio/subject"
)
// Socket ...
type Socket struct{}
// GetSocket ...
func GetSocket() Socket {
return Socket{}
}
// EmitSocketEventDataReward ...
func (s Socket) EmitSocketEventDataReward(p model.PayloadEmitSocketEvent) error {
_, err := natsio.GetServer().Request(subject.Socket.EmitEventReward, toBytes(p))
return err
}
// EmitEventToUser ...
func (s Socket) EmitEventToUser(p model.PayloadEmitSocketEvent) error {
_, err := natsio.GetServer().Request(subject.Socket.EmitEventToUser, toBytes(p))
return err
}

View File

@ -1,41 +0,0 @@
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"
)
// Staff ...
type Staff struct{}
func GetStaff() Staff {
return Staff{}
}
// GetListStaffInfoByIds ...
func (s Staff) GetListStaffInfoByIds(p model.GetListStaffRequest) (*model.ResponseListStaffInfo, error) {
msg, err := natsio.GetServer().Request(subject.Staff.GetListStaffInfo, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseListStaffInfo `json:"data"`
Error string `json:"error"`
}
if err := json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}

View File

@ -1,202 +0,0 @@
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"
)
// Supplier ...
type Supplier struct{}
// GetSupplier ...
func GetSupplier() Supplier {
return Supplier{}
}
func (s Supplier) GetListSupplierInfo(p model.GetSupplierRequest) ([]*model.ResponseSupplierInfo, error) {
msg, err := natsio.GetServer().Request(subject.Supplier.GetListSupplierInfo, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data []*model.ResponseSupplierInfo `json:"data"`
Error string `json:"error"`
}
if err := json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetDetailSupplierInfo ...
func (s Supplier) GetDetailSupplierInfo(p model.GetDetailSupplierRequest) (*model.ResponseSupplierInfo, error) {
msg, err := natsio.GetServer().Request(subject.Supplier.GetDetailSupplierInfo, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseSupplierInfo `json:"data"`
Error string `json:"error"`
}
if err := json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
func (s Supplier) GetSupplierContractBySupplierID(p model.GetSupplierContractRequest) (*model.ResponseSupplierContract, error) {
msg, err := natsio.GetServer().Request(subject.Supplier.GetSupplierContractBySupplierID, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResponseSupplierContract `json:"data"`
Error string `json:"error"`
}
if err := json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
func (s Supplier) FindAll(supplierID model.SupplierRequestPayload) (*model.SupplierAll, error) {
msg, err := natsio.GetServer().Request(subject.Supplier.FindAll, toBytes(supplierID))
if err != nil {
return nil, err
}
var r struct {
Data *model.SupplierAll `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
func (s Supplier) FindAllOld(req model.SupplierFindAllReq) (*model.SupplierAll, error) {
msg, err := natsio.GetServer().Request(subject.Supplier.FindAllOld, toBytes(req))
if err != nil {
return nil, err
}
var r struct {
Data *model.SupplierAll `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
func (s Supplier) GetBankInfoByID(supplierID model.SupplierRequestPayload) (*model.SupplierAll, error) {
msg, err := natsio.GetServer().Request(subject.Supplier.FindAll, toBytes(supplierID))
if err != nil {
return nil, err
}
var r struct {
Data *model.SupplierAll `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
func (s Supplier) Count(req model.SupplierCountReq) (*model.SupplierCountRes, error) {
msg, err := natsio.GetServer().Request(subject.Supplier.Count, toBytes(req))
if err != nil {
return nil, err
}
var r struct {
Data *model.SupplierCountRes `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// CreateWarehouseIntoServiceSupplier ...
func (s Supplier) CreateWarehouseIntoServiceSupplier(p model.CreateSupplierWarehousePayload) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.CreateWarehouseIntoServiceSupplier, 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
}
// UpdateWarehouseIntoServiceSupplier ...
func (s Supplier) UpdateWarehouseIntoServiceSupplier(p model.UpdateSupplierWarehousePayload) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.UpdateWarehouseIntoServiceSupplier, 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
}

View File

@ -1,58 +0,0 @@
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"
)
// SupplierRole ...
type SupplierRole struct{}
// GetSupplierRole ...
func GetSupplierRole() SupplierRole {
return SupplierRole{}
}
func (s SupplierRole) CreateRole(p model.CreateRoleRequest) (*model.CreateRoleResponse, error) {
msg, err := natsio.GetServer().Request(subject.SupplierUser.CreateOwner, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.CreateRoleResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
func (s SupplierRole) UpdateRole(p model.UpdateRoleRequest) error {
msg, err := natsio.GetServer().Request(subject.SupplierRole.Update, 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
}

View File

@ -1,160 +0,0 @@
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"
)
// SupplierUser ...
type SupplierUser struct{}
// GetSupplierUser ...
func GetSupplierUser() SupplierUser {
return SupplierUser{}
}
func (s SupplierUser) CreateSupplierOwnerUsers(p model.CreateOwnerRequest) (*model.CreateOwnerResponse, error) {
msg, err := natsio.GetServer().Request(subject.SupplierUser.CreateOwner, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.CreateOwnerResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
func (s SupplierUser) UpdateSupplierOwnerUsers(p model.UpdateOwnerRequest) error {
msg, err := natsio.GetServer().Request(subject.SupplierUser.UpdateOwner, 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
}
func (s SupplierUser) CreateSupplierStaffUsers(p model.CreateStaffRequest) (*model.CreateStaffResponse, error) {
msg, err := natsio.GetServer().Request(subject.SupplierUser.CreateStaff, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.CreateStaffResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
func (s SupplierUser) UpdateSupplierStaffUsers(p model.UpdateStaffRequest) error {
msg, err := natsio.GetServer().Request(subject.SupplierUser.UpdateStaff, 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
}
func (s SupplierUser) UpdateStatus(p model.UpdateStatusRequest) error {
msg, err := natsio.GetServer().Request(subject.SupplierUser.UpdateStaff, 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
}
func (s SupplierUser) ResetPassword(p model.ResetPasswordRequest) (*model.ResetPasswordResponse, error) {
msg, err := natsio.GetServer().Request(subject.SupplierUser.ResetPassword, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.ResetPasswordResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// CheckTokenSupplierUser ...
func (s SupplierUser) CheckTokenSupplierUser(p model.CheckTokenSupplierUserPayload) (*model.ResponseCheckTokenSupplierUser, error) {
msg, err := natsio.GetServer().Request(subject.SupplierUser.CheckTokenSupplierUser, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Error string `json:"error"`
Data *model.ResponseCheckTokenSupplierUser `json:"data"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}

View File

@ -2,7 +2,6 @@ package client
import (
"encoding/json"
"go.mongodb.org/mongo-driver/bson"
"log"
)
@ -13,9 +12,3 @@ func toBytes(data interface{}) []byte {
}
return b
}
// bsonToBytes ...
func bsonToBytes(data interface{}) []byte {
b, _ := bson.Marshal(data)
return b
}

View File

@ -3,11 +3,10 @@ package client
import (
"encoding/json"
"errors"
"fmt"
"git.selly.red/Selly-Modules/natsio"
"git.selly.red/Selly-Modules/natsio/model"
"git.selly.red/Selly-Modules/natsio/subject"
"github.com/Selly-Modules/natsio"
"github.com/Selly-Modules/natsio/model"
"github.com/Selly-Modules/natsio/subject"
)
// Warehouse ...
@ -18,63 +17,9 @@ func GetWarehouse() Warehouse {
return Warehouse{}
}
// UpdateIsClosedSupplier ...
func (w Warehouse) UpdateIsClosedSupplier(p model.UpdateSupplierIsClosedRequest) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.UpdateIsClosedSupplier, 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
}
// AfterCreateWarehouse ...
func (w Warehouse) AfterCreateWarehouse(p model.WarehouseNatsResponse) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.AfterCreateWarehouse, 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
}
// AfterUpdateWarehouse ...
func (w Warehouse) AfterUpdateWarehouse(p model.WarehouseNatsResponse) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.AfterUpdateWarehouse, 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
}
// CreateOutboundRequest ...
func (w Warehouse) CreateOutboundRequest(p model.OutboundRequestPayload) (*model.OutboundRequestResponse, error) {
msg, err := natsio.GetServer().Request(subject.Warehouse.CreateOutboundRequest, toBytes(p))
msg, err := natsio.GetServer().Request(subject.WarehouseCreateOutboundRequest, toBytes(p))
if err != nil {
return nil, err
}
@ -93,7 +38,7 @@ func (w Warehouse) CreateOutboundRequest(p model.OutboundRequestPayload) (*model
// UpdateOutboundRequestLogisticInfo ...
func (w Warehouse) UpdateOutboundRequestLogisticInfo(p model.UpdateOutboundRequestLogisticInfoPayload) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.UpdateOutboundRequestLogistic, toBytes(p))
msg, err := natsio.GetServer().Request(subject.WarehouseUpdateOutboundRequestLogistic, toBytes(p))
if err != nil {
return err
}
@ -111,7 +56,7 @@ func (w Warehouse) UpdateOutboundRequestLogisticInfo(p model.UpdateOutboundReque
// CancelOutboundRequest ...
func (w Warehouse) CancelOutboundRequest(p model.CancelOutboundRequest) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.CancelOutboundRequest, toBytes(p))
msg, err := natsio.GetServer().Request(subject.WarehouseCancelOutboundRequest, toBytes(p))
if err != nil {
return err
}
@ -129,7 +74,7 @@ func (w Warehouse) CancelOutboundRequest(p model.CancelOutboundRequest) error {
// GetConfigByWarehouseID ...
func (w Warehouse) GetConfigByWarehouseID(warehouseID string) (*model.WarehouseConfiguration, error) {
msg, err := natsio.GetServer().Request(subject.Warehouse.GetConfiguration, toBytes(warehouseID))
msg, err := natsio.GetServer().Request(subject.WarehouseGetConfiguration, toBytes(warehouseID))
if err != nil {
return nil, err
}
@ -145,99 +90,3 @@ func (w Warehouse) GetConfigByWarehouseID(warehouseID string) (*model.WarehouseC
}
return r.Data, nil
}
// GetListConfig ...
func (w Warehouse) GetListConfig(req model.GetListWarehouseConfigReq) ([]*model.WarehouseConfiguration, error) {
msg, err := natsio.GetServer().Request(subject.Warehouse.GetListWarehouseConfig, toBytes(req))
if err != nil {
return nil, err
}
var r struct {
Data []*model.WarehouseConfiguration `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// GetWarehouses ...
func (w Warehouse) GetWarehouses(p model.GetWarehousesRequest) (*model.GetWarehousesResponse, error) {
msg, err := natsio.GetServer().Request(subject.Warehouse.GetWarehouses, toBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.GetWarehousesResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// UpdateORDeliveryStatus ...
func (w Warehouse) UpdateORDeliveryStatus(p model.WarehouseORUpdateDeliveryStatus) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.UpdateORDeliveryStatus, toBytes(p))
if err != nil {
return err
}
var r struct {
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return fmt.Errorf("nats: update_or_delivery_status %v", err)
}
if r.Error != "" {
return errors.New(r.Error)
}
return nil
}
// UpdateStatusWarehousePendingInactive ...
func (w Warehouse) UpdateStatusWarehousePendingInactive(p model.UpdateStatusWarehousePendingInactiveRequest) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.UpdateStatusWarehousePendingInactive, toBytes(p))
if err != nil {
return err
}
var r struct {
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return fmt.Errorf("nats: update_status_warehouse_pending_inactive %v", err)
}
if r.Error != "" {
return errors.New(r.Error)
}
return nil
}
// UpdateIsSellyMall ...
func (w Warehouse) UpdateIsSellyMall(p model.UpdateIsSellyMallRequest) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.UpdateIsSellyMall, toBytes(p))
if err != nil {
return err
}
var r struct {
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return fmt.Errorf("nats: update_is_selly_mall %v", err)
}
if r.Error != "" {
return errors.New(r.Error)
}
return nil
}

View File

@ -1,122 +0,0 @@
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"
)
// DistinctWithField ...
func (w Warehouse) DistinctWithField(p model.DistinctWithField) ([]interface{}, error) {
msg, err := natsio.GetServer().Request(subject.Warehouse.Distinct, bsonToBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data []interface{} `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// FindOneByCondition ...
func (w Warehouse) FindOneByCondition(p model.FindOneCondition) (*model.WarehouseNatsResponse, error) {
msg, err := natsio.GetServer().Request(subject.Warehouse.FindOne, bsonToBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data *model.WarehouseNatsResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// CountByCondition ...
func (w Warehouse) CountByCondition(p model.FindWithCondition) (int64, error) {
msg, err := natsio.GetServer().Request(subject.Warehouse.Count, bsonToBytes(p))
if err != nil {
return 0, err
}
var r struct {
Data int64 `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return 0, err
}
if r.Error != "" {
return 0, errors.New(r.Error)
}
return r.Data, nil
}
// FindByCondition ...
func (w Warehouse) FindByCondition(p model.FindWithCondition) ([]*model.WarehouseNatsResponse, error) {
msg, err := natsio.GetServer().Request(subject.Warehouse.FindByCondition, bsonToBytes(p))
if err != nil {
return nil, err
}
var r struct {
Data []*model.WarehouseNatsResponse `json:"data"`
Error string `json:"error"`
}
if err = json.Unmarshal(msg.Data, &r); err != nil {
return nil, err
}
if r.Error != "" {
return nil, errors.New(r.Error)
}
return r.Data, nil
}
// UpdateWarehouseConfig ...
func (w Warehouse) UpdateWarehouseConfig(p model.UpdatePayload) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.UpdateWarehouseConfig, bsonToBytes(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
}
// BulkWriteWarehouseConfig ...
func (w Warehouse) BulkWriteWarehouseConfig(p model.UpdatePayload) error {
msg, err := natsio.GetServer().Request(subject.Warehouse.BulkWriteWarehouseConfig, bsonToBytes(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
}

4
go.mod
View File

@ -1,12 +1,12 @@
module git.selly.red/Selly-Modules/natsio
module github.com/Selly-Modules/natsio
go 1.16
require (
github.com/golang/protobuf v1.5.2 // indirect
github.com/logrusorgru/aurora v2.0.3+incompatible
github.com/nats-io/nats-server/v2 v2.6.1 // indirect
github.com/nats-io/nats.go v1.13.0
github.com/thoas/go-funk v0.9.1
go.mongodb.org/mongo-driver v1.10.1
google.golang.org/protobuf v1.27.1 // indirect
)

50
go.sum
View File

@ -1,6 +1,5 @@
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8=
github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA=
github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs=
@ -10,25 +9,17 @@ github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw
github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw=
github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/golang/snappy v0.0.3 h1:fHPg5GQYlCeLIPB9BZqMVR5nR9A+IM5zcgeTdjMYmLA=
github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.5 h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU=
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/klauspost/compress v1.13.4 h1:0zhec2I8zGnjWcKyLl6i3gPqKANCCn5e9xmviEEeX6s=
github.com/klauspost/compress v1.13.4/go.mod h1:8dP1Hq4DHOhN9w426knH3Rhby4rFm6D8eO+e+Dq5Gzg=
github.com/klauspost/compress v1.13.6 h1:P76CopJELS0TiO2mebmnzgWaajssP/EszplttgQxcgc=
github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk=
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
github.com/logrusorgru/aurora v2.0.3+incompatible h1:tOpm7WcpBTn4fjmVfgpQq0EfczGlG91VSDkswnjF5A8=
github.com/logrusorgru/aurora v2.0.3+incompatible/go.mod h1:7rIyQOR62GCctdiQpZ/zOJlFyk6y+94wXzv6RNZgaR4=
github.com/minio/highwayhash v1.0.1 h1:dZ6IIu8Z14VlC0VpfKofAhCy74wu/Qb5gcn52yWoz/0=
github.com/minio/highwayhash v1.0.1/go.mod h1:BQskDq+xkJ12lmlUUi7U0M5Swg3EWR+dLTk+kldvVxY=
github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe h1:iruDEfMl2E6fbMZ9s0scYfZQ84/6SPL6zC8ACM2oIL0=
github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc=
github.com/nats-io/jwt v1.2.2 h1:w3GMTO969dFg+UOKTmmyuu7IGdusK+7Ytlt//OYH/uU=
github.com/nats-io/jwt v1.2.2/go.mod h1:/xX356yQA6LuXI9xWW7mZNpxgF2mBmGecH+Fj34sP5Q=
github.com/nats-io/jwt/v2 v2.0.3 h1:i/O6cmIsjpcQyWDYNcq2JyZ3/VTF8SJ4JWluI5OhpvI=
@ -43,56 +34,32 @@ github.com/nats-io/nkeys v0.3.0 h1:cgM5tL53EvYRU+2YLXIK0G2mJtK12Ft9oeooSZMA2G8=
github.com/nats-io/nkeys v0.3.0/go.mod h1:gvUNGjVcM2IPr5rCsRsC6Wb3Hr2CQAm08dsxtV6A5y4=
github.com/nats-io/nuid v1.0.1 h1:5iA8DT8V7q8WK2EScv2padNa/rTESc1KdnPw4TC2paw=
github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c=
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk=
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
github.com/stretchr/testify v1.6.1 h1:hDPOHmpOpP40lSULcqw7IrRb/u7w6RpDC9399XyoNd0=
github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/thoas/go-funk v0.9.1 h1:O549iLZqPpTUQ10ykd26sZhzD+rmR5pWhuElrhbC20M=
github.com/thoas/go-funk v0.9.1/go.mod h1:+IWnUfUmFO1+WVYQWQtIJHeRRdaIyyYglZN7xzUPe4Q=
github.com/tidwall/pretty v1.0.0 h1:HsD+QiTn7sK6flMKIvNmpqz1qrpP3Ps6jOKIKMooyg4=
github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk=
github.com/xdg-go/pbkdf2 v1.0.0 h1:Su7DPu48wXMwC3bs7MCNG+z4FhcyEuz5dlvchbq0B0c=
github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI=
github.com/xdg-go/scram v1.1.1 h1:VOMT+81stJgXW3CpHyqHN3AXDYIMsx56mEFrB37Mb/E=
github.com/xdg-go/scram v1.1.1/go.mod h1:RaEWvsqvNKKvBPvcKeFjrG2cJqOkHTiyTpzz23ni57g=
github.com/xdg-go/stringprep v1.0.3 h1:kdwGpVNwPFtjs98xCGkHjQtGKh86rDcRZN17QEMCOIs=
github.com/xdg-go/stringprep v1.0.3/go.mod h1:W3f5j4i+9rC0kuIEJL0ky1VpHXQU3ocBgklLGvcBnW8=
github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d h1:splanxYIlg+5LfHAM6xpdFEAYOk8iySO56hMFq6uLyA=
github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA=
go.mongodb.org/mongo-driver v1.10.1 h1:NujsPveKwHaWuKUer/ceo9DzEe7HIj1SlJ6uvXZG0S4=
go.mongodb.org/mongo-driver v1.10.1/go.mod h1:z4XpeoU6w+9Vht+jAFyLgVrD+jGSQQe0+CBWFHNiHt8=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20200323165209-0ec3e9974c59/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/crypto v0.0.0-20210314154223-e6e6c4f2bb5b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4=
golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e h1:gsTQYXdTw2Gq7RBsWvlQ91b+aEQ6bXFUngBGuR8sPpI=
golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d h1:sK3txAijHtOK88l68nt020reeT1ZdKLIYetKl95FzVY=
golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c h1:5KslGYwFpkhGh+Q16bwMP3cOontH8FOep7tGV86Y7SQ=
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sys v0.0.0-20190130150945-aca44879d564/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1 h1:SrN+KX8Art/Sf4HNj6Zcz06G7VEz+7w9tdXTPOZ7+l4=
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1 h1:NusfzzA6yGQ+ua51ck7E3omNUX/JuqbFSaRGqU8CcLI=
golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
@ -105,8 +72,5 @@ google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQ
google.golang.org/protobuf v1.27.1 h1:SnqbnDw1V7RiZcXPx5MEeqPv2s79L9i7BJUlG/+RurQ=
google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=

View File

@ -1,4 +0,0 @@
package natsio
// StreamNameSelly ...
const StreamNameSelly = "selly"

View File

@ -1,18 +0,0 @@
package jsconsumer
// Selly ...
var Selly = struct {
PushNotification string
UpdateSellerAffiliateStatistic string
CheckAnDInsertCashflowBySeller string
SubscriberTopic string
UpdateSellerSavingCampaignStatistic string
GenerateVoucherPromotion string
}{
PushNotification: "PULL_PUSH_NOTIFICATION",
UpdateSellerAffiliateStatistic: "PULL_UPDATE_SELLER_AFFILIATE_STATISTIC",
CheckAnDInsertCashflowBySeller: "PULL_CHECK_AND_INSERT_CASHFLOW_BY_SELLER",
SubscriberTopic: "PULL_SUBSCRIBER_TOPIC",
UpdateSellerSavingCampaignStatistic: "PULL_UPDATE_SELLER_SAVING_CAMPAIGN_STATISTIC",
GenerateVoucherPromotion: "PULL_GENERATE_VOUCHER_PROMOTION",
}

View File

@ -1,110 +0,0 @@
package jsmodel
import "go.mongodb.org/mongo-driver/bson/primitive"
// PushNotification ...
type PushNotification struct {
User string `json:"user"`
Type string `json:"type"`
TargetID string `json:"targetId"`
IsFromAdmin bool `json:"isFromAdmin"`
Category string `json:"category"`
Options NotificationOptions `json:"options"`
}
// NotificationOptions ...
type NotificationOptions struct {
Title string `json:"title"`
Content string `json:"content"`
CampaignID string `json:"campaignId,omitempty"`
SellerSavingCampaignID string `json:"sellerSavingCampaignId,omitempty"`
SellerSavingCampaignStatus string `json:"sellerSavingCampaignStatus,omitempty"`
}
// PayloadUpdateSellerAffiliateStatistic ...
type PayloadUpdateSellerAffiliateStatistic struct {
SellerID string `json:"sellerId"`
Statistic SellerAffiliateStatistic `json:"statistic"`
}
// SellerAffiliateStatistic ...
type SellerAffiliateStatistic struct {
TransactionTotal int `json:"transactionTotal"`
TransactionCashback int `json:"transactionCashback"`
TransactionPending int `json:"transactionPending"`
TransactionApproved int `json:"transactionApproved"`
TransactionRejected int `json:"transactionRejected"`
CommissionTransactionTotal float64 `json:"commissionTransactionTotal"`
CommissionTransactionCashback float64 `json:"commissionTransactionCashback"`
CommissionTransactionApproved float64 `json:"commissionTransactionApproved"`
CommissionTransactionPending float64 `json:"commissionTransactionPending"`
CommissionTransactionRejected float64 `json:"commissionTransactionRejected"`
}
// PayloadCashflowsBySeller ...
type PayloadCashflowsBySeller struct {
SellerID string `json:"sellerId"`
List []CashflowSeller `json:"list"`
}
// CashflowSeller ...
type CashflowSeller struct {
Value float64 `json:"value"`
Action string `json:"action"`
Category string `json:"category"`
TargetID string `json:"targetId"`
TargetType string `json:"targetType"`
Options *CashFlowOptions `json:"options"`
}
// CashFlowOptions ...
type CashFlowOptions struct {
AffiliateTransactionCode string `json:"affiliateTransactionCode,omitempty"`
AffiliateCampaignID string `json:"affiliateCampaignId,omitempty"`
AffiliateCampaignName string `json:"affiliateCampaignName,omitempty"`
// Campaign
CampaignID string `json:"campaignId,omitempty"`
CampaignName string `json:"campaignName,omitempty"`
// SavingCampaign
SavingCampaignID string `json:"savingCampaignId,omitempty"`
SavingCampaignName string `json:"savingCampaignName,omitempty"`
SavingCampaignItemID string `json:"savingCampaignItemId,omitempty"`
SavingCampaignItemName string `json:"savingCampaignItemName,omitempty"`
}
// PayloadUpdateSellerSavingCampaignStatistic ...
type PayloadUpdateSellerSavingCampaignStatistic struct {
SellerID string `json:"sellerId"`
Statistic SellerSavingCampaignStatistic `json:"statistic"`
}
// SellerSavingCampaignStatistic ...
type SellerSavingCampaignStatistic struct {
SavingCampaignCashPending float64 `json:"savingCampaignCashPending"`
SavingCampaignCashCompleted float64 `json:"savingCampaignCashCompleted"`
}
// GenerateVoucherPromotion ...
type GenerateVoucherPromotion struct {
Cash float64 `json:"cash"`
TargetID primitive.ObjectID `json:"targetId"`
TargetType string `json:"targetType"`
Options GenerateVoucherPromotionOptions `json:"options"`
Seller primitive.ObjectID `json:"seller"`
}
// GenerateVoucherPromotionOptions ...
type GenerateVoucherPromotionOptions struct {
Title string `json:"title"`
}
// SubscriberNotificationTopic ...
type SubscriberNotificationTopic struct {
User string `json:"user"`
Topic string `json:"topic"`
DeviceId string `json:"deviceId"`
FCMToken string `json:"fcmToken"`
}

View File

@ -1,10 +0,0 @@
package jssubject
var root = "js"
// prefixes ...
var prefixes = struct {
Selly string
}{
Selly: "selly",
}

View File

@ -1,27 +0,0 @@
package jssubject
import (
"fmt"
)
// getSellyValue ...
func getSellyValue(val string) string {
return fmt.Sprintf("%s.%s.%s", root, prefixes.Selly, val)
}
// Selly ...
var Selly = struct {
PushNotification string
UpdateSellerAffiliateStatistic string
CheckAnDInsertCashflowBySeller string
SubscriberTopic string
UpdateSellerSavingCampaignStatistic string
GenerateVoucherPromotion string
}{
PushNotification: getSellyValue("push_notifications"),
UpdateSellerAffiliateStatistic: getSellyValue("update_seller_affiliate_statistic"),
CheckAnDInsertCashflowBySeller: getSellyValue("check_and_insert_cashflow_statistic"),
SubscriberTopic: getSellyValue("subscriber_topic"),
UpdateSellerSavingCampaignStatistic: getSellyValue("update_seller_saving_campaign_statistic"),
GenerateVoucherPromotion: getSellyValue("generate_voucher_promotion"),
}

View File

@ -22,17 +22,6 @@ func (e JSONEncoder) Subscribe(subject string, cb nats.Handler) (*nats.Subscript
return sub, err
}
// QueueSubscribe ...
func (e JSONEncoder) QueueSubscribe(subject, queue string, cb nats.Handler) (*nats.Subscription, error) {
sub, err := e.encConn.QueueSubscribe(subject, queue, cb)
if err != nil {
log.Printf("natsio.JSONEncoder.QueueSubscribe err: %v\n", err)
} else {
log.Printf("natsio.JSONEncoder.QueueSubscribe - subscribed to subject %s successfully\n", subject)
}
return sub, err
}
// Publish ...
func (e JSONEncoder) Publish(reply string, data interface{}) error {
return e.encConn.Publish(reply, data)

View File

@ -1,16 +0,0 @@
package model
import "time"
// GetTransactionsRequest ...
type GetTransactionsRequest struct {
Page int64 `json:"page"`
Limit int64 `json:"limit"`
Keyword string `json:"keyword"`
Status string `json:"status"`
Source string `json:"source"`
Campaign string `json:"campaign"`
Seller string `json:"seller"`
FromAt time.Time `json:"fromAt"`
ToAt time.Time `json:"toAt"`
}

View File

@ -1,38 +0,0 @@
package model
// GetTransactionsResponse ...
type GetTransactionsResponse struct {
Total int64 `json:"total"`
Limit int64 `json:"limit"`
List []TransactionInfo `json:"list"`
}
// TransactionInfo ...
type TransactionInfo struct {
ID string `json:"_id"`
Code string `json:"code"`
Campaign ResponseCampaignShort `json:"campaign"`
Seller ResponseSellerInfo `json:"seller"`
Source string `json:"source"`
Commission ResponseCampaignCommission `json:"commission"`
EstimateSellerCommission float64 `json:"estimateSellerCommission"`
TransactionTime string `json:"transactionTime"`
Status string `json:"status"`
RejectedReason string `json:"rejectedReason"`
EstimateCashbackAt string `json:"estimateCashbackAt"`
}
// ResponseCampaignCommission ...
type ResponseCampaignCommission struct {
Real float64 `json:"real"`
SellerPercent float64 `json:"sellerPercent"`
Selly float64 `json:"selly"`
Seller float64 `json:"seller"`
}
// ResponseCampaignShort ...
type ResponseCampaignShort struct {
ID string `json:"_id"`
Name string `json:"name"`
Logo *FilePhoto `json:"logo"`
}

View File

@ -1,11 +0,0 @@
package model
// BankBranchBrief ...
type BankBranchBrief struct {
ID string `json:"_id"`
City string `json:"city"`
BankCode string `json:"bankCode"`
Bank string `json:"bank"`
Active bool `json:"active"`
Name string `json:"name"`
}

View File

@ -1,6 +0,0 @@
package model
type BankBranchRequest struct {
BankID string `json:"bankId"`
BranchID string `json:"branchId"`
}

View File

@ -1,21 +0,0 @@
package model
// MultiLang ...
type MultiLang struct {
En string `json:"en"`
Vi string `json:"vi"`
}
// BankBrief ...
type BankBrief struct {
ID string `json:"_id"`
Name MultiLang `json:"name"`
ShortName string `json:"shortName"`
Active bool `json:"active"`
BenBankName string `json:"benBankName"`
BankCode int `json:"bankCode"`
IsBranchRequired bool `json:"isBranchRequired"`
SearchString string `json:"searchString"`
BeneficiaryForVietinbank string `json:"beneficiaryForVietinbank"`
CreatedBy string `json:"createdBy,omitempty"`
}

View File

@ -1,22 +0,0 @@
package model
import (
"go.mongodb.org/mongo-driver/bson/primitive"
"time"
)
// GetCampaignTransactionsRequest ...
type GetCampaignTransactionsRequest struct {
Campaign string `json:"campaign"`
Keyword string `json:"keyword"`
Status string `json:"status"`
FromAt time.Time `json:"fromAt"`
ToAt time.Time `json:"toAt"`
Page int64 `json:"page"`
Limit int64 `json:"limit"`
}
// GetCampaignSellerStatisticBySellerIDs ...
type GetCampaignSellerStatisticBySellerIDs struct {
SellerIDs []primitive.ObjectID
}

View File

@ -1,88 +0,0 @@
package model
import "go.mongodb.org/mongo-driver/bson/primitive"
// ResponseCampaignTransactionAll ...
type ResponseCampaignTransactionAll struct {
List []ResponseNatsCampaignTransaction `json:"list"`
Total int64 `json:"total"`
Limit int64 `json:"limit"`
}
// ResponseNatsCampaignTransaction ...
type ResponseNatsCampaignTransaction struct {
ID string `json:"_id"`
Cash float64 `json:"cash"`
Campaign ResponseCampaignShortInfo `json:"campaign"`
Options ResponseCampaignTransactionOptions `json:"options"`
Seller primitive.ObjectID `json:"seller"`
Type string `json:"type"`
Status string `json:"status"`
RejectedReason string `json:"rejectedReason"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
Item *ResponseCampaignItemShortInfo `json:"item"`
ApprovedBy primitive.ObjectID `json:"approvedBy,omitempty"`
RejectedBy primitive.ObjectID `json:"rejectedBy,omitempty"`
ApprovedAt string `json:"approvedAt,omitempty"`
RejectedAt string `json:"rejectedAt,omitempty"`
CompletedAt string `json:"completedAt,omitempty"`
RejectReason string `json:"rejectReason,omitempty"`
AdminConfirmData *ResponseCampaignTransactionAdminConfirmData `json:"adminConfirmData,omitempty"`
}
// ResponseCampaignShortInfo ...
type ResponseCampaignShortInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
Status string `json:"status"`
}
// ResponseCampaignItemShortInfo ...
type ResponseCampaignItemShortInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
Status string `json:"status"`
}
// ResponseCampaignTransactionOptions ...
type ResponseCampaignTransactionOptions struct {
Link string `json:"link"`
SocialChannel string `json:"socialChannel"`
Milestone int64 `json:"milestone"`
MilestoneTitle string `json:"milestoneTitle"`
}
// ResponseCampaignTransactionAdminConfirmData ...
type ResponseCampaignTransactionAdminConfirmData struct {
FriendPublicTotal int64 `json:"friendPublicTotal"`
}
// ResponseCampaignSellerStatisticList ...
type ResponseCampaignSellerStatisticList struct {
List []ResponseCampaignSellerStatistic `json:"list"`
}
// ResponseCampaignSellerStatistic ...
type ResponseCampaignSellerStatistic struct {
SellerID primitive.ObjectID `json:"sellerId"`
Statistic CampaignSellerStatistic `json:"Statistic"`
}
// CampaignSellerStatistic ...
type CampaignSellerStatistic struct {
TotalNotRejected int64 `bson:"totalNotRejected" json:"totalNotRejected"`
CashTotalNotRejected float64 `bson:"cashTotalNotRejected" json:"cashTotalNotRejected"`
TotalCompleted int64 `bson:"totalCompleted" json:"totalCompleted"`
CashTotalCompleted float64 `bson:"cashTotalCompleted" json:"cashTotalCompleted"`
TotalPending int64 `bson:"totalPending" json:"totalPending"`
CashTotalPending float64 `bson:"cashTotalPending" json:"cashTotalPending"`
TotalApproved int64 `bson:"totalApproved" json:"totalApproved"`
CashTotalApproved float64 `bson:"cashTotalApproved" json:"cashTotalApproved"`
TotalRejected int64 `bson:"totalRejected" json:"totalRejected"`
CashTotalRejected float64 `bson:"cashTotalRejected" json:"cashTotalRejected"`
}

View File

@ -1,56 +0,0 @@
package model
import "go.mongodb.org/mongo-driver/mongo/options"
type FindWithCondition struct {
Conditions interface{} `json:"conditions"`
Opts []*options.FindOptions `json:"opts"`
}
type FindOneCondition struct {
Conditions interface{} `json:"conditions"`
}
type DistinctWithField struct {
Conditions interface{} `json:"conditions"`
Filed string `json:"filed"`
}
type ActionBy struct {
ID string `json:"id"`
Name string `json:"name"`
}
// RequestCondition ...
type RequestCondition struct {
Code int `json:"code"`
Codes []int `json:"codes"`
DistrictCode int `json:"districtCode"`
ProvinceCode int `json:"provinceCode"`
Slug string `json:"slug"`
OldSlug string `json:"oldSlug"`
Slugs []string `json:"slugs"`
OldSlugs []string `json:"oldSlugs"`
DistrictSlug string `json:"districtSlug"`
ProvinceSlug string `json:"provinceSlug"`
Keyword string `json:"keyword"`
Region string `json:"region"`
Page int64 `json:"page"`
Limit int64 `json:"limit"`
}
type UpdatePayload struct {
Conditions interface{} `json:"conditions"`
Payload interface{} `json:"payload"`
Opts []*options.UpdateOptions `json:"opts"`
}
type WebhookPayloadV2 struct {
Path string `json:"path"` // request URL path from external
Data string `json:"data"` // request body
}

View File

@ -5,9 +5,6 @@ type CommunicationRequestHttp struct {
ResponseImmediately bool `json:"responseImmediately"`
Authentication string `json:"authentication"`
Payload HttpRequest `json:"payload"`
// collection to store log data, will be prepended with log-, default it stored in logs collections
LogTarget string `json:"logTarget"`
}
// HttpRequest ...

View File

@ -1,56 +0,0 @@
package model
import "go.mongodb.org/mongo-driver/bson/primitive"
// FilePhoto ...
type FilePhoto struct {
ID string `json:"_id"`
Name string `json:"name,omitempty"`
Dimensions *FileDimensions `json:"dimensions"`
}
// FileSize ...
type FileSize struct {
Width int `json:"width"`
Height int `json:"height"`
URL string `json:"url"`
}
// FileDimensions ...
type FileDimensions struct {
Small *FileSize `json:"sm"`
Medium *FileSize `json:"md"`
}
// ListPhoto ...
type ListPhoto []*FilePhoto
// Video ...
type Video struct {
ID primitive.ObjectID `json:"_id"`
Name string `json:"name"`
Dimensions *FileVideoDimensions `json:"dimensions"`
VideoExtension string `json:"ext"`
Thumbnail *FilePhoto `json:"thumbnail"`
Status string `json:"status"`
}
// FileVideoDimensions ...
type FileVideoDimensions struct {
Dimension480p *FileVideoSize `json:"size480p"`
Dimension720p *FileVideoSize `json:"size720p"`
Dimension1080p *FileVideoSize `json:"size1080p"`
DimensionOriginal *FileVideoSize `json:"original"`
}
// FileVideoSize ...
type FileVideoSize struct {
Name string `json:"name"`
Width int `json:"width"`
Height int `json:"height"`
Size string `json:"size"`
URL string `json:"url"`
}
// ListVideo ...
type ListVideo []Video

View File

@ -1,66 +0,0 @@
package model
// LocationRequestPayload ...
type (
// LocationRequestPayload ...
LocationRequestPayload struct {
Province int `json:"province"`
District int `json:"district"`
Ward int `json:"ward"`
}
// ProvinceRequestPayload ...
ProvinceRequestPayload struct {
Codes []int `json:"codes"`
}
// ProvinceRequestCondition ...
ProvinceRequestCondition struct {
Code int `json:"code"`
Codes []int `json:"codes"`
Slug string `json:"slug"`
Slugs []string `json:"slugs"`
Keyword string `json:"keyword"`
Region string `json:"region"`
}
// DistrictRequestPayload ...
DistrictRequestPayload struct {
Codes []int `json:"codes"`
}
// DistrictRequestCondition ...
DistrictRequestCondition struct {
Code int `json:"code"`
Codes []int `json:"codes"`
ProvinceCode int `json:"provinceCode"`
Slug string `json:"slug"`
ProvinceSlug string `json:"provinceSlug"`
Keyword string `json:"keyword"`
}
// WardRequestPayload ...
WardRequestPayload struct {
Codes []int `json:"codes"`
}
// WardRequestCondition ...
WardRequestCondition struct {
Code int `json:"code"`
Codes []int `json:"codes"`
DistrictCode int `json:"districtCode"`
ProvinceCode int `json:"provinceCode"`
Slug string `json:"slug"`
DistrictSlug string `json:"districtSlug"`
ProvinceSlug string `json:"provinceSlug"`
Keyword string `json:"keyword"`
}
// ProvinceDistinctWithField ...
ProvinceDistinctWithField struct {
Conditions struct {
Region string `json:"region"`
} `json:"conditions"`
Field string `json:"filed"`
}
)

View File

@ -1,95 +0,0 @@
package model
type (
// ResponseLocationAddress ...
ResponseLocationAddress struct {
Province LocationProvince `json:"province"`
District LocationDistrict `json:"district"`
Ward LocationWard `json:"ward"`
}
// LocationProvince ...
LocationProvince struct {
ID string `json:"id"`
Name string `json:"name"`
Code int `json:"code"`
Slug string `json:"slug"`
RegionCode string `json:"regionCode"`
MainRegionCode string `json:"mainRegionCode"`
}
// LocationDistrict ...
LocationDistrict struct {
ID string `json:"id"`
Name string `json:"name"`
Code int `json:"code"`
Slug string `json:"slug"`
}
// LocationWard ...
LocationWard struct {
ID string `json:"id"`
Name string `json:"name"`
Code int `json:"code"`
Slug string `json:"slug"`
Location *GEOLocation `json:"location"`
}
// GEOLocation ...
GEOLocation struct {
Type string `bson:"type" json:"type"`
Coordinates []float64 `bson:"coordinates" json:"coordinates"`
}
// LocationProvinceResponse ...
LocationProvinceResponse struct {
Provinces []LocationProvince `json:"provinces"`
}
// LocationDistrictResponse ...
LocationDistrictResponse struct {
Districts []LocationDistrict `json:"districts"`
}
// LocationWardResponse ...
LocationWardResponse struct {
Wards []LocationWard `json:"wards"`
}
// LocationProvinceDetailResponse ...
LocationProvinceDetailResponse struct {
ID string `json:"_id"`
Name string `json:"name"`
Slug string `json:"slug"`
Code int `json:"code"`
CountryCode string `json:"countryCode"`
RegionCode string `json:"regionCode"`
MainRegionCode string `json:"mainRegionCode"`
TotalDistricts int `json:"totalDistricts"`
TotalWards int `json:"totalWards"`
}
// LocationDistrictDetailResponse ...
LocationDistrictDetailResponse struct {
ID string `json:"_id"`
Name string `json:"name"`
OldSlugs []string `json:"oldSlugs"`
Slug string `json:"slug"`
Code int `json:"code"`
ProvinceCode int `json:"provinceCode"`
Area int `json:"area"`
TotalWards int `json:"totalWards"`
}
// LocationWardDetailResponse ...
LocationWardDetailResponse struct {
ID string `json:"_id"`
Name string `json:"name"`
OldSlugs []string `json:"oldSlugs"`
Slug string `json:"slug"`
Code int `json:"code"`
DistrictCode int `json:"districtCode"`
ProvinceCode int `json:"provinceCode"`
Location *GEOLocation `json:"location"`
}
)

View File

@ -1,6 +0,0 @@
package model
// GetProductNoticesByInventoryRequest ....
type GetProductNoticesByInventoryRequest struct {
InventoryIds []string `json:"inventoryIds"`
}

View File

@ -1,38 +0,0 @@
package model
// GetProductNoticesByInventoryResponse ....
type GetProductNoticesByInventoryResponse struct {
Notices []NewsAppResponse `json:"notices"`
}
// NewsAppResponse ...
type NewsAppResponse struct {
ID string `json:"_id"`
Title string `json:"title,omitempty"`
Target *TargetNewDoc `json:"target,omitempty"`
ActionType *ActionType `json:"action"`
ShortDesc string `json:"shortDesc,omitempty"`
Type string `json:"type"`
ShortTitle string `json:"shortTitle,omitempty"`
Color string `json:"color"`
Options *NewsOptions `json:"options,omitempty"`
DisplayStyle string `json:"displayStyle"`
}
// NewsOptions ...
type NewsOptions struct {
Category string `json:"category"`
}
// TargetNewDoc ...
type TargetNewDoc struct {
Type string `json:"type,omitempty"`
Value string `json:"value,omitempty"`
}
// ActionType ...
type ActionType struct {
Type string `json:"type"`
Value string `json:"value"`
Text string `json:"text,omitempty"`
}

View File

@ -2,54 +2,13 @@ package model
// OrderUpdateORStatus ...
type OrderUpdateORStatus struct {
ID string `json:"id"`
OrderCode string `json:"orderCode"`
ORCode string `json:"orCode"`
Status string `json:"status"`
DeliveryStatus string `json:"deliveryStatus"`
Reason string `json:"reason"`
Data OrderORData `json:"data"`
OrderCode string `json:"orderCode"`
ORCode string `json:"orCode"`
Status string `json:"status"`
Reason string `json:"reason"`
}
// OrderCancelDelivery ...
type OrderCancelDelivery struct {
OrderID string `json:"orderId"`
}
// OrderChangeDeliveryStatus ...
type OrderChangeDeliveryStatus struct {
OrderID string `json:"orderId"`
DeliveryStatus string `json:"deliveryStatus"`
ActionBy ActionBy `json:"actionBy"`
}
// OrderORData ...
type OrderORData struct {
Link string `json:"link"`
}
// OrderUpdateLogisticInfoFailed ...
type OrderUpdateLogisticInfoFailed struct {
OrderID string `json:"orderId"`
ORCode string `json:"orCode"`
Reason string `json:"reason"`
}
// OrderORsNotUpdateStatus ...
type OrderORsNotUpdateStatus struct {
ORCodes []string `json:"orCodes"`
}
// OrderSupplierQuery ...
type OrderSupplierQuery struct {
Limit int64 `json:"limit"`
Page int64 `json:"page"`
FromDate string `json:"fromDate"`
ToDate string `json:"toDate"`
SupplierID string `json:"supplierId"`
WarehouseIDs []string `json:"warehouseIDs"`
}
type OrderGetTotalWarningPayload struct {
UserID string `json:"userId"`
}

View File

@ -1,42 +0,0 @@
package model
import "time"
// SupplierOrderList ...
type SupplierOrderList struct {
List []SupplierOrder `json:"list"`
Total int64 `json:"total" example:"100"`
Limit int64 `json:"limit" example:"20"`
}
// SupplierOrder ...
type SupplierOrder struct {
ID string `json:"_id"`
Code string `json:"code"`
CreatedAt time.Time `json:"createdAt"`
Status string `json:"status"`
WarehouseStatus string `json:"warehouseStatus"`
Items []SupplierOrderItem `json:"items"`
Delivery SupplierOrderDelivery `json:"delivery"`
}
// SupplierOrderItem ...
type SupplierOrderItem struct {
ID string `json:"_id" example:"1231"`
SupplierSKU string `json:"supplierSku" example:"SUPPLIER_SKU"`
Quantity int64 `json:"quantity" example:"2"`
}
// SupplierOrderDelivery ...
type SupplierOrderDelivery struct {
Code string `json:"code" example:"123187287"`
Status string `json:"status" enums:"waiting_to_confirm,waiting_to_pick,picking,picked,delay_pickup,pickup_failed,delivering,delay_delivery,delivered,cancelled,delivery_failed,waiting_to_return,returning,delay_return,compensation,returned"`
TPLCode string `json:"tplCode" enums:"SLY,GHTK,GHN,SSC,SPY,VTP,SE,NTL,BEST"`
}
// OrderGetTotalWarningRes ...
type OrderGetTotalWarningRes struct {
UserID string `json:"userId"`
TotalWarningOrder int64 `json:"totalWarningOrder"`
Action ActionType `json:"action"`
}

View File

@ -1,14 +0,0 @@
package model
type ProductApplyRequestPayload struct {
RequestID string `json:"requestId"`
}
type ProductCreateStepsPayload struct {
RequestID string `json:"requestId"`
}
type ProductRequestChangeStatus struct {
RequestID string `json:"requestId"`
Status string `json:"status"`
}

View File

@ -1,8 +0,0 @@
package model
type QueueScheduleTaskRequest struct {
ID string `json:"id"`
NatsSubject string `json:"natsSubject"`
Data string `json:"data"`
StartAt int64 `json:"startAt"` // unix
}

View File

@ -1,6 +0,0 @@
package model
// GetListSegmentRequest ...
type GetListSegmentRequest struct {
SegmentIds []string `json:"segmentIds"`
}

View File

@ -1,12 +0,0 @@
package model
// ResponseSegmentInfo ...
type ResponseSegmentInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
}
// ResponseListSegmentInfo ...
type ResponseListSegmentInfo struct {
Segments []ResponseSegmentInfo `json:"segments"`
}

View File

@ -1,18 +0,0 @@
package model
import "go.mongodb.org/mongo-driver/bson/primitive"
// GetSellerByIDRequest ...
type GetSellerByIDRequest struct {
SellerID primitive.ObjectID `json:"sellerId"`
}
// GetListSellerByIDsRequest ...
type GetListSellerByIDsRequest struct {
SellerIDs []primitive.ObjectID `json:"sellerIds"`
}
// GetListSellerSupportChatByIDsRequest ...
type GetListSellerSupportChatByIDsRequest struct {
SellerIDs []primitive.ObjectID `json:"sellerIds"`
}

View File

@ -1,92 +0,0 @@
package model
import "time"
// ResponseSellerInfo ...
type ResponseSellerInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
Code string `json:"code"`
IsAccountPro bool `json:"isAccountPro"`
CashRemaining float64 `json:"cashRemaining"`
}
// ResponseListSellerInfo ...
type ResponseListSellerInfo struct {
Sellers []ResponseSellerInfo `json:"sellers"`
}
// ResponseListSellerInfoSupportChat ...
type ResponseListSellerInfoSupportChat struct {
Sellers []ResponseSellerInfoSupportChat `json:"sellers"`
}
// ResponseSellerInfoSupportChat ...
type ResponseSellerInfoSupportChat struct {
ID string `json:"_id"`
Name string `json:"name"`
Code string `json:"code"`
Membership SellerMembershipInfo `json:"membership"`
Info SellerContactInfo `json:"info"`
Team *TeamInfo `json:"team,omitempty"`
Statistic SellerStatistic `json:"statistic"`
TrackingTime *SellerTrackingTime `json:"trackingTime"`
Invitee *InviteeInfo `json:"invitee"`
CreatedAt time.Time `json:"createdAt"`
PlanPackage *SellerPlanPackageInfo `json:"planPackage"`
}
// SellerPlanPackageInfo ...
type SellerPlanPackageInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
Level int `json:"level"`
CreatedAt time.Time `json:"createdAt"`
}
// SellerTrackingTime ...
type SellerTrackingTime struct {
FirstOrderDeliveredAt time.Time `json:"firstOrderDeliveredAt,omitempty"`
ThirdOrderDeliveredAt time.Time `json:"thirdOrderDeliveredAt,omitempty"`
}
// SellerStatistic ...
type SellerStatistic struct {
ThisMonthSale float64 `bson:"thisMonthSale" json:"thisMonthSale"`
LastMonthSale float64 `bson:"lastMonthSale" json:"lastMonthSale"`
Sale float64 `bson:"sale" json:"sale"`
TransactionTotal int `json:"transactionTotal"`
TransactionPaymentProcessing int `json:"transactionPaymentProcessing"`
TransactionWaitingApprove int `json:"transactionWaitingApprove"`
TransactionPending int `json:"transactionPending"`
TransactionSuccess int `json:"transactionSuccess"`
TransactionRejected int `json:"transactionRejected"`
TransactionDelivering int `json:"transactionDelivering"`
TransactionDelivered int `json:"transactionDelivered"`
}
// TeamInfo ...
type TeamInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
Role string `json:"role"`
}
// InviteeInfo ...
type InviteeInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
}
// SellerContactInfo ...
type SellerContactInfo struct {
City int `json:"cityCode"`
CityName string `json:"cityName"`
Gender string `json:"gender"`
}
// SellerMembershipInfo ...
type SellerMembershipInfo struct {
Level int `json:"level"`
Name string `json:"name"`
}

View File

@ -1,13 +0,0 @@
package model
import "go.mongodb.org/mongo-driver/bson/primitive"
// GetListSocialPostAppByIDsRequest ...
type GetListSocialPostAppByIDsRequest struct {
SocialPostIDs []primitive.ObjectID `json:"socialPostIDs"`
}
// GetBriefInfoSocialPostAdminByIDsRequest ...
type GetBriefInfoSocialPostAdminByIDsRequest struct {
SocialPostIDs []primitive.ObjectID `json:"socialPostIDs"`
}

View File

@ -1,61 +0,0 @@
package model
import (
"go.mongodb.org/mongo-driver/bson/primitive"
"time"
)
// ResponseListSocialPostAppInfo ...
type ResponseListSocialPostAppInfo struct {
SocialPosts []SocialPostAppInfo `json:"socialPosts"`
}
// SocialPostAppInfo ...
type SocialPostAppInfo struct {
ID primitive.ObjectID `json:"_id"`
Title string `json:"title"`
Content string `json:"content"`
Statistic SocialPostStatistic `json:"statistic"`
Author *SocialPostSellerInfo `json:"author"`
Photos ListPhoto `json:"photos"`
PublishedAt time.Time `json:"publishedAt"`
IsLiked bool `json:"isLiked"`
IsPin bool `json:"isPin"`
Contributor *SocialPostSellerInfo `json:"contributor"`
CreatedAt time.Time `json:"createdAt"`
Status string `json:"status"`
HasUpdate bool `json:"hasUpdate"`
Order int `json:"order"`
Videos ListVideo `json:"videos"`
}
// SocialPostStatistic ...
type SocialPostStatistic struct {
Views int `json:"views"`
UniqueViews int `json:"uniqueViews"`
Likes int `json:"likes"`
Shares int `json:"shares"`
UniqueShares int `json:"uniqueShares"`
Comments int `json:"comments"`
}
// SocialPostSellerInfo ...
type SocialPostSellerInfo struct {
ID primitive.ObjectID `json:"_id"`
Name string `json:"name"`
Membership SellerMembershipInfo `json:"membership"`
Logo *FilePhoto `json:"avatar"`
IsMine bool `json:"isMine"`
}
// ResponseListSocialPostAdminInfo ...
type ResponseListSocialPostAdminInfo struct {
SocialPosts []SocialPostAdminInfo `json:"socialPosts"`
}
// SocialPostAdminInfo ...
type SocialPostAdminInfo struct {
ID primitive.ObjectID `json:"_id"`
Title string `json:"title"`
Status string `json:"status"`
}

View File

@ -1,19 +0,0 @@
package model
// PayloadEmitSocketEvent ...
type PayloadEmitSocketEvent struct {
User string `json:"user"`
Message string `json:"message"`
Data string `json:"data"`
IsNotRemove bool `json:"isNotRemove"`
}
// PayloadEventSocketReward ...
type PayloadEventSocketReward struct {
Type string `json:"type"`
Title string `json:"title"`
Cash float64 `json:"cash"`
Message string `json:"message"`
Photo interface{} `json:"photo"`
Action *ActionType `json:"action"`
}

View File

@ -1,6 +0,0 @@
package model
// GetListStaffRequest ...
type GetListStaffRequest struct {
StaffIds []string `json:"staffIds"`
}

View File

@ -1,12 +0,0 @@
package model
// ResponseListStaffInfo ...
type ResponseListStaffInfo struct {
Staffs []ResponseStaffInfo `json:"staffs"`
}
// ResponseStaffInfo ...
type ResponseStaffInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
}

View File

@ -1,59 +0,0 @@
package model
import (
"go.mongodb.org/mongo-driver/bson/primitive"
)
// GetSupplierRequest ...
type GetSupplierRequest struct {
ListID []primitive.ObjectID `json:"listID"`
}
// GetDetailSupplierRequest ...
type GetDetailSupplierRequest struct {
Supplier string `json:"supplier"`
}
type GetSupplierContractRequest struct {
SupplierID primitive.ObjectID `json:"supplierID"`
}
// SupplierRequestPayload ...
type SupplierRequestPayload struct {
Limit int
Page int
Keyword string
Status string
PIC string
ContractStatus string
}
type CreateSupplierWarehousePayload struct {
Supplier string `json:"supplier"`
Warehouse string `json:"warehouse"`
ProvinceCode int `json:"provinceCode"`
DistrictCode int `json:"districtCode"`
WardCode int `json:"wardCode"`
}
type UpdateSupplierWarehousePayload struct {
Supplier string `json:"supplier"`
Warehouse string `json:"warehouse"`
ProvinceCode int `json:"provinceCode"`
DistrictCode int `json:"districtCode"`
WardCode int `json:"wardCode"`
}
type SupplierFindAllReq struct {
Page int64 `json:"page"`
Limit int64 `json:"limit"`
Segment string `json:"segment"`
IDs []string `json:"ids"`
Status string `json:"status"` // active,inactive
}
type SupplierCountReq struct {
Segment string `json:"segment"`
IDs []string `json:"ids"`
Status string `json:"status"` // active,inactive
}

View File

@ -1,36 +0,0 @@
package model
// ResponseSupplierInfo ...
type ResponseSupplierInfo struct {
ID string `json:"id"`
Name string `json:"name"`
BusinessType string `json:"businessType"`
IsSellyMall bool `json:"isSellyMall"`
}
// ResponseSupplierContract ...
type ResponseSupplierContract struct {
ID string `json:"id"`
Supplier string `json:"supplier"`
Name string `json:"name"`
Status string `json:"status"`
}
// SupplierBrief ...
type SupplierBrief struct {
ID string `json:"_id"`
Name string `json:"name"`
Status string `json:"status"`
BusinessType string `json:"businessType"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
}
type SupplierAll struct {
Suppliers []SupplierBrief `json:"suppliers"`
Total int64 `json:"total"`
}
type SupplierCountRes struct {
Total int64 `json:"total"`
}

View File

@ -1,14 +0,0 @@
package model
type CreateRoleRequest struct {
Name string `json:"name"`
Code string `json:"code"`
Type string `json:"type"`
}
type UpdateRoleRequest struct {
ID string `json:"_id"`
Name string `json:"name"`
Code string `json:"code"`
Type string `json:"type"`
}

View File

@ -1,5 +0,0 @@
package model
type CreateRoleResponse struct {
ID string `json:"_id"`
}

View File

@ -1,57 +0,0 @@
package model
type CreateOwnerRequest struct {
Name string `json:"name"`
Phone string `json:"phone"`
Email string `json:"email"`
SupplierID string `json:"supplierId"`
RoleID string `json:"roleId"`
Password string `json:"password"`
}
type UpdateOwnerRequest struct {
ID string `json:"_id"`
SupplierID string `json:"supplierId"`
Name string `json:"name"`
Phone string `json:"phone"`
Email string `json:"email"`
RoleID string `json:"roleId"`
}
type CreateStaffRequest struct {
Name string `json:"name"`
Phone string `json:"phone"`
Email string `json:"email"`
SupplierID string `json:"supplierId"`
RoleID string `json:"roleId"`
Password string `json:"password"`
Warehouses []string `json:"warehouses"`
}
type UpdateStaffRequest struct {
ID string `json:"_id"`
Name string `json:"name"`
Phone string `json:"phone"`
Email string `json:"email"`
SupplierID string `json:"supplierId"`
RoleID string `json:"roleId"`
Password string `json:"password"`
SupplierUserWarehouseID string `json:"supplierUserWarehouseId"`
Warehouses []string `json:"warehouses"`
}
type UpdateStatusRequest struct {
ID string `json:"_id"`
Status string `json:"status"`
}
type ResetPasswordRequest struct {
ID string `json:"_id"`
Password string `json:"password"`
}
// CheckTokenSupplierUserPayload ...
type CheckTokenSupplierUserPayload struct {
Token string `json:"token"`
Permissions []string `json:"permissions"`
}

View File

@ -1,26 +0,0 @@
package model
type CreateOwnerResponse struct {
ID string `json:"_id"`
}
type CreateStaffResponse struct {
ID string `json:"_id"`
}
type ResetPasswordResponse struct {
Password string `json:"password"`
}
// ResponseCheckTokenSupplierUser ...
type ResponseCheckTokenSupplierUser struct {
IsValid bool `json:"isValid"`
Reason string `json:"reason"`
User ResponseSupplierUserInfo `json:"supplier"`
}
type ResponseSupplierUserInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
SupplierID string `json:"supplierId"`
}

View File

@ -2,54 +2,29 @@ package model
// OutboundRequestPayload ...
type OutboundRequestPayload struct {
OrderID string `json:"orderId"`
OrderCode string `json:"orderCode"`
TrackingCode string `json:"trackingCode"`
WarehouseID string `json:"warehouseId"`
SupplierID string `json:"supplierId"`
Note string `json:"note"`
CODAmount float64 `json:"codAmount"`
TPLCode string `json:"tplCode"`
Customer CustomerInfo `json:"customer"`
Items []OutboundRequestItem `json:"items"`
Insurance *InsuranceOpts `json:"insurance"`
PaymentMethod string `json:"paymentMethod"`
}
// InsuranceOpts ...
type InsuranceOpts struct {
InsuranceType string `json:"insuranceType"`
VehicleTypeID string `json:"vehicleTypeId"`
VehicleTypeName string `json:"vehicleTypeName"`
InsuranceTypeID string `json:"insuranceTypeId"`
YearsOfInsurance int `json:"yearsOfInsurance"`
License string `json:"license"`
Chassis string `json:"chassis"`
Engine string `json:"engine"`
BeginDate string `json:"beginDate"`
// For car insurance
NumberOfSeatsCarOccupantAccidentInsurance int `json:"numberOfSeatsCarOccupantAccidentInsurance"`
NumberOfSeats int `json:"numberOfSeats"`
NumberOfSeatsOrTonnageId string `json:"numberOfSeatsOrTonnageId"`
NumberOfSeatsOrTonnageName string `json:"numberOfSeatsOrTonnageName"`
OrderID string `json:"orderId"`
OrderCode string `json:"orderCode"`
TrackingCode string `json:"trackingCode"`
WarehouseID string `json:"warehouseId"`
SupplierID string `json:"supplierId"`
Note string `json:"note"`
CODAmount float64 `json:"codAmount"`
TPLCode string `json:"tplCode"`
Customer CustomerInfo `json:"customer"`
Items []OutboundRequestItem `json:"items"`
}
// OutboundRequestItem ...
type OutboundRequestItem struct {
SupplierSKU string `json:"supplierSKU"`
Quantity int64 `json:"quantity"`
UnitCode string `json:"unitCode"`
Price float64 `json:"price"`
Name string `json:"name"`
PartnerProductCode string `json:"partnerProductCode"`
SupplierSKU string `json:"supplierSKU"`
Quantity int64 `json:"quantity"`
UnitCode string `json:"unitCode"`
}
// CustomerInfo ...
type CustomerInfo struct {
Name string `json:"name"`
PhoneNumber string `json:"phoneNumber"`
Email string `json:"email"`
Address AddressDetail `json:"address"`
}
@ -64,76 +39,13 @@ type AddressDetail struct {
// UpdateOutboundRequestLogisticInfoPayload ...
type UpdateOutboundRequestLogisticInfoPayload struct {
ShippingLabel string `json:"shippingLabel,omitempty"`
TrackingCode string `json:"trackingCode,omitempty"`
ORCode string `json:"orCode,omitempty"`
TPLCode string `json:"tplCode,omitempty"`
OrderID string `json:"orderId"`
DeliveryStatus string `json:"deliveryStatus,omitempty"`
ShippingLabel string `json:"shippingLabel"`
TrackingCode string `json:"trackingCode"`
ORCode string `json:"orCode"`
}
// CancelOutboundRequest ...
type CancelOutboundRequest struct {
ORCode string `json:"orCode"`
OrderID string `json:"orderId"`
Note string `json:"note"`
}
// SyncORStatusRequest ...
type SyncORStatusRequest struct {
ORCode string `json:"orCode"`
OrderCode string `json:"orderCode"`
OrderID string `json:"orderId"`
}
// UpdateSupplierIsClosedRequest ...
type UpdateSupplierIsClosedRequest struct {
Suppliers []SupplierIsClosed `json:"suppliers"`
}
// SupplierIsClosed ...
type SupplierIsClosed struct {
Supplier string `json:"supplier"`
IsClosed bool `json:"isClosed"`
}
// GetWarehousesRequest ...
type GetWarehousesRequest struct {
Keyword string `json:"keyword"`
Status string `json:"status"`
Supplier string `json:"supplier"`
BusinessType string `json:"businessType"`
IDs []string `json:"ids"`
Page int64 `json:"page"`
Limit int64 `json:"limit"`
}
// WarehouseORUpdateDeliveryStatus ...
type WarehouseORUpdateDeliveryStatus struct {
ORCode string `json:"orCode"`
OrderCode string `json:"orderCode"`
OrderID string `json:"orderId"`
DeliveryStatus string `json:"deliveryStatus"`
}
// UpdateStatusWarehousePendingInactiveRequest ...
type UpdateStatusWarehousePendingInactiveRequest struct {
Warehouses []UpdateStatusWarehousePendingInactive `json:"warehouses"`
}
// UpdateIsSellyMallRequest ...
type UpdateIsSellyMallRequest struct {
SupplierID string `json:"supplier"`
}
// UpdateStatusWarehousePendingInactive ...
type UpdateStatusWarehousePendingInactive struct {
WarehouseID string `json:"warehouse"`
PendingInactive bool `json:"pendingInactive"`
}
type GetListWarehouseConfigReq struct {
PartnerCode string `json:"partnerCode"`
PartnerIdentityCode string `json:"partnerIdentityCode"`
ORCode string `json:"orCode"`
Note string `json:"note"`
}

View File

@ -1,7 +1,5 @@
package model
import "time"
// OutboundRequestResponse ...
type OutboundRequestResponse struct {
// System code
@ -18,39 +16,12 @@ type OutboundRequestResponse struct {
// WarehouseConfiguration ...
type WarehouseConfiguration struct {
Warehouse string `json:"warehouse"`
DoesSupportSellyExpress bool `json:"doesSupportSellyExpress"`
Supplier WarehouseSupplier `json:"supplier"`
Order WarehouseOrder `json:"order"`
Partner WarehousePartner `json:"partner"`
Delivery WarehouseDelivery `json:"delivery"`
Other WarehouseOther `json:"other"`
Food WarehouseFood `json:"food"`
AutoConfirmOrder WarehouseOrderConfirm `json:"autoConfirmOrder"`
}
// WarehouseOrderConfirm ...
type WarehouseOrderConfirm struct {
IsEnable bool `json:"isEnable"`
ConfirmDelayInSeconds int64 `json:"confirmDelayInSeconds"`
}
// WarehouseFood ...
type WarehouseFood struct {
ForceClosed bool `json:"forceClosed"`
IsClosed bool `json:"isClosed"`
TimeRange []TimeRange `json:"timeRange"`
}
// TimeRange ...
type TimeRange struct {
From int64 `json:"from"`
To int64 `json:"to"`
}
// WarehouseOther ...
type WarehouseOther struct {
DoesSupportSellyExpress bool `json:"doesSupportSellyExpress"`
Warehouse string `json:"warehouse"`
DoesSupportSellyExpress bool `json:"doesSupportSellyExpress"`
Supplier WarehouseSupplier `json:"supplier"`
Order WarehouseOrder `json:"order"`
Partner WarehousePartner `json:"partner"`
Delivery WarehouseDelivery `json:"delivery"`
}
// WarehouseSupplier ...
@ -61,28 +32,16 @@ type WarehouseSupplier struct {
// WarehouseOrder ...
type WarehouseOrder struct {
MinimumValue float64 `json:"minimumValue"`
PaymentMethod WarehousePaymentMethod `json:"paymentMethod"`
IsLimitNumberOfPurchases bool `json:"isLimitNumberOfPurchases"`
LimitNumberOfPurchases int64 `json:"limitNumberOfPurchases"`
NotifyOnNewOrder WarehouseConfigNotifyOnNewOrder `json:"notifyOnNewOrder"`
LabelSize string `json:"labelSize"`
MaximumOrderValue float64 `json:"maximumOrderValue"`
MaximumNumberPerBuyerEachMonth int64 `json:"maximumNumberPerBuyerEachMonth"`
}
// WarehouseConfigNotifyOnNewOrder ...
type WarehouseConfigNotifyOnNewOrder struct {
Enable bool `bson:"enable" json:"enable"`
Channel string `bson:"channel" json:"channel"`
RoomID string `bson:"roomId" json:"roomId"`
MinimumValue float64 `json:"minimumValue"`
PaymentMethod WarehousePaymentMethod `json:"paymentMethod"`
IsLimitNumberOfPurchases bool `json:"isLimitNumberOfPurchases"`
LimitNumberOfPurchases int64 `json:"limitNumberOfPurchases"`
}
// WarehousePaymentMethod ...
type WarehousePaymentMethod struct {
Cod bool `json:"cod"`
BankTransfer bool `json:"bankTransfer"`
Fundiin bool `json:"fundiin"`
}
// WarehouseDelivery ...
@ -100,95 +59,3 @@ type WarehousePartner struct {
Enabled bool `json:"enabled"`
Authentication string `json:"authentication"`
}
// SyncORStatusResponse ...
type SyncORStatusResponse struct {
ORCode string `json:"orCode"`
OrderCode string `json:"orderCode"`
Status string `json:"status"`
DeliveryStatus string `json:"deliveryStatus"`
Data OrderORData `json:"data"`
}
// ResponseWarehouseContact ...
type ResponseWarehouseContact struct {
Name string `json:"name"`
Phone string `json:"phone"`
Address string `json:"address"`
Email string `json:"email"`
}
// ResponseWarehouseLocation ...
type ResponseWarehouseLocation struct {
Province CommonLocation `json:"province"`
District CommonLocation `json:"district"`
Ward CommonLocation `json:"ward"`
Address string `json:"address"`
LocationCoordinates ResponseLatLng `json:"locationCoordinates"`
}
type CommonLocation struct {
ID string `json:"id"`
Name string `json:"name"`
Code int `json:"code"`
}
// ResponseLatLng ...
type ResponseLatLng struct {
Latitude float64 `json:"latitude"`
Longitude float64 `json:"longitude"`
}
// WarehouseNatsResponse ...
type WarehouseNatsResponse struct {
ID string `json:"_id"`
Staff string `json:"staff"`
BusinessType string `json:"businessType"`
Name string `json:"name"`
SearchString string `json:"searchString"`
Slug string `json:"slug"`
Status string `json:"status"`
Supplier string `json:"supplier"`
Contact ResponseWarehouseContact `json:"contact"`
Location ResponseWarehouseLocation `json:"location"`
Configurations WarehouseConfiguration `json:"configurations"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
ReasonPendingInactive string `json:"reasonPendingInactive"`
IsPendingInactive bool `json:"isPendingInactive"`
IsFromInternational bool `json:"isFromInternational"`
StoreCode string `json:"storeCode"`
}
// WarehouseInfo ...
type WarehouseInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
BusinessType string `json:"businessType"`
Status string `json:"status"`
Slug string `json:"slug"`
Supplier WarehouseSupplierInfo `json:"supplier"`
Location ResponseWarehouseLocation `json:"location"`
Contact ResponseWarehouseContact `json:"contact"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
}
// WarehouseSupplierInfo ...
type WarehouseSupplierInfo struct {
ID string `json:"_id"`
Name string `json:"name"`
}
// GetWarehousesResponse ...
type GetWarehousesResponse struct {
Total int64 `json:"total"`
Limit int64 `json:"limit"`
List []WarehouseInfo `json:"list"`
}
type GetListWarehouseConfigRes struct {
Total int64 `json:"total"`
Limit int64 `json:"limit"`
List []WarehouseConfiguration `json:"list"`
}

View File

@ -3,6 +3,7 @@ package natsio
import (
"errors"
"fmt"
"github.com/logrusorgru/aurora"
"github.com/nats-io/nats.go"
)
@ -48,7 +49,7 @@ func Connect(cfg Config) error {
return errors.New(msg)
}
fmt.Printf("⚡️[natsio]: connected to %s \n", cfg.URL)
fmt.Println(aurora.Green("*** CONNECTED TO NATS: " + cfg.URL))
// Set client
natsServer.instance = nc

View File

@ -18,11 +18,7 @@ func (sv Server) Request(subject string, payload []byte) (*nats.Msg, error) {
if sv.Config.RequestTimeout > 0 {
timeout = sv.Config.RequestTimeout
}
msg, err := sv.instance.Request(subject, payload, timeout)
if errors.Is(err, nats.ErrNoResponders) {
log.Printf("[NATS SERVER]: request - no responders for subject: %s", subject)
}
return msg, err
return sv.instance.Request(subject, payload, timeout)
}
// Reply ...
@ -40,16 +36,6 @@ func (sv Server) Subscribe(subject string, cb nats.MsgHandler) (*nats.Subscripti
return sub, nil
}
// QueueSubscribe ...
func (sv Server) QueueSubscribe(subject, queue string, cb nats.MsgHandler) (*nats.Subscription, error) {
sub, err := sv.instance.QueueSubscribe(subject, queue, cb)
if err != nil {
msg := fmt.Sprintf("[NATS SERVER] - queue subscribe subject %s, queue %s error: %s", subject, queue, err.Error())
return nil, errors.New(msg)
}
return sub, nil
}
// NewJSONEncodedConn ...
func (sv Server) NewJSONEncodedConn() (*JSONEncoder, error) {
enc, err := nats.NewEncodedConn(sv.instance, nats.JSON_ENCODER)

View File

@ -1,13 +0,0 @@
package subject
import "fmt"
func getAffiliateValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Affiliate, val)
}
var Affiliate = struct {
GetTransactions string
}{
GetTransactions: getAffiliateValue("get_transactions"),
}

View File

@ -1,17 +0,0 @@
package subject
import "fmt"
func getBankValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Bank, val)
}
var Bank = struct {
GetBankById string
GetBankBranchById string
CheckBankAndBranchByID string
}{
GetBankById: getBankValue("get_bank_by_id"),
GetBankBranchById: getBankValue("get_bank_branch_by_id"),
CheckBankAndBranchByID: getBankValue("check_bank_and_brach_by_id"),
}

View File

@ -1,17 +0,0 @@
package subject
import "fmt"
// getCampaignValue ...
func getCampaignValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Campaign, val)
}
// Campaign ...
var Campaign = struct {
GetListCampaignTransactionAdminInfoByIDs string
GetCampaignSellerStatisticBySellerIDs string
}{
GetListCampaignTransactionAdminInfoByIDs: getCampaignValue("get_list_campaign_transaction_admin_info_by_ids"),
GetCampaignSellerStatisticBySellerIDs: getCampaignValue("get_campaign_seller_statistic_by_seller_ids"),
}

View File

@ -1,15 +1,10 @@
package subject
import "fmt"
const communicationPrefix = "communication_"
func getCommunicationValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Communication, val)
}
var Communication = struct {
RequestHTTP string
ResponseHTTP string
}{
RequestHTTP: getCommunicationValue("request_http"),
ResponseHTTP: getCommunicationValue("response_http"),
}
const (
CommunicationRequestHTTP = communicationPrefix + "request_http"
CommunicationResponseHTTP = communicationPrefix + "response_http"
CommunicationWebhookTNC = communicationPrefix + "webhook_tnc"
CommunicationWebhookGlobalCare = communicationPrefix + "webhook_global_care"
)

View File

@ -1,41 +0,0 @@
package subject
var prefixes = struct {
Communication string
Order string
News string
Warehouse string
Location string
Bank string
Supplier string
Seller string
SupplierUser string
SupplierRole string
SocialPost string
Staff string
Segment string
Product string
Queue string
Campaign string
Affiliate string
Socket string
}{
Communication: "communication",
Order: "order",
News: "news",
Warehouse: "warehouse",
Location: "location",
Supplier: "supplier",
Bank: "bank",
Seller: "seller",
SupplierUser: "supplier_user",
SupplierRole: "supplier_role",
SocialPost: "social_post",
Staff: "staff",
Segment: "segment",
Product: "product",
Queue: "queue",
Campaign: "campaign",
Affiliate: "affiliate",
Socket: "socket",
}

View File

@ -1,49 +0,0 @@
package subject
import "fmt"
func getLocationValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Location, val)
}
var Location = struct {
GetLocationByCode string
GetLocationByCodeFromLocationService string
GetLocationByWardCode string
GetProvincesByCodes string
GetProvincesByCodesFromLocationService string
GetDistrictsByCodes string
GetDistrictsByCodesFromLocationService string
GetWardsByCodes string
GetWardsByCodesFromLocationService string
GetProvinceByCondition string
GetProvincesByCondition string
GetDistrictByCondition string
GetDistrictsByCondition string
GetWardByCondition string
GetWardsByCondition string
CountProvinceByCondition string
CountDistrictByCondition string
CountWardByCondition string
ProvinceDistinctWithField string
}{
GetLocationByCode: getLocationValue("get_location_warehouse"),
GetLocationByCodeFromLocationService: getLocationValue("get_location_warehouse_from_location_service"),
GetLocationByWardCode: getLocationValue("get_location_by_ward_code"),
GetProvincesByCodes: getLocationValue("get_provinces_by_codes"),
GetProvincesByCodesFromLocationService: getLocationValue("get_provinces_by_codes_from_location_service"),
GetDistrictsByCodes: getLocationValue("get_districts_by_codes"),
GetDistrictsByCodesFromLocationService: getLocationValue("get_districts_by_codes_from_location_service"),
GetWardsByCodes: getLocationValue("get_wards_by_codes"),
GetWardsByCodesFromLocationService: getLocationValue("get_wards_by_codes_from_location_service"),
GetProvinceByCondition: getLocationValue("get_province_by_condition"),
GetProvincesByCondition: getLocationValue("get_provinces_by_condition"),
GetDistrictByCondition: getLocationValue("get_district_by_condition"),
GetDistrictsByCondition: getLocationValue("get_districts_byCondition"),
GetWardByCondition: getLocationValue("get_ward_by_condition"),
GetWardsByCondition: getLocationValue("get_wards_by_condition"),
CountProvinceByCondition: getLocationValue("count_province_by_condition"),
CountDistrictByCondition: getLocationValue("count_district_by_condition"),
CountWardByCondition: getLocationValue("count_ward_by_condition"),
ProvinceDistinctWithField: getLocationValue("province_distinct_with_field"),
}

View File

@ -1,13 +0,0 @@
package subject
import "fmt"
func getNewsValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.News, val)
}
var News = struct {
GetProductNoticesByInventory string
}{
GetProductNoticesByInventory: getNewsValue("get_product_notices_by_inventory"),
}

View File

@ -1,25 +1,8 @@
package subject
import "fmt"
const orderPrefix = "order_"
func getOrderValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Order, val)
}
var Order = struct {
UpdateORStatus string
GetUserTotalWarningOrders string
CancelDelivery string
ChangeDeliveryStatus string
UpdateLogisticInfoFailed string
ORNotUpdateStatus string
GetSupplierOrders string
}{
UpdateORStatus: getOrderValue("update_outbound_request_status"),
GetUserTotalWarningOrders: getOrderValue("get_user_total_warning_orders"),
CancelDelivery: getOrderValue("cancel_delivery"),
ChangeDeliveryStatus: getOrderValue("change_delivery_status"),
UpdateLogisticInfoFailed: getOrderValue("update_logistic_info_failed"),
ORNotUpdateStatus: getOrderValue("outbound_request_not_update_status"),
GetSupplierOrders: getOrderValue("get_supplier_orders"),
}
const (
OrderUpdateORStatus = orderPrefix + "update_outbound_request_status"
OrderCancelDelivery = orderPrefix + "cancel_delivery"
)

View File

@ -1,26 +0,0 @@
package subject
import "fmt"
// getSegmentValue ...
func getProductValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Product, val)
}
var Product = struct {
ApplyRequest string
CreateRequestStep string
ProcessApplyRequest string
RequestChangeStatus string
WebhookStockUpdate string // WebhookStockUpdate Kiotviet queue
OPWebhookStockUpdate string // OPWebhookStockUpdate Onpoint queue
OrderPaymentBankTransferWebhookCheckAndUpdateStatus string
}{
ApplyRequest: getProductValue("apply_request"),
CreateRequestStep: getProductValue("create_request_step"),
ProcessApplyRequest: getProductValue("process_apply_request"),
RequestChangeStatus: getProductValue("request_change_status"),
WebhookStockUpdate: getProductValue("webhook_stock_update"),
OPWebhookStockUpdate: getProductValue("op_webhook_stock_update"),
OrderPaymentBankTransferWebhookCheckAndUpdateStatus: getProductValue("order_payment_bank_transfer_webhook_check_and_update_status"),
}

View File

@ -1,13 +0,0 @@
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"),
}

View File

@ -1,15 +0,0 @@
package subject
import "fmt"
// getSegmentValue ...
func getSegmentValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Segment, val)
}
// Segment ...
var Segment = struct {
GetListSegmentInfo string
}{
GetListSegmentInfo: getSegmentValue("get_list_segment_info"),
}

View File

@ -1,23 +0,0 @@
package subject
import "fmt"
func getSellerValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Seller, val)
}
// Seller ...
var Seller = struct {
GetSellerInfoByID string
GetListSellerInfoByIDs string
}{
GetSellerInfoByID: getSellerValue("get_seller_info_by_id"),
GetListSellerInfoByIDs: getSellerValue("get_list_seller_info_by_ids"),
}
// SupportChat ...
var SupportChat = struct {
GetListSellerInfoSupportChatByIDs string
}{
GetListSellerInfoSupportChatByIDs: "SELLY_CHAT.REQUEST.SELLER_INFO",
}

View File

@ -1,17 +0,0 @@
package subject
import "fmt"
// getSocialPostValue ...
func getSocialPostValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.SocialPost, val)
}
// SocialPost ...
var SocialPost = struct {
GetListSocialPostAppInfoByIDs string
GetBriefInfoSocialPostAdminByIDs string
}{
GetListSocialPostAppInfoByIDs: getSocialPostValue("get_list_social_post_app_info_by_ids"),
GetBriefInfoSocialPostAdminByIDs: getSocialPostValue("get_brief_info_social_post_admin_by_ids"),
}

View File

@ -1,16 +0,0 @@
package subject
import "fmt"
func getSocketValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Socket, val)
}
// Socket ...
var Socket = struct {
EmitEventReward string
EmitEventToUser string
}{
EmitEventReward: getSocketValue("emit_event_reward"),
EmitEventToUser: "send_message_to_socket",
}

View File

@ -1,14 +0,0 @@
package subject
import "fmt"
func getStaffValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Staff, val)
}
// Staff ...
var Staff = struct {
GetListStaffInfo string
}{
GetListStaffInfo: getStaffValue("get_list_staff_info"),
}

View File

@ -1,23 +0,0 @@
package subject
import "fmt"
func getSupplierValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Supplier, val)
}
var Supplier = struct {
GetListSupplierInfo string
GetDetailSupplierInfo string
GetSupplierContractBySupplierID string
FindAll string
FindAllOld string
Count string
}{
GetListSupplierInfo: getSupplierValue("get_list_supplier_info"),
GetDetailSupplierInfo: getSupplierValue("get_detail_supplier_info"),
GetSupplierContractBySupplierID: getSupplierValue("get_supplier_contract_by_supplier_id"),
FindAll: getSupplierValue("find_all"),
FindAllOld: getSupplierValue("find_all_old"),
Count: getSupplierValue("count"),
}

View File

@ -1,15 +0,0 @@
package subject
import "fmt"
func getRoleValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.SupplierRole, val)
}
var SupplierRole = struct {
Create string
Update string
}{
Create: getRoleValue("create"),
Update: getRoleValue("update"),
}

View File

@ -1,27 +0,0 @@
package subject
import "fmt"
func getSupplierUserValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.SupplierUser, val)
}
var SupplierUser = struct {
// Users
CreateOwner string
UpdateOwner string
CreateStaff string
UpdateStaff string
UpdateStatus string
ResetPassword string
CheckTokenSupplierUser string
}{
// Users
CreateOwner: getSupplierUserValue("create_owner"),
UpdateOwner: getSupplierUserValue("update_owner"),
CreateStaff: getSupplierUserValue("create_staff"),
UpdateStaff: getSupplierUserValue("update_staff"),
UpdateStatus: getSupplierUserValue("update_status"),
ResetPassword: getSupplierUserValue("reset_password"),
CheckTokenSupplierUser: getSupplierUserValue("check_token_supplier_user"),
}

View File

@ -1,63 +1,10 @@
package subject
import (
"fmt"
const warehousePrefix = "warehouse_"
const (
WarehouseCreateOutboundRequest = warehousePrefix + "create_outbound_request"
WarehouseUpdateOutboundRequestLogistic = warehousePrefix + "update_outbound_request_logistic_info"
WarehouseCancelOutboundRequest = warehousePrefix + "cancel_outbound_request"
WarehouseGetConfiguration = warehousePrefix + "get_configuration"
)
func getWarehouseValue(val string) string {
return fmt.Sprintf("%s.%s", prefixes.Warehouse, val)
}
var Warehouse = struct {
CreateWarehouseIntoServiceSupplier string
UpdateWarehouseIntoServiceSupplier string
CreateOutboundRequest string
UpdateOutboundRequestLogistic string
CancelOutboundRequest string
GetConfiguration string
SyncORStatus string
WebhookTNC string
WebhookGlobalCare string
WebhookOnPoint string
WebhookViettelFFM string
FindOne string
FindByCondition string
Distinct string
Count string
AfterUpdateWarehouse string
AfterCreateWarehouse string
UpdateIsClosedSupplier string
GetWarehouses string
UpdateORDeliveryStatus string
UpdateStatusWarehousePendingInactive string
UpdateIsSellyMall string
UpdateWarehouseConfig string
BulkWriteWarehouseConfig string
GetListWarehouseConfig string
}{
CreateWarehouseIntoServiceSupplier: getWarehouseValue("create_warehouse_into_service_supplier"),
UpdateWarehouseIntoServiceSupplier: getWarehouseValue("update_warehouse_into_service_supplier"),
AfterCreateWarehouse: getWarehouseValue("after_create_warehouse"),
AfterUpdateWarehouse: getWarehouseValue("after_update_warehouse"),
CreateOutboundRequest: getWarehouseValue("create_outbound_request"),
UpdateOutboundRequestLogistic: getWarehouseValue("update_outbound_request_logistic_info"),
CancelOutboundRequest: getWarehouseValue("cancel_outbound_request"),
GetConfiguration: getWarehouseValue("get_configuration"),
SyncORStatus: getWarehouseValue("sync_or_status"),
WebhookTNC: getWarehouseValue("webhook_tnc"),
WebhookGlobalCare: getWarehouseValue("webhook_global_care"),
WebhookOnPoint: getWarehouseValue("webhook_on_point"),
WebhookViettelFFM: getWarehouseValue("webhook_viettel_ffm"),
FindOne: getWarehouseValue("find_one"),
FindByCondition: getWarehouseValue("find_all_by_condition"),
Distinct: getWarehouseValue("distinct"),
Count: getWarehouseValue("count"),
UpdateIsClosedSupplier: getWarehouseValue("update_is_closed_supplier"),
GetWarehouses: getWarehouseValue("get_warehouses"),
UpdateORDeliveryStatus: getWarehouseValue("update_or_delivery_status"),
UpdateStatusWarehousePendingInactive: getWarehouseValue("update_status_warehouse_pending_inactive"),
UpdateIsSellyMall: getWarehouseValue("update_is_selly_mall"),
UpdateWarehouseConfig: getWarehouseValue("update_warehouse_config"),
BulkWriteWarehouseConfig: getWarehouseValue("bulk_write_warehouse_config"),
GetListWarehouseConfig: getWarehouseValue("get_list_warehouse_config"),
}