residual_analysis.go 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. package residual_analysis
  2. import (
  3. "encoding/json"
  4. "eta/eta_api/controllers"
  5. "eta/eta_api/models"
  6. "eta/eta_api/models/residual_analysis_model"
  7. "eta/eta_api/services/residual_analysis_service"
  8. )
  9. // ResidualAnalysisController 残差分析
  10. type ResidualAnalysisController struct {
  11. controllers.BaseAuthController
  12. }
  13. // ResidualAnalysisPreview
  14. // @Title 残差分析预览
  15. // @Description 残差分析预览
  16. // @Success 200 {object} residual_analysis_model.ResidualAnalysisResp
  17. // @router /residual/analysis/preview [post]
  18. func (this *ResidualAnalysisController) ResidualAnalysisPreview() {
  19. br := new(models.BaseResponse).Init()
  20. defer func() {
  21. this.Data["json"] = br
  22. this.ServeJSON()
  23. }()
  24. sysUser := this.SysUser
  25. if sysUser == nil {
  26. br.Msg = "请登录"
  27. br.ErrMsg = "请登录,SysUser Is Empty"
  28. br.Ret = 408
  29. return
  30. }
  31. var req residual_analysis_model.ResidualAnalysisReq
  32. err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
  33. if err != nil {
  34. br.Msg = "参数解析异常!"
  35. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  36. return
  37. }
  38. resp, err := residual_analysis_service.ResidualAnalysisPreview(req)
  39. if err != nil {
  40. br.Ret = 408
  41. br.Msg = "获取失败"
  42. br.ErrMsg = err.Error()
  43. return
  44. }
  45. br.Ret = 200
  46. br.Success = true
  47. br.Msg = "获取成功"
  48. br.Data = resp
  49. }
  50. // ContrastPreview
  51. // @Title 对比指标预览
  52. // @Description 对比指标预览
  53. // @Success 200 {object} residual_analysis_model.ResidualAnalysisChartEdbInfoMapping
  54. // @router /contrast/preview [get]
  55. func (this *ResidualAnalysisController) ContrastPreview() {
  56. br := new(models.BaseResponse).Init()
  57. defer func() {
  58. this.Data["json"] = br
  59. this.ServeJSON()
  60. }()
  61. sysUser := this.SysUser
  62. if sysUser == nil {
  63. br.Msg = "请登录"
  64. br.ErrMsg = "请登录,SysUser Is Empty"
  65. br.Ret = 408
  66. return
  67. }
  68. IndexCode := this.GetString("IndexCode")
  69. if IndexCode == "" {
  70. br.Ret = 408
  71. br.Msg = "IndexCode不能为空"
  72. br.ErrMsg = "IndexCode不能为空"
  73. return
  74. }
  75. resp, err := residual_analysis_service.ContrastPreview(IndexCode)
  76. if err != nil {
  77. return
  78. }
  79. br.Ret = 200
  80. br.Success = true
  81. br.Msg = "获取成功"
  82. br.Data = resp
  83. }
  84. // SaveResidualAnalysis
  85. // @Title 保存残差分析指标
  86. // @Description 保存残差分析指标
  87. // @Success 200
  88. // @router /save/residual/analysis [post]
  89. func (this *ResidualAnalysisController) SaveResidualAnalysis() {
  90. br := new(models.BaseResponse).Init()
  91. defer func() {
  92. this.Data["json"] = br
  93. this.ServeJSON()
  94. }()
  95. sysUser := this.SysUser
  96. if sysUser == nil {
  97. br.Msg = "请登录"
  98. br.ErrMsg = "请登录,SysUser Is Empty"
  99. br.Ret = 408
  100. return
  101. }
  102. var req residual_analysis_model.ResidualAnalysisIndexSaveReq
  103. err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
  104. if err != nil {
  105. br.Msg = "参数解析异常!"
  106. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  107. return
  108. }
  109. if req.ClassifyId == 0 {
  110. br.Msg = "分类id不能为空"
  111. br.ErrMsg = "分类id不能为空"
  112. return
  113. }
  114. if req.Source == 0 {
  115. br.Msg = "来源不能为空"
  116. br.ErrMsg = "来源不能为空"
  117. return
  118. }
  119. err = residual_analysis_service.SaveResidualAnalysis(req, sysUser)
  120. if err != nil {
  121. br.Ret = 408
  122. br.Msg = "获取失败"
  123. br.ErrMsg = err.Error()
  124. return
  125. }
  126. br.Ret = 200
  127. br.Success = true
  128. br.Msg = "添加成功"
  129. }
  130. // SaveResidualAnalysisConfig
  131. // @Title 保存残差指标配置
  132. // @Description 保存残差指标配置
  133. // @Success 200
  134. // @router /save/residual/analysis/config [post]
  135. func (this *ResidualAnalysisController) SaveResidualAnalysisConfig() {
  136. br := new(models.BaseResponse).Init()
  137. defer func() {
  138. this.Data["json"] = br
  139. this.ServeJSON()
  140. }()
  141. sysUser := this.SysUser
  142. if sysUser == nil {
  143. br.Msg = "请登录"
  144. br.ErrMsg = "请登录,SysUser Is Empty"
  145. br.Ret = 408
  146. return
  147. }
  148. var req residual_analysis_model.ResidualAnalysisReq
  149. err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
  150. if err != nil {
  151. br.Msg = "参数解析异常!"
  152. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  153. return
  154. }
  155. err = residual_analysis_service.SaveResidualAnalysisConfig(req, sysUser)
  156. if err != nil {
  157. br.Ret = 408
  158. br.Msg = "保存失败"
  159. br.ErrMsg = err.Error()
  160. return
  161. }
  162. br.Ret = 200
  163. br.Success = true
  164. br.Msg = "添加成功"
  165. }
  166. // ResidualAnalysisDetail
  167. // @Title 残差分析指标详情
  168. // @Description 残差分析指标详情
  169. // @Success 200 {object} []*data_manage.EdbInfoList
  170. // @router /residual/analysis/detail [get]
  171. func (this *ResidualAnalysisController) ResidualAnalysisDetail() {
  172. br := new(models.BaseResponse).Init()
  173. defer func() {
  174. this.Data["json"] = br
  175. this.ServeJSON()
  176. }()
  177. sysUser := this.SysUser
  178. if sysUser == nil {
  179. br.Msg = "请登录"
  180. br.ErrMsg = "请登录,SysUser Is Empty"
  181. br.Ret = 408
  182. return
  183. }
  184. EdbInfoId, err := this.GetInt("EdbInfoId")
  185. if err != nil {
  186. br.Msg = "EdbInfoId参数异常!"
  187. br.ErrMsg = "EdbInfoId参数解析失败,Err:" + err.Error()
  188. }
  189. if EdbInfoId <= 0 {
  190. br.Msg = "EdbInfoId参数异常!"
  191. br.ErrMsg = "EdbInfoId参数异常!"
  192. }
  193. resp, err := residual_analysis_service.ResidualAnalysisDetail(EdbInfoId)
  194. if err != nil {
  195. return
  196. }
  197. br.Ret = 200
  198. br.Success = true
  199. br.Msg = "获取成功"
  200. br.Data = resp
  201. }