更新资金管理service剥离真实h2db,采用纯mock;

This commit is contained in:
gaoqr
2026-01-20 15:29:41 +08:00
parent 000561171a
commit 6c48ec283c
4 changed files with 21 additions and 31 deletions
@@ -15,6 +15,7 @@ import com.cf.imes.module.system.dal.dataobject.organ.OrganizationDO;
import com.cf.imes.module.system.dal.mysql.funds.delay.ProductDelayRecordMapper;
import com.cf.imes.module.system.dal.mysql.funds.purchase.PurchaseRecordMapper;
import com.cf.imes.module.system.enums.pay.DurationUnitEnum;
import com.cf.imes.module.system.service.funds.products.ProductsDetailService;
import com.cf.imes.module.system.service.funds.purchase.PurchaseService;
import com.cf.imes.module.system.service.organ.OrganService;
import org.apache.ibatis.builder.MapperBuilderAssistant;
@@ -55,6 +56,9 @@ class ProductDelayServiceImplTest extends BaseMockitoUnitTest {
@Mock
private PurchaseService purchaseService;
@Mock
private ProductsDetailService productsDetailService;
@BeforeAll
static void init(){
TableInfoHelper.initTableInfo(new MapperBuilderAssistant(new MybatisConfiguration(), ""), ProductDelayRecordDO.class);
@@ -24,6 +24,7 @@ import org.mockito.Mock;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -175,16 +176,18 @@ class OrganAmountServiceImplTest extends BaseMockitoUnitTest {
LocalDate.now().plusDays(1)
});
LocalDate now = LocalDate.now();
OrganAmountGroupByCreateTimeRespVO vo1 = new OrganAmountGroupByCreateTimeRespVO();
vo1.setDate("2026-1-14");
vo1.setDate(now.minusDays(2).format(DateTimeFormatter.ofPattern("yyyy-M-d")));
vo1.setAmount(new BigDecimal("100"));
OrganAmountGroupByCreateTimeRespVO vo2 = new OrganAmountGroupByCreateTimeRespVO();
vo2.setDate("2026-1-16");
vo2.setDate(now.format(DateTimeFormatter.ofPattern("yyyy-M-d")));
vo2.setAmount(new BigDecimal("200"));
OrganAmountGroupByCreateTimeRespVO vo3 = new OrganAmountGroupByCreateTimeRespVO();
vo3.setDate("2026-1-15");
vo3.setDate(now.minusDays(1).format(DateTimeFormatter.ofPattern("yyyy-M-d")));
vo3.setAmount(new BigDecimal("200"));
List<OrganAmountGroupByCreateTimeRespVO> organAmountGroupByCreateTimeRespVOS = new ArrayList<>();
@@ -545,11 +545,10 @@ class PurchaseServiceImplTest extends BaseMockitoUnitTest {
@Test
void testGetOrgPurchaseList() {
Long organId1 = 1L;
Long otherOrganId = 99L;
LocalDateTime now = LocalDateTime.now();
// organId1 - 最新
// organId1
PurchaseRecordDO r1 = randomPojo(PurchaseRecordDO.class, o -> {
o.setId(1001L);
o.setOrganId(organId1);
@@ -558,30 +557,7 @@ class PurchaseServiceImplTest extends BaseMockitoUnitTest {
o.setPaymentMethod(PayChannelCodeEnum.ALIPAY_PC.getCode());
o.setIsInvocing(INVOICABLE.getCode());
});
// deleted = true(应被过滤)
PurchaseRecordDO r2 = randomPojo(PurchaseRecordDO.class, o -> {
o.setId(1004L);
o.setOrganId(organId1);
o.setDeleted(true);
o.setCreateTime(now.plusDays(1));
o.setPaymentMethod(PayChannelCodeEnum.WECHAT_NATIVE.getCode());
o.setIsInvocing(INVOICABLE.getCode());
});
// organId 不在集合内(应被过滤)
PurchaseRecordDO r3 = randomPojo(PurchaseRecordDO.class, o -> {
o.setId(1005L);
o.setOrganId(otherOrganId);
o.setDeleted(false);
o.setCreateTime(now.plusDays(1));
o.setPaymentMethod(PayChannelCodeEnum.ALIPAY_PC.getCode());
o.setIsInvocing(INVOICABLE.getCode());
});
purchaseRecordMapper.insert(r1);
purchaseRecordMapper.insert(r2);
purchaseRecordMapper.insert(r3);
when(purchaseRecordMapper.selectList(any())).thenReturn(List.of(r1));
Set<Long> organIds = new HashSet<>(Arrays.asList(organId1));
@@ -1,6 +1,7 @@
package com.cf.imes.module.system.service.funds.statistics;
import com.cf.imes.framework.common.enums.StatisticsUnit;
import com.cf.imes.framework.common.util.i18n.core.util.I18nUtils;
import com.cf.imes.framework.test.core.ut.BaseMockitoUnitTest;
import com.cf.imes.module.system.controller.admin.statistics.vo.OrgStatusGroupStatisticsReqVO;
import com.cf.imes.module.system.dal.dataobject.funds.statistics.FundsTradeTypeGroupStatisticsDO;
@@ -11,6 +12,7 @@ import org.mockito.Mock;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -33,6 +35,9 @@ class FundsStatisticsServiceImplTest extends BaseMockitoUnitTest {
@Mock
private IncomeExpenseDetailsMapper incomeExpenseDetailsMapper;
@Mock
private I18nUtils i18nUtils;
@Test
void should_return_consumption_trend_with_zero_filling() {
OrgStatusGroupStatisticsReqVO reqVO = new OrgStatusGroupStatisticsReqVO();
@@ -42,9 +47,11 @@ class FundsStatisticsServiceImplTest extends BaseMockitoUnitTest {
LocalDate.now().plusDays(1)
});
LocalDate now = LocalDate.now();
List<FundsTradeTypeGroupStatisticsDO> purchaseList = new ArrayList<>();
purchaseList.add(new FundsTradeTypeGroupStatisticsDO(new BigDecimal("100"), "2026-1-18"));
purchaseList.add(new FundsTradeTypeGroupStatisticsDO(new BigDecimal("400"), "2026-1-20"));
purchaseList.add(new FundsTradeTypeGroupStatisticsDO(new BigDecimal("100"), now.minusDays(2).format(DateTimeFormatter.ofPattern("yyyy-M-d"))));
purchaseList.add(new FundsTradeTypeGroupStatisticsDO(new BigDecimal("400"), now.format(DateTimeFormatter.ofPattern("yyyy-M-d"))));
when(incomeExpenseDetailsMapper.selectTotalSalesTrendGroupByCreateTime(reqVO)).thenReturn(purchaseList);
// when query