Esempio n. 1
0
        public static void SingleImportTableStyle(string tableName, string styleDirectoryPath, int relatedIdentity)
        {
            if (!DirectoryUtils.IsDirectoryExists(styleDirectoryPath))
            {
                return;
            }

            var filePaths = DirectoryUtils.GetFilePaths(styleDirectoryPath);

            foreach (var filePath in filePaths)
            {
                var feed = AtomFeed.Load(FileUtils.GetFileStreamReadOnly(filePath));

                var attributeName   = AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.AttributeName));
                var taxis           = TranslateUtils.ToInt(AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.Taxis)), 0);
                var displayName     = AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.DisplayName));
                var helpText        = AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.HelpText));
                var isVisibleInList = TranslateUtils.ToBool(AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.IsVisibleInList)));
                var inputType       = InputTypeUtils.GetEnumType(AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.InputType)));
                var defaultValue    = AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.DefaultValue));
                var isHorizontal    = TranslateUtils.ToBool(AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.IsHorizontal)));
                //SettingsXML
                var extendValues = AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.ExtendValues));

                var styleInfo = new TableStyleInfo(0, relatedIdentity, tableName, attributeName, taxis, displayName, helpText, isVisibleInList, inputType, defaultValue, isHorizontal, extendValues);

                var styleItems = new List <TableStyleItemInfo>();
                foreach (AtomEntry entry in feed.Entries)
                {
                    var itemTitle  = AtomUtility.GetDcElementContent(entry.AdditionalElements, nameof(TableStyleItemInfo.ItemTitle));
                    var itemValue  = AtomUtility.GetDcElementContent(entry.AdditionalElements, nameof(TableStyleItemInfo.ItemValue));
                    var isSelected = TranslateUtils.ToBool(AtomUtility.GetDcElementContent(entry.AdditionalElements, nameof(TableStyleItemInfo.IsSelected)));

                    styleItems.Add(new TableStyleItemInfo(0, 0, itemTitle, itemValue, isSelected));
                }

                if (styleItems.Count > 0)
                {
                    styleInfo.StyleItems = styleItems;
                }

                if (TableStyleManager.IsExists(relatedIdentity, tableName, attributeName))
                {
                    TableStyleManager.Delete(relatedIdentity, tableName, attributeName);
                }
                TableStyleManager.Insert(styleInfo);
            }
        }
        private bool InsertOrUpdateTableStyleInfo()
        {
            var isChanged = false;

            _styleInfo.Additional.IsValidate   = TranslateUtils.ToBool(IsValidate.SelectedValue);
            _styleInfo.Additional.IsRequired   = TranslateUtils.ToBool(IsRequired.SelectedValue);
            _styleInfo.Additional.MinNum       = TranslateUtils.ToInt(MinNum.Text);
            _styleInfo.Additional.MaxNum       = TranslateUtils.ToInt(MaxNum.Text);
            _styleInfo.Additional.ValidateType = EInputValidateTypeUtils.GetEnumType(ValidateType.SelectedValue);
            _styleInfo.Additional.RegExp       = RegExp.Text.Trim('/');
            _styleInfo.Additional.ErrorMessage = ErrorMessage.Text;

            try
            {
                if (_tableStyleId == 0)//数据库中没有此项的表样式,但是有父项的表样式
                {
                    var relatedIdentity = (int)_relatedIdentities[0];
                    _styleInfo.RelatedIdentity = relatedIdentity;
                    _styleInfo.TableStyleId    = TableStyleManager.Insert(_styleInfo, _tableStyle);
                }

                if (_styleInfo.TableStyleId > 0)
                {
                    TableStyleManager.Update(_styleInfo);
                    Body.AddSiteLog(PublishmentSystemId, "修改表单验证", $"类型:{ETableStyleUtils.GetText(_tableStyle)},字段:{_styleInfo.AttributeName}");
                }
                else
                {
                    TableStyleManager.Insert(_styleInfo, _tableStyle);
                    Body.AddSiteLog(PublishmentSystemId, "新增表单验证", $"类型:{ETableStyleUtils.GetText(_tableStyle)},字段:{_styleInfo.AttributeName}");
                }
                isChanged = true;
            }
            catch (Exception ex)
            {
                FailMessage(ex, "设置表单验证失败:" + ex.Message);
            }
            return(isChanged);
        }
Esempio n. 3
0
        private bool InsertOrUpdateTableStyleInfo()
        {
            var isChanged = false;

            _styleInfo.Additional.IsValidate   = TranslateUtils.ToBool(DdlIsValidate.SelectedValue);
            _styleInfo.Additional.IsRequired   = TranslateUtils.ToBool(DdlIsRequired.SelectedValue);
            _styleInfo.Additional.MinNum       = TranslateUtils.ToInt(TbMinNum.Text);
            _styleInfo.Additional.MaxNum       = TranslateUtils.ToInt(TbMaxNum.Text);
            _styleInfo.Additional.ValidateType = ValidateTypeUtils.GetEnumType(DdlValidateType.SelectedValue);
            _styleInfo.Additional.RegExp       = TbRegExp.Text.Trim('/');
            _styleInfo.Additional.ErrorMessage = TbErrorMessage.Text;

            try
            {
                if (_tableStyleId == 0)//数据库中没有此项的表样式,但是有父项的表样式
                {
                    var relatedIdentity = _relatedIdentities[0];
                    _styleInfo.RelatedIdentity = relatedIdentity;
                    _styleInfo.Id = TableStyleManager.Insert(_styleInfo);
                }

                if (_styleInfo.Id > 0)
                {
                    TableStyleManager.Update(_styleInfo);
                    AuthRequest.AddSiteLog(SiteId, "修改表单验证", $"字段:{_styleInfo.AttributeName}");
                }
                else
                {
                    TableStyleManager.Insert(_styleInfo);
                    AuthRequest.AddSiteLog(SiteId, "新增表单验证", $"字段:{_styleInfo.AttributeName}");
                }
                isChanged = true;
            }
            catch (Exception ex)
            {
                FailMessage(ex, "设置表单验证失败:" + ex.Message);
            }
            return(isChanged);
        }
Esempio n. 4
0
        private static void ContentTableCreateOrUpdateStyles(string tableName, List <TableColumn> tableColumns)
        {
            var styleInfoList = new List <TableStyleInfo>();
            var columnTaxis   = 0;

            foreach (var tableColumn in tableColumns)
            {
                var inputStyle = tableColumn.InputStyle ?? new InputStyle
                {
                    InputType = InputType.Hidden
                };

                columnTaxis++;
                var styleInfo = TableStyleManager.GetTableStyleInfo(tableName, tableColumn.AttributeName, new List <int> {
                    0
                });

                var isEquals = true;

                if (styleInfo.InputType != inputStyle.InputType)
                {
                    isEquals            = false;
                    styleInfo.InputType = inputStyle.InputType;
                }

                if (!StringUtils.EqualsIgnoreNull(styleInfo.DisplayName, inputStyle.DisplayName))
                {
                    isEquals = false;
                    styleInfo.DisplayName = inputStyle.DisplayName;
                }

                if (!StringUtils.EqualsIgnoreNull(styleInfo.HelpText, inputStyle.HelpText))
                {
                    isEquals           = false;
                    styleInfo.HelpText = inputStyle.HelpText;
                }

                if (!StringUtils.EqualsIgnoreNull(styleInfo.DefaultValue, inputStyle.DefaultValue))
                {
                    isEquals = false;
                    styleInfo.DefaultValue = inputStyle.DefaultValue;
                }

                if (styleInfo.Taxis != columnTaxis)
                {
                    isEquals        = false;
                    styleInfo.Taxis = columnTaxis;
                }

                if (styleInfo.Additional.IsRequired != inputStyle.IsRequired)
                {
                    isEquals = false;
                    styleInfo.Additional.IsRequired = inputStyle.IsRequired;
                }

                if (styleInfo.Additional.ValidateType != inputStyle.ValidateType)
                {
                    isEquals = false;
                    styleInfo.Additional.ValidateType = inputStyle.ValidateType;
                }

                if (styleInfo.Additional.MinNum != inputStyle.MinNum)
                {
                    isEquals = false;
                    styleInfo.Additional.MinNum = inputStyle.MinNum;
                }

                if (styleInfo.Additional.MaxNum != inputStyle.MaxNum)
                {
                    isEquals = false;
                    styleInfo.Additional.MaxNum = inputStyle.MaxNum;
                }

                if (!StringUtils.EqualsIgnoreNull(styleInfo.Additional.RegExp, inputStyle.RegExp))
                {
                    isEquals = false;
                    styleInfo.Additional.RegExp = inputStyle.RegExp;
                }

                if (!StringUtils.EqualsIgnoreNull(styleInfo.Additional.Width, inputStyle.Width))
                {
                    isEquals = false;
                    styleInfo.Additional.Width = inputStyle.Width;
                }

                if (!(styleInfo.Additional.Height == 0 && string.IsNullOrEmpty(inputStyle.Height)) && styleInfo.Additional.Height != TranslateUtils.ToInt(inputStyle.Height))
                {
                    isEquals = false;
                    styleInfo.Additional.Height = TranslateUtils.ToInt(inputStyle.Height);
                }

                if (!(styleInfo.StyleItems == null && inputStyle.ListItems == null))
                {
                    var styleItems = styleInfo.StyleItems ?? new List <TableStyleItemInfo>();
                    var listItems  = inputStyle.ListItems ?? new List <ListItem>();

                    if (styleItems.Count > listItems.Count)
                    {
                        isEquals = false;
                        styleItems.RemoveRange(listItems.Count, styleItems.Count - listItems.Count);
                    }

                    for (var i = 0; i < listItems.Count; i++)
                    {
                        var listItem = listItems[i];
                        if (styleItems.Count < i + 1)
                        {
                            isEquals = false;
                            styleItems.Add(new TableStyleItemInfo
                            {
                                TableStyleId = styleInfo.Id,
                                ItemTitle    = listItem.Text,
                                ItemValue    = listItem.Value,
                                IsSelected   = listItem.Selected
                            });
                        }
                        else
                        {
                            var styleItem = styleItems[i];

                            if (!StringUtils.EqualsIgnoreNull(styleItem.ItemTitle, listItem.Text))
                            {
                                isEquals            = false;
                                styleItem.ItemTitle = listItem.Text;
                            }

                            if (!StringUtils.EqualsIgnoreNull(styleItem.ItemValue, listItem.Value))
                            {
                                isEquals            = false;
                                styleItem.ItemValue = listItem.Value;
                            }

                            if (styleItem.IsSelected != listItem.Selected)
                            {
                                isEquals             = false;
                                styleItem.IsSelected = listItem.Selected;
                            }
                        }
                    }
                }

                if (isEquals)
                {
                    continue;
                }

                styleInfo.IsVisibleInList       = false;
                styleInfo.Additional.IsValidate = true;
                styleInfoList.Add(styleInfo);
            }

            foreach (var styleInfo in styleInfoList)
            {
                if (styleInfo.Id == 0)
                {
                    TableStyleManager.Insert(styleInfo);
                }
                else
                {
                    TableStyleManager.Update(styleInfo);
                    TableStyleManager.DeleteAndInsertStyleItems(styleInfo.Id, styleInfo.StyleItems);
                }
            }
        }
Esempio n. 5
0
        private bool InsertTableStyleInfo(InputType inputType)
        {
            var isChanged = false;

            var attributeNameArray = TbAttributeNames.Text.Split('\n');

            var relatedIdentity    = _relatedIdentities[0];
            var styleInfoArrayList = new ArrayList();

            foreach (var itemString in attributeNameArray)
            {
                if (string.IsNullOrEmpty(itemString))
                {
                    continue;
                }

                var attributeName = itemString;
                var displayName   = string.Empty;

                if (StringUtils.Contains(itemString, "(") && StringUtils.Contains(itemString, ")"))
                {
                    var length = itemString.IndexOf(')') - itemString.IndexOf('(');
                    if (length > 0)
                    {
                        displayName   = itemString.Substring(itemString.IndexOf('(') + 1, length);
                        attributeName = itemString.Substring(0, itemString.IndexOf('('));
                    }
                }
                attributeName = attributeName.Trim();
                displayName   = displayName.Trim(' ', '(', ')');
                if (string.IsNullOrEmpty(displayName))
                {
                    displayName = attributeName;
                }

                if (string.IsNullOrEmpty(attributeName))
                {
                    FailMessage("操作失败,字段名不能为空!");
                    return(false);
                }

                if (TableStyleManager.IsExists(relatedIdentity, _tableName, attributeName))
                {
                    FailMessage($@"显示样式添加失败:字段名""{attributeName}""已存在");
                    return(false);
                }

                var styleInfo = new TableStyleInfo(0, relatedIdentity, _tableName, attributeName, 0, displayName, string.Empty, false, inputType, TbDefaultValue.Text, TranslateUtils.ToBool(DdlIsHorizontal.SelectedValue), string.Empty);
                styleInfo.Additional.Columns = TranslateUtils.ToInt(TbColumns.Text);
                styleInfo.Additional.Height  = TranslateUtils.ToInt(TbHeight.Text);
                styleInfo.Additional.Width   = TbWidth.Text;

                if (inputType == InputType.CheckBox || inputType == InputType.Radio || inputType == InputType.SelectMultiple || inputType == InputType.SelectOne)
                {
                    styleInfo.StyleItems = new List <TableStyleItemInfo>();

                    var rapidValues = TranslateUtils.StringCollectionToStringList(TbRapidValues.Text);
                    foreach (var rapidValue in rapidValues)
                    {
                        var itemInfo = new TableStyleItemInfo(0, styleInfo.Id, rapidValue, rapidValue, false);
                        styleInfo.StyleItems.Add(itemInfo);
                    }
                }

                styleInfoArrayList.Add(styleInfo);
            }

            try
            {
                var attributeNames = new ArrayList();
                foreach (TableStyleInfo styleInfo in styleInfoArrayList)
                {
                    attributeNames.Add(styleInfo.AttributeName);
                    TableStyleManager.Insert(styleInfo);
                }


                if (SiteId > 0)
                {
                    Body.AddSiteLog(SiteId, "批量添加表单显示样式", $"字段名: {TranslateUtils.ObjectCollectionToString(attributeNames)}");
                }
                else
                {
                    Body.AddAdminLog("批量添加表单显示样式", $"字段名: {TranslateUtils.ObjectCollectionToString(attributeNames)}");
                }

                isChanged = true;
            }
            catch (Exception ex)
            {
                FailMessage(ex, "显示样式添加失败:" + ex.Message);
            }

            return(isChanged);
        }
Esempio n. 6
0
        public void ImportTableStyles(int siteId)
        {
            if (!DirectoryUtils.IsDirectoryExists(_directoryPath))
            {
                return;
            }

            var importObject        = new ImportObject(siteId);
            var tableNameCollection = importObject.GetTableNameCache();

            var styleDirectoryPaths = DirectoryUtils.GetDirectoryPaths(_directoryPath);

            foreach (var styleDirectoryPath in styleDirectoryPaths)
            {
                var tableName = PathUtils.GetDirectoryName(styleDirectoryPath);
                if (tableName == "siteserver_PublishmentSystem")
                {
                    tableName = DataProvider.SiteDao.TableName;
                }
                if (!string.IsNullOrEmpty(tableNameCollection?[tableName]))
                {
                    tableName = tableNameCollection[tableName];
                }

                var attributeNamePaths = DirectoryUtils.GetDirectoryPaths(styleDirectoryPath);
                foreach (var attributeNamePath in attributeNamePaths)
                {
                    var attributeName = PathUtils.GetDirectoryName(attributeNamePath);
                    var filePaths     = DirectoryUtils.GetFilePaths(attributeNamePath);
                    foreach (var filePath in filePaths)
                    {
                        var feed = AtomFeed.Load(FileUtils.GetFileStreamReadOnly(filePath));

                        var taxis           = TranslateUtils.ToInt(AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.Taxis)), 0);
                        var displayName     = AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.DisplayName));
                        var helpText        = AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.HelpText));
                        var isVisibleInList = TranslateUtils.ToBool(AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.IsVisibleInList)));
                        var inputType       = InputTypeUtils.GetEnumType(AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.InputType)));
                        var defaultValue    = AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.DefaultValue));
                        var isHorizontal    = TranslateUtils.ToBool(AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.IsHorizontal)));
                        var extendValues    = AtomUtility.GetDcElementContent(feed.AdditionalElements, nameof(TableStyleInfo.ExtendValues));

                        var orderString = AtomUtility.GetDcElementContent(feed.AdditionalElements, "OrderString");

                        var relatedIdentity = !string.IsNullOrEmpty(orderString) ? DataProvider.ChannelDao.GetId(siteId, orderString) : siteId;

                        if (relatedIdentity <= 0 || TableStyleManager.IsExists(relatedIdentity, tableName, attributeName))
                        {
                            continue;
                        }

                        var styleInfo = new TableStyleInfo(0, relatedIdentity, tableName, attributeName, taxis, displayName, helpText, isVisibleInList, inputType, defaultValue, isHorizontal, extendValues);

                        var styleItems = new List <TableStyleItemInfo>();
                        foreach (AtomEntry entry in feed.Entries)
                        {
                            var itemTitle  = AtomUtility.GetDcElementContent(entry.AdditionalElements, nameof(TableStyleItemInfo.ItemTitle));
                            var itemValue  = AtomUtility.GetDcElementContent(entry.AdditionalElements, nameof(TableStyleItemInfo.ItemValue));
                            var isSelected = TranslateUtils.ToBool(AtomUtility.GetDcElementContent(entry.AdditionalElements, nameof(TableStyleItemInfo.IsSelected)));

                            styleItems.Add(new TableStyleItemInfo(0, 0, itemTitle, itemValue, isSelected));
                        }

                        if (styleItems.Count > 0)
                        {
                            styleInfo.StyleItems = styleItems;
                        }

                        TableStyleManager.Insert(styleInfo);
                    }
                }
            }
        }
        private bool InsertTableStyleInfo(EInputType inputType)
        {
            var isChanged = false;

            var attributeNameArray = AttributeNames.Text.Split('\n');

            var relatedIdentity    = (int)_relatedIdentities[0];
            var styleInfoArrayList = new ArrayList();

            foreach (var itemString in attributeNameArray)
            {
                if (!string.IsNullOrEmpty(itemString))
                {
                    var attributeName = itemString;
                    var displayName   = string.Empty;

                    if (StringUtils.Contains(itemString, "(") && StringUtils.Contains(itemString, ")"))
                    {
                        var length = itemString.IndexOf(')') - itemString.IndexOf('(');
                        if (length > 0)
                        {
                            displayName   = itemString.Substring(itemString.IndexOf('(') + 1, length);
                            attributeName = itemString.Substring(0, itemString.IndexOf('('));
                        }
                    }
                    attributeName = attributeName.Trim();
                    displayName   = displayName.Trim(' ', '(', ')');
                    if (string.IsNullOrEmpty(displayName))
                    {
                        displayName = attributeName;
                    }

                    if (TableStyleManager.IsExists(relatedIdentity, _tableName, attributeName) || TableStyleManager.IsExistsInParents(_relatedIdentities, _tableName, attributeName))
                    {
                        FailMessage($@"显示样式添加失败:字段名""{attributeName}""已存在");
                        return(false);
                    }

                    var styleInfo = new TableStyleInfo(0, relatedIdentity, _tableName, attributeName, 0, displayName, string.Empty, TranslateUtils.ToBool(IsVisible.SelectedValue), false, TranslateUtils.ToBool(IsSingleLine.SelectedValue), EInputTypeUtils.GetValue(inputType), DefaultValue.Text, TranslateUtils.ToBool(IsHorizontal.SelectedValue), string.Empty);
                    styleInfo.Additional.Columns = TranslateUtils.ToInt(Columns.Text);
                    styleInfo.Additional.Height  = TranslateUtils.ToInt(Height.Text);
                    styleInfo.Additional.Width   = Width.Text;

                    if (inputType == EInputType.CheckBox || inputType == EInputType.Radio || inputType == EInputType.SelectMultiple || inputType == EInputType.SelectOne)
                    {
                        styleInfo.StyleItems = new List <TableStyleItemInfo>();

                        var isHasSelected = false;
                        foreach (RepeaterItem item in MyRepeater.Items)
                        {
                            var ItemTitle  = (TextBox)item.FindControl("ItemTitle");
                            var ItemValue  = (TextBox)item.FindControl("ItemValue");
                            var IsSelected = (CheckBox)item.FindControl("IsSelected");

                            if ((inputType != EInputType.SelectMultiple && inputType != EInputType.CheckBox) && isHasSelected && IsSelected.Checked)
                            {
                                FailMessage("操作失败,只能有一个初始化时选定项!");
                                return(false);
                            }
                            if (IsSelected.Checked)
                            {
                                isHasSelected = true;
                            }

                            var itemInfo = new TableStyleItemInfo(0, 0, ItemTitle.Text, ItemValue.Text, IsSelected.Checked);
                            styleInfo.StyleItems.Add(itemInfo);
                        }
                    }

                    styleInfoArrayList.Add(styleInfo);
                }
            }

            try
            {
                var attributeNames = new ArrayList();
                foreach (TableStyleInfo styleInfo in styleInfoArrayList)
                {
                    attributeNames.Add(styleInfo.AttributeName);
                    TableStyleManager.Insert(styleInfo, _tableStyle);
                }
                Body.AddSiteLog(PublishmentSystemId, "批量添加表单显示样式", $"类型:{ETableStyleUtils.GetText(_tableStyle)},字段名: {TranslateUtils.ObjectCollectionToString(attributeNames)}");
                isChanged = true;
            }
            catch (Exception ex)
            {
                FailMessage(ex, "显示样式添加失败:" + ex.Message);
            }

            return(isChanged);
        }
Esempio n. 8
0
        private bool InsertTableStyleInfo(EInputType inputType)
        {
            var isChanged = false;

            var relatedIdentity = _relatedIdentities[0];

            if (TableStyleManager.IsExists(relatedIdentity, _tableName, TbAttributeName.Text))
            //|| TableStyleManager.IsExistsInParents(this.relatedIdentities, this.tableName, this.tbAttributeName.Text)
            {
                FailMessage($@"显示样式添加失败:字段名""{TbAttributeName.Text}""已存在");
                return(false);
            }

            _styleInfo = TableStyleManager.IsMetadata(_tableStyle, TbAttributeName.Text) ? TableStyleManager.GetTableStyleInfo(_tableStyle, _tableName, TbAttributeName.Text, _relatedIdentities) : new TableStyleInfo();

            _styleInfo.RelatedIdentity = relatedIdentity;
            _styleInfo.TableName       = _tableName;
            _styleInfo.AttributeName   = TbAttributeName.Text;
            _styleInfo.DisplayName     = PageUtils.FilterXss(TbDisplayName.Text);
            _styleInfo.HelpText        = TbHelpText.Text;
            _styleInfo.IsVisible       = TranslateUtils.ToBool(RblIsVisible.SelectedValue);
            _styleInfo.IsSingleLine    = TranslateUtils.ToBool(RblIsSingleLine.SelectedValue);
            _styleInfo.InputType       = EInputTypeUtils.GetValue(inputType);
            _styleInfo.DefaultValue    = TbDefaultValue.Text;
            _styleInfo.IsHorizontal    = TranslateUtils.ToBool(DdlIsHorizontal.SelectedValue);

            _styleInfo.Additional.Columns           = TranslateUtils.ToInt(TbColumns.Text);
            _styleInfo.Additional.Height            = TranslateUtils.ToInt(TbHeight.Text);
            _styleInfo.Additional.Width             = TbWidth.Text;
            _styleInfo.Additional.IsFormatString    = TranslateUtils.ToBool(RblIsFormatString.SelectedValue);
            _styleInfo.Additional.RelatedFieldId    = TranslateUtils.ToInt(DdlRelatedFieldId.SelectedValue);
            _styleInfo.Additional.RelatedFieldStyle = DdlRelatedFieldStyle.SelectedValue;

            if (inputType == EInputType.CheckBox || inputType == EInputType.Radio || inputType == EInputType.SelectMultiple || inputType == EInputType.SelectOne)
            {
                _styleInfo.StyleItems = new List <TableStyleItemInfo>();

                var isRapid = TranslateUtils.ToBool(DdlItemType.SelectedValue);
                if (isRapid)
                {
                    var itemArrayList = TranslateUtils.StringCollectionToStringList(TbItemValues.Text);
                    foreach (string itemValue in itemArrayList)
                    {
                        var itemInfo = new TableStyleItemInfo(0, _styleInfo.TableStyleId, itemValue, itemValue, false);
                        _styleInfo.StyleItems.Add(itemInfo);
                    }
                }
                else
                {
                    var isHasSelected = false;
                    foreach (RepeaterItem item in RptItems.Items)
                    {
                        var itemTitle  = (TextBox)item.FindControl("ItemTitle");
                        var itemValue  = (TextBox)item.FindControl("ItemValue");
                        var isSelected = (CheckBox)item.FindControl("IsSelected");

                        if (inputType != EInputType.SelectMultiple && inputType != EInputType.CheckBox && isHasSelected && isSelected.Checked)
                        {
                            FailMessage("操作失败,只能有一个初始化时选定项!");
                            return(false);
                        }
                        if (isSelected.Checked)
                        {
                            isHasSelected = true;
                        }

                        var itemInfo = new TableStyleItemInfo(0, 0, itemTitle.Text, itemValue.Text, isSelected.Checked);
                        _styleInfo.StyleItems.Add(itemInfo);
                    }
                }
            }

            try
            {
                TableStyleManager.Insert(_styleInfo, _tableStyle);
                Body.AddSiteLog(PublishmentSystemId, "添加表单显示样式", $"类型:{ETableStyleUtils.GetText(_tableStyle)},字段名:{_styleInfo.AttributeName}");
                isChanged = true;
            }
            catch (Exception ex)
            {
                FailMessage(ex, "显示样式添加失败:" + ex.Message);
            }
            return(isChanged);
        }
Esempio n. 9
0
        public override void Submit_OnClick(object sender, EventArgs e)
        {
            var displayAttributes = ControlUtils.SelectedItemsValueToStringCollection(DisplayAttributeCheckBoxList.Items);

            if (_tableStyle == ETableStyle.Channel)
            {
                if (!_isList)
                {
                    if (DisplayAttributeCheckBoxList.Items.Count == 0)
                    {
                        FailMessage("必须至少选择一项!");
                        return;
                    }
                    PublishmentSystemInfo.Additional.ChannelEditAttributes = displayAttributes;

                    Body.AddSiteLog(PublishmentSystemId, "设置栏目编辑项", $"编辑项:{displayAttributes}");
                }
                else
                {
                    if (!CompareUtils.Contains(displayAttributes, NodeAttribute.ChannelName))
                    {
                        FailMessage("必须选择栏目名称项!");
                        return;
                    }
                    if (!CompareUtils.Contains(displayAttributes, NodeAttribute.ChannelIndex))
                    {
                        FailMessage("必须选择栏目索引项!");
                        return;
                    }
                    PublishmentSystemInfo.Additional.ChannelDisplayAttributes = displayAttributes;

                    Body.AddSiteLog(PublishmentSystemId, "设置栏目显示项", $"显示项:{displayAttributes}");
                }
                DataProvider.PublishmentSystemDao.Update(PublishmentSystemInfo);
            }
            else if (ETableStyleUtils.IsContent(_tableStyle))
            {
                var nodeInfo            = NodeManager.GetNodeInfo(PublishmentSystemId, _relatedIdentity);
                var attributesOfDisplay = ControlUtils.SelectedItemsValueToStringCollection(DisplayAttributeCheckBoxList.Items);
                nodeInfo.Additional.ContentAttributesOfDisplay = attributesOfDisplay;

                DataProvider.NodeDao.UpdateNodeInfo(nodeInfo);

                Body.AddSiteLog(PublishmentSystemId, "设置内容显示项", $"显示项:{attributesOfDisplay}");
            }
            else if (_tableStyle == ETableStyle.InputContent)
            {
                var inputInfo = DataProvider.InputDao.GetInputInfo(_relatedIdentity);

                var styleInfoList  = TableStyleManager.GetTableStyleInfoList(_tableStyle, DataProvider.InputContentDao.TableName, _relatedIdentities);
                var selectedValues = ControlUtils.GetSelectedListControlValueArrayList(DisplayAttributeCheckBoxList);

                foreach (var styleInfo in styleInfoList)
                {
                    if (_isList)
                    {
                        styleInfo.IsVisibleInList = selectedValues.Contains(styleInfo.AttributeName);
                    }
                    else
                    {
                        styleInfo.IsVisible = selectedValues.Contains(styleInfo.AttributeName);
                    }
                    styleInfo.RelatedIdentity = _relatedIdentity;

                    if (styleInfo.TableStyleId == 0)
                    {
                        TableStyleManager.Insert(styleInfo, _tableStyle);
                    }
                    else
                    {
                        TableStyleManager.Update(styleInfo);
                    }
                }


                if (_isList)
                {
                    Body.AddSiteLog(PublishmentSystemId, "设置提交表单显示项",
                                    $"表单名称:{inputInfo.InputName},显示项:{TranslateUtils.ObjectCollectionToString(selectedValues)}");
                }
                else
                {
                    Body.AddSiteLog(PublishmentSystemId, "设置提交表单编辑项",
                                    $"表单名称:{inputInfo.InputName},编辑项:{TranslateUtils.ObjectCollectionToString(selectedValues)}");
                }
            }

            if (!_isList)
            {
                PageUtils.CloseModalPageWithoutRefresh(Page);
            }
            else
            {
                PageUtils.CloseModalPage(Page);
            }
        }
Esempio n. 10
0
        private bool InsertTableStyleInfo(InputType inputType)
        {
            var isChanged = false;

            var relatedIdentity = _relatedIdentities[0];

            if (string.IsNullOrEmpty(TbAttributeName.Text))
            {
                FailMessage("操作失败,字段名不能为空!");
                return(false);
            }

            if (TableStyleManager.IsExists(relatedIdentity, _tableName, TbAttributeName.Text))
            {
                FailMessage($@"显示样式添加失败:字段名""{TbAttributeName.Text}""已存在");
                return(false);
            }

            _styleInfo = DataProvider.TableMetadataDao.IsExists(_tableName, TbAttributeName.Text) ? TableStyleManager.GetTableStyleInfo(_tableName, TbAttributeName.Text, _relatedIdentities) : new TableStyleInfo();

            _styleInfo.RelatedIdentity = relatedIdentity;
            _styleInfo.TableName       = _tableName;
            _styleInfo.AttributeName   = TbAttributeName.Text;
            _styleInfo.DisplayName     = PageUtils.FilterXss(TbDisplayName.Text);
            _styleInfo.HelpText        = TbHelpText.Text;
            _styleInfo.Taxis           = TranslateUtils.ToInt(TbTaxis.Text);
            _styleInfo.InputType       = inputType;
            _styleInfo.DefaultValue    = TbDefaultValue.Text;
            _styleInfo.IsHorizontal    = TranslateUtils.ToBool(DdlIsHorizontal.SelectedValue);

            _styleInfo.Additional.Columns           = TranslateUtils.ToInt(TbColumns.Text);
            _styleInfo.Additional.Height            = TranslateUtils.ToInt(TbHeight.Text);
            _styleInfo.Additional.Width             = TbWidth.Text;
            _styleInfo.Additional.IsFormatString    = TranslateUtils.ToBool(DdlIsFormatString.SelectedValue);
            _styleInfo.Additional.RelatedFieldId    = TranslateUtils.ToInt(DdlRelatedFieldId.SelectedValue);
            _styleInfo.Additional.RelatedFieldStyle = DdlRelatedFieldStyle.SelectedValue;
            _styleInfo.Additional.CustomizeLeft     = TbCustomizeLeft.Text;
            _styleInfo.Additional.CustomizeRight    = TbCustomizeRight.Text;

            if (inputType == InputType.CheckBox || inputType == InputType.Radio || inputType == InputType.SelectMultiple || inputType == InputType.SelectOne)
            {
                _styleInfo.StyleItems = new List <TableStyleItemInfo>();

                var isRapid = TranslateUtils.ToBool(DdlIsRapid.SelectedValue);
                if (isRapid)
                {
                    var rapidValues = TranslateUtils.StringCollectionToStringList(TbRapidValues.Text);
                    foreach (var rapidValue in rapidValues)
                    {
                        var itemInfo = new TableStyleItemInfo(0, _styleInfo.Id, rapidValue, rapidValue, false);
                        _styleInfo.StyleItems.Add(itemInfo);
                    }
                }
                else
                {
                    var isHasSelected = false;
                    foreach (RepeaterItem item in RptItems.Items)
                    {
                        var tbTitle      = (TextBox)item.FindControl("tbTitle");
                        var tbValue      = (TextBox)item.FindControl("tbValue");
                        var cbIsSelected = (CheckBox)item.FindControl("cbIsSelected");

                        if (inputType != InputType.SelectMultiple && inputType != InputType.CheckBox && isHasSelected && cbIsSelected.Checked)
                        {
                            FailMessage("操作失败,只能有一个初始化时选定项!");
                            return(false);
                        }
                        if (cbIsSelected.Checked)
                        {
                            isHasSelected = true;
                        }

                        var itemInfo = new TableStyleItemInfo(0, 0, tbTitle.Text, tbValue.Text, cbIsSelected.Checked);
                        _styleInfo.StyleItems.Add(itemInfo);
                    }
                }
            }

            try
            {
                TableStyleManager.Insert(_styleInfo);

                if (SiteId > 0)
                {
                    AuthRequest.AddSiteLog(SiteId, "添加表单显示样式", $"字段名:{_styleInfo.AttributeName}");
                }
                else
                {
                    AuthRequest.AddAdminLog("添加表单显示样式", $"字段名:{_styleInfo.AttributeName}");
                }

                isChanged = true;
            }
            catch (Exception ex)
            {
                FailMessage(ex, "显示样式添加失败:" + ex.Message);
            }
            return(isChanged);
        }