组织架构更新方法、装置、计算机可读介质及电子设备与流程

文档序号:28380058发布日期:2022-01-07 22:49阅读:163来源:国知局
组织架构更新方法、装置、计算机可读介质及电子设备与流程

1.本技术属于计算机技术领域,具体涉及一种组织架构更新方法、组织架构更新装置、计算机可读介质及电子设备。


背景技术:

2.组织架构是各种类型的社会组织进行行政和人事管理的基础,例如政府、非政府组织机构、企事业单位、学校、医院,等等。各类组织通过组织架构描述组织内部部门、成员的属性、相互间排序关系以及它与外部的关系,并以此为基础确定组织内部的岗位职责和它们之间的责任、权利和义务。因此,组织架构是各种组织实施管理的基础。
3.目前存在一个问题是,大组织架构文件容量一般很大,在网络环境拥堵的情况下,下载到本地需要更多的时间。在下载过程中,若客户端查看组织架构,会显示为空白界面。在一些应用场景中,例如在组织架构下载过程中,用户应用程序切到后台,手机操作系统杀掉应用程序进程,则下次应用程序需要重新下载,过程有可能又被杀掉,如此反复循环。从而,导致大组织架构文件下载到本地具有耗时长,响应慢的问题。
4.需要说明的是,在上述背景技术部分公开的信息仅用于加强对本技术的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。


技术实现要素:

5.本技术的目的在于提供一种组织架构更新方法、装置、计算机可读介质及电子设备。至少在一定程度上克服相关技术中大组织架构文件下载到本地耗时长,响应慢的技术问题。
6.本技术的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本技术的实践而习得。
7.根据本技术实施例的一个方面,提供一种组织架构更新方法。所述组织架构更新方法包括:
8.获取远端组织架构的更新流水表,所述更新流水表用于存储所述远端组织架构的每条更新记录对应的节点和更新时间戳;
9.以第一预设数量为每批次拉取节点数量的最大值,分批次地拉取所述更新流水表上的预设更新记录对应的节点,直到所述预设更新记录对应的所有节点均被拉取,其中,所述预设更新记录包括所述更新流水表上的更新时间戳在预设时间戳之后的更新记录;
10.将各批次拉取到的节点,更新到本地组织架构中。
11.根据本技术实施例的一个方面,提供一种组织架构更新装置。所述组织架构更新装置包括:
12.更新流水表获取模块,被配置为获取远端组织架构的更新流水表,所述更新流水表用于存储所述远端组织架构的每条更新记录对应的节点和更新时间戳;
13.节点分批次拉取模块,被配置为以第一预设数量为每批次拉取节点数量的最大
值,分批次地拉取所述更新流水表上的预设更新记录对应的节点,直到所述预设更新记录对应的所有节点均被拉取,其中,所述预设更新记录包括所述更新流水表上的更新时间戳在预设时间戳之后的更新记录;
14.节点更新模块,被配置为将各批次拉取到的节点,更新到本地组织架构中。
15.在本技术的一些实施例中,基于以上技术方案,所述节点分批次拉取模块包括:
16.预设时间戳确定单元,被配置为将所述本地组织架构上次拉取组织架构的时间戳,作为所述预设时间戳;
17.待拉取节点确定单元,被配置为将更新时间戳在所述预设时间戳之后的更新记录作为预设更新记录,并将所述预设更新记录中每条更新记录对应的节点作为待拉取节点;
18.节点拉取单元,被配置为以所述第一预设数量为每批次拉取节点数量的最大值,分批次地拉取所述待拉取节点,直到所有所述待拉取节点均被拉取。
19.在本技术的一些实施例中,基于以上技术方案,所述节点拉取单元包括:
20.待拉取节点获取子单元,被配置为按照所述预设更新记录中的更新记录的更新时间戳从旧至新的顺序,逐个获取各条所述更新记录对应的待拉取节点;
21.准拉取节点确定子单元,被配置为逐个检测所述待拉取节点是否满足过滤规则,并将满足所述过滤规则的待拉取节点作为准拉取节点;
22.第一准拉取节点拉取单元,被配置为计算所述准拉取节点的总数量,当所述准拉取节点的总数量达到第一预设数量时,拉取所述第一预设数量个准拉取节点。
23.在本技术的一些实施例中,基于以上技术方案,所述节点拉取单元还包括:
24.待拉取节点计算子单元,被配置为计算经过检测的待拉取节点的数量;
25.第二准拉取节点拉取单元,被配置为当所述经过检测的待拉取节点的数量达到第二预设数量时,拉取所述第二预设数量个待拉取节点中满足所述过滤规则的准拉取节点。
26.在本技术的一些实施例中,基于以上技术方案,所述节点拉取单元还包括:
27.第三准拉取节点拉取单元,被配置为当所有所述待拉取节点均经过检测时,拉取所有所述待拉取节点中满足所述过滤规则的准拉取节点。
28.在本技术的一些实施例中,基于以上技术方案,所述组织架构更新装置还包括:
29.预设时间戳获取子单元,被配置为将经过检测的待拉取节点中时间最新的更新时间戳,作为所述预设时间戳。
30.在本技术的一些实施例中,基于以上技术方案,所述节点更新模块包括:
31.第一节点更新单元,被配置为当拉取到的节点在所述本地组织架构中具有对应的原节点时,用所述拉取到的节点覆盖所述原节点;
32.第二节点更新单元,被配置为当拉取到的节点在所述本地组织架构中不具有对应的原节点时,根据所述拉取到的节点所关联的父节点信息和子节点信息,在所述本地组织架构中的相应位置新建对应节点。
33.在本技术的一些实施例中,基于以上技术方案,所述组织架构更新装置还包括:
34.节点数据拉取单元,被配置为根据拉取到的节点,从所述远端组织架构拉取与所述拉取到的节点所对应的节点数据;
35.节点数据更新单元,被配置为将所述节点数据更新至所述本地组织架构中。
36.在本技术的一些实施例中,基于以上技术方案,所述节点数据包括摘要数据和详
细数据,所述节点数据更新单元包括:
37.摘要数据更新单元,被配置为将所述节点数据的摘要数据更新至所述本地组织架构的对应节点中;
38.详细数据更新单元,被配置为分批次读取所述远端组织架构中各摘要数据对应的详细数据,并将所述详细数据更新至所述本地组织架构的对应节点中。
39.根据本技术实施例的一个方面,提供一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如以上技术方案中的组织架构更新方法。
40.根据本技术实施例的一个方面,提供一种电子设备,该电子设备包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器被配置为经由执行所述可执行指令来执行如以上技术方案中的组织架构更新方法。
41.根据本技术实施例的一个方面,提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行如以上技术方案中的组织架构更新方法。
42.在本技术实施例提供的技术方案中,获取远端组织架构的更新流水表,以第一预设数量为每批次拉取节点数量的最大值,分批次地拉取更新流水表上的预设更新记录对应的节点,直到预设更新记录对应的所有节点均被拉取,再将各批次拉取到的节点,更新到本地组织架构中。由此,分批次地拉取更新流水表上的预设更新记录对应的节点,直到预设更新记录对应的所有节点均被拉取,从而通过分批次的增量拉取提高节点拉取的响应速度,避免本地长时间得不到响应,从而以较高的效率和响应度,实现对组织架构的更新。
43.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
44.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
45.图1示意性地示出了应用本技术技术方案的示例性装置架构框图。
46.图2示意性地示出了本技术实施例提供的组织架构更新方法的步骤流程。
47.图3示意性地示出了本技术实施例中以第一预设数量为每批次拉取节点数量的最大值,分批次地拉取更新流水表上的预设更新记录对应的节点,直到预设更新记录对应的所有节点均被拉取的步骤流程。
48.图4示意性地示出了本技术实施例中拉取待拉取节点的步骤流程。
49.图5示意性地示出了本技术实施例中逐个检测待拉取节点是否满足过滤规则,并将满足过滤规则的待拉取节点作为准拉取节点之后的步骤流程。
50.图6示意性地示出了本技术实施例中将各批次拉取到的节点,更新到本地组织架构中的步骤流程。
51.图7示意性地示出了本技术实施例中将各批次拉取到的节点,更新到本地组织架
构中之后的步骤流程。
52.图8示意性地示出了本技术实施例中将节点数据更新至本地组织架构中的步骤流程。
53.图9示意性地示出了本技术实施例提供的组织架构更新装置的结构框图。
54.图10示意性地示出了用于实现本技术实施例的电子设备的结构框图。
具体实施方式
55.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本技术将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
56.此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本技术的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本技术的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本技术的各方面。
57.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
58.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
59.在对本技术实施例提供的组织架构更新方法、组织架构更新装置等技术方案作出详细说明之前,先对本技术部分实施例中涉及的区块链技术进行简单介绍。
60.区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
61.区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合
约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
62.平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
63.下面结合具体实施方式对本技术提供的组织架构更新方法及装置做出详细说明。
64.图1示意性地示出了应用本技术技术方案的示例性装置架构框图。
65.如图1所示,装置架构100可以包括终端设备110、网络120和服务器130。终端设备110可以包括智能手机、平板电脑、笔记本电脑、台式电脑等各种电子设备。服务器130可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式装置,还可以是提供云计算服务的云服务器。网络120可以是能够在终端设备110和服务器130之间提供通信链路的各种连接类型的通信介质,例如可以是有线通信链路或者无线通信链路。
66.根据实现需要,本技术实施例中的装置架构可以具有任意数目的终端设备、网络和服务器。例如,服务器130可以是由多个服务器设备组成的服务器群组。另外,本技术实施例提供的技术方案可以应用于终端设备110,也可以应用于服务器130,或者可以由终端设备110和服务器130共同实施,本技术对此不做特殊限定。
67.举例而言,远端组织架构可以部署在服务器130上,远端组织架构的各个节点、更新流水表以及每个节点对应的节点数据等均存储在服务器130上,终端设备110需要向服务器130请求更新组织架构时,终端设备110可以执行本技术提供的组织架构更新方法,从而获取远端组织架构的更新流水表,以第一预设数量为每批次拉取节点数量的最大值,分批次地拉取更新流水表上的预设更新记录对应的节点,直到预设更新记录对应的所有节点均被拉取,再将各批次拉取到的节点,更新到本地组织架构中,从而能够提高节点拉取的响应速度,避免本地长时间得不到响应,从而以较高的效率和响应度,实现对组织架构的更新。
68.本技术以下说明书中,以终端设备拉取存储于服务器的远端组织架构中的节点,以实现对终端设备中的本地组织架构的更新为例进行说明,但是本技术不限于此实施方式。
69.图2示意性地示出了本技术实施例提供的组织架构更新方法的步骤流程,该组织架构更新方法的执行主体可以是终端设备,也可以是服务器。终端设备包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端等。如图2所示,该组织架构更新方法主要可以包括如下步骤s210~步骤s230:
70.s210.获取远端组织架构的更新流水表。更新流水表用于存储远端组织架构的每条更新记录对应的节点和更新时间戳。
71.具体地,远端组织架构的更新流水表,可以和远端组织架构共同存储在远端服务器上,或者,远端组织架构的更新流水表,可以和远端组织架构共同存储在远端的终端上,本技术对此不作限定。更新流水表包括多条更新记录,每条更新记录用于记录远端组织架构历史上的每一次更新。每条更新记录中,记录有该次更新中更新的节点,并将更新的时刻记录为对应的更新时间戳。例如,一条更新记录中,可以记录有远端组织架构中节点的增加、删除或者更改等对应的流水记录,并且将更新的时刻记录为对应的更新时间戳。
72.在具体实施例中,远端组织架构可以为企业通讯录,包括了由企业内成员、部门、
标签及其组织架构关系构成的记录企业成员信息和架构关系的数据。其中,部门可能包含多个成员和多个子部门。成员可以对应于企业中的一个员工或者一个服务账号。或者,企业通讯录可以包括企业内的部门、成员组成的树形组织架构关系,以及部门、成员的属性、相互间排序关系,以及部门、成员间的相互可见规则等内容。
73.当成员或部门的信息更新时,更新流水表中新增关于信息更新对应节点和对应的更新时间戳的更新记录。当成员部门在组织架构中的从属部门移动时,更新流水表中新增关于所移动的成员、或部门及其下所有节点和对应的更新时间戳的更新记录。当成员或部门被删除时,更新流水表中新增关于被删除的成员、或部门及其下所有节点的时间戳。
74.s220.以第一预设数量为每批次拉取节点数量的最大值,分批次地拉取更新流水表上的预设更新记录对应的节点,直到预设更新记录对应的所有节点均被拉取。其中,预设更新记录包括更新流水表上的更新时间戳在预设时间戳之后的更新记录。
75.图3示意性地示出了本技术实施例中以第一预设数量为每批次拉取节点数量的最大值,分批次地拉取更新流水表上的预设更新记录对应的节点,直到预设更新记录对应的所有节点均被拉取的步骤流程。如图3所示,在以上实施例的基础上,在某些实施例中,步骤s220中的以第一预设数量为每批次拉取节点数量的最大值,分批次地拉取更新流水表上的预设更新记录对应的节点,直到预设更新记录对应的所有节点均被拉取,可以进一步包括以下步骤s310~步骤s330:
76.s310.将本地组织架构上次拉取组织架构的时间戳,作为预设时间戳。
77.s320.将更新时间戳在预设时间戳之后的更新记录作为预设更新记录,并将预设更新记录中每条更新记录对应的节点作为待拉取节点。
78.s330.以第一预设数量为每批次拉取节点数量的最大值,分批次地拉取待拉取节点,直到所有待拉取节点均被拉取。
79.将本地组织架构上次拉取组织架构的时间戳,作为预设时间戳;当本地组织架构是第一次拉取组织架构时,则将预设时间戳设置在位于更新流水表中时间最早的更新时间戳之前。也即,将更新流水表中的所有更新记录,作为预设更新记录。
80.将更新时间戳在预设时间戳之后的更新记录作为预设更新记录,并将预设更新记录中每条更新记录对应的节点作为待拉取节点,能够使得拉取的节点的更新时间戳均位于上次拉取组织架构的时间戳之后,能够实现对于本地组织架构的增量更新,能够减少每次组织架构更新中,拉取的节点数量,从而实现组织架构的高效更新。
81.由此,以第一预设数量为每批次拉取节点数量的最大值,分批次地拉取待拉取节点,直到所有待拉取节点均被拉取。具体地,可以将第一预设数量作为参数limit_cnt携带在终端发送至服务器的组织架构更新请求中,通过发送方和接收方的配合,实现待拉取节点的分批次拉取。
82.可以理解,大组织架构文件容量一般很大,在网络环境拥堵的情况下,下载到本地需要较长的时间,从而使得大组织架构文件加载到本地的加载效率低。并且,由于数据量较大,使得拉取服务的稳定性较差。而本技术以上实施方式将更新时间戳在预设时间戳之后的更新记录作为预设更新记录,并将预设更新记录中每条更新记录对应的节点作为待拉取节点,以第一预设数量为每批次拉取节点数量的最大值,分批次地拉取待拉取节点,直到所有待拉取节点均被拉取,从而使得本地在首次拉取组织架构时,可以通过分批次、增量拉取
的方式,提高节点拉取的响应速度,避免本地长时间得不到响应,以较高的效率和响应度,实现对组织架构的更新。由此,能够提高数据传输过程的传输稳定性,保证拉取机制和组织架构更新服务的稳定性,提高用户体验。
83.并且,本地在非首次拉取组织架构时,可以分批次、增量拉取更新时间戳在预设时间戳之后的节点,也就是仅需拉取组织架构中发生更新的节点,从而减少需拉取的数据量,并且提高节点拉取的响应速度,避免本地长时间得不到响应,以较高的效率和响应度,实现对组织架构的更新,能够提高数据传输过程的传输稳定性,提高用户体验。
84.在一些实施方式中,终端可以对每批次进行拉取传输的节点数量node_cnt与第一预设数量limit_cnt作比较,并且当每批次进行拉取传输的节点数量node_cnt大于或等于第一预设数量limit_cnt时,判定为终端仍未拉取完所有需拉取的节点,继续请求拉取;当每批次进行拉取传输的节点数量node_cnt小于第一预设数量limit_cnt时,判定为终端已拉取完所有需拉取的节点,无需继续请求拉取。由此,能够避免终端在已拉取完所有需拉取的节点后仍继续请求,从而能够节省系统资源。
85.图4示意性地示出了本技术实施例中拉取待拉取节点的步骤流程。如图4所示,在以上实施例的基础上,在某些实施例中,步骤s330中的拉取待拉取节点,可以进一步包括以下步骤s410~步骤s430:
86.s410.按照预设更新记录中的更新记录的更新时间戳从旧至新的顺序,逐个获取各条更新记录对应的待拉取节点;
87.s420.逐个检测待拉取节点是否满足过滤规则,并将满足过滤规则的待拉取节点作为准拉取节点;
88.s430.计算准拉取节点的总数量,当准拉取节点的总数量达到第一预设数量时,拉取第一预设数量个准拉取节点。
89.由此,能够按照预设更新记录中的更新记录的更新时间戳从旧至新的顺序对节点进行拉取更新。并且,在拉取更新之前,需要逐个检测待拉取节点是否满足过滤规则。从而,能够使得在节点拉取过程中,遵循组织架构对于终端对应的过滤规则,从而能够更加便于对于组织架构的管理。
90.例如,组织架构中可以设置各成员、部门的节点之间的过滤规则。在具体实施例中,过滤规则可以包括多种类别,例如可以包括三种类别:一、被隐藏的部门或成员的节点,不会显示在任一终端拉取的组织架构中,也无法被任一终端搜索查看到。二、被限制的部门之下的成员节点对应的终端进行组织架构更新时,只能看到本部门的通讯录上的节点。三、被限制的终端进行组织架构更新时,无法拉取查看到对应限制的成员或部门节点。由此,虽然各终端均向远端组织架构拉取节点和数据以更新各终端的本地组织架构,但是各种的拉取节点、更新得到的本地组织架构可能并不一样,这取决于各终端所在的成员节点被远端组织架构设置了什么过滤规则,由此,能够实现企业组织架构的多样化管理。
91.在一些实施方式中,也可以按照预设更新记录中的更新记录的更新时间戳从新至旧的顺序,逐个获取各条更新记录对应的待拉取节点,逐个检测待拉取节点是否满足过滤规则,并将满足过滤规则的待拉取节点作为准拉取节点,并计算准拉取节点的总数量,当准拉取节点的总数量达到第一预设数量时,拉取第一预设数量个准拉取节点。
92.在具体实施方式中,每种类别的过滤规则中又可以平行地配置多条规则。例如,单
个企业可以配置三种类别,共300条过滤规则,则每个待拉取节点都需要经过300条过滤规则的检测。可以理解,在步骤s330中的拉取待拉取节点的过程中,需要对每个待拉取节点检测是否满足过滤规则,由此带来了一个问题:每批次实际拉取的准拉取节点的数量可能远小于进行了过滤规则检测的待拉取节点,从而使得每批次拉取节点的检测数可能远大于限定的每批次的第一预设数量个节点,并且,过滤规则可能较为复杂,使得对每个待拉取节点的检测时间较长,从而使得步骤s330中的拉取待拉取节点的过程耗时大大增长。为克服以上问题,可以采用以下图5流程所示的实施方式。
93.图5示意性地示出了本技术实施例中逐个检测待拉取节点是否满足过滤规则,并将满足过滤规则的待拉取节点作为准拉取节点之后的步骤流程。如图5所示,在以上实施例的基础上,在某些实施例中,在步骤s420中的逐个检测待拉取节点是否满足过滤规则,并将满足过滤规则的待拉取节点作为准拉取节点之后,可以进一步包括以下步骤s510~步骤s520:
94.s510.计算经过检测的待拉取节点的数量;
95.s520.当经过检测的待拉取节点的数量达到第二预设数量时,拉取第二预设数量个待拉取节点中满足过滤规则的准拉取节点。
96.第二预设数量可以是第一预设数量的数倍,例如,第二预设数量可以是第一预设数量的两倍。也就是说,当计算经过检测的待拉取节点的数量达到第二预设数量2*limit_cnt后,即使待拉取节点中满足过滤规则的准拉取节点的数量未达到第一预设数量limit_cnt,也提前将准拉取节点拉取至终端,完成此批次的节点拉取,能够避免终端长时间得不到响应,避免一批次节点拉取的耗时过长造成接口响应时间不稳定,从而在一些组织架构规模较大、过滤规则配置较为复杂的情况下,仍能保证每个批次的节点拉取在一个由第二预设数量进行限定的复杂度范围内完成,再通过分批次遍历地检测和拉取更新时间戳早于预设时间戳、并且满足过滤规则的节点,实现本次本地组织架构的更新。
97.在一些实施例中,可以计算经过检测的待拉取节点的数量,然后当本批次节点拉取的耗费时间长于预设时间时,拉取待拉取节点中满足过滤规则的准拉取节点,完成此批次的节点拉取。
98.在以上实施例的基础上,在某些实施例中,在步骤s420中的逐个检测待拉取节点是否满足过滤规则,并将满足过滤规则的待拉取节点作为准拉取节点之后,还可以进一步包括以下步骤:
99.当所有待拉取节点均经过检测时,拉取所有待拉取节点中满足过滤规则的准拉取节点。
100.当所有待拉取节点均经过检测时,说明更新流水表中更新时间戳均位于上次拉取组织架构的时间戳之后节点,均经过了检测,此时,将所有待拉取节点中满足过滤规则的准拉取节点均拉取至终端,以对本地组织架构进行更新,完成本批次节点拉取的同时,完成了本次组织架构更新。
101.在以上实施例的基础上,在某些实施例中,步骤s430中的拉取准拉取节点之后,或者步骤s520的拉取准拉取节点之后,可以进一步包括以下步骤:
102.将经过检测的待拉取节点中时间最新的更新时间戳,作为预设时间戳。
103.在一些实施例中,在步骤s430中的拉取准拉取节点之后,可以理解,此时已经完成
本批次的节点拉取。此时,将经过检测的待拉取节点中时间最新的更新时间戳,作为预设时间戳,能够使得下一批次节点拉取中的待拉取节点,排除了在本批次中经过检测的所有待拉取节点,从而能够避免对于同一节点的重复检测是否满足过滤规则,从而能够避免系统资源的浪费,能够提高节点的拉取效率以及组织架构的更新效率。
104.在一些实施例中,在步骤s520的拉取准拉取节点之后,可以理解,此时已经完成本批次的节点拉取。此时,将经过检测的待拉取节点中时间最新的更新时间戳,作为预设时间戳,能够使得下一批次节点拉取中的待拉取节点,排除了在本批次中经过检测的所有待拉取节点,从而能够避免对于同一节点的重复检测是否满足过滤规则,从而能够避免系统资源的浪费,能够提高节点的拉取效率以及组织架构的更新效率。
105.s230.将各批次拉取到的节点,更新到本地组织架构中。
106.当终端接收到各批次拉取到的节点之后,可以将各批次拉取到的节点更新到本地组织架构中,完成对本地组织架构的更新。
107.图6示意性地示出了本技术实施例中将各批次拉取到的节点,更新到本地组织架构中的步骤流程。如图6所示,在以上实施例的基础上,在某些实施例中,步骤s230中的将各批次拉取到的节点,更新到本地组织架构中,可以进一步包括以下步骤s610~步骤s620:
108.s610.当拉取到的节点在本地组织架构中具有对应的原节点时,用拉取到的节点覆盖原节点;
109.s620.当拉取到的节点在本地组织架构中不具有对应的原节点时,根据拉取到的节点所关联的父节点信息和子节点信息,在本地组织架构中的相应位置新建对应节点。
110.当拉取到的节点在本地组织架构中具有对应的原节点时,用拉取到的节点覆盖原节点,当拉取到的节点在本地组织架构中不具有对应的原节点时,根据拉取到的节点所关联的父节点信息和子节点信息,在本地组织架构中的相应位置新建对应节点,由此,能够将各批次拉取到的节点更新到本地组织架构中。
111.图7示意性地示出了本技术实施例中将各批次拉取到的节点,更新到本地组织架构中之后的步骤流程。如图7所示,在以上实施例的基础上,在某些实施例中,在步骤s230的将各批次拉取到的节点,更新到本地组织架构中之后,可以进一步包括以下步骤s710~步骤s720:
112.s710.根据拉取到的节点,从远端组织架构拉取与拉取到的节点所对应的节点数据;
113.s720.将节点数据更新至本地组织架构中。
114.节点具有对有的节点编码,各批次拉取到的节点可以仅包括节点编码。此时,拉取节点之后,可以根据拉取到的节点,从远端组织架构拉取与拉取到的节点所对应的节点数据。与拉取到的节点所对应的节点数据可以包括成员名称、成员职位、成员联系方式、成员简历、部门名称、部门职能、部门主管等相关数据。由此,先分批次拉取节点,将各批次拉取到的节点,更新到本地组织架构中之后,再根据拉取到的节点,从远端组织架构拉取与拉取到的节点所对应的节点数据,并将节点数据更新至本地组织架构中,能够降低节点拉取过程拉取的数据量,提高组织架构更新的响应速度。并且,步骤s710和s720可以在将各批次拉取到的节点,更新到本地组织架构中之后,在终端的后台异步分批次拉取节点数据,从而能够降低组织架构更新过程中对终端资源的占用率,提高组织架构更新的更新效率。
115.图8示意性地示出了本技术实施例中将节点数据更新至本地组织架构中的步骤流程。如图8所示,在以上实施例的基础上,在某些实施例中,节点数据包括摘要数据和详细数据,步骤s720中的将节点数据更新至本地组织架构中,可以进一步包括以下步骤s810~步骤s820:
116.s810.将节点数据的摘要数据更新至本地组织架构的对应节点中;
117.s820.分批次读取远端组织架构中各摘要数据对应的详细数据,并将详细数据更新至本地组织架构的对应节点中。
118.其中,摘要数据可以包括成员名称、成员职位、部门名称、部门主管等,详细数据可以包括成员简历、成员联系方式、部门职能、部门主管等相关数据。具体地,摘要数据可以为用于展示节点的必要的最小字段集,由此,先将节点数据的摘要数据更新至本地组织架构的对应节点中,再分批次读取远端组织架构中各摘要数据对应的详细数据,并将详细数据更新至本地组织架构的对应节点中,将对较为精简的摘要数据的拉取和对数据量较大的详细数据的拉取分开,能够降低对摘要数据拉取过程所需的拉取时长,有利于通过对摘要数据的快速拉取实现本地组织架构的快速初始化,能够提高本地在组织架构更新服务过程中的响应速度,提高用户使用体验感。
119.在一些实施方式中,可以为远端组织架构设置一个有关于组织架构复杂度的大企业阈值,当远端组织架构的节点数量大于该大企业阈值时,可以通过步骤s810~步骤s820的方式,先将节点数据的摘要数据更新至本地组织架构的对应节点中,再分批次读取远端组织架构中各摘要数据对应的详细数据,并将详细数据更新至本地组织架构的对应节点中,从而将节点数据更新至本地组织架构中,能够提高终端对摘要数据拉取的响应速度,根据摘要数据实现更新后的本地组织架构的快速初始化,提高用户使用体验感。
120.综上,本技术实施例提供的组织架构更新方法,获取远端组织架构的更新流水表,以第一预设数量为每批次拉取节点数量的最大值,分批次地拉取更新流水表上的预设更新记录对应的节点,直到预设更新记录对应的所有节点均被拉取,再将各批次拉取到的节点,更新到本地组织架构中。从而,通过分批次、增量拉取的方式,提高节点拉取的响应速度,避免本地长时间得不到响应,以较高的效率和响应度,实现对组织架构的更新,能够提高数据传输过程的传输稳定性,保证拉取机制和组织架构更新服务的稳定性,提高用户体验。
121.应当注意,尽管在附图中以特定顺序描述了本技术中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
122.以下介绍本技术的装置实施例,可以用于执行本技术上述实施例中的组织架构更新方法。图9示意性地示出了本技术实施例提供的组织架构更新装置的结构框图。如图9所示,组织架构更新装置900可以包括:
123.更新流水表获取模块910,被配置为获取远端组织架构的更新流水表,更新流水表用于存储远端组织架构的每条更新记录对应的节点和更新时间戳;
124.节点分批次拉取模块920,被配置为以第一预设数量为每批次拉取节点数量的最大值,分批次地拉取更新流水表上的预设更新记录对应的节点,直到预设更新记录对应的所有节点均被拉取,其中,预设更新记录包括更新流水表上的更新时间戳在预设时间戳之
后的更新记录;
125.节点更新模块930,被配置为将各批次拉取到的节点,更新到本地组织架构中。
126.在本技术的一些实施例中,基于以上各实施例,节点分批次拉取模块包括:
127.预设时间戳确定单元,被配置为将本地组织架构上次拉取组织架构的时间戳,作为预设时间戳;
128.待拉取节点确定单元,被配置为将更新时间戳在预设时间戳之后的更新记录作为预设更新记录,并将预设更新记录中每条更新记录对应的节点作为待拉取节点;
129.节点拉取单元,被配置为以第一预设数量为每批次拉取节点数量的最大值,分批次地拉取待拉取节点,直到所有待拉取节点均被拉取。
130.在本技术的一些实施例中,基于以上各实施例,节点拉取单元包括:
131.待拉取节点获取子单元,被配置为按照预设更新记录中的更新记录的更新时间戳从旧至新的顺序,逐个获取各条更新记录对应的待拉取节点;
132.准拉取节点确定子单元,被配置为逐个检测待拉取节点是否满足过滤规则,并将满足过滤规则的待拉取节点作为准拉取节点;
133.第一准拉取节点拉取单元,被配置为计算准拉取节点的总数量,当准拉取节点的总数量达到第一预设数量时,拉取第一预设数量个准拉取节点。
134.在本技术的一些实施例中,基于以上各实施例,节点拉取单元还包括:
135.待拉取节点计算子单元,被配置为计算经过检测的待拉取节点的数量;
136.第二准拉取节点拉取单元,被配置为当经过检测的待拉取节点的数量达到第二预设数量时,拉取第二预设数量个待拉取节点中满足过滤规则的准拉取节点。
137.在本技术的一些实施例中,基于以上各实施例,节点拉取单元还包括:
138.第三准拉取节点拉取单元,被配置为当所有待拉取节点均经过检测时,拉取所有待拉取节点中满足过滤规则的准拉取节点。
139.在本技术的一些实施例中,基于以上各实施例,组织架构更新装置还包括:
140.预设时间戳获取子单元,被配置为将经过检测的待拉取节点中时间最新的更新时间戳,作为预设时间戳。
141.在本技术的一些实施例中,基于以上各实施例,节点更新模块包括:
142.第一节点更新单元,被配置为当拉取到的节点在本地组织架构中具有对应的原节点时,用拉取到的节点覆盖原节点;
143.第二节点更新单元,被配置为当拉取到的节点在本地组织架构中不具有对应的原节点时,根据拉取到的节点所关联的父节点信息和子节点信息,在本地组织架构中的相应位置新建对应节点。
144.在本技术的一些实施例中,基于以上各实施例,组织架构更新装置还包括:
145.节点数据拉取单元,被配置为根据拉取到的节点,从远端组织架构拉取与拉取到的节点所对应的节点数据;
146.节点数据更新单元,被配置为将节点数据更新至本地组织架构中。
147.在本技术的一些实施例中,基于以上各实施例,节点数据包括摘要数据和详细数据,节点数据更新单元包括:
148.摘要数据更新单元,被配置为将节点数据的摘要数据更新至本地组织架构的对应
节点中;
149.详细数据更新单元,被配置为分批次读取远端组织架构中各摘要数据对应的详细数据,并将详细数据更新至本地组织架构的对应节点中。
150.本技术各实施例中提供的组织架构更新装置的具体细节已经在对应的方法实施例中进行了详细的描述,此处不再赘述。
151.图10示意性地示出了用于实现本技术实施例的电子设备的结构框图。
152.需要说明的是,图10示出的电子设备1000仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
153.如图10所示,电子设备1000包括中央处理器1001(central processing unit,cpu),其可以根据存储在只读存储器1002(read-only memory,rom)中的程序或者从存储部分1008加载到随机访问存储器1003(randomaccess memory,ram)中的程序而执行各种适当的动作和处理。在随机访问存储器1003中,还存储有装置工作所需的各种程序和数据。中央处理器1001、在只读存储器1002以及随机访问存储器1003通过总线1004彼此相连。输入/输出接口1005(input/output接口,即i/o接口)也连接至总线1004。
154.以下部件连接至输入/输出接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(cathode ray tube,crt)、液晶显示器(liquid crystal display,lcd)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如局域网卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至输入/输出接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
155.特别地,根据本技术的实施例,各个方法流程图中所描述的过程可以被实现为计算机软件程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理器1001执行时,执行本技术的装置中限定的各种功能。
156.需要说明的是,本技术实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的装置、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行装置、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储
介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行装置、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
157.附图中的流程图和框图,图示了按照本技术各种实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的装置来实现,或者可以用专用硬件与计算机指令的组合来实现。
158.应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本技术的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
159.通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本技术实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本技术实施方式的方法。
160.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。
161.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求来限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1