diff --git a/src/Gargantext/Database/Action/Flow.hs b/src/Gargantext/Database/Action/Flow.hs index 283a1bc61a7f58f3add6eb84a31d3bfddf903747..ba226e0356086fefb72fd08d60c967605e448819 100644 --- a/src/Gargantext/Database/Action/Flow.hs +++ b/src/Gargantext/Database/Action/Flow.hs @@ -228,22 +228,18 @@ flowCorpusUser l user corpusName ctype ids = do insertDocs :: ( FlowCmdM env err m , FlowCorpus a ) - => [a] - -> UserId + => UserId -> CorpusId + -> [a] -> m ([DocId], [DocumentWithId a]) -insertDocs hs uId cId = do - printDebug "hs" (length hs) +insertDocs uId cId hs = do let docs = map addUniqId hs - printDebug "docs" (length docs) - ids <- insertDb uId cId docs - printDebug "ids" (length ids) - -- printDebug "inserted" (map reUniqId ids) + newIds <- insertDb uId cId docs let - ids' = map reId ids - documentsWithId = mergeData (toInserted ids) (Map.fromList $ map viewUniqId' docs) - _ <- Doc.add cId ids' - pure (ids', documentsWithId) + newIds' = map reId newIds + documentsWithId = mergeData (toInserted newIds) (Map.fromList $ map viewUniqId' docs) + _ <- Doc.add cId newIds' + pure (newIds', documentsWithId) insertMasterDocs :: ( FlowCmdM env err m @@ -256,7 +252,7 @@ insertMasterDocs :: ( FlowCmdM env err m -> m [DocId] insertMasterDocs c lang hs = do (masterUserId, _, masterCorpusId) <- getOrMk_RootWithCorpus (UserName userMaster) (Left corpusMasterName) c - (ids', documentsWithId) <- insertDocs hs masterUserId masterCorpusId + (ids', documentsWithId) <- insertDocs masterUserId masterCorpusId hs _ <- Doc.add masterCorpusId ids' -- TODO -- create a corpus with database name (CSV or PubMed) diff --git a/src/Gargantext/Database/Query/Table/Node/Document/Insert.hs b/src/Gargantext/Database/Query/Table/Node/Document/Insert.hs index 648e300ec091ce698256ecd45dc36dcddbc066aa..53dc8e60b2a13dd694d80fba2339e7b768b326fe 100644 --- a/src/Gargantext/Database/Query/Table/Node/Document/Insert.hs +++ b/src/Gargantext/Database/Query/Table/Node/Document/Insert.hs @@ -155,8 +155,8 @@ queryInsert = [sql| , ins AS ( INSERT INTO nodes (typename,user_id,parent_id,name,date,hyperdata) SELECT * FROM input_rows - -- ON CONFLICT ((hyperdata ->> 'uniqIdBdd')) DO NOTHING -- on unique index -- this does not return the ids - ON CONFLICT ((hyperdata ->> 'uniqIdBdd')) DO UPDATE SET user_id=EXCLUDED.user_id -- on unique index + ON CONFLICT ((hyperdata ->> 'uniqIdBdd')) DO NOTHING -- on unique index -- this does not return the ids + -- ON CONFLICT ((hyperdata ->> 'uniqIdBdd')) DO UPDATE SET user_id=EXCLUDED.user_id -- on unique index RETURNING id,hyperdata )