[feat]搜索功用修改
This commit is contained in:
parent
4d02d61b64
commit
dd8796ba79
@ -36,7 +36,7 @@ public class AppSearchController {
|
||||
|
||||
@Tag(name = "视频、商品和用户检索")
|
||||
@PostMapping("")
|
||||
public R<IPage<?>> searchApp(@RequestBody SearchBO searchBO, @RequestBody Page page) {
|
||||
public R<IPage<?>> search(@RequestBody SearchBO searchBO, @RequestBody Page page) {
|
||||
try {
|
||||
LoginUser loginUser = LoginHelper.getLoginUser();
|
||||
if (loginUser == null) {
|
||||
@ -44,7 +44,7 @@ public class AppSearchController {
|
||||
}
|
||||
searchBO.setUserId(String.valueOf(loginUser.getUserId()));
|
||||
} catch (Exception e) {
|
||||
log.error("用户没登陆11", e);
|
||||
log.error("用户没登陆", e);
|
||||
}
|
||||
|
||||
IPage<?> pages = null;
|
||||
|
@ -39,10 +39,4 @@ public class SearchBO {
|
||||
@Schema(description = "城市编码")
|
||||
private String cityCode;
|
||||
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
@Schema(description = "状态")
|
||||
private String status;
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,17 @@
|
||||
package com.wzj.soopin.content.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
|
||||
@AllArgsConstructor
|
||||
public enum VlogStatusEnum {
|
||||
AUDITING(0, "待审核"),
|
||||
APPROVED(1, "通过"),
|
||||
AUDITI_REJECT(2, "审核驳回"),
|
||||
NEED_REEXAMINE (3, "需复审"),
|
||||
OFF_SHELF(4, "下架"),
|
||||
DELETE(5, "删除");
|
||||
|
||||
public final Integer type;
|
||||
public final String value;
|
||||
|
||||
}
|
@ -15,6 +15,7 @@ import com.wzj.soopin.content.domain.po.MyLikedVlog;
|
||||
import com.wzj.soopin.content.domain.po.Vlog;
|
||||
import com.wzj.soopin.content.domain.po.Users;
|
||||
import com.wzj.soopin.content.domain.vo.VlogerVO;
|
||||
import com.wzj.soopin.content.enums.VlogStatusEnum;
|
||||
import com.wzj.soopin.member.domain.po.Member;
|
||||
import com.wzj.soopin.content.domain.vo.IndexVlogVO;
|
||||
import com.wzj.soopin.content.enums.YesOrNo;
|
||||
@ -84,6 +85,8 @@ public class VlogServiceImpl extends ServiceImpl<VlogMapper, Vlog> implements Vl
|
||||
|
||||
@Autowired
|
||||
private IMemberService memberService;
|
||||
@Autowired
|
||||
private RedisOperator redis;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@Override
|
||||
@ -654,8 +657,50 @@ public class VlogServiceImpl extends ServiceImpl<VlogMapper, Vlog> implements Vl
|
||||
if (StringUtils.isNotBlank(bo.getCityCode())) {
|
||||
queryWrapper.eq(Vlog::getCityCode, bo.getCityCode());
|
||||
}
|
||||
if (StringUtils.isNotBlank(bo.getStatus())) {
|
||||
queryWrapper.eq(Vlog::getStatus, bo.getStatus());
|
||||
|
||||
queryWrapper.eq(Vlog::getStatus, VlogStatusEnum.APPROVED.type);
|
||||
|
||||
// 去掉黑名单的视频
|
||||
if (StringUtils.isNotBlank(userId)) {
|
||||
String redisKey = REDIS_VIDEO_BLOCK + ":" + userId;
|
||||
if (redis.keyIsExist(redisKey)) {
|
||||
List<String> blockVdList = new ArrayList<>();
|
||||
ObjectMapper objectMapper = new ObjectMapper();
|
||||
List<String> reports = redis.lrange(redisKey, 0, -1);
|
||||
for (String report : reports) {
|
||||
try {
|
||||
Map<String, Object> reportMap = objectMapper.readValue(report, new TypeReference<Map<String, Object>>() {});
|
||||
String vlogId = (String) reportMap.get("vlogId");
|
||||
blockVdList.add(vlogId);
|
||||
} catch (JsonProcessingException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
if (!blockVdList.isEmpty()) {
|
||||
queryWrapper.notIn(Vlog::getId, blockVdList);
|
||||
}
|
||||
}
|
||||
}
|
||||
// 去掉黑名单的用户
|
||||
if (StringUtils.isNotBlank(userId)) {
|
||||
String redisKey = REDIS_USER_BLOCK + ":" + userId;
|
||||
if (redis.keyIsExist(redisKey)) {
|
||||
List<String> blockUserList = new ArrayList<>();
|
||||
ObjectMapper objectMapper = new ObjectMapper();
|
||||
List<String> reports = redis.lrange(redisKey, 0, -1);
|
||||
for (String report : reports) {
|
||||
try {
|
||||
Map<String, Object> reportMap = objectMapper.readValue(report, new TypeReference<Map<String, Object>>() {});
|
||||
String memberId = (String) reportMap.get("MemberId");
|
||||
blockUserList.add(memberId);
|
||||
} catch (JsonProcessingException e) {
|
||||
log.error(e.getMessage());
|
||||
}
|
||||
}
|
||||
if (!blockUserList.isEmpty()) {
|
||||
queryWrapper.notIn(Vlog::getMemberId, blockUserList);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Page<Vlog> vlogPage = vlogMapper.selectPage(pageParam, queryWrapper);
|
||||
|
@ -25,14 +25,14 @@ public class RedisOperator {
|
||||
|
||||
// Key(键),简单的key-value操作
|
||||
//
|
||||
// /**
|
||||
// * 判断key是否存在
|
||||
// * @param key
|
||||
// * @return
|
||||
// */
|
||||
// public boolean keyIsExist(String key) {
|
||||
// return redisTemplate.hasKey(key);
|
||||
// }
|
||||
/**
|
||||
* 判断key是否存在
|
||||
* @param key
|
||||
* @return
|
||||
*/
|
||||
public boolean keyIsExist(String key) {
|
||||
return redisTemplate.hasKey(key);
|
||||
}
|
||||
//
|
||||
// /**
|
||||
// * 实现命令:TTL key,以秒为单位,返回给定 key的剩余生存时间(TTL, time to live)。
|
||||
@ -283,18 +283,18 @@ public class RedisOperator {
|
||||
// public long rpush(String key, String value) {
|
||||
// return redisTemplate.opsForList().rightPush(key, value);
|
||||
// }
|
||||
// // List(列表)
|
||||
// /**
|
||||
// * 实现命令:LRANGE key start stop,返回列表key中指定区间内的元素
|
||||
// *
|
||||
// * @param key Redis key
|
||||
// * @param start 开始索引
|
||||
// * @param stop 结束索引
|
||||
// * @return 返回指定区间的元素
|
||||
// */
|
||||
// public List<String> lrange(String key, long start, long stop) {
|
||||
// return redisTemplate.opsForList().range(key, start, stop);
|
||||
// }
|
||||
// List(列表)
|
||||
/**
|
||||
* 实现命令:LRANGE key start stop,返回列表key中指定区间内的元素
|
||||
*
|
||||
* @param key Redis key
|
||||
* @param start 开始索引
|
||||
* @param stop 结束索引
|
||||
* @return 返回指定区间的元素
|
||||
*/
|
||||
public List<String> lrange(String key, long start, long stop) {
|
||||
return redisTemplate.opsForList().range(key, start, stop);
|
||||
}
|
||||
// /**
|
||||
// * 实现命令:LREM key count value,移除列表中与 value 相等的元素
|
||||
// *
|
||||
|
@ -293,10 +293,6 @@ public class MemberServiceImpl extends ServiceImpl<MemberMapper,Member> implemen
|
||||
*/
|
||||
@Override
|
||||
public IPage<MemberVO> getMemberPageList(MemberBO query, Page<Member> page) {
|
||||
// int current = (int) page.getCurrent();
|
||||
// int size = (int) page.getSize();
|
||||
// Page<Member> pageParam = new Page<>(current, size);
|
||||
System.out.println("aaa");
|
||||
return memberMapper.getMember(page, query);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user