Commit d082e64d by 桂前礼

bug: [1025185] 读者输入书刊搜集-用户实搜记录出版社都为空并且读者记录的查看读者信息为空

parent 2d5fad3c
...@@ -17,7 +17,7 @@ public interface SearchBiz { ...@@ -17,7 +17,7 @@ public interface SearchBiz {
void updateHotBookSeqNum(HotBook hotBook); void updateHotBookSeqNum(HotBook hotBook);
void createSearchRecord4H5(SearchRecord searchRecord); void createSearchRecord4H5(SearchRecord searchRecord, Long officialAccountId);
PageBeanNew<SearchBookVO> getSearchList(String content, Integer currentPage, Integer numPerPage); PageBeanNew<SearchBookVO> getSearchList(String content, Integer currentPage, Integer numPerPage);
......
package com.pcloud.book.book.biz.impl; package com.pcloud.book.book.biz.impl;
import cn.hutool.core.collection.CollUtil;
import com.pcloud.book.base.exception.BookBizException; import com.pcloud.book.base.exception.BookBizException;
import com.pcloud.book.book.biz.SearchBiz; import com.pcloud.book.book.biz.SearchBiz;
import com.pcloud.book.book.dao.BookDao; import com.pcloud.book.book.dao.BookDao;
...@@ -14,17 +15,22 @@ import com.pcloud.book.book.vo.BookSearchTopVO; ...@@ -14,17 +15,22 @@ import com.pcloud.book.book.vo.BookSearchTopVO;
import com.pcloud.book.book.vo.SearchBookVO; import com.pcloud.book.book.vo.SearchBookVO;
import com.pcloud.book.consumer.common.ExportConsr; import com.pcloud.book.consumer.common.ExportConsr;
import com.pcloud.book.consumer.message.MessageConsr; import com.pcloud.book.consumer.message.MessageConsr;
import com.pcloud.book.consumer.reader.ReaderConsr;
import com.pcloud.book.consumer.user.AdviserConsr; import com.pcloud.book.consumer.user.AdviserConsr;
import com.pcloud.book.consumer.user.AgentConsr; import com.pcloud.book.consumer.user.AgentConsr;
import com.pcloud.book.consumer.user.ChannelConsr;
import com.pcloud.book.consumer.wechatgroup.WechatGroupConsr; import com.pcloud.book.consumer.wechatgroup.WechatGroupConsr;
import com.pcloud.book.util.common.ThreadPoolUtils; import com.pcloud.book.util.common.ThreadPoolUtils;
import com.pcloud.channelcenter.wechat.service.AccountSettingService;
import com.pcloud.common.core.aspect.ParamLog; import com.pcloud.common.core.aspect.ParamLog;
import com.pcloud.common.page.PageBeanNew; import com.pcloud.common.page.PageBeanNew;
import com.pcloud.common.page.PageParam; import com.pcloud.common.page.PageParam;
import com.pcloud.common.utils.BeanUtils; import com.pcloud.common.utils.BeanUtils;
import com.pcloud.common.utils.DateUtils; import com.pcloud.common.utils.DateUtils;
import com.pcloud.common.utils.ListUtils; import com.pcloud.common.utils.ListUtils;
import com.pcloud.common.utils.ResponseHandleUtil;
import com.pcloud.common.utils.string.StringUtil; import com.pcloud.common.utils.string.StringUtil;
import com.pcloud.readercenter.wechat.entity.WechatUser;
import com.pcloud.usercenter.party.adviser.dto.AdviserBaseInfoDto; import com.pcloud.usercenter.party.adviser.dto.AdviserBaseInfoDto;
import com.pcloud.wechatgroup.group.dto.GroupUserDTO; import com.pcloud.wechatgroup.group.dto.GroupUserDTO;
import org.slf4j.Logger; import org.slf4j.Logger;
...@@ -38,6 +44,7 @@ import java.util.Date; ...@@ -38,6 +44,7 @@ import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Component("searchBiz") @Component("searchBiz")
...@@ -63,6 +70,10 @@ public class SearchBizImpl implements SearchBiz { ...@@ -63,6 +70,10 @@ public class SearchBizImpl implements SearchBiz {
private BookDao bookDao; private BookDao bookDao;
@Autowired @Autowired
private SearchRecordDisDao searchRecordDisDao; private SearchRecordDisDao searchRecordDisDao;
@Autowired
private ReaderConsr readerConsr;
@Autowired
private AccountSettingService accountSettingService;
@ParamLog("创建热门书") @ParamLog("创建热门书")
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
...@@ -131,13 +142,19 @@ public class SearchBizImpl implements SearchBiz { ...@@ -131,13 +142,19 @@ public class SearchBizImpl implements SearchBiz {
@ParamLog("创建搜索记录H5") @ParamLog("创建搜索记录H5")
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public void createSearchRecord4H5(SearchRecord searchRecord) { public void createSearchRecord4H5(SearchRecord searchRecord, Long officialAccountId) {
if (searchRecord==null){ if (searchRecord==null){
throw new BookBizException(BookBizException.PARAM_IS_ERROR,"参数为空!"); throw new BookBizException(BookBizException.PARAM_IS_ERROR,"参数为空!");
} }
if (StringUtil.isEmpty(searchRecord.getContent())){ if (StringUtil.isEmpty(searchRecord.getContent())){
throw new BookBizException(BookBizException.PARAM_IS_ERROR,"内容不能为空!"); throw new BookBizException(BookBizException.PARAM_IS_ERROR,"内容不能为空!");
} }
try {
Long agentId = ResponseHandleUtil.parseResponse(accountSettingService.getAgentIdByAccountSettingId(officialAccountId), Long.class);
searchRecord.setAgentId(agentId);
} catch (Exception e) {
LOGGER.info("[accountSettingService.getAgentIdByAccountSettingId] 获取 agentId 失败", e);
}
searchRecordDao.insert(searchRecord); searchRecordDao.insert(searchRecord);
createSearchRecordDis(searchRecord); createSearchRecordDis(searchRecord);
} }
...@@ -405,6 +422,10 @@ public class SearchBizImpl implements SearchBiz { ...@@ -405,6 +422,10 @@ public class SearchBizImpl implements SearchBiz {
if (!ListUtils.isEmpty(wxIds)){ if (!ListUtils.isEmpty(wxIds)){
userDTOMap = wechatGroupConsr.mapWxUserInfoByWxIdList(wxIds); userDTOMap = wechatGroupConsr.mapWxUserInfoByWxIdList(wxIds);
} }
List<Long> collect = list.stream().filter(x -> Objects.nonNull(x.getWechatUserId())).map(SearchRecord::getWechatUserId).distinct().collect(Collectors.toList());
Map<Long, WechatUser> userList = readerConsr.getUserList(collect);
for (SearchRecord searchRecord:list){ for (SearchRecord searchRecord:list){
if (searchRecord.getAgentId()!=null){ if (searchRecord.getAgentId()!=null){
searchRecord.setAgentName(names.get(searchRecord.getAgentId())); searchRecord.setAgentName(names.get(searchRecord.getAgentId()));
...@@ -417,6 +438,12 @@ public class SearchBizImpl implements SearchBiz { ...@@ -417,6 +438,12 @@ public class SearchBizImpl implements SearchBiz {
searchRecord.setSex(userDTO.getSex()); searchRecord.setSex(userDTO.getSex());
} }
} }
if (CollUtil.isNotEmpty(userList) && Objects.nonNull(searchRecord.getWechatUserId()) && userList.containsKey(searchRecord.getWechatUserId())){
WechatUser wechatUser = userList.get(searchRecord.getWechatUserId());
searchRecord.setHeadUrl(wechatUser.getWechatUserHeadurl());
searchRecord.setNickName(wechatUser.getWechatUserNickname());
searchRecord.setSex(wechatUser.getWechatUserSex());
}
} }
} }
} }
...@@ -101,7 +101,8 @@ public class SearchFacadeImpl implements SearchFacade { ...@@ -101,7 +101,8 @@ public class SearchFacadeImpl implements SearchFacade {
@RequestBody SearchRecord searchRecord @RequestBody SearchRecord searchRecord
) throws PermissionException { ) throws PermissionException {
Cookie.getId(userInfo, Cookie._WECHAT_USER_ID); Cookie.getId(userInfo, Cookie._WECHAT_USER_ID);
searchBiz.createSearchRecord4H5(searchRecord); Long officialAccountId = Cookie.getId(userInfo, Cookie._OFFICIAL_ACCOUNTS_ID);
searchBiz.createSearchRecord4H5(searchRecord, officialAccountId);
return new ResponseDto<>(); return new ResponseDto<>();
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment