From 51ee3c4db2eb49062d3236bf44f95dc22f8f6ac9 Mon Sep 17 00:00:00 2001
From: puhanshu <a9236326>
Date: 星期五, 14 一月 2022 17:59:03 +0800
Subject: [PATCH] 商业街bug修改
---
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java | 51 +++++++++++++++++++++++++++++++++++++++------------
1 files changed, 39 insertions(+), 12 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java
index 979fe9b..dee86d2 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActDiscussServiceImpl.java
@@ -204,10 +204,13 @@
}
if (currentUserRoles.isEmpty()) {
checkResult = false;
- }
- boolean result = sysAllowedRoles.stream().anyMatch(role -> currentUserRoles.contains(role));
- if (!result) {
- checkResult = false;
+ } else {
+ if (!sysAllowedRoles.contains("1")) {
+ boolean result = sysAllowedRoles.stream().anyMatch(role -> currentUserRoles.contains(role));
+ if (!result) {
+ checkResult = false;
+ }
+ }
}
}
}
@@ -251,7 +254,7 @@
} else {
comActDiscussDO.setStatus(ComActDiscussDO.status.yfb);
}
- comActDiscussDO.setUpdateAt(new Date());
+ comActDiscussDO.setUpdateAt(nowDate);
int insert = comActDiscussDAO.updateById(comActDiscussDO);
if (insert > 0) {
//如果是投票,需要把投票的选项存储
@@ -600,6 +603,11 @@
records.forEach(comActDiscussVO -> {
Integer type = comActDiscussVO.getType();
Long id = comActDiscussVO.getId();
+ String viewNumKey = String.join("_", DISCUSS_VIEW_NUM_PREFIX, id.toString());
+ if (stringRedisTemplate.hasKey(viewNumKey)) {
+ ValueOperations<String, String> opsForValue = stringRedisTemplate.opsForValue();
+ comActDiscussVO.setViewsNum(Integer.parseInt(opsForValue.get(viewNumKey)));
+ }
if (type.equals(2)) {
List<ComActDiscussOptionDO> comActDiscussOptionDOS = comActDiscussOptionDAO.selectList(
new QueryWrapper<ComActDiscussOptionDO>().lambda().eq(ComActDiscussOptionDO::getDiscussId, id));
@@ -673,11 +681,13 @@
*/
private void checkDiscussStatusIsCorrect(ComActDiscussVO comActDiscussVO) {
//判断discuss状态是否正确
- boolean isIncorrectStatus = comActDiscussVO.getEndTime().before(new Date()) &&
- (comActDiscussVO.getStatus().intValue() == 1 || comActDiscussVO.getStatus().intValue() == 2);
- if (isIncorrectStatus) {
- comActDiscussVO.setStatus(3);
- comActDiscussDAO.updateStatusById(comActDiscussVO.getId(), 3);
+ if(comActDiscussVO.getEndTime() != null){
+ boolean isIncorrectStatus = comActDiscussVO.getEndTime().before(new Date()) &&
+ (comActDiscussVO.getStatus().intValue() == 1 || comActDiscussVO.getStatus().intValue() == 2);
+ if (isIncorrectStatus) {
+ comActDiscussVO.setStatus(3);
+ comActDiscussDAO.updateStatusById(comActDiscussVO.getId(), 3);
+ }
}
}
@@ -889,7 +899,12 @@
comActDiscussVO.setHaveSign(comActDiscussVO1.getHaveSign());
comActDiscussVO.setHaveVote(comActDiscussVO1.getHaveVote());
}
-
+ String viewNumKey = String.join("_", DISCUSS_VIEW_NUM_PREFIX, id.toString());
+ if (stringRedisTemplate.hasKey(viewNumKey)) {
+ ValueOperations opsForValue = stringRedisTemplate.opsForValue();
+ int viewNum = Integer.parseInt((String) opsForValue.get(viewNumKey));
+ comActDiscussVO.setViewsNum(viewNum);
+ }
return R.ok(comActDiscussVO);
}
@@ -1123,7 +1138,9 @@
@Override
public R discussJurisdictionGet(Long communityId, Long userId) {
List<SysConfDO> confDOList = sysConfDao.selectList(new LambdaQueryWrapper<SysConfDO>()
- .eq(SysConfDO::getCommunityId, communityId).orderByDesc(SysConfDO::getCreateAt));
+ .eq(SysConfDO::getCommunityId, communityId)
+ .eq(SysConfDO::getCode,Constants.DISCUSS_IDENTITY_KEY + communityId)
+ .orderByDesc(SysConfDO::getCreateAt));
if (confDOList == null || confDOList.size() == 0) {
SysConfDO sysConfDO = new SysConfDO();
sysConfDO.setCode(Constants.DISCUSS_IDENTITY_KEY + communityId);
@@ -1256,6 +1273,16 @@
}
/**
+ * 一起议获取是否有发布权
+ * @param comActDiscussDTO
+ * @return
+ */
+ @Override
+ public R getDiscussPermissions(ComActDiscussDTO comActDiscussDTO) {
+ return R.ok(checkCurrentUserDiscussIdentity(comActDiscussDTO));
+ }
+
+ /**
* 将redis中浏览量写入表中
* @return 执行结果
*/
--
Gitblit v1.7.1