dbd-meeting/shoot-hand/ics-admin/src/main/resources/mapper/admin/MeetingReservationIOMapper.xml
2025-02-12 17:12:20 +08:00

30 lines
2.2 KiB
XML

<?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="com.ics.admin.mapper.MeetingReservationIOMapper">
<!-- 导出列表 -->
<select id="getMeetingReservationList" parameterType="com.ics.admin.vo.MeetingRecordExportVo" resultType="com.ics.admin.vo.MeetingRecordExportVo">
SELECT mr.id, sn, room_id, start, DATE_FORMAT(start, '%m月%d日 %H:%i') startStr, `end`, time_format, title, person_num, leader, booking_user_name, booking_user_phone, user_org_id, user_org, status, operate, mr.remark, mr.ext1, mr.ext2, mr.ext3, mr.create_time createTime,
floor_id, floor, name, type_id, type_name, device, room_num, area, capacity_num, content, enable, room.ext1 roomExt1, room.ext2 roomExt2, room.ext3 roomExt3, room.remark roomRemark
from ics_meeting_reservation mr inner join ics_meeting_room room on mr.room_id=room.id where mr.delete_flag=0 and room.delete_flag=0 and status &gt;= 5
<if test="title != null and title != ''"> AND title LIKE CONCAT('%', #{title}, '%')</if>
<if test="userOrg != null and userOrg != ''"> AND user_org LIKE CONCAT('%', #{userOrg}, '%')</if>
<if test="floor != null and floor != ''"> AND floor = #{floor}</if>
<if test="name != null and name != ''"> AND name LIKE CONCAT('%', #{name}, '%')</if>
<if test="typeName != null and typeName != ''"> AND type_name = #{typeName}</if>
<if test="device != null and device != ''"> AND room.device LIKE CONCAT('%', #{device}, '%')</if>
<if test="capacityNum != null"> AND capacity_num &lt;= #{capacityNum}</if>
<if test="filterDate != null and filterDate != ''"> AND start LIKE CONCAT(#{filterDate}, '%')</if>
order by room.room_num,start
</select>
<select id="total" resultType="com.ics.admin.vo.MeetingTotalVo">
select room.name,count(mr.id) cz,COALESCE(sum(mr.person_num),0) pn from ics_meeting_room room LEFT join ics_meeting_reservation mr
on mr.room_id=room.id and mr.delete_flag=0 and room.delete_flag=0 and mr.start LIKE CONCAT(#{filterDate}, '%') and mr.`status` &gt; 7
group by room.name order by room.id
</select>
</mapper>