对于时间参数进行比较时, 如果拿传入的时间类型参数与空字符串''进行对比判断则会引发异常. 所以需要在代码中去该判断, 只保留非空判断。 修改前:
<if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 -->
and date_format(s.create_time,'%y%m%d') >= date_format(#{params.beginTime},'%y%m%d')
</if>
<if test="params.endTime != null and params.endTime != ''"><!-- 结束时间检索 -->
and date_format(s.create_time,'%y%m%d') <= date_format(#{params.endTime},'%y%m%d')
</if>
修改后:
<if test="params.beginTime != null"><!-- 开始时间检索 -->
and date_format(s.create_time,'%y%m%d') >= date_format(#{params.beginTime},'%y%m%d')
</if>
<if test="params.endTime != null"><!-- 结束时间检索 -->
and date_format(s.create_time,'%y%m%d') <= date_format(#{params.endTime},'%y%m%d')
</if>
回复