2026-01-11 15:33:22 +08:00
|
|
|
package com.common.mapper;
|
|
|
|
|
|
|
|
|
|
import com.common.entity.Alarm;
|
|
|
|
|
import com.common.entity.AlarmVisit;
|
|
|
|
|
import org.apache.ibatis.annotations.Insert;
|
|
|
|
|
import org.apache.ibatis.annotations.Mapper;
|
|
|
|
|
import org.apache.ibatis.annotations.Param;
|
|
|
|
|
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Mapper
|
|
|
|
|
public interface AlarmVisitMapper {
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 批量插入告警数据
|
|
|
|
|
*/
|
|
|
|
|
@Insert({"<script>",
|
|
|
|
|
"INSERT INTO alarm_visit (",
|
|
|
|
|
"id, created_at, alarm_name, alarm_level, alarm_type, ",
|
2026-01-26 15:20:46 +08:00
|
|
|
"alarm_major_type, alarm_minor_type,alarm_area_id, attack_ip, victim_ip, victim_web_url, ",
|
2026-01-11 15:33:22 +08:00
|
|
|
"device_id, comment,origin_log_ids,log_start_at, log_end_at, http_status, ",
|
|
|
|
|
"attack_port, victim_port, attack_method, etl_time, log_count, ",
|
|
|
|
|
"attack_chain_phase, disposition_advice, attack_direction, ",
|
2026-01-26 15:20:46 +08:00
|
|
|
"judged_state, disposed_state, attack_result, fall, payload, " ,
|
2026-01-11 15:33:22 +08:00
|
|
|
"http_req_header , http_req_body,http_resp_header , http_resp_body ",
|
|
|
|
|
") VALUES ",
|
|
|
|
|
"<foreach collection='list' item='item' separator=','>",
|
|
|
|
|
"(#{item.id}, #{item.createdAt}, #{item.alarmName}, #{item.alarmLevel}, ",
|
|
|
|
|
"#{item.alarmType}, #{item.alarmMajorType}, #{item.alarmMinorType}, #{item.alarmAreaId}, ",
|
|
|
|
|
"#{item.attackIp, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, ",
|
|
|
|
|
"#{item.victimIp, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, ",
|
2026-01-26 15:20:46 +08:00
|
|
|
"#{item.victimWebUrl, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, ",
|
2026-01-11 15:33:22 +08:00
|
|
|
"#{item.deviceId, typeHandler=com.Modules.etl.handler.ArrayIntegerTypeHandler}, ",
|
|
|
|
|
"#{item.comment}, " ,
|
|
|
|
|
"#{item.originLogIds, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, ",
|
|
|
|
|
"#{item.logStartAt}, #{item.logEndAt}, #{item.httpStatus}, ",
|
|
|
|
|
"#{item.attackPort, typeHandler=com.Modules.etl.handler.ArrayIntegerTypeHandler}, ",
|
|
|
|
|
"#{item.victimPort, typeHandler=com.Modules.etl.handler.ArrayIntegerTypeHandler}, ",
|
|
|
|
|
"#{item.attackMethod}, #{item.etlTime}, #{item.logCount}, ",
|
|
|
|
|
"#{item.attackChainPhase, typeHandler=com.Modules.etl.handler.ArrayIntegerTypeHandler}, ",
|
|
|
|
|
"#{item.dispositionAdvice}, #{item.attackDirection}, ",
|
|
|
|
|
"#{item.judgedState}, #{item.disposedState}, #{item.attackResult}, #{item.fall}, ",
|
|
|
|
|
"#{item.payload}, ",
|
|
|
|
|
"#{item.httpReqHeaders, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, ",
|
|
|
|
|
"#{item.httpReqBodys, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, ",
|
|
|
|
|
"#{item.httpRespHeaders, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, ",
|
|
|
|
|
"#{item.httpRespBodys, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}) ",
|
|
|
|
|
"</foreach>",
|
|
|
|
|
"</script>"})
|
|
|
|
|
void batchInsert(@Param("list") List<AlarmVisit> alarmList);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 单条插入告警数据
|
|
|
|
|
*/
|
|
|
|
|
@Insert("INSERT INTO alarm_visit (" +
|
|
|
|
|
"id, created_at, alarm_name, alarm_level, alarm_type, " +
|
2026-01-26 15:20:46 +08:00
|
|
|
"alarm_major_type, alarm_minor_type,alarm_area_id, attack_ip, victim_ip, victim_web_url, " +
|
2026-01-11 15:33:22 +08:00
|
|
|
"device_id, comment,origin_log_ids, log_start_at, log_end_at, http_status, " +
|
|
|
|
|
"attack_port, victim_port, attack_method, etl_time, log_count, " +
|
|
|
|
|
"attack_chain_phase, disposition_advice, attack_direction, " +
|
|
|
|
|
"judged_state, disposed_state, attack_result, fall, payload, " +
|
|
|
|
|
"http_req_header , http_req_body,http_resp_header , http_resp_body " +
|
|
|
|
|
") VALUES (" +
|
|
|
|
|
"#{id}, #{createdAt}, #{alarmName}, #{alarmLevel}, " +
|
|
|
|
|
"#{alarmType}, #{alarmMajorType}, #{alarmMinorType}, #{alarmAreaId}, " +
|
|
|
|
|
"#{attackIp, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, " +
|
|
|
|
|
"#{victimIp, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, " +
|
2026-01-26 15:20:46 +08:00
|
|
|
"#{victimWebUrl, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, "+
|
2026-01-11 15:33:22 +08:00
|
|
|
"#{deviceId, typeHandler=com.Modules.etl.handler.ArrayIntegerTypeHandler}, " +
|
|
|
|
|
"#{comment}, " +
|
|
|
|
|
"#{originLogIds, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, " +
|
|
|
|
|
"#{logStartAt}, #{logEndAt}, #{httpStatus}, " +
|
|
|
|
|
"#{attackPort, typeHandler=com.Modules.etl.handler.ArrayIntegerTypeHandler}, " +
|
|
|
|
|
"#{victimPort, typeHandler=com.Modules.etl.handler.ArrayIntegerTypeHandler}, " +
|
|
|
|
|
"#{attackMethod}, #{etlTime}, #{logCount}, " +
|
|
|
|
|
"#{attackChainPhase, typeHandler=com.Modules.etl.handler.ArrayIntegerTypeHandler}, " +
|
|
|
|
|
"#{dispositionAdvice}, #{attackDirection}, " +
|
|
|
|
|
"#{judgedState}, #{disposedState}, #{attackResult}, #{fall}, #{payload}, " +
|
|
|
|
|
"#{httpReqHeaders, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, " +
|
|
|
|
|
"#{httpReqBodys, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, " +
|
|
|
|
|
"#{httpRespHeaders, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler}, " +
|
|
|
|
|
"#{httpRespBodys, typeHandler=com.Modules.etl.handler.ArrayStringTypeHandler} " +
|
|
|
|
|
")")
|
|
|
|
|
void insert(AlarmVisit alarm);
|
|
|
|
|
}
|