xiaoyi
2 天以前 b5e1bceabb36fe1d1e5e88397280d12e7044c6dd
yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/statistics/ErpPurchaseStatisticsServiceImpl.java
@@ -6,6 +6,10 @@
import java.math.BigDecimal;
import java.time.LocalDateTime;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.erp.controller.admin.statistics.vo.purchase.ErpPurchasePriceRespVO;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
/**
 * ERP 采购统计 Service 实现类
@@ -23,4 +27,13 @@
        return purchaseStatisticsMapper.getPurchasePrice(beginTime, endTime);
    }
    @Override
    public PageResult<ErpPurchasePriceRespVO> getPriceAnalysis(PageParam page, Long productId, LocalDateTime[] orderTime) {
        LocalDateTime begin = orderTime != null && orderTime.length > 0 ? orderTime[0] : null;
        LocalDateTime end = orderTime != null && orderTime.length > 1 ? orderTime[1] : null;
        var result = purchaseStatisticsMapper.selectPriceAnalysis(new Page<>(page.getPageNo(), page.getPageSize()), productId, begin, end);
        result.getRecords().forEach(row -> row.setPriceChangeRate(PurchasePriceMetrics.changeRate(row.getLatestPrice(), row.getPreviousPrice())));
        return new PageResult<>(result.getRecords(), result.getTotal());
    }
}