分类节点拖动控制策略

来源:互联网 发布:js判断页面离开刷新 编辑:程序博客网 时间:2024/06/11 06:59
一、             总体控制策略:
1.         根节点不可拖动。
2.         不能将父节点拖放到子节点。
3.         可以将子节点拖放到父节点,这时子级节点由原来在父节点中的位置,移动到了最后一个位置。
二、             显示策略:
1.         可以作为其子节点时,选中这个节点。
2.         可以作为其兄弟节点时,在节点的上面或者下面划线。
3.         不可以拖放到此节点时,显示禁止放置的提示。
4.         拖动不可以拖动的节点时,拖动操作无效。
三、             业务控制策略:
1.         源节点:只能为分类节点,不能为分类模板节点(根节点不可拖动)
2.         目的节点:可以为分类节点,也可以为分类模板节点。
3.         标准节点的拖动:
1)        在本模板内可以平级拖动,拖动完成后,重新排列Sort_Position。
2)        节点的子节点数量发生变化时(拖入或者拖出子节点),重新排列各个节点的Sort Position。
3)        在同一个模板内可以改变某个节点的级别,但是级别层数不能超过本分类模板规定的最大级别,拖放完成后,拖动的节点及其子节点的类型随之发生改变,自动匹配对应级别的分类节点类型。
例如:
将一个“工人技术等级”分类的“机械.焊工.高级工(行业.工种.级别)”节点选中,并且选中“焊工”节点,将它直接拖放到“工人技术等级”根节点下时,分类就变成“焊工.高级工(行业.工种)”,“机械”这个节点下就没有了“焊工”这个节点,“焊工”直接变成了“行业”,而“高级工”,则变成了“工种”。
将上面的“焊工.高级工(行业.工种)”再拖放到“电力”节点下面时,就会变成“电力.焊工.高级工(行业.工种.级别)”这样的结构。
4)        将一个分类标准下的某个节点拖放为另一个分类标准模板的某个节点的子节点时,源节点变为目标节点的子节点,同时源节点及其子节点的类型自动匹配为目标节点的子节点及其更深层次的子节点的类型。此拖放操作也遵循上述原则:分类节点类型发生变化;但是如果总层数超过本分类的最大行数,则拖动不能完成。
试图将一个“工人技术等级(行业.工种.级别)”节点下面的“电力.AA.BB”中的“AA.BB”节点拖放到“新职业技术标准(行业.职业.工种.级别.职业功能)”中的某个节点上面时,源节点及其子节点的类型同时匹配为“新职业技术标准(行业.职业.工种.级别.职业功能)”中的各个节点的类型。
5)        将一个标准分类的节点中的某个节点拖放到自定义节点中去时,拖放操作可以完成,但是这个节点随之变成一个自定义节点,失去了标准节点的一切特性。
6)        将一个自定义节点拖放到标准节点下时,自定义节点就随之变为标准节点,拥有了这个级别的标准节点所拥有的一切特性,前提是总级别数量不能超过标准节点模板所规定的最高级数。
例如:
将一个自定义节点“AA.BB”拖放到“工人技术等级”模板的“电力”节点下面时,就会产生一个“电力.AA.BB(行业.工种.级别)”的节点分支。
试图将一个自定义节点“AA.BB.CC”拖放到“工人技术等级”模板的“电力”节点下面时,拖放操作不能完成,显示禁止拖动的符号,因为:“工人技术等级”的总级数是3级,而上面的操作会产生一个4级节点的结果,而末级节点的类型不能获得,因此操作不能够完成。
 
原创粉丝点击