build authsms
This commit is contained in:
		
							parent
							
								
									fe20f69b9d
								
							
						
					
					
						commit
						f6a2b34a7f
					
				| 
						 | 
					@ -0,0 +1,79 @@
 | 
				
			||||||
 | 
					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"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// SupplierPermission ...
 | 
				
			||||||
 | 
					type SupplierPermission struct{}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// GetSupplierPermission ...
 | 
				
			||||||
 | 
					func GetSupplierPermission() SupplierPermission {
 | 
				
			||||||
 | 
						return SupplierPermission{}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s SupplierPermission) GetListPermission(p model.GetListPermissionRequest) (*model.GetListPermissionResponse, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierPermission.GetList, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Data  *model.GetListPermissionResponse `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 SupplierPermission) CreatePermission(p model.CreatePermissionRequest) (*model.CreatePermissionResponse, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierPermission.Create, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Data  *model.CreatePermissionResponse `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 SupplierPermission) UpdatePermission(p model.UpdatePermissionRequest) error {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierPermission.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
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -16,8 +16,29 @@ func GetSupplierRole() SupplierRole {
 | 
				
			||||||
	return SupplierRole{}
 | 
						return SupplierRole{}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s SupplierRole) GetListRole(p model.GetListRoleRequest) (*model.GetListRoleResponse, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierRole.GetList, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Data  *model.GetListRoleResponse `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) CreateRole(p model.CreateRoleRequest) (*model.CreateRoleResponse, error) {
 | 
					func (s SupplierRole) CreateRole(p model.CreateRoleRequest) (*model.CreateRoleResponse, error) {
 | 
				
			||||||
	msg, err := natsio.GetServer().Request(subject.SupplierUser.CreateOwner, toBytes(p))
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierRole.Create, toBytes(p))
 | 
				
			||||||
	if err != nil {
 | 
						if err != nil {
 | 
				
			||||||
		return nil, err
 | 
							return nil, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
| 
						 | 
					@ -56,3 +77,24 @@ func (s SupplierRole) UpdateRole(p model.UpdateRoleRequest) error {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return nil
 | 
						return nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func (s SupplierRole) DetailRole(p model.DetailRoleRequest) (*model.RoleBrief, error) {
 | 
				
			||||||
 | 
						msg, err := natsio.GetServer().Request(subject.SupplierRole.Detail, toBytes(p))
 | 
				
			||||||
 | 
						if err != nil {
 | 
				
			||||||
 | 
							return nil, err
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						var r struct {
 | 
				
			||||||
 | 
							Data  *model.RoleBrief `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,24 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type GetListPermissionRequest struct {
 | 
				
			||||||
 | 
						Page  int    `json:"page"`
 | 
				
			||||||
 | 
						Limit int    `json:"limit"`
 | 
				
			||||||
 | 
						Group string `json:"group"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type DetailPermissionRequest struct {
 | 
				
			||||||
 | 
						ID string `json:"_id"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type CreatePermissionRequest struct {
 | 
				
			||||||
 | 
						Name  string `json:"name"`
 | 
				
			||||||
 | 
						Code  string `json:"code"`
 | 
				
			||||||
 | 
						Group string `json:"group"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type UpdatePermissionRequest struct {
 | 
				
			||||||
 | 
						ID    string `json:"_id"`
 | 
				
			||||||
 | 
						Name  string `json:"name"`
 | 
				
			||||||
 | 
						Code  string `json:"code"`
 | 
				
			||||||
 | 
						Group string `json:"group"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,19 @@
 | 
				
			||||||
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type GetListPermissionResponse struct {
 | 
				
			||||||
 | 
						Permissions []PermissionBrief `json:"permissions"`
 | 
				
			||||||
 | 
						Total       int64             `json:"total"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type PermissionBrief struct {
 | 
				
			||||||
 | 
						ID        string `json:"_id"`
 | 
				
			||||||
 | 
						Name      string `json:"name"`
 | 
				
			||||||
 | 
						Code      string `json:"code"`
 | 
				
			||||||
 | 
						Group     string `json:"group"`
 | 
				
			||||||
 | 
						CreatedAt string `json:"createdAt"`
 | 
				
			||||||
 | 
						UpdatedAt string `json:"updatedAt"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type CreatePermissionResponse struct {
 | 
				
			||||||
 | 
						ID string `json:"_id"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,16 @@
 | 
				
			||||||
package model
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type GetListRoleRequest struct {
 | 
				
			||||||
 | 
						Page       int    `json:"page"`
 | 
				
			||||||
 | 
						Limit      int    `json:"limit"`
 | 
				
			||||||
 | 
						Type       string `json:"type"`
 | 
				
			||||||
 | 
						SupplierID string `json:"supplierId"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type DetailRoleRequest struct {
 | 
				
			||||||
 | 
						ID string `json:"_id"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type CreateRoleRequest struct {
 | 
					type CreateRoleRequest struct {
 | 
				
			||||||
	Name string `json:"name"`
 | 
						Name string `json:"name"`
 | 
				
			||||||
	Code string `json:"code"`
 | 
						Code string `json:"code"`
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,19 @@
 | 
				
			||||||
package model
 | 
					package model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type GetListRoleResponse struct {
 | 
				
			||||||
 | 
						Roles []RoleBrief `json:"roles"`
 | 
				
			||||||
 | 
						Total int64       `json:"total"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					type RoleBrief struct {
 | 
				
			||||||
 | 
						ID        string `json:"_id"`
 | 
				
			||||||
 | 
						Name      string `json:"name"`
 | 
				
			||||||
 | 
						Code      string `json:"code"`
 | 
				
			||||||
 | 
						Type      string `json:"type"`
 | 
				
			||||||
 | 
						CreatedAt string `json:"createdAt"`
 | 
				
			||||||
 | 
						UpdatedAt string `json:"updatedAt"`
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type CreateRoleResponse struct {
 | 
					type CreateRoleResponse struct {
 | 
				
			||||||
	ID string `json:"_id"`
 | 
						ID string `json:"_id"`
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -11,6 +11,7 @@ var prefixes = struct {
 | 
				
			||||||
	Seller        string
 | 
						Seller        string
 | 
				
			||||||
	SupplierUser  string
 | 
						SupplierUser  string
 | 
				
			||||||
	SupplierRole  string
 | 
						SupplierRole  string
 | 
				
			||||||
 | 
						SupplierPermission string
 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	Communication: "communication",
 | 
						Communication: "communication",
 | 
				
			||||||
	Order:         "order",
 | 
						Order:         "order",
 | 
				
			||||||
| 
						 | 
					@ -22,4 +23,5 @@ var prefixes = struct {
 | 
				
			||||||
	Seller:        "seller",
 | 
						Seller:        "seller",
 | 
				
			||||||
	SupplierUser:  "supplier_user",
 | 
						SupplierUser:  "supplier_user",
 | 
				
			||||||
	SupplierRole:  "supplier_role",
 | 
						SupplierRole:  "supplier_role",
 | 
				
			||||||
 | 
						SupplierPermission: "supplier_permission",
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,17 @@
 | 
				
			||||||
 | 
					package subject
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import "fmt"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func getPermissionValue(val string) string {
 | 
				
			||||||
 | 
						return fmt.Sprintf("%s.%s", prefixes.SupplierPermission, val)
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var SupplierPermission = struct {
 | 
				
			||||||
 | 
						GetList string
 | 
				
			||||||
 | 
						Create  string
 | 
				
			||||||
 | 
						Update  string
 | 
				
			||||||
 | 
					}{
 | 
				
			||||||
 | 
						GetList: getPermissionValue("get_list"),
 | 
				
			||||||
 | 
						Create:  getPermissionValue("create"),
 | 
				
			||||||
 | 
						Update:  getPermissionValue("update"),
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -7,9 +7,15 @@ func getRoleValue(val string) string {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var SupplierRole = struct {
 | 
					var SupplierRole = struct {
 | 
				
			||||||
	Create string
 | 
						GetList             string
 | 
				
			||||||
	Update string
 | 
						Detail              string
 | 
				
			||||||
 | 
						Create              string
 | 
				
			||||||
 | 
						Update              string
 | 
				
			||||||
 | 
						GetListBySupplierID string
 | 
				
			||||||
}{
 | 
					}{
 | 
				
			||||||
	Create: getRoleValue("create"),
 | 
						GetList:             getRoleValue("get_list"),
 | 
				
			||||||
	Update: getRoleValue("update"),
 | 
						Detail:              getRoleValue("detail"),
 | 
				
			||||||
 | 
						Create:              getRoleValue("create"),
 | 
				
			||||||
 | 
						Update:              getRoleValue("update"),
 | 
				
			||||||
 | 
						GetListBySupplierID: getRoleValue("get_list_by_supplierId"),
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue