目前公司使用DHR系统管理人力资源信息,使用钉钉进行上下班打卡以及公司内部员工之间的交流,2个系统是相互独立闭塞的,因此需要本同步程序实现将DHR中的公司组织架构信息同步到钉钉平台中,并且将钉钉平台的员工打卡数据同步到DHR系统中的考勤原始记录中。总的来说,钉钉目前仅充当内部员工聊天和考勤机的功能。同步程序将在服务端每天定时自动运行,运行的结果可以在钉钉中的 ”DHR钉钉数据同步“ 的小程序中查看。
(1) 同步为单向同步,由DHR系统同步到钉钉。
(2) DHR的部门在钉钉中不存在时会在钉钉中创建该部门。
(3) DHR中部门的以下信息修改时会同步到钉钉中:部门名称、部门显示顺序、父部门。
(4) 因为删除是一个很危险的动作,所以当DHR中的部门被删除时,在钉钉中不会被删除,而会将钉钉中不存在于DHR中的部门以警告的方式提醒,由钉钉管理员决定是否删除。
(1) 同步为单向同步,由DHR系统同步到钉钉。
(2) DHR中到人员在钉钉中不存在的时候在钉钉中创建该员工。
(3) 当DHR中的员工的姓名、岗位、邮箱(格式正确时同步)、入职日期、部门变化时,会将这些信息同步到钉钉中,并在查看日志中可以查看到同步记录。
(4) 由于删除是一个很危险的 *** 作,当钉钉中存在而DHR中不存在时,同步程序不会删除钉钉中的员工,而是会在警告信息中提示DHR与钉钉的人员差异情况,由钉钉管理者决定是否删除。
(5) 特别的,因为DHR中一个员工只能选择一个部门,而钉钉中可以选择多个部门,导致了员工的部门同步有以下规则:
A 同步时,员工在DHR中的部门如果在钉钉中没有的话,在钉钉中将该员工加入到这个部门。
B 同步时,员工在DHR中的部门已经在钉钉也有的话,则忽略,不做任何 *** 作。
C 使用警告的方式提示钉钉中有多个部门的员工,由管理员决定该员工需要退出哪些部门。
(1) 每天的23:50和12:30执行同步程序一次,也可以在钉钉中的”DHR钉钉数据同步“小程序中随时手动执行同步 *** 作。
(2) 为了提高同步程序的同步效率,同步程序每次只会同步近3天的考勤打卡时间,并且每月的15号和每月的最后一天同步一次当月所有的考勤打卡记录。
(3) 没有维护考勤规则的员工无法在DHR中导入考勤打卡时间,负责考勤的同事必须负责维护DHR中员工的考勤规则,并且DHR的考勤规则变动时须在钉钉中修改对应员工的考勤规则,必须保证DHR和钉钉中的考勤规则一致。
没有考勤排班规则的员工会在钉钉同步程序中以警告的方式提示。
问题1: 创建用户,提示手机号码在公司中已存在?
问题2: 提示员工没有维护考勤档案?
问题3: 如何处理“钉钉有DHR没有的部门”的警告信息?
问题4: 如何处理“钉钉存存在DHR中不存在的员工”的警告信息?
问题5: 如何处理“钉钉中以下员工没有工号”的警告信息?
问题6: XXX员工需要其同意才可添加?
问题7: 如果处理“DHR存在钉钉中不存在的员工”的警告信息?
问题8: 如何处理“钉钉中有XX个员工有多个部门”的警告信息?
我于2014年开启即时通讯的开发之路,历经从服务端到客户端,从第三方到自研,经历过诸多的研发难题,都一一破解。现将经验总结如下,希望对行业内从事IM开发的程序员有所帮助。
①P2P方式
P2P方式多用于局域网内聊天,这种方式在有种种限制和不便。一方面它只适合在线的点对点消息传输,对离线,群组等支持不够。另一方面由于 NAT 的存在,使得不同局域网内机器互联难度大大上升,在某些网络类型(对称NAT)下无法建立连接。使用P2P方式的软件在启动后一般做两件事情:
1、进行UDP广播:发送自己信息和接受同局域网内其他端信息。
2、开启TCP监听:等待其他端进行连接。
②服务器中转方式
大部分的互联网IM产品都采用服务器中转这种方式进行消息传输,相对于P2P的方式,具有有以下的优点:
1、支持更多P2P无法支持或支持不好的业务,如离线消息,群组,聊天室。
2、方便业务逻辑的拓展和新旧版本的兼容,当然它也有自己的问题,就是服务器架构复杂,并发要求高。
通过以上的比较,建议我们在开发IM系统的时候使用服务器中转的方式。
IM的网络连接方式有基于TCP的长连接和基于>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)