public string CreateFormTemplate(FormTemplateFormDefinition def) { if (this.Repository.ContainsKey(def.Name)) { throw new ApplicationException($"The form with the name {def.Name} already exists"); } var form = new SBSFormDefinition(def); this.Repository.Add(form.Id, form); return(form.Id); }
public bool ChangeFormProperties(FormTemplateFormDefinition def, Dictionary <string, object> changes) { if (changes == null) { return(false); } bool rc = true; foreach (var kvp in changes) { if (kvp.Key.Contains(".")) { string[] parts = kvp.Key.Split('.'); string fieldName = parts[0]; string propName = parts[1]; var field = def.Fields.FirstOrDefault(f => f.Name.Equals(fieldName, StringComparison.OrdinalIgnoreCase)); if (field != null) { rc = this.ChangeFormOrFieldProp("Field", propName, kvp.Value, field, FieldDefinitionPropsMap); } else { Logger.Error($"Change Field Definition Property: The key {propName} is not valid."); rc = false; } } else { rc = this.ChangeFormOrFieldProp("Form", kvp.Key, kvp.Value, def, FormDefinitionPropsMap); } } return(rc); }