DELL
2024-03-06 67c10d74d2e7350bd41329bdfc59d9aa755c6227
iec61850_forFoShanAES_Model/src/com/dec/fbs9100/BTS_61850_SocketClient.java
@@ -654,7 +654,7 @@
      FcModelNode fcModelNode = (FcModelNode) m_ServerModel.findModelNode(reference, fc);
      if (null == fcModelNode) {
         logger.error("readFloatNodeData error, no modenode was found.....");
         logger.error(reference+"readFloatNodeData error, no modenode was found.....");
         return 0;
      }
      try {
@@ -1013,24 +1013,56 @@
               String c[] = null;
               DataSet ds_stat = m_ServerModel.getDataSet(FBSDeviceName + "/LLN0.dsBtseYx");
               int size_cnt_stat = ds_stat.getMembers().size();
               c = new String[size_cnt_stat];
               String[] split = null;
               split = new String[2];
               boolean[] alm  = new boolean[] {false,false,false,false,false};
               int size_cnt = ds_stat.getMembers().size();
               //System.out.println(FBSDeviceName + "/LLN0.dsDevState 节点数:"+size_cnt);
               m_Association.getDataSetValues(ds_stat);
               String sb = null;
               String temp = "%s";
               //限制当前告警个数
               size_cnt_stat = 5;
               for (int n = 0; n < size_cnt_stat; n++) {
                  //System.err.println(ds_stat.getMembers().get(n).getName());
                  FcModelNode fc_mode = (FcModelNode) ds_stat.getMembers().get(n).getChild("stVal");
                  split = fc_mode.toString().split(": ");
                  c[n] = split[1];
                  if(n>0) {
                     temp += ",%s";
               // 屏蔽当前根节点下新添加的ukey内容
               for (int n = 0; n < size_cnt; n++) {
                  if(null == ds_stat.getMembers().get(n).getChild("stVal")) {
                     //System.err.println(ds.getMembers().get(n).getChild("mag").toString1());
                     continue;
                  }
               }
               sb = String.format(temp, (Object[])c);
                  FcModelNode fc_mode = (FcModelNode) ds_stat.getMembers().get(n).getChild("stVal");
                  if(fc_mode instanceof BdaBoolean) {
                     //JTextField tf_t = (JTextField) data.getValueField();
                     //System.out.println("n:"+n+" "+fc_mode.toString1());
                     String fc_mode_str = fc_mode.toString1();
                     if(fc_mode_str.contains(FBSDeviceName + "/ncdGGIO1.Alm1")){
                        alm[0] = ((BdaBoolean)fc_mode).getValue();
                     }else if(fc_mode_str.contains(FBSDeviceName + "/ncdGGIO1.Alm2")){
                        alm[1] = ((BdaBoolean)fc_mode).getValue();
                     }else if(fc_mode_str.contains(FBSDeviceName + "/ncdGGIO1.Alm3")){
                        alm[2] = ((BdaBoolean)fc_mode).getValue();
                     }else if(fc_mode_str.contains(FBSDeviceName + "/ncdGGIO1.Alm4")){
                        alm[3] = ((BdaBoolean)fc_mode).getValue();
                     }else if(fc_mode_str.contains(FBSDeviceName + "/ncdGGIO1.Alm5")){
                        alm[4] = ((BdaBoolean)fc_mode).getValue();
                     }
                  }else{
                  }
               }
//               c = new String[size_cnt_stat];
//               String[] split = null;
//               split = new String[2];
//               m_Association.getDataSetValues(ds_stat);
//               String sb = null;
//               String temp = "%s";
//               //限制当前告警个数
//               size_cnt_stat = 5;
//               for (int n = 0; n < size_cnt_stat; n++) {
//                  //System.err.println(ds_stat.getMembers().get(n).getName());
//                  FcModelNode fc_mode = (FcModelNode) ds_stat.getMembers().get(n).getChild("stVal");
//                  split = fc_mode.toString().split(": ");
//                  c[n] = split[1];
//                  if(n>0) {
//                     temp += ",%s";
//                  }
//               }
//               sb = String.format(temp, (Object[])c);
               String sb = String.format("%b,%b,%b,%b,%b",alm[0],alm[1],alm[2],alm[3],alm[4]);
               m_FBS_VCData.m_SysState.last_dev_61850alam = m_FBS_VCData.m_SysState.dev_61850alam; // 记录上一次告警状态
               m_FBS_VCData.m_SysState.dev_61850alam = sb;
   
@@ -1050,7 +1082,7 @@
               //System.out.println(FBSDeviceName + "/LLN0.dsDevState 节点数:"+size_cnt);
               m_Association.getDataSetValues(ds);
               // 屏蔽当前根节点下新添加的ukey内容
               for (int n = 0; n < size_cnt && n < 120; n++) {
               for (int n = 0; n < size_cnt; n++) {
                  if(null == ds.getMembers().get(n).getChild("mag") || null == ds.getMembers().get(n).getChild("mag").getChild("f")) {
                     //System.err.println(ds.getMembers().get(n).getChild("mag").toString1());
                     continue;
@@ -1184,7 +1216,7 @@
            if(null != ds_pm && null !=  ds_pm.getMembers()) {
               int size_cnt = ds_pm.getMembers().size();
               m_Association.getDataSetValues(ds_pm);
               //logger.printf(Level.DEBUG, "开始读取放电参数");
//               logger.printf(Level.DEBUG, "开始读取放电参数");
               for (int n = 0; n < size_cnt; n++) {
                  if(null == ds_pm.getMembers().get(n).getChild("mag")) {
                     continue;
@@ -1194,7 +1226,7 @@
                  BasicDataBind<?> data = new Float32DataBind((BdaFloat32) fc_mode);
                  JTextField tf_t = (JTextField) data.getValueField();
                  String fc_model_str = fc_mode.toString1();
                  System.out.println(fc_model_str+"==:"+tf_t.getText());
                  //logger.error(fc_model_str+"==:"+tf_t.getText());
                  if (fc_model_str.contains(FBSDeviceName + "/ncdGGIO1.TestCurr.mag.f")) {
                     m_FBS_DiscParamFromDev.DisCurr = Float.parseFloat(tf_t.getText());
                     //m_FBS_DiscParamFromDev.DisCurr = readFloatNodeData(FBSDeviceName + "/ncdGGIO1.TestCurr.mag.f", Fc.MX);
@@ -1227,15 +1259,19 @@
                     System.out.println(fc_model_str);
                  }
               }
               //测试时长
               m_FBS_DiscParamFromDev.DisTime = (int)(readFloatNodeData(ZJDYCPSS + "/cheGGIO1.HiTestTmhour.mag.f", Fc.MX)*60);
               //组端下限
               m_FBS_DiscParamFromDev.GroupVol_LOW = readFloatNodeData(ZJDYCPSS + "/cheGGIO1.LoBatVal.mag.f", Fc.MX);
               ds_pm = null;
            }else {
               m_FBS_DiscParamFromDev.DisCurr = readFloatNodeData(FBSDeviceName + "/ncdGGIO1.TestCurr.mag.f", Fc.MX);
               //m_FBS_DiscParamFromDev.DisTime = (int)(readFloatNodeData(ZJDYCPSS + "/cheGGIO1.HiTestTmhour.mag.f", Fc.MX)*60);
               m_FBS_DiscParamFromDev.DisTime = (int)(readFloatNodeData(FBSDeviceName + "/cheGGIO1.HiTestTmhour.mag.f", Fc.MX)*60);
               m_FBS_DiscParamFromDev.DisTime = (int)(readFloatNodeData(ZJDYCPSS + "/cheGGIO1.HiTestTmhour.mag.f", Fc.MX)*60);
               m_FBS_DiscParamFromDev.DisCap = readFloatNodeData(FBSDeviceName + "/ncdGGIO1.HiTestBatAh.mag.f", Fc.MX);
               m_FBS_DiscParamFromDev.MonomerTmp_High = readFloatNodeData(FBSDeviceName + "/ncdGGIO1.HiCelTemp.mag.f", Fc.MX);
               m_FBS_DiscParamFromDev.GroupVol_LOW = readFloatNodeData(FBSDeviceName + "/cheGGIO1.LoBatVal.mag.f", Fc.MX);
//               m_FBS_DiscParamFromDev.GroupVol_LOW = readFloatNodeData(ZJDYCPSS + "/cheGGIO1.LoBatVal.mag.f", Fc.MX);
               m_FBS_DiscParamFromDev.GroupVol_LOW = readFloatNodeData(ZJDYCPSS + "/cheGGIO1.LoBatVal.mag.f", Fc.MX);
               m_FBS_DiscParamFromDev.MonomerVol_LOW= readFloatNodeData(FBSDeviceName + "/ncdGGIO1.LoCelVol.mag.f", Fc.MX);
               m_FBS_DiscParamFromDev.DCVolHighLimit = readFloatNodeData(FBSDeviceName + "/ncdGGIO1.DCVolLimit.mag.f", Fc.MX);
               m_FBS_DiscParamFromDev.ChargeCurrSet = readFloatNodeData(FBSDeviceName + "/ncdGGIO1.ChargeCurr.mag.f", Fc.MX);
@@ -2200,6 +2236,10 @@
      
      
      System.out.println(ce.getUKEYRootDomStr("ZJDYBTSE2"));
      boolean[] a  = new boolean[] {false,true,false};
      String format1 = String.format("%b,%b,%b",a[0],a[1],a[2] );
      System.out.println(format1);
   }
   /*********************************************************************************************/