<?xml version="1.0" encoding="UTF-8"?>
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<mapper namespace="org.springblade.modules.traceability.mapper.SweepRecordMapper">
|
|
<!--自定义查询溯源码扫描记录分页数据-->
|
<select id="selectSweepRecordPage" resultType="org.springblade.modules.traceability.vo.SweepRecordVO">
|
select * from sys_sweep_record
|
where 1=1
|
</select>
|
|
<!--获取扫描次数统计数据-->
|
<select id="getSweepRecordStatistics" resultType="java.lang.Integer">
|
select count(*) from sys_sweep_record ssr left join sys_traceability st on ssr.code = st.id
|
left join sys_recovery sr on sr.id = st.recovery_id
|
left join sys_land sl on sl.id = sr.land_id
|
WHERE DAY(ssr.create_time) = NOW()
|
and sl.farm_id = #{sweepRecord.farmId}
|
union all
|
select count(*) from sys_sweep_record ssr left join sys_traceability st on ssr.code = st.id
|
left join sys_recovery sr on sr.id = st.recovery_id
|
left join sys_land sl on sl.id = sr.land_id
|
WHERE TO_DAYS( NOW( ) ) - TO_DAYS( ssr.create_time) = 1
|
and sl.farm_id = #{sweepRecord.farmId}
|
union all
|
select count(*) from sys_sweep_record ssr left join sys_traceability st on ssr.code = st.id
|
left join sys_recovery sr on sr.id = st.recovery_id
|
left join sys_land sl on sl.id = sr.land_id
|
WHERE YEARWEEK(date_format(ssr.create_time,'%Y-%m-%d')) = YEARWEEK(now())
|
and sl.farm_id = #{sweepRecord.farmId}
|
union all
|
select count(*) from sys_sweep_record ssr left join sys_traceability st on ssr.code = st.id
|
left join sys_recovery sr on sr.id = st.recovery_id
|
left join sys_land sl on sl.id = sr.land_id
|
WHERE YEARWEEK(date_format(ssr.create_time,'%Y-%m-%d')) = YEARWEEK(now())-1
|
and sl.farm_id = #{sweepRecord.farmId}
|
union all
|
select count(*) from sys_sweep_record ssr left join sys_traceability st on ssr.code = st.id
|
left join sys_recovery sr on sr.id = st.recovery_id
|
left join sys_land sl on sl.id = sr.land_id
|
WHERE DATE_FORMAT( ssr.create_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
|
and sl.farm_id = #{sweepRecord.farmId}
|
union all
|
select count(*) from sys_sweep_record ssr left join sys_traceability st on ssr.code = st.id
|
left join sys_recovery sr on sr.id = st.recovery_id
|
left join sys_land sl on sl.id = sr.land_id
|
WHERE PERIOD_DIFF( date_format( now( ) , '%Y%m' ) , date_format( ssr.create_time, '%Y%m' ) ) =1
|
and sl.farm_id = #{sweepRecord.farmId}
|
</select>
|
</mapper>
|