多语言-房间列表增加地区搜索
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package com.accompany.admin.service.room;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.accompany.admin.common.BusinessException;
|
||||
import com.accompany.admin.dto.RoomResetDto;
|
||||
import com.accompany.admin.event.ResetRoomEvent;
|
||||
@@ -97,53 +98,52 @@ public class RoomSearchAdminService extends BaseService {
|
||||
|
||||
private Gson gson = new Gson();
|
||||
|
||||
public PageInfo<Room> getAllRoomList(Integer pageNumber, Integer pageSize, String erbanNo, int sort, int roomPermitType){
|
||||
public PageInfo<Room> getAllRoomList(Integer pageNumber, Integer pageSize, String erbanNo, int sort, int roomPermitType, Integer partitionId) {
|
||||
RoomExample roomExample = new RoomExample();
|
||||
if(sort == 1){
|
||||
if (sort == 1) {
|
||||
roomExample.setOrderByClause("create_time");
|
||||
}else{
|
||||
} else {
|
||||
roomExample.setOrderByClause("uid");
|
||||
}
|
||||
RoomExample.Criteria criteria = roomExample.createCriteria();
|
||||
if(!BlankUtil.isBlank(erbanNo) && erbanNo != ""){
|
||||
if (StrUtil.isNotEmpty(erbanNo)) {
|
||||
Account account = accountService.getAccountByErBanNo(Long.valueOf(erbanNo));
|
||||
criteria.andUidEqualTo(account.getUid());
|
||||
}
|
||||
if(roomPermitType != 0) {
|
||||
if (roomPermitType != 0) {
|
||||
criteria.andIsPermitRoomEqualTo((byte) roomPermitType);
|
||||
}
|
||||
PageHelper.startPage(pageNumber,pageSize);
|
||||
if (partitionId != null) {
|
||||
criteria.andPartitionIdEqualTo(partitionId);
|
||||
}
|
||||
PageHelper.startPage(pageNumber, pageSize);
|
||||
List<Room> roomList = roomMapper.selectByExample(roomExample);
|
||||
PageInfo pageInfo = new PageInfo(roomList);
|
||||
// convertToRoomVoList(pageInfo.getList());
|
||||
|
||||
// return new PageInfo<>(newList);
|
||||
// return new PageInfo<>(roomList);
|
||||
PageInfo<Room> pageInfo = new PageInfo<>(roomList);
|
||||
return pageInfo;
|
||||
}
|
||||
|
||||
public BusiResult setRoomStatus(int status,Integer uid){
|
||||
if(uid != null){
|
||||
Room room = roomMapper.selectByPrimaryKey(Long.valueOf(uid));
|
||||
room.setCanShow((byte)status);
|
||||
roomMapper.updateByPrimaryKeySelective(room);
|
||||
saveRoomCache(room);
|
||||
return new BusiResult(BusiStatus.SUCCESS,room);
|
||||
}else{
|
||||
public BusiResult setRoomStatus(int status, Integer uid) {
|
||||
if (uid != null) {
|
||||
Room room = roomMapper.selectByPrimaryKey(Long.valueOf(uid));
|
||||
room.setCanShow((byte) status);
|
||||
roomMapper.updateByPrimaryKeySelective(room);
|
||||
saveRoomCache(room);
|
||||
return new BusiResult(BusiStatus.SUCCESS, room);
|
||||
} else {
|
||||
return new BusiResult(BusiStatus.USERNOTEXISTS);
|
||||
}
|
||||
}
|
||||
|
||||
public List<RoomTag> getRoomTag(String name){
|
||||
public List<RoomTag> getRoomTag(String name) {
|
||||
List<RoomTag> roomTagList = roomTagService.getRoomTags(name);
|
||||
return roomTagList;
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Room saveRoom(Integer uid, Integer tagId, String badge, String backPic, Boolean hasDragonGame,
|
||||
Boolean isPureMode, Boolean closeBox,Boolean hasKTVPriv, Boolean hasBlindDateRoomPri, Integer singleRoomSortId, Integer recommendStatus) throws Exception{
|
||||
Boolean isPureMode, Boolean closeBox, Boolean hasKTVPriv, Boolean hasBlindDateRoomPri, Integer singleRoomSortId, Integer recommendStatus) throws Exception {
|
||||
Room room = roomMapper.selectByPrimaryKey(Long.valueOf(uid));
|
||||
if(room != null){
|
||||
if (room != null) {
|
||||
RoomTag roomTag = roomTagService.getRoomTagById(tagId);
|
||||
if (roomTag != null) {
|
||||
room.setRoomTag(roomTag.getName());
|
||||
@@ -157,7 +157,7 @@ public class RoomSearchAdminService extends BaseService {
|
||||
room.setIsPureMode(isPureMode);
|
||||
room.setCloseBox(closeBox);
|
||||
room.setHasKTVPriv(hasKTVPriv);
|
||||
if (!hasKTVPriv){
|
||||
if (!hasKTVPriv) {
|
||||
room.setIsOpenKTV(false);
|
||||
}
|
||||
Boolean canOpenBlindDateRoom = roomPlayTypeService.canOpenPlayByType(room.getUid(), Constant.RoomPlayType.BLIND_DATE);
|
||||
@@ -179,11 +179,11 @@ public class RoomSearchAdminService extends BaseService {
|
||||
roomPlayType.setUpdateTime(new Date());
|
||||
roomPlayTypeService.save(roomPlayType);
|
||||
}
|
||||
if(singleRoomSortId != null){
|
||||
if (singleRoomSortId != null) {
|
||||
singleBroadcastSortService.updateSingleBroadcastSort(room.getUid(), singleRoomSortId);
|
||||
room.setSingleRoomSortId(singleRoomSortId);
|
||||
}
|
||||
if(recommendStatus != null){
|
||||
if (recommendStatus != null) {
|
||||
singleBroadcastSortService.saveSingRoomSortRecommend(room.getUid(), recommendStatus);
|
||||
}
|
||||
roomService.updateOpenRoom(room);
|
||||
@@ -191,23 +191,24 @@ public class RoomSearchAdminService extends BaseService {
|
||||
return room;
|
||||
}
|
||||
|
||||
private void saveRoomCache(Room room){
|
||||
if(room == null){
|
||||
private void saveRoomCache(Room room) {
|
||||
if (room == null) {
|
||||
return;
|
||||
}
|
||||
room.setCanOpenBlindDate(roomPlayTypeService.canOpenPlayByType(room.getUid(), Constant.RoomPlayType.BLIND_DATE));
|
||||
String roomJson = gson.toJson(room);
|
||||
jedisService.hwrite(RedisKey.room.getKey(),room.getUid().toString(),roomJson);
|
||||
jedisService.hwrite(RedisKey.room.getKey(), room.getUid().toString(), roomJson);
|
||||
}
|
||||
public List<RoomVo> convertToRoomVoList(List<Room> oldList){
|
||||
|
||||
public List<RoomVo> convertToRoomVoList(List<Room> oldList) {
|
||||
List<RoomVo> newList = new ArrayList<>(oldList.size());
|
||||
if (CollectionUtils.isEmpty(oldList)){
|
||||
if (CollectionUtils.isEmpty(oldList)) {
|
||||
return newList;
|
||||
}
|
||||
|
||||
Map<Integer, String> partitionInfoDescMap = partitionInfoService.listAll().stream().collect(Collectors.toMap(PartitionInfo::getId, PartitionInfo::getDesc));
|
||||
|
||||
for(Room myRoom:oldList){
|
||||
for (Room myRoom : oldList) {
|
||||
myRoom.setCanOpenBlindDate(roomPlayTypeService.canOpenPlayByType(myRoom.getUid(), Constant.RoomPlayType.BLIND_DATE));
|
||||
RoomVo roomVo = convertToRoomVo(myRoom);
|
||||
roomVo.setPartitionDesc(partitionInfoDescMap.get(myRoom.getPartitionId()));
|
||||
@@ -216,12 +217,13 @@ public class RoomSearchAdminService extends BaseService {
|
||||
|
||||
return newList;
|
||||
}
|
||||
private RoomVo convertToRoomVo(Room room){
|
||||
|
||||
private RoomVo convertToRoomVo(Room room) {
|
||||
RoomVo roomVo = new RoomVo();
|
||||
roomVo.setRoom(room);
|
||||
Long uid = room.getUid();
|
||||
Account myAccount = accountService.getById(uid);
|
||||
if(myAccount != null){
|
||||
if (myAccount != null) {
|
||||
Long myErbanNo = myAccount.getErbanNo();
|
||||
roomVo.setErbanNo(myErbanNo);
|
||||
}
|
||||
@@ -230,12 +232,12 @@ public class RoomSearchAdminService extends BaseService {
|
||||
|
||||
public int resetNewRoom(Long uid) {
|
||||
Room room = roomService.getRoomByDB(uid);
|
||||
if(room == null) {
|
||||
if (room == null) {
|
||||
throw new BusinessException("未找到該房間");
|
||||
}
|
||||
if(room.getIsPermitRoom() == Constant.PermitType.NO_PERMIT_ROOM) {
|
||||
if (room.getIsPermitRoom() == Constant.PermitType.NO_PERMIT_ROOM) {
|
||||
room.setIsPermitRoom(Constant.PermitType.NEW_SHOW_ROOM);
|
||||
} else if(room.getIsPermitRoom() == Constant.PermitType.NEW_SHOW_ROOM){
|
||||
} else if (room.getIsPermitRoom() == Constant.PermitType.NEW_SHOW_ROOM) {
|
||||
room.setIsPermitRoom(Constant.PermitType.NO_PERMIT_ROOM);
|
||||
} else {
|
||||
throw new BusinessException("設置失敗.請查看該房間是否是牌照房");
|
||||
@@ -247,7 +249,7 @@ public class RoomSearchAdminService extends BaseService {
|
||||
|
||||
public int update(Room room) {
|
||||
int result = roomMapper.updateByPrimaryKey(room);
|
||||
if(result > 0) {
|
||||
if (result > 0) {
|
||||
saveRoomCache(room);
|
||||
}
|
||||
return result;
|
||||
@@ -255,22 +257,23 @@ public class RoomSearchAdminService extends BaseService {
|
||||
|
||||
/**
|
||||
* 重新设置房间类型
|
||||
*
|
||||
* @param uid
|
||||
* @param permitType
|
||||
* @return
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public int resetRoom(Long uid, byte permitType)throws Exception {
|
||||
public int resetRoom(Long uid, byte permitType) throws Exception {
|
||||
Room room = roomService.getRoomByDB(uid);
|
||||
if(room == null) {
|
||||
if (room == null) {
|
||||
throw new BusinessException("未找到該房間");
|
||||
}
|
||||
Byte beforePermitType = room.getIsPermitRoom();//修改之前的类型
|
||||
room.setIsPermitRoom(permitType);
|
||||
int result = update(room);
|
||||
//如果关闭牌照房,离开模式需要关闭
|
||||
if(beforePermitType.byteValue() == Constant.PermitType.PERMIT_ROOM && permitType != Constant.PermitType.PERMIT_ROOM
|
||||
&&room.getLeaveMode()!= null && room.getLeaveMode()){
|
||||
if (beforePermitType.byteValue() == Constant.PermitType.PERMIT_ROOM && permitType != Constant.PermitType.PERMIT_ROOM
|
||||
&& room.getLeaveMode() != null && room.getLeaveMode()) {
|
||||
roomService.closeLeaveMode(uid);
|
||||
}
|
||||
//更新对应模厅
|
||||
@@ -280,18 +283,19 @@ public class RoomSearchAdminService extends BaseService {
|
||||
|
||||
/**
|
||||
* 重新设置房间标题
|
||||
*
|
||||
* @param uid
|
||||
* @param title
|
||||
* @param roomDesc
|
||||
* @param introduction
|
||||
* @return
|
||||
*/
|
||||
public int resetRoomTitleAndIntro(Long uid, String title, String roomDesc, String introduction) throws Exception{
|
||||
public int resetRoomTitleAndIntro(Long uid, String title, String roomDesc, String introduction) throws Exception {
|
||||
Room room = roomService.getRoomByDB(uid);
|
||||
if(room == null) {
|
||||
if (room == null) {
|
||||
throw new BusinessException("未找到該房間");
|
||||
}
|
||||
if(StringUtils.isBlank(title)) {
|
||||
if (StringUtils.isBlank(title)) {
|
||||
throw new BusinessException("房間標題不能為空");
|
||||
}
|
||||
//不能超过15个字
|
||||
@@ -301,32 +305,32 @@ public class RoomSearchAdminService extends BaseService {
|
||||
// 敏感词检验
|
||||
boolean isSensitive = SensitiveFilterUtil.getBooleanSensitiveFilter(title.trim());
|
||||
String stringSensitiveFilter = SensitiveFilterUtil.getStringSensitiveFilter(title.trim());
|
||||
logger.info("stringSensitiveFilter:{}",stringSensitiveFilter);
|
||||
logger.info("stringSensitiveFilter:{}", stringSensitiveFilter);
|
||||
if (isSensitive) {
|
||||
throw new BusinessException(BusiStatus.ROOM_TITLE_IS_SENSITIVE.getReasonPhrase());
|
||||
}
|
||||
room.setTitle(title);
|
||||
|
||||
if(StringUtils.isNotBlank(roomDesc)) {
|
||||
if (StringUtils.isNotBlank(roomDesc)) {
|
||||
if (roomDesc.trim().length() > 15) {
|
||||
throw new BusinessException("房間公告標題不能超過15個字");
|
||||
}
|
||||
boolean roomDescSensitive = SensitiveFilterUtil.getBooleanSensitiveFilter(roomDesc.trim());
|
||||
String roomDescStringSensitiveFilter = SensitiveFilterUtil.getStringSensitiveFilter(roomDesc.trim());
|
||||
logger.info("roomDesc stringSensitiveFilter:{}",roomDescStringSensitiveFilter);
|
||||
logger.info("roomDesc stringSensitiveFilter:{}", roomDescStringSensitiveFilter);
|
||||
if (roomDescSensitive) {
|
||||
throw new BusinessException("房間公告標題包含敏感字");
|
||||
}
|
||||
}
|
||||
room.setRoomDesc(roomDesc);
|
||||
|
||||
if(StringUtils.isNotBlank(roomDesc)) {
|
||||
if (StringUtils.isNotBlank(roomDesc)) {
|
||||
if (roomDesc.trim().length() > 300) {
|
||||
throw new BusinessException("房間公告不能超過300個字");
|
||||
}
|
||||
boolean introSensitive = SensitiveFilterUtil.getBooleanSensitiveFilter(roomDesc.trim());
|
||||
String introStringSensitiveFilter = SensitiveFilterUtil.getStringSensitiveFilter(roomDesc.trim());
|
||||
logger.info("introStringSensitiveFilter:{}",introStringSensitiveFilter);
|
||||
logger.info("introStringSensitiveFilter:{}", introStringSensitiveFilter);
|
||||
if (introSensitive) {
|
||||
throw new BusinessException("房間公告包含敏感字");
|
||||
}
|
||||
@@ -345,12 +349,13 @@ public class RoomSearchAdminService extends BaseService {
|
||||
|
||||
/**
|
||||
* 重新设置房间类型:添加v2版本方法,解决可能存在的缓存和数据库不一致问题
|
||||
*
|
||||
* @param uid
|
||||
* @param permitType
|
||||
* @return
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class, transactionManager = "mybatisplusTransactionManager")
|
||||
public int resetRoomV2(Long uid, byte permitType)throws Exception {
|
||||
public int resetRoomV2(Long uid, byte permitType) throws Exception {
|
||||
String lockKey = RedisKey.reset_room_type_lock.getKey(String.valueOf(uid));
|
||||
String lockVal = jedisLockService.lock(lockKey);
|
||||
if (com.accompany.common.utils.StringUtils.isBlank(lockVal)) throw new ServiceException(BusiStatus.SERVER_BUSY);
|
||||
@@ -420,7 +425,7 @@ public class RoomSearchAdminService extends BaseService {
|
||||
resetRoomDealCache.dealFacade(roomResetDto);
|
||||
|
||||
// 修改前为游戏房,修改后不为游戏房,删除 mini_game_room 缓存信息
|
||||
if(Constant.RoomType.mini_game.equals(originType) && !Constant.RoomType.mini_game.equals(room.getType())){
|
||||
if (Constant.RoomType.mini_game.equals(originType) && !Constant.RoomType.mini_game.equals(room.getType())) {
|
||||
jedisService.hdel(RedisKey.mini_game_room.getKey(), String.valueOf(room.getRoomId()));
|
||||
}
|
||||
|
||||
@@ -441,7 +446,8 @@ public class RoomSearchAdminService extends BaseService {
|
||||
|
||||
if (ObjectUtil.isNull(room)) return;
|
||||
|
||||
if (!blindStateList.contains(room.getBlindDateState())) throw new ServiceException("相親模式進行中,不能切換個播房!");
|
||||
if (!blindStateList.contains(room.getBlindDateState()))
|
||||
throw new ServiceException("相親模式進行中,不能切換個播房!");
|
||||
}
|
||||
|
||||
|
||||
|
@@ -69,10 +69,10 @@ public class FirstPageBannerAdminController extends BaseController {
|
||||
|
||||
@ApiOperation("获取banner列表")
|
||||
@GetMapping(value = "/list")
|
||||
public Pagination getFirstPageBannerList(Byte skipType, Byte bannerStatus, Byte bannerType, String beginTime, String endTime, String appId) {
|
||||
public Pagination<FirstPageBanner> getFirstPageBannerList(Byte skipType, Byte bannerStatus, Byte bannerType, String beginTime, String endTime, String appId) {
|
||||
IPage<FirstPageBanner> pageInfo = firstPageBannerAdminService.getFirstPageBannerList(getPageNumber(), getPageSize(),
|
||||
skipType, bannerStatus, bannerType,beginTime,endTime,appId);
|
||||
return new Pagination(pageInfo);
|
||||
return new Pagination<>(pageInfo);
|
||||
}
|
||||
|
||||
@ApiOperation("批量删除banner")
|
||||
|
@@ -2,6 +2,7 @@ package com.accompany.admin.controller.room;
|
||||
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.accompany.admin.base.Pagination;
|
||||
import com.accompany.admin.common.BusinessException;
|
||||
import com.accompany.admin.controller.BaseController;
|
||||
import com.accompany.admin.service.RobotAdminService;
|
||||
@@ -35,10 +36,7 @@ import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.util.Date;
|
||||
@@ -75,15 +73,14 @@ public class RoomAdminController extends BaseController {
|
||||
.contentsNextContent("%s").contentsFontColor("#999999").contentsFontSize(28 / 2);
|
||||
|
||||
|
||||
@RequestMapping("/getAll")
|
||||
@ResponseBody
|
||||
public void getAllRoom(String erbanNo, int sort, int roomPermitType) {
|
||||
PageInfo<Room> pageInfo = roomSearchAdminService.getAllRoomList(getPageNumber(), getPageSize(), erbanNo, sort, roomPermitType);
|
||||
@GetMapping("/getAll")
|
||||
public Pagination<RoomVo> getAllRoom(String erbanNo, int sort, int roomPermitType, Integer partitionId) {
|
||||
PageInfo<Room> pageInfo = roomSearchAdminService.getAllRoomList(getPageNumber(), getPageSize(), erbanNo, sort, roomPermitType, partitionId);
|
||||
List<RoomVo> list = roomSearchAdminService.convertToRoomVoList(pageInfo.getList());
|
||||
JSONObject jsonObject = new JSONObject();
|
||||
jsonObject.put("total", pageInfo.getTotal());
|
||||
jsonObject.put("rows", list);
|
||||
writeJson(jsonObject.toJSONString());
|
||||
Pagination<RoomVo> pagination = new Pagination<>();
|
||||
pagination.setTotal(pageInfo.getTotal());
|
||||
pagination.setRows(list);
|
||||
return pagination;
|
||||
}
|
||||
|
||||
@RequestMapping("/changeRoomStatus")
|
||||
|
@@ -3125,6 +3125,66 @@ public class RoomExample {
|
||||
addCriterion("blind_date_vip_uid not between", value1, value2, "blindDateVipUid");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andPartitionIdIsNull() {
|
||||
addCriterion("partition_id is null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andPartitionIdIsNotNull() {
|
||||
addCriterion("partition_id is not null");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andPartitionIdEqualTo(Integer value) {
|
||||
addCriterion("partition_id =", value, "partitionId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andPartitionIdNotEqualTo(Integer value) {
|
||||
addCriterion("partition_id <>", value, "partitionId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andPartitionIdGreaterThan(Integer value) {
|
||||
addCriterion("partition_id >", value, "partitionId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andPartitionIdGreaterThanOrEqualTo(Integer value) {
|
||||
addCriterion("partition_id >=", value, "partitionId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andPartitionIdLessThan(Integer value) {
|
||||
addCriterion("partition_id <", value, "partitionId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andPartitionIdLessThanOrEqualTo(Integer value) {
|
||||
addCriterion("partition_id <=", value, "partitionId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andPartitionIdIn(List<Integer> values) {
|
||||
addCriterion("partition_id in", values, "partitionId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andPartitionIdNotIn(List<Integer> values) {
|
||||
addCriterion("partition_id not in", values, "partitionId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andPartitionIdBetween(Integer value1, Integer value2) {
|
||||
addCriterion("partition_id between", value1, value2, "partitionId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
|
||||
public Criteria andPartitionIdNotBetween(Integer value1, Integer value2) {
|
||||
addCriterion("partition_id not between", value1, value2, "partitionId");
|
||||
return (Criteria) this;
|
||||
}
|
||||
}
|
||||
|
||||
public static class Criteria extends GeneratedCriteria {
|
||||
|
Reference in New Issue
Block a user