✨ 待回单确认运单归入已结束,打卡门禁给出专门文案
This commit is contained in:
+8
-3
@@ -136,14 +136,16 @@ public final class WaybillProcessSupport {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 运单已结束:已完成或已取消。此后不再接受司机打卡。
|
* 运单已结束:已完成、已取消,或已打完末位卡停在待回单确认。此后不再接受司机打卡。
|
||||||
* <p>
|
* <p>
|
||||||
* 只认这两个状态,大小写不敏感。草稿、待执行、待调度、调度中的运单司机仍要能打卡,
|
* 只认这三个状态,大小写不敏感。草稿、待执行、待调度、调度中的运单司机仍要能打卡,
|
||||||
* 所以不能按 {@link #isTerminalBusinessStatus} 的「终态或调度中间态」口径判定。
|
* 所以不能按 {@link #isTerminalBusinessStatus} 的「终态或调度中间态」口径判定。
|
||||||
*/
|
*/
|
||||||
public static boolean isPunchEnded(String businessStatus) {
|
public static boolean isPunchEnded(String businessStatus) {
|
||||||
String status = stringVal(businessStatus);
|
String status = stringVal(businessStatus);
|
||||||
return "completed".equalsIgnoreCase(status) || "cancelled".equalsIgnoreCase(status);
|
return "completed".equalsIgnoreCase(status)
|
||||||
|
|| "cancelled".equalsIgnoreCase(status)
|
||||||
|
|| STATUS_PENDING_RETURN_CONFIRM.equalsIgnoreCase(status);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -157,6 +159,9 @@ public final class WaybillProcessSupport {
|
|||||||
if ("cancelled".equalsIgnoreCase(status)) {
|
if ("cancelled".equalsIgnoreCase(status)) {
|
||||||
return "运单已取消";
|
return "运单已取消";
|
||||||
}
|
}
|
||||||
|
if (STATUS_PENDING_RETURN_CONFIRM.equalsIgnoreCase(status)) {
|
||||||
|
return "运单待业务员确认回单";
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+6
-3
@@ -351,12 +351,14 @@ class WaybillProcessSupportTest {
|
|||||||
// ------------------------------------------------------------ 结束门禁
|
// ------------------------------------------------------------ 结束门禁
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("结束门禁:只认已完成与已取消,大小写不敏感")
|
@DisplayName("结束门禁:已完成、已取消与待回单确认都算结束,大小写不敏感")
|
||||||
void punchEndedOnlyForCompletedAndCancelled() {
|
void punchEndedForCompletedCancelledAndPendingReturnConfirm() {
|
||||||
assertTrue(WaybillProcessSupport.isPunchEnded("completed"));
|
assertTrue(WaybillProcessSupport.isPunchEnded("completed"));
|
||||||
assertTrue(WaybillProcessSupport.isPunchEnded("COMPLETED"));
|
assertTrue(WaybillProcessSupport.isPunchEnded("COMPLETED"));
|
||||||
assertTrue(WaybillProcessSupport.isPunchEnded("cancelled"));
|
assertTrue(WaybillProcessSupport.isPunchEnded("cancelled"));
|
||||||
assertTrue(WaybillProcessSupport.isPunchEnded("Cancelled"));
|
assertTrue(WaybillProcessSupport.isPunchEnded("Cancelled"));
|
||||||
|
assertTrue(WaybillProcessSupport.isPunchEnded("pending_return_confirm"),
|
||||||
|
"司机已打完末位卡,不能再打卡");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -372,11 +374,12 @@ class WaybillProcessSupportTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("结束门禁文案:完成与取消各一句,非结束态没有文案")
|
@DisplayName("结束门禁文案:完成、取消与待回单确认各一句,非结束态没有文案")
|
||||||
void punchEndedReasonOnlyForEndedStatuses() {
|
void punchEndedReasonOnlyForEndedStatuses() {
|
||||||
assertEquals("运单已完成", WaybillProcessSupport.punchEndedReason("completed"));
|
assertEquals("运单已完成", WaybillProcessSupport.punchEndedReason("completed"));
|
||||||
assertEquals("运单已完成", WaybillProcessSupport.punchEndedReason(" COMPLETED "));
|
assertEquals("运单已完成", WaybillProcessSupport.punchEndedReason(" COMPLETED "));
|
||||||
assertEquals("运单已取消", WaybillProcessSupport.punchEndedReason("cancelled"));
|
assertEquals("运单已取消", WaybillProcessSupport.punchEndedReason("cancelled"));
|
||||||
|
assertEquals("运单待业务员确认回单", WaybillProcessSupport.punchEndedReason("pending_return_confirm"));
|
||||||
assertNull(WaybillProcessSupport.punchEndedReason(null));
|
assertNull(WaybillProcessSupport.punchEndedReason(null));
|
||||||
assertNull(WaybillProcessSupport.punchEndedReason(""));
|
assertNull(WaybillProcessSupport.punchEndedReason(""));
|
||||||
assertNull(WaybillProcessSupport.punchEndedReason(" "));
|
assertNull(WaybillProcessSupport.punchEndedReason(" "));
|
||||||
|
|||||||
Reference in New Issue
Block a user