现在公司准备自己做一个考勤系统,但是公司人员上班时间差别很大,比如说:有的早上7:30上班,有的8点上班,还有的10点上班,下班时间也很乱,有的11:20-12:20之间随便休息半小时,在这半小时之内需要打两次卡,上班和下班....总之时间很没规则,请问有什么好的方法能做出判断,让系统自动识别打的卡是上班卡还是下班卡呢?(为了计算工时方便)
(我的目标是尽量减少人工干预)
本来想根据不同部门的员工设置不同的打卡计算时间,但“有的11:20-12:20之间随便休息半小时”是痛以部门的,也不好解决,
还请有过这方面经验的高手给个思路,先谢谢了~

解决方案 »

  1.   

    我的建议是对打卡进行计数,增加一个序号列, 每打一次就增一.
    比如如果从1开始,那么如果对应的序号是奇数,就是上班的,如果是偶数就是下班的.
    当然比如有的人上班或下班时故意按意按多次..那就没什么好办法了.
      

  2.   

    记录每次打卡时间。然后统计1-2时间 +3-4时间,个人认为
      

  3.   

    每天第一次打卡就是上班啊不过要严格算肯定是不行的,万一人家多刷几次,或者上班忘记了之类一般应该是进来刷一个机器,出去的时候刷另一个,我们就是,出来和进去不是同一个机器
      

  4.   

    多刷卡是可以控制的,问题是担心有人忘记打卡,这样要是计次的话以后的就都乱了...
      

  5.   

    ....怎么找不到提前的按钮了?
      

  6.   

    我是觉得这个和次序有很大关系,但持续由于会因为忘记打卡或者重复打卡产生错乱,那打卡是人为的,很难控制,我看还是让后台能更好的维护比较好,让人确认,总次数不对提示错误,运行修改,管理员可以加入一次打卡,次序按照时间来排,这样临时加入的刷卡也能移到前面去
      

  7.   

    看来还是得按时间判断,不然没办法统计迟早早退信息
      

  8.   

    第一点,系统在怎么计算,还是要人为手动调整的。所以不用太担心处理错了,只不过要尽可能的正确。
    公司人员上班时间差别很大,这个你可以将人员分类,比如说固定时间、弹性时间类别来处理。
    举个例子,固定时间就是1天8小时,早上9点到12点,下午1点到6点,这是固定的
    弹性时间也是1天8小时,但是早上可以提前一小时,下午下班可以提前1小时。等等。按照你的需求将员工分类。分类之后,按照类型处理,上下班时间就可以确定了。
    根据打卡时间的处理就可以获取员工的考勤。打卡异常或者忘打卡,肯定还要有相应的处理流程。以对你的考勤进行手动调整
      

  9.   

    可以按照刷卡的奇偶次数来判断上下班  同时还要设置无效刷卡时间:比如说刷了第一次之后,在3分钟之内再刷的话,刷卡次数不更新,只更新刷卡的时间 
      

  10.   

    如果你能保证每张卡一定会打一次上班,与下班的话,那就可以直接对记录进行统计了,偶数行减奇数行。但还得考虑,是不是还有些人,比如中午休息,只打了下班,进来的时候跟别人一起进来,或者一起出去,而没有打卡的问题。
      

  11.   

    解决办法:用两台机,一台打上班卡,一台打下班卡....汗.....
      

  12.   

    获取最后一次打卡时间,若是10分钟内,或自己定的时间内就算重复打卡,第二次打卡的不予计算并显示此人的打卡记录,并提示重复打卡,但算第一次打卡有效,
    如果用指纹的也一样,可加个无名指作为查看自己的打卡信息。
    用条形码的,可以两个条形码,一个作为打卡,一个作为查询,写程序时,用截取开头两个字来作为判断是打卡还是查询。(还可以加请假条形码)等,自己慢慢想象。
      

  13.   

    这个方法不错,我就是这么做的