实现数据库检测今日是否已打卡

这个查询功能会在一次替补打卡的过程中检测两次,第一次在选中日期时,提示已存在,

但不会阻止继续操作,在保存时通过接口,才会真正阻止保存操作。

首先在前台将需要检查的时间和打卡用户的身份证号共同传入接口,业务层和控制层都是基本使用Boolean判断,所以直接上SQL:

SELECT COUNT(*) FROM BMGL_KQXX
WHERE sbsj
>= #{date, jdbcType=VARCHAR} AND sbsj < to_char(to_date(#{date, jdbcType=VARCHAR}, 'yyyymmddhh24miss')+1, 'yyyymmddhh24miss') AND sfzh = #{sfzh, jdbcType=VARCHAR}

解释一波:这里的date是传过来的一个值,这里的处理是只将一个固定值传过来,在SQL中将他的日期+1,在SQL中形成区间,再查询,sfzh则用于约束用户。

本来这个还不知道如何实现,还是问了数据组的同事才知道的,想想自己写SQL的技术还是菜的一批啊

猜你喜欢

转载自www.cnblogs.com/yuan-zhou/p/11096473.html