FloorDao.xml 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="platform.modules.build.dao.FloorDao">
  4. <select id="findFloorByBuildId" resultType="String">
  5. select * from y_floor where build_number=#{buildNum}
  6. </select>
  7. <select id="findFloorCountByBuildNum" resultType="integer">
  8. select count(id) from y_floor where build_number=#{buildNum} and del_flag=0
  9. </select>
  10. <select id="sumIsUse" resultType="integer">
  11. select IFNULL(sum(is_use),0) from y_floor where building_id=#{building_id} and del_flag=0
  12. </select>
  13. <select id="findFloorStrByBuildNum" resultType="java.lang.String">
  14. select group_concat(floor) from y_floor where build_number=#{buildNum} and del_flag=0 group by build_number
  15. </select>
  16. <update id="deleteFloorByBuildingId">
  17. update y_floor set del_flag=1
  18. where building_id=#{building_id}
  19. </update>
  20. <update id="updateNoBatch" parameterType="list">
  21. update y_floor
  22. <trim prefix="set" suffixOverrides=",">
  23. <trim prefix="no =case" suffix="end,">
  24. <foreach collection="list" item="i" index="index">
  25. <if test="i.no!=null">
  26. when id=#{i.id} then #{i.no}
  27. </if>
  28. </foreach>
  29. </trim>
  30. </trim>
  31. where
  32. <foreach collection="list" separator="or" item="i" index="index">
  33. id=#{i.id}
  34. </foreach>
  35. </update>
  36. <select id="findFloorCountByBuildId" resultType="java.lang.Integer">
  37. select count(id) from y_floor where del_flag = false AND is_use = true AND building_id = #{buildId}
  38. </select>
  39. <select id="getReaminAreaByBuildId" resultType="java.lang.Double">
  40. select IFNULL(sum(remain_area),0) from y_floor where del_flag = false AND is_use = true AND building_id = #{id}
  41. </select>
  42. <select id="findRentArea" resultType="java.lang.Double">
  43. select IFNULL(sum(area),0) from ic_contract_floor where del_flag = false AND building_id = #{buildingId}
  44. AND floor = #{floor} AND status = 2
  45. </select>
  46. <select id="findByBuildingNameAndFloor" resultType="platform.modules.build.entity.BuildFloor">
  47. select * from y_floor WHERE del_flag = FALSE AND is_use = TRUE AND building_id = #{building_id} AND floor = #{floor}
  48. </select>
  49. <select id="findByQuery" resultType="platform.modules.build.entity.BuildFloor">
  50. select * from y_floor f
  51. where f.del_flag = false and f.is_use = 1 and f.building_id = #{query.building_id}
  52. <choose>
  53. <when test="query.demandDate != null and query.demandDate != ''">
  54. and (f.remain_area +
  55. (
  56. IFNULL(
  57. (
  58. SELECT
  59. IFNULL(SUM( cf.area ),0)
  60. FROM
  61. ic_contract_floor cf
  62. WHERE
  63. cf.floor_id = f.id
  64. AND cf.contract_end > NOW() AND cf.contract_end <![CDATA[ < ]]> #{query.demandDate}
  65. )
  66. , 0 )
  67. ))
  68. >0
  69. <if test="query.minArea != null and query.minArea != ''">
  70. and (f.remain_area +
  71. (
  72. IFNULL(
  73. (
  74. SELECT
  75. IFNULL(SUM( cf.area ),0)
  76. FROM
  77. ic_contract_floor cf
  78. WHERE
  79. cf.floor_id = f.id
  80. AND cf.contract_end > NOW() AND cf.contract_end <![CDATA[ < ]]> #{query.demandDate}
  81. ), 0)
  82. ))
  83. >= #{query.minArea}
  84. </if>
  85. <if test="query.maxArea != null and query.maxArea != ''">
  86. and (f.remain_area +
  87. (
  88. IFNULL(
  89. (
  90. SELECT
  91. IFNULL(SUM( cf.area ),0)
  92. FROM
  93. ic_contract_floor cf
  94. WHERE
  95. cf.floor_id = f.id
  96. AND cf.contract_end > NOW() AND cf.contract_end <![CDATA[ < ]]> #{query.demandDate}
  97. ),0)
  98. ))
  99. <![CDATA[ <= ]]> #{query.maxArea}
  100. </if>
  101. </when>
  102. <otherwise>
  103. and f.remain_area > 0
  104. <if test="query.minArea != null and query.maxArea != ''">
  105. and f.remain_area >= #{query.minArea}
  106. </if>
  107. <if test="query.maxArea != null and query.maxArea != ''">
  108. and f.remain_area <![CDATA[ <= ]]> #{query.maxArea}
  109. </if>
  110. </otherwise>
  111. </choose>
  112. </select>
  113. <select id="findFloorsByBuildingId" resultType="platform.modules.build.entity.BuildFloor">
  114. select * from y_floor WHERE building_id = #{id} AND is_use = TRUE
  115. </select>
  116. <select id="findCarrierQueryDetailFloors" resultType="platform.modules.build.entity.BuildFloor">
  117. select * from y_floor WHERE building_id = #{id} AND remain_area > 0 AND is_use = TRUE AND del_flag = 0
  118. </select>
  119. </mapper>