| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- <?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="platform.modules.build.dao.ContractWaterDao">
- <select id="findCompanyWaters" resultType="platform.modules.build.entity.ContractWater">
- select
- a.*
- from y_contract_water a
- WHERE a.company_id=#{company_id} and a.del_flag='0'
- </select>
- <select id="findCompanyWatersByWaterId" resultType="platform.modules.build.entity.ContractWater">
- select
- a.company_id,max(id) as id,max(company_name) as company_name,max(start_date) as start_date,max(end_date) as end_date
- from y_contract_water a
- WHERE a.water_id=#{water_id} and a.del_flag='0'
- group by a.company_id
- </select>
- <select id="countContractWater" resultType="int">
- select
- count(a.id)
- from y_contract_water a
- WHERE a.water_id=#{water_id} and a.del_flag='0'
- <if test="contract_id!=null">
- and a.contract_id!=#{contract_id}
- </if>
- </select>
- <select id="countExpectWaterId" resultType="int">
- select
- count(a.id)
- from y_contract_water a
- WHERE a.contract_id=#{contract_id} and a.del_flag='0'
- and a.water_id!=#{water_id}
- </select>
- <select id="findCompanyWatersAndRead" resultType="platform.modules.build.entity.ContractWater">
- select
- a.*,
- CASE WHEN a.read_id is null THEN a.start_water_meter_count
- ELSE b.water_current_read end as water_before_read,
- CASE WHEN a.read_id is null THEN a.start_meter_write
- ELSE b.meter_write end as meter_write
- from y_contract_water a
- LEFT JOIN y_water_read b on a.read_id=b.id WHERE a.company_id=#{company_id} and a.del_flag='0'
- </select>
- <update id="deleteById">
- update y_contract_water set del_flag=1
- where id=#{id}
- </update>
- <update id="deleteByContractId">
- update y_contract_water set del_flag=1
- where contract_id=#{contract_id}
- </update>
- <select id="getContractWaterMeterCount" resultType="platform.modules.build.entity.ContractWater">
- select cw.* from y_contract_water cw WHERE cw.water_id=#{water_id} and cw.del_flag='0' and start_water_meter_count is not null limit 0,1
- </select>
- <select id="countValidContractWater" resultType="int">
- select count(id) from y_contract_water cw WHERE cw.water_id=#{water_id} and cw.del_flag='0'
- </select>
- <select id="checkIsValid" resultType="int">
- select count(id) from y_contract_water cw WHERE cw.water_id=#{water_id} and cw.del_flag='0'
- </select>
- <select id="findWatersByContractId" resultType="platform.modules.build.entity.ContractWater">
- select
- cw.*,a.name as water_name
- from y_contract_water cw
- inner join y_water a on a.id=cw.water_id
- WHERE cw.contract_id=#{contractId} and cw.del_flag='0'
- </select>
- <sql id="is_common">
- CASE WHEN cew.is_common=1 THEN cew.start_water_meter_count_common
- else a.start_water_meter_count end
- </sql>
- </mapper>
|