浏览代码

添加家族相簿api接口

luobo 4 年之前
父节点
当前提交
2413adbb93

+ 9 - 29
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/family/TbFamilyPhotoController.java

@@ -18,14 +18,7 @@ import com.ruoyi.common.utils.StringUtils;
 import lombok.RequiredArgsConstructor;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
@@ -62,23 +55,8 @@ public class TbFamilyPhotoController extends BaseController {
     public TableDataInfo list(TbFamilyPhoto tbFamilyPhoto)
     {
         startPage();
-        LambdaQueryWrapper<TbFamilyPhoto> lqw = new LambdaQueryWrapper<TbFamilyPhoto>();
-        if (tbFamilyPhoto.getFamilyId() != null){
-            lqw.eq(TbFamilyPhoto::getFamilyId ,tbFamilyPhoto.getFamilyId());
-        }
-        if (tbFamilyPhoto.getAlbumId() != null){
-            lqw.eq(TbFamilyPhoto::getAlbumId ,tbFamilyPhoto.getAlbumId());
-        }
-        if (StringUtils.isNotBlank(tbFamilyPhoto.getTitle())){
-            lqw.eq(TbFamilyPhoto::getTitle ,tbFamilyPhoto.getTitle());
-        }
-        if (StringUtils.isNotBlank(tbFamilyPhoto.getUrl())){
-            lqw.eq(TbFamilyPhoto::getUrl ,tbFamilyPhoto.getUrl());
-        }
-        if (StringUtils.isNotBlank(tbFamilyPhoto.getStatus())){
-            lqw.eq(TbFamilyPhoto::getStatus ,tbFamilyPhoto.getStatus());
-        }
-        List<TbFamilyPhoto> list = iTbFamilyPhotoService.list(lqw);
+
+        List<TbFamilyPhoto> list = iTbFamilyPhotoService.queryList(tbFamilyPhoto);
         return getDataTable(list);
     }
 
@@ -103,7 +81,7 @@ public class TbFamilyPhotoController extends BaseController {
     @PreAuthorize("@ss.hasPermi('system:familyPhoto:query')" )
     @GetMapping(value = "/{id}" )
     public AjaxResult getInfo(@PathVariable("id" ) Long id) {
-        return AjaxResult.success(iTbFamilyPhotoService.getById(id));
+        return AjaxResult.success(iTbFamilyPhotoService.getEntityById(id));
     }
 
     /**
@@ -153,9 +131,11 @@ public class TbFamilyPhotoController extends BaseController {
      */
     @ApiOperation("批量上传家族相簿照片")
     @PreAuthorize("@ss.hasPermi('system:familyPhoto:upload')" )
-   // @Log(title = "家族相簿照片" , businessType = BusinessType.INSERT)
-    @PostMapping("/batchUpload/{albumId}" )
-    public AjaxResult batchUpload(@PathVariable Long albumId, MultipartFile [] files, String modName) {
+    @PostMapping("/batchUpload" )
+    public AjaxResult batchUpload(
+            @RequestParam("files") MultipartFile [] files,
+            @RequestParam("albumId") Long albumId,
+            @RequestParam("modName") String modName) {
         LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
         Long userId = loginUser.getUser().getUserId();
         iTbFamilyPhotoService.batchUpload(userId,albumId,files,modName);

+ 7 - 0
ruoyi-system/src/main/java/com/ruoyi/app/family/album/domain/TbFamilyAlbum.java

@@ -2,6 +2,8 @@ package com.ruoyi.app.family.album.domain;
 
 import com.baomidou.mybatisplus.annotation.*;
 import com.ruoyi.app.domain.TbFamily;
+import com.ruoyi.common.validator.group.AddGroup;
+import com.ruoyi.common.validator.group.Group;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import com.fasterxml.jackson.annotation.JsonFormat;
@@ -17,6 +19,8 @@ import java.util.Date;
 import java.math.BigDecimal;
 import com.ruoyi.common.core.domain.BaseEntity;
 
+import javax.validation.constraints.NotNull;
+
 /**
  * 家族相簿
  * 
@@ -42,11 +46,14 @@ public class TbFamilyAlbum implements Serializable {
 
     /** 家族id */
     @ApiModelProperty(value="家族id")
+    @NotNull(message = "家族id不能为空")
+    @NotNull(message = "家族id不能为空",groups = Group.class)
     @Excel(name = "家族id")
     private Long familyId;
 
     /** 相簿标题名称 */
     @ApiModelProperty(value="相簿标题名称")
+    @NotNull(message = "相簿标题名称不能为空",groups = Group.class)
     @Excel(name = "相簿标题名称")
     private String title;
 

+ 20 - 4
ruoyi-system/src/main/java/com/ruoyi/app/family/photo/domain/TbFamilyPhoto.java

@@ -1,6 +1,9 @@
 package com.ruoyi.app.family.photo.domain;
 
-import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.*;
+import com.ruoyi.app.domain.TbFamily;
+import com.ruoyi.app.family.album.domain.TbFamilyAlbum;
+import com.ruoyi.common.validator.group.Group;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import com.fasterxml.jackson.annotation.JsonFormat;
@@ -10,14 +13,14 @@ import lombok.NoArgsConstructor;
 import lombok.ToString;
 import lombok.experimental.Accessors;
 import com.ruoyi.common.annotation.Excel;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import com.baomidou.mybatisplus.annotation.IdType;
+
 import java.io.Serializable;
 import java.util.Date;
 import java.math.BigDecimal;
 import com.ruoyi.common.core.domain.BaseEntity;
 
+import javax.validation.constraints.NotNull;
+
 /**
  * 家族相簿照片
  * 
@@ -44,11 +47,14 @@ public class TbFamilyPhoto implements Serializable {
     /** 家族 */
     @ApiModelProperty(value="家族")
     @Excel(name = "家族")
+    @NotNull(message = "家族id不能为空",groups = Group.class)
     private Long familyId;
 
     /** 相簿 */
     @ApiModelProperty(value="相簿")
     @Excel(name = "相簿")
+    @NotNull(message = "相簿id不能为空")
+    @NotNull(message = "相簿id不能为空",groups = Group.class)
     private Long albumId;
 
     /** 标题 */
@@ -59,6 +65,7 @@ public class TbFamilyPhoto implements Serializable {
     /** url */
     @ApiModelProperty(value="url")
     @Excel(name = "url")
+    @NotNull(message = "图片url不能为空",groups = Group.class)
     private String url;
 
     /** 创建者 */
@@ -91,4 +98,13 @@ public class TbFamilyPhoto implements Serializable {
     @ApiModelProperty(value="删除标志(0代表存在 1代表删除)")
     @TableLogic
     private String delFlag;
+
+    @ApiModelProperty(value = "家族信息")
+    @TableField(exist = false)
+    private TbFamily family;
+
+    @ApiModelProperty(value = "相簿信息")
+    @TableField(exist = false)
+    private TbFamilyAlbum album;
+
 }

+ 7 - 0
ruoyi-system/src/main/java/com/ruoyi/app/family/photo/service/ITbFamilyPhotoService.java

@@ -6,6 +6,7 @@ import com.ruoyi.app.family.photo.domain.TbFamilyPhoto;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
+import java.util.List;
 
 /**
  * 家族相簿照片
@@ -14,6 +15,12 @@ import java.io.IOException;
  * @date 2020-10-14
  */
 public interface ITbFamilyPhotoService extends IService<TbFamilyPhoto> {
+
+
+    List<TbFamilyPhoto> queryList(TbFamilyPhoto entity);
+
+    TbFamilyPhoto getEntityById(Long id);
+
     /**
      * 批量上传图片
      * @param albumId

+ 48 - 0
ruoyi-system/src/main/java/com/ruoyi/app/family/photo/service/impl/TbFamilyPhotoServiceImpl.java

@@ -1,10 +1,13 @@
 package com.ruoyi.app.family.photo.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.ruoyi.app.domain.TbFamily;
 import com.ruoyi.app.family.album.domain.TbFamilyAlbum;
 import com.ruoyi.app.family.album.service.ITbFamilyAlbumService;
 import com.ruoyi.app.family.photo.domain.TbFamilyPhoto;
 import com.ruoyi.app.family.photo.mapper.TbFamilyPhotoMapper;
 import com.ruoyi.app.family.photo.service.ITbFamilyPhotoService;
+import com.ruoyi.app.service.ITbFamilyService;
 import com.ruoyi.common.config.RuoYiConfig;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.exception.CustomException;
@@ -32,6 +35,51 @@ public class TbFamilyPhotoServiceImpl extends ServiceImpl<TbFamilyPhotoMapper, T
     @Autowired
     private ITbFamilyAlbumService familyAlbumService;
 
+    @Autowired
+    private ITbFamilyService familyService;
+    @Override
+    public List<TbFamilyPhoto> queryList(TbFamilyPhoto entity) {
+        LambdaQueryWrapper<TbFamilyPhoto> lqw = new LambdaQueryWrapper<TbFamilyPhoto>();
+        if (entity.getFamilyId() != null){
+            lqw.eq(TbFamilyPhoto::getFamilyId ,entity.getFamilyId());
+        }
+        if (entity.getAlbumId() != null){
+            lqw.eq(TbFamilyPhoto::getAlbumId ,entity.getAlbumId());
+        }
+        if (StringUtils.isNotBlank(entity.getTitle())){
+            lqw.eq(TbFamilyPhoto::getTitle ,entity.getTitle());
+        }
+        if (StringUtils.isNotBlank(entity.getUrl())){
+            lqw.eq(TbFamilyPhoto::getUrl ,entity.getUrl());
+        }
+        if (StringUtils.isNotBlank(entity.getStatus())){
+            lqw.eq(TbFamilyPhoto::getStatus ,entity.getStatus());
+        }
+
+        List<TbFamilyPhoto> list = this.list(lqw);
+
+        list.forEach(item->{
+            TbFamily family = familyService.getById(item.getFamilyId());
+            item.setFamily(family);
+            TbFamilyAlbum album = familyAlbumService.getById(item.getAlbumId());
+            item.setAlbum(album);
+        });
+
+        return list;
+    }
+
+    @Override
+    public TbFamilyPhoto getEntityById(Long id) {
+        TbFamilyPhoto entity = this.getById(id);
+        if (entity!=null){
+            TbFamily family = familyService.getById(entity.getFamilyId());
+            entity.setFamily(family);
+            TbFamilyAlbum album = familyAlbumService.getById(entity.getAlbumId());
+            entity.setAlbum(album);
+        }
+        return entity;
+    }
+
     @Override
     public Boolean batchUpload(Long userId, Long albumId, MultipartFile[] files, String modName) {
         //查询相簿信息