public void SaveACETFilters([FromBody] List <ACETFilter> filters) { int assessmentId = Auth.AssessmentForUser(); using (CSET_Context context = new CSET_Context()) { Dictionary <string, int> domainIds = context.FINANCIAL_DOMAINS.ToDictionary(x => x.Domain, x => x.DomainId); foreach (ACETFilter f in filters.Where(x => x.DomainName != null).ToList()) { int domainId = domainIds[f.DomainName]; var filter = context.FINANCIAL_DOMAIN_FILTERS.Where(x => x.DomainId == domainId && x.Assessment_Id == assessmentId).FirstOrDefault(); if (filter == null) { filter = new FINANCIAL_DOMAIN_FILTERS() { Assessment_Id = assessmentId, DomainId = domainId }; context.FINANCIAL_DOMAIN_FILTERS.Add(filter); } foreach (var s in f.Settings) { switch (s.Level) { case 1: filter.B = s.Value; break; case 2: filter.E = s.Value; break; case 3: filter.Int = s.Value; break; case 4: filter.A = s.Value; break; case 5: filter.Inn = s.Value; break; } } } context.SaveChanges(); } }
public void SaveACETFilters([FromBody] ACETFilterValue filterValue) { int assessmentId = Auth.AssessmentForUser(); string domainname = filterValue.DomainName; int level = filterValue.Level; bool value = filterValue.Value; using (CSET_Context context = new CSET_Context()) { Dictionary <string, int> domainIds = context.FINANCIAL_DOMAINS.ToDictionary(x => x.Domain, x => x.DomainId); int domainId = domainIds[domainname]; var filter = context.FINANCIAL_DOMAIN_FILTERS.Where(x => x.DomainId == domainId && x.Assessment_Id == assessmentId).FirstOrDefault(); if (filter == null) { filter = new FINANCIAL_DOMAIN_FILTERS() { Assessment_Id = assessmentId, DomainId = domainId }; context.FINANCIAL_DOMAIN_FILTERS.Add(filter); } switch (level) { case 1: filter.B = value; break; case 2: filter.E = value; break; case 3: filter.Int = value; break; case 4: filter.A = value; break; case 5: filter.Inn = value; break; } context.SaveChanges(); } }