| 
					
				 | 
			
			
				@@ -1,6 +1,14 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 package com.fs.live.controller; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.List; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import cn.hutool.core.util.StrUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.fs.common.core.domain.R; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.fs.common.utils.StringUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.fs.his.domain.FsStoreOrder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.fs.his.dto.ExpressInfoDTO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.fs.his.enums.ShipperCodeEnum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.fs.his.service.IFsExpressService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.security.access.prepost.PreAuthorize; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.beans.factory.annotation.Autowired; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.web.bind.annotation.GetMapping; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -20,9 +28,11 @@ import com.fs.live.service.ILiveOrderService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.fs.common.utils.poi.ExcelUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.fs.common.core.page.TableDataInfo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import static com.fs.his.utils.PhoneUtil.decryptPhone; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * 订单Controller 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- *  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * @author fs 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * @date 2025-07-08 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  */ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -33,6 +43,10 @@ public class LiveOrderController extends BaseController 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private ILiveOrderService liveOrderService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private IFsExpressService expressService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * 查询订单列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      */ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -100,4 +114,43 @@ public class LiveOrderController extends BaseController 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return toAjax(liveOrderService.deleteLiveOrderByOrderIds(orderIds)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 查看物流状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @PreAuthorize("@ss.hasPermi('live:liveOrder:express')") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @GetMapping(value = "/getExpress/{id}") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public R getExpress(@PathVariable("id") String id) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        LiveOrder order=liveOrderService.selectLiveOrderByOrderId(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ExpressInfoDTO expressInfoDTO=null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(StringUtils.isNotEmpty(order.getDeliverySn())){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            String lastFourNumber = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (order.getDeliveryCode().equals(ShipperCodeEnum.SF.getValue())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                lastFourNumber = order.getUserPhone(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (lastFourNumber.length() == 11) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    lastFourNumber = StrUtil.sub(lastFourNumber, lastFourNumber.length(), -4); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                }else if (lastFourNumber.length()>11){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    String jm = decryptPhone(lastFourNumber); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    lastFourNumber = StrUtil.sub(jm, jm.length(), -4); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            expressInfoDTO=expressService.getExpressInfo(order.getOrderCode(),order.getDeliveryCode(),order.getDeliverySn(),lastFourNumber); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if((expressInfoDTO.getStateEx()!=null&&expressInfoDTO.getStateEx().equals("0"))&&(expressInfoDTO.getState()!=null&&expressInfoDTO.getState().equals("0"))){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                lastFourNumber = "19923690275"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (order.getDeliveryCode().equals(ShipperCodeEnum.SF.getValue())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (lastFourNumber.length() == 11) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        lastFourNumber = StrUtil.sub(lastFourNumber, lastFourNumber.length(), -4); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                expressInfoDTO=expressService.getExpressInfo(order.getOrderCode(),order.getDeliveryCode(),order.getDeliverySn(),lastFourNumber); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return R.ok().put("data",expressInfoDTO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |