![657dfff8863d51d1d8083eac09701744.png](https://img-blog.csdnimg.cn/img_convert/657dfff8863d51d1d8083eac09701744.png)
总述
产品的价值在于提高效率,B端的产品就是要实实在在的挺高客户指定场景下的工作效率。作为一个产品人,我不禁想到了平时给开发同学们交付的需求中很多页面的表格,这让我不禁思考,能不能做一个通用的表格页面,通过配置来代替开发呢?
说干就干,首先明确我要做什么?做一个通用的表格页面。需求的场景是什么?产品经理需要提出一个包含表格的需求时,开发同学会有大量的重复劳动,特别是后台包含大量表格的设计。解决什么问题?减少开发同学的开发量,为产品同学新想法提供快速验证的机会。
![fa5701ff64a751d9405009d34bc4e97b.png](https://img-blog.csdnimg.cn/img_convert/fa5701ff64a751d9405009d34bc4e97b.png)
如上图展示,一个简单的表格页面可以简单3个部分,页面标题,索引区,数据区。索引区用于搜索、筛选数据。根据以上的分析,基本需求清单如下:配置页面基本信息,配置表格信息,配置索引信息和选中需要配置的页面。操作流程如下:
![c4932d77329d06effeb02545d17627e5.png](https://img-blog.csdnimg.cn/img_convert/c4932d77329d06effeb02545d17627e5.png)
1、选择需要配置的页面
就是定位需要编辑处理的页面,这个部分是具体操作的关键路径,不是本次需求的重点。本次设计中,菜单结构分为二级,一级是目录不涉及具体页面,二级菜单是本次需求需要选中的页面。页面包含的功能如下:编辑二级页面(重点),创建二级页面(重点),编辑一级页面标题和创建一级页面。
![d7b739023b6fe1363c9e086793e940b8.png](https://img-blog.csdnimg.cn/img_convert/d7b739023b6fe1363c9e086793e940b8.png)
2、配置数据来源
用于选定页面中数据的来源。在页面中由页面基本配置模块来承担,模块包含的功能如下:设置页面标题,设置主表,设置从表和外键,添加数据表,保存和关闭按钮。此部分的核心是设置表之间的关联,设定一个主表后通过外键将主从表连接,达到同一页面展示多张表的目的。保存时需要进行信息校验。
校验内容:a、页面标题在系统中唯一;b、所有表的名称在本页面唯一;c、所有表在数据库中都存在;d、所有的外键都在主表中存在。如有内容不存在应不允许保存。
![94f3f9905a79e148cace683cce93f238.png](https://img-blog.csdnimg.cn/img_convert/94f3f9905a79e148cace683cce93f238.png)
3、设置数据展示
用于在选定数据表后,选择在页面展示什么字段。这个部分包含的功能有,查看并对字段进行分类,增加字段,删除字段,默认排序,排序控制和保存。模块中将数据分为两组,选中展示的和不展示的,在选中表格后默认都展示。需要展示字段所在表和表中名称,可编辑页面名称和排序情况。
4、配置数据索引
在选定的页面中,已经选择了相应的数据,对指定数据来说有搜索或是筛选的需求。这部分需要根据已有的数据字段,选择进行搜索或是进行筛选。搜索可以分为精确搜索和模糊搜索,筛选可以分为单选和多选。
还有什么?
以上一个基本的表格就设计完成了,但是这个版本设计的非常基础。比如:
1、选择菜单的页面可以更加强大,文章中只是设计了菜单的增加和编辑,实际场景中应该有菜单的排序删除等相关功能,必要的话可以有权限设置。
2、配置数据源本次使用填写的方式进行,可使用选择的方式进行。减少校验。
3、选择数据字段时,允许对数据进行操作,如存储字段0,1映射为是,否;如对百分比进行展示。
4、增加对数据字段、搜索的排序相关功能。
最后
产品是为了提升效率,这个小需求的设计初衷是在一定程度上减少开发同学的开发量,可以快速配置一些页面。必须要说的是,如果有了这个页面产品同学应避免随意添加页面,控制系统页面数量和功能。分析业务并对其抽象才是产品同学应该做的。
本需求只涉及表格,未来可以还有图表相关需求,可以把这个需求当页面中的一个模块。