guoyujie
2025-08-11 a12834e87a110fbf1414e24eb574f2e87b29e03c
north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
@@ -10,6 +10,7 @@
import com.example.erp.dto.sd.DeliveryDetailDTO;
import com.example.erp.dto.sd.DeliveryDetailProductDTO;
import com.example.erp.entity.mm.FinishedOperateLog;
import com.example.erp.entity.pp.BasicDataProduce;
import com.example.erp.entity.sd.*;
import com.example.erp.entity.userInfo.Log;
import com.example.erp.entity.userInfo.SysError;
@@ -19,14 +20,23 @@
import com.example.erp.service.mm.FinishedGoodsInventoryService;
import com.example.erp.service.userInfo.LogService;
import com.example.erp.service.userInfo.SysErrorService;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.lang.reflect.Field;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.*;
@@ -58,7 +68,7 @@
    FinishedGoodsInventoryService finishedGoodsInventoryService;
    public Map<String, Object> getSelectShippingOrder(Integer pageNum, Integer pageSize,List<String> selectDate, Delivery delivery) {
    public Map<String, Object> getSelectShippingOrder(Integer pageNum, Integer pageSize,List<String> selectDate, Delivery delivery) throws JsonProcessingException {
        Integer offset = (pageNum - 1) * pageSize;
        String endDate = LocalDate.now().toString();
        String startDate = LocalDate.now().minusDays(15).toString();
@@ -521,21 +531,41 @@
        if (object.get("type") != null) {
            type = object.get("type").toString();
        }
        int state = 0;
        if (object.get("state") != null) {
            state = Integer.parseInt(object.get("state").toString());
        }
        List <Map<String, Object>> list1=new ArrayList<Map<String, Object>>();//最终结果
        for(Delivery deliverys:deliveries){
            Map<String, Object> map = new HashMap<>();
            List <Map<String, Object>> list=new ArrayList<Map<String, Object>>();//最终结果
            List <Map<String, Object>> moneryList=new ArrayList<Map<String, Object>>();//最终结果
            List<DeliveryDetail> deliveryDetailList=deliveryDetailMapper.getSelectDeliveryPrinting(deliverys.getDeliveryId(),type);
            List<DeliveryDetail> deliveryDetailList;
            if(state==1){
                deliveryDetailList=deliveryDetailMapper.getSelectDeliveryPrintingMoney(deliverys.getDeliveryId(),type);
            }else if(state==2){
                deliveryDetailList=deliveryDetailMapper.getSelectDeliveryPrintingNoMoney(deliverys.getDeliveryId(),type);
            }else{
                deliveryDetailList=deliveryDetailMapper.getSelectDeliveryPrinting(deliverys.getDeliveryId(),type);
            }
            String orderId="";
            double otherMoney=0.0;
            for (DeliveryDetail detail : deliveryDetailList) {
                orderId=detail.getOrderDetail().getOrderId();
                Map<String, Object> itemmap = new HashMap<>();
                List<Map<String, Object>> deliveryDetailList2 = deliveryDetailMapper.getSelectDeliveryDetailPrinting(detail.getDeliveryId(),
                        detail.getOrderDetail().getProductId(), detail.getOrderDetail().getOrderId());
                List<Map<String, Object>> deliveryDetailList2;
                if(state==3){
                    deliveryDetailList2=deliveryDetailMapper.getSelectDeliveryPrintingMoneySpecifications(detail.getDeliveryId(),
                            detail.getOrderDetail().getProductId(), detail.getOrderDetail().getOrderId());
                }else if(state==4){
                    deliveryDetailList2=deliveryDetailMapper.getSelectDeliveryPrintingNoMoneySpecifications(detail.getDeliveryId(),
                            detail.getOrderDetail().getProductId(), detail.getOrderDetail().getOrderId());
                }else{
                    deliveryDetailList2 = deliveryDetailMapper.getSelectDeliveryDetailPrinting(detail.getDeliveryId(),
                            detail.getOrderDetail().getProductId(), detail.getOrderDetail().getOrderId());
                }
                for (Map<String, Object> stringObjectMap : deliveryDetailList2) {
                    if(stringObjectMap.get("other_columns")!=null){
@@ -933,4 +963,6 @@
        return oddNumbers;
    }
}