|
|
package allied_creation_user
|
|
|
|
|
|
import (
|
|
|
"encoding/json"
|
|
|
"fmt"
|
|
|
"strconv"
|
|
|
|
|
|
"gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/infrastructure/service_gateway"
|
|
|
"gitlab.fjmaimaimai.com/allied-creation/allied-creation-gateway/pkg/log"
|
|
|
)
|
|
|
|
|
|
// MenusCreate 创建菜单
|
|
|
func (gateway HttplibAlliedCreationUser) MenusCreate(param ReqMenus) (*DataMenus, error) {
|
|
|
url := gateway.baseUrL + "/menus"
|
|
|
method := "post"
|
|
|
req := gateway.CreateRequest(url, method)
|
|
|
log.Logger.Debug("向用户模块请求数据:创建菜单。", map[string]interface{}{
|
|
|
"api": method + ":" + url,
|
|
|
"param": param,
|
|
|
})
|
|
|
req, err := req.JSONBody(param)
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("请求创建菜单失败:%w", err)
|
|
|
}
|
|
|
|
|
|
byteResult, err := req.Bytes()
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("获取创建菜单失败:%w", err)
|
|
|
}
|
|
|
log.Logger.Debug("获取用户模块请求数据:创建菜单。", map[string]interface{}{
|
|
|
"result": string(byteResult),
|
|
|
})
|
|
|
var result service_gateway.GatewayResponse
|
|
|
err = json.Unmarshal(byteResult, &result)
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("解析创建菜单:%w", err)
|
|
|
}
|
|
|
var data DataMenus
|
|
|
err = gateway.GetResponseData(result, &data)
|
|
|
return &data, err
|
|
|
}
|
|
|
|
|
|
// MenusUpdate 更新菜单
|
|
|
func (gateway HttplibAlliedCreationUser) MenusUpdate(param ReqMenusUpdate) (*DataMenusUpdate, error) {
|
|
|
url := gateway.baseUrL + "/menus/" + strconv.FormatInt(param.MenusId, 10)
|
|
|
method := "put"
|
|
|
req := gateway.CreateRequest(url, method)
|
|
|
log.Logger.Debug("向用户模块请求数据:更新菜单。", map[string]interface{}{
|
|
|
"api": method + ":" + url,
|
|
|
"param": param,
|
|
|
})
|
|
|
req, err := req.JSONBody(param)
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("请求更新菜单失败:%w", err)
|
|
|
}
|
|
|
|
|
|
byteResult, err := req.Bytes()
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("获取更新菜单失败:%w", err)
|
|
|
}
|
|
|
log.Logger.Debug("获取用户模块请求数据:更新菜单。", map[string]interface{}{
|
|
|
"result": string(byteResult),
|
|
|
})
|
|
|
var result service_gateway.GatewayResponse
|
|
|
err = json.Unmarshal(byteResult, &result)
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("解析更新菜单:%w", err)
|
|
|
}
|
|
|
var data DataMenusUpdate
|
|
|
err = gateway.GetResponseData(result, &data)
|
|
|
return &data, err
|
|
|
}
|
|
|
|
|
|
// MenusRemove 移除菜单
|
|
|
func (gateway HttplibAlliedCreationUser) MenusRemove(param ReqMenusRemove) (*DataMenusRemove, error) {
|
|
|
url := gateway.baseUrL + "/menus/" + strconv.FormatInt(param.RoleId, 10)
|
|
|
method := "delete"
|
|
|
req := gateway.CreateRequest(url, method)
|
|
|
log.Logger.Debug("向用户模块请求数据:移除菜单。", map[string]interface{}{
|
|
|
"api": method + ":" + url,
|
|
|
"param": param,
|
|
|
})
|
|
|
req, err := req.JSONBody(param)
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("请求移除菜单失败:%w", err)
|
|
|
}
|
|
|
|
|
|
byteResult, err := req.Bytes()
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("获取移除菜单失败:%w", err)
|
|
|
}
|
|
|
log.Logger.Debug("获取用户模块请求数据:移除菜单。", map[string]interface{}{
|
|
|
"result": string(byteResult),
|
|
|
})
|
|
|
var result service_gateway.GatewayResponse
|
|
|
err = json.Unmarshal(byteResult, &result)
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("解析移除菜单:%w", err)
|
|
|
}
|
|
|
var data DataMenusRemove
|
|
|
err = gateway.GetResponseData(result, &data)
|
|
|
return &data, err
|
|
|
}
|
|
|
|
|
|
// MenusGet 返回菜单
|
|
|
func (gateway HttplibAlliedCreationUser) MenusGet(param ReqMenusGet) (*DataMenusGet, error) {
|
|
|
url := gateway.baseUrL + "/menus/" + strconv.FormatInt(param.MenuId, 10)
|
|
|
method := "get"
|
|
|
req := gateway.CreateRequest(url, method)
|
|
|
log.Logger.Debug("向用户模块请求数据:返回菜单。", map[string]interface{}{
|
|
|
"api": method + ":" + url,
|
|
|
"param": param,
|
|
|
})
|
|
|
req, err := req.JSONBody(param)
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("请求返回菜单失败:%w", err)
|
|
|
}
|
|
|
|
|
|
byteResult, err := req.Bytes()
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("获取返回菜单失败:%w", err)
|
|
|
}
|
|
|
log.Logger.Debug("获取用户模块请求数据:返回菜单。", map[string]interface{}{
|
|
|
"result": string(byteResult),
|
|
|
})
|
|
|
var result service_gateway.GatewayResponse
|
|
|
err = json.Unmarshal(byteResult, &result)
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("解析返回菜单:%w", err)
|
|
|
}
|
|
|
var data DataMenusGet
|
|
|
err = gateway.GetResponseData(result, &data)
|
|
|
return &data, err
|
|
|
}
|
|
|
|
|
|
// MenusSearch 返回菜单列表
|
|
|
func (gateway HttplibAlliedCreationUser) MenusSearch(param ReqMenusSearch) (*DataMenusSearch, error) {
|
|
|
url := gateway.baseUrL + "/menus/search"
|
|
|
method := "post"
|
|
|
req := gateway.CreateRequest(url, method)
|
|
|
log.Logger.Debug("向用户模块请求数据:返回菜单列表。", map[string]interface{}{
|
|
|
"api": method + ":" + url,
|
|
|
"param": param,
|
|
|
})
|
|
|
req, err := req.JSONBody(param)
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("请求返回菜单列表失败:%w", err)
|
|
|
}
|
|
|
|
|
|
byteResult, err := req.Bytes()
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("获取返回菜单列表失败:%w", err)
|
|
|
}
|
|
|
log.Logger.Debug("获取用户模块请求数据:返回菜单列表。", map[string]interface{}{
|
|
|
"result": string(byteResult),
|
|
|
})
|
|
|
var result service_gateway.GatewayResponse
|
|
|
err = json.Unmarshal(byteResult, &result)
|
|
|
if err != nil {
|
|
|
return nil, fmt.Errorf("解析返回菜单列表:%w", err)
|
|
|
}
|
|
|
var data DataMenusSearch
|
|
|
err = gateway.GetResponseData(result, &data)
|
|
|
return &data, err
|
|
|
} |
...
|
...
|
|