AppVersionController.java 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. package com.izouma.nineth.web;
  2. import com.izouma.nineth.domain.AppVersion;
  3. import com.izouma.nineth.dto.PageQuery;
  4. import com.izouma.nineth.exception.BusinessException;
  5. import com.izouma.nineth.repo.AppVersionRepo;
  6. import com.izouma.nineth.service.AppVersionService;
  7. import com.izouma.nineth.utils.ObjUtils;
  8. import com.izouma.nineth.utils.excel.ExcelUtils;
  9. import lombok.AllArgsConstructor;
  10. import org.springframework.data.domain.Page;
  11. import org.springframework.web.bind.annotation.*;
  12. import javax.servlet.http.HttpServletResponse;
  13. import java.io.IOException;
  14. import java.util.List;
  15. @RestController
  16. @RequestMapping("/appVersion")
  17. @AllArgsConstructor
  18. public class AppVersionController extends BaseController {
  19. private AppVersionService appVersionService;
  20. private AppVersionRepo appVersionRepo;
  21. //@PreAuthorize("hasRole('ADMIN')")
  22. @PostMapping("/save")
  23. public AppVersion save(@RequestBody AppVersion record) {
  24. if (record.getId() != null) {
  25. AppVersion orig = appVersionRepo.findById(record.getId()).orElseThrow(new BusinessException("无记录"));
  26. ObjUtils.merge(orig, record);
  27. return appVersionRepo.save(orig);
  28. }
  29. return appVersionRepo.save(record);
  30. }
  31. //@PreAuthorize("hasRole('ADMIN')")
  32. @PostMapping("/all")
  33. public Page<AppVersion> all(@RequestBody PageQuery pageQuery) {
  34. return appVersionService.all(pageQuery);
  35. }
  36. @GetMapping("/get/{id}")
  37. public AppVersion get(@PathVariable Long id) {
  38. return appVersionRepo.findById(id).orElseThrow(new BusinessException("无记录"));
  39. }
  40. @PostMapping("/del/{id}")
  41. public void del(@PathVariable Long id) {
  42. appVersionRepo.softDelete(id);
  43. }
  44. @GetMapping("/excel")
  45. @ResponseBody
  46. public void excel(HttpServletResponse response, PageQuery pageQuery) throws IOException {
  47. List<AppVersion> data = all(pageQuery).getContent();
  48. ExcelUtils.export(response, data);
  49. }
  50. @GetMapping("/checkIosReview")
  51. public AppVersion checkIosReview(@RequestParam String version) {
  52. return appVersionRepo.findByPlatformAndVersion("iOS", version).orElseThrow(new BusinessException("版本不存在"));
  53. }
  54. @GetMapping("/checkAndroidReview")
  55. public AppVersion checkAndroidReview(@RequestParam String version) {
  56. return appVersionRepo.findByPlatformAndVersion("Android", version).orElseThrow(new BusinessException("版本不存在"));
  57. }
  58. }