AnnualBaseInfoMapper.xml 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  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="AnnualBaseInfoMapper">
  4. <!-- 查询所有公司 -->
  5. <select id="findAllCompany" parameterType="pd" resultType="pd">
  6. SELECT
  7. *
  8. FROM
  9. ${table}
  10. WHERE
  11. PARENT_ID = '0'
  12. ORDER BY (SHOW_NUM+0) ASC
  13. <!-- ORDER BY
  14. BIANMA ASC -->
  15. </select>
  16. <!-- 查询道路技术状况现状汇总表 -->
  17. <select id="findHighwayTechnicaStatable" parameterType="pd" resultType="pd">
  18. SELECT
  19. o.NAME,
  20. o.BIANMA,
  21. c.BIANMA as 'COMPANYID',
  22. k.design_km,
  23. k.care_km,
  24. h.*
  25. FROM
  26. ${table} o
  27. LEFT JOIN ${table} c ON c.DEPARTMENT_ID = o.PARENT_ID
  28. LEFT JOIN highway_technica_statable h ON o.BIANMA = h.ROAD_ID AND h.`YEAR` = #{YEAR}
  29. LEFT JOIN km_info k ON k.COMPANY_ID = h.COMPANY_ID AND k.ROAD_ID = h.ROAD_ID
  30. WHERE
  31. o.PARENT_ID != '0'
  32. ORDER BY (o.BIANMA+0) ASC
  33. </select>
  34. <!-- 查询交通等信息综合统计表 -->
  35. <!-- <select id="findHighwayTraiffcinfoSumtable" parameterType="pd" resultType="pd">
  36. SELECT
  37. o.NAME,
  38. o.BIANMA,
  39. c.BIANMA as 'COMPANYID',
  40. k.design_km,
  41. k.care_km,
  42. h.*
  43. FROM
  44. ${table} o
  45. LEFT JOIN ${table} c ON c.DEPARTMENT_ID = o.PARENT_ID
  46. LEFT JOIN highway_traiffcinfo_sumtable h ON o.BIANMA = h.ROAD_ID AND h.`YEAR` = #{YEAR}
  47. LEFT JOIN km_info k ON k.COMPANY_ID = h.COMPANY_ID AND k.ROAD_ID = h.ROAD_ID
  48. WHERE
  49. o.PARENT_ID != '0'
  50. ORDER BY (o.BIANMA+0) ASC
  51. </select> -->
  52. <select id="findHighwayTraiffcinfoSumtable" parameterType="pd" resultType="pd">
  53. select roadinfo.*,planinfo.*,k.DESIGN_KM,k.CARE_KM from(
  54. select cast(SHOW_NUM as SIGNED INTEGER) as no,COMPANY_ID as PCOMPANY_ID,COMPANY,ROAD_ID as PROAD_ID,ROAD,
  55. numstr ,rnumstr,flag,rflag from (
  56. select
  57. @f:= case when @company_id2=c.company_id then '0' else '1' end as flag,
  58. @rf := CASE WHEN @company_id2 = c.company_id AND @road_id2 = c.road_id THEN '0' ELSE '1'END AS rflag,
  59. @company_id2:=c.company_id1 as company_id2,
  60. c.*,cast(num as char) as numstr,
  61. cast(rnum AS CHAR) AS rnumstr
  62. from (
  63. SELECT
  64. @r:= case when @company_id=a.company_id then @r+1 else 1 end num,
  65. @rr := CASE WHEN @company_id = a.company_id AND @road_id = a.road_id THEN @rr + 1 ELSE 1 END rnum,
  66. @company_id:=a.company_id as company_id1,
  67. a.*
  68. from(
  69. select p.SHOW_NUM SHOW_NUM,p.name as COMPANY,p.bianma as COMPANY_ID,roads.name as ROAD,roads.bianma as ROAD_ID
  70. from ${table} roads
  71. left join ${table} p
  72. on p.DEPARTMENT_ID = roads.PARENT_ID
  73. where roads.PARENT_ID &lt;&gt; '0'
  74. order by p.bianma,roads.bianma
  75. )a ,(select @r:=0 ,@company_id:='',@c:=1,@rr := 0 ,@road_id := '') b
  76. order by company_id,num desc
  77. )c ,(select @f:=0,@company_id2:='',@rf := 0 ,@road_id2 := '') d
  78. )e
  79. ) roadinfo
  80. left join (
  81. select * from ${type} where year = #{YEAR}
  82. )planinfo on roadinfo.pcompany_id = planinfo.company_id and roadinfo.proad_id = planinfo.road_id
  83. left join km_info k on roadinfo.pcompany_id = k.company_id and roadinfo.proad_id = k.road_id
  84. order by (no+0) ASC,(proad_id+0) ASC
  85. </select>
  86. <!-- 查询养护质量目标表 -->
  87. <select id="findHighwayQualityGoalsTable" parameterType="pd" resultType="pd">
  88. SELECT
  89. o.NAME,
  90. o.BIANMA,
  91. c.BIANMA as 'COMPANYID',
  92. k.design_km,
  93. k.care_km,
  94. h.*
  95. FROM
  96. ${table} o
  97. LEFT JOIN ${table} c ON c.DEPARTMENT_ID = o.PARENT_ID
  98. LEFT JOIN highway_quality_goals_table h ON o.BIANMA = h.ROAD_ID AND h.`YEAR` = #{YEAR}
  99. LEFT JOIN km_info k ON k.COMPANY_ID = h.COMPANY_ID AND k.ROAD_ID = h.ROAD_ID
  100. WHERE
  101. o.PARENT_ID != '0'
  102. ORDER BY
  103. (o.BIANMA+0) ASC
  104. </select>
  105. <select id="findRoadId" parameterType="pd" resultType="pd">
  106. SELECT
  107. *
  108. FROM
  109. ${table}
  110. WHERE
  111. NAME=#{ROAD}
  112. ORDER BY (SHOW_NUM+0) ASC
  113. </select>
  114. </mapper>