ソースを参照

文件上传 抽奖

785834757 2 ヶ月 前
コミット
bb872d24b2
28 ファイル変更525 行追加36 行削除
  1. 3 2
      market/src/main/java/com/ruoyi/market/domain/MarketAwardLibrary.java
  2. 11 5
      market/src/main/java/com/ruoyi/market/domain/MarketDrawActivity.java
  3. 10 3
      market/src/main/java/com/ruoyi/market/domain/MarketDrawActivityProbability.java
  4. 9 0
      market/src/main/java/com/ruoyi/market/domain/vo/DrawActivityQueryVo.java
  5. 17 0
      market/src/main/java/com/ruoyi/market/domain/vo/DrawActivitySaveVo.java
  6. 9 0
      market/src/main/java/com/ruoyi/market/domain/vo/DrawTemplateQueryVo.java
  7. 11 0
      market/src/main/java/com/ruoyi/market/mapper/MarketDrawActivityMapper.java
  8. 11 0
      market/src/main/java/com/ruoyi/market/mapper/MarketDrawActivityProbabilityMapper.java
  9. 8 0
      market/src/main/java/com/ruoyi/market/service/MarketDrawActivityProbabilityService.java
  10. 27 0
      market/src/main/java/com/ruoyi/market/service/MarketDrawActivityService.java
  11. 16 0
      market/src/main/java/com/ruoyi/market/service/MarketDrawTemplateService.java
  12. 21 0
      market/src/main/java/com/ruoyi/market/service/impl/MarketDrawActivityProbabilityServiceImpl.java
  13. 86 0
      market/src/main/java/com/ruoyi/market/service/impl/MarketDrawActivityServiceImpl.java
  14. 26 0
      market/src/main/java/com/ruoyi/market/service/impl/MarketDrawTemplateServiceImpl.java
  15. 90 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/file/UploadFileController.java
  16. 5 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/market/AwardController.java
  17. 53 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/market/DrawActivityController.java
  18. 13 5
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/market/DrawTemplateController.java
  19. 2 1
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/market/MarketAdvertisingProbabilityController.java
  20. 2 15
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/TestController.java
  21. 10 3
      ruoyi-admin/src/main/resources/application.yml
  22. 35 0
      ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/MarketUploadFile.java
  23. 5 0
      ruoyi-common/src/main/java/com/ruoyi/common/core/page/PageDomain.java
  24. 2 2
      ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java
  25. 1 0
      ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
  26. 7 0
      ruoyi-system/src/main/java/com/ruoyi/system/mapper/MarketUploadFileMapper.java
  27. 17 0
      ruoyi-system/src/main/java/com/ruoyi/system/service/MarketUploadFileService.java
  28. 18 0
      ruoyi-system/src/main/java/com/ruoyi/system/service/impl/MarketUploadFileServiceImpl.java

+ 3 - 2
market/src/main/java/com/ruoyi/market/domain/MarketAwardLibrary.java

@@ -7,6 +7,7 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
+import java.time.LocalDate;
 import java.time.LocalDateTime;
 
 
@@ -33,10 +34,10 @@ public class MarketAwardLibrary {
     private String awardType;
 
     @ApiModelProperty("生效日期")
-    private LocalDateTime effectiveDate;
+    private LocalDate effectiveDate;
 
     @ApiModelProperty("失效日期")
-    private LocalDateTime expiryDate;
+    private LocalDate expiryDate;
 
     @ApiModelProperty("是否删除")
     private String isDelete;

+ 11 - 5
market/src/main/java/com/ruoyi/market/domain/MarketDrawActivity.java

@@ -3,31 +3,37 @@ package com.ruoyi.market.domain;
 
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 import java.util.Date;
 
 @Data
-@EqualsAndHashCode(callSuper = true)
 @TableName("market_draw_activity")
-public class MarketDrawActivity extends BaseEntity {
+public class MarketDrawActivity {
     private String id;
 
+    @ApiModelProperty("抽奖名称")
     private String name;
 
+    @ApiModelProperty("抽奖描述")
     private String desc;
 
+    @ApiModelProperty("人天 限制抽奖次数")
     private String curtail;
 
+    @ApiModelProperty("领奖方式")
     private String receiveType;
 
+    @ApiModelProperty("生效日期")
     private String effectiveDate;
 
+    @ApiModelProperty("失效日期")
     private String expiryDate;
 
-    private Date createTime;
-
-    private String createBy;
+    @ApiModelProperty("模板id")
+    private String templateId;
 
 }

+ 10 - 3
market/src/main/java/com/ruoyi/market/domain/MarketDrawActivityProbability.java

@@ -2,20 +2,27 @@ package com.ruoyi.market.domain;
 
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 import java.lang.ref.PhantomReference;
+import java.math.BigDecimal;
 
 @Data
-@EqualsAndHashCode(callSuper = true)
 @TableName("market_draw_activity_probability")
-public class MarketDrawActivityProbability extends BaseEntity {
+public class MarketDrawActivityProbability {
     private String id;
 
+    @ApiModelProperty("抽奖id")
     private String drawId;
 
+    @ApiModelProperty("奖品id")
     private String awardId;
 
-    private String probability;
+    @ApiModelProperty("位置")
+    private String pos;
+
+    @ApiModelProperty("概率")
+    private BigDecimal probability;
 }

+ 9 - 0
market/src/main/java/com/ruoyi/market/domain/vo/DrawActivityQueryVo.java

@@ -0,0 +1,9 @@
+package com.ruoyi.market.domain.vo;
+
+import com.ruoyi.common.core.page.PageDomain;
+import lombok.Data;
+
+@Data
+public class DrawActivityQueryVo extends PageDomain {
+    private String drawName;
+}

+ 17 - 0
market/src/main/java/com/ruoyi/market/domain/vo/DrawActivitySaveVo.java

@@ -0,0 +1,17 @@
+package com.ruoyi.market.domain.vo;
+
+import com.ruoyi.market.domain.MarketDrawActivity;
+import com.ruoyi.market.domain.MarketDrawActivityProbability;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class DrawActivitySaveVo {
+
+
+    private MarketDrawActivity drawActivity;
+
+    private List<MarketDrawActivityProbability> awardProbabilityList;
+}

+ 9 - 0
market/src/main/java/com/ruoyi/market/domain/vo/DrawTemplateQueryVo.java

@@ -0,0 +1,9 @@
+package com.ruoyi.market.domain.vo;
+
+import com.ruoyi.common.core.page.PageDomain;
+import lombok.Data;
+
+@Data
+public class DrawTemplateQueryVo extends PageDomain {
+    private String drawName;
+}

+ 11 - 0
market/src/main/java/com/ruoyi/market/mapper/MarketDrawActivityMapper.java

@@ -0,0 +1,11 @@
+package com.ruoyi.market.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.market.domain.MarketDrawActivity;
+import com.ruoyi.market.domain.MarketDrawTemplate;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface MarketDrawActivityMapper extends BaseMapper<MarketDrawActivity> {
+
+}

+ 11 - 0
market/src/main/java/com/ruoyi/market/mapper/MarketDrawActivityProbabilityMapper.java

@@ -0,0 +1,11 @@
+package com.ruoyi.market.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.market.domain.MarketDrawActivityProbability;
+import com.ruoyi.market.domain.MarketDrawTemplate;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface MarketDrawActivityProbabilityMapper extends BaseMapper<MarketDrawActivityProbability> {
+
+}

+ 8 - 0
market/src/main/java/com/ruoyi/market/service/MarketDrawActivityProbabilityService.java

@@ -0,0 +1,8 @@
+package com.ruoyi.market.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.market.domain.MarketDrawActivityProbability;
+
+public interface MarketDrawActivityProbabilityService extends IService<MarketDrawActivityProbability> {
+
+}

+ 27 - 0
market/src/main/java/com/ruoyi/market/service/MarketDrawActivityService.java

@@ -0,0 +1,27 @@
+package com.ruoyi.market.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.market.domain.MarketDrawActivity;
+import com.ruoyi.market.domain.MarketDrawTemplate;
+import com.ruoyi.market.domain.vo.DrawActivityQueryVo;
+import com.ruoyi.market.domain.vo.DrawActivitySaveVo;
+import com.ruoyi.market.domain.vo.DrawTemplateQueryVo;
+
+public interface MarketDrawActivityService extends IService<MarketDrawActivity> {
+
+    /**
+     * 获取抽奖活动列表
+     * @param page
+     * @param drawActivityQueryVo
+     * @return
+     */
+    Page<MarketDrawActivity> getDrawActivityPage(Page page, DrawActivityQueryVo drawActivityQueryVo);
+
+    /**
+     * 添加抽奖活动
+     * @param drawActivitySaveVo
+     * @return
+     */
+    boolean addDrawActivity(DrawActivitySaveVo drawActivitySaveVo);
+}

+ 16 - 0
market/src/main/java/com/ruoyi/market/service/MarketDrawTemplateService.java

@@ -1,8 +1,24 @@
 package com.ruoyi.market.service;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.market.domain.MarketDrawTemplate;
+import com.ruoyi.market.domain.vo.DrawTemplateQueryVo;
 
 public interface MarketDrawTemplateService extends IService<MarketDrawTemplate> {
 
+    /**
+     * 获取抽奖模板分页
+     * @param page
+     * @param drawTemplateQueryVo
+     * @return
+     */
+    Page<MarketDrawTemplate> getDrawTemplatePage(Page page, DrawTemplateQueryVo drawTemplateQueryVo);
+
+    /**
+     * 删除抽奖模板
+     * @param drawTemplateId
+     * @return
+     */
+    boolean delDrawTemplate(String drawTemplateId);
 }

+ 21 - 0
market/src/main/java/com/ruoyi/market/service/impl/MarketDrawActivityProbabilityServiceImpl.java

@@ -0,0 +1,21 @@
+package com.ruoyi.market.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.market.domain.MarketDrawActivityProbability;
+import com.ruoyi.market.domain.MarketDrawTemplate;
+import com.ruoyi.market.domain.vo.DrawTemplateQueryVo;
+import com.ruoyi.market.mapper.MarketDrawActivityProbabilityMapper;
+import com.ruoyi.market.mapper.MarketDrawTemplateMapper;
+import com.ruoyi.market.service.MarketDrawActivityProbabilityService;
+import com.ruoyi.market.service.MarketDrawTemplateService;
+import org.springframework.stereotype.Service;
+
+import java.util.Objects;
+
+@Service
+public class MarketDrawActivityProbabilityServiceImpl extends ServiceImpl<MarketDrawActivityProbabilityMapper, MarketDrawActivityProbability>
+        implements MarketDrawActivityProbabilityService {
+
+}

+ 86 - 0
market/src/main/java/com/ruoyi/market/service/impl/MarketDrawActivityServiceImpl.java

@@ -0,0 +1,86 @@
+package com.ruoyi.market.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.utils.idgen.IdGenerate;
+import com.ruoyi.market.domain.MarketAwardLibrary;
+import com.ruoyi.market.domain.MarketDrawActivity;
+import com.ruoyi.market.domain.MarketDrawActivityProbability;
+import com.ruoyi.market.domain.MarketDrawTemplate;
+import com.ruoyi.market.domain.vo.DrawActivityQueryVo;
+import com.ruoyi.market.domain.vo.DrawActivitySaveVo;
+import com.ruoyi.market.domain.vo.DrawTemplateQueryVo;
+import com.ruoyi.market.mapper.MarketDrawActivityMapper;
+import com.ruoyi.market.mapper.MarketDrawTemplateMapper;
+import com.ruoyi.market.service.MarketAwardLibraryService;
+import com.ruoyi.market.service.MarketDrawActivityProbabilityService;
+import com.ruoyi.market.service.MarketDrawActivityService;
+import com.ruoyi.market.service.MarketDrawTemplateService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Objects;
+
+@Service
+public class MarketDrawActivityServiceImpl extends ServiceImpl<MarketDrawActivityMapper, MarketDrawActivity>
+        implements MarketDrawActivityService {
+
+    @Autowired
+    MarketDrawTemplateService marketDrawTemplateService;
+
+    @Autowired
+    MarketAwardLibraryService marketAwardLibraryService;
+
+    @Autowired
+    MarketDrawActivityProbabilityService marketDrawActivityProbabilityService;
+
+    /**
+     * 获取抽奖活动列表
+     * @param page
+     * @param drawActivityQueryVo
+     * @return
+     */
+    @Override
+    public Page<MarketDrawActivity> getDrawActivityPage(Page page, DrawActivityQueryVo drawActivityQueryVo) {
+        LambdaQueryWrapper<MarketDrawActivity> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(!Objects.isNull(drawActivityQueryVo.getDrawName()), MarketDrawActivity::getName, drawActivityQueryVo.getDrawName());
+        return this.page(page, queryWrapper);
+    }
+
+    /**
+     * 添加抽奖活动
+     * @param drawActivitySaveVo
+     * @return
+     */
+    @Transactional
+    @Override
+    public boolean addDrawActivity(DrawActivitySaveVo drawActivitySaveVo) {
+        String drawId = IdGenerate.nextId();
+        //验证抽奖模板
+        MarketDrawTemplate template = marketDrawTemplateService.getById(drawActivitySaveVo.getDrawActivity().getTemplateId());
+        if(Objects.isNull(template)){
+            throw new RuntimeException("抽奖模板不存在");
+        }
+
+        //验证奖品
+        drawActivitySaveVo.getAwardProbabilityList().forEach(item->{
+            MarketAwardLibrary award = marketAwardLibraryService.getById(item.getId());
+            if(!Objects.isNull(award)){
+                throw new RuntimeException("奖品不存在");
+            }
+        });
+
+        drawActivitySaveVo.getDrawActivity().setId(drawId);
+
+        drawActivitySaveVo.getAwardProbabilityList().forEach(item->{
+            item.setId(IdGenerate.nextId());
+            item.setDrawId(drawId);
+        });
+
+        marketDrawActivityProbabilityService.saveBatch(drawActivitySaveVo.getAwardProbabilityList());
+        this.save(drawActivitySaveVo.getDrawActivity());
+        return true;
+    }
+}

+ 26 - 0
market/src/main/java/com/ruoyi/market/service/impl/MarketDrawTemplateServiceImpl.java

@@ -1,14 +1,40 @@
 package com.ruoyi.market.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.market.domain.MarketDrawActivity;
 import com.ruoyi.market.domain.MarketDrawTemplate;
+import com.ruoyi.market.domain.vo.DrawTemplateQueryVo;
 import com.ruoyi.market.mapper.MarketDrawTemplateMapper;
 import com.ruoyi.market.service.MarketAdvertisingService;
 import com.ruoyi.market.service.MarketDrawTemplateService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.Objects;
+
 @Service
 public class MarketDrawTemplateServiceImpl extends ServiceImpl<MarketDrawTemplateMapper, MarketDrawTemplate>
         implements MarketDrawTemplateService {
 
+
+
+    @Override
+    public Page<MarketDrawTemplate> getDrawTemplatePage(Page page, DrawTemplateQueryVo drawTemplateQueryVo) {
+        LambdaQueryWrapper<MarketDrawTemplate> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(!Objects.isNull(drawTemplateQueryVo.getDrawName()), MarketDrawTemplate::getTemplateName, drawTemplateQueryVo.getDrawName());
+        return this.page(page, queryWrapper);
+    }
+
+    /**
+     * 删除抽奖模板
+     * @param drawTemplateId
+     * @return
+     */
+    @Override
+    public boolean delDrawTemplate(String drawTemplateId) {
+        MarketDrawTemplate byId = this.getById(drawTemplateId);
+        return true;
+    }
 }

+ 90 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/file/UploadFileController.java

@@ -0,0 +1,90 @@
+package com.ruoyi.web.controller.file;
+
+import com.ruoyi.common.core.domain.entity.MarketUploadFile;
+import com.ruoyi.system.service.MarketUploadFileService;
+import io.swagger.annotations.Api;
+import org.apache.commons.codec.digest.DigestUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.util.FileCopyUtils;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.Objects;
+
+@Api(tags = "上传文件")
+@RestController
+@RequestMapping("/market/upload")
+public class UploadFileController {
+
+    @Autowired
+    private MarketUploadFileService marketUploadFileService;
+
+    @Value("${upload.path}")
+    private String uploadPath;
+
+    @PostMapping(value = "uploadFile")
+    public MarketUploadFile uploadFile(MultipartFile multipartFile,String type){
+        try {
+            //获取文件md5
+            String fileMD5 = DigestUtils.md5Hex(multipartFile.getBytes());
+            MarketUploadFile uploadFiles = marketUploadFileService.getById(fileMD5);
+            if (!Objects.isNull(uploadFiles)) {
+                return uploadFiles;
+            }
+            //上传文件
+            MarketUploadFile marketUploadFile = new MarketUploadFile(
+                    fileMD5,
+                    multipartFile.getOriginalFilename(),
+                    multipartFile.getContentType(),
+                    uploadPath);
+
+            // 目录上传组装
+            String datePath = getFileFolder(type, true, true, true);
+            String filename = marketUploadFile.getFileName();
+            String suffix = filename.substring(filename.lastIndexOf("."));
+            String objectName = fileMD5 + suffix;
+            String path = uploadPath + "upload/" + datePath;
+
+            File directory = new File(path);
+            if (!directory.exists()) {
+                directory.mkdirs();
+            }
+            File file = new File(path + objectName);
+            if (!file.exists()) {
+                file.createNewFile();
+            }
+            //自动创建文件夹与文件 path + objectName
+            FileCopyUtils.copy(multipartFile.getBytes(), new FileOutputStream(path + objectName));
+            return marketUploadFile;
+        }catch(Exception e){
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+
+    private String getFileFolder(String type, boolean year, boolean month, boolean day) {
+        StringBuilder stringBuilder = new StringBuilder();
+        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        String dateString = dateFormat.format(new Date());
+        String[] split = dateString.split("-");
+        stringBuilder.append(type).append("/");
+        if (year) {
+            stringBuilder.append(split[0]).append("/");
+        }
+        if (month) {
+            stringBuilder.append(split[1]).append("/");
+        }
+        if (day) {
+            stringBuilder.append(split[2]).append("/");
+        }
+        return stringBuilder.toString();
+    }
+}

+ 5 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/market/AwardController.java

@@ -45,6 +45,11 @@ public class AwardController {
         return AjaxResult.success(marketAwardLibraryService.save(marketAwardLibrary));
     }
 
+    /**
+     * 删除奖品
+     * @param awardId
+     * @return
+     */
     @ApiOperation("删除奖品")
     @PostMapping("delAward")
     public AjaxResult delAward(String awardId){

+ 53 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/market/DrawActivityController.java

@@ -0,0 +1,53 @@
+package com.ruoyi.web.controller.market;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.market.domain.MarketDrawActivity;
+import com.ruoyi.market.domain.vo.DrawActivityQueryVo;
+import com.ruoyi.market.domain.vo.DrawActivitySaveVo;
+import com.ruoyi.market.service.MarketAwardLibraryService;
+import com.ruoyi.market.service.MarketDrawActivityService;
+import com.ruoyi.market.service.MarketDrawTemplateService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@Api(tags = "抽奖活动管理")
+@RestController
+@RequestMapping("/market/drawActivity")
+public class DrawActivityController {
+
+    @Autowired
+    private MarketDrawTemplateService marketDrawTemplateService;
+
+    @Autowired
+    private MarketAwardLibraryService marketAwardLibraryService;
+
+    @Autowired
+    private MarketDrawActivityService  marketDrawActivityService;
+
+
+    @ApiOperation("获取活动抽奖列表")
+    @PostMapping("获取活动抽奖列表")
+    public AjaxResult getDrawActivityPage(@RequestBody DrawActivityQueryVo drawActivityQueryVo) {
+        Page page = drawActivityQueryVo.getPage();
+        return AjaxResult.success(marketDrawActivityService.getDrawActivityPage(page,drawActivityQueryVo));
+    }
+
+    @ApiOperation("添加活动抽奖")
+    @PostMapping("添加活动抽奖")
+    public AjaxResult addDrawActivity(@RequestBody DrawActivitySaveVo drawActivitySaveVo) {
+        return AjaxResult.success(marketDrawActivityService.addDrawActivity(drawActivitySaveVo));
+    }
+
+    @ApiOperation("删除活动抽奖")
+    @PostMapping("删除活动抽奖")
+    public AjaxResult delDrawActivity(@RequestBody MarketDrawActivity marketDrawActivity){
+        return null;
+    }
+
+}

+ 13 - 5
ruoyi-admin/src/main/java/com/ruoyi/web/controller/market/DrawController.java → ruoyi-admin/src/main/java/com/ruoyi/web/controller/market/DrawTemplateController.java

@@ -1,8 +1,12 @@
 package com.ruoyi.web.controller.market;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.market.domain.MarketDrawTemplate;
+import com.ruoyi.market.domain.vo.DrawTemplateQueryVo;
 import com.ruoyi.market.service.MarketDrawTemplateService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
@@ -10,10 +14,10 @@ import org.springframework.web.bind.annotation.*;
 /**
  * 抽奖 controller
  */
-
+@Api(tags = "抽奖模版管理")
 @RestController
-@RequestMapping("/market/draw")
-public class DrawController {
+@RequestMapping("/market/drawTemplate")
+public class DrawTemplateController {
 
     @Autowired
     private MarketDrawTemplateService marketDrawTemplateService;
@@ -22,9 +26,11 @@ public class DrawController {
      * 获取模版抽奖list
      * @return
      */
+    @ApiOperation("获取抽奖模板列表")
     @PostMapping(value = "getDrawTemplateList")
-    public AjaxResult getDrawTemplateList() {
-        return AjaxResult.success(marketDrawTemplateService.list());
+    public AjaxResult getDrawTemplateList(@RequestBody DrawTemplateQueryVo awardTemplateQueryVo) {
+        Page page = awardTemplateQueryVo.getPage();
+        return AjaxResult.success(marketDrawTemplateService.getDrawTemplatePage(page,awardTemplateQueryVo));
     }
 
     /**
@@ -32,6 +38,7 @@ public class DrawController {
      * @param marketDrawTemplate
      * @return
      */
+    @ApiOperation("添加模板抽奖")
     @PostMapping(value = "addDrawTemplate")
     public AjaxResult addDrawTemplate(@RequestBody MarketDrawTemplate marketDrawTemplate) {
         return AjaxResult.success(marketDrawTemplateService.save(marketDrawTemplate));
@@ -42,6 +49,7 @@ public class DrawController {
      * @param marketDrawTemplate
      * @return
      */
+    @ApiOperation("更新活动抽奖模板")
     @PostMapping(value = "updateDrawTemplate")
     public AjaxResult updateDrawTemplate(@RequestBody MarketDrawTemplate marketDrawTemplate) {
         return AjaxResult.success(marketDrawTemplateService.updateById(marketDrawTemplate));

+ 2 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/market/MarketAdvertisingProbabilityController.java

@@ -9,6 +9,7 @@ import com.ruoyi.market.domain.MarketAdvertisingProbability;
 import com.ruoyi.market.domain.vo.AdvertisingLibraryQueryVo;
 import com.ruoyi.market.domain.vo.AdvertisingProbabilityQueryVo;
 import com.ruoyi.market.service.MarketAdvertisingProbabilityService;
+import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -18,7 +19,7 @@ import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
 
-@ApiOperation("广告概率管理")
+@Api(tags = "广告概率管理")
 @RestController
 @RequestMapping("/market/advertisingProbability")
 public class MarketAdvertisingProbabilityController extends BaseController {

+ 2 - 15
ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/TestController.java

@@ -27,7 +27,7 @@ import io.swagger.annotations.ApiOperation;
  * 
  * @author ruoyi
  */
-@Api("用户信息管理")
+
 @RestController
 @RequestMapping("/test/user")
 public class TestController extends BaseController
@@ -38,7 +38,6 @@ public class TestController extends BaseController
         users.put(2, new UserEntity(2, "ry", "admin123", "15666666666"));
     }
 
-    @ApiOperation("获取用户列表")
     @GetMapping("/list")
     public R<List<UserEntity>> userList()
     {
@@ -46,8 +45,6 @@ public class TestController extends BaseController
         return R.ok(userList);
     }
 
-    @ApiOperation("获取用户详细")
-    @ApiImplicitParam(name = "userId", value = "用户ID", required = true, dataType = "int", paramType = "path", dataTypeClass = Integer.class)
     @GetMapping("/{userId}")
     public R<UserEntity> getUser(@PathVariable Integer userId)
     {
@@ -61,13 +58,7 @@ public class TestController extends BaseController
         }
     }
 
-    @ApiOperation("新增用户")
-    @ApiImplicitParams({
-        @ApiImplicitParam(name = "userId", value = "用户id", dataType = "Integer", dataTypeClass = Integer.class),
-        @ApiImplicitParam(name = "username", value = "用户名称", dataType = "String", dataTypeClass = String.class),
-        @ApiImplicitParam(name = "password", value = "用户密码", dataType = "String", dataTypeClass = String.class),
-        @ApiImplicitParam(name = "mobile", value = "用户手机", dataType = "String", dataTypeClass = String.class)
-    })
+
     @PostMapping("/save")
     public R<String> save(UserEntity user)
     {
@@ -79,7 +70,6 @@ public class TestController extends BaseController
         return R.ok();
     }
 
-    @ApiOperation("更新用户")
     @PutMapping("/update")
     public R<String> update(@RequestBody UserEntity user)
     {
@@ -96,8 +86,6 @@ public class TestController extends BaseController
         return R.ok();
     }
 
-    @ApiOperation("删除用户信息")
-    @ApiImplicitParam(name = "userId", value = "用户ID", required = true, dataType = "int", paramType = "path", dataTypeClass = Integer.class)
     @DeleteMapping("/{userId}")
     public R<String> delete(@PathVariable Integer userId)
     {
@@ -113,7 +101,6 @@ public class TestController extends BaseController
     }
 }
 
-@ApiModel(value = "UserEntity", description = "用户实体")
 class UserEntity
 {
     @ApiModelProperty("用户ID")

+ 10 - 3
ruoyi-admin/src/main/resources/application.yml

@@ -16,10 +16,10 @@ ruoyi:
 # 开发环境配置
 server:
   # 服务器的HTTP端口,默认为8080
-  port: 8080
+  port: 8082
   servlet:
     # 应用的访问路径
-    context-path: /
+    context-path: /api
   tomcat:
     # tomcat的URI编码
     uri-encoding: UTF-8
@@ -87,6 +87,8 @@ spring:
         max-active: 8
         # #连接池最大阻塞等待时间(使用负值表示没有限制)
         max-wait: -1ms
+  resources:
+    static-locations: file:${upload.path},classpath:/static,classpath:/templates
 
 # token配置
 token:
@@ -120,7 +122,7 @@ swagger:
   # 是否开启swagger
   enabled: true
   # 请求前缀
-  pathMapping: /dev-api
+  pathMapping: /api
 
 # 防止XSS攻击
 xss:
@@ -130,3 +132,8 @@ xss:
   excludes: /system/notice
   # 匹配链接
   urlPatterns: /system/*,/monitor/*,/tool/*
+
+# 上传配置
+upload:
+  # 本地文件上传路径
+  path: 'E:/file/'

+ 35 - 0
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/MarketUploadFile.java

@@ -0,0 +1,35 @@
+package com.ruoyi.common.core.domain.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+@Data
+@TableName("market_upload_file")
+public class MarketUploadFile {
+    private String id;
+
+    private String fileName;
+
+    private String fileType;
+
+    private String filePath;
+
+    private String url;
+
+    private LocalDateTime createTime;
+
+    public MarketUploadFile(){
+
+    }
+
+    public MarketUploadFile(String md5,String filename,String fileType,String filePath){
+        this.id = md5;
+        this.fileName = filename;
+        this.fileType = fileType;
+        this.filePath = filePath;
+        this.createTime = LocalDateTime.now();
+    }
+
+}

+ 5 - 0
ruoyi-common/src/main/java/com/ruoyi/common/core/page/PageDomain.java

@@ -100,6 +100,11 @@ public class PageDomain
         this.reasonable = reasonable;
     }
 
+    public PageDomain(){
+        this.pageNum = 1;
+        this.pageSize = 10;
+    }
+
     public Page getPage(){
         return new Page(pageNum,pageSize);
     }

+ 2 - 2
ruoyi-framework/src/main/java/com/ruoyi/framework/config/ResourcesConfig.java

@@ -30,8 +30,8 @@ public class ResourcesConfig implements WebMvcConfigurer
     public void addResourceHandlers(ResourceHandlerRegistry registry)
     {
         /** 本地文件上传路径 */
-        registry.addResourceHandler(Constants.RESOURCE_PREFIX + "/**")
-                .addResourceLocations("file:" + RuoYiConfig.getProfile() + "/");
+//        registry.addResourceHandler(Constants.RESOURCE_PREFIX + "/**")
+//                .addResourceLocations("file:" + RuoYiConfig.getProfile() + "/");
 
         /** swagger配置 */
         registry.addResourceHandler("/swagger-ui/**")

+ 1 - 0
ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java

@@ -115,6 +115,7 @@ public class SecurityConfig
                     // 静态资源,可匿名访问
                     .antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll()
                     .antMatchers("/swagger-ui.html", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**").permitAll()
+                    .antMatchers("/upload/**").permitAll()
                     // 除上面外的所有请求全部需要鉴权认证
                     .anyRequest().authenticated();
             })

+ 7 - 0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/MarketUploadFileMapper.java

@@ -0,0 +1,7 @@
+package com.ruoyi.system.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.common.core.domain.entity.MarketUploadFile;
+
+public interface MarketUploadFileMapper extends BaseMapper<MarketUploadFile> {
+}

+ 17 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/MarketUploadFileService.java

@@ -0,0 +1,17 @@
+package com.ruoyi.system.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.common.core.domain.entity.MarketUploadFile;
+import com.ruoyi.system.domain.SysConfig;
+
+import java.util.List;
+
+/**
+ * 参数配置 服务层
+ * 
+ * @author ruoyi
+ */
+public interface MarketUploadFileService extends IService<MarketUploadFile>
+{
+
+}

+ 18 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/MarketUploadFileServiceImpl.java

@@ -0,0 +1,18 @@
+package com.ruoyi.system.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.core.domain.entity.MarketUploadFile;
+import com.ruoyi.system.mapper.MarketUploadFileMapper;
+import com.ruoyi.system.service.MarketUploadFileService;
+import org.springframework.stereotype.Service;
+
+import java.util.Objects;
+
+@Service
+public class MarketUploadFileServiceImpl extends ServiceImpl<MarketUploadFileMapper, MarketUploadFile>
+        implements MarketUploadFileService {
+
+
+}