Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 
 

94 строки
3.7 KiB

  1. package com.simple.controller;
  2. import com.alibaba.fastjson.JSON;
  3. import com.github.pagehelper.PageInfo;
  4. import com.simple.common.Result;
  5. import com.simple.common.ResultData;
  6. import com.simple.domain.po.WxCampaign;
  7. import com.simple.domain.po.WxCoupon;
  8. import com.simple.service.WxCampaignService;
  9. import com.simple.service.WxCouponService;
  10. import io.swagger.annotations.Api;
  11. import io.swagger.annotations.ApiImplicitParam;
  12. import io.swagger.annotations.ApiImplicitParams;
  13. import io.swagger.annotations.ApiOperation;
  14. import org.apache.commons.lang3.StringUtils;
  15. import org.apache.log4j.Logger;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.web.bind.annotation.*;
  18. import java.util.ArrayList;
  19. import java.util.List;
  20. import static com.simple.domain.po.WxCampaign.Field.SortNum_ASC;
  21. @RestController
  22. @RequestMapping("/api/wxCampaign")
  23. @Api(description="促销和banner接口")
  24. public class WxCampaignController extends BaseController
  25. {
  26. @Autowired
  27. private WxCampaignService wxCampaignService;
  28. @Autowired
  29. private WxCouponService wxCouponService;
  30. private Logger logger = Logger.getLogger(WxCampaignController.class);
  31. @ApiOperation("分页列表接口")
  32. @GetMapping("list")
  33. @ApiImplicitParams({
  34. @ApiImplicitParam(name="pageNum",value="页数",dataType="int", paramType = "query",required=true),
  35. @ApiImplicitParam(name="pageSize",value="每页条数",dataType="int", paramType = "query",required=true)})
  36. public ResultData list(@ModelAttribute WxCampaign wxCampaign, Integer pageNum, Integer pageSize) {
  37. if (null == wxCampaign) wxCampaign = new WxCampaign();
  38. wxCampaign.setStatus(0);
  39. wxCampaign.setTenantId(getTenantId());
  40. wxCampaign.setSortColumns(SortNum_ASC);
  41. final PageInfo<WxCampaign> page = wxCampaignService.listAsPage(wxCampaign, pageNum, pageSize);
  42. return new ResultData(page);
  43. }
  44. @ApiOperation("根据id查询接口")
  45. @GetMapping("/findById")
  46. @ApiImplicitParam(name="id",value="id",dataType="Long", paramType = "query",required=true)
  47. public ResultData findById(Long id) {
  48. WxCampaign wxCampaign = wxCampaignService.getById(id);
  49. if (wxCampaign != null) {
  50. List<Long> list = new ArrayList<>();
  51. List<String> templist = JSON.parseArray(wxCampaign.getCouponIds(), String.class);
  52. for (String temp : templist
  53. ) {
  54. list.add(Long.parseLong(temp));
  55. }
  56. WxCoupon wxCoupon = new WxCoupon();
  57. wxCoupon.setTenantId(getTenantId());
  58. wxCoupon.setIds(list);
  59. wxCoupon.setStatus(1);
  60. List<WxCoupon> couponlist = wxCouponService.findList(wxCoupon);
  61. wxCampaign.setCoupons(couponlist);
  62. }
  63. return new ResultData(Result.SUCCESS, "查询成功", wxCampaign);
  64. }
  65. @ApiOperation("调整顺序")
  66. @GetMapping("/move")
  67. @ApiImplicitParams({
  68. @ApiImplicitParam(name="sourceId",value="",dataType="Long", paramType = "query",required=true),
  69. @ApiImplicitParam(name="targetId",value="",dataType="Long", paramType = "query",required=true)})
  70. public ResultData move(Long sourceId,Long targetId) {
  71. WxCampaign source = wxCampaignService.getById(sourceId);
  72. WxCampaign target = wxCampaignService.getById(targetId);
  73. if(source==null||target==null){
  74. return new ResultData(Result.ERROR, "调整顺序失败", null);
  75. }
  76. int temp =source.getSortNum();
  77. source.setSortNum(target.getSortNum());
  78. target.setSortNum(temp);
  79. wxCampaignService.saveOrUpdate(source);
  80. wxCampaignService.saveOrUpdate(target);
  81. return new ResultData(Result.SUCCESS, "调整顺序成功", null);
  82. }
  83. }