将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.Cache;
import com.manage.service.cache.CacheManager; import com.manage.service.cache.CacheManager;
import com.manage.service.ipml.Power_NoticeServiceImpl; import com.manage.service.ipml.Power_NoticeServiceImpl;
import com.manage.service.webSocket.WebServer;
import com.manage.service.webSocket.WsPool; import com.manage.service.webSocket.WsPool;
import com.manage.util.DateUtils; import com.manage.util.DateUtils;
import com.manage.util.ExceptionPrintUtil; import com.manage.util.ExceptionPrintUtil;
import com.manage.util.Msg; import com.manage.util.Msg;
import com.manage.vo.*; import com.manage.vo.*;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.java_websocket.WebSocket;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
@ -534,9 +536,9 @@ public class FontController {
/** /**
* deptcodeid * deptcodeid
*/ */
@RequestMapping("/getUserInfoByDeptCodeForChief") @RequestMapping(value = "/getUserInfoByDeptCodeForChief",produces = "text/plain;charset=UTF-8")
@ResponseBody @ResponseBody
public String getUserInfoByDeptCodeForChief(String DeptCode) throws Exception{ public String getUserInfoByDeptCodeForChief(String DeptCode){
List<Power_User> power_users = power_userMapper.selectAllForChief(DeptCode); List<Power_User> power_users = power_userMapper.selectAllForChief(DeptCode);
String result = ""; String result = "";
for (int i = 0; i < power_users.size(); i++) { for (int i = 0; i < power_users.size(); i++) {
@ -548,9 +550,9 @@ public class FontController {
/** /**
* deptcodeid * deptcodeid
*/ */
@RequestMapping("/getUserInfoByDeptCodeForRecordRoom") @RequestMapping(value = "/getUserInfoByDeptCodeForRecordRoom",produces = "text/plain;charset=UTF-8")
@ResponseBody @ResponseBody
public String getUserInfoByDeptCodeForRecordRoom(String DeptCode) throws Exception{ public String getUserInfoByDeptCodeForRecordRoom(String DeptCode){
List<Power_User> power_users = power_userMapper.selectAllForRecordRoom(DeptCode); List<Power_User> power_users = power_userMapper.selectAllForRecordRoom(DeptCode);
String result = ""; String result = "";
for (int i = 0; i < power_users.size(); i++) { 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") @RequestMapping(value = "/getDoctorNameAndDoctorRoom",produces = "text/plain;charset=UTF-8")
@ResponseBody @ResponseBody
public String getDoctorNameAndDoctorRoom(String userId,String deptcode) throws Exception{ public String getDoctorNameAndDoctorRoom(String userId,String deptcode){
System.out.println(userId+"userId"+deptcode+"deptcode");
String name = power_userMapper.selectForDoctorName(userId); String name = power_userMapper.selectForDoctorName(userId);
String room= power_userMapper.selectForDoctorRoom(deptcode); String room= power_userMapper.selectForDoctorRoom(deptcode);
String result = room+","+name; String result = room+","+name;
@ -579,7 +580,7 @@ public class FontController {
*/ */
@RequestMapping("/getDoctorDeptcode") @RequestMapping("/getDoctorDeptcode")
@ResponseBody @ResponseBody
public String getDoctorDeptcode(Integer userId) throws Exception{ public String getDoctorDeptcode(Integer userId){
//获取deptId //获取deptId
String deptId = power_userMapper.selectForDeptId(userId); String deptId = power_userMapper.selectForDeptId(userId);
//获取deptcode //获取deptcode
@ -608,10 +609,6 @@ public class FontController {
* @Version: * @Version:
* *
* 2021/11/20 * 2021/11/20
*
*
*
*
*/ */
@RequestMapping("sendMessage") @RequestMapping("sendMessage")
@ResponseBody @ResponseBody
@ -632,5 +629,25 @@ public class FontController {
return Msg.success(); 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.*;
import com.manage.service.cache.Cache; import com.manage.service.cache.Cache;
import com.manage.service.cache.CacheManager; import com.manage.service.cache.CacheManager;
import com.manage.service.webSocket.WsPool;
import com.manage.util.*; import com.manage.util.*;
import com.manage.vo.*; import com.manage.vo.*;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.java_websocket.WebSocket;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; 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 { public String login(Power_User powerUser,HttpServletResponse response, HttpServletRequest request,Model model) throws Exception {
//同一浏览器打开login直接触发注销登录session //同一浏览器打开login直接触发注销登录session
loginService.removeOldUserOnLogin(request); loginService.removeOldUserOnLogin(request);
// WsPool.addUser(conn);
try { try {
Power_UserVo user = powerUserService.findPowerUserByUserNameAndUserPwd(powerUser); Power_UserVo user = powerUserService.findPowerUserByUserNameAndUserPwd(powerUser);
//添加进操作日志 //添加进操作日志

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

Loading…
Cancel
Save