github.com/NpoolPlatform/chain-middleware@v0.0.0-20240228100535-eb1bcf896eb9/pkg/mw/tx/exist.go (about) 1 package tx 2 3 import ( 4 "context" 5 6 txcrud "github.com/NpoolPlatform/chain-middleware/pkg/crud/tx" 7 "github.com/NpoolPlatform/chain-middleware/pkg/db" 8 "github.com/NpoolPlatform/chain-middleware/pkg/db/ent" 9 enttran "github.com/NpoolPlatform/chain-middleware/pkg/db/ent/tran" 10 ) 11 12 func (h *Handler) ExistTx(ctx context.Context) (bool, error) { 13 exist := false 14 var err error 15 16 err = db.WithClient(ctx, func(_ctx context.Context, cli *ent.Client) error { 17 exist, err = cli. 18 Tran. 19 Query(). 20 Where( 21 enttran.EntID(*h.EntID), 22 enttran.DeletedAt(0), 23 ). 24 Exist(_ctx) 25 if err != nil { 26 return err 27 } 28 return nil 29 }) 30 if err != nil { 31 return false, err 32 } 33 return exist, nil 34 } 35 36 func (h *Handler) ExistTxConds(ctx context.Context) (bool, error) { 37 exist := false 38 err := db.WithClient(ctx, func(_ctx context.Context, cli *ent.Client) error { 39 stm, err := txcrud.SetQueryConds(cli.Tran.Query(), h.Conds) 40 if err != nil { 41 return err 42 } 43 exist, err = stm.Exist(_ctx) 44 if err != nil { 45 return err 46 } 47 return nil 48 }) 49 if err != nil { 50 return false, err 51 } 52 return exist, nil 53 }