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.*;
|
import cn.lihu.jh.module.ecg.controller.admin.devmanage.vo.*;
|
|
/**
|
* 设备 Mapper
|
*
|
* @author majianbo
|
*/
|
@Mapper
|
public interface DeviceMapper extends BaseMapperX<DeviceDO> {
|
|
default PageResult<DeviceDO> selectPage(DevicePageReqVO reqVO) {
|
return selectPage(reqVO, new LambdaQueryWrapperX<DeviceDO>()
|
.eqIfPresent(DeviceDO::getDevId, reqVO.getDevId())
|
.eqIfPresent(DeviceDO::getDevCodeIntrinsic, reqVO.getDevCodeIntrinsic())
|
.eqIfPresent(DeviceDO::getDevCodeHosp, reqVO.getDevCodeHosp())
|
.eqIfPresent(DeviceDO::getDevCodeDept, reqVO.getDevCodeDept())
|
.inIfPresent(DeviceDO::getState, reqVO.getState())
|
.eqIfPresent(DeviceDO::getCategory, reqVO.getCategory())
|
.eqIfPresent(DeviceDO::getBrand, reqVO.getBrand())
|
.eqIfPresent(DeviceDO::getModel, reqVO.getModel())
|
.betweenIfPresent(DeviceDO::getPurchaseDate, reqVO.getPurchaseDate())
|
.betweenIfPresent(DeviceDO::getCreateTime, reqVO.getCreateTime())
|
.orderByAsc(DeviceDO::getStateDate));
|
}
|
|
@Select("select * from lihu.device where dev_id=#{devId}")
|
@Results({
|
@Result(property = "patDetails", column = "pat_details", typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler.class)
|
})
|
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);
|
|
}
|