news 2026/9/2 23:26:48

webframe generaldb 的一个优化:pageresultError等

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
webframe generaldb 的一个优化:pageresultError等
开源地址: https://gitee.com/gowebframe3/webframe.gittype BaseDao[P generaliface.GoPkey, E generaliface.IBaseModel[P]] struct { *GobaseDao[P, E] ifDebug bool *pagedb.PageDbRequest } 原先
type UiPayRequest struct { basedto.BaseEntity uibase.UiQueryRequest[int64, *payentity.PayOrderLine] }
type UiQueryRequest[P generaliface.GoPkey, E generaliface.IBaseModel[P]] struct { UiQueryParam[P, E] *generaldao.BaseDao[P, E] Token string `json:"token"` QueryDbName string `json:"queryDbName"` beforQuery func() `json:"-"` afterQuery func(E generaliface.IBaseModel[P]) `json:"-"` beforeSave func() `json:"-"` }
func (self *UiPayRequest) QueryByOrderId(payOrderId any) *pagemodel.PageResult[*payentity.PayOrderLine] { if gconv.Int64(payOrderId) == 0 {return pagemodel.ResultFailPageResult[*payentity.PayOrderLine]("payOrderId is zero") }var dao = paydao.FindBeanPayOrderLineDao() dao.DbEq("id", payOrderId) return dao.QueryModel(1) }

==》优化后:

func (self *UiPayRequest) QueryByOrderId(payOrderId any) *pagemodel.PageResult[*payentity.PayOrderLine] { if gconv.Int64(payOrderId) == 0 {return self.PageResultFail ("payOrderId is zero")} var dao = paydao.FindBeanPayOrderLineDao() dao.DbEq("id", payOrderId) return dao.QueryModel(1) }

实现:

func (self *BaseDao[P, E]) ResultData(data E) *pagemodel.IchubResult[E] { return pagemodel.ResultOk(data, true) } func (self *BaseDao[P, E]) ResultFail(msg string) *pagemodel.IchubResult[E] { return pagemodel.ResultFail[E](msg) } func (self *BaseDao[P, E]) ResultError(err error) *pagemodel.IchubResult[E] { return pagemodel.ResultErr[E](err) } func (self *BaseDao[P, E]) ResultFailUser(msg string) *pagemodel.IchubResult[E] { return pagemodel.ResultFailCode[E](33000, msg) } func (self *BaseDao[P, E]) ResultErrorUser(err error) *pagemodel.IchubResult[E] { return pagemodel.ResultFailCode[E](33000, err.Error()) } func (self *BaseDao[P, E]) ResultErrorCode(code int, err error) *pagemodel.IchubResult[E] { return pagemodel.ResultFailCode[E](code, err.Error()) } func (self *BaseDao[P, E]) ResultFailCode(code int, msg string) *pagemodel.IchubResult[E] { return pagemodel.ResultFailCode[E](code, msg) } func (self *BaseDao[P, E]) PageResultData(data []E) *pagemodel.PageResult[E] { return pagemodel.ResultOkPageResult[E](data) } func (self *BaseDao[P, E]) PageResultFail(msg string) *pagemodel.PageResult[E] { return pagemodel.ResultFailPageResult[E](msg) } func (self *BaseDao[P, E]) PageResultError(err error) *pagemodel.PageResult[E] { return pagemodel.ResultErrPageResult[E](err) } func (self *BaseDao[P, E]) PageResultFailUser(msg string) *pagemodel.PageResult[E] { return pagemodel.ResultFailPageResultCode[E](33000, msg) } func (self *BaseDao[P, E]) PageResultErrorUser(err error) *pagemodel.PageResult[E] { return pagemodel.ResultFailPageResultCode[E](33000, err.Error()) } func (self *BaseDao[P, E]) PageResultFailCode(code int, msg string) *pagemodel.PageResult[E] { return pagemodel.ResultFailPageResultCode[E](code, msg) } func (self *BaseDao[P, E]) PageResultErrorCode(code int, err error) *pagemodel.PageResult[E] { return pagemodel.ResultFailPageResultCode[E](code, err.Error()) }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/31 12:54:32

Open-AutoGLM高效应用全解析(AI编程新纪元)

第一章:Open-AutoGLM高效应用全解析(AI编程新纪元)Open-AutoGLM 是新一代开源自动代码生成框架,融合了大语言模型与工程化编程逻辑,专为提升开发者在复杂项目中的编码效率而设计。其核心能力在于理解上下文语义并自动生…

作者头像 李华
网站建设 2026/8/29 23:52:47

Open-AutoGLM vs 传统自动化工具:谁才是未来UI测试的王者?

第一章:Open-AutoGLM可以做ui自动化吗Open-AutoGLM 是一个基于大语言模型的开源自动化框架,专注于将自然语言指令转化为可执行的自动化任务。尽管其核心设计偏向于通用任务自动化和流程编排,但通过扩展集成,它具备实现UI自动化的潜…

作者头像 李华
网站建设 2026/9/1 4:33:09

如何快速下载Notion Android版:高效移动办公新体验

如何快速下载Notion Android版:高效移动办公新体验 【免费下载链接】NotionAndroid版本下载指南 Notion Android版本下载指南本仓库提供Notion软件的Android版本下载资源,帮助用户轻松获取并安装Notion应用 项目地址: https://gitcode.com/Resource-Bu…

作者头像 李华
网站建设 2026/9/2 22:43:50

PDFMathTranslate:如何用AI工具3分钟搞定专业论文翻译?

PDFMathTranslate:如何用AI工具3分钟搞定专业论文翻译? 【免费下载链接】PDFMathTranslate PDF scientific paper translation with preserved formats - 基于 AI 完整保留排版的 PDF 文档全文双语翻译,支持 Google/DeepL/Ollama/OpenAI 等服…

作者头像 李华
网站建设 2026/8/29 0:25:23

Python依赖冲突导致Open-AutoGLM启动失败?这4个修复方案你必须掌握

第一章:Windows如何运行Open-AutoGLM 在Windows系统上部署和运行Open-AutoGLM,需确保环境依赖正确配置。该模型基于Python构建,依赖特定版本的PyTorch与Transformers库,建议使用虚拟环境隔离依赖以避免冲突。 环境准备 安装Pyth…

作者头像 李华