PmDemandMapper.java 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301
  1. package com.ozs.pm.mapper;
  2. import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  3. import com.ozs.base.domain.vo.BaseExpertVo;
  4. import com.ozs.pm.doman.PmDemand;
  5. import com.ozs.pm.doman.vo.requestVo.PmDemandReqVo;
  6. import com.ozs.pm.doman.vo.responseVo.StatisticalChartsResVo;
  7. import org.apache.ibatis.annotations.Param;
  8. import java.util.LinkedList;
  9. import java.util.List;
  10. import java.util.Map;
  11. /**
  12. * 采购需求Mapper接口
  13. *
  14. * @author ruoyi
  15. * @date 2023-01-16
  16. */
  17. public interface PmDemandMapper extends BaseMapper<PmDemand> {
  18. /**
  19. * 通过需求ID列表,查询采购执行列表 sunhh
  20. *
  21. * @param demandIdList
  22. * @return
  23. */
  24. List<PmDemand> selectByDemandIdList(@Param("demandIdList") List<Integer> demandIdList);
  25. /**
  26. * 专家库--查询抽取专家列表 非必传条件:专家名称,开始结束时间 sunhh
  27. *
  28. * @param baseExpertVo
  29. * @return
  30. */
  31. List<PmDemand> selectExtractionExpert(BaseExpertVo baseExpertVo);
  32. /**
  33. * 统计分析-采购项目信息统计-查询项目总数量
  34. *
  35. * @param pmDemandReqVo
  36. * @return
  37. */
  38. Map<String, Integer> purchaseProjectStatistical(PmDemandReqVo pmDemandReqVo);
  39. /**
  40. * 统计分析-采购项目信息统计-查询已完成项目数量,预算金额数量
  41. *
  42. * @param pmDemandReqVo
  43. * @return
  44. */
  45. Map<String, Integer> purchaseProjectStatisticalYWC(PmDemandReqVo pmDemandReqVo);
  46. /**
  47. * 统计分析-采购项目信息统计-查询新创建项目数量,预算金额数量
  48. *
  49. * @param pmDemandReqVo
  50. * @return
  51. */
  52. Map<String, Integer> purchaseProjectStatisticalXCJ(PmDemandReqVo pmDemandReqVo);
  53. /**
  54. * 统计分析-采购项目信息统计-查询去年完成项目数量,预算金额数量
  55. *
  56. * @param pmDemandReqVo
  57. * @return
  58. */
  59. Map<String, Integer> purchaseProjectStatisticalQNWC(PmDemandReqVo pmDemandReqVo);
  60. /**
  61. * 按照项目属性统计所有的项目
  62. *
  63. * @return
  64. */
  65. List<StatisticalChartsResVo> countByProjectAttr();
  66. /**
  67. * 按照采购方式统计所有的项目
  68. *
  69. * @return
  70. */
  71. List<StatisticalChartsResVo> countByPurchaseMode();
  72. /**
  73. * 按照概算金额统计所有的项目
  74. *
  75. * @return
  76. */
  77. StatisticalChartsResVo countByEvaluationLt(Integer evaluation);
  78. StatisticalChartsResVo countByEvaluationBet(@Param("evaluation") Integer evaluation, @Param("evaluationEnd") Integer evaluationEnd);
  79. StatisticalChartsResVo countByEvaluationGt(Integer evaluation);
  80. /**
  81. * 本年度所有的逾期项目数
  82. *
  83. * @return
  84. */
  85. StatisticalChartsResVo countProjectExceed();
  86. /**
  87. * 年度逾期项目数量
  88. *
  89. * @return
  90. */
  91. Integer countThisYear();
  92. /**
  93. * 统计不同时间维度的逾期项目
  94. *
  95. * @return
  96. */
  97. LinkedList<StatisticalChartsResVo> countProjectExceedYear();
  98. /**
  99. * 统计不同时间维度的逾期项目
  100. *
  101. * @return
  102. */
  103. StatisticalChartsResVo countProjectExceedMonth(@Param("month") Integer month, @Param("year") Integer year);
  104. /**
  105. * 统计不同时间维度的逾期项目
  106. *
  107. * @return
  108. */
  109. StatisticalChartsResVo countProjectExceedQuarter(@Param("quarter") Integer quarter, @Param("year") Integer year);
  110. /**
  111. * 所有滞后
  112. *
  113. * @return
  114. */
  115. List<PmDemand> countProjectExceedAll();
  116. /**
  117. * //***状态:指本年度正在进行中的项目属性为“重大规划”的项目数
  118. * //预算金额:指本年度正在进行中的项目属性为“重大规划”的项目累加的预算金额
  119. *
  120. * @param code
  121. * @return
  122. */
  123. StatisticalChartsResVo majorProjectByStatus(String code);
  124. /**
  125. * //执行滞后数量:指本年度逾期项目中,项目属性为“重大规划”的项目数
  126. * //预算金额:指本年度正在进行中的项目属性为“重大规划”的项目累加的预算金额
  127. *
  128. * @return
  129. */
  130. StatisticalChartsResVo countProjectExceedAndMajor();
  131. /**
  132. * 查询本年度的**状态的重大规划项目
  133. */
  134. List<StatisticalChartsResVo> taskQuantityYear(String code);
  135. /**
  136. * 查询上年度的**状态的重大规划项目
  137. */
  138. List<StatisticalChartsResVo> taskQuantityLastYear(String code);
  139. /**
  140. * @return
  141. */
  142. List<StatisticalChartsResVo> countEveryStatusNum();
  143. /**
  144. * 通过计划ID查询项目
  145. *
  146. * @param planId
  147. * @return
  148. */
  149. PmDemand selectByPlanId(@Param("planId") Long planId);
  150. /**
  151. * 项目执行进度统计--正常推进项目数量、预算金额
  152. *
  153. * @param pmDemandReqVo
  154. * @return
  155. */
  156. Map<String, Integer> purchaseProjectExecuteNormalPropulsion(PmDemandReqVo pmDemandReqVo);
  157. /**
  158. * 项目执行进度统计--未完成采购任务,预算金额
  159. *
  160. * @param pmDemandReqVo
  161. * @return
  162. */
  163. Map<String, Integer> purchaseProjectExecuteIncomplete(PmDemandReqVo pmDemandReqVo);
  164. /**
  165. * 查询数据库年份最小值
  166. *
  167. * @return
  168. */
  169. Integer selectMinYear();
  170. /**
  171. * 已完成项目数量统计 -- 年份
  172. *
  173. * @param pmDemandReqVo
  174. * @return
  175. */
  176. List<Map<String, Integer>> selectpurchaseProjectCompleteNumberYear(PmDemandReqVo pmDemandReqVo);
  177. /**
  178. * 已完成项目数量统计 -- 季度
  179. *
  180. * @param pmDemandReqVo
  181. * @return
  182. */
  183. List<Map<String, Integer>> selectpurchaseProjectCompleteNumberQuarter(PmDemandReqVo pmDemandReqVo);
  184. /**
  185. * 已完成项目数量统计 -- 月份
  186. *
  187. * @param pmDemandReqVo
  188. * @return
  189. */
  190. List<Map<String, Integer>> selectpurchaseProjectCompleteNumberMonth(PmDemandReqVo pmDemandReqVo);
  191. /**
  192. * 已完成采购任务数量统计 -- 年份
  193. *
  194. * @param pmDemandReqVo
  195. * @return
  196. */
  197. List<Map<String, Integer>> selectPurchaseTaskFinishYear(PmDemandReqVo pmDemandReqVo);
  198. /**
  199. * 已完成采购任务数量统计 -- 季度
  200. *
  201. * @param pmDemandReqVo
  202. * @return
  203. */
  204. List<Map<String, Integer>> selectPurchaseTaskFinishQuarter(PmDemandReqVo pmDemandReqVo);
  205. /**
  206. * 已完成采购任务数量统计 -- 月份
  207. *
  208. * @param pmDemandReqVo
  209. * @return
  210. */
  211. List<Map<String, Integer>> selectPurchaseTaskFinishMonth(PmDemandReqVo pmDemandReqVo);
  212. List<StatisticalChartsResVo> countProjectMajorByYear();
  213. StatisticalChartsResVo countProjectMajorByQuarter(@Param("quarter") Integer quarter, @Param("year") Integer year);
  214. List<StatisticalChartsResVo> countProjectMajorByMonth();
  215. List<StatisticalChartsResVo> countEveryStatusNumTwo();
  216. StatisticalChartsResVo countMajorProjectExceed();
  217. StatisticalChartsResVo countMajorProjectLastYear();
  218. /**
  219. * 各阶段项目数量分布
  220. *
  221. * @param pmDemandReqVo
  222. * @return
  223. */
  224. Map<String, String> purchaseProjectDistribution(PmDemandReqVo pmDemandReqVo);
  225. /**
  226. * 项目数量分析--年
  227. *
  228. * @param pmDemandReqVo
  229. * @return
  230. */
  231. List<Map<String, String>> purchaseProjectNumberAnalysisYear(PmDemandReqVo pmDemandReqVo);
  232. /**
  233. * 项目数量分析--季度
  234. *
  235. * @param pmDemandReqVo
  236. * @return
  237. */
  238. List<Map<String, String>> purchaseProjectNumberAnalysisQuarter(PmDemandReqVo pmDemandReqVo);
  239. /**
  240. * 项目数量分析--月份
  241. *
  242. * @param pmDemandReqVo
  243. * @return
  244. */
  245. List<Map<String, String>> purchaseProjectNumberAnalysisMonth(PmDemandReqVo pmDemandReqVo);
  246. /**
  247. * 项目数量分析--季度 去年数据
  248. *
  249. * @param pmDemandReqVo
  250. * @return
  251. */
  252. List<Map<String, String>> purchaseProjectNumberAnalysisOldYearQuarter(PmDemandReqVo pmDemandReqVo);
  253. }