作者 tangxuhui

新增 gateway 公司、组织模块

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"
)
// CompanyCreate 创建企业
func (gateway HttplibAlliedCreationUser) CompanyCreate(param ReqCompanyCreate) (*DataCompanyCreate, error) {
url := gateway.baseUrL + "/company"
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 DataCompanyCreate
err = gateway.GetResponseData(result, &data)
return &data, err
}
//CompanyUpdate 更新企业
func (gateway HttplibAlliedCreationUser) CompanyUpdate(param ReqCompanyUpdate) (*DataCompanyUpdate, error) {
url := gateway.baseUrL + "/company/" + strconv.FormatInt(param.CompanyId, 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 DataCompanyUpdate
err = gateway.GetResponseData(result, &data)
return &data, err
}
// CompanySetCustomizeMenus 更新自定义菜单
func (gateway HttplibAlliedCreationUser) CompanySetCustomizeMenus(param ReqCompanySetCustomizeMenus) (*DataCompanySetCustomizeMenus, error) {
url := gateway.baseUrL + "/company/" + strconv.FormatInt(param.CompanyId, 10) + "/customize-menus"
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 DataCompanySetCustomizeMenus
err = gateway.GetResponseData(result, &data)
return &data, err
}
// CompanyRemove 移除企业
func (gateway HttplibAlliedCreationUser) CompanyRemove(param ReqCompanyRemove) (*DataCompanyRemove, error) {
url := gateway.baseUrL + "/company/" + strconv.FormatInt(param.CompanyId, 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 DataCompanyRemove
err = gateway.GetResponseData(result, &data)
return &data, err
}
// CompanyGet 返回企业
func (gateway HttplibAlliedCreationUser) CompanyGet(param ReqCompanyGet) (*DataCompanyGet, error) {
url := gateway.baseUrL + "/company/{companyId}"
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 DataCompanyGet
err = gateway.GetResponseData(result, &data)
return &data, err
}
// CompanySearch 返回企业列表
func (gateway HttplibAlliedCreationUser) CompanySearch(param ReqCompanySearch) (*DataCompanySearch, error) {
url := gateway.baseUrL + "/company/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 DataCompanySearch
err = gateway.GetResponseData(result, &data)
return &data, err
}
// CompanyGetCustomizeMenus 返回自定义菜单列表
func (gateway HttplibAlliedCreationUser) CompanyGetCustomizeMenus(param ReqCompanyGetCustomizeMenus) (*DataCompanyGetCustomizeMenus, error) {
url := gateway.baseUrL + "/company/" + strconv.FormatInt(param.CompanyId, 10) + "/customize-menus"
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 DataCompanyGetCustomizeMenus
err = gateway.GetResponseData(result, &data)
return &data, err
}
... ...
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"
)
// Org 创建组织
func (gateway HttplibAlliedCreationUser) OrgCreate(param ReqOrg) (*DataOrg, error) {
url := gateway.baseUrL + "/org"
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 DataOrg
err = gateway.GetResponseData(result, &data)
return &data, err
}
//OrgUpdate 更新组织
func (gateway HttplibAlliedCreationUser) OrgUpdate(param ReqOrgUpdate) (*DataOrgUpdate, error) {
url := gateway.baseUrL + "/org/" + strconv.FormatInt(param.OrgId, 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 DataOrgUpdate
err = gateway.GetResponseData(result, &data)
return &data, err
}
// Org[orgId} 移除组织
func (gateway HttplibAlliedCreationUser) OrgRemove(param ReqOrgRemove) (*DataOrgRemove, error) {
url := gateway.baseUrL + "/org/" + strconv.FormatInt(param.OrgId, 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 DataOrgRemove
err = gateway.GetResponseData(result, &data)
return &data, err
}
// Org[orgId}Sub-department 获取组织的子部门(通用部门列表使用)
func (gateway HttplibAlliedCreationUser) OrgGetSubDepartment(param ReqOrgGetSubDepartment) (*DataOrgGetSubDepartment, error) {
url := gateway.baseUrL + "/org/" + strconv.FormatInt(param.OrgId, 10) + "/sub-department"
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 DataOrgGetSubDepartment
err = gateway.GetResponseData(result, &data)
return &data, err
}
// OrgEnable 设置组织启用状态
func (gateway HttplibAlliedCreationUser) OrgEnable(param ReqOrgEnable) (*DataOrgEnable, error) {
url := gateway.baseUrL + "/org/enable"
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 DataOrgEnable
err = gateway.GetResponseData(result, &data)
return &data, err
}
// Org[orgId} 返回组织
func (gateway HttplibAlliedCreationUser) OrgGet(param ReqOrgGet) (*DataOrgGet, error) {
url := gateway.baseUrL + "/org/" + strconv.FormatInt(param.OrgId, 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 DataOrgGet
err = gateway.GetResponseData(result, &data)
return &data, err
}
// OrgSearch 返回组织列表
func (gateway HttplibAlliedCreationUser) OrgSearch(param ReqOrgSearch) (*DataOrgSearch, error) {
url := gateway.baseUrL + "/org/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 DataOrgSearch
err = gateway.GetResponseData(result, &data)
return &data, err
}
... ...
package allied_creation_user
//创建企业
type (
ReqCompanyCreate struct {
}
DataCompanyCreate struct {
}
)
//更新企业
type (
ReqCompanyUpdate struct {
CompanyId int64
}
DataCompanyUpdate struct {
}
)
//更新自定义菜单
type (
ReqCompanySetCustomizeMenus struct {
CompanyId int64
}
DataCompanySetCustomizeMenus struct {
}
)
//移除企业
type (
ReqCompanyRemove struct {
CompanyId int64
}
DataCompanyRemove struct {
}
)
//返回企业
type (
ReqCompanyGet struct {
}
DataCompanyGet struct {
}
)
//返回企业列表
type (
ReqCompanySearch struct {
}
DataCompanySearch struct {
}
)
//返回自定义菜单列表
type (
ReqCompanyGetCustomizeMenus struct {
CompanyId int64
}
DataCompanyGetCustomizeMenus struct {
}
)
... ...
package allied_creation_user
//创建组织
type (
ReqOrg struct {
}
DataOrg struct {
}
)
//更新组织
type (
ReqOrgUpdate struct {
OrgId int64
}
DataOrgUpdate struct {
}
)
//移除组织
type (
ReqOrgRemove struct {
OrgId int64
}
DataOrgRemove struct {
}
)
//获取组织的子部门(通用部门列表使用)
type (
ReqOrgGetSubDepartment struct {
OrgId int64
}
DataOrgGetSubDepartment struct {
}
)
//设置组织启用状态
type (
ReqOrgEnable struct {
}
DataOrgEnable struct {
}
)
//返回组织
type (
ReqOrgGet struct {
OrgId int64
}
DataOrgGet struct {
}
)
//返回组织列表
type (
ReqOrgSearch struct {
}
DataOrgSearch struct {
}
)
... ...