excel_classify.go 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. package excel
  2. import (
  3. "eta/eta_index_lib/global"
  4. "time"
  5. )
  6. // ExcelClassify excel表格分类
  7. type ExcelClassify struct {
  8. ExcelClassifyId int `gorm:"primaryKey;autoIncrement;column:excel_classify_id" description:"表格分类ID"`
  9. Source int `gorm:"column:source" description:"表格来源,1:excel插件的表格,2:自定义表格,3:混合表格,4:自定义分析,默认:1"`
  10. ExcelClassifyName string `gorm:"column:excel_classify_name" description:"分类名称"`
  11. ParentId int `gorm:"column:parent_id" description:"父级id"`
  12. SysUserId int `gorm:"column:sys_user_id" description:"创建人id"`
  13. SysUserRealName string `gorm:"column:sys_user_real_name" description:"创建人姓名"`
  14. Level int `gorm:"column:level" description:"层级"`
  15. UniqueCode string `gorm:"column:unique_code" description:"唯一编码"`
  16. Sort int `gorm:"column:sort" description:"排序字段,越小越靠前,默认值:10"`
  17. IsDelete int `gorm:"column:is_delete" description:"是否删除,0:未删除,1:已删除(注意:这里的描述可能与原字段名IsDelete的注释不完全一致,已根据常见用法调整)"`
  18. CreateTime time.Time `gorm:"column:create_time" description:"创建时间"`
  19. ModifyTime time.Time `gorm:"column:modify_time" description:"修改时间"`
  20. }
  21. // AddExcelClassify 添加excel分类
  22. func AddExcelClassify(item *ExcelClassify) (lastId int64, err error) {
  23. err = global.DEFAULT_DB.Create(item).Error
  24. if err != nil {
  25. return
  26. }
  27. lastId = int64(item.ExcelClassifyId)
  28. return
  29. }
  30. type ExcelClassifyItems struct {
  31. ExcelClassifyId int `description:"分类id"`
  32. ExcelInfoId int `description:"表格id"`
  33. ExcelClassifyName string
  34. ParentId int
  35. Level int `description:"层级"`
  36. Sort int `description:"排序字段,越小越靠前,默认值:10"`
  37. UniqueCode string `description:"唯一编码"`
  38. SysUserId int `description:"创建人id"`
  39. SysUserRealName string `description:"创建人姓名"`
  40. StartDate string `description:"自定义开始日期"`
  41. Children []*ExcelClassifyItems
  42. }
  43. // GetExcelClassifyByParentId
  44. // @Description: 根据父级分类id获取指标下面的分类列表
  45. // @author: Roc
  46. // @datetime2023-10-30 13:46:35
  47. // @param parentId int
  48. // @param source int
  49. // @return items []*ExcelClassifyItems
  50. // @return err error
  51. func GetExcelClassifyByParentId(parentId, source int) (items []*ExcelClassifyItems, err error) {
  52. sql := ` SELECT * FROM excel_classify WHERE parent_id=? AND source = ? AND is_delete=0 order by sort asc,excel_classify_id asc`
  53. err = global.DEFAULT_DB.Raw(sql, parentId, source).Find(&items).Error
  54. return
  55. }