コード例 #1
0
        public ActionResult FormColumnPropForm(string tableName, string objectName, string columnName, byte version)
        {
            //ViewBag.Columns = _hrUnitOfWork.NotificationRepository.GetColumnList(tableName, objectName, version, "Form", CompanyId, Language);

            FormColumnViewModel model = _hrUnitOfWork.PagesRepository.GetFormColumn(CompanyId, objectName, version, Language, columnName) ?? new FormColumnViewModel();

            if (model.ColumnType == "number")
            {
                ViewBag.CodeName = _hrUnitOfWork.PagesRepository.GetCodeNamesList(Language);
            }

            return(PartialView("_FormColumnForm", model));
        }
コード例 #2
0
        public ActionResult SaveColumnProp(FormColumnViewModel model, OptionsViewModel moreInfo)
        {
            List <Error> errors = new List <Error>();

            if (ModelState.IsValid)
            {
                if (ServerValidationEnabled)
                {
                    errors = _hrUnitOfWork.MessageRepository.CheckForm(new CheckParm
                    {
                        CompanyId    = CompanyId,
                        ObjectName   = "FormColumnProp",
                        TableName    = "FormColumns",
                        Columns      = Models.Utils.GetColumnViews(ModelState.Where(a => !a.Key.Contains('.'))),
                        ParentColumn = "SectionId",
                        Culture      = Language
                    });

                    if (errors.Count() > 0)
                    {
                        foreach (var e in errors)
                        {
                            foreach (var errorMsg in e.errors)
                            {
                                ModelState.AddModelError(errorMsg.field, errorMsg.message);
                            }
                        }

                        return(Json(Models.Utils.ParseFormErrors(ModelState)));
                    }
                }

                var record = _hrUnitOfWork.Repository <FormColumn>().Where(c => c.Id == model.Id).FirstOrDefault();
                if (record != null)
                {
                    AutoMapper(new Models.AutoMapperParm
                    {
                        Destination = record,
                        Source      = model,
                        ObjectName  = "FormColumnProp",
                        Options     = moreInfo,
                        Transtype   = Model.Domain.TransType.Update
                    });

                    record.Required  = model.required;
                    record.InputType = model.type;
                    record.IsUnique  = model.isunique;
                    if (!record.IsUnique)
                    {
                        record.UniqueColumns = "";
                    }
                    record.Pattern     = model.pattern;
                    record.ColumnOrder = model.order;
                    record.Min         = model.min;
                    record.Max         = model.max;
                    record.MinLength   = model.minLength;
                    record.MaxLength   = model.maxLength;

                    _hrUnitOfWork.PagesRepository.Attach(record);
                    _hrUnitOfWork.PagesRepository.Entry(record).State = EntityState.Modified;
                }

                var Errors = SaveChanges(Language);

                string message = "OK," + ((new JavaScriptSerializer()).Serialize(model));

                if (Errors.Count > 0)
                {
                    message = Errors.First().errors.First().message;
                }

                return(Json(message));
            }
            else
            {
                return(Json(Models.Utils.ParseFormErrors(ModelState)));
            }
        }
コード例 #3
0
 private void OnColumnSelected(object sender, FormColumnViewModel e)
 {
     FormElementEditorViewModel.FormColumn = e;
 }