diff options
author | Joris | 2020-01-04 19:22:45 +0100 |
---|---|---|
committer | Joris | 2020-01-04 19:22:45 +0100 |
commit | da2a0c13aa89705c65fdb9df2f496fb4eea29654 (patch) | |
tree | 760e267f0215349af1d5e7c10c84a04bcb5bc75c /server/src/Persistence/Payment.hs | |
parent | 1dfb85d3fd56d163fc854a8b3cf659d0ac39f639 (diff) |
Allow to remove only unused categories
Diffstat (limited to 'server/src/Persistence/Payment.hs')
-rw-r--r-- | server/src/Persistence/Payment.hs | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/server/src/Persistence/Payment.hs b/server/src/Persistence/Payment.hs index a0cd580..b3eb141 100644 --- a/server/src/Persistence/Payment.hs +++ b/server/src/Persistence/Payment.hs @@ -12,6 +12,7 @@ module Persistence.Payment , searchCategory , repartition , getPreAndPostPaymentRepartition + , usedCategories ) where import Data.Map (Map) @@ -310,6 +311,19 @@ searchCategory paymentName = ] ) +usedCategories :: Query [CategoryId] +usedCategories = + Query (\conn -> do + map (\(CategoryIdRow p) -> p) <$> + SQLite.query_ + conn + (SQLite.Query $ T.intercalate " " + [ "SELECT DISTINCT category" + , "FROM payment" + , "WHERE deleted_at IS NULL" + ]) + ) + data UserCostRow = UserCostRow (UserId, Int) instance FromRow UserCostRow where |