diff options
author | Joris | 2019-11-17 18:08:28 +0100 |
---|---|---|
committer | Joris | 2019-11-17 18:08:28 +0100 |
commit | c0ea63f8c1a8c7123b78798cec99726b113fb1f3 (patch) | |
tree | 0b92f7e0c125c067a5f1ccafe6a1f04f1edfae86 /server/src/Controller/Income.hs | |
parent | 4dc84dbda7ba3ea60d13e6f81eeec556974b7c72 (diff) | |
download | budget-c0ea63f8c1a8c7123b78798cec99726b113fb1f3.tar.gz budget-c0ea63f8c1a8c7123b78798cec99726b113fb1f3.tar.bz2 budget-c0ea63f8c1a8c7123b78798cec99726b113fb1f3.zip |
Optimize and refactor payments
Diffstat (limited to 'server/src/Controller/Income.hs')
-rw-r--r-- | server/src/Controller/Income.hs | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/server/src/Controller/Income.hs b/server/src/Controller/Income.hs index 127e3b3..75d0133 100644 --- a/server/src/Controller/Income.hs +++ b/server/src/Controller/Income.hs @@ -1,6 +1,5 @@ module Controller.Income ( list - , deprecatedList , create , edit , delete @@ -17,12 +16,12 @@ import Common.Model (CreateIncomeForm (..), EditIncomeForm (..), Income (..), IncomeHeader (..), IncomeId, IncomePage (..), User (..)) -import qualified Common.Model as CM import qualified Controller.Helper as ControllerHelper import Model.CreateIncome (CreateIncome (..)) import Model.EditIncome (EditIncome (..)) import qualified Model.Query as Query +import qualified Payer as Payer import qualified Persistence.Income as IncomePersistence import qualified Persistence.Payment as PaymentPersistence import qualified Persistence.User as UserPersistence @@ -37,18 +36,18 @@ list page perPage = count <- IncomePersistence.count users <- UserPersistence.list - firstPayment <- PaymentPersistence.firstPunctualDay - allIncomes <- IncomePersistence.listAll + paymentRange <- PaymentPersistence.getRange + allIncomes <- IncomePersistence.listAll -- TODO optimize let since = - CM.useIncomesFrom (map _user_id users) allIncomes firstPayment + Payer.useIncomesFrom (map _user_id users) allIncomes (fst <$> paymentRange) let byUser = case since of Just s -> M.fromList . flip map users $ \user -> ( _user_id user - , CM.cumulativeIncomesSince currentTime s $ + , Payer.cumulativeIncomesSince currentTime s $ filter ((==) (_user_id user) . _income_userId) allIncomes ) @@ -59,12 +58,6 @@ list page perPage = return $ IncomePage (IncomeHeader since byUser) incomes count) >>= json ) -deprecatedList :: ActionM () -deprecatedList = - Secure.loggedAction (\_ -> - (liftIO . Query.run $ IncomePersistence.listAll) >>= json - ) - create :: CreateIncomeForm -> ActionM () create form = Secure.loggedAction (\user -> |