namespace MyOffice.Services.Account;

/// <summary>
/// Rules for counterparty (transfer) motion amounts when balancing between accounts.
/// </summary>
public static class AccountMotionBalancing
{
	/// <summary>
	/// When the primary motion is income (Plus != 0), balancing is expense on the other account.
	/// Otherwise balancing is income on the other account.
	/// </summary>
	public static (decimal Plus, decimal Minus) ResolveAmounts(decimal primaryPlus, decimal amountBalancing)
	{
		if (primaryPlus != 0)
		{
			return (0, amountBalancing);
		}

		return (amountBalancing, 0);
	}

	public static string BalancingItemName(string accountName) => $"+{accountName}";
}
