public dynamic Update(FormViewModel form) { if (form == null) { throw new Exception("Formulário vazio."); } Form _form = _repositoryForm.Find(wh => wh.FormType == form.FormType); _form.Questions = form.Question?.Select(question => new Question().ConvertViewModelToDomain(question)) .ToList(); return(_repositoryForm.Update(wh => wh.Id == _form.Id, _form)); }
public void Edit(Guid id, ServiceFormHolder formHolder) { var service = serviceRepository.Find(id); var formId = service.FormId; service.Name = formHolder.ServiceForm.Name; service.Description = formHolder.ServiceForm.Description; service.Icon = formHolder.ServiceForm.Icon; service.Url = formHolder.ServiceForm.Url; service.Type = formHolder.ServiceForm.Type; service.Method = formHolder.ServiceForm.Method; service.UniqueScriptUrl = formHolder.ServiceForm.UniqueScriptUrl; service.SortIndex = formHolder.ServiceForm.SortIndex; service.Code = formHolder.ServiceForm.Code; if (formHolder.HasForm) { if (formId == null) { CreateForm(formHolder.FormModel, service); } else { EditForm(formId, formHolder.FormModel); } } else { if (formId != null) { DeleteFormField(formId ?? Guid.Empty); var form = formRepository.Find(formId); entityRepository.DeleteOnSave(form); } } entityRepository.SaveChanges(); }
public async Task <IActionResult> GetForm([FromRoute] int id) { if (!ModelState.isValid) { return(BadRequest(ModelState)); } var form = await _repo.Find(id); if (!form) { return(NotFound(id)); } return(Ok(form)); }
public void Delete(Guid id) { var service = serviceRepository.Find(id); if (service != null) { if (service.FormId != null) { var form = formRepository.Find(service.FormId); DeleteFormField(form.Id); entityRepository.DeleteOnSave(form); } entityRepository.DeleteOnSave(service); entityRepository.SaveChanges(); } }
public FormModel Get(Guid id) { var form = formRepository.Find(id); if (form == null) { return(null); } var formModel = new FormModel() { Body = new FormBodyModel() { Description = form.Description, FormName = form.Id.ToString(), Title = form.Title } }; CreateFormField(form.Id, formModel); return(formModel); }
private FormViewModel BuildFormModel(Guid?formId, bool forEdit) { var form = formRepository.Find(formId); if (form == null) { return(null); } var formModel = new FormViewModel() { Body = new FormBodyViewModel() { Description = form.Description, Title = form.Title } }; var formFields = formFieldRepository.FindByFormId(form.Id); foreach (var formField in formFields) { var type = formFieldTypeRepository.FindByTypeId(formField.TypeId); formModel.Body.FormFields.Add(new FormFieldViewModel() { Id = formField.Id, Title = formField.Title, Type = forEdit ? type.Name : type.DisplayName, Value = formField.Value }); var validation = formFieldRuleRepository.FindByFormFieldId(formField.Id); foreach (var v in validation) { var validationType = validationRuleRepository.Find(v.ValidationRuleId); Guid valueId = v.ValueId ?? Guid.Empty; var value = string.Empty; if (valueId != Guid.Empty) { var valueType = v.ValueType; switch (valueType) { case DataLayer.Entities.ValueType.DateTime: value = validationRuleValueRepository.FindDateTime(valueId).Value.ToShortDateString(); break; case DataLayer.Entities.ValueType.Number: value = validationRuleValueRepository.FindDouble(valueId).Value.ToString(); break; case DataLayer.Entities.ValueType.String: value = validationRuleValueRepository.FindString(valueId).Value; break; default: throw new ArgumentOutOfRangeException(nameof(valueType), valueType, null); } } formModel.Body.FormFields.Last().Validation.Add(new ValidationViewModel() { Type = forEdit ? validationType.Name : validationType.DisplayName, Value = value }); } ; var options = optionRepository.FindByFormFieldId(formField.Id); foreach (var option in options) { formModel.Body.FormFields.Last().Options.Add(new OptionViewModel() { Checked = option.Checked, Content = option.Content, Value = option.Value }); } } return(formModel); }