data_move.go 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325
  1. package data_manage_permission
  2. import (
  3. "encoding/json"
  4. "eta/eta_api/models"
  5. "eta/eta_api/models/data_manage"
  6. "eta/eta_api/services/data"
  7. "eta/eta_api/services/data/data_manage_permission"
  8. "eta/eta_api/utils"
  9. "github.com/rdlucklib/rdluck_tools/paging"
  10. )
  11. // EdbChartClassifyList
  12. // @Title 获取指标/图表分类列表数据接口
  13. // @Description 获取指标/图表分类列表数据接口
  14. // @Param Source query int false "来源 :1:手工数据指标 2:钢联化工数据库 3:ETA指标库 4:ETA预测指标 5:图库 6:ETA表格"
  15. // @Success 200 {object} data_manage.ChartListResp
  16. // @router /edb_chart/classify [get]
  17. func (this *DataMangePermissionController) EdbChartClassifyList() {
  18. br := new(models.BaseResponse).Init()
  19. defer func() {
  20. this.Data["json"] = br
  21. this.ServeJSON()
  22. }()
  23. sysUser := this.SysUser
  24. if sysUser == nil {
  25. br.Msg = "请登录"
  26. br.ErrMsg = "请登录,SysUser Is Empty"
  27. br.Ret = 408
  28. return
  29. }
  30. source, _ := this.GetInt("Source")
  31. if source <= 0 || source > 6 {
  32. br.Msg = "错误的来源"
  33. br.IsSendEmail = false
  34. return
  35. }
  36. // 子来源(目前作用于ETA表格,2024-3-26 14:12:09)
  37. subSource, _ := this.GetInt("SubSource")
  38. if source == 6 && (subSource <= utils.EXCEL_DEFAULT || subSource > utils.CUSTOM_ANALYSIS_TABLE) {
  39. br.Msg = "错误的子来源"
  40. br.IsSendEmail = false
  41. return
  42. }
  43. list, err := data_manage_permission.GetEdbChartClassifyList(source, subSource)
  44. if err != nil {
  45. //br.Success = true
  46. br.Msg = "获取失败"
  47. br.ErrMsg = "获取失败,Err:" + err.Error()
  48. return
  49. }
  50. br.Ret = 200
  51. br.Success = true
  52. br.Msg = "获取成功"
  53. br.Data = list
  54. }
  55. // MoveEdbChartList
  56. // @Title 获取指标/图表创建人列表数据接口
  57. // @Description 获取指标/图表创建人列表数据接口
  58. // @Param PageSize query int true "每页数据条数"
  59. // @Param CurrentIndex query int true "当前页页码,从1开始"
  60. // @Param Source query int false "来源 :1:手工数据指标 2:钢联化工数据库 3:ETA指标库 4:ETA预测指标 5:图库 6:ETA表格"
  61. // @Param SubSource query int false "子来源 :目前作用于ETA表格,2024-3-26 14:12:09"
  62. // @Param Keyword query string false "关键字,code或者名称"
  63. // @Param Classify query string false "分类id"
  64. // @Param UserId query int false "创建人id"
  65. // @Success 200 {object} data_manage.ChartListResp
  66. // @router /edb_chart/list [get]
  67. func (c *DataMangePermissionController) MoveEdbChartList() {
  68. br := new(models.BaseResponse).Init()
  69. defer func() {
  70. c.Data["json"] = br
  71. c.ServeJSON()
  72. }()
  73. sysUser := c.SysUser
  74. if sysUser == nil {
  75. br.Msg = "请登录"
  76. br.ErrMsg = "请登录,SysUser Is Empty"
  77. br.Ret = 408
  78. return
  79. }
  80. source, _ := c.GetInt("Source")
  81. if source <= 0 || source > 6 {
  82. br.Msg = "错误的来源"
  83. br.IsSendEmail = false
  84. return
  85. }
  86. // 子来源(目前作用于ETA表格,2024-3-26 14:12:09)
  87. subSource, _ := c.GetInt("SubSource")
  88. if source == 6 && (subSource <= utils.EXCEL_DEFAULT || subSource > utils.CUSTOM_ANALYSIS_TABLE) {
  89. br.Msg = "错误的子来源"
  90. br.IsSendEmail = false
  91. return
  92. }
  93. userId, _ := c.GetInt("UserId")
  94. keyword := c.GetString("Keyword")
  95. classify := c.GetString("Classify")
  96. pageSize, _ := c.GetInt("PageSize")
  97. currentIndex, _ := c.GetInt("CurrentIndex")
  98. var startSize int
  99. if pageSize <= 0 {
  100. pageSize = utils.PageSize20
  101. }
  102. if currentIndex <= 0 {
  103. currentIndex = 1
  104. }
  105. startSize = paging.StartIndex(currentIndex, pageSize)
  106. resp := data_manage.MoveEdbChartListResp{}
  107. var total int
  108. page := paging.GetPaging(currentIndex, pageSize, total)
  109. defaultList := make([]data_manage.MoveEdbChartList, 0)
  110. resp.List = defaultList
  111. resp.Paging = page
  112. // 没有传入条件,那就默认自动返回
  113. //if userId <= 0 && keyword == `` && classify == `` {
  114. // br.Ret = 200
  115. // br.Success = true
  116. // br.Msg = "获取成功"
  117. // br.Data = resp
  118. // return
  119. //}
  120. list, total, err := data_manage_permission.GetMoveEdbChartList(source, subSource, userId, keyword, classify, startSize, pageSize)
  121. if err != nil {
  122. //br.Success = true
  123. br.Msg = "获取失败"
  124. br.ErrMsg = "获取失败,Err:" + err.Error()
  125. return
  126. }
  127. if list == nil {
  128. list = defaultList
  129. }
  130. page = paging.GetPaging(currentIndex, pageSize, total)
  131. resp.Paging = page
  132. resp.List = list
  133. br.Ret = 200
  134. br.Success = true
  135. br.Msg = "获取成功"
  136. br.IsAddLog = false
  137. br.Data = resp
  138. }
  139. // MoveEdbChartUser
  140. // @Title 指标/图表创建人变更接口
  141. // @Description 指标/图表创建人变更接口
  142. // @Param request body data_manage.MoveEdbChartReq true "type json string"
  143. // @Success 200 {object} data_manage.ChartListResp
  144. // @router /edb_chart/change_user [post]
  145. func (c *DataMangePermissionController) MoveEdbChartUser() {
  146. br := new(models.BaseResponse).Init()
  147. defer func() {
  148. c.Data["json"] = br
  149. c.ServeJSON()
  150. }()
  151. sysUser := c.SysUser
  152. if sysUser == nil {
  153. br.Msg = "请登录"
  154. br.ErrMsg = "请登录,SysUser Is Empty"
  155. br.Ret = 408
  156. return
  157. }
  158. var req data_manage.MoveEdbChartReq
  159. err := json.Unmarshal(c.Ctx.Input.RequestBody, &req)
  160. if err != nil {
  161. br.Msg = "参数解析异常!"
  162. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  163. return
  164. }
  165. if req.Source <= 0 || req.Source > 6 {
  166. br.Msg = "错误的来源"
  167. br.IsSendEmail = false
  168. return
  169. }
  170. // 子来源(目前作用于ETA表格,2024-3-26 14:12:09)
  171. if req.Source == 6 && (req.SubSource <= utils.EXCEL_DEFAULT || req.SubSource > utils.CUSTOM_ANALYSIS_TABLE) {
  172. br.Msg = "错误的子来源"
  173. br.IsSendEmail = false
  174. return
  175. }
  176. if !req.IsSelectAll && len(req.DataIdList) <= 0 {
  177. br.Msg = "请勾选数据项"
  178. br.IsSendEmail = false
  179. return
  180. }
  181. if req.NewUserId <= 0 {
  182. br.Msg = "请选择新的创建人"
  183. br.IsSendEmail = false
  184. return
  185. }
  186. err, errMsg := data_manage_permission.MoveEdbChart(req.Source, req.SubSource, req.UserId, req.NewUserId, req.IsSelectAll, req.DataIdList, req.NoDataIdList, req.Keyword, req.ClassifyId)
  187. if err != nil {
  188. //br.Success = true
  189. br.Msg = "移动失败"
  190. if errMsg != `` {
  191. br.Msg = errMsg
  192. }
  193. br.ErrMsg = "移动失败,Err:" + err.Error()
  194. return
  195. }
  196. br.Ret = 200
  197. br.IsAddLog = true
  198. br.Success = true
  199. br.Msg = "修改成功"
  200. }
  201. // MoveAllEdbChartUser
  202. // @Title 通过原创建人转移指标/图表创建人接口
  203. // @Description 通过原创建人转移指标/图表创建人接口
  204. // @Param request body data_manage.MoveAllEdbChartReq true "type json string"
  205. // @Success 200 {object} data_manage.ChartListResp
  206. // @router /edb_chart/all/change_user [post]
  207. func (c *DataMangePermissionController) MoveAllEdbChartUser() {
  208. br := new(models.BaseResponse).Init()
  209. defer func() {
  210. c.Data["json"] = br
  211. c.ServeJSON()
  212. }()
  213. sysUser := c.SysUser
  214. if sysUser == nil {
  215. br.Msg = "请登录"
  216. br.ErrMsg = "请登录,SysUser Is Empty"
  217. br.Ret = 408
  218. return
  219. }
  220. var req data_manage.MoveAllEdbChartReq
  221. err := json.Unmarshal(c.Ctx.Input.RequestBody, &req)
  222. if err != nil {
  223. br.Msg = "参数解析异常!"
  224. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  225. return
  226. }
  227. if len(req.Source) < 0 {
  228. br.Msg = "请选择来源"
  229. br.IsSendEmail = false
  230. return
  231. }
  232. if len(req.OldUserId) <= 0 {
  233. br.Msg = "请选择旧的创建人"
  234. br.IsSendEmail = false
  235. return
  236. }
  237. if req.NewUserId <= 0 {
  238. br.Msg = "请选择新的创建人"
  239. br.IsSendEmail = false
  240. return
  241. }
  242. err, errMsg := data.MoveAllEdbChart(req.Source, req.OldUserId, req.NewUserId)
  243. if err != nil {
  244. //br.Success = true
  245. br.Msg = "移动失败"
  246. if errMsg != `` {
  247. br.Msg = errMsg
  248. }
  249. br.ErrMsg = "移动失败,Err:" + err.Error()
  250. return
  251. }
  252. br.Ret = 200
  253. br.IsAddLog = true
  254. br.Success = true
  255. br.Msg = "移动成功"
  256. }
  257. // MoveEdbChartCount
  258. // @Title 获取指标/图表创建人汇总数据接口
  259. // @Description 获取指标/图表创建人汇总数据接口
  260. // @Param Source query int false "来源 :1:手工数据指标 2:钢联化工数据库 3:ETA指标库 4:ETA预测指标 5:图库 6:ETA表格"
  261. // @Param UserId query int false "创建人id"
  262. // @Success 200 {object} data_manage.ChartListResp
  263. // @router /edb_chart/count [get]
  264. func (c *DataMangePermissionController) MoveEdbChartCount() {
  265. br := new(models.BaseResponse).Init()
  266. defer func() {
  267. c.Data["json"] = br
  268. c.ServeJSON()
  269. }()
  270. sysUser := c.SysUser
  271. if sysUser == nil {
  272. br.Msg = "请登录"
  273. br.ErrMsg = "请登录,SysUser Is Empty"
  274. br.Ret = 408
  275. return
  276. }
  277. userId, _ := c.GetInt("UserId")
  278. // 没有传入条件,那就默认自动返回
  279. if userId <= 0 {
  280. br.Ret = 200
  281. br.Success = true
  282. br.Msg = "获取成功"
  283. //br.Data = resp
  284. return
  285. }
  286. resp, err := data.GetMoveEdbChartCount(userId)
  287. if err != nil {
  288. //br.Success = true
  289. br.Msg = "获取失败"
  290. br.ErrMsg = "获取失败,Err:" + err.Error()
  291. return
  292. }
  293. br.Ret = 200
  294. br.Success = true
  295. br.Msg = "获取成功"
  296. br.Data = resp
  297. }