ProjectInfoMapper.xml 6.5 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="org.springblade.modules.project.mapper.ProjectInfoMapper">
  4. <delete id="deleteWarning">
  5. delete from d_project_warning
  6. </delete>
  7. <select id="detail" resultType="org.springblade.modules.project.pojo.vo.ProjectInfoDetailVO">
  8. select * from d_project_info where id = #{id}
  9. </select>
  10. <select id="detail2" resultType="org.springblade.modules.project.pojo.vo.ProjectAndPlanDetailVO">
  11. select *,
  12. (select dict_value from blade_dict_biz where code = 'projectStage' and dict_key = dpi.project_stage and is_deleted = 0) as projectStageName,
  13. (select dict_value from blade_dict_biz where code = 'projectType' and dict_key = dpi.project_type and is_deleted = 0) as projectTypeName
  14. from d_project_info dpi where id = #{id}
  15. </select>
  16. <select id="getAllPlanByProjectId"
  17. resultType="org.springblade.modules.project.pojo.vo.ProjectInvestPlanVO">
  18. select * from d_project_invest_plan
  19. where project_id = #{id} and is_deleted = 0
  20. order by plan_year
  21. </select>
  22. <select id="getAllProgressByProjectId"
  23. resultType="org.springblade.modules.project.pojo.vo.ProjectPlanProgressVO">
  24. select * from d_project_plan_progress
  25. where project_id = #{id} and is_deleted = 0
  26. </select>
  27. <select id="page" resultType="org.springblade.modules.project.pojo.vo.ProjectInfoVO">
  28. select *,
  29. if (build_scale_unit = 1,concat(build_scale,'(公里)'),build_scale) as buildScaleName,
  30. if (is_focus_project = 1,'是','否') as isFocusProjectName,
  31. if (is_pilot_plan = 1,'是','否') as isPilotPlanName,
  32. (select sum(year_finish_invest) from d_project_invest_plan where is_deleted = 0 and project_id = dpi.id) as finishedInvestMoney,
  33. (select sum(plan_ratio) from d_project_plan_progress where is_deleted = 0 and project_id = dpi.id) as Progress,
  34. (select sum(fill_field) from d_project_plan_progress where is_deleted = 0 and project_id = dpi.id) as finishedFill,
  35. (select count(1) from d_project_invest_plan where is_deleted = 0 and is_plan = 1 and project_id = dpi.id) as hasPlanYearTotal,
  36. (select dict_value from blade_dict_biz where code = 'projectStage' and dict_key = dpi.project_stage and is_deleted = 0) as projectStageName,
  37. (select dict_value from blade_dict_biz where code = 'projectType' and dict_key = dpi.project_type and is_deleted = 0) as projectTypeName
  38. from d_project_info dpi where is_deleted = 0
  39. <if test="dto.projectStage != null">
  40. and project_stage = #{dto.projectStage}
  41. </if>
  42. <if test="dto.projectType != null">
  43. and project_type = #{dto.projectType}
  44. </if>
  45. <if test="dto.searchValue != null and dto.searchValue != ''">
  46. and name like concat('%', #{dto.searchValue}),'%')
  47. </if>
  48. <if test="dto.startYear != null">
  49. and start_year &gt;= #{dto.startYear}
  50. </if>
  51. <if test="dto.endYear != null ">
  52. and end_year &lt;= #{dto.endYear}
  53. </if>
  54. </select>
  55. <select id="dataProjectStat" resultType="org.springblade.modules.project.pojo.vo.DataProjectStatVO2">
  56. select id
  57. from d_project_info dpi
  58. where is_deleted = 0 and #{dto.year} between start_year and end_year
  59. <if test="dto.projectStage != null ">
  60. and project_stage = #{dto.projectStage}
  61. </if>
  62. <if test="dto.projectType != null ">
  63. and project_type = #{dto.projectType}
  64. </if>
  65. </select>
  66. <select id="dataInvestStat" resultType="org.springblade.modules.project.pojo.vo.DataInvestStatVO2">
  67. select id,project_stage,project_type,
  68. (select dict_value from blade_dict_biz where code = 'projectStage' and dict_key = dpi.project_stage and is_deleted = 0) as projectStageName,
  69. (select dict_value from blade_dict_biz where code = 'projectType' and dict_key = dpi.project_type and is_deleted = 0) as projectTypeName
  70. from d_project_info dpi
  71. where is_deleted = 0 and #{dto.year} between start_year and end_year
  72. <if test="dto.projectStage != null ">
  73. and project_stage = #{dto.projectStage}
  74. </if>
  75. <if test="dto.projectType != null ">
  76. and project_type = #{dto.projectType}
  77. </if>
  78. </select>
  79. <select id="dataScheduleStat" resultType="org.springblade.modules.project.pojo.vo.DataScheduleStatVO2">
  80. select id,project_stage,project_type,
  81. (select dict_value from blade_dict_biz where code = 'projectStage' and dict_key = dpi.project_stage and is_deleted = 0) as projectStageName,
  82. (select dict_value from blade_dict_biz where code = 'projectType' and dict_key = dpi.project_type and is_deleted = 0) as projectTypeName
  83. from d_project_info dpi
  84. where is_deleted = 0 and #{dto.year} between start_year and end_year
  85. <if test="dto.projectStage != null ">
  86. and project_stage = #{dto.projectStage}
  87. </if>
  88. <if test="dto.projectType != null ">
  89. and project_type = #{dto.projectType}
  90. </if>
  91. </select>
  92. <select id="dataEndDate" resultType="java.time.LocalDate">
  93. select update_time from d_project_plan_progress order by update_time desc limit 1
  94. </select>
  95. <select id="getAllYearPlan" resultType="org.springblade.modules.project.pojo.vo.InvestPlanWarningVO">
  96. select *,(select name from d_project_info dpi where dpi.id = pip.project_id) as projectName
  97. from d_project_invest_plan pip
  98. where is_deleted = 0
  99. </select>
  100. <select id="getBuildTotal" resultType="java.lang.Long">
  101. select ifnull(sum(build_scale),0)
  102. from d_project_info dpi where is_deleted = 0 and build_scale_unit = 1
  103. <if test="dto.projectStage != null">
  104. and project_stage = #{dto.projectStage}
  105. </if>
  106. <if test="dto.projectType != null">
  107. and project_type = #{dto.projectType}
  108. </if>
  109. <if test="dto.searchValue != null and dto.searchValue != ''">
  110. and name like concat('%', #{dto.searchValue}),'%')
  111. </if>
  112. <if test="dto.startYear != null">
  113. and start_year &gt;= #{dto.startYear}
  114. </if>
  115. <if test="dto.endYear != null ">
  116. and end_year &lt;= #{dto.endYear}
  117. </if>
  118. </select>
  119. </mapper>