package model import ( "fmt" "github.com/zeromicro/go-zero/core/stores/sqlx" ) var _ CbServiceModel = (*customCbServiceModel)(nil) type ( // CbServiceModel is an interface to be customized, add more methods here, // and implement the added methods in customCbServiceModel. CbServiceModel interface { cbServiceModel GetServiceByOpenKfid(openKfid string) (d *CbService, err error) UpdateCursorByOpenKfid(openKfid string, cursor string) (err error) } customCbServiceModel struct { *defaultCbServiceModel } ) // NewCbServiceModel returns a model for the database table. func NewCbServiceModel(conn sqlx.SqlConn) CbServiceModel { return &customCbServiceModel{ defaultCbServiceModel: newCbServiceModel(conn), } } func (m *customCbServiceModel) GetServiceByOpenKfid(openKfid string) (d *CbService, err error) { query := fmt.Sprintf("select * from %s where `open_kfid` = ? limit 1", m.table) var resp CbService err = m.conn.QueryRow(&resp, query, openKfid) d = &resp return } func (m *customCbServiceModel) UpdateCursorByOpenKfid(openKfid string, cursor string) (err error) { query := fmt.Sprintf("update %s set `next_cursor` = ? where `open_kfid` = ?", m.table) _, err = m.conn.Exec(query, cursor, openKfid) return err }