// 期望值与真实值的比较
  private void compare(StockAction expected, StockAction actual, boolean isIncludeDetail) {
    Assert.assertEquals("id", expected.getId(), actual.getId());
    Assert.assertEquals("restaurantId", expected.getRestaurantId(), actual.getRestaurantId());
    Assert.assertEquals("oriStockId", expected.getOriStockId(), actual.getOriStockId());
    Assert.assertEquals("oriStockIdDate", expected.getOriStockDate(), actual.getOriStockDate());
    if (actual.getDeptIn().getId() != 0) {
      Assert.assertEquals("deptIn", expected.getDeptIn().getId(), actual.getDeptIn().getId());
      Assert.assertEquals(
          "deptInName", expected.getDeptIn().getName(), actual.getDeptIn().getName());
    }
    if (actual.getDeptOut().getId() != 0) {
      Assert.assertEquals("deptOut", expected.getDeptOut().getId(), actual.getDeptOut().getId());
      Assert.assertEquals(
          "deptOutName", expected.getDeptOut().getName(), actual.getDeptOut().getName());
    }
    if (actual.getSupplier().getId() != 0) {
      Assert.assertEquals(
          "supplierId", expected.getSupplier().getId(), actual.getSupplier().getId());
      Assert.assertEquals(
          "supplierName", expected.getSupplier().getName(), actual.getSupplier().getName());
    }
    Assert.assertEquals("operatorId", expected.getOperatorId(), actual.getOperatorId());
    Assert.assertEquals("operator", expected.getOperator(), actual.getOperator());
    Assert.assertEquals("approverId", expected.getApproverId(), actual.getApproverId());
    Assert.assertEquals("approver", expected.getApprover(), actual.getApprover());
    // Assert.assertEquals("amount", expected.getTotalAmount(), actual.getTotalAmount(),0.0001F);
    // Assert.assertEquals("price", expected.getTotalPrice(), actual.getTotalPrice(),0.0001F);
    Assert.assertEquals("status", expected.getStatus(), actual.getStatus());
    Assert.assertEquals("type", expected.getType(), actual.getType());
    Assert.assertEquals("subType", expected.getSubType(), actual.getSubType());

    if (isIncludeDetail) {
      for (StockActionDetail expectedDetail : expected.getStockDetails()) {
        int index = actual.getStockDetails().indexOf(expectedDetail);
        if (index >= 0) {
          Assert.assertEquals(
              "associated stock_action id to detail",
              expectedDetail.getStockActionId(),
              actual.getStockDetails().get(index).getStockActionId());
          Assert.assertEquals(
              "associated material id to detail",
              expectedDetail.getMaterialId(),
              actual.getStockDetails().get(index).getMaterialId());
          Assert.assertEquals(
              "price to detail",
              expectedDetail.getPrice(),
              actual.getStockDetails().get(index).getPrice(),
              0.001);
          Assert.assertEquals(
              "amount to detail",
              expectedDetail.getAmount(),
              actual.getStockDetails().get(index).getAmount(),
              0.001);
        } else {
          Assert.assertTrue("stock action detail", false);
        }
      }
    }
  }