CN108228171A - 一种基于树形结构的项目树查询和显示方法 - Google Patents
一种基于树形结构的项目树查询和显示方法 Download PDFInfo
- Publication number
- CN108228171A CN108228171A CN201711487508.9A CN201711487508A CN108228171A CN 108228171 A CN108228171 A CN 108228171A CN 201711487508 A CN201711487508 A CN 201711487508A CN 108228171 A CN108228171 A CN 108228171A
- Authority
- CN
- China
- Prior art keywords
- node
- tree
- div
- project
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Human Computer Interaction (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种基于树形结构的项目树查询和显示方法,包括:利用路径枚举方式获取项目树中各个节点对象的完整路径信息,并为项目树中每一层级中的各个对象赋予唯一对应的编号;根据用户输入的编号,将搜索定位在所述编号对应的节点对象,同时获取并反馈项目树中从根节点到该节点对象的路径信息,并进入展示页面;采用HTML5+CSS3技术对展示页面划分为左侧DIV和右侧DIV,所述左侧DIV以树形结构展示用户查询的节点对象及其祖先节点对象;所述右侧DIV以表格形式展示用户查询的节点对象相关的加工内容。本发明实用性强,采用本发明进行项目树查询和显示时,用户体验好。
Description
技术领域
本发明涉及模具制造控制技术领域,具体涉及一种基于树形结构的项目树查询和显示方法。
背景技术
模具行业在应用ERP、MES等生产管理类软件时,在组建项目或物料数据等信息时,需要通过树形结构来搭建数据,这样可以把一个主题下所对应的每个分支编写的更完善。相关页面的信息搜索上,需要逐层展开来实现检索,层级设置的越详细,对应的查找需要更精细。针对树形结构的现状,提出一种快捷查询和显示方式来解决当前所面临的问题。
目前MES制造执行系统的树形结构采用传统的处理方式,在查询便利上缺乏考虑。
传统的树形结构主要有两种:
1)邻接表:依赖父节点,每多查一层,就需要多联结一次表,SQL查询的联结次数是有限的,因此不能无限深的获取所有的后代;这种这样联结,执行Count()这样的聚合函数也相当困难;如果要删除一个中间节点,必须先查找到所有的后代,先将其删除,然后才能删除该中间节点。
2)嵌套集:查询直接父节点很困难;对树进行操作,比如插入和移动节点,比较困难,当插入一个节点时,你需要重新计算新插入节点的相邻兄弟节点、父节点及以上,来确保它们的左右值都比这个新节点的左值大。
而且以上两种树形结构创建和查询方法单一、繁琐,无法让用户快速获取想要的信息,虽然形式创建规范、合理,但实用性差,用户体验不好。
发明内容
本发明针对现有技术中存在的技术问题,提供一种实用性强、用户体验好的基于树形结构的查询和显示方法。
本发明解决上述技术问题的技术方案如下:一种基于树形结构的项目树查询和显示方法,包括以下步骤:
步骤1,利用路径枚举方式获取项目树中各个节点对象的完整路径信息,并为项目树中每一层级中的各个对象赋予唯一对应的编号;
步骤2,根据用户输入的编号,将搜索定位在所述编号对应的节点对象,同时获取并反馈项目树中从根节点到该节点对象的路径信息,并进入展示页面;
步骤3,采用HTML5+CSS3技术对展示页面划分为左侧DIV和右侧DIV,所述左侧DIV以树形结构展示用户查询的节点对象及其祖先节点对象;所述右侧DIV以表格形式展示用户查询的节点对象相关的加工内容。
进一步,所述项目树中包括根节点-项目节点、枝干节点-产品节点和叶子节点-模具节点,所述项目节点、产品节点和模具节点分别对应唯一的项目编号、产品编号和模具编号。
进一步,所述步骤2包括:
当用户输入项目编号时,将搜索定位在项目名称;
当用户输入产品编号时,将搜索定位在项目名称-产品名称;
当用户输入模具编号时,将搜索定位在项目名称-产品名称-模具名称;
同时获取并反馈用户搜索结果的路径信息以及用户搜索对象所在层级的其他节点信息。
进一步,所述步骤3还包括:
运用CSS选择器对左侧DIV的点击采用animate的动画方式设置CSS样式,以实现左侧DIV的悬浮、透明、放大展开的动作;
所述左侧DIV缺省宽度为展示页面宽度的20%,右侧DIV缺省宽度为展示页面宽度的80%,
当系统进入展示页面,左侧DIV延迟1秒展开,展开缺省宽度为展示页面宽度的20%,此时判断展示页面中当前树结构展开的数据长度,若树结构中的最长数据占比超过展示页面宽度的40%,则以树结构中的最长数据占比的比例来调整左侧页面的宽度;展开后,左侧DIV超过展示页面宽度20%的部分,以悬浮方式显示在右侧DIV之上,透明度为0.4,右侧DIV保持不变。
本发明的有益效果是:采用路径枚举方式,获取项目树中各个节点对象的完整路径信息,并为项目树中每一层级中的各个对象赋予唯一对应的编号的优势在于,递归层级展示,可以快速查询全部父节点、子节点;一旦我们可以很简单地获取一个子树或者从子孙节点到祖先节点的路径,就可以很简单地实现更多查询,比如计算一个字数所有节点的数量;插入一个节点也可以像和使用邻接表一样地简单,可以插入一个叶子节点而不用修改任何其他的行。表结构内部没有硬性关联,查询效率更快;路径枚举的设计方式能够很方便地根据节点层级排序,因路径中分隔两边的节点间的距离永远是1,通过比较字符串长度就能知道层级的深浅。
树节点在显示数据时,能根据检索信息精准到具体子节点;树节点页面数据过长,当覆盖页面内容时,以透明色展示,不影响页面数据显示,同时增加了树节点的显示宽度;树节点横向数据过长时,不会出现滚动条,宽度会自适应调整,避免由于树节点字段长短不一致而导致反复拖动滚动条。
附图说明
图1为本发明实施例提供的一种基于树形结构的项目树查询和显示方法流程图。
具体实施方式
以下结合实例对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
如图1所示,本发明提供一种基于树形结构的项目树查询和显示方法,包括以下步骤:
步骤1,利用路径枚举方式获取项目树中各个节点对象的完整路径信息,并为项目树中每一层级中的各个对象赋予唯一对应的编号;
步骤2,根据用户输入的编号,将搜索定位在所述编号对应的节点对象,同时获取并反馈项目树中从根节点到该节点对象的路径信息,并进入展示页面;
步骤3,采用HTML5+CSS3技术对展示页面划分为左侧DIV和右侧DIV,所述左侧DIV以树形结构展示用户查询的节点对象及其祖先节点对象;所述右侧DIV以表格形式展示用户查询的节点对象相关的加工内容。
进一步,所述项目树中包括根节点-项目节点、枝干节点-产品节点和叶子节点-模具节点,所述项目节点、产品节点和模具节点分别对应唯一的项目编号、产品编号和模具编号。
进一步,所述步骤2包括:
当用户输入项目编号时,将搜索定位在项目名称;
当用户输入产品编号时,将搜索定位在项目名称-产品名称;
当用户输入模具编号时,将搜索定位在项目名称-产品名称-模具名称;
同时获取并反馈用户搜索结果的路径信息以及用户搜索对象所在层级的其他节点信息。
进一步,所述步骤3还包括:
运用CSS选择器对左侧DIV的点击采用animate的动画方式设置CSS样式,以实现左侧DIV的悬浮、透明、放大展开的动作;
所述左侧DIV缺省宽度为展示页面宽度的20%,右侧DIV缺省宽度为展示页面宽度的80%,
当系统进入展示页面,左侧DIV延迟1秒展开,展开缺省宽度为展示页面宽度的20%,此时判断展示页面中当前树结构展开的数据长度,若树结构中的最长数据占比超过展示页面宽度的40%,则以树结构中的最长数据占比的比例来调整左侧页面的宽度;展开后,左侧DIV超过展示页面宽度20%的部分,以悬浮方式显示在右侧DIV之上,透明度为0.4,右侧DIV保持不变。
本发明的有益效果是:采用路径枚举方式,获取项目树中各个节点对象的完整路径信息,并为项目树中每一层级中的各个对象赋予唯一对应的编号的优势在于,递归层级展示,可以快速查询全部父节点、子节点;一旦我们可以很简单地获取一个子树或者从子孙节点到祖先节点的路径,就可以很简单地实现更多查询,比如计算一个字数所有节点的数量;插入一个节点也可以像和使用邻接表一样地简单,可以插入一个叶子节点而不用修改任何其他的行。表结构内部没有硬性关联,查询效率更快;路径枚举的设计方式能够很方便地根据节点层级排序,因路径中分隔两边的节点间的距离永远是1,通过比较字符串长度就能知道层级的深浅。
树节点在显示数据时,能根据检索信息精准到具体子节点;树节点页面数据过长,当覆盖页面内容时,以透明色展示,不影响页面数据显示,同时增加了树节点的显示宽度;树节点横向数据过长时,不会出现滚动条,宽度会自适应调整,避免由于树节点字段长短不一致而导致反复拖动滚动条。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种基于树形结构的项目树查询和显示方法,其特征在于,包括以下步骤:
步骤1,利用路径枚举方式获取项目树中各个节点对象的完整路径信息,并为项目树中每一层级中的各个对象赋予唯一对应的编号;
步骤2,根据用户输入的编号,将搜索定位在所述编号对应的节点对象,同时获取并反馈项目树中从根节点到该节点对象的路径信息,并进入展示页面;
步骤3,采用HTML5+CSS3技术对展示页面划分为左侧DIV和右侧DIV,所述左侧DIV以树形结构展示用户查询的节点对象及其祖先节点对象;所述右侧DIV以表格形式展示用户查询的节点对象相关的加工内容。
2.根据权利要求1所述一种基于树形结构的项目树查询和显示方法,其特征在于,所述项目树中包括根节点-项目节点、枝干节点-产品节点和叶子节点-模具节点,所述项目节点、产品节点和模具节点分别对应唯一的项目编号、产品编号和模具编号。
3.根据权利要求2所述一种基于树形结构的项目树查询和显示方法,其特征在于,所述步骤2包括:
当用户输入项目编号时,将搜索定位在项目名称;
当用户输入产品编号时,将搜索定位在项目名称-产品名称;
当用户输入模具编号时,将搜索定位在项目名称-产品名称-模具名称;
同时获取并反馈用户搜索结果的路径信息以及用户搜索对象所在层级的其他节点信息。
4.根据权利要求1所述一种基于树形结构的项目树查询和显示方法,其特征在于,所述步骤3还包括:
运用CSS选择器对左侧DIV的点击采用animate的动画方式设置CSS样式,以实现左侧DIV的悬浮、透明、放大展开的动作;
所述左侧DIV缺省宽度为展示页面宽度的20%,右侧DIV缺省宽度为展示页面宽度的80%,
当系统进入展示页面,左侧DIV延迟1秒展开,展开缺省宽度为展示页面宽度的20%,此时判断展示页面中当前树结构展开的数据长度,若树结构中的最长数据占比超过展示页面宽度的40%,则以树结构中的最长数据占比的比例来调整左侧页面的宽度;展开后,左侧DIV超过展示页面宽度20%的部分,以悬浮方式显示在右侧DIV之上,透明度为0.4,右侧DIV保持不变。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711487508.9A CN108228171A (zh) | 2017-12-29 | 2017-12-29 | 一种基于树形结构的项目树查询和显示方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711487508.9A CN108228171A (zh) | 2017-12-29 | 2017-12-29 | 一种基于树形结构的项目树查询和显示方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108228171A true CN108228171A (zh) | 2018-06-29 |
Family
ID=62646495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711487508.9A Pending CN108228171A (zh) | 2017-12-29 | 2017-12-29 | 一种基于树形结构的项目树查询和显示方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108228171A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109740127A (zh) * | 2019-01-08 | 2019-05-10 | 益模(东莞)智能科技有限公司 | 一种基于三维模型的无序拆装方法 |
CN110909069A (zh) * | 2019-11-11 | 2020-03-24 | 口碑(上海)信息技术有限公司 | 用户分层数据的展示方法及装置 |
CN111275392A (zh) * | 2020-01-08 | 2020-06-12 | 思创数码科技股份有限公司 | 一种项目关系展示方法 |
CN111339387A (zh) * | 2018-12-18 | 2020-06-26 | 阿里巴巴集团控股有限公司 | 基于信息模板的点击反馈获取方法、装置及电子设备 |
CN111966595A (zh) * | 2020-08-13 | 2020-11-20 | 安徽芯纪元科技有限公司 | 一种软件调试系统内芯片定位方法及调试报文传输方法 |
CN112256690A (zh) * | 2019-07-22 | 2021-01-22 | 上海汇招信息技术有限公司 | 新型树形结构方法以及新型树形结构的更新方法 |
CN113065042A (zh) * | 2021-04-02 | 2021-07-02 | 北京天空卫士网络安全技术有限公司 | 一种终端设备的管理方法和装置 |
CN113704294A (zh) * | 2021-08-17 | 2021-11-26 | 北京达佳互联信息技术有限公司 | 数据处理方法、装置、电子设备和存储介质 |
CN115291773A (zh) * | 2022-08-09 | 2022-11-04 | 北京商银微芯科技有限公司 | 树形结构数据展示方法及装置 |
CN115934829A (zh) * | 2022-11-30 | 2023-04-07 | 湖北清江水电开发有限责任公司 | 流域梯级电站监控系统数据库的数据展示方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101005681A (zh) * | 2006-01-17 | 2007-07-25 | 大唐移动通信设备有限公司 | 界面自动生成方法和界面自动生成系统 |
CN101582048A (zh) * | 2008-05-16 | 2009-11-18 | 国际商业机器公司 | 一种用于缺陷管理的方法和系统 |
CN101763353A (zh) * | 2008-12-24 | 2010-06-30 | 复旦大学 | 一种无线广播中的xml空中索引方法 |
CN102867059A (zh) * | 2012-09-19 | 2013-01-09 | 浪潮(北京)电子信息产业有限公司 | 一种树形结构中数据的处理方法和系统 |
US20170286071A1 (en) * | 2014-12-15 | 2017-10-05 | Kirsten Ingmar Heiss | System and method for software development using graphical tree structures |
-
2017
- 2017-12-29 CN CN201711487508.9A patent/CN108228171A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101005681A (zh) * | 2006-01-17 | 2007-07-25 | 大唐移动通信设备有限公司 | 界面自动生成方法和界面自动生成系统 |
CN101582048A (zh) * | 2008-05-16 | 2009-11-18 | 国际商业机器公司 | 一种用于缺陷管理的方法和系统 |
CN101763353A (zh) * | 2008-12-24 | 2010-06-30 | 复旦大学 | 一种无线广播中的xml空中索引方法 |
CN102867059A (zh) * | 2012-09-19 | 2013-01-09 | 浪潮(北京)电子信息产业有限公司 | 一种树形结构中数据的处理方法和系统 |
US20170286071A1 (en) * | 2014-12-15 | 2017-10-05 | Kirsten Ingmar Heiss | System and method for software development using graphical tree structures |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111339387A (zh) * | 2018-12-18 | 2020-06-26 | 阿里巴巴集团控股有限公司 | 基于信息模板的点击反馈获取方法、装置及电子设备 |
CN111339387B (zh) * | 2018-12-18 | 2023-06-09 | 阿里巴巴集团控股有限公司 | 基于信息模板的点击反馈获取方法、装置及电子设备 |
CN109740127B (zh) * | 2019-01-08 | 2023-05-26 | 武汉益模科技股份有限公司 | 一种基于三维模型的无序拆装方法 |
CN109740127A (zh) * | 2019-01-08 | 2019-05-10 | 益模(东莞)智能科技有限公司 | 一种基于三维模型的无序拆装方法 |
CN112256690A (zh) * | 2019-07-22 | 2021-01-22 | 上海汇招信息技术有限公司 | 新型树形结构方法以及新型树形结构的更新方法 |
CN112256690B (zh) * | 2019-07-22 | 2022-09-13 | 上海汇招信息技术有限公司 | 新型树形结构方法以及新型树形结构的更新方法 |
CN110909069A (zh) * | 2019-11-11 | 2020-03-24 | 口碑(上海)信息技术有限公司 | 用户分层数据的展示方法及装置 |
CN111275392A (zh) * | 2020-01-08 | 2020-06-12 | 思创数码科技股份有限公司 | 一种项目关系展示方法 |
CN111966595A (zh) * | 2020-08-13 | 2020-11-20 | 安徽芯纪元科技有限公司 | 一种软件调试系统内芯片定位方法及调试报文传输方法 |
CN111966595B (zh) * | 2020-08-13 | 2024-04-05 | 安徽芯纪元科技有限公司 | 一种软件调试系统内芯片定位方法及调试报文传输方法 |
CN113065042A (zh) * | 2021-04-02 | 2021-07-02 | 北京天空卫士网络安全技术有限公司 | 一种终端设备的管理方法和装置 |
CN113704294A (zh) * | 2021-08-17 | 2021-11-26 | 北京达佳互联信息技术有限公司 | 数据处理方法、装置、电子设备和存储介质 |
CN115291773A (zh) * | 2022-08-09 | 2022-11-04 | 北京商银微芯科技有限公司 | 树形结构数据展示方法及装置 |
CN115934829A (zh) * | 2022-11-30 | 2023-04-07 | 湖北清江水电开发有限责任公司 | 流域梯级电站监控系统数据库的数据展示方法 |
CN115934829B (zh) * | 2022-11-30 | 2024-04-19 | 湖北清江水电开发有限责任公司 | 流域梯级电站监控系统数据库的数据展示方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108228171A (zh) | 一种基于树形结构的项目树查询和显示方法 | |
CN108363797B (zh) | 一种基于变换的关联图可视分析方法及其系统 | |
Taylor | On the Hodge structure of elliptically fibered Calabi-Yau threefolds | |
CN102819536B (zh) | 树型数据处理方法及装置 | |
US8502823B2 (en) | Method and system for lane graph visualization | |
Meir et al. | Self-avoiding walks on diluted networks | |
CN107679049A (zh) | 获取树形结构数据两节点间路径的方法、装置及系统 | |
CN109033729B (zh) | 一种产品设计的信息管理方法及系统 | |
KR101244466B1 (ko) | NoSQL 기반 데이터 모델링 방법 | |
CN102902811A (zh) | 一种快速生成树结构的数据库设计方法 | |
CN106527912B (zh) | 一种基于Voronoi树图的信息检索可视化系统及方法 | |
CN105740387A (zh) | 一种基于作者频繁模式的科技文献推荐方法 | |
CN108053873A (zh) | 一种基于全院通用业务的公共控件节点树的设计方法 | |
Ebrahimi-Fard et al. | On an extension of Knuth’s rotation correspondence to reduced planar trees | |
CN103942267A (zh) | 应用于在线教育系统中的树形数据结构的建立方法 | |
CN110019646B (zh) | 一种建立索引的方法和装置 | |
CN107562763A (zh) | 数据变化的显示方法及装置 | |
CN106257443A (zh) | 一种数据导入方法及装置 | |
Viennot | A Strahler bijection between Dyck paths and planar trees | |
CN112256690B (zh) | 新型树形结构方法以及新型树形结构的更新方法 | |
CN103150431B (zh) | 一种基于b/s模式的男装款式部件拼接设计系统 | |
Schoch | graphlayouts: Layout algorithms for network visualizations in R | |
CN104850953A (zh) | 一种散装物资的资产管理系统 | |
KR20080008573A (ko) | Xml 데이터로부터 연관규칙을 추출하기 위한 방법 | |
Piringer et al. | Hierarchical difference scatterplots: Interactive visual analysis of data cubes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180629 |
|
RJ01 | Rejection of invention patent application after publication |