fusenapi/model/gmodel/ldap_users_logic.go

22 lines
526 B
Go
Raw Normal View History

2023-11-10 07:24:25 +00:00
package gmodel
import (
"context"
"errors"
"gorm.io/gorm"
)
// TODO: 使用model的属性做你想做的
2023-11-10 07:53:46 +00:00
func (u *LdapUsersModel) CreateOrUpdate(ctx context.Context, openId string, data *LdapUsers) error {
2023-11-10 07:24:25 +00:00
var info LdapUsers
2023-11-10 07:53:46 +00:00
err := u.db.WithContext(ctx).Where("open_id = ?", openId).Take(&info).Error
2023-11-10 07:24:25 +00:00
if err != nil {
if errors.Is(err, gorm.ErrRecordNotFound) {
return u.db.WithContext(ctx).Create(&data).Error
}
return err
}
2023-11-10 07:53:46 +00:00
return u.db.WithContext(ctx).Where("open_id = ?", openId).Updates(&data).Error
2023-11-10 07:24:25 +00:00
}