public static IEnumerable <DocumentSignatory> ListSignatories(this DocumentExports exports) { return(exports .Where(kvp => kvp.Key.StartsWith("signatory_")) .ToLookup( kvp => kvp.Key.Split('.')[0]) .Select(g => new DocumentSignatory() { Id = g.Where(kvp => kvp.Key.Split('.')[1] == "id").Select(kvp => kvp.Value).FirstOrDefault(), Name = g.Where(kvp => kvp.Key.Split('.')[1] == "name").Select(kvp => kvp.Value).FirstOrDefault(), })); }
public DocumentExports Create(Template template, Dictionary <string, dynamic> inputValues) { var result = new DocumentExports(); inputValues.ForEach(kvp => { var input = template.GetInputById(kvp.Key); if (!string.IsNullOrEmpty(input.ExportAs)) { result.Add(input.ExportAs, ((object)kvp.Value).ToString()); } }); return(result); }
public static DocumentSignatory GetSignatory(this DocumentExports exports, string id) { return(exports.ListSignatories().FirstOrDefault(s => s.Id == id)); }