修改帖子

上级 de5a6640
流水线 #8294 已通过 于阶段
in 2 分 43 秒
package com.mmc.csf.release.forum.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class UpdateDynamicDO implements Serializable{
@ApiModelProperty(value = "动态id")
private Integer id;
@ApiModelProperty(value = "动态描述")
private String description;
@ApiModelProperty(value = "媒体资源")
private List<MediaVO> mediaVO;
}
...@@ -8,6 +8,7 @@ import com.mmc.csf.release.entity.gambit.ForumAttentionDO; ...@@ -8,6 +8,7 @@ import com.mmc.csf.release.entity.gambit.ForumAttentionDO;
import com.mmc.csf.release.forum.vo.CommentVO; import com.mmc.csf.release.forum.vo.CommentVO;
import com.mmc.csf.release.forum.vo.DynamicVO; import com.mmc.csf.release.forum.vo.DynamicVO;
import com.mmc.csf.release.forum.vo.ReplyToAReviewVO; import com.mmc.csf.release.forum.vo.ReplyToAReviewVO;
import com.mmc.csf.release.forum.vo.UpdateDynamicDO;
import com.mmc.csf.release.gambit.dto.ForumGambitDTO; import com.mmc.csf.release.gambit.dto.ForumGambitDTO;
import com.mmc.csf.release.gambit.dto.PostingLeaderboardDTO; import com.mmc.csf.release.gambit.dto.PostingLeaderboardDTO;
import com.mmc.csf.release.gambit.qo.ForumGambitQO; import com.mmc.csf.release.gambit.qo.ForumGambitQO;
...@@ -43,6 +44,13 @@ public class DynamicController extends BaseController { ...@@ -43,6 +44,13 @@ public class DynamicController extends BaseController {
return dynamicService.insertDynamic(dynamicVO, this.getUserLoginInfoFromRedis(request).getUserAccountId(), request); return dynamicService.insertDynamic(dynamicVO, this.getUserLoginInfoFromRedis(request).getUserAccountId(), request);
} }
@ApiOperation(value = "动态修改")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("/updateDynamic")
public ResultBody updateDynamic(@RequestBody UpdateDynamicDO updateDynamicDO, HttpServletRequest request) {
return dynamicService.updateDynamic(updateDynamicDO);
}
@ApiOperation(value = "点赞或取消点赞") @ApiOperation(value = "点赞或取消点赞")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)}) @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("/likeOrCancel") @GetMapping("/likeOrCancel")
......
...@@ -133,6 +133,9 @@ public interface DynamicDao { ...@@ -133,6 +133,9 @@ public interface DynamicDao {
void insertResource( void insertResource(
@Param("dynamicId") Integer dynamicId, @Param("type") int type, @Param("url") String url); @Param("dynamicId") Integer dynamicId, @Param("type") int type, @Param("url") String url);
void deleteResource(@Param("dynamicId") Integer dynamicId);
void updateDynamicDescription(@Param("dynamicId") Integer dynamicId, @Param("description") String description);
List<ForumResourceDO> listDynamicResources(Integer dynamicId); List<ForumResourceDO> listDynamicResources(Integer dynamicId);
List<ForumDynamicDO> getDynamicComment(String dynamicId); List<ForumDynamicDO> getDynamicComment(String dynamicId);
......
...@@ -7,6 +7,7 @@ import com.mmc.csf.common.util.web.ResultBody; ...@@ -7,6 +7,7 @@ import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.release.entity.gambit.ForumAttentionDO; import com.mmc.csf.release.entity.gambit.ForumAttentionDO;
import com.mmc.csf.release.forum.vo.CommentVO; import com.mmc.csf.release.forum.vo.CommentVO;
import com.mmc.csf.release.forum.vo.DynamicVO; import com.mmc.csf.release.forum.vo.DynamicVO;
import com.mmc.csf.release.forum.vo.UpdateDynamicDO;
import com.mmc.csf.release.gambit.qo.ForumGambitQO; import com.mmc.csf.release.gambit.qo.ForumGambitQO;
import com.mmc.csf.release.gambit.qo.PostingLeaderboardQO; import com.mmc.csf.release.gambit.qo.PostingLeaderboardQO;
import java.util.List; import java.util.List;
...@@ -16,7 +17,7 @@ import java.util.List; ...@@ -16,7 +17,7 @@ import java.util.List;
*/ */
public interface DynamicService { public interface DynamicService {
/** /**
* 插入动态 * 插入帖子
* *
* @param dynamicVO 动态 * @param dynamicVO 动态
* @return {@link ResultBody} * @return {@link ResultBody}
...@@ -24,6 +25,11 @@ public interface DynamicService { ...@@ -24,6 +25,11 @@ public interface DynamicService {
ResultBody insertDynamic(DynamicVO dynamicVO, Integer userAccountId, HttpServletRequest request); ResultBody insertDynamic(DynamicVO dynamicVO, Integer userAccountId, HttpServletRequest request);
/** /**
* 修改帖子
* @return {@link ResultBody}
*/
ResultBody updateDynamic(UpdateDynamicDO updateDynamicDO);
/**
* 点赞动态 * 点赞动态
* *
* @param userId 用户id * @param userId 用户id
......
...@@ -172,6 +172,23 @@ public class DynamicServiceImpl implements DynamicService { ...@@ -172,6 +172,23 @@ public class DynamicServiceImpl implements DynamicService {
} }
@Override @Override
@Transactional(rollbackFor = Exception.class)
public ResultBody updateDynamic(UpdateDynamicDO updateDynamicDO) {
List<MediaVO> mediaVOList = updateDynamicDO.getMediaVO();
dynamicDao.deleteResource(updateDynamicDO.getId());
if(mediaVOList != null){
for (MediaVO mediaVO : mediaVOList) {
dynamicDao.insertResource(updateDynamicDO.getId(), mediaVO.getType(), mediaVO.getUrl());
}
}
if(updateDynamicDO.getDescription() != null){
dynamicDao.updateDynamicDescription(updateDynamicDO.getId(), updateDynamicDO.getDescription());
}
return ResultBody.success("修改成功");
}
@Override
public ResultBody likeDynamic(Integer userId, Integer dynamicId) { public ResultBody likeDynamic(Integer userId, Integer dynamicId) {
// 获取动态信息 // 获取动态信息
ForumDynamicDO forumDynamicDO = dynamicDao.getDynamicInfo(dynamicId); ForumDynamicDO forumDynamicDO = dynamicDao.getDynamicInfo(dynamicId);
...@@ -185,7 +202,7 @@ public class DynamicServiceImpl implements DynamicService { ...@@ -185,7 +202,7 @@ public class DynamicServiceImpl implements DynamicService {
dynamicDao.forumCount(forumDynamicDO.getUserAccountId()); dynamicDao.forumCount(forumDynamicDO.getUserAccountId());
//评论 //评论
} else { } else {
if(gambitId == 101 || gambitId == 1001 || gambitId == 103){ if(gambitId == 1002 || gambitId == 1001 || gambitId == 1003){
return ResultBody.error("不能重复投票"); return ResultBody.error("不能重复投票");
} }
likeDAO.deleteLike(userId, dynamicId); likeDAO.deleteLike(userId, dynamicId);
...@@ -197,7 +214,7 @@ public class DynamicServiceImpl implements DynamicService { ...@@ -197,7 +214,7 @@ public class DynamicServiceImpl implements DynamicService {
private boolean isVoted(Integer gambitId, Integer userAccountId) { private boolean isVoted(Integer gambitId, Integer userAccountId) {
if (gambitId == 101 || gambitId == 1001 || gambitId == 103) { if (gambitId == 1001 || gambitId == 1002 || gambitId == 1003) {
boolean keyExists = stringRedisTemplate.hasKey(RedisConstant.VOTE + gambitId + userAccountId); boolean keyExists = stringRedisTemplate.hasKey(RedisConstant.VOTE + gambitId + userAccountId);
if(keyExists){ if(keyExists){
String voteStr = stringRedisTemplate.opsForValue().get(RedisConstant.VOTE + gambitId +userAccountId); String voteStr = stringRedisTemplate.opsForValue().get(RedisConstant.VOTE + gambitId +userAccountId);
......
...@@ -357,6 +357,11 @@ ...@@ -357,6 +357,11 @@
set check_status = #{status} set check_status = #{status}
where id = #{dynamicId} where id = #{dynamicId}
</update> </update>
<update id="updateDynamicDescription">
update forum_dynamic
set description = #{description}
where id = #{dynamicId}
</update>
<delete id="deleteDynamic"> <delete id="deleteDynamic">
delete delete
from forum_dynamic from forum_dynamic
...@@ -370,6 +375,10 @@ ...@@ -370,6 +375,10 @@
</foreach> </foreach>
</where> </where>
</delete> </delete>
<delete id="deleteResource">
delete from forum_resource
where dynamic_id = #{dynamicId}
</delete>
<select id="getDynamicInfo" resultType="com.mmc.csf.release.entity.forum.ForumDynamicDO"> <select id="getDynamicInfo" resultType="com.mmc.csf.release.entity.forum.ForumDynamicDO">
select fd.id, select fd.id,
version, version,
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论