eight
2024-08-14 ae118d2075951803ea3f60f6f8ef687409c73548
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package cn.lihu.jh.module.ecg.dal.mysql.room;
 
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.controller.admin.room.vo.RoomPageReqVO;
import cn.lihu.jh.module.ecg.dal.dataobject.room.RoomDO;
import cn.lihu.jh.module.ecg.dal.dataobject.room.RoomStatisticsDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
 
/**
 * 诊室和诊疗床 Mapper
 *
 * @author 芋道源码
 */
@Mapper
public interface RoomMapper extends BaseMapperX<RoomDO> {
 
    default PageResult<RoomDO> selectPage(RoomPageReqVO reqVO) {
        return selectPage(reqVO, new LambdaQueryWrapperX<RoomDO>()
                .eqIfPresent(RoomDO::getRoomId, reqVO.getRoomId())
                .eqIfPresent(RoomDO::getBedNo, reqVO.getBedNo())
                .betweenIfPresent(RoomDO::getCreateTime, reqVO.getCreateTime())
                .orderByDesc(RoomDO::getId));
    }
 
    @Select({ "SELECT room_id, count(1) as bed_num FROM lihu.clinic_room group by room_id;" })
    List<RoomStatisticsDO> roomStatistic();
 
    @Select({ "SELECT room_id, room_name FROM lihu.clinic_room where onstage=true group by room_id;" })
    List<RoomDO> simpleRoomList();
 
}