一个订单中有多个订单项,但是要求是每个订单可能不是一次性完成的,可能先完成一个订单项,在完成另外的,所以我需要等到所有订单项完成,我的订单状态才能变为已完成,我循环判断订单项时,只要有一个订单项完成了,我的订单状态就会变为已完成,所以怎么能一次判断所有订单项都为1的时候才修改订单状态。
下面是不成功的代码,这样判断的话,只要有一个为1,他就改了,求大佬指点!
一个订单中有多个订单项,但是要求是每个订单可能不是一次性完成的,可能先完成一个订单项,在完成另外的,所以我需要等到所有订单项完成,我的订单状态才能变为已完成,我循环判断订单项时,只要有一个订单项完成了,我的订单状态就会变为已完成,所以怎么能一次判断所有订单项都为1的时候才修改订单状态。
下面是不成功的代码,这样判断的话,只要有一个为1,他就改了,求大佬指点!
package com.auskat.demo.lock;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
* 类文件: TestClass
* <p>
* <p>
* 类描述:
* <p>
* 作 者: AusKa_T
* <p>
* 日 期: 2021/5/16 0016
* <p>
* 时 间: 15:14
* <p>
*/
public class TestClass {
public static void main(String[] args) {
List<PwmOrderItem> orderItemList = new ArrayList<>();;
orderItemList.add(new PwmOrderItem("1",1));
orderItemList.add(new PwmOrderItem("2",0));
List<PwmOrderItem> orderItems = orderItemList.stream().filter(i -> i.getOrderItemStatus() != 1).collect(Collectors.toList());
if(orderItems.size() == 0) {
// 全部都是更新状态
System.out.println("更新状态!");
}else {
System.out.println("存在不为1的,不更新状态!");
}
}
}