buzhanyi 2 лет назад
Родитель
Сommit
fbe2e6297f

+ 5 - 6
purchase-system/src/main/java/com/ozs/pm/service/impl/PmDemandServiceImpl.java

@@ -2391,6 +2391,7 @@ public class PmDemandServiceImpl extends ServiceImpl<PmDemandMapper, PmDemand> i
         }
         //所有滞后
         List<PmDemand> demandList = pmDemandMapper.countProjectExceedAll(pmDemandReqVo);
+        Date now = new Date();
         //滞后时长包括:滞后1个月以内的采购任务、滞后1至3个月采购任务、滞后3至6个月采购任务、滞后6个月至1年采购任务、滞后1年以上采购任务
         HashMap<String, Integer> map = new LinkedHashMap<>();
         map.put("滞后1个月以内的采购任务", 0);
@@ -2401,13 +2402,11 @@ public class PmDemandServiceImpl extends ServiceImpl<PmDemandMapper, PmDemand> i
         if (!ObjectUtils.isEmpty(demandList) && demandList.size() > 0) {
             for (PmDemand demand : demandList) {
                 //滞后时间
-                Long exTime = null;
-                if (!ObjectUtils.isEmpty(demand.getRealDemandCommitTime()) && demand.getRealDemandCommitTime().getTime() - demand.getPlanDemandSubTime().getTime() > 0) {
-                    exTime = demand.getRealDemandCommitTime().getTime() - demand.getPlanDemandSubTime().getTime();
-                } else if (!ObjectUtils.isEmpty(demand.getRealPurchaseFinishTime()) && demand.getRealPurchaseFinishTime().getTime() - demand.getPlanPurchaseFinishTime().getTime() > 0) {
+                Long exTime = 0L;
+                if (!ObjectUtils.isEmpty(demand.getRealPurchaseFinishTime()) && demand.getRealPurchaseFinishTime().getTime() - demand.getPlanPurchaseFinishTime().getTime() > 0) {
                     exTime = demand.getRealPurchaseFinishTime().getTime() - demand.getPlanPurchaseFinishTime().getTime();
-                } else if (!ObjectUtils.isEmpty(demand.getRealDeliverTime()) && demand.getRealDeliverTime().getTime() - demand.getPlanDeliverTime().getTime() > 0) {
-                    exTime = demand.getRealDeliverTime().getTime() - demand.getPlanDeliverTime().getTime();
+                } else {
+                    exTime = now.getTime() - demand.getPlanPurchaseFinishTime().getTime();
                 }
                 if (exTime < Long.valueOf("2592000000")) {
                     map.put("滞后1个月以内的采购任务", map.get("滞后1个月以内的采购任务") + 1);

+ 2 - 1
purchase-system/src/main/resources/mapper/pm/PmDemandMapper.xml

@@ -258,7 +258,8 @@
         SELECT *
         FROM `pm_demand`
         <include refid="deptListOrDemandIdAll"/>
-        now()> plan_purchase_finish_time and ISNULL(real_purchase_finish_time)
+        ((now()> plan_purchase_finish_time and ISNULL(real_purchase_finish_time))
+        or (real_purchase_finish_time > plan_purchase_finish_time))
     </select>
 
     <sql id="majorProjectByStatus">