package pgsql_alarmSnapshot import ( "context" "fwh-toolbox-server/models/model_pgsql/model_alarm_snapshot" "fwh-toolbox-server/models/model_pgsql/query_alarm_snapshot" "time" "go.uber.org/zap" "gorm.io/gorm/clause" ) type FileRecord = model_alarm_snapshot.SiteAlarmSnapshotFileRecord // 查询文件解析记录 func QuerySnapshotFileRecord(c context.Context, fileName string) (*FileRecord, error) { ctx, cancel := context.WithTimeout(c, 5*time.Second) defer cancel() fileRecordModel := query_alarm_snapshot.SiteAlarmSnapshotFileRecord data, err := fileRecordModel.WithContext(ctx). Where(fileRecordModel.FileName.Eq(fileName)). First() return data, err } // 插入文件解析记录(冲突时覆盖) func InsertSnapshotFileRecord(c context.Context, data *FileRecord) error { ctx, cancel := context.WithTimeout(c, 5*time.Second) defer cancel() fileRecordModel := query_alarm_snapshot.SiteAlarmSnapshotFileRecord err := fileRecordModel.WithContext(ctx).Clauses(clause.OnConflict{ UpdateAll: true, }).Create(data) if err != nil { zap.L().Error("文件解析记录数据库创建失败", zap.String("err", err.Error())) return err } return nil }