09-15-netty优化,土地流转修复
This commit is contained in:
@ -158,11 +158,15 @@ public class BusLandTransferLedgerController extends BaseController {
|
|||||||
for (BusLandTransferLedgerSon ledgerSon : sonList) {
|
for (BusLandTransferLedgerSon ledgerSon : sonList) {
|
||||||
//1已流转,2是不流转
|
//1已流转,2是不流转
|
||||||
if (ledgerSon.getTransferStatus().equals("1")){
|
if (ledgerSon.getTransferStatus().equals("1")){
|
||||||
|
if (ledgerSon.getAreaValue()!=null) {
|
||||||
transferAreaSum = transferAreaSum.add(ledgerSon.getAreaValue());
|
transferAreaSum = transferAreaSum.add(ledgerSon.getAreaValue());
|
||||||
|
}
|
||||||
|
if (ledgerSon.getLandRent()!=null){
|
||||||
rentSum = rentSum.add(ledgerSon.getLandRent());
|
rentSum = rentSum.add(ledgerSon.getLandRent());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
areaSum = areaSum.add(busLandTransferLedger.getDesignArea());
|
areaSum = areaSum.add(busLandTransferLedger.getDesignArea());
|
||||||
}
|
}
|
||||||
map.put("areaSum",areaSum);
|
map.put("areaSum",areaSum);
|
||||||
|
|||||||
@ -2,43 +2,34 @@ package org.dromara.websocket;
|
|||||||
|
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
||||||
import io.netty.channel.Channel;
|
import io.netty.channel.Channel;
|
||||||
import io.netty.channel.ChannelHandler;
|
import io.netty.channel.ChannelHandler;
|
||||||
import io.netty.channel.ChannelHandlerContext;
|
import io.netty.channel.ChannelHandlerContext;
|
||||||
import io.netty.channel.SimpleChannelInboundHandler;
|
import io.netty.channel.SimpleChannelInboundHandler;
|
||||||
import io.netty.channel.group.ChannelGroup;
|
import io.netty.channel.group.ChannelGroup;
|
||||||
import io.netty.channel.group.DefaultChannelGroup;
|
import io.netty.channel.group.DefaultChannelGroup;
|
||||||
import io.netty.handler.codec.http.HttpHeaders;
|
|
||||||
import io.netty.handler.codec.http.websocketx.TextWebSocketFrame;
|
import io.netty.handler.codec.http.websocketx.TextWebSocketFrame;
|
||||||
import io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler;
|
import io.netty.handler.codec.http.websocketx.WebSocketServerProtocolHandler;
|
||||||
import io.netty.util.concurrent.GlobalEventExecutor;
|
import io.netty.util.concurrent.GlobalEventExecutor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.dromara.common.core.domain.dto.UserDTO;
|
import org.dromara.common.core.domain.dto.UserDTO;
|
||||||
import org.dromara.common.core.domain.model.LoginUser;
|
import org.dromara.common.core.domain.model.LoginUser;
|
||||||
import org.dromara.common.json.utils.JsonUtils;
|
|
||||||
import org.dromara.common.redis.utils.RedisUtils;
|
|
||||||
import org.dromara.common.satoken.utils.LoginHelper;
|
import org.dromara.common.satoken.utils.LoginHelper;
|
||||||
import org.dromara.system.domain.bo.SysUserBo;
|
|
||||||
import org.dromara.system.domain.vo.SysOssVo;
|
import org.dromara.system.domain.vo.SysOssVo;
|
||||||
import org.dromara.system.domain.vo.SysUserVo;
|
import org.dromara.system.domain.vo.SysUserVo;
|
||||||
import org.dromara.system.service.ISysOssService;
|
|
||||||
import org.dromara.system.service.impl.SysOssServiceImpl;
|
import org.dromara.system.service.impl.SysOssServiceImpl;
|
||||||
import org.dromara.system.service.impl.SysUserServiceImpl;
|
import org.dromara.system.service.impl.SysUserServiceImpl;
|
||||||
import org.dromara.websocket.domain.ChatGroup;
|
import org.dromara.websocket.domain.ChatGroup;
|
||||||
import org.dromara.websocket.domain.ChatHistory;
|
import org.dromara.websocket.domain.ChatHistory;
|
||||||
import org.dromara.websocket.service.Impl.ChatGroupServiceImpl;
|
import org.dromara.websocket.service.Impl.ChatGroupServiceImpl;
|
||||||
import org.dromara.websocket.service.Impl.ChatHistoryServiceImpl;
|
import org.dromara.websocket.service.Impl.ChatHistoryServiceImpl;
|
||||||
import org.springframework.beans.BeanUtils;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.context.ApplicationContext;
|
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
import java.util.stream.Collectors;
|
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@Component
|
@Component
|
||||||
@ -228,6 +219,7 @@ public class ChatServerHandler extends SimpleChannelInboundHandler<TextWebSocket
|
|||||||
// chatHistoryService.save(chatHistory);
|
// chatHistoryService.save(chatHistory);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
log.info("{} 上线了", ctx.channel().remoteAddress());
|
||||||
super.userEventTriggered(ctx, evt);
|
super.userEventTriggered(ctx, evt);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -273,19 +265,19 @@ public class ChatServerHandler extends SimpleChannelInboundHandler<TextWebSocket
|
|||||||
channelUserMap.remove(ctx);
|
channelUserMap.remove(ctx);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
log.info(ctx.channel().remoteAddress() + " 下线了");
|
||||||
}
|
}
|
||||||
|
|
||||||
// 当通道就绪时调用
|
// 当通道就绪时调用
|
||||||
@Override
|
@Override
|
||||||
public void channelActive(ChannelHandlerContext ctx) throws Exception {
|
public void channelActive(ChannelHandlerContext ctx) throws Exception {
|
||||||
log.info("{} 上线了", ctx.channel().remoteAddress());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 当通道不可用时调用
|
// 当通道不可用时调用
|
||||||
@Override
|
@Override
|
||||||
public void channelInactive(ChannelHandlerContext ctx) throws Exception {
|
public void channelInactive(ChannelHandlerContext ctx) throws Exception {
|
||||||
log.info(ctx.channel().remoteAddress() + " 下线了");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 读取客户端发送的消息
|
// 读取客户端发送的消息
|
||||||
@ -343,7 +335,7 @@ public class ChatServerHandler extends SimpleChannelInboundHandler<TextWebSocket
|
|||||||
//如果满足则说明用户在线
|
//如果满足则说明用户在线
|
||||||
if (channelHandlerContexts != null && !channelHandlerContexts.isEmpty()) {
|
if (channelHandlerContexts != null && !channelHandlerContexts.isEmpty()) {
|
||||||
//构建所有房间的未读消息数
|
//构建所有房间的未读消息数
|
||||||
setValue(id, jsonObject);
|
setUnReadCount(id, jsonObject);
|
||||||
//给每个通道发送对应消息
|
//给每个通道发送对应消息
|
||||||
for (ChannelHandlerContext handlerContext : channelHandlerContexts) {
|
for (ChannelHandlerContext handlerContext : channelHandlerContexts) {
|
||||||
sendMessage(handlerContext, jsonObject.toString());
|
sendMessage(handlerContext, jsonObject.toString());
|
||||||
@ -569,7 +561,7 @@ public class ChatServerHandler extends SimpleChannelInboundHandler<TextWebSocket
|
|||||||
//给每个通道发送对应消息
|
//给每个通道发送对应消息
|
||||||
for (ChannelHandlerContext handlerContext : channelHandlerContexts) {
|
for (ChannelHandlerContext handlerContext : channelHandlerContexts) {
|
||||||
//同时发送所有未读消息给前端进行渲染
|
//同时发送所有未读消息给前端进行渲染
|
||||||
setValue(userId, jsonObject);
|
setUnReadCount(userId, jsonObject);
|
||||||
sendMessage(handlerContext, jsonObject.toString());
|
sendMessage(handlerContext, jsonObject.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -577,7 +569,7 @@ public class ChatServerHandler extends SimpleChannelInboundHandler<TextWebSocket
|
|||||||
}
|
}
|
||||||
|
|
||||||
//设置未读消息数
|
//设置未读消息数
|
||||||
private void setValue(Long userId, JSONObject jsonObject) {
|
private void setUnReadCount(Long userId, JSONObject jsonObject) {
|
||||||
HashMap<String,Object> temp = new HashMap<>();
|
HashMap<String,Object> temp = new HashMap<>();
|
||||||
userRoomCountMap.forEachKey(0, (value) -> {
|
userRoomCountMap.forEachKey(0, (value) -> {
|
||||||
if (value.contains(userId.toString())){
|
if (value.contains(userId.toString())){
|
||||||
|
|||||||
Reference in New Issue
Block a user