NotesWhat is notes.io?

Notes brand slogan

Notes - notes.io


public class ContractSummaryVM
{//Added by nishant on 23-Jul-2022
public ContractMasterVM contractDetail { get; set; } = new();
public List<ComplianceContractSummaryVM> complianceList { get; set; } = new();
public List<ServiceHighLevelSummaryVM> serviceHighLevelSummaryVM { get; set; } = new();
public ServiceHighLevelSummaryHeaderVM ServiceHighLevelHeader { get; set; } = new();
public ProjectedSummaryVM ProjectedSummary { get; set; } = new();
public string? MsgPendingSetup { get; set; } = "";
public void ComputeSummary()
{
ServiceHighLevelHeader.TotalMonthlyBilling = (serviceHighLevelSummaryVM.Sum(s => s.Revenue) ?? 0);
//var manpowerList= serviceHighLevelSummaryVM.Where(x => x.ServiceCategoryId == 3);
//switch (manpowerList.Sum(s => s.Qty))
//{//---we calc UnitOverHead first because using in below calc
// case < 5:
// ServiceHighLevelHeader.UnitOverHead = 0;
// break;
// case <= 25:
// ServiceHighLevelHeader.UnitOverHead = manpowerList.Sum(y=>y.Revenue??0) * decimal.Parse("0.25") / 100;
// break;
// case <= 100:
// ServiceHighLevelHeader.UnitOverHead = manpowerList.Sum(y => y.Revenue ?? 0) * decimal.Parse("0.5") / 100;
// break;
// default:
// ServiceHighLevelHeader.UnitOverHead = manpowerList.Sum(y => y.Revenue ?? 0) * decimal.Parse("1.0") / 100;
// break;
//}
//ServiceHighLevelHeader.UnitOverHead += serviceHighLevelSummaryVM.Where(x => x.ServiceCategoryId != 3)?.Sum(y => y.MarginAmt ?? 0)??0;
//contractDetail.MonthlyImpactOfFinancial = 0;
ServiceHighLevelHeader.GrossUnitExpense = serviceHighLevelSummaryVM.Sum(s=>(s.Totalcost+s.AdditionalCost))??0;
ServiceHighLevelHeader.NetUnitExpense = ServiceHighLevelHeader.GrossUnitExpense - contractDetail.BarrackRent - contractDetail.LessBarrackRent;
//ServiceHighLevelHeader.UnitOverHead = (serviceHighLevelSummaryVM.Sum(s => s.Revenue) ?? 0) * decimal.Parse("0.25") / 100;

ServiceHighLevelHeader.TotalMonthlyUnitExp = (contractDetail.MonthlyImpactOfURB + contractDetail.MonthlyImpactOfFinancial + ServiceHighLevelHeader.UnitOverHead);
ServiceHighLevelHeader.TotalMonthlyCost = ServiceHighLevelHeader.NetUnitExpense + contractDetail.MonthlyImpactOfURB + contractDetail.MonthlyImpactOfFinancial + ServiceHighLevelHeader.UnitOverHead;
//---------
ServiceHighLevelHeader.GrossUnitMarginAmt = ServiceHighLevelHeader.TotalMonthlyBilling - ServiceHighLevelHeader.GrossUnitExpense;
ServiceHighLevelHeader.GrossUnitMarginPer = (ServiceHighLevelHeader.TotalMonthlyBilling == 0 ? 0 : (100 * ServiceHighLevelHeader.GrossUnitMarginAmt / ServiceHighLevelHeader.TotalMonthlyBilling));

ServiceHighLevelHeader.MarginUnitOverheadAmt = ServiceHighLevelHeader.TotalMonthlyBilling - ServiceHighLevelHeader.TotalMonthlyCost;
ServiceHighLevelHeader.MarginUnitOverheadPer = (ServiceHighLevelHeader.TotalMonthlyBilling == 0 ? 0 : (100 * ServiceHighLevelHeader.MarginUnitOverheadAmt / ServiceHighLevelHeader.TotalMonthlyBilling));

ServiceHighLevelHeader.BranchOverheadPer = 5;
ServiceHighLevelHeader.BranchOverheadAmt = (ServiceHighLevelHeader.BranchOverheadPer * ServiceHighLevelHeader.TotalMonthlyBilling / 100);

ServiceHighLevelHeader.BranchUnitMarginAmt = ServiceHighLevelHeader.MarginUnitOverheadAmt - ServiceHighLevelHeader.BranchOverheadAmt;
ServiceHighLevelHeader.BranchUnitMarginPer = (ServiceHighLevelHeader.TotalMonthlyBilling == 0 ? 0 : (100 * ServiceHighLevelHeader.BranchUnitMarginAmt / ServiceHighLevelHeader.TotalMonthlyBilling));

ServiceHighLevelHeader.CashSurplusBranchAmt = ServiceHighLevelHeader.MarginUnitOverheadAmt;
ServiceHighLevelHeader.CashSurplusBranchPer = ServiceHighLevelHeader.MarginUnitOverheadPer;

//ServiceHighLevelHeader.ABPUnitMarginPer = 15;
ServiceHighLevelHeader.NetUnitMarginPer = ServiceHighLevelHeader.MarginUnitOverheadPer;
ServiceHighLevelHeader.VariancePer = ServiceHighLevelHeader.NetUnitMarginPer - ServiceHighLevelHeader.ABPUnitMarginPer;
}
}

public class ServiceHighLevelSummaryHeaderVM
{
public decimal GrossUnitExpense { get; set; } = 0;
public decimal BarrackRent { get; set; } = 0;
public decimal RentRecovery { get; set; } = 0;
public decimal NetUnitExpense { get; set; } = 0;
public decimal URBExpense { get; set; } = 0;
public decimal FinancialCost { get; set; } = 0;
public decimal UnitOverHead { get; set; } = 0;
public decimal TotalMonthlyUnitExp { get; set; } = 0;
public decimal TotalMonthlyCost { get; set; } = 0;
public decimal TotalMonthlyBilling { get; set; } = 0;
public decimal GrossUnitMarginAmt { get; set; } = 0;
public decimal GrossUnitMarginPer { get; set; } = 0;
public decimal MarginUnitOverheadAmt { get; set; } = 0;
public decimal MarginUnitOverheadPer { get; set; } = 0;
public decimal BranchOverheadAmt { get; set; } = 0;
public decimal BranchOverheadPer { get; set; } = 0;
public decimal BranchUnitMarginAmt { get; set; } = 0;
public decimal BranchUnitMarginPer { get; set; } = 0;
public decimal CashSurplusBranchAmt { get; set; } = 0;
public decimal CashSurplusBranchPer { get; set; } = 0;
public decimal ABPUnitMarginPer { get; set; } = 0;
public decimal NetUnitMarginPer { get; set; } = 0;
public decimal VariancePer { get; set; } = 0;
public decimal MinimumULMRequire { get; set; } = 0;
}

public class ServiceHighLevelSummaryVM
{//---Added by nishant on 23-Jul-2022
public int ServiceCategoryId { get; set; }
public string ServiceCategoryType { get; set; }
public string? ServiceProductType { get; set; } = "";
public decimal Qty { get; set; } = 0;
public decimal FreeQty { get; set; } = 0;
public decimal? WageCost { get; set; } = 0;
public decimal? RentalCost { get; set; } = 0;
public decimal? StatutoryCost { get; set; } = 0;
public decimal? MarginAmt { get; set; } = 0;
public decimal? ServiceCharge { get; set; } = 0;
public decimal? Revenue { get; set; } = 0;
public decimal? Totalcost { get; set; } = 0;//change on 22-02-2024 for freeStrength margin effect
//public decimal? Totalcost => (Revenue - (ServiceCharge ?? 0) - (MarginAmt??0));
public decimal? OtherCost => ((Totalcost ?? 0) - ((WageCost ?? 0) + (RentalCost ?? 0) + (StatutoryCost ?? 0)));
public decimal? AdditionalCost { get; set; } = 0;
public decimal? GrossWage { get; set; } = 0;
public decimal? ESIAmt { get; set; } = 0;
public decimal? PFAmt { get; set; } = 0;
}
public class ProjectedSummaryVM
{//---Added by nishant on 23-Jul-2022
public decimal RevenueAmt { get; set; } = 0;
public decimal DirectCost { get; set; } = 0;
public decimal OverheadAmt { get; set; } = 0;
public decimal GrossMarginAmt => RevenueAmt - DirectCost - OverheadAmt;
public decimal GrossMarginPerc => Math.Round((RevenueAmt==0?0:(GrossMarginAmt*100/RevenueAmt)),2,MidpointRounding.AwayFromZero);
}
}






public class ComplianceContractSummaryVM
{
public String HeadName { get; set; }
public String Description { get; set; }
public int HeadSeqNo { get; set; }
public int MaxMarks { get; set; } = 0;
public String ServiceName { get; set; }
public String StateZoneDutyDayHour { get; set; }
public int ServiceSeqNo { get; set; }
public int Value { get; set; } = 0;
}
     
 
what is notes.io
 

Notes is a web-based application for online taking notes. You can take your notes and share with others people. If you like taking long notes, notes.io is designed for you. To date, over 8,000,000,000+ notes created and continuing...

With notes.io;

  • * You can take a note from anywhere and any device with internet connection.
  • * You can share the notes in social platforms (YouTube, Facebook, Twitter, instagram etc.).
  • * You can quickly share your contents without website, blog and e-mail.
  • * You don't need to create any Account to share a note. As you wish you can use quick, easy and best shortened notes with sms, websites, e-mail, or messaging services (WhatsApp, iMessage, Telegram, Signal).
  • * Notes.io has fabulous infrastructure design for a short link and allows you to share the note as an easy and understandable link.

Fast: Notes.io is built for speed and performance. You can take a notes quickly and browse your archive.

Easy: Notes.io doesn’t require installation. Just write and share note!

Short: Notes.io’s url just 8 character. You’ll get shorten link of your note when you want to share. (Ex: notes.io/q )

Free: Notes.io works for 14 years and has been free since the day it was started.


You immediately create your first note and start sharing with the ones you wish. If you want to contact us, you can use the following communication channels;


Email: [email protected]

Twitter: http://twitter.com/notesio

Instagram: http://instagram.com/notes.io

Facebook: http://facebook.com/notesio



Regards;
Notes.io Team

     
 
Shortened Note Link
 
 
Looding Image
 
     
 
Long File
 
 

For written notes was greater than 18KB Unable to shorten.

To be smaller than 18KB, please organize your notes, or sign in.