company_permission.go 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. package company
  2. import (
  3. "eta_gn/eta_api/global"
  4. "time"
  5. )
  6. //type ChartPermission struct {
  7. // ChartPermissionId int `description:"权限id"`
  8. // ChartPermissionName string `description:"权限名称(旧)"`
  9. // PermissionName string `description:"权限名称"`
  10. // Sort int `description:"排序"`
  11. // Enabled int `description:"是否可用"`
  12. // CreatedTime time.Time `description:"创建时间"`
  13. // LastUpdatedTime time.Time `description:"最后更新时间"`
  14. // TeleconferenceSort int `description:"电话会排序"`
  15. // Remark string `description:"备注"`
  16. // ClassifyName string `description:"分类"`
  17. // PermissionType int `description:"1主观,2客观"`
  18. // Checked bool `description:"选中状态"`
  19. //}
  20. type ChartPermission struct {
  21. ChartPermissionId int `gorm:"primaryKey;column:chart_permission_id;type:bigint(20) unsigned;not null"` // 主键
  22. ChartPermissionName string `gorm:"column:chart_permission_name;type:varchar(20)"` // 名称
  23. PermissionName string `gorm:"column:permission_name;type:varchar(50);default:''"` // 权限名
  24. Sort int `gorm:"column:sort;type:int(10);default:1"` // 排序
  25. Enabled int `gorm:"column:enabled;type:tinyint(1);default:1"` // 是否可用
  26. CreatedTime time.Time `gorm:"index:created_time;column:created_time;type:datetime;default:CURRENT_TIMESTAMP"` // 创建时间
  27. LastUpdatedTime time.Time `gorm:"index:last_updated_time;column:last_updated_time;type:timestamp;not null;default:CURRENT_TIMESTAMP"`
  28. TeleconferenceSort int `gorm:"column:teleconference_sort;type:int(4);default:0"` // 电话会类型排序
  29. Remark string `gorm:"column:remark;type:varchar(30)"`
  30. ClassifyName string `gorm:"column:classify_name;type:varchar(50)"`
  31. ProductName string `gorm:"column:product_name;type:varchar(50);default:''"`
  32. ProductId int `gorm:"column:product_id;type:int(11);default:0"`
  33. ImageURL string `gorm:"column:image_url;type:varchar(255)"` // 图片地址
  34. ShowType int `gorm:"column:show_type;type:tinyint(4);default:0"` // 1:查研观向小程序展示
  35. IsOther int `gorm:"column:is_other;type:tinyint(2);not null;default:0"` // 是否是其他,用于查研观向小程序后台展示
  36. IsReport int `gorm:"index:is_report;column:is_report;type:tinyint(4);not null;default:0"` // 是否是报告,用于查研观向小程序前台报告展示
  37. CygxAuth int `gorm:"column:cygx_auth;type:tinyint(4);not null;default:0"` // 是否是权限,用于查研观向小程序前台权限校验
  38. PermissionType int `gorm:"column:permission_type;type:tinyint(2) unsigned;not null;default:0"` // 1主观,2客观
  39. YbImgURL string `gorm:"column:yb_img_url;type:varchar(255)"` // 研报小程序报告列表icon
  40. ProductPermissionName string `gorm:"column:product_permission_name;type:varchar(50);default:''"` // 种类权限名称
  41. PriceDrivenState int `gorm:"column:price_driven_state;type:tinyint(4);not null;default:1"` // 品种价格驱动状态 0-关闭 1-开启
  42. ImageURLM string `gorm:"column:image_url_m;type:varchar(255)"` // 图片地址(查研观向移动端)
  43. ParentId int `gorm:"column:parent_id;type:int(11);not null;default:0"` // 父级权限id
  44. IsPublic int `gorm:"column:is_public;type:tinyint(4);not null;default:0"` // 是否是公有权限1:公有权限,0私有权限
  45. Checked bool `description:"选中状态" gorm:"-"`
  46. }
  47. type PermissionSetItem struct {
  48. ChartPermissionId int `description:"权限id"`
  49. PermissionName string `description:"权限名称"`
  50. PermissionType int `description:"1主观,2客观"`
  51. Checked bool `description:"选中状态"`
  52. Child []*PermissionSetItem `description:"具体的主客观-方便前端的排版用的"`
  53. }
  54. type PermissionSetItemType struct {
  55. PermissionName string `description:"权限名称"`
  56. Checked bool `description:"选中状态"`
  57. CheckedMinate bool `description:"不确定状态"`
  58. NoClicking bool `description:"是否禁止点击"`
  59. Items []*PermissionLookItem
  60. }
  61. type PermissionSetList struct {
  62. PermissionName string `description:"分类"`
  63. Child []*PermissionSetItem
  64. CheckList []int
  65. }
  66. type PermissionSetListType struct {
  67. PermissionName string `description:"分类"`
  68. Child []*PermissionSetItemType
  69. CheckList []int
  70. }
  71. type PermissionSetResp struct {
  72. List []*PermissionSetList
  73. //ListUpgrade []*PermissionSetList `description:"升级权限列表"`
  74. ListType []*PermissionSetListType `description:"主观客观列表"`
  75. }
  76. //func GetPermissionSetItems(productId int, classifyName string) (items []*PermissionSetItem, err error) {
  77. // o := orm.NewOrmUsingDB("rddp")
  78. // sql := ` SELECT * FROM chart_permission WHERE enabled=1 AND product_id=? AND classify_name=? AND permission_type=0 ORDER BY sort ASC `
  79. // _, err = o.Raw(sql, productId, classifyName).QueryRows(&items)
  80. // return
  81. //}
  82. type PermissionLookItem struct {
  83. ChartPermissionId int `description:"权限id"`
  84. PermissionName string `description:"权限名称"`
  85. StartDate string `description:"权限开始日期"`
  86. EndDate string `description:"权限结束日期"`
  87. Status string `description:"'正式','试用','关闭'"`
  88. ExpireDay string `description:"到期天数"`
  89. ClassifyName string `description:"分类"`
  90. PermissionType int `description:"1主观,2客观"`
  91. PermissionTypeName string `description:"主观、客观"`
  92. Checked bool `description:"选中状态"`
  93. Remark string `description:"备注"`
  94. IsMerge bool `description:"是否合并行业, 给前端的标识, 暂时仅权益使用"`
  95. RaiBothHas bool `description:"权益-是否主客观都有"`
  96. IsUpgrade int `description:"是否升级,1是,0否"`
  97. Child []*PermissionLookItem `description:"子权限"`
  98. }
  99. type PermissionVarietyResp struct {
  100. List []*PermissionVarietyList
  101. }
  102. //type PermissionVarietyItem struct {
  103. // ChartPermissionId int `description:"权限id"`
  104. // ClassifyName string `orm:"column(permission_name)" description:"权限名称"`
  105. //}
  106. type PermissionVarietyItem struct {
  107. ChartPermissionId int `gorm:"column:chart_permission_id;type:bigint(20) unsigned;not null"`
  108. ClassifyName string `gorm:"column:classify_name;type:varchar(50)"`
  109. }
  110. type PermissionVarietyList struct {
  111. ChartPermissionId int `description:"父级id"`
  112. ClassifyName string `description:"分类"`
  113. Items []*PermissionVarietyItem
  114. }
  115. func GetPermissionVarietyItems(productId int, classifyName string) (items []*PermissionVarietyItem, err error) {
  116. //o := orm.NewOrmUsingDB("rddp")
  117. //sql := ` SELECT * FROM chart_permission WHERE enabled=1 AND product_id=? AND classify_name=? GROUP BY permission_name ORDER BY sort ASC `
  118. //_, err = o.Raw(sql, productId, classifyName).QueryRows(&items)
  119. sql := ` SELECT * FROM chart_permission WHERE enabled=1 AND product_id=? AND classify_name=? GROUP BY permission_name ORDER BY sort ASC `
  120. err = global.DmSQL["rddp"].Raw(sql, productId, classifyName).Find(&items).Error
  121. return
  122. }
  123. // GetChartPermissionListById 根据权限id获取产品权限详情
  124. func GetChartPermissionListById(chartPermissionId int) (item *ChartPermission, err error) {
  125. //o := orm.NewOrmUsingDB("rddp")
  126. //sql := `SELECT * FROM chart_permission WHERE chart_permission_id =? `
  127. //err = o.Raw(sql, chartPermissionId).QueryRow(&item)
  128. sql := `SELECT * FROM chart_permission WHERE chart_permission_id =? `
  129. err = global.DmSQL["rddp"].Raw(sql, chartPermissionId).First(&item).Error
  130. return
  131. }
  132. func GetParentIdFromGroup(gid int) (items *int, err error) {
  133. //o := orm.NewOrm()
  134. //sql := `SELECT parent_id FROM sys_group WHERE group_id=? `
  135. //err = o.Raw(sql, gid).QueryRow(&items)
  136. sql := `SELECT parent_id FROM sys_group WHERE group_id=? `
  137. err = global.DEFAULT_DmSQL.Raw(sql, gid).Scan(&items).Error
  138. return
  139. }
  140. func GetGroupNamesById(gid int) (items *string, err error) {
  141. //o := orm.NewOrm()
  142. //sql := `SELECT group_name FROM sys_group WHERE group_id=? `
  143. //err = o.Raw(sql, gid).QueryRow(&items)
  144. sql := `SELECT group_name FROM sys_group WHERE group_id=? `
  145. err = global.DEFAULT_DmSQL.Raw(sql, gid).Scan(&items).Error
  146. return
  147. }