package BasePurviewService import ( "context" "dsBaseRpc/Const" "dsBaseRpc/Const/ErrorConst" "dsBaseRpc/RpcService/BasePurview/BasePurviewDao" "dsBaseRpc/RpcService/BasePurview/BasePurviewProto" "dsBaseRpc/Utils/CommonUtil" "dsBaseRpc/Utils/LogUtil" "dsBaseRpc/Utils/SqlKit" "dsBaseRpc/models" "html" ) type Rpc struct{} //服务对象 //选择单条 func (s *Rpc) GetBasePurview(ctx context.Context, in *BasePurviewProto.ModelArg) (*BasePurviewProto.Reply, error) { //统一返回的结构体 var reply BasePurviewProto.Reply //通用获取单条 list := SqlKit.QueryByIds([]string{in.PurviewId}, "t_base_purview") //将结果序列化 reply.Success = true reply.Count = 1 reply.Message = Const.SuccessDataBaseAction reply.List = CommonUtil.SerializeToString(list) return &reply, nil } //增加 func (s *Rpc) AddBasePurview(ctx context.Context, in *BasePurviewProto.ModelArg) (*BasePurviewProto.Reply, error) { //rpc响应 var reply BasePurviewProto.Reply //1、检查非空 model := new(models.TBasePurview) if len(in.BusinessCode) == 0 { reply.Success = false reply.Message = "BusinessCode代码为空,不能创建!" return &reply, nil } //2、不存在允许创建 model.PurviewId = CommonUtil.GetUUID() model.PurviewName = in.PurviewName model.BusinessCode = html.EscapeString(in.BusinessCode) model.PurviewType = in.PurviewType model.MenuUrl = in.MenuUrl model.MenuIcon = in.MenuIcon model.ParentId = in.ParentId model.SortId = in.SortId if in.SortId == 0 { model.SortId = 100 } model.BUse = 1 //调用dao _, err := BasePurviewDao.AddBasePurview(*model) //错误处理 if err != nil { reply.Success = false reply.Message = "增加失败,请检查原因!" return &reply, err } reply.Success = true reply.Message = Const.SuccessDataBaseAction return &reply, nil } //删除 func (s *Rpc) DeleteBasePurview(ctx context.Context, in *BasePurviewProto.DeleteIdsArg) (*BasePurviewProto.Reply, error) { //rpc响应 var reply BasePurviewProto.Reply //调用通用删除命令进行删除 err := SqlKit.DeleteIds("t_base_purview", in.Ids) //错误处理 if err != nil { LogUtil.Error(ErrorConst.SqlUpdateError, "执行DeleteBasePurview时发生严重错误:"+err.Error()) reply.Success = false reply.Message = Const.DataBaseActionError return &reply, err } reply.Success = true reply.Message = Const.SuccessDataBaseAction return &reply, err } //修改 func (s *Rpc) UpdateBasePurview(ctx context.Context, in *BasePurviewProto.ModelArg) (*BasePurviewProto.Reply, error) { var reply BasePurviewProto.Reply model := new(models.TBasePurview) //修改 model.PurviewId = in.PurviewId model.PurviewName = in.PurviewName model.BusinessCode = in.BusinessCode model.PurviewType = in.PurviewType model.MenuUrl = in.MenuUrl model.MenuIcon = in.MenuIcon model.ParentId = in.ParentId model.SortId = in.SortId model.BUse = in.BUse _, err := BasePurviewDao.UpdateBasePurview(*model, []string{}) //错误处理 if err != nil { reply.Success = false reply.Message = Const.DataBaseActionError LogUtil.Error(ErrorConst.SqlUpdateError, "执行UpdateBasePurview时发生严重错误:"+err.Error()) return &reply, err } reply.Success = true reply.Message = Const.SuccessDataBaseAction return &reply, nil } //分页查询 func (s *Rpc) PageBasePurview(ctx context.Context, in *BasePurviewProto.QueryArg) (*BasePurviewProto.Reply, error) { var reply BasePurviewProto.Reply list, count, err := BasePurviewDao.PageBasePurview(in) //错误处理 if err != nil { reply.Success = false reply.Message = Const.DataBaseActionError LogUtil.Error(ErrorConst.SqlQueryError, "执行PageBasePurview时发生严重错误:"+err.Error()) return &reply, err } reply.Count = count reply.Success = true reply.Message = Const.SuccessDataBaseAction reply.List = CommonUtil.SerializeToString(list) return &reply, nil }