WaterMeterMapper.xml 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  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="com.huaxu.zoniot.dao.WaterMeterMapper">
  4. <resultMap id="BaseResultMap" type="com.huaxu.zoniot.entity.WaterMeter">
  5. <id column="device_id" jdbcType="BIGINT" property="deviceId" />
  6. <result column="water_meter_type" jdbcType="INTEGER" property="waterMeterType" />
  7. <result column="site_id" jdbcType="INTEGER" property="siteId" />
  8. <result column="sys_id" jdbcType="INTEGER" property="sysId" />
  9. <result column="province" jdbcType="INTEGER" property="province" />
  10. <result column="city" jdbcType="INTEGER" property="city" />
  11. <result column="region" jdbcType="INTEGER" property="region" />
  12. <result column="community" jdbcType="INTEGER" property="community" />
  13. <result column="customer_id" jdbcType="INTEGER" property="customerId" />
  14. <result column="concentrator_id" jdbcType="INTEGER" property="concentratorId" />
  15. <result column="collector_id" jdbcType="INTEGER" property="collectorId" />
  16. <result column="building_id" jdbcType="INTEGER" property="buildingId" />
  17. <result column="location" jdbcType="VARCHAR" property="location" />
  18. <result column="device_type_id" jdbcType="INTEGER" property="deviceTypeId" />
  19. <result column="device_id" jdbcType="BIGINT" property="deviceId" />
  20. <result column="device_no" jdbcType="VARCHAR" property="deviceNo" />
  21. <result column="meter_no" jdbcType="VARCHAR" property="meterNo" />
  22. <result column="meter_file_no" jdbcType="VARCHAR" property="meterFileNo" />
  23. <result column="reading_measuring_code" jdbcType="VARCHAR" property="readingMeasuringCode" />
  24. <result column="valve_measuring_code" jdbcType="VARCHAR" property="valveMeasuringCode" />
  25. <result column="status" jdbcType="INTEGER" property="status" />
  26. <result column="date_create" jdbcType="TIMESTAMP" property="dateCreate" />
  27. <result column="date_update" jdbcType="TIMESTAMP" property="dateUpdate" />
  28. <result column="create_by" jdbcType="VARCHAR" property="createBy" />
  29. <result column="update_by" jdbcType="VARCHAR" property="updateBy" />
  30. </resultMap>
  31. <sql id="Base_Column_List">
  32. <!--@mbg.generated-->
  33. device_id ,water_meter_type,device_no, site_id, sys_id, building_id,
  34. province, city, region, community, customer_id, meter_no, meter_file_no,
  35. device_type_id, concentrator_id,collector_id, `location`,valve_measuring_code,
  36. reading_measuring_code,date_create
  37. </sql>
  38. <sql id="Base_Meter_Query_Column">
  39. d.id as device_id ,
  40. wmt.parent_id as water_meter_type ,
  41. d.device_no as device_no ,
  42. d.site_id as site_id ,
  43. d.sys_id as sys_id ,
  44. d.building_id as building_id ,
  45. b.province as province ,
  46. b.city as city ,
  47. b.region as region,
  48. b.community as community ,
  49. d.customer_id as customer_id ,
  50. d.water_meter_no as meter_no ,
  51. d.water_meter_file_no as meter_file_no,
  52. d.device_type as device_type_id ,
  53. wrd.concentrator_id as concentrator_id ,
  54. wrd.collector_id as collector_id ,
  55. d.loc_desc as location,
  56. wmt.valve_measuring_code as valve_measuring_code ,
  57. wmt.reading_measuring_code as reading_measuring_code,
  58. d.date_create as date_create
  59. </sql>
  60. <sql id="Base_Meter_Query_Where">
  61. d.`status` = 1
  62. and wmt.`status` = 1
  63. and wmt.valve_measuring_code is not null
  64. and wmt.reading_measuring_code is not null
  65. and wmt.parent_id in (1,2)
  66. </sql>
  67. <sql id = "Base_Meter_Query">
  68. SELECT
  69. <include refid="Base_Meter_Query_Column" />
  70. FROM
  71. <include refid="Base_Meter_Query_Table"></include>
  72. WHERE
  73. <include refid="Base_Meter_Query_Where" />
  74. </sql>
  75. <sql id="Base_Meter_Query_Table">
  76. sc_w_meter_type wmt
  77. left join sc_device d on (d.`status` = 1 and wmt.device_type_id = d.device_type)
  78. left join sc_water_related_device wrd on (wrd.device_id =d.id)
  79. left join sc_building b on (d.building_id = b.id)
  80. </sql>
  81. <select id="findAllWaterMeterList" resultMap="BaseResultMap">
  82. <include refid="Base_Meter_Query" />
  83. </select>
  84. <select id="findWaterMeterListWithPage" resultMap="BaseResultMap">
  85. <include refid="Base_Meter_Query" />
  86. order by d.id asc
  87. limit #{start,jdbcType=INTEGER},#{offset,jdbcType=INTEGER}
  88. </select>
  89. <select id="findWaterMeterById" resultMap="BaseResultMap">
  90. <include refid="Base_Meter_Query" />
  91. and d.id = #{deviceId,jdbcType=BIGINT}
  92. </select>
  93. <select id="countWaterMeter" resultType="java.lang.Long">
  94. select
  95. count(1)
  96. from
  97. <include refid="Base_Meter_Query_Table"></include>
  98. WHERE
  99. <include refid="Base_Meter_Query_Where" />
  100. </select>
  101. <select id="countWaterMeterByShard" resultType="java.lang.Long">
  102. select
  103. count(1)
  104. from (
  105. <include refid="Base_Meter_Query" />
  106. limit #{shardBegin,jdbcType=INTEGER},#{shardSize,jdbcType=INTEGER}
  107. ) tmp
  108. </select>
  109. <select id="findShardWaterMeterListWithPage" resultMap="BaseResultMap">
  110. select
  111. <include refid="Base_Column_List" />
  112. from (
  113. <include refid="Base_Meter_Query" />
  114. order by d.id asc
  115. limit #{shardBegin,jdbcType=INTEGER},#{shardSize,jdbcType=INTEGER}
  116. ) tmp
  117. limit #{start,jdbcType=INTEGER},#{offset,jdbcType=INTEGER}
  118. </select>
  119. </mapper>