CRM中如何设计用户自定义视图模块

sucanber 发布于 2020/03/19 07:17
阅读 186
收藏 0

现在要做一个系统,要求有一个用户视图管理模块。

1.  管理员在后台为每个角色定义视图(包含哪些字段),前期也可在DB预配置好

2. 普通用户进入系统后先从后端拉取一个自己所拥有的一个视图结构 request1,返回字段列表fields和显示的名字displayName

3. 前端发起视图数据请求 request2, 后端返回视图数据,前端拿到数据后按照request1的布局渲染(每个字段的列叫什么,每列所在位置等)

4. 视图要支持按不同字段查询(最基本的要支持等于/不等于/LIKE/, 还要能组合and/ or ,最好还能传order字段),也支持分页

我们目前技术站为springBoot + JPA,前后端分离。

请问怎样设计比较好满足这样灵活的视图需求?特别是多字段带条查询,特别是如果一个视图内需要连表查询情况。

想想挺复杂的。这2个请求request1/request2的参数设计等。

有没有人有类似经验或者好的想法 谢谢!

 

 

 

 

 

 

 

加载中
0
Daniel.Yee
Daniel.Yee

这个需求归纳一下,就是对于同一组数据,不同的用户看到不同的界面呈现。

分解下需求,有两种实现方案,一种是前端做,一种是后端做

前端做,那么后端返回的数据是标准的,可以一个简单接口搞定,前端根据用户的不同自定义,进行不同的数据呈现

后端做,那么后端就组织好不同的数据结构,这样接口的定义可能会复杂,需要一定的灵活性。返回结果可能是一个不确定列的二维表,前后端要制定一个标准来解析这块数据。同时,如果涉及到界面上的自定义,前端一样还是有任务要处理

 

关于模糊查询,建议在做之前做好规划,对于数据库来说,like的性能相对是很差的,有的时候牺牲一些带宽和io来规避like是值得的,或者使用前端的缓存进行本地过滤

0
猿梦IT
猿梦IT

我觉得这个可以用一个json对象存储每个角色或者用户的视图,这样扩展也方便。另外再加一些查询关键字。

0
sucanber
sucanber

有没有些具体的格式定义 或现有系统实现参考的呢

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部