WindRelationMapper.xml 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  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.energy.manage.service.mappers.windrelation.WindRelationMapper">
  4. <sql id="BASE_COMPANY_SQL">
  5. wc.id AS id,
  6. wc.company_code AS companyCode,
  7. wc.company_name AS companyName,
  8. wr.code_number as codeNumber,
  9. wr.code_name as codeName,
  10. wr.parent_code as parentCode,
  11. wc.state AS state,
  12. wc.province_id AS provinceId,
  13. wc.province_name as provinceName,
  14. wc.city_id as cityId,
  15. wc.city_name as cityName,
  16. wc.described as described,
  17. wc.sort AS sort,
  18. wc.del_state AS delState,
  19. wc.create_by AS createBy,
  20. wc.create_time AS createTime,
  21. wc.update_by AS updateBy,
  22. wc.update_time AS updateTime,
  23. wf.fieldCount as fieldCount,
  24. wf.engineNumber as engineNumber
  25. </sql>
  26. <select id="selectWindRelationCompanyByType"
  27. resultType="com.energy.manage.service.domain.vo.company.WindCompanyPageVo">
  28. SELECT
  29. <include refid="BASE_COMPANY_SQL"/>
  30. FROM
  31. wind_relation wr
  32. LEFT JOIN
  33. wind_company wc on wr.code_number = wc.company_code
  34. LEFT JOIN
  35. (SELECT
  36. wf.company_code,
  37. count(1) as fieldCount,
  38. sum(wf.engine_number) as engineNumber
  39. FROM
  40. wind_company wc
  41. INNER JOIN wind_field wf ON wc.company_code = wf.company_code
  42. GROUP BY
  43. wf.company_code) wf on wc.company_code=wf.company_code
  44. where 1=1
  45. and wr.type = #{type}
  46. <if test="state!=null">
  47. and wc.state = #{state}
  48. </if>
  49. <if test="companyName!=null">
  50. and wc.company_name like CONCAT("%", #{companyName} ,"%")
  51. </if>
  52. and wc.del_state = 0
  53. <if test="state!=null or companyName!=null">
  54. and
  55. wc.company_code in (select code_number from sys_organization_auth where role_id =#{roleId} and code_type = 'company')
  56. </if>
  57. <if test="state==null and companyName==null">
  58. and
  59. wc.create_by = #{userId}
  60. or
  61. wc.company_code in (select code_number from sys_organization_auth where role_id =#{roleId} and code_type = 'company')
  62. </if>
  63. </select>
  64. <select id="selectByCodeNumber" parameterType="java.lang.String" resultType="com.energy.manage.common.po.windrelation.WindRelationPO">
  65. select code_number,
  66. type,
  67. parent_code
  68. from wind_relation
  69. where parent_code in
  70. <foreach collection="codeNumbers" item="codeNumber" open="(" separator="," close=")">
  71. #{codeNumber,jdbcType=VARCHAR}
  72. </foreach>
  73. </select>
  74. </mapper>