|
|
@@ -190,11 +190,20 @@ namespace Comal.Classes
|
|
|
|
|
|
private class MaterialsMarginFormula : ComplexFormulaGenerator<JobScope, double>
|
|
|
{
|
|
|
- public override IComplexFormulaNode<JobScope, double> GetFormula()
|
|
|
- => Formula(FormulaOperator.Divide,
|
|
|
- Formula(FormulaOperator.Subtract, Property(x => x.MaterialsSell), Property(x => x.MaterialsCost)),
|
|
|
- Property(x => x.MaterialsSell)
|
|
|
- );
|
|
|
+ public override IComplexFormulaNode<JobScope, double> GetFormula() =>
|
|
|
+ Formula(
|
|
|
+ FormulaOperator.Divide,
|
|
|
+ Formula(
|
|
|
+ FormulaOperator.Multiply,
|
|
|
+ Formula(
|
|
|
+ FormulaOperator.Subtract,
|
|
|
+ Property(x=>x.MaterialsSell),
|
|
|
+ Property(c => c.MaterialsCost)
|
|
|
+ ),
|
|
|
+ Constant(100.0F)
|
|
|
+ ),
|
|
|
+ Property(c=>c.MaterialsSell)
|
|
|
+ );
|
|
|
}
|
|
|
|
|
|
[ComplexFormula(typeof(MaterialsMarginFormula))]
|
|
|
@@ -204,10 +213,19 @@ namespace Comal.Classes
|
|
|
|
|
|
private class MaterialsMarkupFormula : ComplexFormulaGenerator<JobScope, double>
|
|
|
{
|
|
|
- public override IComplexFormulaNode<JobScope, double> GetFormula()
|
|
|
- => Formula(FormulaOperator.Divide,
|
|
|
- Formula(FormulaOperator.Subtract, Property(x => x.MaterialsSell), Property(x => x.MaterialsCost)),
|
|
|
- Property(x => x.MaterialsCost)
|
|
|
+ public override IComplexFormulaNode<JobScope, double> GetFormula() =>
|
|
|
+ Formula(
|
|
|
+ FormulaOperator.Divide,
|
|
|
+ Formula(
|
|
|
+ FormulaOperator.Multiply,
|
|
|
+ Formula(
|
|
|
+ FormulaOperator.Subtract,
|
|
|
+ Property(x=>x.MaterialsSell),
|
|
|
+ Property(c => c.MaterialsCost)
|
|
|
+ ),
|
|
|
+ Constant(100.0F)
|
|
|
+ ),
|
|
|
+ Property(c=>c.MaterialsCost)
|
|
|
);
|
|
|
}
|
|
|
|
|
|
@@ -242,11 +260,20 @@ namespace Comal.Classes
|
|
|
|
|
|
private class LabourMarginFormula : ComplexFormulaGenerator<JobScope, double>
|
|
|
{
|
|
|
- public override IComplexFormulaNode<JobScope, double> GetFormula()
|
|
|
- => Formula(FormulaOperator.Divide,
|
|
|
- Formula(FormulaOperator.Subtract, Property(x => x.LabourSell), Property(x => x.LabourCost)),
|
|
|
- Property(x => x.LabourSell)
|
|
|
- );
|
|
|
+ public override IComplexFormulaNode<JobScope, double> GetFormula() =>
|
|
|
+ Formula(
|
|
|
+ FormulaOperator.Divide,
|
|
|
+ Formula(
|
|
|
+ FormulaOperator.Multiply,
|
|
|
+ Formula(
|
|
|
+ FormulaOperator.Subtract,
|
|
|
+ Property(x=>x.LabourSell),
|
|
|
+ Property(c => c.LabourCost)
|
|
|
+ ),
|
|
|
+ Constant(100.0F)
|
|
|
+ ),
|
|
|
+ Property(c=>c.LabourSell)
|
|
|
+ );
|
|
|
}
|
|
|
|
|
|
[ComplexFormula(typeof(LabourMarginFormula))]
|
|
|
@@ -256,10 +283,19 @@ namespace Comal.Classes
|
|
|
|
|
|
private class LabourMarkupFormula : ComplexFormulaGenerator<JobScope, double>
|
|
|
{
|
|
|
- public override IComplexFormulaNode<JobScope, double> GetFormula()
|
|
|
- => Formula(FormulaOperator.Divide,
|
|
|
- Formula(FormulaOperator.Subtract, Property(x => x.LabourSell), Property(x => x.LabourCost)),
|
|
|
- Property(x => x.LabourCost)
|
|
|
+ public override IComplexFormulaNode<JobScope, double> GetFormula() =>
|
|
|
+ Formula(
|
|
|
+ FormulaOperator.Divide,
|
|
|
+ Formula(
|
|
|
+ FormulaOperator.Multiply,
|
|
|
+ Formula(
|
|
|
+ FormulaOperator.Subtract,
|
|
|
+ Property(x=>x.LabourSell),
|
|
|
+ Property(c => c.LabourCost)
|
|
|
+ ),
|
|
|
+ Constant(100.0F)
|
|
|
+ ),
|
|
|
+ Property(c=>c.LabourCost)
|
|
|
);
|
|
|
}
|
|
|
|