Hello from MCP server
/* TNFR Legacy Pricing Formula */
import type { VarUnit } from "./tnfrLegacyWithHours";
export default () => {
return {
vars: {
materialCostBase: { value: 0, unit: "currency" as VarUnit, description: "Total material cost from offer" },
timeCostBase: { value: 0, unit: "hours" as VarUnit, description: "Total time from offer" },
hourlyFee: { value: 5.262, unit: "currency" as VarUnit, description: "Hourly rate" },
standardDiscount: { value: 0.5, unit: "currency" as VarUnit, description: "Standard discount amount" },
offerModifier: { value: 1, unit: "multiplier" as VarUnit, description: "Offer modifier" },
salesTax: { value: 1, unit: "multiplier" as VarUnit, description: "Sales tax multiplier" },
serviceCallFee: { value: 0, unit: "currency" as VarUnit, description: "Service call / trip fee" },
saDiscount: { value: 1, unit: "multiplier" as VarUnit, description: "Service agreement discount" },
multiplier: { value: 1, unit: "multiplier" as VarUnit, description: "Tier multiplier" },
extraCostMultiplier: { value: 1, unit: "multiplier" as VarUnit, description: "Extra cost multiplier" },
markupScale: {
value: [
[6.571805718, 1.65],
[3.943083431, 1.75],
[2.628722287, 2],
[1.577233372, 2.25],
[1.051488915, 2.5],
[0.5257444574, 2.75],
[0.2628722287, 3],
[0.1314361144, 3.5],
[0, 4],
],
unit: "scale" as VarUnit,
description: "Material markup scale [threshold, multiplier]",
},
},
derivedVars: {
materialWithTax: { value: 0, unit: "currency" as VarUnit },
materialMarkup: { value: 2.75, unit: "multiplier" as VarUnit },
materialFee: { value: 0, unit: "currency" as VarUnit },
timeFee: { value: 0, unit: "currency" as VarUnit },
combinedFee: { value: 0, unit: "currency" as VarUnit },
feeWithTrip: { value: 0, unit: "currency" as VarUnit },
tierPrice: { value: 0, unit: "currency" as VarUnit },
leveledPrice: { value: 0, unit: "currency" as VarUnit },
finalPrice: { value: 0, unit: "currency" as VarUnit },
},
operations: [
{
op: "mult",
in1: "materialCostBase",
in2: "salesTax",
out: "materialWithTax",
},
{
op: "scale",
in1: "markupScale",
in2: "materialWithTax",
out: "materialMarkup",
},
{
op: "mult",
in1: "materialMarkup",
in2: "materialWithTax",
out: "materialFee",
},
{
op: "mult",
in1: "timeCostBase",
in2: "hourlyFee",
out: "timeFee",
},
{
op: "add",
in1: "timeFee",
in2: "materialFee",
out: "combinedFee",
},
{
op: "add",
in1: "combinedFee",
in2: "serviceCallFee",
out: "feeWithTrip",
},
{
op: "mult",
in1: "feeWithTrip",
in2: "multiplier",
out: "tierPrice",
},
{
op: "mult",
in1: "tierPrice",
in2: "extraCostMultiplier",
out: "leveledPrice",
},
// Apply SA discount
{
op: "mult",
in1: "leveledPrice",
in2: "saDiscount",
out: "finalPrice",
},
],
};
};