Пример #1
0
        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("表单字段不能为空");
            }
        }
Пример #2
0
 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}修改成功");
 }
Пример #3
0
        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);
        }
Пример #4
0
        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}添加成功");
        }
Пример #5
0
 public int Add(DyncForm item)
 {
     return(_dyncForm.Add(item));
 }
Пример #6
0
 public DynamicDataservices()
 {
     _sQLDynamic = new SQLDynamic("DyncData");
     _dyncForm   = new DyncForm();
     _dyncField  = new DyncField();
 }
Пример #7
0
 public void UpdateForm(DyncForm dyncForm, IEnumerable <DyncField> dyncField)
 {
     RemoveForm(dyncForm.Code);
     CreateTable(dyncForm, dyncField);
 }