⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 work.java

📁 是一个JAVA通讯程序.功能不多
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
						objMsg.setOrder(setting.Command.friendliveline);
						objMsg.setDestID(userfriendInfo.getID());
						objMsg.setSourceID(exituser.getID());
						objMsg.setObjMessage(userfriendInfo);
						serve.sendpersonal(userfriendInfo.getID(), objMsg);
					}

				}
			}			
			try {
				runFlag=false;
				netIn.close();
				netOut.close();
				socket.close();
			} catch (IOException e) {
				System.out.println("关闭连接异常");
			}

		}
	}
	/**
	 * 接收用户添加好友相关信令
	 */

	public void addFriend(Embody objMsg)
	{
		String order=objMsg.getOrder();
		if(order.equals(setting.Command.addfriend))//由Client的addFriend()发出
		{
			User userInfo=new User();//实例化一个新的userInfo
			User user=new User();
			int userOtherid=objMsg.getDestID();//得到被加的人的号码
			userInfo=serve.readUserDBbyID(objMsg.getSourceID());
			for(int i=0;i<userInfo.getFriend().size();i++)//好友已经添加了不能再添加的判断
			{
				
				user=(User)userInfo.getFriend().elementAt(i);//遍历得到朋友的ID
				if(userOtherid==user.getID())
				{
					//提示用户次用户已经是你的好友
					objMsg.setOrder(setting.Command.addfriendreapt);
					objMsg.setObjMessage(userInfo);
					objMsg.setDestID(userInfo.getID());
					send(objMsg);//传给自己
					return;
				}
			}
				user=serve.readUserDBbyID(userOtherid);

				if(objMsg.getDestID()!=user.getID())
				{
					//不存在 或用户不在线 则发送信息告诉客户
					objMsg.setOrder(setting.Command.addfriendisnotexist);
					send(objMsg);
					return;
				}
				    //被请求添加的用户必须在线而且好友ID存在
				if(objMsg.getDestID()==user.getID()&&user.getStatus()==0)
				{

					objMsg.setOrder(setting.Command.addfriendqueren);
					objMsg.setObjMessage(user);//把查找到的用户信息发过去
					serve.sendpersonal(user.getID(), objMsg);
					return;
				}	
				else
				{
					//不存在 或用户不在线 则发送信息告诉客户
					objMsg.setOrder(setting.Command.addfriendisnotonline);
					serve.sendpersonal(userInfo.getID(), objMsg);
				}
			}
		//向被加的人发送加的人的确认信息再把对方加为入好友列表  
		if(order.equals(setting.Command.addfriendtongyi))
		{
			User userOther=new User();
			User userInfo=new User();
			userOther=(User)objMsg.getObjMessage();// 被加人的信息
			userInfo=serve.readUserDBbyID(objMsg.getSourceID());
			userInfo.addFriend(userOther);//添加自己的好友
			serve.saveDB(userInfo);
			objMsg.setFriendID(userOther.getID());//发过去以便保存在自己在线好友列表中
			objMsg.setOrder(setting.Command.addfriendtongyi);
			objMsg.setObjMessage(userInfo);//把自己的信息发过去以便获取好友信息
			serve.sendpersonal(userInfo.getID(), objMsg);
			
		
		}
		if(order.equals(setting.Command.addfriendagin))
		{
			
			User userother=new User();//为了读取被加的这这好友的的好友信息是否包括我
			User userInfo=new User();
			userother =serve.readUserDBbyID(objMsg.getDestID());
			if(userother.getFriend().size()>0)
			{
				for(int i=0;i<userother.getFriend().size();i++)
				{
					userInfo=(User)userother.getFriend().elementAt(0);
					if(userInfo.getID()==objMsg.getSourceID())
					{
						return;//如果目标ID的好友中有我则不需要再发送
					}
				}
			}
				objMsg.setOrder(setting.Command.addfriendaginqueren);
				serve.sendpersonal(objMsg.getDestID(), objMsg);//接受到信息的是
		}
		if(order.equals(setting.Command.addfriendagintongyi))
		{
			User userOther=(User)objMsg.getObjMessage();// 被加人的信息
			User userInfo=new User();
			userInfo=serve.readUserDBbyID(objMsg.getDestID());
			userInfo.addFriend(userOther);//添加自己的好友
			serve.saveDB(userInfo);
			objMsg.setOrder(setting.Command.addfriendaginflush);
			objMsg.setFriendID(objMsg.getSourceID());//设置好友
			serve.sendpersonal(objMsg.getDestID(), objMsg);
		}

		if(order.equals(setting.Command.addfriendbutongyi))
		{
			objMsg.setOrder(setting.Command.addfriendbutongyi);
			serve.sendpersonal(objMsg.getSourceID(), objMsg);
		}
	}
	/**
	 * 接收用户聊天信令
	 */

	public void personchat(Embody objMsg)
	{
		String order=objMsg.getOrder();
		if(order.equals(setting.Command.personchat))
		{
			User destuser=serve.readUserDBbyID(objMsg.getDestID());
			if(serve.isOnline(destuser));//检查对方是否在线
			{
			
			objMsg.setOrder(setting.Command.personchatsuccess);
			serve.sendpersonal(objMsg.getDestID(),objMsg);
			}
			if(!serve.isOnline(destuser))//不在线还要告诉对方
			{
				objMsg.setOrder(setting.Command.personchatfail);//给自己说的
				serve.sendpersonal(objMsg.getSourceID(),objMsg);
				//保存信息
				destuser.setLiuyan(true);
				destuser.setLiuyanmsg((String)objMsg.getObjMessage());
				destuser.setLiuyanid(objMsg.getSourceID());
				serve.modifyUserInfo(destuser);	
			}
		}
	}
	
	/**
	 * 密送消息请求
	 */
	public void Inerchat(Embody objMsg)
	{
		String order=objMsg.getOrder();
		if(order.equals(setting.Command.Inchat))
		{
			User detuser=serve.readUserDBbyID(objMsg.getDestID());
			if(serve.isOnline(detuser));//检查对方是否在线
			{
				objMsg.setOrder(setting.Command.Inchatque);
				serve.sendpersonal(objMsg.getDestID(),objMsg);
			}
			if(!serve.isOnline(detuser))//不在线还要告诉对方
			{
				objMsg.setOrder(setting.Command.Inchatfail);//给自己说的
				serve.sendpersonal(objMsg.getSourceID(),objMsg);		
			}
		}
	}
	
	/**
	 * 收到企业消息
	 */
	public void Inerchatflish(Embody objMsg)
	{
	   String order=objMsg.getOrder();
	   if(order.equals(setting.Command.inchatflish))
	    {
	    objMsg.setOrder(setting.Command.Inchatyes);
	    serve.sendpersonal(objMsg.getSourceID(),objMsg);
	     }
	   if(order.equals(setting.Command.Inchatok))
	   {
		   id = objMsg.getDestID();
		   objMsg.setOrder(setting.Command.Inchatsuc);
		   serve.sendpersonal(objMsg.getDestID(),objMsg);
	   }
	   if(order.equals(setting.Command.chatverfail))
		 {
			 objMsg.setOrder(setting.Command.Inchatfail1);//给自己说的
			 serve.sendpersonal(id,objMsg);
		 }
	}
	/**
	 * 接收用户删除好友信令
	 */
	public void delfriend(Embody objMsg)
	{
		String order=objMsg.getOrder();
		if(order.equals("删除好友"))
		{
			User userInfo=new User();
			userInfo=serve.readUserDBbyID(objMsg.getSourceID());//根据源ID读出数据			
			if(serve.delfriend(userInfo,objMsg.getDestID()))
			{
				objMsg.setOrder(setting.Command.delfriendsuccess);
				objMsg.setObjMessage(userInfo);
				send(objMsg);
			}else
			{
				objMsg.setOrder(setting.Command.delfriendfail);
				objMsg.setObjMessage(userInfo);
				send(objMsg);
			}
		}
	}
	/**
	 * 接收用户取留言的信令
	 */
	public void checkliuyan(Embody objMsg)
	{
		String order=objMsg.getOrder();
		if(order.equals(setting.Command.checkfriendliuyan))
		{
			User liuuser=new User();
			liuuser=serve.readUserDBbyID(objMsg.getSourceID());
			if(liuuser.isLiuyan())
			{
				objMsg.setOrder(setting.Command.yesliuyan);
				objMsg.setObjMessage(liuuser);
				send(objMsg);
				liuuser.setLiuyan(false);	
			}else
			{
				objMsg.setOrder(setting.Command.noliuyan);
				objMsg.setObjMessage(liuuser);
				send(objMsg);
			}
			serve.modifyUserInfo(liuuser);
		}
	}
	
	/**
	 * 接收用户修改用户信息信令
	 */
	public void modifyUserInfo(Embody objMsg)
	{
		String order = objMsg.getOrder();
		if (order.equals(setting.Command.modifyusrinfo))
		{
		
			serve.modifyUserInfo((User)objMsg.getObjMessage());
			objMsg.setDestID(objMsg.getSourceID());
			objMsg.setObjMessage(serve.readUserDBbyID(objMsg.getSourceID()));
			objMsg.setOrder(setting.Command.modifyusrinfosuccess);
			send(objMsg);
		}
	}
	/**
	 * 查询好友信息信令
	 */
	public void checkFreindInfo(Embody objMsg)
	{

		String order=objMsg.getOrder();
		if(order.equals(setting.Command.checkfriendinfo))
		{
			objMsg.setObjMessage(serve.readUserDBbyID(objMsg.getDestID()));
			objMsg.setOrder(setting.Command.checkfriendinfo);
			send(objMsg);
		}
	}
	
	/**
	 * 查询好友IP
	 */
	public void checkFreindIP(Embody objMsg)
	{

		String order=objMsg.getOrder();
		if(order.equals(setting.Command.checkfriendIP))
		{
			objMsg.setObjMessage(serve.readUserDBbyID(objMsg.getDestID()));
			objMsg.setOrder(setting.Command.checkfriendIP);
			send(objMsg);
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -