Explorar o código

设备之系统——消息提醒 V3.8 OPT
修改保养/润滑跨月、月末数据搜索条件
(从创建时间改为通过年、月进行范围搜索)

hyq hai 1 ano
pai
achega
4bf5de3a3d

+ 1 - 1
cx-equipment/cx-equipment-common/src/main/java/com/rongwei/bscommon/sys/service/EquLubricationTaskManagementService.java

@@ -24,5 +24,5 @@ public interface EquLubricationTaskManagementService extends IService<EquLubrica
      */
     void wordExportLubricationTask(Map<String, Object> parameter, HttpServletResponse response);
 
-    List<EquLubricationTaskManagementDo> getListByTimeQuantum(String newDate, String oldDate);
+    List<EquLubricationTaskManagementDo> getListByTimeQuantum(int year, int month ,boolean stride);
 }

+ 1 - 1
cx-equipment/cx-equipment-common/src/main/java/com/rongwei/bscommon/sys/service/EquMaintenanceTaskService.java

@@ -19,5 +19,5 @@ public interface EquMaintenanceTaskService extends IService<EquMaintenanceTaskDo
 
     List<EquMaintenanceTaskDo> getListByYearAndMonth(int year, int month);
 
-    List<EquMaintenanceTaskDo> getListByTimeQuantum(String newDate, String oldDate);
+    List<EquMaintenanceTaskDo> getListByTimeQuantum(int year, int month,boolean stride);
 }

+ 15 - 3
cx-equipment/cx-equipment-common/src/main/java/com/rongwei/bscommon/sys/service/impl/EquLubricationTaskManagementServiceImpl.java

@@ -100,12 +100,24 @@ public class EquLubricationTaskManagementServiceImpl extends ServiceImpl<EquLubr
     }
 
     @Override
-    public List<EquLubricationTaskManagementDo> getListByTimeQuantum(String newDate, String oldDate) {
+    public List<EquLubricationTaskManagementDo> getListByTimeQuantum(int year, int month, boolean stride) {
         LambdaQueryWrapper<EquLubricationTaskManagementDo> queryWrapper = new LambdaQueryWrapper<>();
         queryWrapper.in(EquLubricationTaskManagementDo::getTaskstatus, Arrays.asList(10,20,70))
-                .lt(BaseDo::getCreatedate,newDate)
-                .gt(BaseDo::getCreatedate,oldDate)
+                // .lt(BaseDo::getCreatedate, year)
+                // .gt(BaseDo::getCreatedate, month)
                 .eq(BaseDo::getDeleted,0);
+
+        //跨月
+        queryWrapper.and(stride,query ->query
+                .eq(EquLubricationTaskManagementDo::getYear,year)
+                .lt(EquLubricationTaskManagementDo::getMonth,month)
+                .or()
+                .eq(EquLubricationTaskManagementDo::getYear,year-1)
+                .ge(EquLubricationTaskManagementDo::getMonth,month));
+        //月末
+        queryWrapper.and(!stride,query -> query
+                .eq(EquLubricationTaskManagementDo::getYear,year)
+                .eq(EquLubricationTaskManagementDo::getMonth,month));
         return lubricationTaskManagementMapperDao.selectList(queryWrapper);
     }
 }

+ 12 - 3
cx-equipment/cx-equipment-common/src/main/java/com/rongwei/bscommon/sys/service/impl/EquMaintenanceTaskServiceImpl.java

@@ -65,12 +65,21 @@ public class EquMaintenanceTaskServiceImpl extends ServiceImpl<EquMaintenanceTas
     }
 
     @Override
-    public List<EquMaintenanceTaskDo> getListByTimeQuantum(String newDate, String oldDate) {
+    public List<EquMaintenanceTaskDo> getListByTimeQuantum(int year, int month, boolean stride) {
         LambdaQueryWrapper<EquMaintenanceTaskDo> queryWrapper = new LambdaQueryWrapper<>();
         queryWrapper.in(EquMaintenanceTaskDo::getTaskstate, Arrays.asList("10","30","70"))
-                .lt(EquMaintenanceTaskDo::getCreatedate,newDate)
-                .ge(EquMaintenanceTaskDo::getCreatedate,oldDate)
                 .eq(EquMaintenanceTaskDo::getDeleted,0);
+        //跨月
+        queryWrapper.and(stride,query ->query
+                        .eq(EquMaintenanceTaskDo::getPlanyear,year)
+                        .lt(EquMaintenanceTaskDo::getMonth,month)
+                        .or()
+                        .eq(EquMaintenanceTaskDo::getPlanyear,year-1)
+                        .ge(EquMaintenanceTaskDo::getMonth,month));
+        //月末
+        queryWrapper.and(!stride,query -> query
+                .eq(EquMaintenanceTaskDo::getPlanyear,year)
+                .eq(EquMaintenanceTaskDo::getMonth,month));
         return maintenanceTaskDao.selectList(queryWrapper);
     }
 }

+ 13 - 9
cx-equipment/cx-equipment-common/src/main/java/com/rongwei/bscommon/sys/service/impl/EquipmentSendNotifyServiceImpl.java

@@ -363,15 +363,17 @@ public class EquipmentSendNotifyServiceImpl implements EquipmentSendNotifyServic
         Calendar calendar = Calendar.getInstance();
         Date date = new Date();
         calendar.setTime(date);
+        int month = calendar.get(Calendar.MONTH)+1;
+        int year = calendar.get(Calendar.YEAR);
         calendar.set(Calendar.DAY_OF_MONTH,1);
         SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
         String newDate = simpleDateFormat.format(calendar.getTime());
-        calendar.set(Calendar.MONTH, -11);
-        String oldDate = simpleDateFormat.format(calendar.getTime());
+        // calendar.set(Calendar.MONTH, -11);
+        // String oldDate = simpleDateFormat.format(calendar.getTime());
         // 查询距近一年时间内未完成保养/润滑任务
-        List<EquMaintenanceTaskDo> maintenanceTaskDoList = maintenanceTaskService.getListByTimeQuantum(newDate, oldDate);
+        List<EquMaintenanceTaskDo> maintenanceTaskDoList = maintenanceTaskService.getListByTimeQuantum(year, month, true);
         List<EquLubricationTaskManagementDo> lubricationTaskManagementDoList = equLubricationTaskManagementService
-                .getListByTimeQuantum(newDate, oldDate);
+                .getListByTimeQuantum(year, month,true );
         if (maintenanceTaskDoList.size() + lubricationTaskManagementDoList.size() == 0) {
             return R.ok();
         }
@@ -449,13 +451,15 @@ public class EquipmentSendNotifyServiceImpl implements EquipmentSendNotifyServic
         SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
         calendar.setTime(date);
         String newDate = simpleDateFormat.format(date);
-        // int sky = calendar.get(Calendar.DAY_OF_MONTH)-1;
-        calendar.set(Calendar.DAY_OF_MONTH, 1);
-        String oldDate = simpleDateFormat.format(calendar.getTime());
+        // // int sky = calendar.get(Calendar.DAY_OF_MONTH)-1;
+        // calendar.set(Calendar.DAY_OF_MONTH, 1);
+        // String oldDate = simpleDateFormat.format(calendar.getTime());
+        int year = calendar.get(Calendar.YEAR);
+        int month = calendar.get(Calendar.MONTH)+1;
         // 查询距近一年时间内未完成保养/润滑任务
-        List<EquMaintenanceTaskDo> maintenanceTaskDoList = maintenanceTaskService.getListByTimeQuantum(newDate, oldDate);
+        List<EquMaintenanceTaskDo> maintenanceTaskDoList = maintenanceTaskService.getListByTimeQuantum(year, month, false);
         List<EquLubricationTaskManagementDo> lubricationTaskManagementDoList = equLubricationTaskManagementService
-                .getListByTimeQuantum(newDate, oldDate);
+                .getListByTimeQuantum(year, month, false );
         if (maintenanceTaskDoList.size() + lubricationTaskManagementDoList.size() == 0) {
             return R.ok();
         }