chore: update README, init-script SQL, and obsidian documentation
Update README with latest changes. Revise init-script.sql with schema updates. Sync obsidian technical docs. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
@@ -1363,31 +1363,50 @@ BEGIN
|
||||
SELECT
|
||||
start_date AS period_start,
|
||||
end_date AS period_end,
|
||||
COALESCE(SUM(p.amount), 0) AS total_sales,
|
||||
COALESCE(SUM(
|
||||
CASE
|
||||
WHEN p.vat_amount IS NOT NULL THEN p.vat_amount
|
||||
WHEN (SELECT is_vat_registered FROM business_settings WHERE id = 1) THEN
|
||||
ROUND(p.amount - (p.amount / (1 + COALESCE(p.vat_rate,
|
||||
(SELECT default_vat_rate FROM business_settings WHERE id = 1)) / 100)), 2)
|
||||
ELSE 0
|
||||
END
|
||||
), 0) AS total_vat_charged,
|
||||
COALESCE(SUM(
|
||||
CASE
|
||||
WHEN p.net_amount IS NOT NULL THEN p.net_amount
|
||||
WHEN (SELECT is_vat_registered FROM business_settings WHERE id = 1) THEN
|
||||
ROUND(p.amount / (1 + COALESCE(p.vat_rate,
|
||||
(SELECT default_vat_rate FROM business_settings WHERE id = 1)) / 100), 2)
|
||||
ELSE p.amount
|
||||
END
|
||||
), 0) AS net_sales,
|
||||
COUNT(*) AS transaction_count
|
||||
FROM payments p
|
||||
JOIN bookings b ON p.booking_id = b.id
|
||||
WHERE p.status = 'completed'
|
||||
AND p.created_at::date BETWEEN start_date AND end_date
|
||||
AND p.payment_type IN ('full', 'partial', 'balance');
|
||||
COALESCE(SUM(total_sales), 0) AS total_sales,
|
||||
COALESCE(SUM(total_vat_charged), 0) AS total_vat_charged,
|
||||
COALESCE(SUM(net_sales), 0) AS net_sales,
|
||||
COALESCE(SUM(transaction_count), 0)::BIGINT AS transaction_count
|
||||
FROM (
|
||||
SELECT
|
||||
COALESCE(SUM(p.amount), 0) AS total_sales,
|
||||
COALESCE(SUM(
|
||||
CASE
|
||||
WHEN p.vat_amount IS NOT NULL THEN p.vat_amount
|
||||
WHEN (SELECT is_vat_registered FROM business_settings WHERE id = 1) THEN
|
||||
ROUND(p.amount - (p.amount / (1 + COALESCE(p.vat_rate,
|
||||
(SELECT default_vat_rate FROM business_settings WHERE id = 1)) / 100)), 2)
|
||||
ELSE 0
|
||||
END
|
||||
), 0) AS total_vat_charged,
|
||||
COALESCE(SUM(
|
||||
CASE
|
||||
WHEN p.net_amount IS NOT NULL THEN p.net_amount
|
||||
WHEN (SELECT is_vat_registered FROM business_settings WHERE id = 1) THEN
|
||||
ROUND(p.amount / (1 + COALESCE(p.vat_rate,
|
||||
(SELECT default_vat_rate FROM business_settings WHERE id = 1)) / 100), 2)
|
||||
ELSE p.amount
|
||||
END
|
||||
), 0) AS net_sales,
|
||||
COUNT(*)::BIGINT AS transaction_count
|
||||
FROM payments p
|
||||
JOIN bookings b ON p.booking_id = b.id
|
||||
WHERE p.status = 'completed'
|
||||
AND p.created_at::date BETWEEN start_date AND end_date
|
||||
AND p.payment_type IN ('full', 'partial', 'balance')
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT
|
||||
COALESCE(SUM(ts.total_amount), 0) AS total_sales,
|
||||
COALESCE(SUM(COALESCE(ts.vat_amount, 0)), 0) AS total_vat_charged,
|
||||
COALESCE(SUM(COALESCE(ts.net_amount, ts.total_amount)), 0) AS net_sales,
|
||||
COUNT(*)::BIGINT AS transaction_count
|
||||
FROM till_sales ts
|
||||
WHERE ts.status = 'completed'
|
||||
AND ts.payment_method != 'on_the_house'
|
||||
AND ts.created_at::date BETWEEN start_date AND end_date
|
||||
) sub;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql;
|
||||
|
||||
@@ -1431,12 +1450,12 @@ BEGIN
|
||||
p.amount AS gross_amount,
|
||||
CASE
|
||||
WHEN include_vat AND p.net_amount IS NOT NULL THEN p.net_amount
|
||||
WHEN include_vat THEN ROUND(p.amount / 1.20, 2)
|
||||
WHEN include_vat THEN COALESCE(p.net_amount, ROUND(p.amount / (1 + COALESCE(p.vat_rate, (SELECT default_vat_rate FROM business_settings)) / 100), 2))
|
||||
ELSE p.amount
|
||||
END AS net_amount,
|
||||
CASE
|
||||
WHEN include_vat AND p.vat_amount IS NOT NULL THEN p.vat_amount
|
||||
WHEN include_vat THEN ROUND(p.amount - (p.amount / 1.20), 2)
|
||||
WHEN include_vat THEN COALESCE(p.vat_amount, ROUND(p.amount - (p.amount / (1 + COALESCE(p.vat_rate, (SELECT default_vat_rate FROM business_settings)) / 100)), 2))
|
||||
ELSE 0
|
||||
END AS vat_amount,
|
||||
CASE
|
||||
@@ -2023,6 +2042,8 @@ CREATE TABLE financial_aggregates (
|
||||
total_deposits NUMERIC(12,2) NOT NULL DEFAULT 0,
|
||||
total_balances NUMERIC(12,2) NOT NULL DEFAULT 0,
|
||||
total_partials NUMERIC(12,2) NOT NULL DEFAULT 0,
|
||||
total_vat_amount NUMERIC(12,2) NOT NULL DEFAULT 0,
|
||||
total_net_amount NUMERIC(12,2) NOT NULL DEFAULT 0,
|
||||
booking_count INT NOT NULL DEFAULT 0,
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user