Compare commits
238 Commits
get-seller
...
master
Author | SHA1 | Date |
---|---|---|
Minh Nguyen | 9c48edf1e3 | |
Nguyen Minh | 78194a2d43 | |
sinhluu | 0f40121bf7 | |
Minh Nguyen | de84fdc2bf | |
Minh Nguyen | 72d45ed239 | |
Nguyen Minh | a4a6f31ec6 | |
Nguyen Minh | 7ab8f1f3a5 | |
Nguyen Minh | ff223e2b46 | |
Sinh | 2b0d33efc2 | |
Sinh | dfdccfa86a | |
sinhluu | 1384cae433 | |
sinhluu | c82bf48503 | |
Minh Nguyen | 2e5a5b5f0f | |
Nguyen Minh | 2d04611fee | |
Sinh | 1d0b13285a | |
Minh Nguyen | 2b9092ecbe | |
Sinh | fd41b1eadf | |
Sinh | 9004771704 | |
Sinh | 524db8391f | |
sinhluu | 546c45aad4 | |
Sinh | 3a5046f65d | |
Sinh | c6284f3200 | |
Nguyen Minh | 02b699f144 | |
Sinh | a409c0d17c | |
sinhluu | 5edec97ee3 | |
Sinh | 430e07b7d0 | |
Sinh | 7302b78f25 | |
Sinh | e84157281b | |
Sinh | 28178e0c31 | |
Sinh | b3bde5cd09 | |
kingphon | 2ba590a0a0 | |
kingphon | a62eeb60d2 | |
kingphon | 31a13546bb | |
kingphon | b240d7a9d1 | |
kingphon | f58dfd4291 | |
kingphon | ba8af50460 | |
kingphon | 8dd914ca4e | |
trunglam | 10aec9f710 | |
trunglt251292 | 1c7e947344 | |
sinhluu | 898ee7822f | |
sinhluu | 1ca2e5720e | |
Sinh | 202dca2c28 | |
Sinh | 1579e563ac | |
Sinh | a432e7fd44 | |
Sinh | 041dd43616 | |
Minh Nguyen | aaf8de9830 | |
Nguyen Minh | 9c2f55e434 | |
Nguyen Minh | 8ed19af4ea | |
Nguyen Minh | 985a86dbd7 | |
Nguyen Minh | afd6b215d6 | |
Minh Nguyen | d6f50295c7 | |
sinhluu | 983731715b | |
Sinh | d03758a32d | |
Nguyen Minh | 71d674b74c | |
Nguyen Minh | 41b79b4ae8 | |
sinhluu | 53b2215309 | |
Nguyen Minh | ffe9418671 | |
Nguyen Minh | 7b01640583 | |
Sinh | 2e069b94e7 | |
Sinh | aee7b01b40 | |
tuannt20 | 2f64f1fa37 | |
tuannt20 | a1d6840fd9 | |
Nguyen Minh | 0401a57930 | |
Nguyen Minh | 79ad5c401c | |
trunglam | e64ba040b0 | |
quang | dba7cf4691 | |
sinhluu | 0269010ce8 | |
Sinh | 4c328c0858 | |
trunglam | 6626bc8588 | |
anbuiselly | f4f15ea224 | |
trunglam | f43a99628e | |
trunglt251292 | 5a47acc373 | |
quang | f32844916a | |
anbuiselly | 49156e576d | |
anbuiselly | 292c7733f0 | |
anbuiselly | 9a30faa3a2 | |
anbuiselly | f9b2edb032 | |
Minh Nguyen | cf88c46708 | |
Nguyen Minh | 2003cb4e49 | |
Nguyen Minh | 67b99f7774 | |
Sinh | df1fbbcf57 | |
truongvo | 74277cc390 | |
anbuiselly | 39614ca4c5 | |
Sinh | 1edc683dd5 | |
buiphuan0211 | 9b758ee785 | |
buiphuan0211 | 64c7fca2cc | |
buiphuan0211 | 4fd0a89acd | |
Sinh | e7888e2c4c | |
buiphuan0211 | ec9dedad0d | |
buiphuan0211 | 7f548f0931 | |
buiphuan0211 | 71be64db27 | |
Sinh | 252c82f1e4 | |
Sinh | e66596baf6 | |
Sinh | b19fea04c8 | |
buiphuan0211 | 54f5c45488 | |
buiphuan0211 | b5d7425114 | |
buiphuan0211 | daac1da25d | |
buiphuan0211 | 5ec216067d | |
buiphuan0211 | e00922334c | |
buiphuan0211 | 067db84489 | |
sinhluu | 1f4edb64ab | |
buiphuan0211 | 77ec5ee6c1 | |
buiphuan0211 | ea80206619 | |
anbuiselly | 67a5afa933 | |
anbuiselly | c1a5444e5e | |
anbuiselly | aa3a201b18 | |
Sinh | 46539db236 | |
trunglam | b39948c635 | |
anbuiselly | 23eebdce8a | |
Minh Nguyen | fa80e0d707 | |
tuannt20 | 99894963e6 | |
anbuiselly | 0d69cc3357 | |
anbuiselly | 5b7d8329ae | |
anbuiselly | d7c2660ae2 | |
anbuiselly | 599d36120e | |
anbuiselly | 7c05aa7011 | |
Minh Nguyen | 24f0e88472 | |
Nguyen Minh | 4d766bbcea | |
tuannt20 | 9cec9d8c2f | |
tuanngo | 64079b6cad | |
tuannt20 | aff5a872e3 | |
sinhluu | 1d722f31a5 | |
Sinh | 25890d58bc | |
tuanngo | 8a30a03810 | |
tuannt20 | 83e9aef3c9 | |
Minh Nguyen | 1fe67e7356 | |
Nguyen Minh | 6d6fe6acd2 | |
Nguyen Minh | 8858688f0f | |
tuannt20 | af807784ec | |
Minh Nguyen | b7f3c061c8 | |
tuannt20 | 2f278526a9 | |
Minh Nguyen | 436a713725 | |
Sinh | fb87ac7911 | |
tuannt20 | e3e498ed23 | |
Minh Nguyen | 45dc489c4c | |
Nguyen Minh | dbf8ad502f | |
phuanbui | 8266f7f5ff | |
anbuiselly | c47768308c | |
Sinh | 8248069bb8 | |
Minh Nguyen | c704f10cda | |
Minh Nguyen | 5a2a7fbbe0 | |
tuannt20 | 0dd3dce224 | |
Nguyen Minh | 549aee36d0 | |
Sinh | d45da3e74c | |
Minh Nguyen | 828d4e34ba | |
tuannt20 | b8f10912c1 | |
Minh Nguyen | cf9f8f2c63 | |
tuannt20 | 26f8b64258 | |
Minh Nguyen | cfa306d0fc | |
tuannt20 | 6e21f72ac0 | |
tuannt20 | 7a213f4b4d | |
Nguyen Minh | 18f4444156 | |
Nguyen Minh | 598c886aa6 | |
sinhluu | 75bed82def | |
Sinh | 4d8a64364f | |
Sinh | c007a41a06 | |
sinhluu | df352f8bd5 | |
tuenguyen | fe20f69b9d | |
Tue | e324b88fe6 | |
Tue | caaf630b5e | |
Tue | 81c7be0304 | |
Tue | 77a7b3ae6b | |
Tue | 1c62c3c710 | |
Minh Nguyen | 5b77344442 | |
sinhluu | e3d80ab251 | |
trunglam | f35d61e456 | |
tuenguyen | fd7c0ad0fd | |
Tue | 9a2bd21534 | |
trunglt251292 | 6065636a59 | |
trunglt251292 | 6293e62cb4 | |
Nguyen Minh | b35a018d0a | |
Sinh | 4bc7195563 | |
Tue | 25cb392d93 | |
Tue | 546592f8ce | |
Tue | 9297f2d9bd | |
Sinh | 91d8ffe40f | |
Sinh | aa9471590d | |
Sinh | dac9add5fb | |
Sinh | ae36115495 | |
sinhluu | c2887223c7 | |
Sinh | 77276b0ae6 | |
Sinh | 22396d8f40 | |
sinhluu | 128fe77631 | |
Sinh | 831e4b8247 | |
Sinh | 45291bf323 | |
tuenguyen | dbfd259809 | |
Tue | b40eb42b2b | |
tuenguyen | 9f629f3d3e | |
Tue | cb7f37dea9 | |
tuenguyen | 4904482664 | |
Tue | 1c10210bb9 | |
trunglt251292 | c11419a3ad | |
Nam HQ | 0a82f40a25 | |
Nguyen Minh | 42874f4937 | |
Sinh | 1b89d5f368 | |
Sinh | 86845399e3 | |
Sinh | baf8a98e35 | |
Sinh Luu | d80090cfb5 | |
Sinh | 9ba66dae05 | |
trunglt251292 | 89f4e1a11d | |
Sinh Luu | 99f75cfbc7 | |
Sinh | aab1103fc8 | |
trunglt251292 | e6b620ca6c | |
Sinh | 57d6cb18a9 | |
Nguyen Minh | dcea3798f8 | |
Nguyen Minh | 68b9cab1e2 | |
Nguyen Minh | d9763edd75 | |
Nguyen Minh | 547b3b8dd9 | |
Nguyen Minh | 047037f123 | |
Nguyen Minh | f80f89e793 | |
Nguyen Minh | b718162cd4 | |
Nguyen Minh | e16a537ed2 | |
trunglt251292 | cc89feac0d | |
Nguyen Minh | 4ac7ec3b0c | |
trunglt251292 | 4319d2644c | |
Sinh | d06719b0e6 | |
Sinh | 73181bc583 | |
Nguyen Minh | 583f2abda5 | |
trunglt251292 | 952c09ccba | |
trunglt251292 | 4452be1474 | |
trunglt251292 | 34c61ccfcc | |
trunglt251292 | 1d58e55af7 | |
Sinh | 9e4e6868a4 | |
anbuiselly | 99eacb44a8 | |
Sinh | b5ba7c7bf1 | |
Minh Nguyen | c043a03861 | |
Sinh | 48e585dc16 | |
trunglt251292 | 92040d0b9f | |
trunglt251292 | fb8a8bd471 | |
QuanTT0110 | fffcc281cc | |
QuanTT0110 | f731be7b62 | |
Tue | 42a6d04413 | |
Tue | ee32f2d8bb | |
trunglt251292 | 9f1f2faf9e | |
Tue | 0e35b6aec3 | |
Tue | e1a18df726 | |
Tue | b32ceefab1 | |
trunglt251292 | cc48a083f2 |
|
@ -0,0 +1,36 @@
|
||||||
|
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
|
||||||
|
}
|
|
@ -0,0 +1,55 @@
|
||||||
|
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 == ""
|
||||||
|
}
|
|
@ -0,0 +1,39 @@
|
||||||
|
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
|
||||||
|
}
|
|
@ -0,0 +1,58 @@
|
||||||
|
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
|
||||||
|
}
|
|
@ -3,9 +3,9 @@ package client
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
|
||||||
"github.com/Selly-Modules/natsio"
|
"git.selly.red/Selly-Modules/natsio"
|
||||||
"github.com/Selly-Modules/natsio/model"
|
"git.selly.red/Selly-Modules/natsio/model"
|
||||||
"github.com/Selly-Modules/natsio/subject"
|
"git.selly.red/Selly-Modules/natsio/subject"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Communication ...
|
// Communication ...
|
||||||
|
|
|
@ -4,9 +4,9 @@ import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
|
|
||||||
"github.com/Selly-Modules/natsio"
|
"git.selly.red/Selly-Modules/natsio"
|
||||||
"github.com/Selly-Modules/natsio/model"
|
"git.selly.red/Selly-Modules/natsio/model"
|
||||||
"github.com/Selly-Modules/natsio/subject"
|
"git.selly.red/Selly-Modules/natsio/subject"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Location ...
|
// Location ...
|
||||||
|
@ -19,7 +19,7 @@ func GetLocation() Location {
|
||||||
|
|
||||||
// GetLocationByCode ...
|
// GetLocationByCode ...
|
||||||
func (l Location) GetLocationByCode(payload model.LocationRequestPayload) (*model.ResponseLocationAddress, error) {
|
func (l Location) GetLocationByCode(payload model.LocationRequestPayload) (*model.ResponseLocationAddress, error) {
|
||||||
msg, err := natsio.GetServer().Request(subject.Location.GetLocationByCode, toBytes(payload))
|
msg, err := natsio.GetServer().Request(subject.Location.GetLocationByCodeFromLocationService, toBytes(payload))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -28,7 +28,7 @@ func (l Location) GetLocationByCode(payload model.LocationRequestPayload) (*mode
|
||||||
Data *model.ResponseLocationAddress `json:"data"`
|
Data *model.ResponseLocationAddress `json:"data"`
|
||||||
Error string `json:"error"`
|
Error string `json:"error"`
|
||||||
}
|
}
|
||||||
if err := json.Unmarshal(msg.Data, &r); err != nil {
|
if err = json.Unmarshal(msg.Data, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,19 +38,40 @@ func (l Location) GetLocationByCode(payload model.LocationRequestPayload) (*mode
|
||||||
return r.Data, nil
|
return r.Data, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetProvincesByCodes ... ...
|
// GetLocationByWardCode ...
|
||||||
func (l Location) GetProvincesByCodes(p model.ProvinceRequestPayload) (*model.LocationProvinceResponse, error) {
|
func (l Location) GetLocationByWardCode(payload model.RequestCondition) (*model.ResponseLocationAddress, error) {
|
||||||
msg, err := natsio.GetServer().Request(subject.Location.GetProvincesByCodes, toBytes(p))
|
msg, err := natsio.GetServer().Request(subject.Location.GetLocationByWardCode, toBytes(payload))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
var r struct {
|
var r struct {
|
||||||
Data *model.LocationProvinceResponse `json:"data"'`
|
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"`
|
Error string `json:"error"`
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(msg.Data, &r); err != nil {
|
if err = json.Unmarshal(msg.Data, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -62,7 +83,7 @@ func (l Location) GetProvincesByCodes(p model.ProvinceRequestPayload) (*model.Lo
|
||||||
|
|
||||||
// GetDistrictsByCodes ...
|
// GetDistrictsByCodes ...
|
||||||
func (l Location) GetDistrictsByCodes(p model.DistrictRequestPayload) (*model.LocationDistrictResponse, error) {
|
func (l Location) GetDistrictsByCodes(p model.DistrictRequestPayload) (*model.LocationDistrictResponse, error) {
|
||||||
msg, err := natsio.GetServer().Request(subject.Location.GetDistrictsByCodes, toBytes(p))
|
msg, err := natsio.GetServer().Request(subject.Location.GetDistrictsByCodesFromLocationService, toBytes(p))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -71,7 +92,7 @@ func (l Location) GetDistrictsByCodes(p model.DistrictRequestPayload) (*model.Lo
|
||||||
Error string `json:"error"`
|
Error string `json:"error"`
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(msg.Data, &r); err != nil {
|
if err = json.Unmarshal(msg.Data, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -84,7 +105,7 @@ func (l Location) GetDistrictsByCodes(p model.DistrictRequestPayload) (*model.Lo
|
||||||
|
|
||||||
// GetWardsByCodes ...
|
// GetWardsByCodes ...
|
||||||
func (l Location) GetWardsByCodes(p model.WardRequestPayload) (*model.LocationWardResponse, error) {
|
func (l Location) GetWardsByCodes(p model.WardRequestPayload) (*model.LocationWardResponse, error) {
|
||||||
msg, err := natsio.GetServer().Request(subject.Location.GetWardsByCodes, toBytes(p))
|
msg, err := natsio.GetServer().Request(subject.Location.GetWardsByCodesFromLocationService, toBytes(p))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -94,7 +115,7 @@ func (l Location) GetWardsByCodes(p model.WardRequestPayload) (*model.LocationWa
|
||||||
Error string `json:"error"`
|
Error string `json:"error"`
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := json.Unmarshal(msg.Data, &r); err != nil {
|
if err = json.Unmarshal(msg.Data, &r); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -104,3 +125,211 @@ func (l Location) GetWardsByCodes(p model.WardRequestPayload) (*model.LocationWa
|
||||||
|
|
||||||
return r.Data, nil
|
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
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,36 @@
|
||||||
|
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
|
||||||
|
}
|
|
@ -4,9 +4,9 @@ import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
|
|
||||||
"github.com/Selly-Modules/natsio"
|
"git.selly.red/Selly-Modules/natsio"
|
||||||
"github.com/Selly-Modules/natsio/model"
|
"git.selly.red/Selly-Modules/natsio/model"
|
||||||
"github.com/Selly-Modules/natsio/subject"
|
"git.selly.red/Selly-Modules/natsio/subject"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Order ...
|
// Order ...
|
||||||
|
@ -98,3 +98,43 @@ func (o Order) ORNotUpdateStatus(p model.OrderORsNotUpdateStatus) error {
|
||||||
}
|
}
|
||||||
return nil
|
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
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,86 @@
|
||||||
|
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
|
||||||
|
}
|
|
@ -0,0 +1,35 @@
|
||||||
|
package client
|
||||||
|
|
||||||
|
import (
|
||||||
|
"encoding/json"
|
||||||
|
"errors"
|
||||||
|
|
||||||
|
"git.selly.red/Selly-Modules/natsio"
|
||||||
|
"git.selly.red/Selly-Modules/natsio/model"
|
||||||
|
"git.selly.red/Selly-Modules/natsio/subject"
|
||||||
|
)
|
||||||
|
|
||||||
|
// 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
|
||||||
|
}
|
|
@ -0,0 +1,41 @@
|
||||||
|
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
|
||||||
|
}
|
|
@ -4,9 +4,9 @@ import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
|
|
||||||
"github.com/Selly-Modules/natsio"
|
"git.selly.red/Selly-Modules/natsio"
|
||||||
"github.com/Selly-Modules/natsio/model"
|
"git.selly.red/Selly-Modules/natsio/model"
|
||||||
"github.com/Selly-Modules/natsio/subject"
|
"git.selly.red/Selly-Modules/natsio/subject"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Seller ...
|
// Seller ...
|
||||||
|
@ -63,3 +63,25 @@ func (s Seller) GetListSellerInfoByIDs(p model.GetListSellerByIDsRequest) (*mode
|
||||||
}
|
}
|
||||||
return r.Data, nil
|
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
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,65 @@
|
||||||
|
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
|
||||||
|
}
|
|
@ -0,0 +1,27 @@
|
||||||
|
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
|
||||||
|
}
|
|
@ -0,0 +1,41 @@
|
||||||
|
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
|
||||||
|
|
||||||
|
}
|
|
@ -4,9 +4,9 @@ import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
|
|
||||||
"github.com/Selly-Modules/natsio"
|
"git.selly.red/Selly-Modules/natsio"
|
||||||
"github.com/Selly-Modules/natsio/model"
|
"git.selly.red/Selly-Modules/natsio/model"
|
||||||
"github.com/Selly-Modules/natsio/subject"
|
"git.selly.red/Selly-Modules/natsio/subject"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Supplier ...
|
// Supplier ...
|
||||||
|
@ -38,6 +38,28 @@ func (s Supplier) GetListSupplierInfo(p model.GetSupplierRequest) ([]*model.Resp
|
||||||
return r.Data, nil
|
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) {
|
func (s Supplier) GetSupplierContractBySupplierID(p model.GetSupplierContractRequest) (*model.ResponseSupplierContract, error) {
|
||||||
msg, err := natsio.GetServer().Request(subject.Supplier.GetSupplierContractBySupplierID, toBytes(p))
|
msg, err := natsio.GetServer().Request(subject.Supplier.GetSupplierContractBySupplierID, toBytes(p))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -79,3 +101,102 @@ func (s Supplier) FindAll(supplierID model.SupplierRequestPayload) (*model.Suppl
|
||||||
|
|
||||||
return r.Data, nil
|
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
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,58 @@
|
||||||
|
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
|
||||||
|
}
|
|
@ -0,0 +1,160 @@
|
||||||
|
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
|
||||||
|
}
|
|
@ -3,10 +3,11 @@ package client
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
|
"fmt"
|
||||||
|
|
||||||
"github.com/Selly-Modules/natsio"
|
"git.selly.red/Selly-Modules/natsio"
|
||||||
"github.com/Selly-Modules/natsio/model"
|
"git.selly.red/Selly-Modules/natsio/model"
|
||||||
"github.com/Selly-Modules/natsio/subject"
|
"git.selly.red/Selly-Modules/natsio/subject"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Warehouse ...
|
// Warehouse ...
|
||||||
|
@ -17,6 +18,24 @@ func GetWarehouse() Warehouse {
|
||||||
return 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 ...
|
// AfterCreateWarehouse ...
|
||||||
func (w Warehouse) AfterCreateWarehouse(p model.WarehouseNatsResponse) error {
|
func (w Warehouse) AfterCreateWarehouse(p model.WarehouseNatsResponse) error {
|
||||||
msg, err := natsio.GetServer().Request(subject.Warehouse.AfterCreateWarehouse, toBytes(p))
|
msg, err := natsio.GetServer().Request(subject.Warehouse.AfterCreateWarehouse, toBytes(p))
|
||||||
|
@ -126,3 +145,99 @@ func (w Warehouse) GetConfigByWarehouseID(warehouseID string) (*model.WarehouseC
|
||||||
}
|
}
|
||||||
return r.Data, nil
|
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
|
||||||
|
}
|
||||||
|
|
|
@ -3,9 +3,10 @@ package client
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
"github.com/Selly-Modules/natsio"
|
|
||||||
"github.com/Selly-Modules/natsio/model"
|
"git.selly.red/Selly-Modules/natsio"
|
||||||
"github.com/Selly-Modules/natsio/subject"
|
"git.selly.red/Selly-Modules/natsio/model"
|
||||||
|
"git.selly.red/Selly-Modules/natsio/subject"
|
||||||
)
|
)
|
||||||
|
|
||||||
// DistinctWithField ...
|
// DistinctWithField ...
|
||||||
|
@ -83,3 +84,39 @@ func (w Warehouse) FindByCondition(p model.FindWithCondition) ([]*model.Warehous
|
||||||
}
|
}
|
||||||
return r.Data, nil
|
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
|
||||||
|
}
|
||||||
|
|
2
go.mod
2
go.mod
|
@ -1,4 +1,4 @@
|
||||||
module github.com/Selly-Modules/natsio
|
module git.selly.red/Selly-Modules/natsio
|
||||||
|
|
||||||
go 1.16
|
go 1.16
|
||||||
|
|
||||||
|
|
13
go.sum
13
go.sum
|
@ -11,6 +11,7 @@ github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaS
|
||||||
github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw=
|
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/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.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/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.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.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
|
||||||
|
@ -24,10 +25,9 @@ github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47e
|
||||||
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
|
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/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/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 h1:dZ6IIu8Z14VlC0VpfKofAhCy74wu/Qb5gcn52yWoz/0=
|
||||||
github.com/minio/highwayhash v1.0.1/go.mod h1:BQskDq+xkJ12lmlUUi7U0M5Swg3EWR+dLTk+kldvVxY=
|
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/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 h1:w3GMTO969dFg+UOKTmmyuu7IGdusK+7Ytlt//OYH/uU=
|
||||||
github.com/nats-io/jwt v1.2.2/go.mod h1:/xX356yQA6LuXI9xWW7mZNpxgF2mBmGecH+Fj34sP5Q=
|
github.com/nats-io/jwt v1.2.2/go.mod h1:/xX356yQA6LuXI9xWW7mZNpxgF2mBmGecH+Fj34sP5Q=
|
||||||
|
@ -43,6 +43,7 @@ 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/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 h1:5iA8DT8V7q8WK2EScv2padNa/rTESc1KdnPw4TC2paw=
|
||||||
github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c=
|
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/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 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||||
|
@ -52,10 +53,15 @@ github.com/stretchr/testify v1.6.1 h1:hDPOHmpOpP40lSULcqw7IrRb/u7w6RpDC9399XyoNd
|
||||||
github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
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 h1:O549iLZqPpTUQ10ykd26sZhzD+rmR5pWhuElrhbC20M=
|
||||||
github.com/thoas/go-funk v0.9.1/go.mod h1:+IWnUfUmFO1+WVYQWQtIJHeRRdaIyyYglZN7xzUPe4Q=
|
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/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/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/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/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=
|
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 h1:NujsPveKwHaWuKUer/ceo9DzEe7HIj1SlJ6uvXZG0S4=
|
||||||
go.mongodb.org/mongo-driver v1.10.1/go.mod h1:z4XpeoU6w+9Vht+jAFyLgVrD+jGSQQe0+CBWFHNiHt8=
|
go.mongodb.org/mongo-driver v1.10.1/go.mod h1:z4XpeoU6w+9Vht+jAFyLgVrD+jGSQQe0+CBWFHNiHt8=
|
||||||
|
@ -68,6 +74,7 @@ golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0
|
||||||
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
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-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
|
||||||
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
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/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-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-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
|
@ -80,10 +87,12 @@ golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9sn
|
||||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
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.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||||
golang.org/x/text v0.3.6/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/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 h1:NusfzzA6yGQ+ua51ck7E3omNUX/JuqbFSaRGqU8CcLI=
|
||||||
golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
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/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=
|
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-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
|
||||||
google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
|
google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
package natsio
|
||||||
|
|
||||||
|
// StreamNameSelly ...
|
||||||
|
const StreamNameSelly = "selly"
|
|
@ -0,0 +1,18 @@
|
||||||
|
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",
|
||||||
|
}
|
|
@ -0,0 +1,110 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -0,0 +1,10 @@
|
||||||
|
package jssubject
|
||||||
|
|
||||||
|
var root = "js"
|
||||||
|
|
||||||
|
// prefixes ...
|
||||||
|
var prefixes = struct {
|
||||||
|
Selly string
|
||||||
|
}{
|
||||||
|
Selly: "selly",
|
||||||
|
}
|
|
@ -0,0 +1,27 @@
|
||||||
|
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"),
|
||||||
|
}
|
|
@ -22,6 +22,17 @@ func (e JSONEncoder) Subscribe(subject string, cb nats.Handler) (*nats.Subscript
|
||||||
return sub, err
|
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 ...
|
// Publish ...
|
||||||
func (e JSONEncoder) Publish(reply string, data interface{}) error {
|
func (e JSONEncoder) Publish(reply string, data interface{}) error {
|
||||||
return e.encConn.Publish(reply, data)
|
return e.encConn.Publish(reply, data)
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -0,0 +1,38 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -0,0 +1,6 @@
|
||||||
|
package model
|
||||||
|
|
||||||
|
type BankBranchRequest struct {
|
||||||
|
BankID string `json:"bankId"`
|
||||||
|
BranchID string `json:"branchId"`
|
||||||
|
}
|
|
@ -0,0 +1,21 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
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
|
||||||
|
}
|
|
@ -0,0 +1,88 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -20,3 +20,37 @@ type ActionBy struct {
|
||||||
ID string `json:"id"`
|
ID string `json:"id"`
|
||||||
Name string `json:"name"`
|
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
|
||||||
|
}
|
||||||
|
|
|
@ -5,6 +5,9 @@ type CommunicationRequestHttp struct {
|
||||||
ResponseImmediately bool `json:"responseImmediately"`
|
ResponseImmediately bool `json:"responseImmediately"`
|
||||||
Authentication string `json:"authentication"`
|
Authentication string `json:"authentication"`
|
||||||
Payload HttpRequest `json:"payload"`
|
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 ...
|
// HttpRequest ...
|
||||||
|
|
|
@ -0,0 +1,56 @@
|
||||||
|
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
|
|
@ -1,23 +1,66 @@
|
||||||
package model
|
package model
|
||||||
|
|
||||||
// LocationRequestPayload ...
|
// LocationRequestPayload ...
|
||||||
type LocationRequestPayload struct {
|
type (
|
||||||
|
// LocationRequestPayload ...
|
||||||
|
LocationRequestPayload struct {
|
||||||
Province int `json:"province"`
|
Province int `json:"province"`
|
||||||
District int `json:"district"`
|
District int `json:"district"`
|
||||||
Ward int `json:"ward"`
|
Ward int `json:"ward"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// ProvinceRequestPayload ...
|
// ProvinceRequestPayload ...
|
||||||
type ProvinceRequestPayload struct {
|
ProvinceRequestPayload struct {
|
||||||
Codes []int `json:"codes"`
|
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 ...
|
||||||
type DistrictRequestPayload struct {
|
DistrictRequestPayload struct {
|
||||||
Codes []int `json:"codes"`
|
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 ...
|
||||||
type WardRequestPayload struct {
|
WardRequestPayload struct {
|
||||||
Codes []int `json:"codes"`
|
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"`
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
|
@ -1,43 +1,95 @@
|
||||||
package model
|
package model
|
||||||
|
|
||||||
type ResponseLocationAddress struct {
|
type (
|
||||||
|
// ResponseLocationAddress ...
|
||||||
|
ResponseLocationAddress struct {
|
||||||
Province LocationProvince `json:"province"`
|
Province LocationProvince `json:"province"`
|
||||||
District LocationDistrict `json:"district"`
|
District LocationDistrict `json:"district"`
|
||||||
Ward LocationWard `json:"ward"`
|
Ward LocationWard `json:"ward"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// LocationProvince ...
|
// LocationProvince ...
|
||||||
type LocationProvince struct {
|
LocationProvince struct {
|
||||||
ID string `json:"id"`
|
ID string `json:"id"`
|
||||||
Name string `json:"name"`
|
Name string `json:"name"`
|
||||||
Code int `json:"code"`
|
Code int `json:"code"`
|
||||||
|
Slug string `json:"slug"`
|
||||||
|
RegionCode string `json:"regionCode"`
|
||||||
|
MainRegionCode string `json:"mainRegionCode"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// LocationDistrict ...
|
// LocationDistrict ...
|
||||||
type LocationDistrict struct {
|
LocationDistrict struct {
|
||||||
ID string `json:"id"`
|
ID string `json:"id"`
|
||||||
Name string `json:"name"`
|
Name string `json:"name"`
|
||||||
Code int `json:"code"`
|
Code int `json:"code"`
|
||||||
|
Slug string `json:"slug"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// LocationWard ...
|
// LocationWard ...
|
||||||
type LocationWard struct {
|
LocationWard struct {
|
||||||
ID string `json:"id"`
|
ID string `json:"id"`
|
||||||
Name string `json:"name"`
|
Name string `json:"name"`
|
||||||
Code int `json:"code"`
|
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 ...
|
||||||
type LocationProvinceResponse struct {
|
LocationProvinceResponse struct {
|
||||||
Provinces []LocationProvince `json:"provinces"`
|
Provinces []LocationProvince `json:"provinces"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// LocationDistrictResponse ...
|
// LocationDistrictResponse ...
|
||||||
type LocationDistrictResponse struct {
|
LocationDistrictResponse struct {
|
||||||
Districts []LocationDistrict `json:"districts"`
|
Districts []LocationDistrict `json:"districts"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// LocationWardResponse ...
|
// LocationWardResponse ...
|
||||||
type LocationWardResponse struct {
|
LocationWardResponse struct {
|
||||||
Wards []LocationWard `json:"wards"`
|
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"`
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
package model
|
||||||
|
|
||||||
|
// GetProductNoticesByInventoryRequest ....
|
||||||
|
type GetProductNoticesByInventoryRequest struct {
|
||||||
|
InventoryIds []string `json:"inventoryIds"`
|
||||||
|
}
|
|
@ -0,0 +1,38 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -2,6 +2,7 @@ package model
|
||||||
|
|
||||||
// OrderUpdateORStatus ...
|
// OrderUpdateORStatus ...
|
||||||
type OrderUpdateORStatus struct {
|
type OrderUpdateORStatus struct {
|
||||||
|
ID string `json:"id"`
|
||||||
OrderCode string `json:"orderCode"`
|
OrderCode string `json:"orderCode"`
|
||||||
ORCode string `json:"orCode"`
|
ORCode string `json:"orCode"`
|
||||||
Status string `json:"status"`
|
Status string `json:"status"`
|
||||||
|
@ -38,3 +39,17 @@ type OrderUpdateLogisticInfoFailed struct {
|
||||||
type OrderORsNotUpdateStatus struct {
|
type OrderORsNotUpdateStatus struct {
|
||||||
ORCodes []string `json:"orCodes"`
|
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"`
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,42 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -0,0 +1,14 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -0,0 +1,8 @@
|
||||||
|
package model
|
||||||
|
|
||||||
|
type QueueScheduleTaskRequest struct {
|
||||||
|
ID string `json:"id"`
|
||||||
|
NatsSubject string `json:"natsSubject"`
|
||||||
|
Data string `json:"data"`
|
||||||
|
StartAt int64 `json:"startAt"` // unix
|
||||||
|
}
|
|
@ -0,0 +1,6 @@
|
||||||
|
package model
|
||||||
|
|
||||||
|
// GetListSegmentRequest ...
|
||||||
|
type GetListSegmentRequest struct {
|
||||||
|
SegmentIds []string `json:"segmentIds"`
|
||||||
|
}
|
|
@ -0,0 +1,12 @@
|
||||||
|
package model
|
||||||
|
|
||||||
|
// ResponseSegmentInfo ...
|
||||||
|
type ResponseSegmentInfo struct {
|
||||||
|
ID string `json:"_id"`
|
||||||
|
Name string `json:"name"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// ResponseListSegmentInfo ...
|
||||||
|
type ResponseListSegmentInfo struct {
|
||||||
|
Segments []ResponseSegmentInfo `json:"segments"`
|
||||||
|
}
|
|
@ -11,3 +11,8 @@ type GetSellerByIDRequest struct {
|
||||||
type GetListSellerByIDsRequest struct {
|
type GetListSellerByIDsRequest struct {
|
||||||
SellerIDs []primitive.ObjectID `json:"sellerIds"`
|
SellerIDs []primitive.ObjectID `json:"sellerIds"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetListSellerSupportChatByIDsRequest ...
|
||||||
|
type GetListSellerSupportChatByIDsRequest struct {
|
||||||
|
SellerIDs []primitive.ObjectID `json:"sellerIds"`
|
||||||
|
}
|
||||||
|
|
|
@ -1,13 +1,92 @@
|
||||||
package model
|
package model
|
||||||
|
|
||||||
|
import "time"
|
||||||
|
|
||||||
// ResponseSellerInfo ...
|
// ResponseSellerInfo ...
|
||||||
type ResponseSellerInfo struct {
|
type ResponseSellerInfo struct {
|
||||||
ID string `json:"_id"`
|
ID string `json:"_id"`
|
||||||
Name string `json:"name"`
|
Name string `json:"name"`
|
||||||
Code string `json:"code"`
|
Code string `json:"code"`
|
||||||
|
IsAccountPro bool `json:"isAccountPro"`
|
||||||
|
CashRemaining float64 `json:"cashRemaining"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// ResponseListSellerInfo ...
|
// ResponseListSellerInfo ...
|
||||||
type ResponseListSellerInfo struct {
|
type ResponseListSellerInfo struct {
|
||||||
Sellers []ResponseSellerInfo `json:"sellers"`
|
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"`
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -0,0 +1,61 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -0,0 +1,19 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -0,0 +1,6 @@
|
||||||
|
package model
|
||||||
|
|
||||||
|
// GetListStaffRequest ...
|
||||||
|
type GetListStaffRequest struct {
|
||||||
|
StaffIds []string `json:"staffIds"`
|
||||||
|
}
|
|
@ -0,0 +1,12 @@
|
||||||
|
package model
|
||||||
|
|
||||||
|
// ResponseListStaffInfo ...
|
||||||
|
type ResponseListStaffInfo struct {
|
||||||
|
Staffs []ResponseStaffInfo `json:"staffs"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// ResponseStaffInfo ...
|
||||||
|
type ResponseStaffInfo struct {
|
||||||
|
ID string `json:"_id"`
|
||||||
|
Name string `json:"name"`
|
||||||
|
}
|
|
@ -9,6 +9,11 @@ type GetSupplierRequest struct {
|
||||||
ListID []primitive.ObjectID `json:"listID"`
|
ListID []primitive.ObjectID `json:"listID"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetDetailSupplierRequest ...
|
||||||
|
type GetDetailSupplierRequest struct {
|
||||||
|
Supplier string `json:"supplier"`
|
||||||
|
}
|
||||||
|
|
||||||
type GetSupplierContractRequest struct {
|
type GetSupplierContractRequest struct {
|
||||||
SupplierID primitive.ObjectID `json:"supplierID"`
|
SupplierID primitive.ObjectID `json:"supplierID"`
|
||||||
}
|
}
|
||||||
|
@ -22,3 +27,33 @@ type SupplierRequestPayload struct {
|
||||||
PIC string
|
PIC string
|
||||||
ContractStatus 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
|
||||||
|
}
|
||||||
|
|
|
@ -4,6 +4,8 @@ package model
|
||||||
type ResponseSupplierInfo struct {
|
type ResponseSupplierInfo struct {
|
||||||
ID string `json:"id"`
|
ID string `json:"id"`
|
||||||
Name string `json:"name"`
|
Name string `json:"name"`
|
||||||
|
BusinessType string `json:"businessType"`
|
||||||
|
IsSellyMall bool `json:"isSellyMall"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// ResponseSupplierContract ...
|
// ResponseSupplierContract ...
|
||||||
|
@ -19,6 +21,7 @@ type SupplierBrief struct {
|
||||||
ID string `json:"_id"`
|
ID string `json:"_id"`
|
||||||
Name string `json:"name"`
|
Name string `json:"name"`
|
||||||
Status string `json:"status"`
|
Status string `json:"status"`
|
||||||
|
BusinessType string `json:"businessType"`
|
||||||
CreatedAt string `json:"createdAt"`
|
CreatedAt string `json:"createdAt"`
|
||||||
UpdatedAt string `json:"updatedAt"`
|
UpdatedAt string `json:"updatedAt"`
|
||||||
}
|
}
|
||||||
|
@ -27,3 +30,7 @@ type SupplierAll struct {
|
||||||
Suppliers []SupplierBrief `json:"suppliers"`
|
Suppliers []SupplierBrief `json:"suppliers"`
|
||||||
Total int64 `json:"total"`
|
Total int64 `json:"total"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type SupplierCountRes struct {
|
||||||
|
Total int64 `json:"total"`
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -0,0 +1,5 @@
|
||||||
|
package model
|
||||||
|
|
||||||
|
type CreateRoleResponse struct {
|
||||||
|
ID string `json:"_id"`
|
||||||
|
}
|
|
@ -0,0 +1,57 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -0,0 +1,26 @@
|
||||||
|
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"`
|
||||||
|
}
|
|
@ -13,10 +13,12 @@ type OutboundRequestPayload struct {
|
||||||
Customer CustomerInfo `json:"customer"`
|
Customer CustomerInfo `json:"customer"`
|
||||||
Items []OutboundRequestItem `json:"items"`
|
Items []OutboundRequestItem `json:"items"`
|
||||||
Insurance *InsuranceOpts `json:"insurance"`
|
Insurance *InsuranceOpts `json:"insurance"`
|
||||||
|
PaymentMethod string `json:"paymentMethod"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// InsuranceOpts ...
|
// InsuranceOpts ...
|
||||||
type InsuranceOpts struct {
|
type InsuranceOpts struct {
|
||||||
|
InsuranceType string `json:"insuranceType"`
|
||||||
VehicleTypeID string `json:"vehicleTypeId"`
|
VehicleTypeID string `json:"vehicleTypeId"`
|
||||||
VehicleTypeName string `json:"vehicleTypeName"`
|
VehicleTypeName string `json:"vehicleTypeName"`
|
||||||
InsuranceTypeID string `json:"insuranceTypeId"`
|
InsuranceTypeID string `json:"insuranceTypeId"`
|
||||||
|
@ -25,6 +27,12 @@ type InsuranceOpts struct {
|
||||||
Chassis string `json:"chassis"`
|
Chassis string `json:"chassis"`
|
||||||
Engine string `json:"engine"`
|
Engine string `json:"engine"`
|
||||||
BeginDate string `json:"beginDate"`
|
BeginDate string `json:"beginDate"`
|
||||||
|
|
||||||
|
// For car insurance
|
||||||
|
NumberOfSeatsCarOccupantAccidentInsurance int `json:"numberOfSeatsCarOccupantAccidentInsurance"`
|
||||||
|
NumberOfSeats int `json:"numberOfSeats"`
|
||||||
|
NumberOfSeatsOrTonnageId string `json:"numberOfSeatsOrTonnageId"`
|
||||||
|
NumberOfSeatsOrTonnageName string `json:"numberOfSeatsOrTonnageName"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// OutboundRequestItem ...
|
// OutboundRequestItem ...
|
||||||
|
@ -32,6 +40,9 @@ type OutboundRequestItem struct {
|
||||||
SupplierSKU string `json:"supplierSKU"`
|
SupplierSKU string `json:"supplierSKU"`
|
||||||
Quantity int64 `json:"quantity"`
|
Quantity int64 `json:"quantity"`
|
||||||
UnitCode string `json:"unitCode"`
|
UnitCode string `json:"unitCode"`
|
||||||
|
Price float64 `json:"price"`
|
||||||
|
Name string `json:"name"`
|
||||||
|
PartnerProductCode string `json:"partnerProductCode"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// CustomerInfo ...
|
// CustomerInfo ...
|
||||||
|
@ -53,14 +64,18 @@ type AddressDetail struct {
|
||||||
|
|
||||||
// UpdateOutboundRequestLogisticInfoPayload ...
|
// UpdateOutboundRequestLogisticInfoPayload ...
|
||||||
type UpdateOutboundRequestLogisticInfoPayload struct {
|
type UpdateOutboundRequestLogisticInfoPayload struct {
|
||||||
ShippingLabel string `json:"shippingLabel"`
|
ShippingLabel string `json:"shippingLabel,omitempty"`
|
||||||
TrackingCode string `json:"trackingCode"`
|
TrackingCode string `json:"trackingCode,omitempty"`
|
||||||
ORCode string `json:"orCode"`
|
ORCode string `json:"orCode,omitempty"`
|
||||||
|
TPLCode string `json:"tplCode,omitempty"`
|
||||||
|
OrderID string `json:"orderId"`
|
||||||
|
DeliveryStatus string `json:"deliveryStatus,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// CancelOutboundRequest ...
|
// CancelOutboundRequest ...
|
||||||
type CancelOutboundRequest struct {
|
type CancelOutboundRequest struct {
|
||||||
ORCode string `json:"orCode"`
|
ORCode string `json:"orCode"`
|
||||||
|
OrderID string `json:"orderId"`
|
||||||
Note string `json:"note"`
|
Note string `json:"note"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -68,4 +83,57 @@ type CancelOutboundRequest struct {
|
||||||
type SyncORStatusRequest struct {
|
type SyncORStatusRequest struct {
|
||||||
ORCode string `json:"orCode"`
|
ORCode string `json:"orCode"`
|
||||||
OrderCode string `json:"orderCode"`
|
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"`
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,6 +25,27 @@ type WarehouseConfiguration struct {
|
||||||
Partner WarehousePartner `json:"partner"`
|
Partner WarehousePartner `json:"partner"`
|
||||||
Delivery WarehouseDelivery `json:"delivery"`
|
Delivery WarehouseDelivery `json:"delivery"`
|
||||||
Other WarehouseOther `json:"other"`
|
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 ...
|
// WarehouseOther ...
|
||||||
|
@ -44,12 +65,24 @@ type WarehouseOrder struct {
|
||||||
PaymentMethod WarehousePaymentMethod `json:"paymentMethod"`
|
PaymentMethod WarehousePaymentMethod `json:"paymentMethod"`
|
||||||
IsLimitNumberOfPurchases bool `json:"isLimitNumberOfPurchases"`
|
IsLimitNumberOfPurchases bool `json:"isLimitNumberOfPurchases"`
|
||||||
LimitNumberOfPurchases int64 `json:"limitNumberOfPurchases"`
|
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"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// WarehousePaymentMethod ...
|
// WarehousePaymentMethod ...
|
||||||
type WarehousePaymentMethod struct {
|
type WarehousePaymentMethod struct {
|
||||||
Cod bool `json:"cod"`
|
Cod bool `json:"cod"`
|
||||||
BankTransfer bool `json:"bankTransfer"`
|
BankTransfer bool `json:"bankTransfer"`
|
||||||
|
Fundiin bool `json:"fundiin"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// WarehouseDelivery ...
|
// WarehouseDelivery ...
|
||||||
|
@ -74,6 +107,7 @@ type SyncORStatusResponse struct {
|
||||||
OrderCode string `json:"orderCode"`
|
OrderCode string `json:"orderCode"`
|
||||||
Status string `json:"status"`
|
Status string `json:"status"`
|
||||||
DeliveryStatus string `json:"deliveryStatus"`
|
DeliveryStatus string `json:"deliveryStatus"`
|
||||||
|
Data OrderORData `json:"data"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// ResponseWarehouseContact ...
|
// ResponseWarehouseContact ...
|
||||||
|
@ -109,6 +143,7 @@ type ResponseLatLng struct {
|
||||||
type WarehouseNatsResponse struct {
|
type WarehouseNatsResponse struct {
|
||||||
ID string `json:"_id"`
|
ID string `json:"_id"`
|
||||||
Staff string `json:"staff"`
|
Staff string `json:"staff"`
|
||||||
|
BusinessType string `json:"businessType"`
|
||||||
Name string `json:"name"`
|
Name string `json:"name"`
|
||||||
SearchString string `json:"searchString"`
|
SearchString string `json:"searchString"`
|
||||||
Slug string `json:"slug"`
|
Slug string `json:"slug"`
|
||||||
|
@ -119,4 +154,41 @@ type WarehouseNatsResponse struct {
|
||||||
Configurations WarehouseConfiguration `json:"configurations"`
|
Configurations WarehouseConfiguration `json:"configurations"`
|
||||||
CreatedAt time.Time `json:"createdAt"`
|
CreatedAt time.Time `json:"createdAt"`
|
||||||
UpdatedAt time.Time `json:"updatedAt"`
|
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"`
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,6 +40,16 @@ func (sv Server) Subscribe(subject string, cb nats.MsgHandler) (*nats.Subscripti
|
||||||
return sub, nil
|
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 ...
|
// NewJSONEncodedConn ...
|
||||||
func (sv Server) NewJSONEncodedConn() (*JSONEncoder, error) {
|
func (sv Server) NewJSONEncodedConn() (*JSONEncoder, error) {
|
||||||
enc, err := nats.NewEncodedConn(sv.instance, nats.JSON_ENCODER)
|
enc, err := nats.NewEncodedConn(sv.instance, nats.JSON_ENCODER)
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
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"),
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
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"),
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
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"),
|
||||||
|
}
|
|
@ -3,15 +3,39 @@ package subject
|
||||||
var prefixes = struct {
|
var prefixes = struct {
|
||||||
Communication string
|
Communication string
|
||||||
Order string
|
Order string
|
||||||
|
News string
|
||||||
Warehouse string
|
Warehouse string
|
||||||
Location string
|
Location string
|
||||||
|
Bank string
|
||||||
Supplier string
|
Supplier string
|
||||||
Seller 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",
|
Communication: "communication",
|
||||||
Order: "order",
|
Order: "order",
|
||||||
|
News: "news",
|
||||||
Warehouse: "warehouse",
|
Warehouse: "warehouse",
|
||||||
Location: "location",
|
Location: "location",
|
||||||
Supplier: "supplier",
|
Supplier: "supplier",
|
||||||
|
Bank: "bank",
|
||||||
Seller: "seller",
|
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",
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,12 +8,42 @@ func getLocationValue(val string) string {
|
||||||
|
|
||||||
var Location = struct {
|
var Location = struct {
|
||||||
GetLocationByCode string
|
GetLocationByCode string
|
||||||
|
GetLocationByCodeFromLocationService string
|
||||||
|
GetLocationByWardCode string
|
||||||
GetProvincesByCodes string
|
GetProvincesByCodes string
|
||||||
|
GetProvincesByCodesFromLocationService string
|
||||||
GetDistrictsByCodes string
|
GetDistrictsByCodes string
|
||||||
|
GetDistrictsByCodesFromLocationService string
|
||||||
GetWardsByCodes 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"),
|
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"),
|
GetProvincesByCodes: getLocationValue("get_provinces_by_codes"),
|
||||||
|
GetProvincesByCodesFromLocationService: getLocationValue("get_provinces_by_codes_from_location_service"),
|
||||||
GetDistrictsByCodes: getLocationValue("get_districts_by_codes"),
|
GetDistrictsByCodes: getLocationValue("get_districts_by_codes"),
|
||||||
|
GetDistrictsByCodesFromLocationService: getLocationValue("get_districts_by_codes_from_location_service"),
|
||||||
GetWardsByCodes: getLocationValue("get_wards_by_codes"),
|
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"),
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
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"),
|
||||||
|
}
|
|
@ -8,14 +8,18 @@ func getOrderValue(val string) string {
|
||||||
|
|
||||||
var Order = struct {
|
var Order = struct {
|
||||||
UpdateORStatus string
|
UpdateORStatus string
|
||||||
|
GetUserTotalWarningOrders string
|
||||||
CancelDelivery string
|
CancelDelivery string
|
||||||
ChangeDeliveryStatus string
|
ChangeDeliveryStatus string
|
||||||
UpdateLogisticInfoFailed string
|
UpdateLogisticInfoFailed string
|
||||||
ORNotUpdateStatus string
|
ORNotUpdateStatus string
|
||||||
|
GetSupplierOrders string
|
||||||
}{
|
}{
|
||||||
UpdateORStatus: getOrderValue("update_outbound_request_status"),
|
UpdateORStatus: getOrderValue("update_outbound_request_status"),
|
||||||
|
GetUserTotalWarningOrders: getOrderValue("get_user_total_warning_orders"),
|
||||||
CancelDelivery: getOrderValue("cancel_delivery"),
|
CancelDelivery: getOrderValue("cancel_delivery"),
|
||||||
ChangeDeliveryStatus: getOrderValue("change_delivery_status"),
|
ChangeDeliveryStatus: getOrderValue("change_delivery_status"),
|
||||||
UpdateLogisticInfoFailed: getOrderValue("update_logistic_info_failed"),
|
UpdateLogisticInfoFailed: getOrderValue("update_logistic_info_failed"),
|
||||||
ORNotUpdateStatus: getOrderValue("outbound_request_not_update_status"),
|
ORNotUpdateStatus: getOrderValue("outbound_request_not_update_status"),
|
||||||
|
GetSupplierOrders: getOrderValue("get_supplier_orders"),
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
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"),
|
||||||
|
}
|
|
@ -0,0 +1,13 @@
|
||||||
|
package subject
|
||||||
|
|
||||||
|
import "fmt"
|
||||||
|
|
||||||
|
func getQueueValue(val string) string {
|
||||||
|
return fmt.Sprintf("%s.%s", prefixes.Queue, val)
|
||||||
|
}
|
||||||
|
|
||||||
|
var Queue = struct {
|
||||||
|
ScheduleTask string
|
||||||
|
}{
|
||||||
|
ScheduleTask: getQueueValue("schedule_task"),
|
||||||
|
}
|
|
@ -0,0 +1,15 @@
|
||||||
|
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"),
|
||||||
|
}
|
|
@ -14,3 +14,10 @@ var Seller = struct {
|
||||||
GetSellerInfoByID: getSellerValue("get_seller_info_by_id"),
|
GetSellerInfoByID: getSellerValue("get_seller_info_by_id"),
|
||||||
GetListSellerInfoByIDs: getSellerValue("get_list_seller_info_by_ids"),
|
GetListSellerInfoByIDs: getSellerValue("get_list_seller_info_by_ids"),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SupportChat ...
|
||||||
|
var SupportChat = struct {
|
||||||
|
GetListSellerInfoSupportChatByIDs string
|
||||||
|
}{
|
||||||
|
GetListSellerInfoSupportChatByIDs: "SELLY_CHAT.REQUEST.SELLER_INFO",
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
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"),
|
||||||
|
}
|
|
@ -0,0 +1,16 @@
|
||||||
|
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",
|
||||||
|
}
|
|
@ -0,0 +1,14 @@
|
||||||
|
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"),
|
||||||
|
}
|
|
@ -8,10 +8,16 @@ func getSupplierValue(val string) string {
|
||||||
|
|
||||||
var Supplier = struct {
|
var Supplier = struct {
|
||||||
GetListSupplierInfo string
|
GetListSupplierInfo string
|
||||||
|
GetDetailSupplierInfo string
|
||||||
GetSupplierContractBySupplierID string
|
GetSupplierContractBySupplierID string
|
||||||
FindAll string
|
FindAll string
|
||||||
|
FindAllOld string
|
||||||
|
Count string
|
||||||
}{
|
}{
|
||||||
GetListSupplierInfo: getSupplierValue("get_list_supplier_info"),
|
GetListSupplierInfo: getSupplierValue("get_list_supplier_info"),
|
||||||
|
GetDetailSupplierInfo: getSupplierValue("get_detail_supplier_info"),
|
||||||
GetSupplierContractBySupplierID: getSupplierValue("get_supplier_contract_by_supplier_id"),
|
GetSupplierContractBySupplierID: getSupplierValue("get_supplier_contract_by_supplier_id"),
|
||||||
FindAll: getSupplierValue("find_all"),
|
FindAll: getSupplierValue("find_all"),
|
||||||
|
FindAllOld: getSupplierValue("find_all_old"),
|
||||||
|
Count: getSupplierValue("count"),
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
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"),
|
||||||
|
}
|
|
@ -0,0 +1,27 @@
|
||||||
|
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"),
|
||||||
|
}
|
|
@ -1,12 +1,16 @@
|
||||||
package subject
|
package subject
|
||||||
|
|
||||||
import "fmt"
|
import (
|
||||||
|
"fmt"
|
||||||
|
)
|
||||||
|
|
||||||
func getWarehouseValue(val string) string {
|
func getWarehouseValue(val string) string {
|
||||||
return fmt.Sprintf("%s.%s", prefixes.Warehouse, val)
|
return fmt.Sprintf("%s.%s", prefixes.Warehouse, val)
|
||||||
}
|
}
|
||||||
|
|
||||||
var Warehouse = struct {
|
var Warehouse = struct {
|
||||||
|
CreateWarehouseIntoServiceSupplier string
|
||||||
|
UpdateWarehouseIntoServiceSupplier string
|
||||||
CreateOutboundRequest string
|
CreateOutboundRequest string
|
||||||
UpdateOutboundRequestLogistic string
|
UpdateOutboundRequestLogistic string
|
||||||
CancelOutboundRequest string
|
CancelOutboundRequest string
|
||||||
|
@ -14,13 +18,25 @@ var Warehouse = struct {
|
||||||
SyncORStatus string
|
SyncORStatus string
|
||||||
WebhookTNC string
|
WebhookTNC string
|
||||||
WebhookGlobalCare string
|
WebhookGlobalCare string
|
||||||
|
WebhookOnPoint string
|
||||||
|
WebhookViettelFFM string
|
||||||
FindOne string
|
FindOne string
|
||||||
FindByCondition string
|
FindByCondition string
|
||||||
Distinct string
|
Distinct string
|
||||||
Count string
|
Count string
|
||||||
AfterUpdateWarehouse string
|
AfterUpdateWarehouse string
|
||||||
AfterCreateWarehouse 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"),
|
AfterCreateWarehouse: getWarehouseValue("after_create_warehouse"),
|
||||||
AfterUpdateWarehouse: getWarehouseValue("after_update_warehouse"),
|
AfterUpdateWarehouse: getWarehouseValue("after_update_warehouse"),
|
||||||
CreateOutboundRequest: getWarehouseValue("create_outbound_request"),
|
CreateOutboundRequest: getWarehouseValue("create_outbound_request"),
|
||||||
|
@ -30,8 +46,18 @@ var Warehouse = struct {
|
||||||
SyncORStatus: getWarehouseValue("sync_or_status"),
|
SyncORStatus: getWarehouseValue("sync_or_status"),
|
||||||
WebhookTNC: getWarehouseValue("webhook_tnc"),
|
WebhookTNC: getWarehouseValue("webhook_tnc"),
|
||||||
WebhookGlobalCare: getWarehouseValue("webhook_global_care"),
|
WebhookGlobalCare: getWarehouseValue("webhook_global_care"),
|
||||||
|
WebhookOnPoint: getWarehouseValue("webhook_on_point"),
|
||||||
|
WebhookViettelFFM: getWarehouseValue("webhook_viettel_ffm"),
|
||||||
FindOne: getWarehouseValue("find_one"),
|
FindOne: getWarehouseValue("find_one"),
|
||||||
FindByCondition: getWarehouseValue("find_all_by_condition"),
|
FindByCondition: getWarehouseValue("find_all_by_condition"),
|
||||||
Distinct: getWarehouseValue("distinct"),
|
Distinct: getWarehouseValue("distinct"),
|
||||||
Count: getWarehouseValue("count"),
|
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"),
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue