public async Task <OperationResult> Create(EFormXmlModel eFormXmlModel) { try { var core = await _coreHelper.GetCore(); var sdkDbContext = core.DbContextHelper.GetDbContext(); // Create tags if (eFormXmlModel.NewTag != null) { var tagList = eFormXmlModel.NewTag.Replace(" ", "").Split(','); foreach (var tag in tagList) { eFormXmlModel.TagIds.Add(await core.TagCreate(tag)); } } // Create eform var newTemplate = await core.TemplateFromXml(eFormXmlModel.EFormXml); newTemplate = await core.TemplateUploadData(newTemplate); // Check errors var errors = await core.TemplateValidation(newTemplate); if (errors.Any()) { var message = errors.Aggregate("", (current, str) => current + ("<br>" + str)); throw new Exception(_localizationService.GetString("eFormCouldNotBeCreated") + message); } if (newTemplate == null) { throw new Exception(_localizationService.GetString("eFormCouldNotBeCreated")); } // Set tags to eform var clId = await core.TemplateCreate(newTemplate); var cl = await sdkDbContext.CheckLists.SingleOrDefaultAsync(x => x.Id == clId); cl.IsEditable = true; await cl.Update(sdkDbContext); if (eFormXmlModel.TagIds != null) { await core.TemplateSetTags(newTemplate.Id, eFormXmlModel.TagIds); } return(new OperationResult(true, _localizationService.GetStringWithFormat("eFormParamCreatedSuccessfully", newTemplate.Label))); } catch (Exception e) { return(new OperationResult(false, e.Message)); } }
public OperationResult Create(EFormXmlModel eFormXmlModel) { try { var core = _coreHelper.GetCore(); // Create tags if (eFormXmlModel.NewTag != null) { var tagList = eFormXmlModel.NewTag.Replace(" ", "").Split(','); foreach (var tag in tagList) { eFormXmlModel.TagIds.Add(core.TagCreate(tag)); } } // Create eform var newTemplate = core.TemplateFromXml(eFormXmlModel.EFormXml); newTemplate = core.TemplateUploadData(newTemplate); // Check errors var errors = core.TemplateValidation(newTemplate); if (errors.Any()) { var message = errors.Aggregate("", (current, str) => current + ("<br>" + str)); throw new Exception(LocaleHelper.GetString("eFormCouldNotBeCreated") + message); } if (newTemplate == null) { throw new Exception(LocaleHelper.GetString("eFormCouldNotBeCreated")); } // Set tags to eform core.TemplateCreate(newTemplate); if (eFormXmlModel.TagIds != null) { core.TemplateSetTags(newTemplate.Id, eFormXmlModel.TagIds); } return(new OperationResult(true, LocaleHelper.GetString("eFormParamCreatedSuccessfully", newTemplate.Label))); } catch (Exception e) { return(new OperationResult(false, e.Message)); } }
public OperationResult Create(EFormXmlModel eFormXmlModel) { var core = _coreHelper.GetCore(); var newTemplate = core.TemplateFromXml(eFormXmlModel.EFormXml); newTemplate = core.TemplateUploadData(newTemplate); var errors = core.TemplateValidation(newTemplate); if (!errors.Any()) { if (newTemplate == null) { return(new OperationResult(false, "eForm could not be created!")); } core.TemplateCreate(newTemplate); return(new OperationResult(true, $"eForm \"{newTemplate.Label}\" created successfully")); } var message = errors.Aggregate("", (current, str) => current + ("<br>" + str)); return(new OperationResult(false, "eForm could not be created!" + message)); }
public async Task <OperationResult> Create([FromBody] EFormXmlModel eFormXmlModel) { return(await _templatesService.Create(eFormXmlModel)); }