Forráskód Böngészése

pms 保养查询 保养规则 空指针

zhangcl 1 hónapja
szülő
commit
00410db08b

+ 2 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/iotdeviceperson/vo/IotDevicePersonRelationSaveReqVO.java

@@ -26,4 +26,6 @@ public class IotDevicePersonRelationSaveReqVO {
     @Schema(description = "原因", example = "随便")
     private String reason;
 
+    @Schema(description = "负责人姓名 集合", example = "张三,李四")
+    private String userNames;
 }

+ 1 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/job/sap/SyncSapPickingListJob.java

@@ -102,7 +102,7 @@ public class SyncSapPickingListJob implements JobHandler {
                         }
                         // 清空函数继续下次请求
                         JCoTable itemTable = function.getTableParameterList().getTable("T_ITEM");
-                        System.out.println(factory + "当前工厂对应的领料单ITEM数量:" + headTable.getNumRows());
+                        System.out.println(factory + "当前工厂对应的领料单ITEM数量:" + itemTable.getNumRows());
                         List<IotSapPickingListItemVO> pickingListItems = new ArrayList<>();
                         if (itemTable != null && itemTable.getNumRows() > 0) {
                             for (int i = 0; i < itemTable.getNumRows(); i++) {

+ 3 - 3
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/iotmainworkorder/IotMainWorkOrderServiceImpl.java

@@ -204,7 +204,7 @@ public class IotMainWorkOrderServiceImpl implements IotMainWorkOrderService {
                 BigDecimal runningKiloDistance = null;
                 BigDecimal naturalDateDistance = null;
                 // 计算每个保养项 每个保养规则下的 距离保养时间 单位 小时
-                if (0 == bom.getRunningTimeRule()) {
+                if (ObjUtil.isNotEmpty(bom.getRunningTimeRule()) && 0 == bom.getRunningTimeRule()) {
                     // 运行时间保养规则
                     if (deviceRunLogMap.containsKey(bom.getDeviceId())) {
                         BigDecimal totalRunTime = deviceRunLogMap.get(bom.getDeviceId()).getTotalRunTime();
@@ -215,7 +215,7 @@ public class IotMainWorkOrderServiceImpl implements IotMainWorkOrderService {
                         runningTimeDistance = runningTimePeriod.subtract(totalRunTime.subtract(lastRunningTime));
                     }
                 }
-                if (0 == bom.getMileageRule()) {
+                if (ObjUtil.isNotEmpty(bom.getMileageRule()) && 0 == bom.getMileageRule()) {
                     // 运行里程保养规则 累计运行里程规则 累计运行里程 >= (上次保养运行里程+运行里程周期-提前量)
                     if (deviceRunLogMap.containsKey(bom.getDeviceId())) {
                         BigDecimal totalMileage = deviceRunLogMap.get(bom.getDeviceId()).getTotalMileage();
@@ -226,7 +226,7 @@ public class IotMainWorkOrderServiceImpl implements IotMainWorkOrderService {
                         runningKiloDistance = runningKiloPeriod.subtract(totalMileage.subtract(lastRunningKilo));
                     }
                 }
-                if (0 == bom.getNaturalDateRule()) {
+                if (ObjUtil.isNotEmpty(bom.getNaturalDateRule()) && 0 == bom.getNaturalDateRule()) {
                     // 自然日期保养规则
                     LocalDateTime lastNaturalDate = bom.getLastNaturalDate();      // 上次保养自然日期
                     BigDecimal naturalDatePeriod = bom.getNextNaturalDate();        // 自然日周期