|
|
@@ -55,6 +55,7 @@ class OrderListPaymentFilterTest {
|
|
|
IPosOrderService orders = mock(IPosOrderService.class);
|
|
|
IInfoUserService users = mock(IInfoUserService.class);
|
|
|
PosOrderShOprateController controller = new PosOrderShOprateController();
|
|
|
+ ReflectionTestUtils.setField(controller, "invoicePrintAvailability", mock(com.ruoyi.app.order.invoice.OrderInvoicePrintAvailabilityService.class));
|
|
|
ReflectionTestUtils.setField(controller, "posOrderService", orders);
|
|
|
ReflectionTestUtils.setField(controller, "infoUserService", users);
|
|
|
MerchantStoreAccessService access = mock(MerchantStoreAccessService.class);
|
|
|
@@ -65,9 +66,27 @@ class OrderListPaymentFilterTest {
|
|
|
merchant.setUserId(801L);
|
|
|
merchant.setUserType("1");
|
|
|
when(users.getOne(any())).thenReturn(merchant);
|
|
|
- when(orders.page(any(Page.class), any(Wrapper.class))).thenReturn(new Page<>());
|
|
|
-
|
|
|
- controller.orderList(tokenFor(801L), 1, 10, "pending", null, null);
|
|
|
+ PosOrder order = new PosOrder();
|
|
|
+ order.setId(7L);
|
|
|
+ Page<PosOrder> page = new Page<>();
|
|
|
+ page.setRecords(Collections.singletonList(order));
|
|
|
+ when(orders.page(any(Page.class), any(Wrapper.class))).thenReturn(page);
|
|
|
+ var assets = mock(com.ruoyi.system.mapper.PosOrderInvoicePrintAssetMapper.class);
|
|
|
+ var availability = new com.ruoyi.system.domain.vo.OrderInvoicePrintAvailability();
|
|
|
+ availability.setOrderId(7L);
|
|
|
+ availability.setCanPrintInvoice(true);
|
|
|
+ availability.setInvoicePrintCount(0);
|
|
|
+ when(assets.selectOrderAvailability(Collections.singletonList(7L),
|
|
|
+ com.ruoyi.app.order.invoice.InvoicePrintAssetService.VERSION))
|
|
|
+ .thenReturn(Collections.singletonList(availability));
|
|
|
+ ReflectionTestUtils.setField(controller, "invoicePrintAvailability",
|
|
|
+ new com.ruoyi.app.order.invoice.OrderInvoicePrintAvailabilityService(assets));
|
|
|
+
|
|
|
+ var response = controller.orderList(tokenFor(801L), 1, 10, "pending", null, null);
|
|
|
+ var json = com.alibaba.fastjson2.JSON.parseObject(com.alibaba.fastjson2.JSON.toJSONString(response));
|
|
|
+ var item = json.getJSONObject("data").getJSONArray("records").getJSONObject(0);
|
|
|
+ assertTrue(item.getBooleanValue("canPrintInvoice"));
|
|
|
+ assertEquals(0, item.getInteger("invoicePrintCount"));
|
|
|
|
|
|
LambdaQueryWrapper<PosOrder> query = capturedQuery(orders);
|
|
|
String sql = query.getSqlSegment();
|
|
|
@@ -86,6 +105,7 @@ class OrderListPaymentFilterTest {
|
|
|
IPosOrderService orders = mock(IPosOrderService.class);
|
|
|
IInfoUserService users = mock(IInfoUserService.class);
|
|
|
PosOrderShOprateController controller = new PosOrderShOprateController();
|
|
|
+ ReflectionTestUtils.setField(controller, "invoicePrintAvailability", mock(com.ruoyi.app.order.invoice.OrderInvoicePrintAvailabilityService.class));
|
|
|
ReflectionTestUtils.setField(controller, "posOrderService", orders);
|
|
|
ReflectionTestUtils.setField(controller, "infoUserService", users);
|
|
|
InfoUser merchant = new InfoUser();
|
|
|
@@ -127,6 +147,7 @@ class OrderListPaymentFilterTest {
|
|
|
IInfoUserService users = mock(IInfoUserService.class);
|
|
|
MerchantStoreAccessService access = mock(MerchantStoreAccessService.class);
|
|
|
PosOrderShOprateController controller = new PosOrderShOprateController();
|
|
|
+ ReflectionTestUtils.setField(controller, "invoicePrintAvailability", mock(com.ruoyi.app.order.invoice.OrderInvoicePrintAvailabilityService.class));
|
|
|
ReflectionTestUtils.setField(controller, "posOrderService", orders);
|
|
|
ReflectionTestUtils.setField(controller, "infoUserService", users);
|
|
|
ReflectionTestUtils.setField(controller, "merchantStoreAccessService", access);
|