Skipped missing expense cases
X-Lovable-Edit-ID: edt-ad2fb631-7101-45e2-b87d-4ecdd5040dbe Co-authored-by: renee-png <262607627+renee-png@users.noreply.github.com>
This commit is contained in:
@@ -427,6 +427,7 @@ const IMPORTERS: ImporterConfig[] = [
|
||||
aliases: {
|
||||
id: "external_id", expenseid: "external_id", externalid: "external_id",
|
||||
caseid: "_caseext", matterid: "_caseext", casenumber: "_casenum",
|
||||
casename: "_casename", casetitle: "_casename", matter: "_casename", mattername: "_casename",
|
||||
description: "description", notes: "description",
|
||||
amount: "amount", cost: "amount",
|
||||
billable: "billable",
|
||||
@@ -436,8 +437,12 @@ const IMPORTERS: ImporterConfig[] = [
|
||||
boolCols: ["billable"],
|
||||
dateCols: ["expense_date"],
|
||||
transform: (r, ctx) => {
|
||||
r.case_id = (r._caseext && ctx.caseByExt.get(String(r._caseext))) || (r._casenum && ctx.caseByNumber.get(String(r._casenum))) || null;
|
||||
delete r._caseext; delete r._casenum;
|
||||
r.case_id =
|
||||
(r._caseext && ctx.caseByExt.get(String(r._caseext))) ||
|
||||
(r._casenum && ctx.caseByNumber.get(String(r._casenum))) ||
|
||||
(r._casename && ctx.caseByTitle.get(String(r._casename).toLowerCase().trim())) ||
|
||||
null;
|
||||
delete r._caseext; delete r._casenum; delete r._casename;
|
||||
if (!r.case_id || r.amount == null) return null;
|
||||
r.user_id = ctx.userId;
|
||||
return r;
|
||||
@@ -705,6 +710,12 @@ function ImportPage() {
|
||||
bumpSkip("missing or invalid hours");
|
||||
} else if (cfg.table === "time_entries" && !row.description && !row._activity) {
|
||||
bumpSkip("missing description/activity");
|
||||
} else if (cfg.table === "expenses" && !row.case_id && !row._caseext && !row._casenum && !row._casename) {
|
||||
bumpSkip("missing case reference");
|
||||
} else if (cfg.table === "expenses" && (row._caseext || row._casenum || row._casename) && !row.case_id) {
|
||||
bumpSkip("case not found (import cases first or match case title/number)");
|
||||
} else if (cfg.table === "expenses" && row.amount == null) {
|
||||
bumpSkip("missing or invalid amount");
|
||||
} else {
|
||||
bumpSkip("rejected by transform");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user