Add Winax dependency back. Multiple bug fixes for estimate decoding.
This commit is contained in:
2925
package-lock.json
generated
2925
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -21,11 +21,13 @@
|
||||
"build:linux": "electron-vite build && electron-builder --linux"
|
||||
},
|
||||
"dependencies": {
|
||||
"@apollo/client": "^3.13.5",
|
||||
"@electron-toolkit/preload": "^3.0.1",
|
||||
"@electron-toolkit/utils": "^4.0.0",
|
||||
"electron-log": "^5.3.2",
|
||||
"electron-store": "^8.2.0",
|
||||
"electron-updater": "^6.3.9"
|
||||
"electron-updater": "^6.3.9",
|
||||
"winax": "^3.6.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@ant-design/v5-patch-for-react-19": "^1.0.3",
|
||||
@@ -71,8 +73,5 @@
|
||||
"redux-thunk": "^3.1.0",
|
||||
"typescript": "^5.8.2",
|
||||
"vite": "^6.2.1"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"winax": "^3.1.4"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -157,7 +157,7 @@ const DecodeAD1 = async (
|
||||
rawAd1Data.asgn_date = newAsgnDate.toISOString().split("T")[0];
|
||||
}
|
||||
|
||||
if (!rawAd1Data.ownr_ph1) {
|
||||
if (!rawAd1Data.ownr_ph1 || _.isEmpty(rawAd1Data.ownr_ph1)) {
|
||||
rawAd1Data.ownr_ph1 = rawAd1Data.ownr_ph2;
|
||||
}
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ const DecodePfh = async (
|
||||
//TODO: Several of these fields will fail. Should extend schema to capture them.
|
||||
//"ID_PRO_NAM", //Remove
|
||||
"TAX_PRETHR",
|
||||
//"TAX_THRAMT", //Remove
|
||||
"TAX_THRAMT",
|
||||
"TAX_PSTTHR",
|
||||
//"TAX_TOW_IN", //Remove
|
||||
"TAX_TOW_RT",
|
||||
|
||||
@@ -37,5 +37,20 @@ export interface JobLaborRateFields {
|
||||
}
|
||||
|
||||
export interface DecodedPfl extends JobLaborRateFields {
|
||||
cieca_pfl: DecodedPflLine[];
|
||||
cieca_pfl: {
|
||||
LAA?: DecodedPflLine;
|
||||
LAB?: DecodedPflLine;
|
||||
LAD?: DecodedPflLine;
|
||||
LAS?: DecodedPflLine;
|
||||
LAR?: DecodedPflLine;
|
||||
LAE?: DecodedPflLine;
|
||||
LAG?: DecodedPflLine;
|
||||
LAF?: DecodedPflLine;
|
||||
LAM?: DecodedPflLine;
|
||||
LAU?: DecodedPflLine;
|
||||
LA1?: DecodedPflLine;
|
||||
LA2?: DecodedPflLine;
|
||||
LA3?: DecodedPflLine;
|
||||
LA4?: DecodedPflLine;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -73,6 +73,13 @@ const DecodePfl = async (
|
||||
//Set the job.rate_<CIECA_TYPE> field based on the value.
|
||||
jobLaborRates[`rate_${singleLineData.lbr_type.toLowerCase()}`] =
|
||||
singleLineData.lbr_rate;
|
||||
|
||||
//For Mitchell, Alum is stored under LA3 instead of LAA. Shift it back over.
|
||||
//The old partner had a check for this, but it always was true. Matching that logic.
|
||||
if (singleLineData.lbr_type === "LA3") {
|
||||
jobLaborRates[`rate_laa`] = singleLineData.lbr_rate;
|
||||
}
|
||||
|
||||
//Also capture the whole object.
|
||||
//This is segmented because the whole object was not previously captured for ImEX as it wasn't needed.
|
||||
//Rome needs the whole object to accurately calculate the tax rates.
|
||||
@@ -83,7 +90,9 @@ const DecodePfl = async (
|
||||
//Apply business logic transfomrations.
|
||||
//We don't have an inspection date, we instead have `date_estimated`
|
||||
|
||||
return { ...jobLaborRates, cieca_pfl: rawPflData };
|
||||
const pflObj = _.keyBy(rawPflData, "lbr_type");
|
||||
|
||||
return { ...jobLaborRates, cieca_pfl: pflObj };
|
||||
};
|
||||
|
||||
export default DecodePfl;
|
||||
|
||||
@@ -43,8 +43,8 @@ export interface JobMaterialRateFields {
|
||||
|
||||
export interface DecodedPfm extends JobMaterialRateFields {
|
||||
materials: {
|
||||
mapa?: DecodedPfmLine;
|
||||
mash?: DecodedPfmLine;
|
||||
MAPA?: DecodedPfmLine;
|
||||
MASH?: DecodedPfmLine;
|
||||
};
|
||||
cieca_pfm: DecodedPfmLine[];
|
||||
cieca_pfm?: DecodedPfmLine[];
|
||||
}
|
||||
|
||||
@@ -136,8 +136,8 @@ const DecodePfm = async (
|
||||
return {
|
||||
...jobMaterialRates,
|
||||
materials: {
|
||||
mash: mashLine,
|
||||
mapa: mapaLine, //TODO: Need to verify if more fields are to come in here.
|
||||
MASH: mashLine,
|
||||
MAPA: mapaLine, //TODO: Need to verify if more fields are to come in here.
|
||||
},
|
||||
//cieca_pfm: rawPfmData, //TODO: Not currently captured. This may have valu in the future.
|
||||
};
|
||||
|
||||
@@ -49,7 +49,7 @@ const DecodeTtl = async (
|
||||
|
||||
return {
|
||||
clm_total: rawTtlData.g_ttl_amt || 0,
|
||||
depreciation_taxes: 0, //TODO: Find where this needs to be filled from
|
||||
depreciation_taxes: rawTtlData.g_bett_amt || 0, //TODO: Find where this needs to be filled from
|
||||
cieca_ttl: { data: rawTtlData },
|
||||
};
|
||||
};
|
||||
|
||||
@@ -10,10 +10,10 @@ import {
|
||||
default as errorTypeCheck,
|
||||
} from "../util/errorTypeCheck";
|
||||
import ipcTypes from "../util/ipcTypes.json";
|
||||
import client from "./graphql/graphql-client";
|
||||
import ImportJob from "./decoder/decoder";
|
||||
import LocalServer from "./http-server/http-server";
|
||||
import store from "./store/store";
|
||||
import { TestQB } from "./quickbooks-desktop/quickbooks-desktop";
|
||||
import store from "./store/store";
|
||||
|
||||
log.initialize();
|
||||
const isMac = process.platform === "darwin";
|
||||
@@ -179,6 +179,12 @@ function createWindow(): void {
|
||||
TestQB();
|
||||
},
|
||||
},
|
||||
{
|
||||
label: "Decode Hardcoded Estimate",
|
||||
click: (): void => {
|
||||
ImportJob(`C:\\EMS\\CCC\\9ee762f4.ENV`);
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
||||
|
||||
@@ -46,7 +46,7 @@ const App: React.FC = () => {
|
||||
<HashRouter>
|
||||
<ErrorBoundary FallbackComponent={ErrorBoundaryFallback}>
|
||||
<NotificationProvider>
|
||||
<Skeleton loading={user === null} active>
|
||||
<Skeleton loading={user === false} active>
|
||||
<Layout style={{ minHeight: "100vh" }}>
|
||||
{!user ? (
|
||||
<SignInForm />
|
||||
|
||||
29
src/renderer/src/util/graphql.client.ts
Normal file
29
src/renderer/src/util/graphql.client.ts
Normal file
@@ -0,0 +1,29 @@
|
||||
import {
|
||||
ApolloClient,
|
||||
ApolloLink,
|
||||
HttpLink,
|
||||
InMemoryCache,
|
||||
} from "@apollo/client";
|
||||
|
||||
const httpLink: HttpLink = new HttpLink({
|
||||
uri: import.meta.env.VITE_GRAPHQL_URL,
|
||||
});
|
||||
|
||||
const middlewares = [];
|
||||
const client: ApolloClient<any> = new ApolloClient({
|
||||
link: ApolloLink.from(middlewares),
|
||||
cache: new InMemoryCache(),
|
||||
defaultOptions: {
|
||||
watchQuery: {
|
||||
fetchPolicy: "network-only",
|
||||
},
|
||||
query: {
|
||||
fetchPolicy: "network-only",
|
||||
},
|
||||
mutate: {
|
||||
errorPolicy: "none",
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
export default client;
|
||||
Reference in New Issue
Block a user