SafetyBodyCameraDeviceMapper.xml 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.zhgd.scs.mapper.SafetyBodyCameraDeviceMapper">
  6. <select id="getList" resultType="com.zhgd.scs.domain.vo.SafetyBodyCameraDeviceVo">
  7. SELECT sbcd.*,lp.`name` personName,lp.en_name personEnName,lu.abbr_name unitName,lu.id unitId,lp.tel,lp.stc_no,lp.wrc_no, ld.name
  8. departmentName,sbcnr.alarm,sbcat.type
  9. typeName,sbcnr.lng,sbcnr.lat
  10. FROM safety_body_camera_device sbcd
  11. LEFT JOIN safety_body_camera_newest_record sbcnr on sbcnr.device_code = sbcd.device_code
  12. LEFT JOIN safety_body_camera_alarm_type sbcat on sbcnr.type_id = sbcat.id
  13. LEFT JOIN labor_person lp ON sbcd.person_id=lp.id AND lp.deleted = 0
  14. LEFT JOIN labor_department ld on lp.department_id = ld.id
  15. LEFT JOIN labor_unit lu ON lp.unit_id=lu.id
  16. WHERE sbcd.project_id = #{projectId}
  17. <if test="unitId!=null">
  18. AND lp.unit_id = #{unitId}
  19. </if>
  20. <if test="personName!=null and personName!=''">
  21. AND lp.name LIKE CONCAT('%', #{personName}, '%')
  22. </if>
  23. <if test="state!=null">
  24. AND sbcd.state = #{state}
  25. </if>
  26. <if test="inOutState!=null">
  27. AND sbcd.in_out_state = #{inOutState}
  28. </if>
  29. <if test="bindingState != null">
  30. <choose>
  31. <when test="bindingState == 1">
  32. AND sbcd.person_id IS NOT NULL
  33. </when>
  34. <when test="bindingState == 0">
  35. AND sbcd.person_id IS NULL
  36. </when>
  37. </choose>
  38. </if>
  39. ORDER BY
  40. sbcd.in_out_state DESC,sbcd.state DESC, sbcd.in_time DESC,sbcd.id DESC
  41. </select>
  42. <select id="getInfoById" resultType="com.zhgd.scs.domain.vo.SafetyBodyCameraDeviceVo">
  43. SELECT sbcd.*,
  44. lp.`name` personName,
  45. lp.en_name personEnName,
  46. lu.abbr_name unitName,
  47. lu.id unitId,
  48. ld.name departmentName,
  49. lp.tel,
  50. lp.stc_no,
  51. lp.wrc_no
  52. FROM safety_body_camera_device sbcd
  53. LEFT JOIN labor_person lp ON sbcd.person_id = lp.id AND lp.deleted = 0
  54. LEFT JOIN labor_department ld on lp.department_id = ld.id
  55. LEFT JOIN labor_unit lu ON lp.unit_id = lu.id
  56. WHERE sbcd.id = #{id}
  57. </select>
  58. <select id="getListByFenceId" resultType="com.zhgd.scs.domain.vo.SafetyBodyCameraDeviceVo">
  59. SELECT sbcd.*,
  60. lp.`name` personName,
  61. lp.en_name personEnName,
  62. lu.abbr_name unitName,
  63. lu.id unitId,
  64. ld.name departmentName,
  65. lp.tel,
  66. lp.stc_no,
  67. lp.wrc_no
  68. FROM safety_body_camera_virtual_fence_device_ref sbcvfd
  69. LEFT JOIN safety_body_camera_device sbcd ON sbcvfd.device_id = sbcd.id
  70. LEFT JOIN labor_person lp ON sbcd.person_id = lp.id AND lp.deleted = 0
  71. LEFT JOIN labor_department ld ON lp.department_id = ld.id
  72. LEFT JOIN labor_unit lu ON lp.unit_id = lu.id
  73. WHERE sbcvfd.fence_id = #{id}
  74. </select>
  75. <select id="getListByUnitIds" resultType="com.zhgd.scs.domain.vo.SafetyBodyCameraDeviceVo">
  76. SELECT sbcd.*,
  77. lp.`name` personName,
  78. lp.en_name personEnName,
  79. lu.abbr_name unitName,
  80. lu.id unitId,
  81. ld.name departmentName,
  82. lp.tel,
  83. lp.stc_no,
  84. lp.wrc_no
  85. FROM safety_body_camera_device sbcd
  86. LEFT JOIN labor_person lp ON sbcd.person_id = lp.id AND lp.deleted = 0
  87. LEFT JOIN labor_department ld ON lp.department_id = ld.id
  88. LEFT JOIN labor_unit lu ON lp.unit_id = lu.id
  89. WHERE sbcd.project_id = #{projectId}
  90. AND lu.id IN
  91. <foreach collection="unitIds" item="id" close=")" open="(" separator=",">
  92. #{id}
  93. </foreach>
  94. </select>
  95. <select id="userDeviceList" resultType="com.zhgd.scs.domain.vo.UserDeviceVo">
  96. select d.device_code, lp.id personId, lp.`name` deviceUser
  97. from safety_body_camera_device d
  98. left join labor_person lp on d.person_id = lp.id
  99. WHERE d.project_id = #{projectId}
  100. AND d.in_out_state = 1
  101. </select>
  102. <select id="getAllCount" resultType="java.lang.Integer">
  103. select count(*)
  104. from safety_body_camera_device d
  105. LEFT JOIN labor_person p ON d.person_id = p.id AND p.deleted = 0
  106. WHERE d.project_id = #{projectId}
  107. AND d.in_out_state = 1
  108. AND p.id IS NOT NULL
  109. </select>
  110. <select id="exportDeviceList" resultType="com.zhgd.scs.domain.vo.SafetyBodyCameraDeviceExport">
  111. SELECT sbcd.*,lp.`name` personName,lp.en_name personEnName,lu.abbr_name unitName,lu.id unitId,lp.tel,lp.stc_no,lp.wrc_no
  112. FROM safety_body_camera_device sbcd
  113. LEFT JOIN labor_person lp ON sbcd.person_id=lp.id AND lp.deleted = 0
  114. LEFT JOIN labor_unit lu ON lp.unit_id=lu.id
  115. WHERE sbcd.project_id = #{projectId}
  116. <if test="unitId!=null">
  117. AND lp.unit_id = #{unitId}
  118. </if>
  119. <if test="personName!=null and personName!=''">
  120. AND lp.name LIKE CONCAT('%', #{personName}, '%')
  121. </if>
  122. <if test="state!=null">
  123. AND sbcd.state = #{state}
  124. </if>
  125. <if test="inOutState!=null">
  126. AND sbcd.in_out_state = #{inOutState}
  127. </if>
  128. <if test="bindingState != null">
  129. <choose>
  130. <when test="bindingState == 1">
  131. AND sbcd.person_id IS NOT NULL
  132. </when>
  133. <when test="bindingState == 0">
  134. AND sbcd.person_id IS NULL
  135. </when>
  136. </choose>
  137. </if>
  138. ORDER BY
  139. sbcd.in_out_state DESC,sbcd.state DESC, sbcd.in_time DESC,sbcd.id DESC
  140. </select>
  141. </mapper>