Merge branch 'refs/heads/分账重构'

This commit is contained in:
seesaw
2024-08-19 15:39:54 +08:00
3 changed files with 31 additions and 5 deletions

View File

@ -32,6 +32,7 @@ import javax.annotation.security.PermitAll;
import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
@ -145,5 +146,11 @@ public class ScreenController {
return success(preferenceService.getPercent());
}
@GetMapping("/getTotalMoney")
@Operation(summary = "获取当天收入和人数")
@PermitAll
public CommonResult<Map<String,Object>> getMoneyAndPeople(Long storeId) {
return success(orderService.getMoneyAndPeople(storeId));
}
}

View File

@ -15,6 +15,7 @@ import javax.validation.Valid;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
/**
* 会员订单 Service 接口
@ -117,4 +118,7 @@ public interface OrderService {
* @return
*/
OrderMoneyRespVO getUserMeney(Long userId);
Map<String,Object> getMoneyAndPeople(Long storeId);
}

View File

@ -43,10 +43,7 @@ import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
@ -197,7 +194,7 @@ public class OrderServiceImpl implements OrderService {
.eqIfPresent(MemberUserDO::getMobile, reqVO.getUserAccount())
.eqIfPresent(MemberUserDO::getCardId, reqVO.getUserJob())
.eqIfPresent(MemberUserDO::getId, reqVO.getUserId())
.inIfPresent(MemberUserDO::getId,groupMapper.getMemberList(reqVO.getGroupId())))
.inIfPresent(MemberUserDO::getId, groupMapper.getMemberList(reqVO.getGroupId())))
.stream().map(MemberUserDO::getId).collect(Collectors.toList());
}
Map<String, LocalDateTime> timePeriod = this.getTimePeriod(reqVO.getTimePeriod());
@ -354,4 +351,22 @@ public class OrderServiceImpl implements OrderService {
orderMoneyRespVO.setUserId(userId);
return orderMoneyRespVO;
}
@Override
public Map<String, Object> getMoneyAndPeople(Long storeId) {
BigDecimal total = BigDecimal.ZERO;
int size = 0;
List<DishOrderDO> dishOrderDOS = dishOrderMapper.selectList(Wrappers.<DishOrderDO>lambdaQuery()
.eq(DishOrderDO::getStoreId, storeId)
.apply("DATE(create_time) = DATE(NOW())"));
if(CollectionUtil.isNotEmpty(dishOrderDOS)){
BigDecimal reduce = dishOrderDOS.stream().map(DishOrderDO::getTotalMoney).reduce(BigDecimal.ZERO, BigDecimal::add);
total = reduce;
size = dishOrderDOS.stream().map(DishOrderDO::getUserId).distinct().collect(Collectors.toList()).size();
}
Map<String, Object> map = new HashMap<>();
map.put("total", total);
map.put("size", size);
return map;
}
}