gunshi-project-ss/src/main/java/com/gunshi/project/xyt/mapper/StResStcdRefMapper.java

70 lines
2.6 KiB
Java
Raw Normal View History

2024-01-24 14:27:40 +08:00
package com.gunshi.project.xyt.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.gunshi.project.xyt.entity.vo.ReservoirLevelVo;
2024-01-24 14:27:40 +08:00
import com.gunshi.project.xyt.model.StResStcdRef;
2024-02-01 17:25:13 +08:00
import java.math.BigDecimal;
2024-01-24 14:27:40 +08:00
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
2024-02-01 17:25:13 +08:00
import org.apache.ibatis.annotations.Select;
2024-01-24 14:27:40 +08:00
@Mapper
public interface StResStcdRefMapper extends BaseMapper<StResStcdRef> {
2024-01-24 14:27:40 +08:00
int batchInsert(@Param("list") List<StResStcdRef> list);
2024-02-01 17:25:13 +08:00
@Select("""
<script>
select top 1 RZ from ST_RES_STCD_REF,ST_RSVR_R
where ST_RES_STCD_REF.STCD = ST_RSVR_R.STCD and
ST_RES_STCD_REF.RES_ID = #{resId}
order by ST_RSVR_R.TM Desc;
</script>
""")
BigDecimal queryRzByResId(@Param("resId") String resId);
@Select("""
<script>
SELECT DATEADD(HOUR, DATEDIFF(HOUR, 0, ST_RSVR_R.TM), 0) as time,
AVG(RZ) as avgRZ
FROM ST_RES_STCD_REF,ST_RSVR_R
WHERE ST_RSVR_R.TM &gt;= dateadd(day,-7,getdate()) AND ST_RSVR_R.TM &lt; GETDATE() AND
ST_RES_STCD_REF.STCD = ST_RSVR_R.STCD and
ST_RES_STCD_REF.RES_ID = #{resId}
GROUP BY DATEADD(HOUR, DATEDIFF(HOUR, 0, ST_RSVR_R.TM), 0)
</script>
""")
List<ReservoirLevelVo> queryRzSevenDayByResId(@Param("resId") String resId);
@Select("""
<script>
SELECT DATEADD(HOUR, DATEDIFF(HOUR, 0, ST_RSVR_R.TM), 0) as time,
AVG(RZ) as avgRZ
FROM ST_RES_STCD_REF,ST_RSVR_R
WHERE ST_RSVR_R.TM &gt;= dateadd(day,-30,getdate()) AND ST_RSVR_R.TM &lt; GETDATE() AND
ST_RES_STCD_REF.STCD = ST_RSVR_R.STCD and
DATEPART(HOUR, ST_RSVR_R.TM) = 8 AND
ST_RES_STCD_REF.RES_ID = #{resId}
GROUP BY DATEADD(HOUR, DATEDIFF(HOUR, 0, ST_RSVR_R.TM), 0)
</script>
""")
List<ReservoirLevelVo> queryRzMonthByResId(@Param("resId") String resId);
@Select("""
<script>
SELECT DATEADD(HOUR, DATEDIFF(HOUR, 0, ST_RSVR_R.TM), 0) as time,
AVG(RZ) as avgRZ
FROM ST_RES_STCD_REF,ST_RSVR_R
WHERE ST_RSVR_R.TM &gt;= dateadd(MONTH,-6,getdate()) AND ST_RSVR_R.TM &lt; GETDATE() AND
ST_RES_STCD_REF.STCD = ST_RSVR_R.STCD and
DATEPART(HOUR, ST_RSVR_R.TM) = 8 AND
ST_RES_STCD_REF.RES_ID = #{resId}
GROUP BY DATEADD(HOUR, DATEDIFF(HOUR, 0, ST_RSVR_R.TM), 0)
</script>
""")
List<ReservoirLevelVo> queryRzHalfYearByResId(@Param("resId") String resId);
2024-01-24 14:27:40 +08:00
}