zx 3 lat temu
rodzic
commit
b8c4f222d0

+ 2 - 0
src/main/java/com/steerinfo/dil/mapper/TmstruckTimeTaskResultMapper.java

@@ -37,6 +37,8 @@ public interface TmstruckTimeTaskResultMapper extends IBaseMapper<TmstruckTimeTa
     //根据运输订单号查找需要用车时长
     Map<String,Object>  selectInwardDueTimeByOrderId(BigDecimal orderId);
 
+
+
     //根据运输订单id查找实绩中是否含有已经计时结束的实绩
     int CountTimeTaskByOrderId(BigDecimal orderId);
 

+ 15 - 0
src/main/java/com/steerinfo/dil/service/impl/TmstruckEnfactoryResultServiceImpl.java

@@ -257,6 +257,21 @@ public class TmstruckEnfactoryResultServiceImpl implements ITmstruckEnfactoryRes
         String subString = orderNumber.substring(0,orderNumber.length() - 1);
         map.putAll(tmstruckEnfactoryResultMapper.selectEnFactoryResultId(subString));
         BigDecimal orderType = DataChange.dataToBigDecimal(map.get("orderTypee"));
+        //调用计时作业方法
+        if (orderType.intValue()==21){
+            //通过运输订单号查找订单id
+            BigDecimal orderId = utilsMapper.getOrderIdByOrderNumber(orderNumber);
+            //首先判断是否还有计时开始
+            BigDecimal startTime = utilsMapper.getTime(orderId);
+            //如果计时已经开始
+            if (startTime==null){
+                map.put("inwardTypes",1);
+                map.put("orderNumber",orderNumber);
+            }else {
+                map.put("inwardTypes",3);
+                map.put("orderNumber",orderNumber);
+            }
+        }
         switch (orderType.intValue()){
             case 1:
             case 4:

+ 9 - 3
src/main/java/com/steerinfo/dil/service/impl/TmstruckTimeTaskResultServiceImpl.java

@@ -288,7 +288,9 @@ public class TmstruckTimeTaskResultServiceImpl implements ITmstruckTimeTaskResul
             tmstruckTimeTaskResult.setResultTimeType(inwardType);
             tmstruckTimeTaskResult.setResultTime(new Date());
             tmstruckTimeTaskResult.setInsertTime(new Date());
-            tmstruckTimeTaskResult.setInsertUsername(personnelSsoId);
+            if (personnelSsoId!=null) {
+                tmstruckTimeTaskResult.setInsertUsername(personnelSsoId);
+            }
             //新增第一条计时实绩
             i += tmstruckTimeTaskResultMapper.insertSelective(tmstruckTimeTaskResult);
         }else if (inwardType.intValue()==3){
@@ -297,7 +299,9 @@ public class TmstruckTimeTaskResultServiceImpl implements ITmstruckTimeTaskResul
             tmstruckTimeTaskResult.setTimeTaskResultId(tmstruckTimeTaskResultMapper.selectMaxId());
             tmstruckTimeTaskResult.setResultTime(new Date());
             tmstruckTimeTaskResult.setResultTimeType(new BigDecimal(3));
-            tmstruckTimeTaskResult.setInsertUsername(personnelSsoId);
+            if (personnelSsoId!=null) {
+                tmstruckTimeTaskResult.setInsertUsername(personnelSsoId);
+            }
             tmstruckTimeTaskResultMapper.insertSelective(tmstruckTimeTaskResult);
             //获取最新暂停结束确认时间
             Map<String, Object> map2 = new HashMap<>();
@@ -316,7 +320,9 @@ public class TmstruckTimeTaskResultServiceImpl implements ITmstruckTimeTaskResul
             tmstruckTimeTaskResult.setTimeTaskResultId(tmstruckTimeTaskResult.getTimeTaskResultId());
             tmstruckTimeTaskResult.setResultValue(new BigDecimal((Time1)));
             tmstruckTimeTaskResult.setResultUomId(new BigDecimal(900));
-            tmstruckTimeTaskResult.setUpdateUsername(personnelSsoId);
+            if (personnelSsoId!=null) {
+                tmstruckTimeTaskResult.setUpdateUsername(personnelSsoId);
+            }
             i += tmstruckTimeTaskResultMapper.updateByPrimaryKeySelective(tmstruckTimeTaskResult);
             map.put("orderStatus", 2);
             utilsMapper.updateOrderStatusByOrderIdOrNum(map);