private void ValidateFormValue(DyncForm formData, List <DyncField> parameterData, bool isUpdate = false) { if (formData.Name.IsNullOrEmpty()) { throw new FormException("请输入表单名称"); } if (StringUitl.IsNumberic(formData.Name.First().ToString())) { throw new FormException("表单名称请不要以数字和特殊字符开头"); } if (isUpdate) { var isExist = _dynamicDataservices.GetDyncFormByName(formData.Name); if (isExist.Any(t => t.Code != formData.Code && t.Name == formData.Name)) { throw new FormException("表单名称已经存在"); } } else { if (_dynamicDataservices.IsTableExist(formData.Name) > 0) { throw new FormException("表单名称已经存在"); } } if (!parameterData.Any()) { throw new FormException("表单字段不能为空"); } }
public void Update(DyncForm formData, List <DyncField> parameterData) { ValidateFormValue(formData, parameterData, true); parameterData.ForEach(item => SetDyncFieldInfo(item, formData.Code, parameterData.Clone <List <DyncField> >())); _dynamicDataservices.UpdateForm(formData, parameterData); SetMessage($"{formData.Name}修改成功"); }
public void CreateTable(DyncForm dyncForm, IEnumerable <DyncField> dyncField) { Add(dyncForm); var dic = dyncField.ToDictionary(t => t.Name, x => x.Info); AddDyncField(dyncField); _sQLDynamic.CreateDataTable(dyncForm.Name, dic); }
public void Add(DyncForm formData, List <DyncField> parameterData) { ValidateFormValue(formData, parameterData); var code = Guid.NewGuid().ToString(); formData.Code = code; parameterData.ForEach(item => SetDyncFieldInfo(item, code, parameterData.Clone <List <DyncField> >())); _dynamicDataservices.CreateTable(formData, parameterData); SetMessage($"{formData.Name}添加成功"); }
public int Add(DyncForm item) { return(_dyncForm.Add(item)); }
public DynamicDataservices() { _sQLDynamic = new SQLDynamic("DyncData"); _dyncForm = new DyncForm(); _dyncField = new DyncField(); }
public void UpdateForm(DyncForm dyncForm, IEnumerable <DyncField> dyncField) { RemoveForm(dyncForm.Code); CreateTable(dyncForm, dyncField); }