sys_group.go 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. package eta
  2. import (
  3. "eta/eta_bridge/global"
  4. "time"
  5. )
  6. type SysGroup struct {
  7. GroupId int `gorm:"primaryKey;column:group_id;type:int(11);not null" json:"group_id"`
  8. DepartmentId int `gorm:"index:idx_department_id;column:department_id;type:int(11)" json:"department_id"` // 部门id
  9. GroupName string `gorm:"column:group_name;type:varchar(255);default:''" json:"group_name"` // 分组名称
  10. CreateTime time.Time `gorm:"column:create_time;type:datetime" json:"create_time"`
  11. ParentId int `gorm:"column:parent_id;type:int(11);default:0" json:"parent_id"`
  12. Sort int `gorm:"column:sort;type:int(10);not null;default:0" json:"sort"` // 排序
  13. OutID string `gorm:"column:out_id" json:"out_id"` // 外部id
  14. }
  15. func (m *SysGroup) TableName() string {
  16. return "sys_group"
  17. }
  18. // Create 新增分组
  19. func (m *SysGroup) Create() (err error) {
  20. err = global.MYSQL["hz_eta"].Create(m).Error
  21. return
  22. }
  23. // Update 更新分组
  24. func (m *SysGroup) Update(cols []string) (err error) {
  25. err = global.MYSQL["hz_eta"].Model(m).Select(cols).Updates(m).Error
  26. return
  27. }
  28. // GetSysGroupByGroupId 获取分组-根据主键
  29. func GetSysGroupByGroupId(groupId int) (item *SysGroup, err error) {
  30. err = global.MYSQL["hz_eta"].Where("group_id = ?", groupId).First(&item).Error
  31. return
  32. }
  33. // GetAllSysGroup 获取所有的分组
  34. func GetAllSysGroup() (items []*SysGroup, err error) {
  35. err = global.MYSQL["hz_eta"].Find(&items).Error
  36. return
  37. }
  38. // DeleteGroupByGroupId 删除分组-根据主键
  39. func DeleteGroupByGroupId(groupId int) (err error) {
  40. sql := `DELETE FROM sys_group WHERE group_id = ? LIMIT 1`
  41. err = global.MYSQL["hz_eta"].Exec(sql, groupId).Error
  42. if err != nil {
  43. return
  44. }
  45. // 清除关联
  46. sql = `UPDATE admin SET group_id = 0, group_name = '' WHERE group_id = ? `
  47. err = global.MYSQL["hz_eta"].Exec(sql, groupId).Error
  48. return
  49. }