BE_System_SqlErrorList.groovy 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. import com.sdtool.common.api.BusinessExecutor
  2. import com.sdtool.common.datas.ERPModule
  3. import com.sdtool.common.entity.base.InvokeCallParams
  4. import com.sdtool.common.entity.base.InvokeCallResult
  5. import com.alibaba.fastjson.JSON
  6. import com.dySweetFishPlugin.entity.system.SQLRunData
  7. import com.dySweetFishPlugin.sql.dao.OperatorWait
  8. import com.dySweetFishPlugin.sql.dao.TunaDaoService
  9. import com.sweetfish.service.RetResult
  10. import org.apache.logging.log4j.LogManager
  11. import org.apache.logging.log4j.Logger
  12. import javax.annotation.Resource
  13. @SuppressWarnings("unused")
  14. class BE_System_SqlErrorList implements BusinessExecutor<InvokeCallParams, InvokeCallResult> {
  15. protected final Logger logger = LogManager.getLogger(this.getClass().getSimpleName())
  16. @Resource
  17. private TunaDaoService daoService
  18. @Override
  19. String scriptName() {
  20. return "获取错误的SQL列表"
  21. }
  22. @Override
  23. ERPModule module() {
  24. return ERPModule.SYSTEM
  25. }
  26. @Override
  27. OperatorWait getAWait(InvokeCallParams s) {
  28. return OperatorWait.SYNC
  29. }
  30. @Override
  31. boolean needLogin(InvokeCallParams source) {
  32. return true
  33. }
  34. RetResult<InvokeCallResult> execute(InvokeCallParams source) {
  35. Map<String, SQLRunData> errorData = daoService.getErrorRunMap()
  36. def errorList = errorData.collect {
  37. return [
  38. errorKey : it.key,
  39. dataSourceId: it.value.dataSource,
  40. sqlExample : it.value.successList.collect { item -> item.sql }.join("\r\n").take(800) + "..."
  41. ]
  42. }
  43. return RetResult.<InvokeCallResult> successT().result(InvokeCallResult.success().data(JSON.toJSONString(errorList)))
  44. }
  45. }