residual_analysis.go 5.0 KB

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