反馈修改

This commit is contained in:
huangzj
2023-08-22 13:34:13 +08:00
parent c77ab6ee3e
commit 4477c2e8c8
4 changed files with 33 additions and 8 deletions

View File

@@ -202,8 +202,8 @@ public class CsDeviceUserPOServiceImpl extends ServiceImpl<CsDeviceUserPOMapper,
@Override
public String isPrimaryUser(String deviceId) {
String userIndex = RequestUtil.getUserIndex();
CsDeviceUserPO one = this.lambdaQuery().eq(CsDeviceUserPO::getDeviceId, deviceId).eq(CsDeviceUserPO::getStatus,"1" ).eq(CsDeviceUserPO::getPrimaryUserId, userIndex).one();
String number = Objects.isNull(one) ? "0" : "1";
List<CsDeviceUserPO> list = this.lambdaQuery().eq(CsDeviceUserPO::getDeviceId, deviceId).eq(CsDeviceUserPO::getStatus, "1").eq(CsDeviceUserPO::getPrimaryUserId, userIndex).list();
String number = CollectionUtils.isEmpty(list) ? "0" : "1";
return number;
}

View File

@@ -24,6 +24,8 @@ public class CsFeedbackChatPO extends BaseEntity {
@TableField(value = "user_id")
private String userId;
@TableField(exist = false)
private String userName;
/**
* 消息内容
*/

View File

@@ -60,6 +60,12 @@
<artifactId>dynamic-datasource-spring-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>user-api</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
</dependencies>

View File

@@ -17,16 +17,17 @@ import com.njcn.cssystem.service.CsFeedbackService;
import com.njcn.cssystem.service.CsFilePathService;
import com.njcn.oss.constant.OssPath;
import com.njcn.oss.utils.FileStorageUtil;
import com.njcn.user.api.UserFeignClient;
import com.njcn.user.pojo.po.User;
import com.njcn.web.utils.RequestUtil;
import lombok.RequiredArgsConstructor;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.*;
import java.util.stream.Collectors;
/**
@@ -45,6 +46,8 @@ public class CsFeedbackServiceImpl extends ServiceImpl<CsFeedbackMapper, CsFeedb
private final FileStorageUtil fileStorageUtil;
private final CsFilePathService csFilePathService;
private final CsFeedbackChatService csFeedbackChatService;
private final UserFeignClient userFeignClient;
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean addFeedBack(CsFeedbackAddParm csFeedbackAddParm) {
@@ -81,7 +84,7 @@ public class CsFeedbackServiceImpl extends ServiceImpl<CsFeedbackMapper, CsFeedb
QueryWrapper<CsFeedbackPO> queryWrapper = new QueryWrapper<> ();
queryWrapper.eq ("user_id",RequestUtil.getUserIndex()).
eq (StringUtils.isNotBlank (csFeedbackQueryParm.getType ()),"type",csFeedbackQueryParm.getType ()).
eq (StringUtils.isNotBlank (csFeedbackQueryParm.getStatus ()),"status",csFeedbackQueryParm.getStatus ());
eq (StringUtils.isNotBlank (csFeedbackQueryParm.getStatus ()),"status",csFeedbackQueryParm.getStatus ()).orderByDesc("create_time");
Page<CsFeedbackPO> csFeedbackPOPage = this.getBaseMapper ( ).selectPage (page, queryWrapper);
QueryWrapper<CsFeedbackChatPO> csFeedbackChatPOQueryWrapper = new QueryWrapper<> ();
List<CsFeedbackVO> collect = csFeedbackPOPage.getRecords ( ).stream ( ).map (temp -> {
@@ -113,9 +116,23 @@ public class CsFeedbackServiceImpl extends ServiceImpl<CsFeedbackMapper, CsFeedb
}).collect (Collectors.toList ( ));
csFeedbackDetailVO.setImageUrls (collect);
QueryWrapper<CsFeedbackChatPO> csFeedbackChatPOQueryWrapper = new QueryWrapper();
csFeedbackChatPOQueryWrapper.eq ("id", id).eq ("status", "1").orderByAsc ("create_time");
csFeedbackChatPOQueryWrapper.eq ("id", id).eq ("status", "1").orderByDesc ("create_time");
List<CsFeedbackChatPO> list1 = csFeedbackChatService.list (csFeedbackChatPOQueryWrapper);
csFeedbackDetailVO.setCsFeedbackChatPOList (list1);
List<String> collect1 = list1.stream().map(CsFeedbackChatPO::getUserId).distinct().collect(Collectors.toList());
Map<String, String> collect2;
if(!CollectionUtils.isEmpty(collect1)){
List<User> userTem = userFeignClient.getUserByIdList(collect1).getData();
collect2 = userTem.stream().collect(Collectors.toMap(User::getId, User::getName, (e1, e2) -> e1 + "," + e2));
} else {
collect2 = new HashMap<>();
}
list1.stream().forEach(temp ->{
temp.setUserName(collect2.get(temp.getUserId()));
});
csFeedbackDetailVO.setCsFeedbackChatPOList (list1);
return csFeedbackDetailVO;
}
}