ContractFloorDao.xml 3.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  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.carrier.dao.ContractFloorDao">
  4. <!-- 批量插入-->
  5. <insert id="insertBatch" parameterType="platform.modules.carrier.entity.ContractFloor">
  6. INSERT INTO ic_contract_floor (
  7. id, contract_id, building_id,
  8. floor, remain_area, area,
  9. status,
  10. remark, created_time, created_by,
  11. updated_by, updated_time, del_flag,
  12. created_name, updated_name
  13. )
  14. VALUES
  15. <foreach collection="list" item="item" open="" separator="," close="">
  16. (
  17. #{item.id}, #{item.contract_id}, #{item.building_id},
  18. #{item.floor}, #{item.remain_area}, #{item.area},
  19. #{item.status},
  20. #{item.remark}, #{item.created_time}, #{item.created_by}
  21. #{item.updated_by}, #{item.updated_time}, #{item.del_flag},
  22. #{item.created_name}, #{item.updated_name}
  23. )
  24. </foreach>
  25. </insert>
  26. <delete id="deleteByContractId">
  27. DELETE FROM ic_contract_floor WHERE contract_id = #{id}
  28. </delete>
  29. <select id="findByContractId" resultType="platform.modules.carrier.entity.ContractFloor">
  30. SELECT cf.*, f.area AS floor_area FROM ic_contract_floor cf LEFT JOIN y_floor f ON f.id = cf.floor_id WHERE cf.id = #{id}
  31. </select>
  32. <select id="findEndContract" resultType="platform.modules.carrier.entity.ContractFloor">
  33. select * from ic_contract_floor where status = 2 and floor_id is not null and contract_end <![CDATA[<]]> now()
  34. </select>
  35. <select id="findStartContract" resultType="platform.modules.carrier.entity.ContractFloor">
  36. select * from ic_contract_floor where status = 1 and floor_id is not null and contract_start <![CDATA[<]]> now()
  37. </select>
  38. <select id="finderminateContract" resultType="platform.modules.carrier.entity.ContractFloor">
  39. select * from ic_contract_floor where status = 4 and floor_id is not null and terminate_time <![CDATA[<]]> now()
  40. </select>
  41. <select id="findCarrierVolume" resultType="java.lang.Integer">
  42. select count(id) from ic_contract_floor where del_flag = 0
  43. </select>
  44. <select id="findEachParkVolume" resultType="platform.modules.carrier.entity.CarrierVolume">
  45. SELECT
  46. s.id,
  47. s.`name` AS streetName,
  48. COUNT(cf.id) AS volume
  49. FROM
  50. ic_contract_floor cf
  51. LEFT JOIN ic_park p ON p.id = cf.park_id
  52. LEFT JOIN s_street s ON s.id = p.street_id
  53. WHERE
  54. cf.del_flag = 0
  55. GROUP BY
  56. s.id
  57. </select>
  58. <select id="findEndContractByTime" resultType="platform.modules.carrier.entity.CarrierVolume">
  59. SELECT cf.id FROM ic_contract_floor cf
  60. WHERE cf.building_id = #{id} AND cf.del_flag = 0
  61. <if test="startTime != null and startTime != ''">
  62. AND cf.contract_end > #{startTime}
  63. </if>
  64. <if test="endTime != null and endTime != ''">
  65. AND cf.contract_end <![CDATA[<]]> #{endTime}
  66. </if>
  67. </select>
  68. <select id="export1" resultType="platform.modules.carrier.dto.CarrierStatisitcDto">
  69. SELECT
  70. s.`name` street,
  71. p.`name` park,
  72. b.build_name building,
  73. b.area area,
  74. b.rent_area rentArea,
  75. ( b.area - b.rent_area ) remainingArea,
  76. c.company_name company,
  77. c.contract_start contractStart,
  78. c.contract_end contractEnd
  79. FROM
  80. ic_building b
  81. LEFT JOIN ic_park p ON p.id = b.park_id
  82. LEFT JOIN s_street s ON s.id = p.street_id
  83. LEFT JOIN ic_contract c ON c.park_id = p.id
  84. AND c.del_flag = 0
  85. WHERE
  86. b.is_use = 1
  87. AND b.del_flag = 0
  88. </select>
  89. </mapper>