销售趋势柱状图 左下
This commit is contained in:
parent
d1d42e8fdf
commit
08f01e04ea
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue