aboutsummaryrefslogtreecommitdiff
path: root/src/server/Model
diff options
context:
space:
mode:
authorJoris2017-03-26 22:56:41 +0200
committerJoris2017-03-26 22:56:41 +0200
commit8062f1c9c34e9b25d76b22bd6ba2a1a99666279b (patch)
tree2179d31ece8d92864196b38b42ed3a4d01b2f186 /src/server/Model
parent778040bf9f3f60ec50b1b437f93ab123854917f2 (diff)
Fix update payment category constraint error
Diffstat (limited to 'src/server/Model')
-rw-r--r--src/server/Model/PaymentCategory.hs25
1 files changed, 9 insertions, 16 deletions
diff --git a/src/server/Model/PaymentCategory.hs b/src/server/Model/PaymentCategory.hs
index 6df77e2..3b0b858 100644
--- a/src/server/Model/PaymentCategory.hs
+++ b/src/server/Model/PaymentCategory.hs
@@ -3,19 +3,16 @@
module Model.PaymentCategory
( list
, listByCategory
- , set
- , edit
- , delete
+ , save
) where
+import Control.Monad.IO.Class (liftIO)
import Data.Maybe (isJust)
+
import Data.Text (Text)
import Data.Time.Clock (getCurrentTime)
-import qualified Data.Text as T
-
-import Control.Monad.IO.Class (liftIO)
-
import Database.Persist
+import qualified Data.Text as T
import Model.Database
import qualified Model.Json.PaymentCategory as Json
@@ -32,19 +29,15 @@ getJsonPaymentCategory entity =
Json.PaymentCategory (paymentCategoryName pc) (paymentCategoryCategory pc)
where pc = entityVal entity
-set :: Text -> CategoryId -> Persist ()
-set name category = edit name name category
-
-edit :: Text -> Text -> CategoryId -> Persist ()
-edit oldName newName category = do
+save :: Text -> CategoryId -> Persist ()
+save newName category = do
now <- liftIO getCurrentTime
- mbPaymentCategory <- selectFirst [PaymentCategoryName ==. (formatPaymentName oldName)] []
+ mbPaymentCategory <- selectFirst [PaymentCategoryName ==. (formatPaymentName newName)] []
if isJust mbPaymentCategory
then
updateWhere
- [ PaymentCategoryName ==. (formatPaymentName oldName) ]
- [ PaymentCategoryName =. (formatPaymentName newName)
- , PaymentCategoryCategory =. category
+ [ PaymentCategoryName ==. (formatPaymentName newName) ]
+ [ PaymentCategoryCategory =. category
, PaymentCategoryEditedAt =. Just now
]
else do