FROM (select top 4 date from emr_holiday_set where date >= CONVERT (
FROM (select top ${overdueDaysTwo} date from emr_holiday_set where date >= CONVERT (
VARCHAR (10),
m.discharge_date_time,
120
@ -1508,12 +1509,15 @@
LEFT JOIN (select code,name from emr_dictionary where parent_id=(select id from emr_dictionary where typeCode='dept_code' )) e
on m.dept_admission_to=e.code
<where> 1=1 and m.master_id!='' and m.master_id is not null
<iftest="(overdueDaysTwo != null and overdueDaysTwo != '') and (overdueDays != null and overdueDays != '')">
and ISNULL( datediff(day,convert(varchar(100),m.mid_date,23),convert(varchar(100),f.handle_time,23)),0)+ISNULL(m.dayOne,0)-1-cast(#{overdueDays,jdbcType=NCHAR} as int)>=#{overdueDaysTwo,jdbcType=NCHAR}
</if>
<iftest="(overdueDaysTwo != null and overdueDaysTwo != '') and (overdueDays == null or overdueDays == '')">
and ISNULL( datediff(day,convert(varchar(100),m.mid_date,23),convert(varchar(100),f.handle_time,23)),0)+ISNULL(m.dayOne,0)-1-3>=#{overdueDaysTwo,jdbcType=NCHAR}
</if>
<!--<if test="(overdueDaysTwo != null and overdueDaysTwo != '') ">-->
<!--and-->
<!--DATEDIFF(dd,(SELECT max(b.date)-->
<!--FROM (select top 4 date from emr_holiday_set where date >= CONVERT (-->
<!--VARCHAR (10),-->
<!--m.discharge_date_time,-->
<!--120-->
<!--) and flag= 1 order by date asc) as b), CONVERT(VARCHAR(20),f.handle_time,23)) >=#{overdueDaysTwo,jdbcType=NCHAR}-->
select f1.id,f1.following_content,f1.handle_name,CONVERT(VARCHAR(20),f1.handle_time,120) handle_time,ISNULL(DATEDIFF(dd,CONVERT(VARCHAR(20),f1.handle_time,23),CONVERT(VARCHAR(20),f2.handle_time,23)), 0) diffDay,f2.handle_time as againTime,
(SELECT max(b.date)
FROM (select top ${overdueDaysTwo} date from emr_holiday_set where date >= CONVERT (
VARCHAR (10),
f1.handle_time,
120
) and flag= 1 order by date asc) as b) as overTime1,
<iftest="overdueDays != null and overdueDays != ''">
case
when ISNULL( datediff(day,convert(varchar(100),f2.mid_date,23),convert(varchar(100),f1.handle_time,23)),0)<=0
@ -1617,12 +1627,15 @@
LEFT JOIN (select code,name from emr_dictionary where parent_id=(select id from emr_dictionary where typeCode='dept_code' )) e
on m.dept_admission_to=e.code
<where> 1=1 and m.master_id!='' and m.master_id is not null and f2.handle_time is not null
<iftest="(overdueDaysTwo != null and overdueDaysTwo != '') and (overdueDays != null and overdueDays != '')">
and ISNULL( datediff(day,convert(varchar(100),f2.mid_date,23),convert(varchar(100),f1.handle_time,23)),0)+ISNULL(f2.dayOne,0)-1-cast(#{overdueDays,jdbcType=NCHAR} as int)>=#{overdueDaysTwo,jdbcType=NCHAR}
</if>
<iftest="(overdueDaysTwo != null and overdueDaysTwo != '') and (overdueDays == null or overdueDays == '')">
and ISNULL( datediff(day,convert(varchar(100),f2.mid_date,23),convert(varchar(100),f1.handle_time,23)),0)+ISNULL(f2.dayOne,0)-1-3>=#{overdueDaysTwo,jdbcType=NCHAR}
</if>
<!--<if test="(overdueDaysTwo != null and overdueDaysTwo != '') ">-->
<!--and-->
<!--DATEDIFF(dd,(SELECT max(b.date)-->
<!--FROM (select top 4 date from emr_holiday_set where date >= CONVERT (-->
<!--VARCHAR (10),-->
<!--f1.handle_time,-->
<!--120-->
<!--) and flag= 1 order by date asc) as b), CONVERT(VARCHAR(20),f2.handle_time,23)) >=#{overdueDaysTwo,jdbcType=NCHAR}-->