data_manage_permission.go 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
  1. package data
  2. import (
  3. "eta/eta_api/models/data_manage"
  4. )
  5. // SetEdbChartPermission
  6. // @Description: 单独给资产(指标、图表、ETA表格)设置权限
  7. // @author: Roc
  8. // @datetime 2024-03-27 10:52:32
  9. // @param source int
  10. // @param subSource int
  11. // @param userId int
  12. // @param userList []int
  13. // @param isSelectAll bool
  14. // @param dataId []string
  15. // @param noDataId []string
  16. // @param keyword string
  17. // @param classify string
  18. // @return err error
  19. // @return errMsg string
  20. func SetEdbChartPermission(source, subSource, userId int, userList []int, isSelectAll bool, dataId, noDataId []string, keyword, classify string) (err error, errMsg string) {
  21. // TODO 消息通知
  22. // 如果勾选全部数据,那么
  23. if isSelectAll {
  24. // 找出不要的指标ID列表
  25. noDataIdMap := make(map[string]string, 0)
  26. for _, v := range noDataId {
  27. noDataIdMap[v] = v
  28. }
  29. // 需要转义的指标/图表ID列表
  30. dataId = make([]string, 0)
  31. // 获取所有指标/图表
  32. list, _, tmpErr := GetMoveEdbChartList(source, subSource, userId, keyword, classify, 0, 100000)
  33. if tmpErr != nil {
  34. err = tmpErr
  35. return
  36. }
  37. for _, v := range list {
  38. if _, ok := noDataIdMap[v.DataId]; !ok {
  39. dataId = append(dataId, v.DataId)
  40. }
  41. }
  42. }
  43. if len(userList) <= 0 {
  44. // 说明是取消权限管控
  45. }
  46. switch source {
  47. case 3, 4: //ETA指标库、ETA预测指标
  48. //tmpList, tmpErr := data_manage.GetEdbInfoListGroupByUserId(dataId)
  49. //if tmpErr != nil {
  50. // err = tmpErr
  51. // return
  52. //}
  53. //if len(tmpList) > 0 {
  54. //}
  55. // 重新设置权限
  56. err = data_manage.SetPermissionEdbChartByEdbIdList(dataId, userList)
  57. //case 5: //图库
  58. // tmpList, tmpErr := data_manage.GetChartInfoListGroupByUserId(dataId)
  59. // if tmpErr != nil {
  60. // err = tmpErr
  61. // return
  62. // }
  63. // if len(tmpList) > 0 {
  64. // for _, v := range tmpList {
  65. // if v.SysUserId == newUserId {
  66. // errMsg = "新创建人不可和原创建人一致"
  67. // err = errors.New(errMsg)
  68. // return
  69. // }
  70. // }
  71. // // 修改创建人
  72. // err = data_manage.ModifyChartInfoUserIdByCodeList(dataId, adminInfo.AdminId, adminInfo.RealName)
  73. // }
  74. //case 6: // ETA表格
  75. // tmpList, tmpErr := excel.GetNoContentExcelListGroupByUserId(dataId)
  76. // if tmpErr != nil {
  77. // err = tmpErr
  78. // return
  79. // }
  80. // if len(tmpList) > 0 {
  81. // for _, v := range tmpList {
  82. // if v.SysUserId == newUserId {
  83. // errMsg = "新创建人不可和原创建人一致"
  84. // err = errors.New(errMsg)
  85. // return
  86. // }
  87. // }
  88. // // 修改创建人
  89. // err = excel.ModifyExcelInfoUserIdByCodeList(dataId, adminInfo.AdminId, adminInfo.RealName)
  90. // }
  91. default:
  92. return
  93. }
  94. return
  95. }
  96. // SetDataIsPermission
  97. // @Description: 设置资产(指标、图表、ETA表格)分类是否涉密
  98. // @author: Roc
  99. // @datetime 2024-03-27 10:52:32
  100. // @param source int
  101. // @param subSource int
  102. // @param dataId []string
  103. // @return err error
  104. // @return errMsg string
  105. func SetDataIsPermission(source, subSource int, classifyIdList []int) (err error, errMsg string) {
  106. // TODO 消息通知
  107. switch source {
  108. case 3, 4: //ETA指标库、ETA预测指标
  109. //tmpList, tmpErr := data_manage.GetEdbInfoListGroupByUserId(dataId)
  110. //if tmpErr != nil {
  111. // err = tmpErr
  112. // return
  113. //}
  114. //if len(tmpList) > 0 {
  115. //}
  116. // 重新设置权限
  117. err = data_manage.SetIsPermissionEdbChartByEdbClassifyIdList(classifyIdList)
  118. //case 5: //图库
  119. //case 6: // ETA表格
  120. default:
  121. return
  122. }
  123. return
  124. }
  125. // SetEdbChartClassifyPermission
  126. // @Description: 给用户设置涉密分类的权限
  127. // @author: Roc
  128. // @datetime 2024-03-28 14:22:30
  129. // @param source int
  130. // @param subSource int
  131. // @param userList []int
  132. // @param classifyIdList []int
  133. // @return err error
  134. // @return errMsg string
  135. func SetEdbChartClassifyPermission(source, subSource int, userList []int, classifyIdList []int) (err error, errMsg string) {
  136. // TODO 消息通知
  137. if len(classifyIdList) <= 0 {
  138. // 说明是取消权限管控
  139. }
  140. switch source {
  141. case 3, 4: //ETA指标库、ETA预测指标
  142. //tmpList, tmpErr := data_manage.GetEdbInfoListGroupByUserId(dataId)
  143. //if tmpErr != nil {
  144. // err = tmpErr
  145. // return
  146. //}
  147. //if len(tmpList) > 0 {
  148. //}
  149. // 重新设置权限
  150. err = data_manage.SetPermissionEdbChartClassifyIdByClassifyIdList(classifyIdList, userList)
  151. //case 5: //图库
  152. // tmpList, tmpErr := data_manage.GetChartInfoListGroupByUserId(dataId)
  153. // if tmpErr != nil {
  154. // err = tmpErr
  155. // return
  156. // }
  157. // if len(tmpList) > 0 {
  158. // for _, v := range tmpList {
  159. // if v.SysUserId == newUserId {
  160. // errMsg = "新创建人不可和原创建人一致"
  161. // err = errors.New(errMsg)
  162. // return
  163. // }
  164. // }
  165. // // 修改创建人
  166. // err = data_manage.ModifyChartInfoUserIdByCodeList(dataId, adminInfo.AdminId, adminInfo.RealName)
  167. // }
  168. //case 6: // ETA表格
  169. // tmpList, tmpErr := excel.GetNoContentExcelListGroupByUserId(dataId)
  170. // if tmpErr != nil {
  171. // err = tmpErr
  172. // return
  173. // }
  174. // if len(tmpList) > 0 {
  175. // for _, v := range tmpList {
  176. // if v.SysUserId == newUserId {
  177. // errMsg = "新创建人不可和原创建人一致"
  178. // err = errors.New(errMsg)
  179. // return
  180. // }
  181. // }
  182. // // 修改创建人
  183. // err = excel.ModifyExcelInfoUserIdByCodeList(dataId, adminInfo.AdminId, adminInfo.RealName)
  184. // }
  185. default:
  186. return
  187. }
  188. return
  189. }