Merge remote-tracking branch 'origin/test' into test
This commit is contained in:
commit
4c56736535
|
|
@ -6,7 +6,6 @@ import com.alibaba.druid.util.StringUtils;
|
||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import cn.ysk.cashier.utils.CloseUtil;
|
import cn.ysk.cashier.utils.CloseUtil;
|
||||||
import cn.ysk.cashier.mnt.util.DataTypeEnum;
|
|
||||||
import javax.sql.DataSource;
|
import javax.sql.DataSource;
|
||||||
import java.io.BufferedReader;
|
import java.io.BufferedReader;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ public interface TbShopUserFlowMapper extends BaseMapper<TbShopUserFlow> {
|
||||||
" LEFT JOIN ( " +
|
" LEFT JOIN ( " +
|
||||||
" SELECT shop_user_id, SUM(amount) AS total_amount " +
|
" SELECT shop_user_id, SUM(amount) AS total_amount " +
|
||||||
" FROM tb_shop_user_flow " +
|
" FROM tb_shop_user_flow " +
|
||||||
" WHERE biz_code IN ('cashMemberIn','scanMemberIn', 'scanMemberAwardIn') " +
|
" WHERE biz_code IN ('cashMemberIn', 'inMoneyIn', 'scanMemberIn') " +
|
||||||
" AND create_time BETWEEN #{startTime} AND #{endTime} " +
|
" AND create_time BETWEEN #{startTime} AND #{endTime} " +
|
||||||
" GROUP BY shop_user_id " +
|
" GROUP BY shop_user_id " +
|
||||||
" ) AS flow ON flow.shop_user_id = a.id " +
|
" ) AS flow ON flow.shop_user_id = a.id " +
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ import java.util.List;
|
||||||
**/
|
**/
|
||||||
public interface TbShopTableRepository extends JpaRepository<TbShopTable, Integer>, JpaSpecificationExecutor<TbShopTable> {
|
public interface TbShopTableRepository extends JpaRepository<TbShopTable, Integer>, JpaSpecificationExecutor<TbShopTable> {
|
||||||
|
|
||||||
@Query
|
@Query("select count(1) from TbShopTable table where table.shopId = :shopId")
|
||||||
int countAllByShopId(@Param("shopId")Integer shopId);
|
int countAllByShopId(@Param("shopId")Integer shopId);
|
||||||
|
|
||||||
@Query("select table from TbShopTable table where table.qrcode = :qrcode")
|
@Query("select table from TbShopTable table where table.qrcode = :qrcode")
|
||||||
|
|
|
||||||
|
|
@ -234,22 +234,16 @@ public class SummaryServiceImpl implements SummaryService {
|
||||||
List<Object[]> objects = tbOrderInfoRepository.queryTbOrderPaySumByDay(shopId.toString(), startTime, endTime);
|
List<Object[]> objects = tbOrderInfoRepository.queryTbOrderPaySumByDay(shopId.toString(), startTime, endTime);
|
||||||
|
|
||||||
//根据时间的销量
|
//根据时间的销量
|
||||||
List<SumDateVO> sumDateVOList = new ArrayList<>();
|
Map<String, SumDateVO> dataMap = new HashMap<>();
|
||||||
for (Object[] o : objects) {
|
for (Object[] o : objects) {
|
||||||
SumDateVO sumDateVO = new SumDateVO();
|
SumDateVO sumDateVO = new SumDateVO();
|
||||||
sumDateVO.setAmount((BigDecimal) o[0]);
|
sumDateVO.setOrderAmount((BigDecimal) o[0]);
|
||||||
sumDateVO.setTradeDay((String) o[1]);
|
sumDateVO.setTradeDay((String) o[1]);
|
||||||
sumDateVO.setSaveAmount((BigDecimal) o[2]);
|
sumDateVO.setDiscountAmount((BigDecimal) o[2]);
|
||||||
sumDateVOList.add(sumDateVO);
|
sumDateVO.setActualAmount(sumDateVO.getOrderAmount().subtract(sumDateVO.getDiscountAmount()));
|
||||||
}
|
dataMap.put(sumDateVO.getTradeDay(), 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));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取今天的日期
|
// 获取今天的日期
|
||||||
LocalDate today = LocalDate.now();
|
LocalDate today = LocalDate.now();
|
||||||
// 定义日期格式
|
// 定义日期格式
|
||||||
|
|
@ -265,12 +259,12 @@ public class SummaryServiceImpl implements SummaryService {
|
||||||
sumDateVO = dataMap.get(tradeDayString);
|
sumDateVO = dataMap.get(tradeDayString);
|
||||||
} else {
|
} else {
|
||||||
// 如果不存在,则创建新的SumDateVO对象,amount设为0
|
// 如果不存在,则创建新的SumDateVO对象,amount设为0
|
||||||
sumDateVO = new SumDateVO(tradeDayString, BigDecimal.ZERO, BigDecimal.ZERO);
|
sumDateVO = new SumDateVO(tradeDayString, BigDecimal.ZERO,BigDecimal.ZERO, BigDecimal.ZERO);
|
||||||
}
|
}
|
||||||
// 将SumDateVO对象添加到列表中
|
// 将SumDateVO对象添加到列表中
|
||||||
sumDateList.add(sumDateVO);
|
sumDateList.add(sumDateVO);
|
||||||
}
|
}
|
||||||
sumDateList.sort((a, b) -> a.getTradeDay().compareTo(b.getTradeDay()));
|
sumDateList.sort(Comparator.comparing(SumDateVO::getTradeDay));
|
||||||
map.put("total", sumDateList);
|
map.put("total", sumDateList);
|
||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@ package cn.ysk.cashier.vo;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.time.LocalDate;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author lyf
|
* @author lyf
|
||||||
|
|
@ -12,13 +11,21 @@ import java.time.LocalDate;
|
||||||
@Data
|
@Data
|
||||||
public class SumDateVO {
|
public class SumDateVO {
|
||||||
private String tradeDay;
|
private String tradeDay;
|
||||||
private BigDecimal amount;
|
private BigDecimal orderAmount;
|
||||||
private BigDecimal saveAmount;
|
private BigDecimal actualAmount;
|
||||||
|
private BigDecimal discountAmount;
|
||||||
|
|
||||||
public SumDateVO() {
|
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() {
|
public String getTradeDay() {
|
||||||
return tradeDay;
|
return tradeDay;
|
||||||
}
|
}
|
||||||
|
|
@ -27,27 +34,27 @@ public class SumDateVO {
|
||||||
this.tradeDay = tradeDay;
|
this.tradeDay = tradeDay;
|
||||||
}
|
}
|
||||||
|
|
||||||
public BigDecimal getAmount() {
|
public BigDecimal getOrderAmount() {
|
||||||
return amount;
|
return orderAmount;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setAmount(BigDecimal amount) {
|
public void setOrderAmount(BigDecimal orderAmount) {
|
||||||
this.amount = amount;
|
this.orderAmount = orderAmount;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public BigDecimal getActualAmount() {
|
||||||
public BigDecimal getSaveAmount() {
|
return actualAmount;
|
||||||
return saveAmount;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSaveAmount(BigDecimal saveAmount) {
|
public void setActualAmount(BigDecimal actualAmount) {
|
||||||
this.saveAmount = saveAmount;
|
this.actualAmount = actualAmount;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public BigDecimal getDiscountAmount() {
|
||||||
|
return discountAmount;
|
||||||
|
}
|
||||||
|
|
||||||
public SumDateVO(String tradeDay, BigDecimal amount, BigDecimal saveAmount) {
|
public void setDiscountAmount(BigDecimal discountAmount) {
|
||||||
this.tradeDay = tradeDay;
|
this.discountAmount = discountAmount;
|
||||||
this.amount = amount;
|
|
||||||
this.saveAmount = saveAmount;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue