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

📄 metertablemodel.java.svn-base

📁 通讯采集软件
💻 SVN-BASE
字号:
/*
 * MeterTableModel.java
 *
 * Created on 2003年9月5日, 下午1:46
 */

package collector.gui.model;

import java.util.*;

import javax.swing.table.*;

import collector.gui.method.*;
import pbs.service.defineobject.*;
import pbs.service.function.*;
import pbs.service.struct.*;
import pbs.service.vo.*;

public class MeterTableModel
    extends AbstractTableModel {
  String[] columnNames = new String[5];
  Object[][] data = new Object[5][5];
  ArrayList m_meterlist = new ArrayList();
  getMeterFieldName m_gMFN = new getMeterFieldName();
  meter MyMeter = null;

  public MeterTableModel(ArrayList m_pMeterlist) {
    super();
    this.m_meterlist = m_pMeterlist;
    meterDefine mDefine = new meterDefine();
    columnNames = new String[20];
    data = new Object[m_meterlist.size()][20];
    FieldValue fv = new FieldValue();
    columnNames[0] = m_gMFN.getChName(mDefine.METER_NAME_NO);
    columnNames[1] = m_gMFN.getChName(mDefine.METER_NO_NO);
    columnNames[2] = m_gMFN.getChName(mDefine.METER_ADDR_NO);

    columnNames[3] = m_gMFN.getChName(mDefine.STATUS_NO);
    columnNames[4] = m_gMFN.getChName(mDefine.CT1_NO);
    columnNames[5] = m_gMFN.getChName(mDefine.PT1_NO);
    columnNames[6] = m_gMFN.getChName(mDefine.CT2_NO);
    columnNames[7] = m_gMFN.getChName(mDefine.PT2_NO);
    columnNames[8] = m_gMFN.getChName(mDefine.METER_TYPE_ID_NO);
    columnNames[9] = m_gMFN.getChName(mDefine.MANUFACTURE_DATE_NO);
    columnNames[10] = m_gMFN.getChName(mDefine.PARAM_VALID_TIME_NO);
    columnNames[11] = m_gMFN.getChName(mDefine.ADD_TIME_TAG_NO);
    columnNames[12] = m_gMFN.getChName(mDefine.BASE_TIME_TAG_NO);
    columnNames[13] = m_gMFN.getChName(mDefine.EVENT_SAMPLE_TIME_NO);
    columnNames[14] = m_gMFN.getChName(mDefine.DAY_BASE_TIME_TAG_NO);
    columnNames[15] = m_gMFN.getChName(mDefine.YC_TIME_TAG_NO);
    columnNames[16] = m_gMFN.getChName(mDefine.PHASE_BASE_TIME_TAG_NO);
    columnNames[17] = m_gMFN.getChName(mDefine.DAY_NEED_TIME_TAG_NO);
    columnNames[18] = m_gMFN.getChName(mDefine.PHASE_NEED_TIME_TAG_NO);
    columnNames[19] = m_gMFN.getChName(mDefine.MONTH_NEED_TIME_TAG_NO);

    Object[] m_Objects = m_meterlist.toArray();
    for (int i = 0; i < m_Objects.length; i++) {
      try {
        //meter m_meter = (meter) m_Objects[i];
        meter m_meter = (meter) (m_meterlist.get(i));
        this.setMeter( (meter) m_Objects[i]);
        data[i][0] = this.getFieldValue(mDefine.METER_NAME_NO);
        data[i][1] = this.getFieldValue(mDefine.METER_NO_NO);
        data[i][2] = this.getFieldValue(mDefine.METER_ADDR_NO);

        data[i][3] = this.getStatus(this.getFieldValue(mDefine.STATUS_NO));
        data[i][4] = this.getFieldValue(mDefine.CT1_NO);
        data[i][5] = this.getFieldValue(mDefine.PT1_NO);
        data[i][6] = this.getFieldValue(mDefine.CT2_NO);
        data[i][7] = this.getFieldValue(mDefine.PT2_NO);
        meter_type m_metertype = m_meter.getMeterType();
        if (m_metertype != null) {
          data[i][8] = this.getString(m_metertype.getMeterTypeName());
        }
        else {
          data[i][8] = "";
        }
        data[i][9] = PublicMethod.StringTime( ( (Long) (this.getFieldValue(
            mDefine.MANUFACTURE_DATE_NO))).longValue());
        data[i][10] = PublicMethod.StringTime( ( (Long) (this.getFieldValue(
            mDefine.PARAM_VALID_TIME_NO))).longValue());
        data[i][11] = PublicMethod.StringTime( ( (Long) (this.getFieldValue(
            mDefine.ADD_TIME_TAG_NO))).longValue());
        data[i][12] = PublicMethod.StringTime( ( (Long) (this.getFieldValue(
            mDefine.BASE_TIME_TAG_NO))).longValue());
        data[i][13] = PublicMethod.StringTime( ( (Long) (this.getFieldValue(
            mDefine.EVENT_SAMPLE_TIME_NO))).longValue());
        data[i][14] = PublicMethod.StringTime( ( (Long) (this.getFieldValue(
            mDefine.DAY_BASE_TIME_TAG_NO))).longValue());
        data[i][15] = PublicMethod.StringTime( ( (Long) (this.getFieldValue(
            mDefine.YC_TIME_TAG_NO))).longValue());
        data[i][16] = PublicMethod.StringTime( ( (Long) (this.getFieldValue(
            mDefine.PHASE_BASE_TIME_TAG_NO))).longValue());
        data[i][17] = PublicMethod.StringTime( ( (Long) (this.getFieldValue(
            mDefine.DAY_NEED_TIME_TAG_NO))).longValue());
        data[i][18] = PublicMethod.StringTime( ( (Long) (this.getFieldValue(
            mDefine.PHASE_NEED_TIME_TAG_NO))).longValue());
        data[i][19] = PublicMethod.StringTime( ( (Long) (this.getFieldValue(
            mDefine.MONTH_NEED_TIME_TAG_NO))).longValue());

      }
      catch (Exception e) {
        System.out.println("MeterTableModel ---------- Exception");
        e.printStackTrace();
        System.out.println("MeterTableModel ---------- Exception");
      }
    }
  }

  private Object getFieldValue(int no) {
    meter m_meter = this.getMeter();
    FieldValue fv = m_meter.getFieldValueByNo( (long) (no + 1));
    Object m_Object = null;
    if (fv.m_field_type == Constant.JAVA_TYPE_INT) {
      m_Object = new Integer(fv.m_intValue);
    }
    else if (fv.m_field_type == Constant.JAVA_TYPE_DOUBLE) {
      m_Object = new Double(fv.m_dblValue);
    }
    else if (fv.m_field_type == Constant.JAVA_TYPE_LONG) {
      m_Object = new Long(fv.m_lValue);
    }
    else {
      m_Object = fv.m_strValue;
    }
    return m_Object;
  }

  private String getString(Object m_pObject) {
    if (m_pObject == null || m_pObject.equals("null")) {
      return "";
    }
    else {
      return m_pObject.toString();
    }

  }

  private String getStatisMode(Object m_pObject) {
    if (! (m_pObject instanceof Integer)) {
      return " ";
    }
    int m_int = ( (Integer) m_pObject).intValue();
    String m_String = new String();
    switch (m_int) {
      case 1:
        m_String = "使用表码值";
        break;
      case 2:
        m_String = "使用负荷曲线";
        break;
      default:
        m_String = "未选";
        break;
    }
    return m_String;
  }

  private String getPriceMode(Object m_pObject) {
    if (! (m_pObject instanceof Integer)) {
      return " ";
    }
    int m_int = ( (Integer) m_pObject).intValue();
    String m_String = new String();
    switch (m_int) {
      case 1:
        m_String = "一般模式";
        break;
      case 2:
        m_String = "特殊模式";
        break;
      default:
        m_String = "未选";
        break;
    }
    return m_String;
  }

  private String getYcType(Object m_pObject) {
    if (! (m_pObject instanceof Long)) {
      return " ";
    }
    int m_int = (int) ( ( (Long) (m_pObject)).longValue());
    if (m_int == 0) {
      return "未选";
    }
    StringBuffer m_Stringbuffer = new StringBuffer("");
    for (int i = 0; i < 4; i++) {
      int m_value = (int) ( (m_int >> i) & 0x01);
      if (m_value == 0x01) {
        switch (i) {
          case 0:
            m_Stringbuffer.append("有功");
            break;
          case 1:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("无功");
            break;
          case 2:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("电压");
            break;
          case 3:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("电流");
            break;
        }
      }
    }
    return m_Stringbuffer.toString();
  }

  private String getStatisType(Object m_pObject) {
    if (! (m_pObject instanceof Long)) {
      return " ";
    }
    int m_int = ( (Long) (m_pObject)).intValue();
    if (m_int == 0) {
      return "未选";
    }
    StringBuffer m_Stringbuffer = new StringBuffer("");
    for (int i = 0; i < 5; i++) {
      int m_value = (int) ( (m_int >> i) & 0x01);
      if (m_value == 0x01) {
        switch (i) {
          case 0:
            m_Stringbuffer.append("日统计");
            break;
          case 1:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("周统计");
            break;
          case 2:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("月统计");
            break;
          case 3:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("季统计");
            break;
          case 4:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("年统计");
            break;
          case 5:
            m_Stringbuffer.append("/");
            m_Stringbuffer.append("日时段统计");
            break;
          case 6:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("周时段统计");
            break;
          case 7:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("月时段统计");
            break;
          case 8:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("季时段统计");
            break;
          case 9:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("年时段统计");
            break;
        }

      }
    }
    return m_Stringbuffer.toString();
  }

  private String getDateType(Object m_pObject) {
    if (! (m_pObject instanceof Long)) {
      return " ";
    }
    long m_long = ( (Long) (m_pObject)).longValue();
    int m_int = (int) m_long;
    StringBuffer m_Stringbuffer = new StringBuffer("");

    for (int i = 0; i < 16; i++) {
      int m_value = (int) ( (m_int >> i) & 0x01);
      if (m_value == 0x01) {
        switch (i) {
          case 0:
            m_Stringbuffer.append("负荷曲线");
            break;
          case 1:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("表码值");
            break;
          case 2:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("零点底码");
            break;
          case 3:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("时段底码");
            break;
          case 4:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("日冻结值");
            break;
          case 5:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("日费率");
            break;
          case 6:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("日需量");
            break;
          case 7:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("月冻结值");
            break;
          case 8:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("月费率");
            break;
          case 9:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("月需量");
            break;
          case 10:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("时段冻结值");
            break;
          case 11:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("时段费率");
            break;
          case 12:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("时段需量");
            break;
          default:
            m_Stringbuffer.append("/ ");
            m_Stringbuffer.append("未选");
            break;
        }
      }
    }
    return m_Stringbuffer.toString();
  }

  //pzy 0926

  //pzy 0926
  private String getMeterPulseType(Object m_pObject) {
    if (! (m_pObject instanceof Integer)) {
      return " ";
    }
    int m_int = ( (Integer) (m_pObject)).intValue();
    String m_String = new String();
    switch (m_int) {
      case 1:
        m_String = "有功无功";
        break;
      case 2:
        m_String = "有功";
        break;
      case 3:
        m_String = "无功";
        break;
      case 4:
        m_String = "正向有功";
        break;
      case 5:
        m_String = "反向有功";
        break;
      case 6:
        m_String = "正向无功";
        break;
      case 7:
        m_String = "反向无功";
        break;
      default:
        m_String = "未选";
        break;
    }
    return m_String;
  }

  private String getPorD(Object m_pObject) {
    if (! (m_pObject instanceof Integer)) {
      return " ";
    }
    int m_int = ( (Integer) m_pObject).intValue();
    String m_String = new String();
    switch (m_int) {
      case 1:
        m_String = "数字表";
        break;
      case 2:
        m_String = "脉冲表";
        break;
      default:
        m_String = "未选";
        break;
    }
    return m_String;
  }

  private String getStatus(Object m_pObject) {
    if (! (m_pObject instanceof Long)) {
      return " ";
    }
    int m_int = (int) ( (Long) m_pObject).longValue();
    String m_String = new String();
    switch (m_int) {
      case 1:
        m_String = "正常";
        break;
      case 2:
        m_String = "故障";
        break;
      case 3:
        m_String = "停用";
        break;
      default:
        m_String = "未选";
        break;
    }
    return m_String;
  }

  private String getYesNo(Object m_pObject) {
    if (! (m_pObject instanceof Integer)) {
      return " ";
    }
    int m_int = ( (Integer) m_pObject).intValue();
    String m_String = new String();
    switch (m_int) {
      case 0:
        m_String = "否";
        break;
      case 1:
        m_String = "是";
        break;
      default:
        m_String = "未选";
        break;
    }
    return m_String;
  }

  private String getMinutes(Object m_pObject) {
    if (! (m_pObject instanceof Integer)) {
      return " ";
    }
    int minute = ( ( (Integer) m_pObject).intValue()) / 60;
    String Min = (new Integer(minute)).toString();
    return Min + "分";
  }

  public meter getMeter() {
    return this.MyMeter;
  }

  public void setMeter(meter m_pmeter) {
    this.MyMeter = m_pmeter;
  }

  public ArrayList getMeterList() {
    return this.m_meterlist;
  }

  public void setMeterList(ArrayList m_pList) {
    this.m_meterlist = m_pList;
  }

  public int getColumnCount() {
    return columnNames.length;
  }

  public int getRowCount() {
    return data.length;
  }

  public String getColumnName(int col) {
    return columnNames[col];
  }

  public Object getValueAt(int row, int col) {
    return data[row][col];
  }

  public boolean isCellEditable(int row, int col) {
    return false;
  }
}

⌨️ 快捷键说明

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