public CFnTFModel SubmitAssignedActivities(List<iatiactivity> assignedActivities)
{
if (assignedActivities == null) return Sessions.CFnTFModel;
CFnTFModel CFnTFModel = new CFnTFModel();
CFnTFModel.AssignedActivities = assignedActivities;
#region Co-financed
CFnTFModel.AimsProjects = (from i in assignedActivities
join a in Sessions.CFnTFModel.AimsProjects on i.MappedProjectId equals a.ProjectId
where i.MappedTrustFundId == default(int)
select a).DistinctBy(d => d.ProjectId).ToList();
foreach (var project in CFnTFModel.AimsProjects)
{
var acts = assignedActivities.FindAll(f => f.MappedProjectId == project.ProjectId);
project.MatchedProjects.AddRange(acts);
}
#endregion
#region TrustFund
//get all trust fund activities that the user map by selecting dropdown
var trastFundsActivities = (from i in assignedActivities
where i.MappedProjectId == default(int)
&& i.MappedTrustFundId > 0
select i);
foreach (var activity in trastFundsActivities.DistinctBy(d => d.MappedTrustFundId))
{
CFnTFModel.TrustFundDetails.Add(aimsDAL.GetTrustFundDetails(activity.MappedTrustFundId));
}
foreach (var TrustFund in CFnTFModel.TrustFundDetails)
{
var acts = assignedActivities.FindAll(f => f.MappedTrustFundId == TrustFund.TrustFundId);
TrustFund.iatiactivities.AddRange(acts);
}
#endregion
Sessions.CFnTFModel = CFnTFModel;
return CFnTFModel;
}
[AcceptVerbs("GET", "POST")]