SaasController.java 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package com.yihu.jw.controller.base;
  2. import com.netflix.hystrix.contrib.javanica.annotation.HystrixCommand;
  3. import com.netflix.hystrix.contrib.javanica.annotation.HystrixProperty;
  4. import com.yihu.jw.commnon.base.BaseContants;
  5. import com.yihu.jw.fegin.base.SaasFegin;
  6. import com.yihu.jw.restmodel.common.Envelop;
  7. import io.swagger.annotations.Api;
  8. import io.swagger.annotations.ApiOperation;
  9. import io.swagger.annotations.ApiParam;
  10. import org.slf4j.Logger;
  11. import org.slf4j.LoggerFactory;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.cloud.sleuth.Tracer;
  14. import org.springframework.web.bind.annotation.GetMapping;
  15. import org.springframework.web.bind.annotation.RequestMapping;
  16. import org.springframework.web.bind.annotation.RequestParam;
  17. import org.springframework.web.bind.annotation.RestController;
  18. @RestController
  19. @RequestMapping(BaseContants.base_common)
  20. @Api(description = "saas相关")
  21. public class SaasController {
  22. private Logger logger= LoggerFactory.getLogger(SaasController.class);
  23. @Autowired
  24. private SaasFegin saasFegin;
  25. @Autowired
  26. private Tracer tracer;
  27. @GetMapping(value = BaseContants.Saas.api_getList)
  28. @ApiOperation(value = "获取saas,不分页")
  29. @HystrixCommand(commandProperties = {
  30. @HystrixProperty(name = "execution.isolation.thread.timeoutInMilliseconds", value = "-1"),//超时时间
  31. @HystrixProperty(name = "execution.timeout.enabled", value = "false") })
  32. public Envelop getSaasNoPage(
  33. @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段", defaultValue = "id,code,name,saasId,appId,appSecret,baseUrl,remark")
  34. @RequestParam(value = "fields", required = false) String fields,
  35. @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
  36. @RequestParam(value = "filters", required = false) String filters,
  37. @ApiParam(name = "sorts", value = "排序,规则参见说明文档", defaultValue = "+name,+createTime")
  38. @RequestParam(value = "sorts", required = false) String sorts) {
  39. return saasFegin.getList(fields, filters, sorts);
  40. }
  41. }