chenlu
2025-11-19 260ad701e251aaa71a1bf5531bd98d93cb91c2bf
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -29,6 +29,8 @@
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.sql.SQLOutput;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.*;
@@ -585,7 +587,7 @@
    public Map<String,Object> getOrderReport(Integer pageNum, Integer pageSize, List<String> selectDate, OrderDetail orderDetail, Integer model, Integer scope) {
        Integer offset = (pageNum-1)*pageSize;
        String endDate = LocalDate.now().toString();
        String startDate = LocalDate.now().minusDays(15).toString();
        String startDate = LocalDate.now().minusDays(30).toString();
        if(selectDate !=null && selectDate.size()==2){
            if(!selectDate.get(0).isEmpty()){
                startDate = selectDate.get(0);
@@ -612,7 +614,7 @@
    public Map<String,Object> getOrderSummaryReport(Integer pageNum, Integer pageSize, List<String> selectDate, Order order) {
        Integer offset = (pageNum-1)*pageSize;
        String endDate = LocalDate.now().toString();
        String startDate = LocalDate.now().minusDays(15).toString();
        String startDate = LocalDate.now().minusDays(30).toString();
        if(selectDate !=null && selectDate.size()==2){
            if(!selectDate.get(0).isEmpty()){
                startDate = selectDate.get(0);
@@ -640,7 +642,7 @@
    public Map<String,Object> getOrderProductSummary(Integer pageNum, Integer pageSize, List<String> selectDate, OrderDetail orderDetail) {
        Integer offset = (pageNum-1)*pageSize;
        String endDate = LocalDate.now().toString();
        String startDate = LocalDate.now().minusDays(15).toString();
        String startDate = LocalDate.now().minusDays(30).toString();
        if(selectDate !=null && selectDate.size()==2){
            if(!selectDate.get(0).isEmpty()){
                startDate = selectDate.get(0);
@@ -1024,7 +1026,8 @@
        return true;
    }
    public Map<String,Object> appGetOrderList(List<LocalDate> dates) {
    public Map<String,Object> appGetOrderList(List<String> dates) {
        //设置当前时间
        String endDate = LocalDate.now().toString();
        String startDate = LocalDate.now().minusDays(30).toString();
        if(dates !=null && dates.size()==2){
@@ -1035,15 +1038,35 @@
                endDate = String.valueOf(dates.get(1));
            }
        }
        List<String> date = new ArrayList<>();
        date.add(startDate);
        date.add(endDate);
        List<Order> list = orderMapper.selectList(new LambdaQueryWrapper<Order>()
                .gt(Order::getCreateOrder,0)
                .between(Order::getCreateTime,startDate, endDate)
                .apply("create_order > 0")
                .apply("date(create_time) between {0} and {1}",startDate, endDate)
        );
        Integer quantity = 0;
        Double area = 0.00;
        Double perimeter = 0.00;
        for(Order order:list){
            quantity += Integer.parseInt(String.valueOf(order.getQuantity()));
            area += Double.parseDouble(String.valueOf(order.getArea()));
            perimeter += order.getPerimeter();
        }
        Map<String, Object> totalSum  = new HashMap<>();
        DecimalFormat df = new DecimalFormat("#.00");
        totalSum.put("quantity",quantity);
        totalSum.put("area", df.format(area));
        totalSum.put("perimeter", df.format(perimeter));
        totalSum.put("count", list.size());
        Map<String,Object> map = new HashMap<>();
        map.put("data",list);
        map.put("date",date);
        map.put("totalSum",totalSum);
        return map;
        //return orderMapper.
    }
}