12345678910111213141516171819202122232425262728293031323334 |
- package dao
- import "github.com/pkg/errors"
- func (d *Dao) First(pi interface{}) error {
- e := d.DB.Where(pi).First(pi).Error
- return errors.Wrapf(e, "model First %v", pi)
- }
- func (d *Dao) Insert(pi interface{}) error {
- e := d.DB.Create(pi).Error
- return errors.Wrapf(e, "model Insert %v", pi)
- }
- func (d *Dao) Find(c map[string]interface{}, pi interface{}) error {
- e := d.DB.Where(c).Find(pi).Error
- return errors.Wrapf(e, "Find %v", c)
- }
- func (d *Dao) Update(c map[string]interface{}, pi interface{}) error {
- e := d.DB.Where(c).Updates(pi).Error
- return errors.Wrapf(e, "Update %v \n%v", c, pi)
- }
- func (d *Dao) UpdateAll(c map[string]interface{}, pi interface{}) error {
- e := d.DB.Where(c).Select("*").Updates(pi).Error
- return errors.Wrapf(e, "UpdateAll %v \n%v", c, pi)
- }
- func (d *Dao) Raw(sql string, args map[string]interface{}, r interface{}) error {
- e := d.DB.Raw(sql, args).Scan(r).Error
- return errors.Wrapf(e, "model Raw %s, %v", sql, args)
- }
- func (d *Dao) InsertOrUpdate(pi interface{}) {
- // d.DB.FirstOrCreate(pi)
- // d.DB.Clauses(clause.OnConflict{Columns: []clause.Column{{Name: "id"}}, DoUpdates: clause.AssignmentColumns([]string{"code"})}).Create(&nm)
- }
|