将websocket发送消息方式改为了指定特定用户

master
xm 4 years ago
parent 7b1f2b132f
commit 1c61b4dac8

@ -10,12 +10,14 @@ import com.manage.service.*;
import com.manage.service.cache.Cache;
import com.manage.service.cache.CacheManager;
import com.manage.service.ipml.Power_NoticeServiceImpl;
import com.manage.service.webSocket.WebServer;
import com.manage.service.webSocket.WsPool;
import com.manage.util.DateUtils;
import com.manage.util.ExceptionPrintUtil;
import com.manage.util.Msg;
import com.manage.vo.*;
import org.apache.commons.lang3.StringUtils;
import org.java_websocket.WebSocket;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@ -534,9 +536,9 @@ public class FontController {
/**
* deptcodeid
*/
@RequestMapping("/getUserInfoByDeptCodeForChief")
@RequestMapping(value = "/getUserInfoByDeptCodeForChief",produces = "text/plain;charset=UTF-8")
@ResponseBody
public String getUserInfoByDeptCodeForChief(String DeptCode) throws Exception{
public String getUserInfoByDeptCodeForChief(String DeptCode){
List<Power_User> power_users = power_userMapper.selectAllForChief(DeptCode);
String result = "";
for (int i = 0; i < power_users.size(); i++) {
@ -548,9 +550,9 @@ public class FontController {
/**
* deptcodeid
*/
@RequestMapping("/getUserInfoByDeptCodeForRecordRoom")
@RequestMapping(value = "/getUserInfoByDeptCodeForRecordRoom",produces = "text/plain;charset=UTF-8")
@ResponseBody
public String getUserInfoByDeptCodeForRecordRoom(String DeptCode) throws Exception{
public String getUserInfoByDeptCodeForRecordRoom(String DeptCode){
List<Power_User> power_users = power_userMapper.selectAllForRecordRoom(DeptCode);
String result = "";
for (int i = 0; i < power_users.size(); i++) {
@ -566,8 +568,7 @@ public class FontController {
*/
@RequestMapping(value = "/getDoctorNameAndDoctorRoom",produces = "text/plain;charset=UTF-8")
@ResponseBody
public String getDoctorNameAndDoctorRoom(String userId,String deptcode) throws Exception{
System.out.println(userId+"userId"+deptcode+"deptcode");
public String getDoctorNameAndDoctorRoom(String userId,String deptcode){
String name = power_userMapper.selectForDoctorName(userId);
String room= power_userMapper.selectForDoctorRoom(deptcode);
String result = room+","+name;
@ -579,7 +580,7 @@ public class FontController {
*/
@RequestMapping("/getDoctorDeptcode")
@ResponseBody
public String getDoctorDeptcode(Integer userId) throws Exception{
public String getDoctorDeptcode(Integer userId){
//获取deptId
String deptId = power_userMapper.selectForDeptId(userId);
//获取deptcode
@ -608,10 +609,6 @@ public class FontController {
* @Version:
*
* 2021/11/20
*
*
*
*
*/
@RequestMapping("sendMessage")
@ResponseBody
@ -632,5 +629,25 @@ public class FontController {
return Msg.success();
}
/**
* 2021/11/20
*
*
*
*
*/
@RequestMapping("sendMessageToOne")
@ResponseBody
public Msg sendMessageToOne(Message message) throws Exception{
if(null == message.getUserId()){
return Msg.fail("消息用户id不能为空");
}
if(StringUtils.isBlank(message.getContent())){
return Msg.fail("消息内容不能为空");
}
WebSocket wsByUser = WsPool.getWsByUser(message.getUserId().toString());
WsPool.sendMessageToUser(wsByUser,message.getContent());
return Msg.success();
}
}

@ -8,9 +8,11 @@ import com.manage.entity.*;
import com.manage.service.*;
import com.manage.service.cache.Cache;
import com.manage.service.cache.CacheManager;
import com.manage.service.webSocket.WsPool;
import com.manage.util.*;
import com.manage.vo.*;
import org.apache.commons.lang3.StringUtils;
import org.java_websocket.WebSocket;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@ -58,6 +60,7 @@ public class LoginController {
public String login(Power_User powerUser,HttpServletResponse response, HttpServletRequest request,Model model) throws Exception {
//同一浏览器打开login直接触发注销登录session
loginService.removeOldUserOnLogin(request);
// WsPool.addUser(conn);
try {
Power_UserVo user = powerUserService.findPowerUserByUserNameAndUserPwd(powerUser);
//添加进操作日志

@ -23,7 +23,7 @@ public class WebServer extends WebSocketServer {
// ws连接的时候触发的代码onOpen中我们不做任何操作
}
public void sendMessage(String message) throws IOException {
this.session.getBasicRemote().sendText("2");
this.session.getBasicRemote().sendText(message);
}
@Override

Loading…
Cancel
Save