AdminBannersApiController.java 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. package com.goafanti.banners.controller;
  2. import java.util.Calendar;
  3. import java.util.HashMap;
  4. import java.util.Map;
  5. import javax.annotation.Resource;
  6. import javax.servlet.http.HttpServletRequest;
  7. import javax.validation.Valid;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.stereotype.Controller;
  10. import org.springframework.util.Assert;
  11. import org.springframework.validation.BindingResult;
  12. import org.springframework.web.bind.annotation.RequestMapping;
  13. import org.springframework.web.bind.annotation.RequestMethod;
  14. import com.goafanti.banners.enums.BannersType;
  15. import com.goafanti.banners.service.BannersService;
  16. import com.goafanti.common.bo.Result;
  17. import com.goafanti.common.controller.BaseApiController;
  18. import com.goafanti.common.enums.AttachmentType;
  19. import com.goafanti.common.model.Banners;
  20. import com.goafanti.common.utils.StringUtils;
  21. import com.goafanti.core.mybatis.JDBCIdGenerator;
  22. @Controller
  23. @RequestMapping(value = "/open/api/admin/banners")
  24. public class AdminBannersApiController extends BaseApiController {
  25. @Resource
  26. BannersService bannersService;
  27. @Autowired
  28. JDBCIdGenerator idGenerator;
  29. @RequestMapping(value = "/upload", method = RequestMethod.POST)
  30. public Result upload(String sign, HttpServletRequest req) {
  31. Assert.isTrue(StringUtils.isNotBlank(sign) && BannersType.containsType(sign), "广告图位置标示不正确。");
  32. Result res = res();
  33. Calendar c = Calendar.getInstance();
  34. res.data(handleFile(res, false, req, AttachmentType.BANNERS_PIC.getCode(), String.valueOf(c.get(Calendar.YEAR)),
  35. String.valueOf(c.get(Calendar.MONTH) + 1), idGenerator.generateId().toString()));
  36. return res;
  37. }
  38. /*@RequestMapping(value = "/save", method = RequestMethod.POST)
  39. public Result save(@Valid Banners banners, BindingResult bindingResult) {
  40. Assert.notNull(banners, "广告图参数不正确");
  41. Assert.isTrue(StringUtils.isNotBlank(banners.getSign()) && BannersType.containsType(banners.getSign()),
  42. "广告图位置标示不正确。");
  43. Assert.hasText(banners.getImgurl(), "广告图url参数不正确");
  44. Assert.isTrue(!bindingResult.hasFieldErrors(),
  45. bindingResult.hasFieldErrors() ? bindingResult.getFieldError().getDefaultMessage() : "");
  46. Result res = res();
  47. if (banners.getId() == null) {
  48. banners.setId(idGenerator.generateId());
  49. res.data(bannersService.insertBanner(banners));
  50. } else {
  51. res.data(bannersService.updateBanner(banners));
  52. }
  53. return res;
  54. }
  55. @RequestMapping(value = "/list", method = RequestMethod.GET)
  56. public Result portalBannersList(String key, String pageNo, String pageSize) {
  57. Assert.isTrue(StringUtils.isBlank(key) || BannersType.containsType(key), "广告图位置标示不正确。");
  58. Integer pN = getPageNo(pageNo);
  59. Integer pS = getPageSize(pageSize);
  60. Map<String, Object> result = new HashMap<>();
  61. result.put("list", bannersService.findBannersList(key, (pN - 1) * pS, pS));
  62. result.put("total", bannersService.findBannersListCount(key));
  63. return res().data(result);
  64. }
  65. @RequestMapping(value = "/delete", method = RequestMethod.POST)
  66. public Result delete(String id) {
  67. Assert.isTrue(StringUtils.isNumeric(id), "广告图id不正确。");
  68. return res().data(bannersService.deleteBanner(Long.valueOf(id)));
  69. }
  70. @RequestMapping(value = "/clearCache", method = RequestMethod.GET)
  71. public Result clearCache(String key) {
  72. Assert.isTrue(StringUtils.isNotBlank(key) && BannersType.containsType(key), "广告图位置标示不正确。");
  73. bannersService.cleanList(key);
  74. return res().data(bannersService.findPortalBanners(key));
  75. }*/
  76. @RequestMapping(value = "/keys", method = RequestMethod.GET)
  77. public Result portalBannersKeys() {
  78. Map<String, String> types = new HashMap<>();
  79. for (BannersType type : BannersType.values()) {
  80. types.put(type.getKey(), type.getDesc());
  81. }
  82. return res().data(types);
  83. }
  84. @RequestMapping(value="/save" ,method=RequestMethod.POST)
  85. public Result save(Banners b){
  86. Result result=new Result();
  87. result.setData(bannersService.insertBanner(b));
  88. return result;
  89. }
  90. @RequestMapping(value="/delete" ,method=RequestMethod.POST)
  91. public Result delete(String id){
  92. Result result=new Result();
  93. result.setData(bannersService.deleteBanner(id));
  94. return result;
  95. }
  96. @RequestMapping(value="/list" ,method=RequestMethod.GET)
  97. public Result list(String apiUrl,Integer client,Integer pageSize,Integer pageNo){
  98. Result result=new Result();
  99. result.setData(bannersService.findBannersList( apiUrl,client, pageSize, pageNo));
  100. return result;
  101. }
  102. }