P3: dated 1099 decisions, payment methods and the card exception (defects 23, 12, 18, D-40)
check / check (push) Canceled after 0s
check / check (push) Canceled after 0s
A vendor's 1099 decision is its own dated fact (files NEC or MISC, not reportable with its reason, or undetermined), applied by each payment's date. Payment methods are recorded; card and network payments are left out and listed; a member's check through financing counts; a bank payment with no method counts (D-40); $2,000 for payments after 2025. One worksheet for the tool, the viewer and the CPA package. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01T3gXMVt7XJPi6ens1or9Dj
This commit is contained in:
77 files changed
+11455
-970
No files matched your search
@@ -48,6 +48,29 @@ pub struct Settings<'a> {
|
||||
pub investing_accounts: &'a [String],
|
||||
}
|
||||
|
||||
impl<'a> Settings<'a> {
|
||||
/// These settings with the cash and financing accounts a request
|
||||
/// names: each list the request's when it gives one, else these
|
||||
/// settings'. The one rule the CPA package (one list of each per
|
||||
/// package, for every file in it: crate::package INVARIANT 7) and
|
||||
/// `books.vendor_1099` read, so the package's 1099 worksheet is the
|
||||
/// tool's for the same accounts.
|
||||
pub fn with_accounts(
|
||||
&self,
|
||||
cash_accounts: &'a [String],
|
||||
financing_accounts: &'a [String],
|
||||
) -> Settings<'a> {
|
||||
let or = |given: &'a [String], kept: &'a [String]| {
|
||||
if given.is_empty() { kept } else { given }
|
||||
};
|
||||
Settings {
|
||||
cash_accounts: or(cash_accounts, self.cash_accounts),
|
||||
financing_accounts: or(financing_accounts, self.financing_accounts),
|
||||
..*self
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Resolve a statement's date range (INVARIANT 1): the dates as given,
|
||||
/// each omitted one the books' default for `company` on `today`
|
||||
/// (rules.md B-30).
|
||||
|
||||
Reference in new issue
Block a user