|
|
|
@ -6,6 +6,8 @@ import jakarta.annotation.Resource; |
|
|
|
import org.springframework.jdbc.core.JdbcTemplate; |
|
|
|
import org.springframework.stereotype.Component; |
|
|
|
|
|
|
|
import java.sql.Timestamp; |
|
|
|
|
|
|
|
@Component |
|
|
|
public class F10Dao { |
|
|
|
|
|
|
|
@ -81,6 +83,146 @@ public class F10Dao { |
|
|
|
); |
|
|
|
} |
|
|
|
|
|
|
|
public void saveOrUpdateF10Realtime(F10JournalLog f10JournalLog) { |
|
|
|
|
|
|
|
String sql = |
|
|
|
"INSERT INTO f10_journal_realtime (" + |
|
|
|
"device_id, company_id, raw_hex, raw_text, serial_no, mode, " + |
|
|
|
"signal_seq, receive_date, receive_time, receive_timestamp, " + |
|
|
|
"channel_no, test_flag, block_no, block_name, " + |
|
|
|
"signal_type1, signal_type2, signal_label, signal_status, " + |
|
|
|
"course_no, area_code, course_code, standby_name, physical_addr, " + |
|
|
|
"customer_name, phone, remark, display_color, error_reason, line_type, area_name, " + |
|
|
|
"send_date, send_time, customer_no, display_data1, display_data2, " + |
|
|
|
"instruction_flag, signal_code, card_no, card_type, mansion_building, mansion_room, option_field, " + |
|
|
|
"expired_flag, alert_history_id, created_at, created_time, update_at, update_time" + |
|
|
|
") VALUES (" + |
|
|
|
"?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?" + |
|
|
|
")" + |
|
|
|
" ON DUPLICATE KEY UPDATE " + |
|
|
|
|
|
|
|
"company_id = VALUES(company_id), " + |
|
|
|
"raw_hex = VALUES(raw_hex), " + |
|
|
|
"raw_text = VALUES(raw_text), " + |
|
|
|
"serial_no = VALUES(serial_no), " + |
|
|
|
"mode = VALUES(mode), " + |
|
|
|
"signal_seq = VALUES(signal_seq), " + |
|
|
|
"receive_date = VALUES(receive_date), " + |
|
|
|
"receive_time = VALUES(receive_time), " + |
|
|
|
"receive_timestamp = VALUES(receive_timestamp), " + |
|
|
|
"channel_no = VALUES(channel_no), " + |
|
|
|
"test_flag = VALUES(test_flag), " + |
|
|
|
"block_no = VALUES(block_no), " + |
|
|
|
"block_name = VALUES(block_name), " + |
|
|
|
"signal_type1 = VALUES(signal_type1), " + |
|
|
|
"signal_type2 = VALUES(signal_type2), " + |
|
|
|
"signal_label = VALUES(signal_label), " + |
|
|
|
"signal_status = VALUES(signal_status), " + |
|
|
|
"course_no = VALUES(course_no), " + |
|
|
|
"area_code = VALUES(area_code), " + |
|
|
|
"course_code = VALUES(course_code), " + |
|
|
|
"standby_name = VALUES(standby_name), " + |
|
|
|
"physical_addr = VALUES(physical_addr), " + |
|
|
|
"customer_name = VALUES(customer_name), " + |
|
|
|
"phone = VALUES(phone), " + |
|
|
|
"remark = VALUES(remark), " + |
|
|
|
"display_color = VALUES(display_color), " + |
|
|
|
"error_reason = VALUES(error_reason), " + |
|
|
|
"line_type = VALUES(line_type), " + |
|
|
|
"area_name = VALUES(area_name), " + |
|
|
|
"send_date = VALUES(send_date), " + |
|
|
|
"send_time = VALUES(send_time), " + |
|
|
|
"customer_no = VALUES(customer_no), " + |
|
|
|
"display_data1 = VALUES(display_data1), " + |
|
|
|
"display_data2 = VALUES(display_data2), " + |
|
|
|
"instruction_flag = VALUES(instruction_flag), " + |
|
|
|
"signal_code = VALUES(signal_code), " + |
|
|
|
"card_no = VALUES(card_no), " + |
|
|
|
"card_type = VALUES(card_type), " + |
|
|
|
"mansion_building = VALUES(mansion_building), " + |
|
|
|
"mansion_room = VALUES(mansion_room), " + |
|
|
|
"option_field = VALUES(option_field), " + |
|
|
|
"expired_flag = VALUES(expired_flag), " + |
|
|
|
|
|
|
|
// alert_history_id:null 不覆盖原值
|
|
|
|
"alert_history_id = IFNULL(VALUES(alert_history_id), alert_history_id), " + |
|
|
|
|
|
|
|
// 创建时间只在首次INSERT生效(不更新)
|
|
|
|
"created_at = created_at, " + |
|
|
|
"created_time = created_time, " + |
|
|
|
|
|
|
|
// 每次都更新
|
|
|
|
"update_at = VALUES(update_at), " + |
|
|
|
"update_time = VALUES(update_time)"; |
|
|
|
|
|
|
|
long now = System.currentTimeMillis(); |
|
|
|
Timestamp nowTime = new Timestamp(now); |
|
|
|
|
|
|
|
jdbcTemplate.update(sql, |
|
|
|
|
|
|
|
f10JournalLog.getDeviceId(), |
|
|
|
f10JournalLog.getCompanyId(), |
|
|
|
f10JournalLog.getRawHex(), |
|
|
|
f10JournalLog.getRawText(), |
|
|
|
f10JournalLog.getSerialNo(), |
|
|
|
f10JournalLog.getMode(), |
|
|
|
|
|
|
|
f10JournalLog.getSignalSeq(), |
|
|
|
f10JournalLog.getReceiveDate(), |
|
|
|
f10JournalLog.getReceiveTime(), |
|
|
|
f10JournalLog.getReceiveTimestamp(), |
|
|
|
|
|
|
|
f10JournalLog.getChannelNo(), |
|
|
|
f10JournalLog.getTestFlag(), |
|
|
|
f10JournalLog.getBlockNo(), |
|
|
|
f10JournalLog.getBlockName(), |
|
|
|
|
|
|
|
f10JournalLog.getSignalType1(), |
|
|
|
f10JournalLog.getSignalType2(), |
|
|
|
f10JournalLog.getSignalLabel(), |
|
|
|
f10JournalLog.getSignalStatus(), |
|
|
|
|
|
|
|
f10JournalLog.getCourseNo(), |
|
|
|
f10JournalLog.getAreaCode(), |
|
|
|
f10JournalLog.getCourseCode(), |
|
|
|
f10JournalLog.getStandbyName(), |
|
|
|
f10JournalLog.getPhysicalAddr(), |
|
|
|
|
|
|
|
f10JournalLog.getCustomerName(), |
|
|
|
f10JournalLog.getPhone(), |
|
|
|
f10JournalLog.getRemark(), |
|
|
|
f10JournalLog.getDisplayColor(), |
|
|
|
f10JournalLog.getErrorReason(), |
|
|
|
f10JournalLog.getLineType(), |
|
|
|
f10JournalLog.getAreaName(), |
|
|
|
|
|
|
|
f10JournalLog.getSendDate(), |
|
|
|
f10JournalLog.getSendTime(), |
|
|
|
f10JournalLog.getCustomerNo(), |
|
|
|
f10JournalLog.getDisplayData1(), |
|
|
|
f10JournalLog.getDisplayData2(), |
|
|
|
|
|
|
|
f10JournalLog.getInstructionFlag(), |
|
|
|
f10JournalLog.getSignalCode(), |
|
|
|
f10JournalLog.getCardNo(), |
|
|
|
f10JournalLog.getCardType(), |
|
|
|
f10JournalLog.getMansionBuilding(), |
|
|
|
f10JournalLog.getMansionRoom(), |
|
|
|
f10JournalLog.getOptionField(), |
|
|
|
|
|
|
|
f10JournalLog.getExpiredFlag(), |
|
|
|
f10JournalLog.getAlertHistoryId(), |
|
|
|
|
|
|
|
// created_at / created_time(仅首次插入生效)
|
|
|
|
now, |
|
|
|
nowTime, |
|
|
|
|
|
|
|
// update_at / update_time(每次更新)
|
|
|
|
now, |
|
|
|
nowTime |
|
|
|
); |
|
|
|
} |
|
|
|
|
|
|
|
public void insertF10ProcessingData(F10ProcessingData f10ProcessingData) { |
|
|
|
|
|
|
|
String sql = "INSERT IGNORE INTO f10_processing_log (" + |
|
|
|
|