📄 复件 datapursueframe.java.txt.svn-base
字号:
int RowCount = m_model.getRowCount();
for (int i = 0; i < RowCount; i++) {
if (m_model.getValueAt(i, 4) == null || m_model.getValueAt(i, 2) == null ||
m_model.getValueAt(i, 3) == null) {
String message = "任务设置不完全,请重新选择!";
String title = "告警";
JOptionPane.showMessageDialog(this, message, title,
JOptionPane.WARNING_MESSAGE);
return;
}
}
MyTerminalListElement m_MyTerminalListElement = null;
MyMeterListElement m_MyMeterListElement = null;
terminal m_Terminal = null;
termdevice m_termdevice = null;
ArrayList TermTaskInfoList = new ArrayList();
int UnitType;
Collection meters = null;
Object[] meter_Array = null;
meter m_Meter = null;
meter_type m_MeterType = null;
FuncListObject m_FuncListObject = null;
int[] func_code;
Date StartTime = null;
Date EndTime = null;
long m_time;
ArrayList meter_list = null;
ArrayList terminal_list = null;
try {
if (PursueTypeTabbedPane.getSelectedIndex() == 0) { //按计量单元追补
terminal_list = new ArrayList();
System.out.println("m_model.getRowCount() = " + m_model.getRowCount());
HashMap Stockup = new HashMap();
for (int i = 0; i < m_model.getRowCount(); i++) {
m_MyTerminalListElement = (MyTerminalListElement) (m_model.
getValueAt(i, 1));
terminal m_tempTerminal = m_MyTerminalListElement.getTerminal();
m_Terminal = (terminal) (CollectorDefine.m_HashTerminal.get(new
Long(m_tempTerminal.getTerminalId())));
if (m_Terminal == null) {
String message = "计量单元:" + m_tempTerminal.getTerminalName() +
"已经不存在,请更新内存参数";
String title = "告警";
JOptionPane.showMessageDialog(this, message, title,
JOptionPane.WARNING_MESSAGE);
continue;
}
UnitType = m_Terminal.getUnitType();
StartTime = (Date) (m_model.getValueAt(i, 3));
EndTime = (Date) (m_model.getValueAt(i, 4));
m_FuncListObject = (FuncListObject) (m_model.getValueAt(i, 2));
channel_obj m_channel_obj = (channel_obj) (m_model.getValueAt(i, 5));
System.out.println("");
func_code = m_FuncListObject.getFuncCode();
meters = m_Terminal.getMeters();
if (meters == null || meters.size() <= 0) {
String message = "计量单元:" + m_Terminal.getTerminalName() +
" 没有电表,不追补!!";
String title = "告警";
JOptionPane.showMessageDialog(this, message, title,
JOptionPane.WARNING_MESSAGE);
continue;
}
meter_Array = meters.toArray();
if (UnitType == CollectorDefine.TERMINAL_TYPE) { //终端类型
meter_list = new ArrayList();
m_termdevice = m_Terminal.getTermDevice();
long temp_type_long;
if (m_termdevice != null) {
System.out.println("************ 终端类型:" +
m_Terminal.getTerminalName() +
" func_code = " + m_FuncListObject.toString());
long type_long = 0;
for (int k = 0; k < func_code.length; k++) {
type_long += new Double(Math.pow(2, func_code[k])).longValue();
}
System.out.println("");
System.out.println("************ type_long = " + type_long);
int Inttype = new Long(type_long).intValue();
System.out.println("************ type_long bin = " +
Integer.toBinaryString(Inttype));
temp_type_long = m_termdevice.getTaskType();
Stockup.put(new Long(m_Terminal.getTerminalId()),
new Long(temp_type_long));
m_termdevice.setTaskType(type_long);
m_Terminal.setTermDevice(m_termdevice);
int meters_length = meter_Array.length;
for (int m = 0; m < func_code.length; m++) {
for (int j = 0; j < meters_length; j++) {
m_Meter = (meter) (meter_Array[j]);
m_time = StartTime.getTime() / 1000l;
switch (func_code[m]) {
case Constant.HIS_DATA_TYPE_ADD_VALUE:
m_Meter.setAddTimeTag(m_time);
break;
case Constant.HIS_DATA_TYPE_BASE_VALUE:
m_Meter.setBaseTimeTag(m_time);
break;
case Constant.METER_DATA_TYPE_DAY_BASE:
m_Meter.setDayBaseTimeTag(m_time);
break;
case Constant.METER_DATA_TYPE_PHASE_BASE:
m_Meter.setPhaseBaseTimeTag(m_time);
break;
case Constant.METER_DATA_TYPE_DAY_NEED:
m_Meter.setDayNeedTimeTag(m_time);
break;
case Constant.METER_DATA_TYPE_PHASE_NEED:
m_Meter.setPhaseNeedTimeTag(m_time);
break;
case Constant.METER_DATA_TYPE_MONTH_NEED:
m_Meter.setMonthNeedTimeTag(m_time);
break;
case Constant.METER_DATA_TYPE_MONTH_PHASE_NEED:
m_Meter.setMonthPhaseNeedTimeTag(m_time);
break;
case Constant.HIS_DATA_TYPE_YC:
m_Meter.setYcTimeTag(m_time);
break;
case Constant.METER_EVENT: {
if (m_termdevice != null) {
m_termdevice.setEventSampleTime(m_time);
}
break;
}
case Constant.HIS_IP_TYPE_ADD_VALUE:
m_Meter.setIpTimeTag(m_time);
break;
case Constant.HIS_IP_TYPE_BASE_VALUE:
m_Meter.setIpBaseTimeTag(m_time);
break;
case Constant.METER_IP_TYPE_DAY_BASE:
break;
default:
break;
}
meter_list.add(m_Meter);
}
}
m_Terminal.setEndTime(EndTime.getTime() / 1000l);
m_Terminal.setMeters(meter_list);
if (CheckBox.isSelected()) {
m_Terminal.setPri(CollectorDefine.HIGH_PRI);
}
m_Terminal.setInvalidStatus( -1);
if (SysConnCheckBox.isSelected()) {
m_Terminal.setInvalidStatus(1);
}
else {
m_Terminal.setInvalidStatus( -1);
}
m_Terminal.setComputerId( -1);
if (m_channel_obj != null) {
m_Terminal.setComputerId(m_channel_obj.getChannel().
getChannelId());
System.out.println("*********** 选中的channel = " +
m_channel_obj.getChannel().getChannelName());
}
terminal_list.add(m_Terminal);
meter_list = null;
}
}
else { //非终端类型
System.out.println("************ 非终端类型: " +
m_Terminal.getTerminalName() +
" func_code = " + m_FuncListObject.toString());
meter_list = new ArrayList();
int meters_length = meter_Array.length;
HashMap metertypeHash = new HashMap();
for (int j = 0; j < meters_length; j++) {
m_Meter = (meter) (meter_Array[j]);
if (m_Meter != null) {
m_MeterType = m_Meter.getMeterType();
if (m_MeterType == null) {
continue;
}
else {
System.out.println("************ 第" + j + "块电表");
long type_long = 0;
for (int k = 0; k < func_code.length; k++) {
type_long += new Double(Math.pow(2, func_code[k])).
longValue();
}
metertypeHash.put(new Long(m_MeterType.getMeterTypeId()),
new Integer(m_MeterType.getPulseItem()));
m_MeterType.setPulseItem(new Long(type_long).intValue());
m_Meter.setMeterType(m_MeterType);
System.out.println("************ 设置过以后的meter中的PulseItem :" +
(m_Meter.getMeterType()).getPulseItem());
}
m_time = StartTime.getTime() / 1000l;
for (int m = 0; m < func_code.length; m++) {
switch (func_code[m]) {
case Constant.HIS_DATA_TYPE_ADD_VALUE:
m_Meter.setAddTimeTag(m_time);
break;
case Constant.HIS_DATA_TYPE_BASE_VALUE:
m_Meter.setBaseTimeTag(m_time);
break;
case Constant.METER_DATA_TYPE_DAY_BASE:
m_Meter.setDayBaseTimeTag(m_time);
break;
case Constant.METER_DATA_TYPE_PHASE_BASE:
m_Meter.setPhaseBaseTimeTag(m_time);
break;
case Constant.METER_DATA_TYPE_DAY_NEED:
m_Meter.setDayNeedTimeTag(m_time);
break;
case Constant.METER_DATA_TYPE_PHASE_NEED:
m_Meter.setPhaseNeedTimeTag(m_time);
break;
case Constant.METER_DATA_TYPE_MONTH_NEED:
m_Meter.setMonthNeedTimeTag(m_time);
break;
case Constant.METER_DATA_TYPE_MONTH_PHASE_NEED:
m_Meter.setMonthPhaseNeedTimeTag(m_time);
break;
case Constant.HIS_DATA_TYPE_YC:
m_Meter.setYcTimeTag(m_time);
break;
case Constant.METER_EVENT: {
m_Meter.setEventSampleTime(m_time);
break;
}
case Constant.HIS_IP_TYPE_ADD_VALUE:
m_Meter.setIpTimeTag(m_time);
break;
case Constant.HIS_IP_TYPE_BASE_VALUE:
m_Meter.setIpBaseTimeTag(m_time);
break;
case Constant.METER_IP_TYPE_DAY_BASE:
break;
default:
break;
}
}
meter_list.add(m_Meter);
}
}
Stockup.put(new Long(m_Terminal.getTerminalId()), metertypeHash);
m_Terminal.setEndTime(EndTime.getTime() / 1000l);
System.out.println("************ 一共设置了" + meter_list.size() +
"块电表");
m_Terminal.setMeters(meter_list);
if (CheckBox.isSelected()) {
m_Terminal.setPri(CollectorDefine.HIGH_PRI);
}
m_Terminal.setInvalidStatus( -1);
if (SysConnCheckBox.isSelected()) {
m_Terminal.setInvalidStatus(1);
}
else {
m_Terminal.setInvalidStatus( -1);
}
m_Terminal.setComputerId( -1);
if (m_channel_obj != null) {
m_Terminal.setComputerId(m_channel_obj.getChannel().
getChannelId());
System.out.println("*********** 选中的channel = " +
m_channel_obj.getChannel().getChannelName());
}
terminal_list.add(m_Terminal);
meter_list = null;
}
}
if (terminal_list.size() > 0) {
Object m_obj = FailimitComboBox.getSelectedItem();
if (m_obj != null && m_obj instanceof Integer) {
int faillimit = ( (Integer) m_obj).intValue();
if (faillimit > 0) {
System.out.println("&&&&&&&&&&&&&&&& faillimit = " + faillimit);
for (int i = 0; i < terminal_list.size(); i++) {
terminal m_term = (terminal) (terminal_list.get(i));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -