From 7bd36813d1351283d9159653f08fcb1e2800a233 Mon Sep 17 00:00:00 2001 From: davish <1114145341@qq.com> Date: Sun, 29 Dec 2024 12:52:53 +0800 Subject: [PATCH] Added `MySQLResult::Handle()` --- app/kernel/conn/mysql.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/app/kernel/conn/mysql.go b/app/kernel/conn/mysql.go index 06b084d..e5fd3df 100644 --- a/app/kernel/conn/mysql.go +++ b/app/kernel/conn/mysql.go @@ -1,6 +1,7 @@ package conn import ( + "errors" "github.com/zeromicro/go-zero/core/stores/sqlx" //"gorm.io/driver/mysql" //"gorm.io/gorm" @@ -19,3 +20,19 @@ func InitMySQL() { //func NewGormDryRunSession() *gorm.DB { // return Gorm.Session(&gorm.Session{DryRun: true}) //} + +type MySQLResult[T any] struct { + Result T + Err error +} + +func (m MySQLResult[T]) Handle() (*T, error) { + switch { + case m.Err == nil: + return &m.Result, nil + case errors.Is(m.Err, sqlx.ErrNotFound): + return nil, nil + default: + return nil, m.Err + } +}