EnvController.java 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. package com.qmth.ops.api.controller.admin;
  2. import com.qmth.boot.api.annotation.Aac;
  3. import com.qmth.boot.api.annotation.BOOL;
  4. import com.qmth.ops.api.constants.OpsApiConstants;
  5. import com.qmth.ops.api.security.AdminSession;
  6. import com.qmth.ops.api.security.Permission;
  7. import com.qmth.ops.api.vo.CodeNameVO;
  8. import com.qmth.ops.api.vo.EnvVO;
  9. import com.qmth.ops.biz.domain.AppEnv;
  10. import com.qmth.ops.biz.domain.Env;
  11. import com.qmth.ops.biz.domain.EnvType;
  12. import com.qmth.ops.biz.service.AppService;
  13. import com.qmth.ops.biz.service.EnvService;
  14. import org.springframework.web.bind.annotation.*;
  15. import javax.annotation.Resource;
  16. import java.util.Arrays;
  17. import java.util.List;
  18. import java.util.stream.Collectors;
  19. @RestController
  20. @RequestMapping(OpsApiConstants.ADMIN_URI_PREFIX + "/env")
  21. public class EnvController {
  22. @Resource
  23. private EnvService envService;
  24. @Resource
  25. private AppService appService;
  26. @RequestMapping("/types")
  27. @Aac(auth = BOOL.FALSE)
  28. public Object types() {
  29. return Arrays.stream(EnvType.values()).map(item -> new CodeNameVO(item.getCode(), item.getName())).toArray();
  30. }
  31. @PostMapping("/insert")
  32. public EnvVO insert(@RequestAttribute AdminSession adminSession, Env env) {
  33. adminSession.permissionCheck(Permission.ENV_INSERT);
  34. env = envService.insert(env);
  35. return new EnvVO(env);
  36. }
  37. @PostMapping("/update")
  38. public EnvVO update(@RequestAttribute AdminSession adminSession, Env env) {
  39. adminSession.permissionCheck(Permission.ENV_EDIT);
  40. env = envService.update(env);
  41. return new EnvVO(env);
  42. }
  43. @PostMapping("/list")
  44. public List<AppEnv> list() {
  45. return envService.listAppEnv();
  46. }
  47. @PostMapping("/app/list")
  48. public List<EnvVO> listByApp(@RequestParam Long appId) {
  49. return envService.list(appId).stream().map(EnvVO::new).collect(Collectors.toList());
  50. }
  51. }