{-#LANGUAGE OverloadedStrings#-}
module Data.P440.XML.Instances.Render.PKO where

import qualified Data.P440.Domain.PKO as PKO
import Data.P440.Domain.ComplexTypes

import Data.P440.XML.Render
import qualified Data.P440.XML.Instances.Render.ComplexTypes as C

instance ToNode PKO.Файл where
    toNode (PKO.Файл идЭС типИнф версПрог телОтпр
                     должнОтпр фамОтпр версФорм
                     порнокэспн) =
        complex "Файл"
                ["ИдЭС"      =: идЭС
                ,"ТипИнф"    =: типИнф
                ,"ВерсПрог"  =: версПрог
                ,"ТелОтпр"   =: телОтпр
                ,"ДолжнОтпр" =: должнОтпр
                ,"ФамОтпр"   =: фамОтпр
                ,"ВерсФорм"  =: версФорм]
                [Sequence [порнокэспн]]

instance ToNode PKO.ПОРНОКЭСПН where
    toNode (PKO.ПОРНОКЭСПН номПоруч датаПодп видПлат сумПлат статус
                           инннп кппнп плательщ номСчПл банкПл
                           бикбпл номСчБПл номФ банкПол бикбпол
                           номСчБПол иннпол кпппол получ номСчПол
                           видОп назПлКод очерПл кодПл резПоле
                           назнПл видПор ункгн кбк октмо кодОсн
                           срокУплТр номТреб датаТреб) =
           complex_ "ПОРНОКЭСПН" 
                    ["НомПоруч"  =: номПоруч
                    ,"ДатаПодп"  =: датаПодп
                    ,"ВидПлат"   =: видПлат
                    ,"СумПлат"   =: сумПлат
                    ,"Статус"    =: статус
                    ,"ИНННП"     =: инннп 
                    ,"КППНП"     =: кппнп
                    ,"Плательщ"  =: плательщ
                    ,"ИдКЭСП"    =: номСчПл
                    ,"БанкПл"    =: банкПл
                    ,"БИКБПл"    =: бикбпл
                    ,"НомСчБПл"  =: номСчБПл
                    ,"НомФ"      =: номФ
                    ,"БанкПол"   =: банкПол
                    ,"БИКБПол"   =: бикбпол
                    ,"НомСчБПол" =: номСчБПол
                    ,"ИННПол"    =: иннпол
                    ,"КПППол"    =: кпппол
                    ,"Получ"     =: получ
                    ,"НомСчПол"  =: номСчПол
                    ,"ВидОп"     =: видОп
                    ,"НазПлКод"  =: назПлКод
                    ,"ОчерПл"    =: очерПл
                    ,"КодПл"     =: кодПл
                    ,"РезПоле"   =: резПоле
                    ,"НазнПл"    =: назнПл
                    ,"ВидПор"    =: видПор
                    ,"УНКГН"     =: ункгн
                    ,"КБК"       =: кбк
                    ,"ОКТМО"     =: октмо
                    ,"КодОсн"    =: кодОсн
                    ,"СрокУплТр" =: срокУплТр
                    ,"НомТреб"   =: номТреб
                    ,"ДатаТреб"  =: датаТреб]
