SwiftBeanCountImporter

CI Status Documentation percentage License: MIT Latest version platforms supported: linux | macOS | iOS | watchOS | tvOS SPM compatible

该项目是 SwiftBeanCount 的一部分,请查看主要文档 此处

什么

这是 SwiftBeanCount 的导入器。它读取文件以创建交易。该库不包含任何 UI,因此使用者需要提供 UI 来选择帐户、设置以及编辑交易。

如何使用

导入交易

  1. 通过 ImporterFactory 上的 new 函数之一创建 Importer,具体取决于您要导入的内容。
  2. 在导入器上设置您的 delegate
  3. 在导入器上调用 load()
  4. 调用 nextTransaction() 以检索一笔又一笔交易,直到它返回 nil。建议在此过程中允许用户编辑交易,只要 shouldAllowUserToEdit 为 true 即可。
  5. 如果用户编辑了交易,并且您提供并他们同意保存新映射,请调用 saveMapped(description:payee:accountName:)
  6. 从导入器获取 balancesToImport()pricesToImport()

设置

存在用于检测重复交易的日期容差设置,以及用于映射用户在导入交易的第 5 步中保存的内容。您的应用可以允许用户通过 Settings 对象查看和编辑这些设置。默认情况下,设置存储在 UserDefaults 中,但您可以通过设置 Settings.storage 来提供您自己的 SettingsStorage

帮助

每个导入器都提供帮助文本。您可以通过 ImporterFactory.allImporters 访问所有导入器。它们都在类上公开 importerNamehelpText

更多

请查看完整的文档 此处,或者查看使用此库的 SwiftBeanCountImporterApp

用法

该库支持 Swift Package Manager,因此只需在您的 Package.swift 中添加一个依赖项

.package(url: "https://github.com/Nef10/SwiftBeanCountImporter.git", .exact("X.Y.Z")),

注意:根据语义版本控制,所有版本更改 < 1.0.0 都可能是破坏性的,所以请暂时使用 .exact