sys_dept.go 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. package model
  2. import (
  3. "time"
  4. "ulink-admin/pkg/base"
  5. )
  6. // SysDept 部门结构体
  7. type SysDept struct {
  8. Id int64 `xorm:"pk autoincr comment('主键')" json:"id"`
  9. Ancestors string `xorm:"varchar(50) comment('祖级列表')" json:"ancestors"`
  10. DeptName string `xorm:"varchar(128) comment('部门名称')" json:"name" binding:"required"`
  11. OrderNum int `xorm:"int(10) comment('显示顺序')" json:"orderNum" binding:"gte=0"`
  12. Leader int64 `xorm:"varchar(20) comment('负责人')" json:"leader" `
  13. ParentId int64 `xorm:"bigint(20) comment('上级部门id')" json:"parentId" binding:"gte=0"`
  14. Phone string `xorm:"varchar(11) comment('联系电话')" json:"phone"`
  15. Status int `xorm:"int(1) comment('部门状态(0正常 1停用)')" json:"status"`
  16. Email string `xorm:"varchar(50) comment('电子邮件')" json:"email"`
  17. DelFlag string `xorm:"char(1) default('0') comment('删除标志(0代表存在 2代表删除)')" json:"delFlag"`
  18. CreateTime time.Time `xorm:"created comment('创建时间')" json:"createTime"` //创建时间
  19. CreateBy string `json:"createBy comment('创建人')"` //创建人
  20. UpdateTime time.Time `json:"updateTime comment('更新时间')"` //更新时间
  21. UpdateBy string `json:"updateBy comment('更新人')"` //更新人
  22. CompanyId int64 `excel:"name=公司Id" xorm:"bigint(20)" json:"companyId" ` //公司Id
  23. }
  24. func (d SysDept) GetLabel() string {
  25. return d.DeptName
  26. }
  27. func (d SysDept) GetId() int64 {
  28. return d.Id
  29. }
  30. func (d SysDept) GetParentId() int64 {
  31. return d.ParentId
  32. }
  33. func (d SysDept) GetData() interface{} {
  34. return d
  35. }
  36. func (d SysDept) IsRoot() bool {
  37. return d.ParentId == 0 || d.ParentId == d.Id
  38. }
  39. func (SysDept) TableName() string {
  40. return "sys_dept"
  41. }
  42. func (r *SysDept) BeforeUpdate() {
  43. user := base.GetCurUser()
  44. if user != nil {
  45. r.UpdateBy = user.Name
  46. }
  47. if user.ComponyId > 0 {
  48. r.CompanyId = user.ComponyId
  49. }
  50. }
  51. func (r *SysDept) BeforeInsert() {
  52. user := base.GetCurUser()
  53. if user != nil {
  54. r.CreateBy = user.Name
  55. r.UpdateBy = user.Name
  56. }
  57. if user.ComponyId > 0 {
  58. r.CompanyId = user.ComponyId
  59. }
  60. }