汇总部分数据,分类逻辑更改,规格去空格

This commit is contained in:
liuyingfang
2024-03-07 18:01:20 +08:00
parent 55ca50ad1b
commit ee8f860b13
14 changed files with 360 additions and 6 deletions

View File

@@ -0,0 +1,10 @@
package cn.ysk.cashier.service;
import cn.ysk.cashier.vo.SummaryVO;
/**
* @author lyf
*/
public interface SummaryService {
SummaryVO selectSummary(Integer shop);
}

View File

@@ -0,0 +1,49 @@
package cn.ysk.cashier.service.impl;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONUtil;
import cn.ysk.cashier.repository.ShopUserDutyDetailRepository;
import cn.ysk.cashier.repository.ShopUserDutyRepository;
import cn.ysk.cashier.service.SummaryService;
import cn.ysk.cashier.vo.SummaryVO;
import cn.ysk.cashier.vo.ProductVO;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.persistence.Tuple;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
@Service
@RequiredArgsConstructor
public class SummaryServiceImpl implements SummaryService {
@Resource
private ShopUserDutyRepository shopUserDutyRepository;
@Resource
private ShopUserDutyDetailRepository shopUserDutyDetailRepository;
@Override
public SummaryVO selectSummary(Integer shopId) {
SummaryVO summaryVO = new SummaryVO();
//支付笔数
Tuple result = shopUserDutyRepository.sumByShopId(shopId);
summaryVO.setPaymentsNumber(result.get(0, Long.class));
summaryVO.setTotalSales(result.get(1, BigDecimal.class));
List<Object[]> objects = shopUserDutyDetailRepository.searchByDutyId(shopId);
List<ProductVO> list = new ArrayList<>();
for (Object[] o :objects) {
ProductVO productVO = new ProductVO();
productVO.setProductId((Integer) o[0]);
productVO.setProductName((String) o[1]);
productVO.setProductNum((BigDecimal)o[2]);
list.add(productVO);
}
summaryVO.setProductInfoList(list);
summaryVO.setAverageSales(summaryVO.getTotalSales().divide(new BigDecimal(summaryVO.getPaymentsNumber()),2, RoundingMode.DOWN));
return summaryVO;
}
}

View File

@@ -90,7 +90,7 @@ public class TbProductSpecServiceImpl implements TbProductSpecService {
}
TbProductSpec tbProductSpec = new TbProductSpec();
tbProductSpec.setName(specDto.getName());
tbProductSpec.setSpecList(specDto.getSpecList().toString().trim());
tbProductSpec.setSpecList(specDto.getSpecList().toString().replace(" ", ""));
tbProductSpec.setShopId(specDto.getShopId());
tbProductSpec.setCreatedAt(Instant.now().toEpochMilli());
tbProductSpec.setUpdatedAt(Instant.now().toEpochMilli());

View File

@@ -62,7 +62,7 @@ public class TbShopCategoryServiceImpl implements TbShopCategoryService {
// Page<TbShopCategory> page = tbShopCategoryRepository.findAll((root, criteriaQuery, criteriaBuilder) -> QueryHelp.getPredicate(root,criteria,criteriaBuilder),pageable);
PageRequest.of(pageable.getPageNumber(), pageable.getPageSize(), Sort.by("sort"));
Page<TbShopCategory> page = tbShopCategoryRepository.findAllBy(criteria.getShopId(), pageable);
tbShopCategoryRepository.findAllBy(criteria.getShopId(),pageable);
// tbShopCategoryRepository.findAllBy(criteria.getShopId(),pageable);
List<Integer> treeId = new ArrayList<>();
for (TbShopCategory category : page.getContent()) {
@@ -119,7 +119,6 @@ public class TbShopCategoryServiceImpl implements TbShopCategoryService {
}else {
resources.setTree(Integer.valueOf(resources.getPid().trim()));
}
ValidationUtil.isNull(resources.getId(),"TbShopCategory","id",resources.getId());
return tbShopCategoryRepository.save(resources);
}