好久没有记录最近遇到的问题了,源于实在是有点忙。

好吧,废话不多说,正式开始。

考勤功能的实现,首先需要考虑到考勤人,考勤时间,以及考勤状态这些属性。说起来很简单,无非就是当用户点击考勤按钮之后,更改考勤状态,并复刻当前的时间到对应考勤人的表记录中。

目前我默认'0'为未打卡状态,'1'为打卡状态,则SQL语句如下所示:

update table_kq set kqsj='2018-5-6 20:55:27',status='1';

此刻,就能够在后台对应显示各个人的考勤状态了,在网页前端使用打勾或者打叉的图片来进行直观展示。

接下来,问题就来了,这里反映的是每个考勤人单次的考勤状态。当我第一天打卡后,数据库中的‘staus’字段信息就一直是‘1’,之后的每一次打卡无非是更改打卡时间,需要采取哪一种方式来使得每天凌晨自动复位每一个考勤人的考勤时间和考勤状态。目前我考虑到的是用java来实现一个简单定时器,调用一次复位功能的服务。

此外,我在思考是否还有其他实现方案。出去抽了个烟,在群里提了一下这个问题,有人告诉我在数据库中写一个事件定时触发器就ok了。由于之前从来没接触过在数据库中写定时触发器,所以不免又是一个新的学习机会。但是至少有了第二种实现方案。

假设在实现了自动触发器的前提下,这个简单的打卡功能只提供了当天考勤状态的查询。如果,我想查看过去一个星期,或者一个月的人员考勤状况,这该如何进行处理。

目前没有一点头绪,因为考勤表只有一张,除非我联表进行更新数据,主表储存当天的数据,副表进行存储每天的人员考勤状况,副表涉及到的字段有kqrq(yyyy-MM-dd),kqr1,kqr2,kqr3....,kqstatus.这样就等于将每一个考勤人的名字作为一个字段,而查看历史考勤只需要通过对应某一个,如2018年5月6号,小明的考勤状况是未打卡还是打卡:

select kqstatus from tab_history_kq where kqsj='2018-5-6'

虽然该方法有点笨,但是最后还是能实现历史考勤状态的查询,不过肯定还有其他更聪明的方法。

不说了,抽根烟,再去想一下优化方法。

记考勤功能的简单实现相关推荐

  1. php简单实例,php实现推荐功能的简单实例

    php实现推荐功能的简单实例,魔法,标题,文章,简明扼要,数组 php实现推荐功能的简单实例 易采站长站,站长之家为您整理了php实现推荐功能的简单实例的相关内容. 利用similar_text将这些 ...

  2. C#摄像头实现拍照功能的简单代码示例

    C#摄像头实现拍照功能的简单代码示例 2009-11-20  来自:网上整理字体大小:[大中小] ·摘要:这里将介绍一个C#摄像头实现拍照功能的简单代码示例,代码虽然不短,但是基本上实现了相对应的功能 ...

  3. Java—实现 IOC 功能的简单 Spring 框架

    编写一个实现 IOC 功能的简单 Spring 框架,包含对象注册.对象管理.及暴 露给外部获取对象的功能,并编写测试程序.扩展注册器的方式,要求采用 XML 和 txt 文件. 源代码 packag ...

  4. html js控制页面蒙版,JavaScript蒙板(model)功能的简单实现代码

    思路: •创建一个蒙板, 设置蒙板的堆叠顺序保证能将其它元素盖住 position: absolute; top: 0; left: 0; display: none; background-colo ...

  5. 利用VRRP功能实现简单的路由器备份(图)

    利用VRRP功能实现简单的路由器备份(图) 附件: 有时候为了保证我们网络的稳定性和可靠性,可能会申请两条出口链路,使用两个路由器.在其中的一个路由器无法正常工作时,由另外一个路由器来接管相应的工作. ...

  6. Unity 基础 之 在 UGUI 上简单实现VideoPlayer视频播放的功能,简单暂停播放/显示视频名称/显示时长/拖拽播放等

    Unity 基础 之 在 UGUI 上简单实现VideoPlayer视频播放的功能,简单暂停播放/显示视频名称/显示时长/拖拽播放等 目录 Unity 基础 之 在 UGUI 上简单实现VideoPl ...

  7. 底部点击加载更多功能的简单实现

    底部点击加载更多功能的简单实现 ​ 主要思路是:后台将数据按10个一页进行处理,前端请求的时候传递的分页参数就是页数.从主页选择一个类型去到列表页,会先从后端请求10条数据渲染到页面上.点击加载更多的 ...

  8. php简单的功能模块,php中mysql模块部分功能的简单封装

    php中mysql模块部分功能的简单封装 复制代码 代码如下: class mysql { private $db; // datebase connect private $result; // m ...

  9. python分拣豆子_〖小豆子〗还在为上网课记考勤而忧虑吗?自制python半自动打考勤程序来了!...

    自从当了课代表,每节课都要对着腾讯课堂的人名单一一对照Excel来记考勤,有这个时间还不如干别的事情...... 所以!!!!!我就用了一天时间开发出来了半自动打考勤程序!!!! 目前正在调试阶段,只 ...

最新文章

  1. Java基础——左移和右移
  2. python - IO模型
  3. Windows / Ubuntu操作系统下Pixhawk原生固件PX4的编译方法
  4. vscode 导入python库_vscode 如何导入python库
  5. mysql租车管理系统_基于java实现租车管理系统
  6. k2p华硕系统怎么设置_Linux怎么设置系统环境变量之export命令详解
  7. 为什么程序员的社会地位不高?
  8. 20145205 《信息安全系统设计基础》第1周学习总结
  9. 仿网易云音乐html代码,HTML作业-仿网易云音乐项目
  10. 10种流行的Java框架
  11. 快来看,数据分析BI软件居然也能完成基金变迁大数据分析?
  12. 机器学习模型效果评估指标与方法介绍
  13. 台式机主板常见接口资料
  14. 8/30 Hourglass网络原理
  15. 60020:not allow to access from your ip
  16. oracle添加删除磁盘,oracle11gR2 ASM添加和删除磁盘
  17. 液体特效文字AE标题模板免费下载
  18. weinre开发工具的使用
  19. C-Lodop云打印服务器 v3.075
  20. Android C++的sp指针简介

热门文章

  1. 已发布的AIR下载链接列表
  2. instance实例对象、class类对象、meta-class元类对象
  3. 手撕Alexnet卷积神经网络-pytorch-详细注释版(可以直接替换自己数据集)-直接放置自己的数据集就能直接跑。跑的代码有问题的可以在评论区指出,看到了会回复。训练代码和预测代码均有。
  4. Netflix大奖数据
  5. 九、产生珍宝,用于补血或升级子弹(雷霆战机)
  6. NetBIOS名字解析过程
  7. 牛年更牛!贴年画、吉祥话大赛!
  8. Analysis For Office的一些使用技巧
  9. 博学谷学习记录之人工智能(python进阶编程)第五篇
  10. 自动化测试,人生的第二种高薪工作岗位!!!!