feature/update-warehouse-into-supplier #44
|
@ -4,9 +4,9 @@ import (
|
|||
"encoding/json"
|
||||
"errors"
|
||||
|
||||
"github.com/Selly-Modules/natsio"
|
||||
"github.com/Selly-Modules/natsio/model"
|
||||
"github.com/Selly-Modules/natsio/subject"
|
||||
"git.selly.red/Selly-Modules/natsio"
|
||||
"git.selly.red/Selly-Modules/natsio/model"
|
||||
"git.selly.red/Selly-Modules/natsio/subject"
|
||||
)
|
||||
|
||||
// Bank ...
|
||||
|
@ -37,3 +37,19 @@ func (s Bank) GetBankById(bankID string) (*model.BankBrief, 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 == ""
|
||||
}
|
||||
|
|
|
@ -4,20 +4,20 @@ import (
|
|||
"encoding/json"
|
||||
"errors"
|
||||
|
||||
"github.com/Selly-Modules/natsio"
|
||||
"github.com/Selly-Modules/natsio/model"
|
||||
"github.com/Selly-Modules/natsio/subject"
|
||||
"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() Bank {
|
||||
return Bank{}
|
||||
func GetBankBranch() BankBranch {
|
||||
return BankBranch{}
|
||||
}
|
||||
|
||||
func (s Bank) GetBankBranchById(bankBranchID string) (*model.BankBranchBrief, error) {
|
||||
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
|
||||
|
|
|
@ -3,9 +3,9 @@ package client
|
|||
import (
|
||||
"encoding/json"
|
||||
|
||||
"github.com/Selly-Modules/natsio"
|
||||
"github.com/Selly-Modules/natsio/model"
|
||||
"github.com/Selly-Modules/natsio/subject"
|
||||
"git.selly.red/Selly-Modules/natsio"
|
||||
"git.selly.red/Selly-Modules/natsio/model"
|
||||
"git.selly.red/Selly-Modules/natsio/subject"
|
||||
)
|
||||
|
||||
// Communication ...
|
||||
|
|
|
@ -4,9 +4,9 @@ import (
|
|||
"encoding/json"
|
||||
"errors"
|
||||
|
||||
"github.com/Selly-Modules/natsio"
|
||||
"github.com/Selly-Modules/natsio/model"
|
||||
"github.com/Selly-Modules/natsio/subject"
|
||||
"git.selly.red/Selly-Modules/natsio"
|
||||
"git.selly.red/Selly-Modules/natsio/model"
|
||||
"git.selly.red/Selly-Modules/natsio/subject"
|
||||
)
|
||||
|
||||
// Location ...
|
||||
|
|
|
@ -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"
|
||||
"errors"
|
||||
|
||||
"github.com/Selly-Modules/natsio"
|
||||
"github.com/Selly-Modules/natsio/model"
|
||||
"github.com/Selly-Modules/natsio/subject"
|
||||
"git.selly.red/Selly-Modules/natsio"
|
||||
"git.selly.red/Selly-Modules/natsio/model"
|
||||
"git.selly.red/Selly-Modules/natsio/subject"
|
||||
)
|
||||
|
||||
// Order ...
|
||||
|
|
|
@ -0,0 +1,88 @@
|
|||
package client
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"errors"
|
||||
|
||||
"git.selly.red/Selly-Modules/natsio"
|
||||
"git.selly.red/Selly-Modules/natsio/model"
|
||||
"git.selly.red/Selly-Modules/natsio/subject"
|
||||
)
|
||||
|
||||
// Seller ...
|
||||
type Seller struct{}
|
||||
|
||||
// GetSeller ...
|
||||
func GetSeller() Seller {
|
||||
return Seller{}
|
||||
}
|
||||
|
||||
// GetSellerInfoByID ...
|
||||
func (s Seller) GetSellerInfoByID(p model.GetSellerByIDRequest) (*model.ResponseSellerInfo, error) {
|
||||
msg, err := natsio.GetServer().Request(subject.Seller.GetSellerInfoByID, toBytes(p))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var r struct {
|
||||
Data *model.ResponseSellerInfo `json:"data"`
|
||||
Error string `json:"error"`
|
||||
}
|
||||
|
||||
if err := json.Unmarshal(msg.Data, &r); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if r.Error != "" {
|
||||
return nil, errors.New(r.Error)
|
||||
}
|
||||
|
||||
return r.Data, nil
|
||||
}
|
||||
|
||||
// GetListSellerInfoByIDs ...
|
||||
func (s Seller) GetListSellerInfoByIDs(p model.GetListSellerByIDsRequest) (*model.ResponseListSellerInfo, error) {
|
||||
msg, err := natsio.GetServer().Request(subject.Seller.GetListSellerInfoByIDs, toBytes(p))
|
||||
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var r struct {
|
||||
Data *model.ResponseListSellerInfo `json:"data"`
|
||||
Error string `json:"error"`
|
||||
}
|
||||
|
||||
if err := json.Unmarshal(msg.Data, &r); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if r.Error != "" {
|
||||
return nil, errors.New(r.Error)
|
||||
|
||||
}
|
||||
return r.Data, nil
|
||||
}
|
||||
|
||||
// GetListSellerInfoSupportChatByIDs ...
|
||||
func (s Seller) GetListSellerInfoSupportChatByIDs(p model.GetListSellerSupportChatByIDsRequest) (*model.ResponseListSellerInfoSupportChat, error) {
|
||||
msg, err := natsio.GetServer().Request(subject.SupportChat.GetListSellerInfoSupportChatByIDs, toBytes(p))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var r struct {
|
||||
Data *model.ResponseListSellerInfoSupportChat `json:"data"`
|
||||
Error string `json:"error"`
|
||||
}
|
||||
|
||||
if err := json.Unmarshal(msg.Data, &r); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if r.Error != "" {
|
||||
return nil, errors.New(r.Error)
|
||||
|
||||
}
|
||||
return r.Data, nil
|
||||
}
|
|
@ -4,9 +4,9 @@ import (
|
|||
"encoding/json"
|
||||
"errors"
|
||||
|
||||
"github.com/Selly-Modules/natsio"
|
||||
"github.com/Selly-Modules/natsio/model"
|
||||
"github.com/Selly-Modules/natsio/subject"
|
||||
"git.selly.red/Selly-Modules/natsio"
|
||||
"git.selly.red/Selly-Modules/natsio/model"
|
||||
"git.selly.red/Selly-Modules/natsio/subject"
|
||||
)
|
||||
|
||||
// Supplier ...
|
||||
|
|
|
@ -4,9 +4,9 @@ import (
|
|||
"encoding/json"
|
||||
"errors"
|
||||
|
||||
"github.com/Selly-Modules/natsio"
|
||||
"github.com/Selly-Modules/natsio/model"
|
||||
"github.com/Selly-Modules/natsio/subject"
|
||||
"git.selly.red/Selly-Modules/natsio"
|
||||
"git.selly.red/Selly-Modules/natsio/model"
|
||||
"git.selly.red/Selly-Modules/natsio/subject"
|
||||
)
|
||||
|
||||
// Warehouse ...
|
||||
|
@ -17,6 +17,24 @@ func GetWarehouse() Warehouse {
|
|||
return Warehouse{}
|
||||
}
|
||||
|
||||
// UpdateIsClosedSupplier ...
|
||||
func (w Warehouse) UpdateIsClosedSupplier(p model.UpdateSupplierIsClosedRequest) error {
|
||||
msg, err := natsio.GetServer().Request(subject.Warehouse.UpdateIsClosedSupplier, toBytes(p))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
var r struct {
|
||||
Error string `json:"error"`
|
||||
}
|
||||
if err = json.Unmarshal(msg.Data, &r); err != nil {
|
||||
return err
|
||||
}
|
||||
if r.Error != "" {
|
||||
return errors.New(r.Error)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// AfterCreateWarehouse ...
|
||||
func (w Warehouse) AfterCreateWarehouse(p model.WarehouseNatsResponse) error {
|
||||
msg, err := natsio.GetServer().Request(subject.Warehouse.AfterCreateWarehouse, toBytes(p))
|
||||
|
@ -126,3 +144,22 @@ func (w Warehouse) GetConfigByWarehouseID(warehouseID string) (*model.WarehouseC
|
|||
}
|
||||
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
|
||||
}
|
||||
|
|
|
@ -3,9 +3,9 @@ package client
|
|||
import (
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"github.com/Selly-Modules/natsio"
|
||||
"github.com/Selly-Modules/natsio/model"
|
||||
"github.com/Selly-Modules/natsio/subject"
|
||||
"git.selly.red/Selly-Modules/natsio"
|
||||
"git.selly.red/Selly-Modules/natsio/model"
|
||||
"git.selly.red/Selly-Modules/natsio/subject"
|
||||
)
|
||||
|
||||
// DistinctWithField ...
|
||||
|
|
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
|
||||
|
||||
|
|
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/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
|
||||
github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
|
||||
github.com/golang/snappy v0.0.3 h1:fHPg5GQYlCeLIPB9BZqMVR5nR9A+IM5zcgeTdjMYmLA=
|
||||
github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
|
||||
github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
|
||||
github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
|
||||
|
@ -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/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
|
||||
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
||||
github.com/logrusorgru/aurora v2.0.3+incompatible h1:tOpm7WcpBTn4fjmVfgpQq0EfczGlG91VSDkswnjF5A8=
|
||||
github.com/logrusorgru/aurora v2.0.3+incompatible/go.mod h1:7rIyQOR62GCctdiQpZ/zOJlFyk6y+94wXzv6RNZgaR4=
|
||||
github.com/minio/highwayhash v1.0.1 h1:dZ6IIu8Z14VlC0VpfKofAhCy74wu/Qb5gcn52yWoz/0=
|
||||
github.com/minio/highwayhash v1.0.1/go.mod h1:BQskDq+xkJ12lmlUUi7U0M5Swg3EWR+dLTk+kldvVxY=
|
||||
github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe h1:iruDEfMl2E6fbMZ9s0scYfZQ84/6SPL6zC8ACM2oIL0=
|
||||
github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc=
|
||||
github.com/nats-io/jwt v1.2.2 h1:w3GMTO969dFg+UOKTmmyuu7IGdusK+7Ytlt//OYH/uU=
|
||||
github.com/nats-io/jwt v1.2.2/go.mod h1:/xX356yQA6LuXI9xWW7mZNpxgF2mBmGecH+Fj34sP5Q=
|
||||
|
@ -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/nuid v1.0.1 h1:5iA8DT8V7q8WK2EScv2padNa/rTESc1KdnPw4TC2paw=
|
||||
github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c=
|
||||
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
|
||||
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
|
@ -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/thoas/go-funk v0.9.1 h1:O549iLZqPpTUQ10ykd26sZhzD+rmR5pWhuElrhbC20M=
|
||||
github.com/thoas/go-funk v0.9.1/go.mod h1:+IWnUfUmFO1+WVYQWQtIJHeRRdaIyyYglZN7xzUPe4Q=
|
||||
github.com/tidwall/pretty v1.0.0 h1:HsD+QiTn7sK6flMKIvNmpqz1qrpP3Ps6jOKIKMooyg4=
|
||||
github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk=
|
||||
github.com/xdg-go/pbkdf2 v1.0.0 h1:Su7DPu48wXMwC3bs7MCNG+z4FhcyEuz5dlvchbq0B0c=
|
||||
github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI=
|
||||
github.com/xdg-go/scram v1.1.1 h1:VOMT+81stJgXW3CpHyqHN3AXDYIMsx56mEFrB37Mb/E=
|
||||
github.com/xdg-go/scram v1.1.1/go.mod h1:RaEWvsqvNKKvBPvcKeFjrG2cJqOkHTiyTpzz23ni57g=
|
||||
github.com/xdg-go/stringprep v1.0.3 h1:kdwGpVNwPFtjs98xCGkHjQtGKh86rDcRZN17QEMCOIs=
|
||||
github.com/xdg-go/stringprep v1.0.3/go.mod h1:W3f5j4i+9rC0kuIEJL0ky1VpHXQU3ocBgklLGvcBnW8=
|
||||
github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d h1:splanxYIlg+5LfHAM6xpdFEAYOk8iySO56hMFq6uLyA=
|
||||
github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA=
|
||||
go.mongodb.org/mongo-driver v1.10.1 h1:NujsPveKwHaWuKUer/ceo9DzEe7HIj1SlJ6uvXZG0S4=
|
||||
go.mongodb.org/mongo-driver v1.10.1/go.mod h1:z4XpeoU6w+9Vht+jAFyLgVrD+jGSQQe0+CBWFHNiHt8=
|
||||
|
@ -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-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
|
||||
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c h1:5KslGYwFpkhGh+Q16bwMP3cOontH8FOep7tGV86Y7SQ=
|
||||
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sys v0.0.0-20190130150945-aca44879d564/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
|
@ -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.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=
|
||||
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
|
||||
golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1 h1:NusfzzA6yGQ+ua51ck7E3omNUX/JuqbFSaRGqU8CcLI=
|
||||
golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
|
||||
google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
package natsio
|
||||
|
||||
// StreamNameSelly ...
|
||||
const StreamNameSelly = "selly"
|
|
@ -0,0 +1,12 @@
|
|||
package jsconsumer
|
||||
|
||||
// Selly ...
|
||||
var Selly = struct {
|
||||
PushNotification string
|
||||
UpdateSellerAffiliateStatistic string
|
||||
CheckAnDInsertCashflowBySeller string
|
||||
}{
|
||||
PushNotification: "PULL_PUSH_NOTIFICATION",
|
||||
UpdateSellerAffiliateStatistic: "PULL_UPDATE_SELLER_AFFILIATE_STATISTIC",
|
||||
CheckAnDInsertCashflowBySeller: "PULL_CHECK_AND_INSERT_CASHFLOW_BY_SELLER",
|
||||
}
|
|
@ -0,0 +1,60 @@
|
|||
package jsmodel
|
||||
|
||||
// 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"`
|
||||
}
|
||||
|
||||
// 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"`
|
||||
}
|
|
@ -0,0 +1,10 @@
|
|||
package jssubject
|
||||
|
||||
var root = "js"
|
||||
|
||||
// prefixes ...
|
||||
var prefixes = struct {
|
||||
Selly string
|
||||
}{
|
||||
Selly: "selly",
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
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
|
||||
}{
|
||||
PushNotification: getSellyValue("push_notifications"),
|
||||
UpdateSellerAffiliateStatistic: getSellyValue("update_seller_affiliate_statistic"),
|
||||
CheckAnDInsertCashflowBySeller: getSellyValue("check_and_insert_cashflow_statistic"),
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
package model
|
||||
|
||||
type BankBranchRequest struct {
|
||||
BankID string `json:"bankId"`
|
||||
BranchID string `json:"branchId"`
|
||||
}
|
|
@ -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"`
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
package model
|
||||
|
||||
import "go.mongodb.org/mongo-driver/bson/primitive"
|
||||
|
||||
// GetSellerByIDRequest ...
|
||||
type GetSellerByIDRequest struct {
|
||||
SellerID primitive.ObjectID `json:"sellerId"`
|
||||
}
|
||||
|
||||
// GetListSellerByIDsRequest ...
|
||||
type GetListSellerByIDsRequest struct {
|
||||
SellerIDs []primitive.ObjectID `json:"sellerIds"`
|
||||
}
|
||||
|
||||
// GetListSellerSupportChatByIDsRequest ...
|
||||
type GetListSellerSupportChatByIDsRequest struct {
|
||||
SellerIDs []primitive.ObjectID `json:"sellerIds"`
|
||||
}
|
|
@ -0,0 +1,81 @@
|
|||
package model
|
||||
|
||||
import "time"
|
||||
|
||||
// ResponseSellerInfo ...
|
||||
type ResponseSellerInfo struct {
|
||||
ID string `json:"_id"`
|
||||
Name string `json:"name"`
|
||||
Code string `json:"code"`
|
||||
}
|
||||
|
||||
// ResponseListSellerInfo ...
|
||||
type ResponseListSellerInfo struct {
|
||||
Sellers []ResponseSellerInfo `json:"sellers"`
|
||||
}
|
||||
|
||||
// ResponseListSellerInfoSupportChat ...
|
||||
type ResponseListSellerInfoSupportChat struct {
|
||||
Sellers []ResponseSellerInfoSupportChat `json:"sellers"`
|
||||
}
|
||||
|
||||
// ResponseSellerInfoSupportChat ...
|
||||
type ResponseSellerInfoSupportChat struct {
|
||||
ID string `json:"_id"`
|
||||
Name string `json:"name"`
|
||||
Code string `json:"code"`
|
||||
Membership SellerMembershipInfo `json:"membership"`
|
||||
Info SellerContactInfo `json:"info"`
|
||||
Team *TeamInfo `json:"team,omitempty"`
|
||||
Statistic SellerStatistic `json:"statistic"`
|
||||
TrackingTime *SellerTrackingTime `json:"trackingTime"`
|
||||
Invitee *InviteeInfo `json:"invitee"`
|
||||
CreatedAt time.Time `json:"createdAt"`
|
||||
}
|
||||
|
||||
// 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"`
|
||||
}
|
|
@ -2,8 +2,9 @@ package model
|
|||
|
||||
// ResponseSupplierInfo ...
|
||||
type ResponseSupplierInfo struct {
|
||||
ID string `json:"id"`
|
||||
Name string `json:"name"`
|
||||
ID string `json:"id"`
|
||||
Name string `json:"name"`
|
||||
BusinessType string `json:"businessType"`
|
||||
}
|
||||
|
||||
// ResponseSupplierContract ...
|
||||
|
@ -16,11 +17,12 @@ type ResponseSupplierContract struct {
|
|||
|
||||
// SupplierBrief ...
|
||||
type SupplierBrief struct {
|
||||
ID string `json:"_id"`
|
||||
Name string `json:"name"`
|
||||
Status string `json:"status"`
|
||||
CreatedAt string `json:"createdAt"`
|
||||
UpdatedAt string `json:"updatedAt"`
|
||||
ID string `json:"_id"`
|
||||
Name string `json:"name"`
|
||||
Status string `json:"status"`
|
||||
BusinessType string `json:"businessType"`
|
||||
CreatedAt string `json:"createdAt"`
|
||||
UpdatedAt string `json:"updatedAt"`
|
||||
}
|
||||
|
||||
type SupplierAll struct {
|
||||
|
|
|
@ -17,6 +17,7 @@ type OutboundRequestPayload struct {
|
|||
|
||||
// InsuranceOpts ...
|
||||
type InsuranceOpts struct {
|
||||
InsuranceType string `json:"insuranceType"`
|
||||
VehicleTypeID string `json:"vehicleTypeId"`
|
||||
VehicleTypeName string `json:"vehicleTypeName"`
|
||||
InsuranceTypeID string `json:"insuranceTypeId"`
|
||||
|
@ -25,6 +26,12 @@ type InsuranceOpts struct {
|
|||
Chassis string `json:"chassis"`
|
||||
Engine string `json:"engine"`
|
||||
BeginDate string `json:"beginDate"`
|
||||
|
||||
// For car insurance
|
||||
NumberOfSeatsCarOccupantAccidentInsurance int `json:"numberOfSeatsCarOccupantAccidentInsurance"`
|
||||
NumberOfSeats int `json:"numberOfSeats"`
|
||||
NumberOfSeatsOrTonnageId string `json:"numberOfSeatsOrTonnageId"`
|
||||
NumberOfSeatsOrTonnageName string `json:"numberOfSeatsOrTonnageName"`
|
||||
}
|
||||
|
||||
// OutboundRequestItem ...
|
||||
|
@ -69,3 +76,25 @@ type SyncORStatusRequest struct {
|
|||
ORCode string `json:"orCode"`
|
||||
OrderCode string `json:"orderCode"`
|
||||
}
|
||||
|
||||
// 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"`
|
||||
|
||||
Page int64 `json:"page"`
|
||||
Limit int64 `json:"limit"`
|
||||
}
|
||||
|
|
|
@ -25,6 +25,20 @@ type WarehouseConfiguration struct {
|
|||
Partner WarehousePartner `json:"partner"`
|
||||
Delivery WarehouseDelivery `json:"delivery"`
|
||||
Other WarehouseOther `json:"other"`
|
||||
Food WarehouseFood `json:"food"`
|
||||
}
|
||||
|
||||
// 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 ...
|
||||
|
@ -109,6 +123,7 @@ type ResponseLatLng struct {
|
|||
type WarehouseNatsResponse struct {
|
||||
ID string `json:"_id"`
|
||||
Staff string `json:"staff"`
|
||||
BusinessType string `json:"businessType"`
|
||||
Name string `json:"name"`
|
||||
SearchString string `json:"searchString"`
|
||||
Slug string `json:"slug"`
|
||||
|
@ -120,3 +135,30 @@ type WarehouseNatsResponse struct {
|
|||
CreatedAt time.Time `json:"createdAt"`
|
||||
UpdatedAt time.Time `json:"updatedAt"`
|
||||
}
|
||||
|
||||
// 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"`
|
||||
}
|
||||
|
|
|
@ -7,8 +7,11 @@ func getBankValue(val string) string {
|
|||
}
|
||||
|
||||
var Bank = struct {
|
||||
GetBankById string
|
||||
GetBankBranchById string
|
||||
GetBankById string
|
||||
GetBankBranchById string
|
||||
CheckBankAndBranchByID string
|
||||
}{
|
||||
GetBankBranchById: getBankValue("get_bank_by_id"),
|
||||
GetBankById: getBankValue("get_bank_by_id"),
|
||||
GetBankBranchById: getBankValue("get_bank_branch_by_id"),
|
||||
CheckBankAndBranchByID: getBankValue("check_bank_and_brach_by_id"),
|
||||
}
|
||||
|
|
|
@ -3,15 +3,19 @@ package subject
|
|||
var prefixes = struct {
|
||||
Communication string
|
||||
Order string
|
||||
News string
|
||||
Warehouse string
|
||||
Location string
|
||||
Bank string
|
||||
Supplier string
|
||||
Seller string
|
||||
}{
|
||||
Communication: "communication",
|
||||
Order: "order",
|
||||
News: "news",
|
||||
Warehouse: "warehouse",
|
||||
Location: "location",
|
||||
Supplier: "supplier",
|
||||
Bank: "bank",
|
||||
Seller: "seller",
|
||||
}
|
||||
|
|
|
@ -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"),
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
package subject
|
||||
|
||||
import "fmt"
|
||||
|
||||
func getSellerValue(val string) string {
|
||||
return fmt.Sprintf("%s.%s", prefixes.Seller, val)
|
||||
}
|
||||
|
||||
// Seller ...
|
||||
var Seller = struct {
|
||||
GetSellerInfoByID string
|
||||
GetListSellerInfoByIDs string
|
||||
}{
|
||||
GetSellerInfoByID: getSellerValue("get_seller_info_by_id"),
|
||||
GetListSellerInfoByIDs: getSellerValue("get_list_seller_info_by_ids"),
|
||||
}
|
||||
|
||||
// SupportChat ...
|
||||
var SupportChat = struct {
|
||||
GetListSellerInfoSupportChatByIDs string
|
||||
}{
|
||||
GetListSellerInfoSupportChatByIDs: "SELLY_CHAT.REQUEST.SELLER_INFO",
|
||||
}
|
|
@ -7,35 +7,39 @@ func getWarehouseValue(val string) string {
|
|||
}
|
||||
|
||||
var Warehouse = struct {
|
||||
CreateOutboundRequest string
|
||||
UpdateOutboundRequestLogistic string
|
||||
CancelOutboundRequest string
|
||||
GetConfiguration string
|
||||
SyncORStatus string
|
||||
WebhookTNC string
|
||||
WebhookGlobalCare string
|
||||
FindOne string
|
||||
FindByCondition string
|
||||
Distinct string
|
||||
Count string
|
||||
AfterUpdateWarehouse string
|
||||
AfterCreateWarehouse string
|
||||
CreateWarehouseIntoServiceSupplier string
|
||||
UpdateWarehouseIntoServiceSupplier string
|
||||
CreateOutboundRequest string
|
||||
UpdateOutboundRequestLogistic string
|
||||
CancelOutboundRequest string
|
||||
GetConfiguration string
|
||||
SyncORStatus string
|
||||
WebhookTNC string
|
||||
WebhookGlobalCare string
|
||||
FindOne string
|
||||
FindByCondition string
|
||||
Distinct string
|
||||
Count string
|
||||
AfterUpdateWarehouse string
|
||||
AfterCreateWarehouse string
|
||||
UpdateIsClosedSupplier string
|
||||
GetWarehouses string
|
||||
}{
|
||||
AfterCreateWarehouse: getWarehouseValue("after_create_warehouse"),
|
||||
AfterUpdateWarehouse: getWarehouseValue("after_update_warehouse"),
|
||||
CreateOutboundRequest: getWarehouseValue("create_outbound_request"),
|
||||
UpdateOutboundRequestLogistic: getWarehouseValue("update_outbound_request_logistic_info"),
|
||||
CancelOutboundRequest: getWarehouseValue("cancel_outbound_request"),
|
||||
GetConfiguration: getWarehouseValue("get_configuration"),
|
||||
SyncORStatus: getWarehouseValue("sync_or_status"),
|
||||
WebhookTNC: getWarehouseValue("webhook_tnc"),
|
||||
WebhookGlobalCare: getWarehouseValue("webhook_global_care"),
|
||||
FindOne: getWarehouseValue("find_one"),
|
||||
FindByCondition: getWarehouseValue("find_all_by_condition"),
|
||||
Distinct: getWarehouseValue("distinct"),
|
||||
Count: getWarehouseValue("count"),
|
||||
CreateWarehouseIntoServiceSupplier: getWarehouseValue("create_warehouse_into_service_supplier"),
|
||||
UpdateWarehouseIntoServiceSupplier: getWarehouseValue("update_warehouse_into_service_supplier"),
|
||||
AfterCreateWarehouse: getWarehouseValue("after_create_warehouse"),
|
||||
AfterUpdateWarehouse: getWarehouseValue("after_update_warehouse"),
|
||||
CreateOutboundRequest: getWarehouseValue("create_outbound_request"),
|
||||
UpdateOutboundRequestLogistic: getWarehouseValue("update_outbound_request_logistic_info"),
|
||||
CancelOutboundRequest: getWarehouseValue("cancel_outbound_request"),
|
||||
GetConfiguration: getWarehouseValue("get_configuration"),
|
||||
SyncORStatus: getWarehouseValue("sync_or_status"),
|
||||
WebhookTNC: getWarehouseValue("webhook_tnc"),
|
||||
WebhookGlobalCare: getWarehouseValue("webhook_global_care"),
|
||||
FindOne: getWarehouseValue("find_one"),
|
||||
FindByCondition: getWarehouseValue("find_all_by_condition"),
|
||||
Distinct: getWarehouseValue("distinct"),
|
||||
Count: getWarehouseValue("count"),
|
||||
UpdateIsClosedSupplier: getWarehouseValue("update_is_closed_supplier"),
|
||||
GetWarehouses: getWarehouseValue("get_warehouses"),
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue