订单看板

This commit is contained in:
2025-07-22 15:02:01 +08:00
parent c4e0604e80
commit d2183c2da5
12 changed files with 158 additions and 1 deletions

View File

@@ -1,6 +1,7 @@
package com.klp.service;
import com.klp.domain.WmsProduct;
import com.klp.domain.vo.DashboardOverviewVO;
import com.klp.domain.vo.WmsProductVo;
import com.klp.domain.bo.WmsProductBo;
import com.klp.common.core.page.TableDataInfo;
@@ -46,4 +47,6 @@ public interface IWmsProductService {
* 校验并批量删除产品信息
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
DashboardOverviewVO getDashboardOverview();
}

View File

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.klp.common.utils.StringUtils;
import com.klp.domain.vo.DashboardOverviewVO;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import com.klp.domain.bo.WmsProductBo;
@@ -14,6 +15,7 @@ import com.klp.domain.vo.WmsProductVo;
import com.klp.domain.WmsProduct;
import com.klp.mapper.WmsProductMapper;
import com.klp.service.IWmsProductService;
import com.klp.domain.vo.OrderSummaryVO;
import java.util.List;
import java.util.Map;
@@ -116,4 +118,37 @@ public class WmsProductServiceImpl implements IWmsProductService {
}
return baseMapper.deleteBatchIds(ids) > 0;
}
@Override
public DashboardOverviewVO getDashboardOverview() {
DashboardOverviewVO vo = new DashboardOverviewVO();
OrderSummaryVO summary = baseMapper.selectOrderSummary();
// 计算增长率
summary.setTotalOrderCountGrowthRate(
summary.getLastMonthTotalOrderCount() == 0 ? 0 :
(double)(summary.getTotalOrderCount() - summary.getLastMonthTotalOrderCount()) / summary.getLastMonthTotalOrderCount()
);
summary.setFinishedOrderCountGrowthRate(
summary.getLastMonthFinishedOrderCount() == 0 ? 0 :
(double)(summary.getFinishedOrderCount() - summary.getLastMonthFinishedOrderCount()) / summary.getLastMonthFinishedOrderCount()
);
summary.setFinishedRateGrowthRate(
summary.getLastMonthFinishedRate() == 0 ? 0 :
(summary.getFinishedRate() - summary.getLastMonthFinishedRate()) / summary.getLastMonthFinishedRate()
);
summary.setMonthFinishedOrderCountGrowthRate(
summary.getLastMonthFinishedOrderCount() == 0 ? 0 :
(double)(summary.getMonthFinishedOrderCount() - summary.getLastMonthFinishedOrderCount()) / summary.getLastMonthFinishedOrderCount()
);
summary.setMonthFinishedRateGrowthRate(
summary.getLastMonthFinishedRate() == 0 ? 0 :
(summary.getMonthFinishedRate() - summary.getLastMonthFinishedRate()) / summary.getLastMonthFinishedRate()
);
vo.setOrderSummary(summary);
vo.setSalesManagerPie(baseMapper.selectSalesManagerPie());
vo.setProductRank(baseMapper.selectProductRank());
vo.setOrderMaterial(baseMapper.selectOrderMaterial());
vo.setCustomerRegion(baseMapper.selectCustomerRegion());
return vo;
}
}