RiskManageDao_getLeaveWarn.sql 871 B

1234567891011121314151617181920212223242526272829303132
  1. select
  2. buser.realname as realname,
  3. temp.time as lastdingtime,
  4. warntext,
  5. dept.glcdesc as projectname,
  6. dept.parentdepartid as projectid,
  7. user.mobilePhone as tel
  8. from (
  9. select
  10. user_id,
  11. time ,
  12. '超过10天未考勤' as warntext
  13. from (
  14. select
  15. user_id ,
  16. max(attendance_time) as time
  17. from t_bus_ding_attendanceinfo
  18. group by user_id
  19. ) ding
  20. where
  21. DATE_FORMAT(time,'%Y-%m-%d') < :dingdate
  22. ) temp
  23. left join t_s_base_user buser on buser.id = temp.user_id
  24. left join t_s_user_org uo on uo.user_id = temp.user_id
  25. left join t_s_user user on user.id = temp.user_id
  26. left join t_s_depart dept on uo.org_id = dept.id
  27. left join t_bus_user_personnel per on per.userid = uo.user_id
  28. and not exists(select * from t_bus_special_attend special where special.userid =temp.user_id)
  29. where per.leave_date is null and per.manager_type = '2'
  30. order by projectname