From 19349b9813208d90ccc861129c778d290e08a695 Mon Sep 17 00:00:00 2001 From: Tue Date: Wed, 2 Nov 2022 14:56:58 +0700 Subject: [PATCH 1/2] build auth sms --- client/supplier_role.go | 1 - model/supplier_permission_response.go | 7 +++++++ model/supplier_role_request.go | 2 ++ model/supplier_role_response.go | 23 +++++++++++++---------- model/supplier_user_request.go | 1 + 5 files changed, 23 insertions(+), 11 deletions(-) diff --git a/client/supplier_role.go b/client/supplier_role.go index 1fe6d9d..095f3e9 100644 --- a/client/supplier_role.go +++ b/client/supplier_role.go @@ -26,7 +26,6 @@ func (s SupplierRole) GetListRole(p model.GetListRoleRequest) (*model.GetListRol Data *model.GetListRoleResponse `json:"data"` Error string `json:"error"` } - if err = json.Unmarshal(msg.Data, &r); err != nil { return nil, err } diff --git a/model/supplier_permission_response.go b/model/supplier_permission_response.go index cbbb019..8134201 100644 --- a/model/supplier_permission_response.go +++ b/model/supplier_permission_response.go @@ -17,3 +17,10 @@ type PermissionBrief struct { type CreatePermissionResponse struct { ID string `json:"_id"` } + +type PermissionShort struct { + ID string `json:"_id"` + Name string `json:"name"` + Code string `json:"code"` + Group string `json:"group"` +} diff --git a/model/supplier_role_request.go b/model/supplier_role_request.go index 3629643..ee12d59 100644 --- a/model/supplier_role_request.go +++ b/model/supplier_role_request.go @@ -15,6 +15,7 @@ type CreateRoleRequest struct { Name string `json:"name"` Code string `json:"code"` Type string `json:"type"` + SupplierID string `json:"supplierId"` Permissions []string `json:"permissions"` } @@ -23,5 +24,6 @@ type UpdateRoleRequest struct { Name string `json:"name"` Code string `json:"code"` Type string `json:"type"` + SupplierID string `json:"supplierId"` Permissions []string `json:"permissions"` } diff --git a/model/supplier_role_response.go b/model/supplier_role_response.go index cebc081..b67a0c6 100644 --- a/model/supplier_role_response.go +++ b/model/supplier_role_response.go @@ -6,12 +6,14 @@ type GetListRoleResponse struct { } 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"` + ID string `json:"_id"` + Name string `json:"name"` + Code string `json:"code"` + Type string `json:"type"` + Permissions []PermissionShort `json:"permissions"` + SupplierId string `json:"supplierId"` + CreatedAt string `json:"createdAt"` + UpdatedAt string `json:"updatedAt"` } type CreateRoleResponse struct { @@ -19,8 +21,9 @@ type CreateRoleResponse struct { } type RoleShort struct { - ID string `json:"_id"` - Name string `json:"name"` - Code string `json:"code"` - Type string `json:"type"` + ID string `json:"_id"` + Name string `json:"name"` + Code string `json:"code"` + Type string `json:"type"` + SupplierId string `json:"supplierId"` } diff --git a/model/supplier_user_request.go b/model/supplier_user_request.go index 9c6aca1..6bb81a0 100644 --- a/model/supplier_user_request.go +++ b/model/supplier_user_request.go @@ -4,6 +4,7 @@ type GetListOwnerRequest struct { Page int `json:"page"` Limit int `json:"limit"` Status string `json:"status"` + Type string `json:"type"` SupplierID string `json:"supplierId"` } From 55e3c07cf6e8a3da9a9c944dc49018ba6bb0b959 Mon Sep 17 00:00:00 2001 From: Tue Date: Wed, 2 Nov 2022 16:49:12 +0700 Subject: [PATCH 2/2] build auth sms --- client/supplier_user.go | 21 +++++++++++++++++++++ model/supplier_user_request.go | 17 +++++++++++++++++ model/supplier_user_response.go | 8 ++++++++ subject/supplier_user.go | 2 ++ 4 files changed, 48 insertions(+) diff --git a/client/supplier_user.go b/client/supplier_user.go index 16eb55a..d2cf98d 100644 --- a/client/supplier_user.go +++ b/client/supplier_user.go @@ -16,6 +16,27 @@ func GetSupplierUser() SupplierUser { return SupplierUser{} } +func (s SupplierUser) LoginUser(p model.LoginUserRequest) (*model.LoginUserResponse, error) { + msg, err := natsio.GetServer().Request(subject.SupplierUser.LoginUser, toBytes(p)) + if err != nil { + return nil, err + } + + var r struct { + Data *model.LoginUserResponse `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) GetListOwner(p model.GetListOwnerRequest) (*model.GetListOwnerResponse, error) { msg, err := natsio.GetServer().Request(subject.SupplierUser.GetListOwner, toBytes(p)) if err != nil { diff --git a/model/supplier_user_request.go b/model/supplier_user_request.go index 6bb81a0..0c5f69a 100644 --- a/model/supplier_user_request.go +++ b/model/supplier_user_request.go @@ -1,5 +1,22 @@ package model +type LoginUserRequest struct { + Email string `json:"email"` + Password string `json:"password"` + DeviceID string `json:"deviceId"` + AppVersion string `json:"appVersion"` + UserAgent string `json:"userAgent"` + Model string `json:"model"` + Manufacturer string `json:"manufacturer"` + IP string `json:"ip"` + Language string `json:"language"` + FCMToken string `json:"FCMToken"` + AuthToken string `json:"authToken"` + OsName string `json:"osName"` + OsVersion string `json:"osVersion"` + IsMobile bool `json:"isMobile"` +} + type GetListOwnerRequest struct { Page int `json:"page"` Limit int `json:"limit"` diff --git a/model/supplier_user_response.go b/model/supplier_user_response.go index 40549bc..5ccd787 100644 --- a/model/supplier_user_response.go +++ b/model/supplier_user_response.go @@ -1,5 +1,13 @@ package model +// LoginUserResponse ... +type LoginUserResponse struct { + ID string `json:"_id"` + Token string `json:"token"` + RequireToChangePassword bool `json:"requireToChangePassword"` + SupplierID string `json:"supplierId"` +} + type GetListOwnerResponse struct { SupplierUsers []SupplierUserBrief `json:"supplierUsers"` Total int64 `json:"total"` diff --git a/subject/supplier_user.go b/subject/supplier_user.go index 2f0e166..d7b21fa 100644 --- a/subject/supplier_user.go +++ b/subject/supplier_user.go @@ -8,6 +8,7 @@ func getSupplierUserValue(val string) string { var SupplierUser = struct { // Users + LoginUser string GetListOwner string CreateOwner string UpdateOwner string @@ -17,6 +18,7 @@ var SupplierUser = struct { ResetPassword string }{ // Users + LoginUser: getSupplierUserValue("login_user"), GetListOwner: getSupplierUserValue("get_list_owner"), CreateOwner: getSupplierUserValue("create_owner"), UpdateOwner: getSupplierUserValue("update_owner"),