Look up eofy_date in libdrcr_bridge itself
This commit is contained in:
parent
807316a090
commit
42ba33c45c
@ -35,7 +35,6 @@ use crate::AppState;
|
||||
#[tauri::command]
|
||||
pub(crate) async fn get_balance_sheet(
|
||||
state: State<'_, Mutex<AppState>>,
|
||||
eofy_date: String,
|
||||
dates: Vec<String>,
|
||||
) -> Result<String, ()> {
|
||||
let state = state.lock().await;
|
||||
@ -47,11 +46,8 @@ pub(crate) async fn get_balance_sheet(
|
||||
DbConnection::connect(format!("sqlite:{}", db_filename.as_str()).as_str());
|
||||
|
||||
// Initialise ReportingContext
|
||||
let mut context = ReportingContext::new(
|
||||
db_connection,
|
||||
NaiveDate::parse_from_str(eofy_date.as_str(), "%Y-%m-%d").unwrap(),
|
||||
"$".to_string(),
|
||||
);
|
||||
let eofy_date = db_connection.metadata().eofy_date;
|
||||
let mut context = ReportingContext::new(db_connection, eofy_date, "$".to_string());
|
||||
register_lookup_fns(&mut context);
|
||||
register_dynamic_builders(&mut context);
|
||||
|
||||
@ -98,7 +94,6 @@ pub(crate) async fn get_balance_sheet(
|
||||
#[tauri::command]
|
||||
pub(crate) async fn get_income_statement(
|
||||
state: State<'_, Mutex<AppState>>,
|
||||
eofy_date: String,
|
||||
dates: Vec<(String, String)>,
|
||||
) -> Result<String, ()> {
|
||||
let state = state.lock().await;
|
||||
@ -110,11 +105,8 @@ pub(crate) async fn get_income_statement(
|
||||
DbConnection::connect(format!("sqlite:{}", db_filename.as_str()).as_str());
|
||||
|
||||
// Initialise ReportingContext
|
||||
let mut context = ReportingContext::new(
|
||||
db_connection,
|
||||
NaiveDate::parse_from_str(eofy_date.as_str(), "%Y-%m-%d").unwrap(),
|
||||
"$".to_string(),
|
||||
);
|
||||
let eofy_date = db_connection.metadata().eofy_date;
|
||||
let mut context = ReportingContext::new(db_connection, eofy_date, "$".to_string());
|
||||
register_lookup_fns(&mut context);
|
||||
register_dynamic_builders(&mut context);
|
||||
|
||||
|
@ -56,7 +56,6 @@
|
||||
|
||||
import { DynamicReport, reportEntryById } from './base.ts';
|
||||
import { db } from '../db.ts';
|
||||
import { ExtendedDatabase } from '../dbutil.ts';
|
||||
import DynamicReportComponent from '../components/DynamicReportComponent.vue';
|
||||
|
||||
const report = ref(null as DynamicReport | null);
|
||||
@ -70,18 +69,15 @@
|
||||
|
||||
dt.value = db.metadata.eofy_date;
|
||||
|
||||
await updateReport(session);
|
||||
await updateReport();
|
||||
|
||||
// Update report when dates etc. changed
|
||||
// We initialise the watcher here only after dt is initialised above
|
||||
watch([dt, comparePeriods, compareUnit], async () => {
|
||||
const session = await db.load();
|
||||
await updateReport(session);
|
||||
});
|
||||
watch([dt, comparePeriods, compareUnit], updateReport);
|
||||
}
|
||||
load();
|
||||
|
||||
async function updateReport(session: ExtendedDatabase) {
|
||||
async function updateReport() {
|
||||
const reportDates = [];
|
||||
for (let i = 0; i < comparePeriods.value; i++) {
|
||||
let thisReportDt;
|
||||
@ -103,7 +99,7 @@
|
||||
reportDates.push(thisReportDt.format('YYYY-MM-DD'));
|
||||
}
|
||||
|
||||
report.value = JSON.parse(await invoke('get_balance_sheet', { eofyDate: db.metadata.eofy_date, dates: reportDates }));
|
||||
report.value = JSON.parse(await invoke('get_balance_sheet', { dates: reportDates }));
|
||||
}
|
||||
|
||||
const doesBalance = computed(function() {
|
||||
|
@ -45,7 +45,6 @@
|
||||
|
||||
import { DynamicReport } from './base.ts';
|
||||
import { db } from '../db.ts';
|
||||
import { ExtendedDatabase } from '../dbutil.ts';
|
||||
import DynamicReportComponent from '../components/DynamicReportComponent.vue';
|
||||
|
||||
const report = ref(null as DynamicReport | null);
|
||||
@ -62,17 +61,14 @@
|
||||
dt.value = db.metadata.eofy_date;
|
||||
dtStart.value = dayjs(db.metadata.eofy_date).subtract(1, 'year').add(1, 'day').format('YYYY-MM-DD');
|
||||
|
||||
await updateReport(session);
|
||||
await updateReport();
|
||||
|
||||
// Update report when dates etc. changed
|
||||
// We initialise the watcher here only after dt and dtStart are initialised above
|
||||
watch([dt, dtStart, comparePeriods, compareUnit], async () => {
|
||||
const session = await db.load();
|
||||
await updateReport(session);
|
||||
});
|
||||
watch([dt, dtStart, comparePeriods, compareUnit], updateReport);
|
||||
}
|
||||
|
||||
async function updateReport(session: ExtendedDatabase) {
|
||||
async function updateReport() {
|
||||
const reportDates = [];
|
||||
for (let i = 0; i < comparePeriods.value; i++) {
|
||||
let thisReportDt, thisReportDtStart;
|
||||
@ -97,7 +93,7 @@
|
||||
reportDates.push([thisReportDtStart.format('YYYY-MM-DD'), thisReportDt.format('YYYY-MM-DD')]);
|
||||
}
|
||||
|
||||
report.value = JSON.parse(await invoke('get_income_statement', { eofyDate: db.metadata.eofy_date, dates: reportDates }));
|
||||
report.value = JSON.parse(await invoke('get_income_statement', { dates: reportDates }));
|
||||
}
|
||||
|
||||
load();
|
||||
|
Loading…
x
Reference in New Issue
Block a user