eight
2024-09-29 9b351239a6370c9c680ed13fc7a7f8f000137c7a
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/devmanage/DeviceMapper.java
@@ -1,15 +1,20 @@
package cn.lihu.jh.module.ecg.dal.mysql.devmanage;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.*;
import cn.lihu.jh.framework.common.pojo.PageResult;
import cn.lihu.jh.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.lihu.jh.framework.mybatis.core.mapper.BaseMapperX;
import cn.lihu.jh.module.ecg.dal.dataobject.devmanage.DeviceDO;
import cn.lihu.jh.module.ecg.dal.dataobject.devmanage.DeviceStatisticDO;
import cn.lihu.jh.module.ecg.dal.dataobject.jobrecord.JobRecordStatisticDO;
import org.apache.ibatis.annotations.Mapper;
import cn.lihu.jh.module.ecg.controller.admin.devmanage.vo.*;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
/**
 * 设备 Mapper
@@ -22,6 +27,7 @@
    default PageResult<DeviceDO> selectPage(DevicePageReqVO reqVO) {
        return selectPage(reqVO, new LambdaQueryWrapperX<DeviceDO>()
                .eqIfPresent(DeviceDO::getDevId, reqVO.getDevId())
                .eqIfPresent(DeviceDO::getState, reqVO.getState())
                .eqIfPresent(DeviceDO::getCategory, reqVO.getCategory())
                .eqIfPresent(DeviceDO::getBrand, reqVO.getBrand())
                .eqIfPresent(DeviceDO::getModel, reqVO.getModel())
@@ -33,4 +39,25 @@
    @Select("select * from lihu.device where dev_id=#{devId}")
    DeviceDO getDeviceByDevId(@Param("devId") String devId);
}
    @Update("update lihu.device set state=#{state}, state_date=#{stateDate} where dev_id=#{devId}")
    Integer updateDevState(@Param("devId") String devId, @Param("state") Integer state, @Param("stateDate") LocalDate stateDate);
    @Select("<script>" +
            "select category, state, count(1) as dev_count from lihu.device " +
            " <where> deleted = 0 " +
            "   <if test=\"category != null and category != ''\"> " +
            "     and category = #{category} " +
            "   </if> " +
            "   <if test=\"brand != null and brand != ''\"> " +
            "     and brand = #{brand} " +
            "   </if> " +
            "   <if test=\"model != null and model != ''\"> " +
            "     and model = #{model} " +
            "   </if> " +
            " </where> " +
            " group by category, state " +
            " order by category " +
            "</script>")
    List<DeviceStatisticDO> getDevStatistic(DevicePageReqVO pageReqVO);
}