Remove v2/v3 migration project
This commit is contained in:
parent
997279783f
commit
babc77bbd0
@ -1,22 +0,0 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>Exe</OutputType>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Compile Include="Program.fs" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="FSharp.Data" Version="4.2.3" />
|
||||
<PackageReference Include="LiteDB" Version="5.0.11" />
|
||||
<PackageReference Include="NodaTime" Version="3.0.9" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\MyPrayerJournal\MyPrayerJournal.fsproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
@ -1,57 +0,0 @@
|
||||
open FSharp.Data
|
||||
open FSharp.Data.CsvExtensions
|
||||
open LiteDB
|
||||
open MyPrayerJournal.Domain
|
||||
open NodaTime
|
||||
|
||||
module Subdocs =
|
||||
|
||||
open FSharp.Data.JsonExtensions
|
||||
|
||||
let history json =
|
||||
match JsonValue.Parse json with
|
||||
| JsonValue.Array hist ->
|
||||
hist
|
||||
|> Array.map (fun h ->
|
||||
{ asOf = (h?asOf.AsInteger64 >> Instant.FromUnixTimeMilliseconds) ()
|
||||
status = h?status.AsString () |> RequestAction.ofString
|
||||
text = match h?text.AsString () with "" -> None | txt -> Some txt
|
||||
})
|
||||
|> List.ofArray
|
||||
| _ -> []
|
||||
|
||||
let notes json =
|
||||
match JsonValue.Parse json with
|
||||
| JsonValue.Array notes ->
|
||||
notes
|
||||
|> Array.map (fun n ->
|
||||
{ asOf = (n?asOf.AsInteger64 >> Instant.FromUnixTimeMilliseconds) ()
|
||||
notes = n?notes.AsString ()
|
||||
})
|
||||
|> List.ofArray
|
||||
| _ -> []
|
||||
|
||||
let oldData = CsvFile.Load("data.csv")
|
||||
|
||||
let db = new LiteDatabase("Filename=./mpj.db")
|
||||
|
||||
MyPrayerJournal.Data.Startup.ensureDb db
|
||||
|
||||
let migrated =
|
||||
oldData.Rows
|
||||
|> Seq.map (fun r ->
|
||||
{ id = r["@id"].Replace ("Requests/", "") |> RequestId.ofString
|
||||
enteredOn = (r?enteredOn.AsInteger64 >> Instant.FromUnixTimeMilliseconds) ()
|
||||
userId = UserId r?userId
|
||||
snoozedUntil = (r?snoozedUntil.AsInteger64 >> Instant.FromUnixTimeMilliseconds) ()
|
||||
showAfter = (r?showAfter.AsInteger64 >> Instant.FromUnixTimeMilliseconds) ()
|
||||
recurType = r?recurType |> Recurrence.ofString
|
||||
recurCount = (r?recurCount.AsInteger >> int16) ()
|
||||
history = Subdocs.history r?history
|
||||
notes = Subdocs.notes r?notes
|
||||
})
|
||||
|> db.GetCollection<Request>("request").Insert
|
||||
|
||||
db.Checkpoint ()
|
||||
|
||||
printfn $"Migrated {migrated} requests"
|
Loading…
Reference in New Issue
Block a user