sqlc-hs-0.2.0.0: test/golden/out/Pulse/Database/UpdateOpcuaNodeMonitor.hs
{- This file was auto-generated from queries.sql by sqlc-hs. -}
{-# LANGUAGE BangPatterns #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
module Pulse.Database.UpdateOpcuaNodeMonitor where
import Pulse.Database.Internal (Query(..), Enum, Params, Result)
import qualified Database.PostgreSQL.Simple
import qualified Database.PostgreSQL.Simple.FromRow
import qualified Database.PostgreSQL.Simple.ToField
import qualified Database.PostgreSQL.Simple.ToRow
import qualified Data.Int
import qualified GHC.Base
import qualified Pulse.Database.DBTypes
import qualified Pulse.Database.Types
import qualified Data.Text
import qualified Data.Time.LocalTime
import qualified Data.Time
import qualified Data.Foldable
query_updateOpcuaNodeMonitor :: Query "updateOpcuaNodeMonitor" ":one"
query_updateOpcuaNodeMonitor = Query "UPDATE opcua_node_monitors\nSET\n endpoint_monitor_id = COALESCE(?::INT, opcua_node_monitors.endpoint_monitor_id),\n opcua_node_id = COALESCE(?::opcua_node_id, opcua_node_monitors.opcua_node_id),\n aggregation = COALESCE(?::check_aggregation, opcua_node_monitors.aggregation),\n operand = COALESCE(?::TEXT, opcua_node_monitors.operand),\n operation = COALESCE(?::check_op, opcua_node_monitors.operation),\n duration = COALESCE(?::INTERVAL, opcua_node_monitors.duration),\n frequency = COALESCE(?::INTERVAL, opcua_node_monitors.frequency),\n incident_message_template = COALESCE(?::TEXT, opcua_node_monitors.incident_message_template)\nWHERE id = ?\nRETURNING id, endpoint_monitor_id, opcua_node_id, aggregation, operation, operand, duration, frequency, incident_message_template, created_at, updated_at"
data instance Params "updateOpcuaNodeMonitor" = Params_updateOpcuaNodeMonitor
{
opcua_node_monitors_id :: Data.Int.Int32,
endpoint_monitor_id :: GHC.Base.Maybe Data.Int.Int32,
opcua_node_id :: (Maybe Pulse.Database.DBTypes.OpcuaNodeId),
aggregation :: GHC.Base.Maybe ((Pulse.Database.Types.Enum "check_aggregation")),
operand :: GHC.Base.Maybe Data.Text.Text,
operation :: GHC.Base.Maybe ((Pulse.Database.Types.Enum "check_op")),
duration :: (Maybe Data.Time.LocalTime.CalendarDiffTime),
frequency :: (Maybe Data.Time.LocalTime.CalendarDiffTime),
incident_message_template :: GHC.Base.Maybe Data.Text.Text
}
data instance Result "updateOpcuaNodeMonitor" = Result_updateOpcuaNodeMonitor
{
opcua_node_monitors_id :: !(Data.Int.Int32),
opcua_node_monitors_endpoint_monitor_id :: !(Data.Int.Int32),
opcua_node_monitors_opcua_node_id :: !(Pulse.Database.DBTypes.OpcuaNodeId),
opcua_node_monitors_aggregation :: !((Pulse.Database.Types.Enum "check_aggregation")),
opcua_node_monitors_operation :: !((Pulse.Database.Types.Enum "check_op")),
opcua_node_monitors_operand :: !(Data.Text.Text),
opcua_node_monitors_duration :: !(Data.Time.LocalTime.CalendarDiffTime),
opcua_node_monitors_frequency :: !(Data.Time.LocalTime.CalendarDiffTime),
opcua_node_monitors_incident_message_template :: !(GHC.Base.Maybe Data.Text.Text),
opcua_node_monitors_created_at :: !((Maybe Data.Time.UTCTime)),
opcua_node_monitors_updated_at :: !((Maybe Data.Time.UTCTime))
}
instance Database.PostgreSQL.Simple.ToRow.ToRow (Params "updateOpcuaNodeMonitor") where
toRow Params_updateOpcuaNodeMonitor{..} =
[
Database.PostgreSQL.Simple.ToField.toField endpoint_monitor_id,
Database.PostgreSQL.Simple.ToField.toField opcua_node_id,
Database.PostgreSQL.Simple.ToField.toField aggregation,
Database.PostgreSQL.Simple.ToField.toField operand,
Database.PostgreSQL.Simple.ToField.toField operation,
Database.PostgreSQL.Simple.ToField.toField duration,
Database.PostgreSQL.Simple.ToField.toField frequency,
Database.PostgreSQL.Simple.ToField.toField incident_message_template,
Database.PostgreSQL.Simple.ToField.toField opcua_node_monitors_id
]
instance Database.PostgreSQL.Simple.FromRow.FromRow (Result "updateOpcuaNodeMonitor") where
fromRow =
pure Result_updateOpcuaNodeMonitor
<*> Database.PostgreSQL.Simple.FromRow.field
<*> Database.PostgreSQL.Simple.FromRow.field
<*> Database.PostgreSQL.Simple.FromRow.field
<*> Database.PostgreSQL.Simple.FromRow.field
<*> Database.PostgreSQL.Simple.FromRow.field
<*> Database.PostgreSQL.Simple.FromRow.field
<*> Database.PostgreSQL.Simple.FromRow.field
<*> Database.PostgreSQL.Simple.FromRow.field
<*> Database.PostgreSQL.Simple.FromRow.field
<*> Database.PostgreSQL.Simple.FromRow.field
<*> Database.PostgreSQL.Simple.FromRow.field