12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- package ldap
- import (
- "github.com/astaxie/beego/orm"
- "nginx-ui/server/config"
- "nginx-ui/server/models"
- "time"
- )
- type UserService struct {
- }
- // Add Update 保存或者修改
- func (c *UserService) Add(body *models.LdapUser) (*models.LdapUser, error) {
- server := models.LdapServer{
- Key: body.ServerKey,
- }
- o := orm.NewOrm()
- err := o.Read(&server, "Key")
- if err != nil {
- return nil, err
- }
- body.Uid = server.Uid
- _, err = o.Insert(body)
- if err != nil {
- return nil, err
- }
- client, err := GetActiveClient(&server)
- if err != nil {
- return nil, err
- }
- err = client.Add(body)
- if err != nil {
- return nil, err
- }
- body.LastSyncDate = time.Now()
- _, _ = o.Update(body)
- return body, nil
- }
- // get /ldap/users
- func (c *UserService) GetDetail(id int) (*models.LdapUser, error) {
- o := orm.NewOrm()
- user := models.LdapUser{Id: id}
- err := o.Read(&user, "Id")
- if err != nil {
- return nil, err
- }
- user.Password = config.ReplacePassword
- return &user, nil
- }
|