aboutsummaryrefslogtreecommitdiff
path: root/src/server/MonthlyPaymentJob.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/MonthlyPaymentJob.hs')
-rw-r--r--src/server/MonthlyPaymentJob.hs33
1 files changed, 0 insertions, 33 deletions
diff --git a/src/server/MonthlyPaymentJob.hs b/src/server/MonthlyPaymentJob.hs
deleted file mode 100644
index c4022c9..0000000
--- a/src/server/MonthlyPaymentJob.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-module MonthlyPaymentJob
- ( monthlyPaymentJobListener
- ) where
-
-import Control.Monad.IO.Class (liftIO)
-
-import Data.Time.Clock
-
-import Database.Persist (entityVal, insert)
-
-import Job (jobListener)
-
-import Model.Database
-import qualified Model.Payment as Payment
-import Model.JobKind
-import Model.Frequency
-
-import Utils.Time (belongToCurrentMonth, timeToDay)
-
-monthlyPaymentJobListener :: IO ()
-monthlyPaymentJobListener =
- let lastExecutionTooOld = fmap not . belongToCurrentMonth
- runJob () = monthlyPaymentJob
- msDelay = 1000000 * 60 * 60
- in jobListener MonthlyPaymentJob lastExecutionTooOld runJob msDelay
-
-monthlyPaymentJob :: Persist ()
-monthlyPaymentJob = do
- monthlyPayments <- map entityVal <$> Payment.listMonthly
- now <- liftIO $ getCurrentTime
- actualDay <- liftIO $ timeToDay now
- let punctualPayments = map (\p -> p { paymentFrequency = Punctual, paymentDate = actualDay, paymentCreatedAt = now }) monthlyPayments
- sequence_ $ map insert punctualPayments