示例#1
0
        /// <summary>
        /// 初始化共享实例
        /// </summary>
        public void InitShare(TagHelperContext context)
        {
            var shareConfig = new TableShareConfig(GetId(context));

            InitShareConfig(context, shareConfig);
            context.SetValueToItems(shareConfig);
        }
示例#2
0
        public void TestEdit_DoubleClickStartEdit()
        {
            var attributes = new TagHelperAttributeList {
                { UiConst.DoubleClickStartEdit, false }
            };
            var shareConfig = new TableShareConfig("m_id")
            {
                IsEdit = true
            };
            var items = new Dictionary <object, object> {
                { typeof(TableShareConfig), shareConfig }
            };
            var result = new String();

            result.Append("<nz-table-wrapper #m_id_edit=\"utilEditTable\" #m_id_wrapper=\"\" x-edit-table=\"\" [dblClickStartEdit]=\"false\">");
            result.Append("<nz-table #m_id=\"\" (nzPageIndexChange)=\"m_id_wrapper.pageIndexChange($event)\" (nzPageSizeChange)=\"m_id_wrapper.pageSizeChange($event)\" ");
            result.Append("[(nzPageIndex)]=\"m_id_wrapper.queryParam.page\" [(nzPageSize)]=\"m_id_wrapper.queryParam.pageSize\" ");
            result.Append("[nzData]=\"m_id_wrapper.dataSource\" [nzFrontPagination]=\"false\" ");
            result.Append("[nzLoading]=\"m_id_wrapper.loading\" [nzShowPagination]=\"m_id_wrapper.showPagination\" ");
            result.Append("[nzShowQuickJumper]=\"true\" [nzShowSizeChanger]=\"true\" ");
            result.Append("[nzShowTotal]=\"template_m_id\" [nzTotal]=\"m_id_wrapper.totalCount\">");
            result.Append("<tbody>");
            result.Append("<tr #m_id_row=\"utilEditRow\" (click)=\"m_id_edit.clickEdit(row.id,m_id_row)\" (dblclick)=\"m_id_edit.dblClickEdit(row.id,m_id_row)\" ");
            result.Append("*ngFor=\"let row of m_id.data\" x-edit-row=\"\">");
            result.Append("</tr>");
            result.Append("</tbody>");
            result.Append("</nz-table>");
            result.Append("<ng-template #template_m_id=\"\" let-range=\"range\" let-total=\"\">");
            result.Append(TableConfig.TotalTemplate);
            result.Append("</ng-template>");
            result.Append("</nz-table-wrapper>");
            Assert.Equal(result.ToString(), GetResult(attributes, items: items));
        }
示例#3
0
 /// <summary>
 /// 添加复选框配置
 /// </summary>
 private void AddCheckbox(TableShareConfig config)
 {
     if (_config.GetValue <TableColumnType?>(UiConst.Type) != TableColumnType.Checkbox)
     {
         return;
     }
     config.AutoCreateHeadCheckbox = true;
 }
 /// <summary>
 /// 初始化列共享配置
 /// </summary>
 /// <param name="tableShareConfig">表格共享配置</param>
 /// <param name="column">列名</param>
 public ColumnShareConfig(TableShareConfig tableShareConfig, string column)
 {
     TableId         = tableShareConfig?.TableId;
     EditTableId     = tableShareConfig?.EditTableId;
     RowId           = tableShareConfig?.RowId;
     Column          = column;
     IsCreateDisplay = true;
     IsCreateControl = true;
 }
示例#5
0
 /// <summary>
 /// 配置行单击事件
 /// </summary>
 private void ConfigOnClick(RowBuilder builder, TableShareConfig config)
 {
     if (_config.Contains(UiConst.OnClick))
     {
         builder.AddAttribute("(click)", _config.GetValue(UiConst.OnClick));
         return;
     }
     builder.AddAttribute("(click)", config?.OnClickRow);
 }
示例#6
0
 /// <summary>
 /// 设置自动创建排序列
 /// </summary>
 private void SetAutoCreateSort(TableShareConfig config)
 {
     if (_config.GetValueFromAttributes <string>(UiConst.Sort).IsEmpty())
     {
         return;
     }
     config.AutoCreateSort = false;
     config.IsSort         = true;
 }
        /// <summary>
        /// 设置表格共享配置
        /// </summary>
        private void SetTableShareConfig(TableShareConfig config, string column)
        {
            if (config == null)
            {
                return;
            }
            var type = _config.Context.GetValueFromAttributes <TableColumnType?>(UiConst.Type);

            AddColumn(config, type, column);
        }
示例#8
0
        /// <summary>
        /// 添加标题配置
        /// </summary>
        private void AddTitle(TableShareConfig config)
        {
            if (_config.Context.GetValueFromAttributes <TableColumnType?>(UiConst.Type) == TableColumnType.Checkbox)
            {
                return;
            }
            var title = _config.GetValue <string>(UiConst.Title);

            config?.Titles.Add(title);
        }
示例#9
0
        /// <summary>
        /// 初始化共享实例
        /// </summary>
        public void InitShare(TagHelperContext context)
        {
            var shareConfig = context.GetValueFromItems <TableShareConfig>();

            if (shareConfig == null)
            {
                shareConfig = new TableShareConfig(GetId(context));
                context.SetValueToItems(shareConfig);
            }
            InitShareConfig(context, shareConfig);
        }
示例#10
0
 /// <summary>
 /// 添加行编辑属性
 /// </summary>
 private void ConfigEdit(RowBuilder builder, TableShareConfig config)
 {
     if (config == null)
     {
         return;
     }
     if (config.IsEdit == false)
     {
         return;
     }
     builder.ConfigEdit(config.EditTableId, config.RowId);
 }
示例#11
0
        /// <summary>
        /// 添加列配置
        /// </summary>
        private void AddColumn(TableShareConfig config)
        {
            var title  = GetTitle();
            var column = _config.GetValue(UiConst.Column);
            var isSort = _config.GetValue <bool>(UiConst.Sort);

            if (isSort)
            {
                config.IsSort = true;
            }
            var isCheckbox = _config.Context.GetValueFromAttributes <TableColumnType?>(UiConst.Type) == TableColumnType.Checkbox;

            config.Columns.Add(new ColumnInfo(title, column, isSort, isCheckbox));
        }
        public void TestAutoCreateHeadRow_False()
        {
            var config = new TableShareConfig(null)
            {
                AutoCreateHeadRow = false
            };
            var items = new Dictionary <object, object> {
                { typeof(TableShareConfig), config }
            };
            var result = new String();

            result.Append("<thead>");
            result.Append("</thead>");
            Assert.Equal(result.ToString(), GetResult(items: items));
        }
        /// <summary>
        /// 配置编辑模式
        /// </summary>
        private void ConfigEdit(TableShareConfig tableShareConfig, ColumnShareConfig columnShareConfig)
        {
            var isEdit = _config.GetValue <bool>(UiConst.IsEdit);

            if (!isEdit)
            {
                return;
            }
            columnShareConfig.IsEdit = true;
            if (tableShareConfig == null)
            {
                return;
            }
            tableShareConfig.IsEdit = true;
        }
示例#14
0
        /// <summary>
        /// 添加列配置
        /// </summary>
        private void AddColumn(TableShareConfig config)
        {
            var title  = GetTitle();
            var column = _config.GetValue(UiConst.Column);
            var isSort = _config.GetValue <bool>(UiConst.Sort);

            if (isSort)
            {
                config.IsSort = true;
            }
            config.Columns.Add(new ColumnInfo(title, column)
            {
                IsSort = isSort,
                Width  = GetWidth()
            });
        }
示例#15
0
        /// <summary>
        /// 添加列配置
        /// </summary>
        private void AddColumn(TableShareConfig config)
        {
            if (_config.Context.GetValueFromAttributes <TableColumnType?>(UiConst.Type) == TableColumnType.Checkbox)
            {
                return;
            }
            var title  = _config.GetValue <string>(UiConst.Title);
            var column = _config.GetValue <string>(UiConst.Column);
            var isSort = _config.GetValue <bool>(UiConst.Sort);

            if (isSort)
            {
                config.IsSort = true;
            }
            config?.Columns.Add(new ColumnInfo(title, column, isSort));
        }
        /// <summary>
        /// 添加列配置
        /// </summary>
        private void AddColumn(TableShareConfig config, TableColumnType?type, string column)
        {
            var title  = GetTitle(type);
            var isSort = _config.GetValue <bool>(UiConst.Sort);

            if (isSort)
            {
                config.IsSort = true;
            }
            config.Columns.Add(new ColumnInfo(title, column)
            {
                IsSort       = isSort,
                IsCheckbox   = type == TableColumnType.Checkbox,
                IsLineNumber = type == TableColumnType.LineNumber,
                Width        = GetWidth(type)
            });
        }
示例#17
0
 /// <summary>
 /// 初始化共享配置
 /// </summary>
 protected virtual void InitShareConfig(TagHelperContext context, TableShareConfig config)
 {
     config.OnClickRow = context.GetValueFromAttributes <string>(UiConst.OnClickRow);
 }
示例#18
0
 /// <summary>
 /// 初始化树形表格列渲染器
 /// </summary>
 /// <param name="config">配置</param>
 public ColumnRender(Config config) : base(config)
 {
     _config      = config;
     _shareConfig = _config.Context.GetValueFromItems <TableShareConfig>(TableConfig.TableShareKey);
 }
示例#19
0
 /// <summary>
 /// 初始化共享配置
 /// </summary>
 protected virtual void InitShareConfig(TagHelperContext context, TableShareConfig config)
 {
 }
示例#20
0
 /// <summary>
 /// 配置事件
 /// </summary>
 private void ConfigEvents(RowBuilder builder, TableShareConfig config)
 {
     ConfigOnClick(builder, config);
 }