这个死财务提的莫名其妙的需求
This commit is contained in:
@@ -319,12 +319,26 @@
|
|||||||
<!-- 如果 calcTime 不为空,查询 calcTime 对应的出勤记录 -->
|
<!-- 如果 calcTime 不为空,查询 calcTime 对应的出勤记录 -->
|
||||||
(#{calcTime} IS NOT NULL AND #{calcTime} >= oas.create_time)
|
(#{calcTime} IS NOT NULL AND #{calcTime} >= oas.create_time)
|
||||||
<!-- 如果 calcTime 为空,查询整个 relationMonth -->
|
<!-- 如果 calcTime 为空,查询整个 relationMonth -->
|
||||||
OR (#{calcTime} IS NULL AND oas.create_time BETWEEN
|
OR (
|
||||||
-- 提取relationMonth的年月部分并构造第一天
|
#{calcTime} IS NULL AND (
|
||||||
|
-- 如果 relationMonth 是当前月,则查询本月最晚的记录
|
||||||
|
(DATE_FORMAT(#{relationMonth}, '%Y-%m') = DATE_FORMAT(CURRENT_DATE, '%Y-%m')
|
||||||
|
AND oas.create_time BETWEEN DATE_FORMAT(#{relationMonth}, '%Y-%m-01')
|
||||||
|
AND (
|
||||||
|
SELECT MAX(oar.calc_time)
|
||||||
|
FROM oa_attendance_record oar
|
||||||
|
WHERE oar.user_id = #{userId}
|
||||||
|
AND oar.del_flag = 0
|
||||||
|
)
|
||||||
|
-- 如果 relationMonth 不是当前月,则查询整个 relationMonth 的记录
|
||||||
|
OR oas.create_time BETWEEN
|
||||||
DATE_FORMAT(#{relationMonth}, '%Y-%m-01')
|
DATE_FORMAT(#{relationMonth}, '%Y-%m-01')
|
||||||
AND LAST_DAY(STR_TO_DATE(#{relationMonth}, '%Y-%m-%d'))
|
AND LAST_DAY(STR_TO_DATE(#{relationMonth}, '%Y-%m-01'))
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user