销售趋势柱状图 左下

This commit is contained in:
wangw 2024-09-29 10:01:54 +08:00
parent d1d42e8fdf
commit 08f01e04ea
3 changed files with 31 additions and 31 deletions

View File

@ -6,7 +6,6 @@ import com.alibaba.druid.util.StringUtils;
import com.google.common.collect.Lists;
import lombok.extern.slf4j.Slf4j;
import cn.ysk.cashier.utils.CloseUtil;
import cn.ysk.cashier.mnt.util.DataTypeEnum;
import javax.sql.DataSource;
import java.io.BufferedReader;
import java.io.File;

View File

@ -238,22 +238,16 @@ public class SummaryServiceImpl implements SummaryService {
List<Object[]> objects = tbOrderInfoRepository.queryTbOrderPaySumByDay(shopId.toString(), startTime, endTime);
//根据时间的销量
List<SumDateVO> sumDateVOList = new ArrayList<>();
Map<String, SumDateVO> dataMap = new HashMap<>();
for (Object[] o : objects) {
SumDateVO sumDateVO = new SumDateVO();
sumDateVO.setAmount((BigDecimal) o[0]);
sumDateVO.setOrderAmount((BigDecimal) o[0]);
sumDateVO.setTradeDay((String) o[1]);
sumDateVO.setSaveAmount((BigDecimal) o[2]);
sumDateVOList.add(sumDateVO);
}
//填充日期
Map<String, SumDateVO> dataMap = new HashMap<>();
for (SumDateVO entry : sumDateVOList) {
String tradeDay = entry.getTradeDay();
BigDecimal amount = entry.getAmount();
BigDecimal saveAmount = entry.getSaveAmount();
dataMap.put(tradeDay, new SumDateVO(tradeDay, amount, saveAmount));
sumDateVO.setDiscountAmount((BigDecimal) o[2]);
sumDateVO.setActualAmount(sumDateVO.getOrderAmount().subtract(sumDateVO.getDiscountAmount()));
dataMap.put(sumDateVO.getTradeDay(), sumDateVO);
}
// 获取今天的日期
LocalDate today = LocalDate.now();
// 定义日期格式
@ -269,12 +263,12 @@ public class SummaryServiceImpl implements SummaryService {
sumDateVO = dataMap.get(tradeDayString);
} else {
// 如果不存在则创建新的SumDateVO对象amount设为0
sumDateVO = new SumDateVO(tradeDayString, BigDecimal.ZERO, BigDecimal.ZERO);
sumDateVO = new SumDateVO(tradeDayString, BigDecimal.ZERO,BigDecimal.ZERO, BigDecimal.ZERO);
}
// 将SumDateVO对象添加到列表中
sumDateList.add(sumDateVO);
}
sumDateList.sort((a, b) -> a.getTradeDay().compareTo(b.getTradeDay()));
sumDateList.sort(Comparator.comparing(SumDateVO::getTradeDay));
map.put("total", sumDateList);
return map;
}

View File

@ -3,7 +3,6 @@ package cn.ysk.cashier.vo;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDate;
/**
* @author lyf
@ -12,13 +11,21 @@ import java.time.LocalDate;
@Data
public class SumDateVO {
private String tradeDay;
private BigDecimal amount;
private BigDecimal saveAmount;
private BigDecimal orderAmount;
private BigDecimal actualAmount;
private BigDecimal discountAmount;
public SumDateVO() {
}
public SumDateVO(String tradeDay, BigDecimal orderAmount, BigDecimal actualAmount, BigDecimal discountAmount) {
this.tradeDay = tradeDay;
this.orderAmount = orderAmount;
this.actualAmount = actualAmount;
this.discountAmount = discountAmount;
}
public String getTradeDay() {
return tradeDay;
}
@ -27,27 +34,27 @@ public class SumDateVO {
this.tradeDay = tradeDay;
}
public BigDecimal getAmount() {
return amount;
public BigDecimal getOrderAmount() {
return orderAmount;
}
public void setAmount(BigDecimal amount) {
this.amount = amount;
public void setOrderAmount(BigDecimal orderAmount) {
this.orderAmount = orderAmount;
}
public BigDecimal getSaveAmount() {
return saveAmount;
public BigDecimal getActualAmount() {
return actualAmount;
}
public void setSaveAmount(BigDecimal saveAmount) {
this.saveAmount = saveAmount;
public void setActualAmount(BigDecimal actualAmount) {
this.actualAmount = actualAmount;
}
public BigDecimal getDiscountAmount() {
return discountAmount;
}
public SumDateVO(String tradeDay, BigDecimal amount, BigDecimal saveAmount) {
this.tradeDay = tradeDay;
this.amount = amount;
this.saveAmount = saveAmount;
public void setDiscountAmount(BigDecimal discountAmount) {
this.discountAmount = discountAmount;
}
}