You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
2.0 KiB
53 lines
2.0 KiB
package com.youlai.boot.mini.service;
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.extension.service.IService;
|
|
import com.youlai.boot.mini.model.dto.DeleteUserPostDTO;
|
|
import com.youlai.boot.mini.model.dto.DeleteUserPostMediaDTO;
|
|
import com.youlai.boot.mini.model.dto.EditVisibilityDTO;
|
|
import com.youlai.boot.mini.model.entity.MiniUserPost;
|
|
import com.youlai.boot.mini.model.form.UserPostForm;
|
|
import com.youlai.boot.mini.model.form.UserPostCollectForm;
|
|
import com.youlai.boot.mini.model.form.UserPostLikeForm;
|
|
import com.youlai.boot.mini.model.query.OwnUserPostQuery;
|
|
import com.youlai.boot.mini.model.query.UserPostWaterfallQuery;
|
|
import com.youlai.boot.mini.model.vo.UserPostDetailsVO;
|
|
import com.youlai.boot.mini.model.vo.UserPostVO;
|
|
import com.youlai.boot.mini.model.vo.WaterfallResult;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
public interface UserPostService extends IService<MiniUserPost> {
|
|
|
|
List<String> saveFile(List<MultipartFile> images, List<MultipartFile> videos);
|
|
|
|
String saveUserPost(UserPostForm formData);
|
|
|
|
void updateUserPost(String postUuid, UserPostForm formData);
|
|
|
|
void deleteMediaSource(DeleteUserPostMediaDTO dto);
|
|
|
|
void saveMediaSource(String postUuid, List<MultipartFile> images, List<MultipartFile> videos);
|
|
|
|
void updateVisibility(String postUuid, EditVisibilityDTO dto);
|
|
|
|
void delete(DeleteUserPostDTO dto);
|
|
|
|
IPage<UserPostVO> getSelfCreatedPage(OwnUserPostQuery queryParams);
|
|
|
|
UserPostDetailsVO getDetails(String postUuid);
|
|
|
|
IPage<UserPostVO> getOthersCreatedPage(String authorUuid, OwnUserPostQuery queryParams);
|
|
|
|
Map<String, Object> toggleUserPostLike(UserPostLikeForm form, Long userId);
|
|
|
|
Map<String, Object> toggleUserPostCollect(UserPostCollectForm form, Long userId);
|
|
|
|
WaterfallResult<UserPostVO> getWaterfall(UserPostWaterfallQuery query, Long userId);
|
|
|
|
void resetCurrentUserBloom(Long userId);
|
|
|
|
void increaseUserPostViewCount(String postUuid);
|
|
}
|
|
|