瀏覽代碼

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	purchase-system/src/main/java/com/ozs/pm/mapper/PmDemandMapper.java
buzhanyi 2 年之前
父節點
當前提交
4dfd763e48

+ 20 - 0
purchase-admin/src/main/java/com/ozs/web/controller/statisticalAnalysis/StatisticalAnalysisController.java

@@ -111,5 +111,25 @@ public class StatisticalAnalysisController extends BaseController {
         return pmDemandService.countEveryStatusNum();
         return pmDemandService.countEveryStatusNum();
     }
     }
 
 
+    @ApiOperation(value = "采购项目--项目数量分析")
+    @PostMapping("/purchaseProjectNumber")
+    public AjaxResult purchaseProjectNumber(@RequestBody PmDemandReqVo pmDemandReqVo) {
+        // 需求单位可查看本单位及其下属单位的统计数据
+        if (StringUtils.isNull(pmDemandReqVo.getPurchaseDeptId())) {
+            return error("登录账号的单位 不能为空!");
+        }
+        Map<String, Integer> map = pmDemandService.purchaseProjectNumber(pmDemandReqVo);
+        return success(map);
+    }
 
 
+    @ApiOperation(value = "项目执行进度统计")
+    @PostMapping("/purchaseProjectExecute")
+    public AjaxResult purchaseProjectExecute(@RequestBody PmDemandReqVo pmDemandReqVo) {
+        // 需求单位可查看本单位及其下属单位的统计数据
+        if (StringUtils.isNull(pmDemandReqVo.getPurchaseDeptId())) {
+            return error("登录账号的单位 不能为空!");
+        }
+        Map<String, Integer> map = pmDemandService.purchaseProjectExecute(pmDemandReqVo);
+        return success(map);
+    }
 }
 }

+ 16 - 0
purchase-admin/src/main/java/com/ozs/web/controller/tool/TestTaskServer.java

@@ -0,0 +1,16 @@
+package com.ozs.web.controller.tool;
+
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Component;
+
+@Component
+@Slf4j
+public class TestTaskServer {
+
+    public void logStr(){
+        log.info("******** 测试定时任务  开始");
+        log.info("******** testTaskServer.logStr");
+        log.info("******** 测试定时任务  结束");
+    }
+
+}

+ 14 - 0
purchase-system/src/main/java/com/ozs/pm/mapper/PmDemandMapper.java

@@ -174,6 +174,20 @@ public interface PmDemandMapper extends BaseMapper<PmDemand> {
      */
      */
     PmDemand selectByPlanId(@Param("planId") Integer planId);
     PmDemand selectByPlanId(@Param("planId") Integer planId);
 
 
+    /**
+     * 项目执行进度统计--正常推进项目数量、预算金额
+     * @param pmDemandReqVo
+     * @return
+     */
+    Map<String, Integer> purchaseProjectExecuteNormalPropulsion(PmDemandReqVo pmDemandReqVo);
+
+    /**
+     * 项目执行进度统计--未完成采购任务,预算金额
+     * @param pmDemandReqVo
+     * @return
+     */
+    Map<String, Integer> purchaseProjectExecuteIncomplete(PmDemandReqVo pmDemandReqVo);
+
     /**
     /**
      * 统计不同时间维度的重大项目(年)
      * 统计不同时间维度的重大项目(年)
      *
      *

+ 14 - 0
purchase-system/src/main/java/com/ozs/pm/service/IPmDemandService.java

@@ -295,4 +295,18 @@ public interface IPmDemandService extends IService<PmDemand> {
      * @return
      * @return
      */
      */
     PmDemand selectByPlanId(Integer planId);
     PmDemand selectByPlanId(Integer planId);
+
+    /**
+     * 采购项目--项目数量分析
+     * @param pmDemandReqVo
+     * @return
+     */
+    Map<String, Integer> purchaseProjectNumber(PmDemandReqVo pmDemandReqVo);
+
+    /**
+     * 项目执行进度统计
+     * @param pmDemandReqVo
+     * @return
+     */
+    Map<String, Integer> purchaseProjectExecute(PmDemandReqVo pmDemandReqVo);
 }
 }

+ 31 - 0
purchase-system/src/main/java/com/ozs/pm/service/impl/PmDemandServiceImpl.java

@@ -1622,6 +1622,37 @@ public class PmDemandServiceImpl extends ServiceImpl<PmDemandMapper, PmDemand> i
         return pmDemandMapper.selectByPlanId(planId);
         return pmDemandMapper.selectByPlanId(planId);
     }
     }
 
 
+    /**
+     * 采购项目--项目数量分析
+     * @param pmDemandReqVo
+     * @return
+     */
+    @Override
+    public Map<String, Integer> purchaseProjectNumber(PmDemandReqVo pmDemandReqVo) {
+
+        return null;
+    }
+
+    /**
+     * 项目执行进度统计
+     * 1、正常推进项目数量:指未完成并且没有逾期的项目
+     *    预算金额:指未完成并且没有逾期的项目累加的预算金额
+     * 2、未完成采购任务:“合同待填制”状态之前的项目
+     *    预算金额:“合同待填制”状态之前的项目累加的预算金额
+     * @param pmDemandReqVo
+     * @return
+     */
+    @Override
+    public Map<String, Integer> purchaseProjectExecute(PmDemandReqVo pmDemandReqVo) {
+        Map<String, Integer> mapReturn = new HashMap<>();
+        // 正常推进项目数量、预算金额
+        Map<String, Integer> mapNormalPropulsion = pmDemandMapper.purchaseProjectExecuteNormalPropulsion(pmDemandReqVo);
+        // 未完成采购任务,预算金额
+        Map<String, Integer> mapIncomplete = pmDemandMapper.purchaseProjectExecuteIncomplete(pmDemandReqVo);
+        mapReturn.putAll(mapNormalPropulsion);
+        mapReturn.putAll(mapIncomplete);
+        return mapReturn;
+    }
 
 
     //查询不同状态下的项目数据
     //查询不同状态下的项目数据
     public List<PmDemandResVo> getListByStatus(String projectStatus) {
     public List<PmDemandResVo> getListByStatus(String projectStatus) {

+ 33 - 11
purchase-system/src/main/resources/mapper/pm/PmDemandMapper.xml

@@ -84,13 +84,13 @@
         WHERE (real_demand_commit_time > plan_demand_sub_time
         WHERE (real_demand_commit_time > plan_demand_sub_time
             or real_purchase_finish_time > plan_purchase_finish_time
             or real_purchase_finish_time > plan_purchase_finish_time
             or real_deliver_time > plan_deliver_time)
             or real_deliver_time > plan_deliver_time)
-          and DATE_FORMAT(create_time, '%Y') = YEAR(NOW())
+          and DATE_FORMAT(create_time, '%Y') = YEAR (NOW())
     </select>
     </select>
 
 
     <select id="countThisYear" resultType="java.lang.Integer">
     <select id="countThisYear" resultType="java.lang.Integer">
         SELECT COUNT(demand_id) num
         SELECT COUNT(demand_id) num
         FROM `pm_demand`
         FROM `pm_demand`
-        WHERE DATE_FORMAT(create_time, '%Y') = YEAR(NOW())
+        WHERE DATE_FORMAT(create_time, '%Y') = YEAR (NOW())
     </select>
     </select>
 
 
     <select id="countProjectExceedYear" resultType="com.ozs.pm.doman.vo.responseVo.StatisticalChartsResVo">
     <select id="countProjectExceedYear" resultType="com.ozs.pm.doman.vo.responseVo.StatisticalChartsResVo">
@@ -137,7 +137,7 @@
         FROM `pm_demand`
         FROM `pm_demand`
         WHERE find_in_set('1', project_attr)
         WHERE find_in_set('1', project_attr)
           AND `project_status` = #{code}
           AND `project_status` = #{code}
-          AND DATE_FORMAT(create_time, '%Y') = year(now())
+          AND DATE_FORMAT(create_time, '%Y') = year (now())
     </select>
     </select>
 
 
     <select id="countMajorProjectExceed" resultType="com.ozs.pm.doman.vo.responseVo.StatisticalChartsResVo">
     <select id="countMajorProjectExceed" resultType="com.ozs.pm.doman.vo.responseVo.StatisticalChartsResVo">
@@ -147,31 +147,35 @@
             or real_purchase_finish_time > plan_purchase_finish_time
             or real_purchase_finish_time > plan_purchase_finish_time
             or real_deliver_time > plan_deliver_time)
             or real_deliver_time > plan_deliver_time)
           AND find_in_set('1', project_attr)
           AND find_in_set('1', project_attr)
-          and DATE_FORMAT(create_time, '%Y') = YEAR(NOW())
+          and DATE_FORMAT(create_time, '%Y') = YEAR (NOW())
     </select>
     </select>
 
 
     <select id="taskQuantityYear" resultType="com.ozs.pm.doman.vo.responseVo.StatisticalChartsResVo">
     <select id="taskQuantityYear" resultType="com.ozs.pm.doman.vo.responseVo.StatisticalChartsResVo">
-        SELECT YEAR(NOW()) columnName, COUNT(demand_id) num
+        SELECT YEAR (NOW()) columnName, COUNT (demand_id) num
         FROM `pm_demand`
         FROM `pm_demand`
-        WHERE find_in_set('1', project_attr)
+        WHERE find_in_set('1'
+            , project_attr)
           AND `project_status` = #{code}
           AND `project_status` = #{code}
-          and DATE_FORMAT(create_time, '%Y') = YEAR(NOW())
+          and DATE_FORMAT(create_time
+            , '%Y') = YEAR (NOW())
     </select>
     </select>
 
 
     <select id="taskQuantityLastYear" resultType="com.ozs.pm.doman.vo.responseVo.StatisticalChartsResVo"
     <select id="taskQuantityLastYear" resultType="com.ozs.pm.doman.vo.responseVo.StatisticalChartsResVo"
             parameterType="java.lang.String">
             parameterType="java.lang.String">
-        SELECT YEAR(NOW()) - 1 columnName, COUNT(demand_id) num
+        SELECT YEAR (NOW()) - 1 columnName, COUNT (demand_id) num
         FROM `pm_demand`
         FROM `pm_demand`
-        WHERE find_in_set('1', project_attr)
+        WHERE find_in_set('1'
+            , project_attr)
           AND `project_status` = #{code}
           AND `project_status` = #{code}
-          and DATE_FORMAT(create_time, '%Y') = YEAR(NOW()) - 1
+          and DATE_FORMAT(create_time
+            , '%Y') = YEAR (NOW()) - 1
     </select>
     </select>
 
 
     <select id="countEveryStatusNum" resultType="com.ozs.pm.doman.vo.responseVo.StatisticalChartsResVo">
     <select id="countEveryStatusNum" resultType="com.ozs.pm.doman.vo.responseVo.StatisticalChartsResVo">
         SELECT project_status columnName, COUNT(demand_id) num, SUM(evaluation) evaluationTotal
         SELECT project_status columnName, COUNT(demand_id) num, SUM(evaluation) evaluationTotal
         FROM `pm_demand`
         FROM `pm_demand`
         WHERE `project_status` IN (9, 10, 11, 12, 13, 14)
         WHERE `project_status` IN (9, 10, 11, 12, 13, 14)
-          and DATE_FORMAT(create_time, '%Y') = YEAR(NOW())
+          and DATE_FORMAT(create_time, '%Y') = YEAR (NOW())
         GROUP BY project_status
         GROUP BY project_status
     </select>
     </select>
 
 
@@ -211,4 +215,22 @@
           and QUARTER(create_time) = #{quarter}
           and QUARTER(create_time) = #{quarter}
           AND DATE_FORMAT(create_time, '%Y') = #{year}
           AND DATE_FORMAT(create_time, '%Y') = #{year}
     </select>
     </select>
+
+    <!-- 正常推荐项目 -->
+    <select id="purchaseProjectExecuteNormalPropulsion" parameterType="com.ozs.pm.doman.vo.requestVo.PmDemandReqVo"
+            resultType="java.util.Map">
+        select count(demand_id) countNormalPropulsion, ifnull(sum(evaluation), 0) evaluationNormalPropulsion
+        from pm_demand
+        where project_status != '17'
+            and  (real_demand_commit_time > plan_demand_sub_time
+            or real_purchase_finish_time > plan_purchase_finish_time
+            or real_deliver_time > plan_deliver_time)
+    </select>
+
+    <select id="purchaseProjectExecuteIncomplete" parameterType="com.ozs.pm.doman.vo.requestVo.PmDemandReqVo"
+            resultType="java.util.Map">
+        select count(demand_id) countIncomplete, ifnull(sum(evaluation), 0) evaluationIncomplete
+        from pm_demand
+        where project_status in (4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
+    </select>
 </mapper>
 </mapper>