Added 0423 Updated Vehicle Age Calculations.

This commit is contained in:
Patrick Fic
2022-11-22 12:30:35 -08:00
parent 25087f380d
commit 22814bf0a0
3 changed files with 40 additions and 7 deletions

View File

@@ -46,7 +46,15 @@ ipcMain.on(ipcTypes.app.toMain.getReleaseNotes, (event, obj) => {
}
});
ipcMain.on(ipcTypes.app.toMain.log.debug, (event, obj) => {
console.log(event, obj);
log.debug(event);
ipcMain.on(ipcTypes.app.toMain.log.debug, (event, ...obj) => {
log.debug(obj);
});
ipcMain.on(ipcTypes.app.toMain.log.info, (event, ...obj) => {
log.info(obj);
});
ipcMain.on(ipcTypes.app.toMain.log.warn, (event, ...obj) => {
log.warn(obj);
});
ipcMain.on(ipcTypes.app.toMain.log.error, (event, ...obj) => {
log.error(obj);
});

View File

@@ -7,6 +7,8 @@ import CloseDateDisplayMolecule from "../close-date-display/close-date-display.m
import JobGroupMolecule from "../job-group/job-group.molecule";
import DeleteJobAtom from "../../atoms/delete-job/delete-job.atom";
import VehicleGroupAlertAtom from "../../atoms/vehicle-group-alert/vehicle-group-alert.atom";
import { DateFormat } from "../../../util/constants";
import moment from "moment";
export default function JobsDetailDescriptionMolecule({ loading, job }) {
if (loading) return <Skeleton active />;
@@ -39,6 +41,11 @@ export default function JobsDetailDescriptionMolecule({ loading, job }) {
<JobGroupMolecule jobId={job.id} group={job.group} job={job} />
</Descriptions.Item>
<Descriptions.Item label="Age">{job.v_age}</Descriptions.Item>
<Descriptions.Item label="Loss Date">
{job.loss_date
? moment(job.loss_date).format(DateFormat)
: "No Loss Date"}
</Descriptions.Item>
<Descriptions.Item
label={

View File

@@ -19,14 +19,32 @@ const { logger } = window;
const { ipcRenderer } = window;
export function CalculateVehicleAge(job) {
//Per new rules in 2023, we need to determine which set of rules to apply.
const parsedYr = parseInt(job.v_model_yr);
const vehicleYr =
moment().year() + 1 - 2000 >= parsedYr ? 2000 + parsedYr : 1900 + parsedYr;
const closeDate = moment(job.close_date);
const lossDate = moment(job.loss_date);
let ret;
console.log(job);
ret = Math.max(0, moment(job.close_date || new Date()).year() - vehicleYr);
if (closeDate.isSameOrAfter(moment("2023-04-01"))) {
//Post April 2023 rules where the age is calculated based on loss date.
ipcRenderer.send(
ipcTypes.default.app.toMain.log.debug,
"Using post 0423 ruleset to calculate vehicle age for job.",
job
);
ret = vehicleYr.diff(lossDate, "years");
} else {
//Pre-April 2023 rules where the age was calculated based on model year, not loss date.
ipcRenderer.send(
ipcTypes.default.app.toMain.log.debug,
"Using pre 0423 ruleset to calculate vehicle age for job.",
job
);
ret = Math.max(0, moment(job.close_date || new Date()).year() - vehicleYr);
}
return ret;
}
@@ -34,7 +52,7 @@ export function CalculateVehicleAge(job) {
export async function UpsertEstimate(job) {
const shopId = store.getState().user.bodyshop.id;
//logger.info("Beginning Upserting job from Renderer.");
console.log("WINDOW IPCS",ipcRenderer)
console.log("WINDOW IPCS", ipcRenderer);
ipcRenderer.send(
ipcTypes.default.app.toMain.log.info,
"Beginning Upserting job from Renderer."