fix(system): 复核状态逻辑修改
This commit is contained in:
+12
-5
@@ -792,11 +792,18 @@ public class ReviewOrderApplicationService {
|
|||||||
|
|
||||||
private void refreshReviewOrderStatus(Long reviewOrderId) {
|
private void refreshReviewOrderStatus(Long reviewOrderId) {
|
||||||
List<ReviewMaterialDetailPO> rows = reviewOrderMapper.queryDetailByReviewOrderId(reviewOrderId);
|
List<ReviewMaterialDetailPO> rows = reviewOrderMapper.queryDetailByReviewOrderId(reviewOrderId);
|
||||||
// 业务口径:只有全部明细待复核=0 时,状态才置为 2;部分复核仍保持 1。
|
// ================== 旧口径:全部明细待复核=0 置 2,部分复核保持 1 ==================
|
||||||
// 状态 3 仅在 checkConfirm 中设置。
|
// // 业务口径:只有全部明细待复核=0 时,状态才置为 2;部分复核仍保持 1。
|
||||||
boolean allReviewed = !CollectionUtils.isEmpty(rows)
|
// // 状态 3 仅在 checkConfirm 中设置。
|
||||||
&& rows.stream().allMatch(r -> nz(r.getPendingReviewQty()).compareTo(BigDecimal.ZERO) == 0);
|
// boolean allReviewed = !CollectionUtils.isEmpty(rows)
|
||||||
Integer targetStatus = allReviewed ? 2 : 1;
|
// && rows.stream().allMatch(r -> nz(r.getPendingReviewQty()).compareTo(BigDecimal.ZERO) == 0);
|
||||||
|
// Integer targetStatus = allReviewed ? 2 : 1;
|
||||||
|
// ================== 新口径:部分复核/全部复核完未确认均置 复核中(2),完全未复核保持 待复核(1) ==================
|
||||||
|
// 只要有任意明细已复核数量>0(部分复核 / 全部复核完未确认)即为复核中(2);
|
||||||
|
// 完全未复核(全部已复核=0)保持待复核(1)。状态 3 仅在 checkConfirm 中设置。
|
||||||
|
boolean anyReviewed = !CollectionUtils.isEmpty(rows)
|
||||||
|
&& rows.stream().anyMatch(r -> nz(r.getReviewedQty()).compareTo(BigDecimal.ZERO) > 0);
|
||||||
|
Integer targetStatus = anyReviewed ? 2 : 1;
|
||||||
|
|
||||||
ReviewOrder order = reviewOrderMapper.selectById(reviewOrderId);
|
ReviewOrder order = reviewOrderMapper.selectById(reviewOrderId);
|
||||||
if (order == null) {
|
if (order == null) {
|
||||||
|
|||||||
Reference in New Issue
Block a user