package JNADell; import java.util.Vector; import java.util.regex.Matcher; import java.util.regex.Pattern; import BaoWen.Udp_Receive; import BaoWen.Urt_7000_port; import DataBase.DatabaseManagement; import Frame.Tool; import Method.BaoWenShow; import Method.ControTag; import Method.GetNowTime; import Method.StringToHex; import PbuliClass.ShowMessage; import anchor.Anchor; import anchor.Anchor_Dell; import person.Person; import person.person_Dell; import tag.Tag; import tag.Tag_Dell; import tbDataModel.UseTagAndAnchor; import tbDataModel_Dell.ReadPeizhiMessage; import urt.Control_urt; /**´¦ÀíÐèҪʹÓõıêÇ©*/ public class Dell_usetaganchor { static Vector useta=new Vector (); /**»ñÈ¡±êÇ©ÐèÒªÓÃÀ´¼ÆËãµÄ»ùÕ¾*/ public static Vector getUseta() { return useta; } /**²åÈëÒ»¸ö±êÇ©ÐèÒªÓÃÀ´²â¾àµÄ»ùÕ¾*/ public static void insert_taganchor(String tagid,String anchorid1,String anchorid2, String anchorid3,String anchorid4,boolean use) { if(get_UseTagAndAnchor(tagid)==null) { UseTagAndAnchor newusetaganc=new UseTagAndAnchor(); newusetaganc.setTagid(tagid); newusetaganc.setAnchorid1(anchorid1); newusetaganc.setAnchorid2(anchorid2); newusetaganc.setAnchorid3(anchorid3); newusetaganc.setAnchorid4(anchorid4); newusetaganc.setUse(use); useta.add(newusetaganc); } } /**ѰÕÒij¸ö±êÇ©¶ÔÏó*/ public static UseTagAndAnchor get_UseTagAndAnchor(String tagid) { UseTagAndAnchor uta=null; int size=useta.size(); if( size!=0) { for(int i=0;i> 4 ; sb.append(chars[bit]); bit = bs[i] & 0x0f ; sb.append(chars[bit]); } return sb.toString().trim(); } /**½«×Ö½ÚÊý×éת»»Îª16½øÖÆ×Ö·û´®ÎÞ¿Õ¸ñ*/ public static String BinaryToHexString2(byte[] bytes) { String hexStr = "0123456789ABCDEF"; String result = ""; String hex = ""; for (byte b : bytes) { hex = String.valueOf(hexStr.charAt((b & 0xF0) >> 4)); hex += String.valueOf(hexStr.charAt(b & 0x0F)); result += hex + ""; } return result; } /** * 16½øÖÆ×Ö·û´®×ª×Ö½ÚÊý×é * @param hexString 16½øÖÆ×Ö·û´® * @return ×Ö½ÚÊý×é */ public static byte[] hexString2ByteArray(String hexString) { if (hexString == null || "".equals(hexString)) { return null; } //ÏȰÑ×Ö·û´®×ª»»Îªchar[]£¬ÔÙת»»Îªbyte[] int length = hexString.length() / 2; char[] hexChars = hexString.toCharArray(); byte[] bytes = new byte[length]; String hexDigits = "0123456789ABCDEF"; for (int i = 0; i < length; i++) { int pos = i * 2; // Á½¸ö×Ö·û¶ÔÓ¦Ò»¸öbyte int h = hexDigits.indexOf(hexChars[pos]) << 4; // ×¢1 int l = hexDigits.indexOf(hexChars[pos + 1]); // ×¢2 if (h == -1 || l == -1) { // ·Ç16½øÖÆ×Ö·û return null; } bytes[i] = (byte) (h | l); } return bytes; } /**УÑé*/ public static String jiaoyan(String a) { String[] hex=StringToHex.hex(a); int size=hex.length; int sum=0; for(int i=0;i24) { ShowMessage.zidingyi("·¢Ëͳ¤¶È"+size+"£¬³¤¶È´óÓÚ24·¢ËÍʧ°Ü"); return; } if(size<13) { infom="1"+message+" "+GetNowTime.nowfinename(); }else if(size>12 && size<20) { infom="1"+message+" "+GetNowTime.HH_MM_SS(); }else if(size>20) { infom="1"+message; } Tag tag=Tag_Dell.get_tag(tagid); if(tag==null) { ShowMessage.zidingyi(tagid+"·¢ËÍÎÄ×Ö±êÇ©²»´æÔÚ"); return; } String anchorid=tag.getAnchorid(); if(anchorid ==null) { ShowMessage.zidingyi(anchorid+"·¢ËÍÎÄ×ÖÖ÷»ùÕ¾²»´æÔÚ"); return; } Anchor ac=Anchor_Dell.get_anchor(anchorid); if(ac !=null) { String mes=getmes(tagid,infom); String info=infom+"\n"+mes; String ip=ac.getAnc_ip(); int port=ac.getPort(); byte[] byt=ReadPeizhiMessage.toByteArray(mes); Udp_Receive.out(byt,byt.length,ac,"Êý¾Ý͸´«");//½«Êý¾Ýfa¸øÖ÷»ùÕ¾ BaoWenShow.show2(info, "TOANC", ip, port); sendmessagejilu_intodata(tagid,message,name);//Êý¾Ý²åÈëÊý¾Ý¿â } } /**¸øËùÓÐÐÄÂÊ´øÆÁÄ»±êÇ©·¢ÎÄ×ÖÐÅÏ¢*/ public static void alltagtomessge(String message,String name) { Vector tagvc=Tag_Dell.getTag_vector(); int size=tagvc.size(); for(int i=0;i