You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

76 lines
2.0 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package BaseRoleMenuService
import (
"context"
"dsBaseRpc/Const"
"dsBaseRpc/Const/ErrorConst"
"dsBaseRpc/RpcService/BaseRoleMenu/BaseRoleMenuDao"
"dsBaseRpc/RpcService/BaseRoleMenu/BaseRoleMenuProto"
"dsBaseRpc/Utils/CommonUtil"
"dsBaseRpc/Utils/LogUtil"
"dsBaseRpc/models"
"fmt"
)
type Rpc struct{} //服务对象
//获取角色菜单对应关系
func (s *Rpc) GetBaseRoleMenuCorr(ctx context.Context, in *BaseRoleMenuProto.GetCorrArg) (*BaseRoleMenuProto.Reply, error) {
//异常处理
defer func() {
if err := recover(); err != nil {
fmt.Printf("%s\n", err)
}
}()
//rpc响应
var reply BaseRoleMenuProto.Reply
list, count, err := BaseRoleMenuDao.GetBaseRoleMenuCorr(in)
//错误处理
if err != nil {
reply.Success = false
reply.Message = Const.DataBaseActionError
LogUtil.Error(ErrorConst.SqlQueryError, "执行GetBaseRoleMenuCorr时发生严重错误"+err.Error())
return &reply, err
}
reply.Count = count
reply.Success = true
reply.Message = Const.SuccessDataBaseAction
reply.List = CommonUtil.SerializeToString(list)
return &reply, nil
}
//设置角色菜单对应关系
func (s *Rpc) SetBaseRoleMenuCorr(ctx context.Context, in *BaseRoleMenuProto.SetCorrArg) (*BaseRoleMenuProto.Reply, error) {
//异常处理
defer func() {
if err := recover(); err != nil {
fmt.Printf("%s\n", err)
}
}()
//声明实体数组
modelArray := make([]models.TBaseRoleMenu, 0)
for i := 0; i < len(in.MenuIds); i++ {
model := new(models.TBaseRoleMenu)
model.Id = CommonUtil.GetUUID()
model.MenuId = in.MenuIds[i]
model.RoleId = in.RoleId
model.BUse = 1
//添加到实体数组
modelArray = append(modelArray, *model)
}
//rpc响应
var reply BaseRoleMenuProto.Reply
//批量增加
_, err := BaseRoleMenuDao.SetBaseRoleMenuCorr(modelArray)
if err != nil {
reply.Success = false
reply.Message = Const.DataBaseActionError
LogUtil.Error(ErrorConst.SqlUpdateError, "执行SetBaseRoleMenuCorr时发生严重错误"+err.Error())
} else {
reply.Success = true
reply.Message = Const.SuccessDataBaseAction
}
return &reply, nil
}