ProjectInfoMapper.xml 6.6 KB

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