dto.go 1.25 KB
package svmysql

func InitTable(obj IMysqlData, suffix string, notify bool) {
	info := obj.MysqlInfo(suffix)
	db := info.DbMysql
	_ = db.Table(info.TableName).AutoMigrate(obj)
}

func Create(obj IMysqlData, suffix string) (err error) {
	info := obj.MysqlInfo(suffix)
	db := info.DbMysql
	result := db.Table(info.TableName).Create(obj)

	err = result.Error
	if err != nil {
		return
	}
	return
}

func Updates(obj IMysqlData, suffix string) (err error) {
	info := obj.MysqlInfo(suffix)
	db := info.DbMysql
	result := db.Table(info.TableName).Updates(obj)

	err = result.Error
	if err != nil {
		return
	}
	return
}

func Save(obj IMysqlData, suffix string) (err error) {
	info := obj.MysqlInfo(suffix)
	db := info.DbMysql
	result := db.Table(info.TableName).Save(obj)

	err = result.Error
	if err != nil {
		return
	}
	return
}

func First(obj IMysqlData, suffix string) (has bool, err error) {
	info := obj.MysqlInfo(suffix)
	db := info.DbMysql
	result := db.Table(info.TableName).First(obj)

	has = result.RowsAffected != 0
	err = result.Error
	return
}

func Find(obj IMysqlData, suffix string) (has bool, err error) {
	info := obj.MysqlInfo(suffix)
	db := info.DbMysql
	result := db.Table(info.TableName).Find(obj)

	has = result.RowsAffected != 0
	err = result.Error
	return
}