sysuser.go 2.2KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. package sysuser
  2. import (
  3. "strconv"
  4. "time"
  5. "wechat-conf/models"
  6. "wechat-conf/models/model"
  7. "wechat-conf/utils"
  8. "github.com/go-xorm/xorm"
  9. )
  10. // SysuserDAO 当前数据库操作对象
  11. type SysuserDAO struct {
  12. ctx *utils.Context
  13. db *xorm.Session
  14. }
  15. // NewSysuserDAO New Inst
  16. func NewSysuserDAO(ctx *utils.Context) *SysuserDAO {
  17. return &SysuserDAO{
  18. ctx: ctx,
  19. db: ctx.DB,
  20. }
  21. }
  22. func (m *SysuserDAO) GetSysuserList(page, pageSize int) ([]model.SysUser, error) {
  23. var user []model.SysUser
  24. sql := `SELECT * from sys_user WHERE status >` + strconv.Itoa(models.STATUS_DEL) + `
  25. order by create_date desc limit ` + strconv.Itoa((page-1)*pageSize) + `, ` + strconv.Itoa(pageSize)
  26. err := m.db.Sql(sql).Find(&user)
  27. return user, err
  28. }
  29. func (m *SysuserDAO) GetSysuserListCount() (int, error) {
  30. var user []model.SysUser
  31. sql := `SELECT * from sys_user WHERE status >` + strconv.Itoa(models.STATUS_DEL)
  32. err := m.db.Sql(sql).Find(&user)
  33. return len(user), err
  34. }
  35. func (m *SysuserDAO) GetSysuserById(userId string) (*model.SysUser, error) {
  36. var user []model.SysUser
  37. sql := `SELECT * from sys_user WHERE status >` + strconv.Itoa(models.STATUS_DEL) + `
  38. and user_id = '` + userId + `'`
  39. err := m.db.Sql(sql).Find(&user)
  40. if len(user) > 0 {
  41. return &user[0], err
  42. }
  43. return nil, err
  44. }
  45. func (m *SysuserDAO) AddUser(user model.SysUser) (*model.SysUser, error) {
  46. user.CreateDate = time.Now()
  47. user.Status = models.STATUS_NORMAL
  48. _, err := m.db.Insert(user)
  49. return &user, err
  50. }
  51. func (m *SysuserDAO) DeleteUser(userId string) error {
  52. var user = model.SysUser{
  53. UserId: userId,
  54. Status: models.STATUS_DEL,
  55. }
  56. var cols = []string{
  57. "status",
  58. }
  59. _, err := m.db.Cols(cols...).Where("user_id = ?", user.UserId).Update(user)
  60. return err
  61. }
  62. func (m *SysuserDAO) EditUser(user model.SysUser) error {
  63. var cols = []string{
  64. "user_name",
  65. "real_name",
  66. "phone",
  67. "email",
  68. "head_imgurl",
  69. }
  70. _, err := m.db.Cols(cols...).Where("user_id = ?", user.UserId).Update(user)
  71. return err
  72. }
  73. func (m *SysuserDAO) BindUserToOrg(userId, orgId string) error {
  74. var user = model.SysUser{
  75. UserId: userId,
  76. OrgId: orgId,
  77. }
  78. var cols = []string{
  79. "org_id",
  80. }
  81. _, err := m.db.Cols(cols...).Where("user_id=?", user.UserId).Update(user)
  82. return err
  83. }