package home; import java.io.*; import java.util.Timer; import java.util.TimerTask; import java.util.Vector; import javax.swing.ImageIcon; import BaoWen.*; import ColorAndFont.Data_to_bs; import DataBase.DatabaseManagement; import Frame.BaoWenHuiFang; import Frame.TcpIpManage; import Method.About_tb_track; import Method.GetNowTime; import Method.JudgeTagOrAnchorOffline; import Method.SaveFIleInTxt; import PbuliClass.Systems; import ToolBarS.ToolBarModel; import VectroData.ForwardDatas; import anchor.Anchor; import anchor.Anchor_Dell; import anchor.Anchor_nerby_dell; import engbs.Dell_gongzhong; import engbs.Tongji; import engbs.engine_do; import fence.kaoqing.Dell_KaoQing; import monitorGas.Dell_co; import monitorGas.ReadGas; import person.person_Dell; import tag.Tag_Dell; import tbDataModel.Tb_tongbuanchor; import tbDataModel.anchornear; import tbDataModel_Dell.Dell_Ip; import tbDataModel_Dell.Dell_TongbuAnchor; import tbDataModel_Dell.Dell_tag_gas_jiaozhun_value; import tbDataModel_Dell.Dell_tb_gas_anchor; import tbDataModel_Dell.Dell_tb_suanfa2; import tbDataModel_Dell.ReadPeizhiMessage; import tbDataModel_Dell.Read_Write_Anchor_Message; import tcp.TcpClientOneToMany; import urt.Dell_gps; public class ChuShiHua { static Timer timer; static int i = 0; static int t = 0; static int xintiao = 1; static int tagoff = 0; static int tcp = 0; static int cishu = 0; static int gxbsd = 0;//¸üÐÂbsƽ̨Êý¾Ý¿â static int ok300 = 0; static int succ = 1; static int OK30 = 1; static int readgas = 0; static int a = Integer.parseInt(Systems.sys().getGas_hz()) * 10; static int time10 = 0;//10Ãë static int time10min = 0; static int time50 = 0; static int pian = 1; static int piannedd = 5; static int miao2 = 1; static int miao1 = 1; static int a1 = 0; static int min10 = 0; //ÊÇ·ñ¿ªÆôÁËÀëÏßת·¢Î»ÖÃÊý¾Ý¹¦ÄÜ static int lixinazhuanfa = 0; static boolean suidaomoshi = Systems.sys().getTunlDw().equals("1"); static boolean urtopen = Systems.sys().getCs_udp().length() > 3; static boolean haveudpout = ForwardDatas.get_mou_tb_forword("UDP").size() != 0; static boolean havetcpout = ForwardDatas.get_mou_tb_forword("TCP").size() != 0; static ImageIcon acon = new ImageIcon("image/icon/datajiaohu.png"); static ImageIcon bcon = new ImageIcon("image/icon/datajiaohu1.png"); static File file = null; /** * ´´½¨Ò»¸ö¶¨Ê±Æ÷ÓÃÓÚÐ޸ĻùÕ¾ÅäÖÃÐÅÏ¢ */ public static void ding_shi_qi() { int atcp = Systems.getTcpheart_time() * 10; tcp = atcp; //clear();//Çå¿Õ³¬Ê±µÄÊý¾Ý Open_soft_dialog.addara("¼ÓÔØ¶¨Ê±Æ÷"); Integer cacheTime = 100;//´¥·¢Æ÷ʱ¼ä100ºÁÃëÖ´ÐÐÒ»´Î timer = new Timer(); timer.schedule(new TimerTask() { @Override public void run() { try { ok300++; tagoff++; gxbsd++; readgas++; time10++; time50++; miao2++; miao1++; min10++; if (!Systems.isWuxian()) {//Èç¹ûÊÇÎÞÏßģʽ²»ÓÃÏ·¢×¢²áÐÅÏ¢ pian++; i++; if (pian == piannedd) {//Ï·¢×¢²áÐÅÏ¢ Dell_55AA0A.get_ok_regs(); pian = 1; } if (i == 100) { write_nearby(); //¸ø»ùվдÈëÁÙ½üÊý¾Ý } else if (i == 200) { write_tongbu();//¸ø»ùվдÈëͬ²½Êý¾Ý } else if (i == 300) { i = 277; } } /**ÆøÌå¼ì²â¼àÌý¿ªÆô*/ if (Systems.isGasopen()) { if (readgas == a) { ReadGas.read_gas(); readgas = 0; } } if (miao2 == 20) {//2ÃëÖÓÖ´ÐÐÒ»´Î int a2 = Dell_55AA01.getGuji(); Dell_KaoQing.tongji_kaoqing();//ת·¢¿¼ÇÚÊý¾Ý if (a1 != a2) { ToolBarModel.getjbt_tongji().setText(Dell_55AA01.getSs()); ToolBarModel.getJbt_datajiaohu().setIcon(acon); a1 = a2; } miao2 = 1; } int i = Integer.parseInt(Systems.sys().getBaoliu22()); if (miao1 == 10 * i) {//1ÃëÖÐÖ´ÐÐÒ»´Î ToolBarModel.getJbt_datajiaohu().setIcon(bcon); String datazhuanfa=Dell_tb_suanfa2.getSuanfa2().getShu_ju_zhuan_fa();//Êý¾Ýת·¢ lixinazhuanfa = Integer.parseInt(datazhuanfa); if (lixinazhuanfa != 0 && ForwardDatas.isHavezhuanfa()) {//ת·¢ÀëÏßÊý¾Ý person_Dell.person_off_zhuanfa(lixinazhuanfa); } miao1 = 1; } if (time50 == 300) {//¸üп¼ÇÚºÍÆøÌå aletkaoqingandgas(); Dell_co.alert_tb_cojilu(); } if (Systems.isEgbs()) {//300ºÁÃëÖ´ÐÐÒ»´ÎbsÊý¾ÝÊý¾Ý¸üРif (gxbsd == 3) { engine_do.tb_person(time10min); if (urtopen) {//Èç¹ûURT¼àÌý¿ªÆô engine_do.tb_gps(time10min); } if (time10min == 10) { time10min = 0; } gxbsd = 0; } } if (OK30 == 1) {//¿ªÆôÈí¼þ30Ãë»ñÈ¡»ùÕ¾µÄ°æ±¾ºÅ if (!Systems.isEgbs()) { Dell_gps.gengxin_tb_gps(); } OK30 = 0; } //ÅжϻùÕ¾ºÍ±êÇ©ÊÇ·ñÀëÏß if (tagoff == 600) {//60ÃëÖÐÖ´ÐÐÒ»´Î JudgeTagOrAnchorOffline.juge_person_off(); JudgeTagOrAnchorOffline.anchor_off();//Åж϶¨Î»»ùÕ¾ÊÇ·ñÀëÏß if (!Systems.isIssanwei()){ Dell_tag_gas_jiaozhun_value.juge_tag_gas_jiaozhun_choshi();//¿ªÆôÈýάģʽʱºòÅжϱêÇ©ÊÇ·ñ¸ß¶ÈУ׼³¬Ê± Dell_tb_gas_anchor.gasanchor_off();//Èýάģʽ¿ªÆôʱºòÅжϻùÕ¾ÊÇ·ñÀëÏß } if (Systems.isEgbs()) {//60Ãë¸üÐÂÒ»´Îͳ¼ÆÊý¾Ý Tongji.gengxin(); Dell_gongzhong.alert_num(); engine_do.tb_tag(); } save_baowen_inlog();//±£´æ±¨ÎÄÊý¾Ýµ½ÎļþÖÐ tagoff = 0; } if (min10 == 6000) {//10·ÖÖÓÖ´ÐÐÒ»´Î min10 = 0; time10min = 10; if (Systems.isEgbs()) {//¸üлùÕ¾ÐÅÏ¢ Anchor_Dell.alert_tb_anchor(); } } if (ok300 == 18000) {//30·ÖÖÓ¸üÐÂÒ»´ÎÊý¾Ý Tag_Dell.gengxin_database_tag_power();//¸üбêÇ©µçÁ¿Êý¾Ý±í Tag_Dell.history_power();//°ë¸öСʱ¸üÐÂÒ»´Î±êÇ©µÄÀúÊ·µçÁ¿ person_Dell.gegnxinheart();//¸üÀÛÐÄÌøÊý¾Ý if (Systems.isSuidaomoshi()) { Dell_KaoQing.cleartallkaoqing();//°ëСʱÇå¿ÕÒ»´Î¿¼ÇÚ } try { //ɾ³ý7ÌìǰµÄlogÎļþ String s2 = GetNowTime.addDay(-7); File file3=new File("./savefile/"+s2+".log"); if (file3.exists()){ file3.delete(); } } catch (Exception e) { e.printStackTrace(); } ok300 = 0; } //¼ì²â·þÎñÆ÷ÊÇ·ñµôÏß if (ForwardDatas.get_mou_tb_forword("TCP").size() != 0) { if (tcp == 0) { TcpIpManage.get_text_area().append("\nµØÖ·£º" + TcpClientOneToMany.getIp() + "¶Ë¿Ú£º" + TcpClientOneToMany.getPort() + "ûÓÐÊÕµ½·þÎñÆ÷ÐÄÌø°ü55BBTCP,ÕýÔÚ³¢ÊÔÁ¬½Ó·þÎñÆ÷..."); tcp = atcp; TcpClientOneToMany.startTCPCliet(); } tcp--; } if (Systems.isEngheart()) { if (haveudpout || havetcpout) { xintiao++; if (xintiao == 100) { Data_to_bs.hxzk_heart();//ÒýÇæÐÄÌø°ü xintiao = 0; } } } //24СʱִÐÐÒ»´Î if (t == 0) { About_tb_track.add_and_delete_a_tbtrack(); //clear();//ɾ³ý³¬Ê±¼äµÄÊý¾Ý t = 864000; } t--; } catch (Exception e) { e.printStackTrace(); } } }, 1000, cacheTime); } /** * дÈë»ùÕ¾ÁÙ½üÐÅÏ¢ */ public static void write_nearby() { if (!BaoWenHuiFang.isHuifangbaowen()) { int size = Anchor_Dell.getAnchor_vector().size(); for (int i = 0; i < size; i++) { Anchor anchor = Anchor_Dell.getAnchor_vector().get(i); //Èç¹û»ùÕ¾ÔÚÏßÔòÖ´ÐÐ if (anchor != null) { write_anchor_near(anchor); } } } } /** * дÈë»ùվͬ²½ÐÅÏ¢ */ public static void write_tongbu() { if (!BaoWenHuiFang.isHuifangbaowen()) { int size = Anchor_Dell.getAnchor_vector().size(); for (int i = 0; i < size; i++) { Anchor anchor = Anchor_Dell.getAnchor_vector().get(i); //Èç¹û»ùÕ¾ÔÚÏßÔòÖ´ÐÐ if (anchor != null) { write_anchor_tongbu(anchor); } } } } /** * »ñÈ¡ËùÓлùÕ¾µÄ°æ±¾ÐÅÏ¢ */ public static void get_anchor_version(Anchor anchor) { if (anchor != null) { byte[] byt = Read_Write_Anchor_Message.ReadData((byte) 0x2, (byte) 0x50); Udp_Receive.out(byt, byt.length, anchor, "»ñÈ¡ËùÓлùÕ¾°æ±¾ÐÅÏ¢"); } } /** * »ùÕ¾ÉÏÏßµÄʱºò½«»ùÕ¾ÁÙ½üÐÅϢдÈë»ùÕ¾ */ public static void write_anchor_near(Anchor anchor) { if (Systems.isWuxian()) {//Èç¹ûÊÇÃⲿÏßÄ£Ê½Ìø¹ýÏÂÃæµÄ²½Öè return; } byte[] byt = null; String anchorid = anchor.getAnc_id(); String[] anchornearid = {anchorid}; String[] acrnert = Anchor_nerby_dell.get_nearanhor(anchorid); int port = anchor.getPort(); anchornear ancner = Anchor_nerby_dell.get_anchor(anchorid); if (ancner != null) { int distance = ancner.getDistance(); int baoliu1 = ancner.getFastdistance(); int baoliu2 = Integer.parseInt(ancner.getAlldata());//ËùÓÐÊý¾ÝÊä³ö if (port != 0) { if (acrnert == null) { byt = ReadPeizhiMessage.save_nerby(anchornearid, distance, baoliu1, baoliu2); } else { byt = ReadPeizhiMessage.save_nerby(acrnert, distance, baoliu1, baoliu2); } Udp_Receive.out(byt, byt.length, anchor, "»ùÕ¾ÉÏÏßдÈëÁÙ½üÊý¾Ý"); Anchor_Dell.alert_nearok(1, anchorid); } } } /** * »ùÕ¾ÉÏÏߺ󽫻ùÕ¾µÄͬ²½ÐÅϢдÈë»ùÕ¾ */ public static void write_anchor_tongbu(Anchor anchor) { if (Systems.isWuxian()) {//Èç¹ûÊÇÃⲿÏßÄ£Ê½Ìø¹ýÏÂÃæµÄ²½Öè return; } String anchorid = anchor.getAnc_id(); if (Dell_TongbuAnchor.get_tb_rootanchor(anchorid) != null) { //ÕÒµ½Ä³¸öͬ²½»ùÕ¾¶ÔÏó Tb_tongbuanchor tbanchor = Dell_TongbuAnchor.get_tb_rootanchor(anchorid); if (tbanchor == null) { return; } //ÁÙ½ü»ùÕ¾ºÍÁÙ½ü»ùÕ¾ÀàÐÍ int[] value = new int[2]; //ͬ²½»ùÕ¾id String zhujizhan = tbanchor.getRootanchorid(); if (zhujizhan == null) { zhujizhan = "0000"; } //Èç¹ûÊÇÖ÷»ùվͬ²½»ùվΪ0 if (zhujizhan.length() >= 1) { if (zhujizhan.equals("0")) { value[0] = ReadPeizhiMessage.covert("0000"); } else { value[0] = ReadPeizhiMessage.covert(zhujizhan); } //ͬ²½»ùÕ¾ÀàÐÍ value[1] = Integer.parseInt(tbanchor.getType()); //Ö´ÐÐÐÅϢдÈë»ùÕ¾ byte[] byt = ReadPeizhiMessage.WriteDatapeiz((byte) 0x44, (byte) 0x04, value); if (!BaoWenHuiFang.isHuifangbaowen()) { int port = anchor.getPort(); if (port != 0) { Udp_Receive.out(byt, byt.length, anchor, "»ùÕ¾ÉÏÏßдÈë»ùվͬ²½Êý¾Ý"); Anchor_Dell.alert_tongbuok(1, anchorid); } } } } } /** * ¿ªÆô»òÕ߹رձêÇ©µÄGPS¹¦ÄÜ */ public static void alert_gps(int openorclose, Vector tagidzu) { Dell_55AA07.setTanchu(false); if (Systems.sys().getEng_bs().equals("1") && Systems.sys().getHoutai().equals("1")) { return; } byte[] byt = Read_Write_Anchor_Message.write_taghz(openorclose, Tag_Dell.tagzu(), (byte) 0x18); Dell_Ip.alert_all_ip(byt, "¿ªÆô»òÕ߹رձêÇ©µÄGPS¹¦ÄÜ"); } /** * ¿ªÆô»òÕ߹رձêÇ©ÐÝÃß¹¦ÄÜ * * @param openorclose¿ªÆô»òÕ߹رÕÐÝÃß * @param tagidzu±êÇ©×é */ public static void alert_atag_sleep(int openorclose, String tagid) { if (Systems.sys().getEng_bs().equals("1") && Systems.sys().getHoutai().equals("1")) { return; } byte[] byt = Read_Write_Anchor_Message.write_one_taghz(openorclose, tagid, (byte) 0x3e); Dell_Ip.alert_one_ip(byt, tagid, "¿ªÆô»òÕ߹رձêÇ©ÐÝÃß¹¦ÄÜ"); } /** * ÐÞ¸ÄÐÝÃßʱ¼ä */ public static void alert_sleep_time(int time, Vector tagidzu) { if (Systems.sys().getEng_bs().equals("1") && Systems.sys().getHoutai().equals("1")) { return; } byte[] byt = Read_Write_Anchor_Message.write_taghz(time, Tag_Dell.tagzu(), (byte) 0x3a); Dell_Ip.alert_all_ip(byt, "ÐÞ¸ÄÐÝÃßʱ¼ä"); } public static void alert_jiaozhun(int zhi, String tagid) { if (Systems.sys().getEng_bs().equals("1") && Systems.sys().getHoutai().equals("1")) { return; } byte[] byt = Read_Write_Anchor_Message.write_one_taghz(zhi, tagid, (byte) 0x50); Dell_Ip.alert_one_ip(byt, tagid, "ÐÞ¸ÄУ׼"); String[] ziduan = {"baoliu2", "tag_id"}; String[] zhis = {String.valueOf(zhi), tagid}; DatabaseManagement.fast_alert_dbase("tb_tag", ziduan, zhis); } public static int getTcp() { return tcp; } public static void setTcp(int tcp) { ChuShiHua.tcp = tcp; } public static int getSucc() { return succ; } public static void setSucc(int succ) { ChuShiHua.succ = succ; } /** * 50Ãë¸üÐÂÆøÌåºÍ¿¼ÇÚÊý¾Ý */ public static void aletkaoqingandgas() { if (suidaomoshi) { engine_do.alert_realkaoqing(); } if (Systems.isGasopen()) { engine_do.alert_realgas(); } time50 = 0; } public static void setPiannedd(int piannedd) { ChuShiHua.piannedd = piannedd; } /** * Çå¿ÕÊý¾Ý¿âÖеij¬¹ýʱ¼äµÄÀúÊ·¼Ç¼ */ public static void clear() { String time = GetNowTime.addDay1(-90);//90ÌìÒÔǰµÄÊý¾Ýɾ³ý String time2 = GetNowTime.addDay1(-10);//90ÌìÒÔǰµÄÊý¾Ýɾ³ý String deleteSql = "DELETE FROM tb_history_power WHERE time<'" + time + " 00:00:00'"; String deleteSql2 = "DELETE FROM tb_anchor_history_record WHERE addtime<'" + time + " 00:00:00'"; String deleteSql3 = "DELETE FROM tb_tagpower WHERE time<'" + time + " 00:00:00'"; String deleteSql4 = "DELETE FROM tb_heart_record WHERE time<'" + time + " 00:00:00'"; //ɾ³ýÐÄÂʼǼ String deleteSql5 = "DELETE FROM tb_message_history WHERE sendtime<'" + time + " 00:00:00'"; //ɾ³ýÐÅÏ¢¼Ç¼ String deleteSql6 = "DELETE FROM tb_lixianrecord_0829 WHERE time<'" + time2 + " 00:00:00'";// String deleteSql7 = "DELETE FROM tb_yuan_shi_bao_wen WHERE addtime<'" + time2 + " 00:00:00'";// String deleteSql8 = "DELETE FROM tb_ac_history_power WHERE addtime<'" + time + " 00:00:00'";// DatabaseManagement.update(deleteSql); DatabaseManagement.update(deleteSql2); DatabaseManagement.update(deleteSql3); DatabaseManagement.update(deleteSql4); DatabaseManagement.update(deleteSql5); DatabaseManagement.update(deleteSql6); DatabaseManagement.update(deleteSql7); DatabaseManagement.update(deleteSql8); } /**½«Îļþ±¨´æÔÚÈÕÖ¾ÖÐyang20230725*/ public static void save_baowen_inlog() { if(Dell_tb_suanfa2.isJnalog_open()){ if (file==null||!file.getName().equals(GetNowTime.getyearmd()+".log")) { file = SaveFIleInTxt.creatFile(); } //±£´æ±¨ÎÄÊý¾Ýµ½ÎļþÖÐ Vector vector = DellMessage.getVector(); if (vector.size()>0) { for (int j=0;j