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

95 строки
3.9 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.domain.po.WxCouponChannel;
  9. import com.simple.domain.vo.WxCouponChannelVo;
  10. import com.simple.enums.EnumCouponChannelType;
  11. import com.simple.service.WxCampaignService;
  12. import com.simple.service.WxCouponChannelService;
  13. import com.simple.service.WxCouponService;
  14. import io.swagger.annotations.Api;
  15. import io.swagger.annotations.ApiImplicitParam;
  16. import io.swagger.annotations.ApiImplicitParams;
  17. import io.swagger.annotations.ApiOperation;
  18. import org.apache.commons.lang3.StringUtils;
  19. import org.apache.log4j.Logger;
  20. import org.springframework.beans.factory.annotation.Autowired;
  21. import org.springframework.web.bind.annotation.*;
  22. import java.util.ArrayList;
  23. import java.util.List;
  24. import static com.simple.domain.po.WxCampaign.Field.SortNum_ASC;
  25. @RestController
  26. @RequestMapping("/api/wxCampaign")
  27. @Api(description="促销和banner接口")
  28. public class WxCampaignController extends BaseController
  29. {
  30. @Autowired
  31. private WxCampaignService wxCampaignService;
  32. @Autowired
  33. private WxCouponService wxCouponService;
  34. @Autowired
  35. private WxCouponChannelService wxCouponChannelService;
  36. private Logger logger = Logger.getLogger(WxCampaignController.class);
  37. @ApiOperation("分页列表接口")
  38. @GetMapping("list")
  39. @ApiImplicitParams({
  40. @ApiImplicitParam(name="pageNum",value="页数",dataType="int", paramType = "query",required=true),
  41. @ApiImplicitParam(name="pageSize",value="每页条数",dataType="int", paramType = "query",required=true)})
  42. public ResultData list(@ModelAttribute WxCampaign wxCampaign, Integer pageNum, Integer pageSize) {
  43. if (null == wxCampaign) wxCampaign = new WxCampaign();
  44. wxCampaign.setStatus(0);
  45. wxCampaign.setTenantId(getTenantId());
  46. wxCampaign.setSortColumns(SortNum_ASC);
  47. final PageInfo<WxCampaign> page = wxCampaignService.listAsPage(wxCampaign, pageNum, pageSize);
  48. return new ResultData(page);
  49. }
  50. @ApiOperation("根据id查询接口")
  51. @GetMapping("/findById")
  52. @ApiImplicitParam(name="id",value="id",dataType="Long", paramType = "query",required=true)
  53. public ResultData findById(Long id) {
  54. WxCampaign wxCampaign = wxCampaignService.getById(id);
  55. if (wxCampaign != null) {
  56. WxCouponChannel wxCouponChannel = new WxCouponChannel();
  57. wxCouponChannel.setTenantId(getTenantId());
  58. wxCouponChannel.setTargetAd(EnumCouponChannelType.COUPON_CHANNEL_ID_CAMPAIN.getCode());
  59. wxCouponChannel.setSubTargetId(wxCampaign.getId());
  60. wxCouponChannel.setStatus(0);
  61. List<WxCouponChannelVo> couponList = wxCouponChannelService.listAPI(wxCouponChannel);
  62. wxCampaign.setCoupons(couponList);
  63. }
  64. return new ResultData(Result.SUCCESS, "查询成功", wxCampaign);
  65. }
  66. @ApiOperation("调整顺序")
  67. @GetMapping("/move")
  68. @ApiImplicitParams({
  69. @ApiImplicitParam(name="sourceId",value="",dataType="Long", paramType = "query",required=true),
  70. @ApiImplicitParam(name="targetId",value="",dataType="Long", paramType = "query",required=true)})
  71. public ResultData move(Long sourceId,Long targetId) {
  72. WxCampaign source = wxCampaignService.getById(sourceId);
  73. WxCampaign target = wxCampaignService.getById(targetId);
  74. if(source==null||target==null){
  75. return new ResultData(Result.ERROR, "调整顺序失败", null);
  76. }
  77. int temp =source.getSortNum();
  78. source.setSortNum(target.getSortNum());
  79. target.setSortNum(temp);
  80. wxCampaignService.saveOrUpdate(source);
  81. wxCampaignService.saveOrUpdate(target);
  82. return new ResultData(Result.SUCCESS, "调整顺序成功", null);
  83. }
  84. }