瀏覽代碼

【深爱-物流价格查询】

DINGYL 9 月之前
父節點
當前提交
f61329fdd4

+ 14 - 0
src/main/java/com/uas/eis/entity/dop/DoPApiResp.java

@@ -0,0 +1,14 @@
+package com.uas.eis.entity.dop;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class DoPApiResp {
+    String result;
+    String reason;
+    String resultCode;
+    List<DoPResponseParam> responseParam;
+    String uniquerRequestNumber;
+}

+ 5 - 0
src/main/java/com/uas/eis/entity/dop/DoPExpBillCalculateResponse.java

@@ -0,0 +1,5 @@
+package com.uas.eis.entity.dop;
+
+public class DoPExpBillCalculateResponse {
+
+}

+ 10 - 0
src/main/java/com/uas/eis/entity/dop/DoPPriceMsgData.java

@@ -0,0 +1,10 @@
+package com.uas.eis.entity.dop;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class DoPPriceMsgData {
+    List<DoPResponseParam> deliverTmDto;
+}

+ 27 - 0
src/main/java/com/uas/eis/entity/dop/DoPResponseParam.java

@@ -0,0 +1,27 @@
+package com.uas.eis.entity.dop;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+@Data
+public class DoPResponseParam {
+    private String arriveDate;
+    private BigDecimal billWeight;
+    private BigDecimal continuityWeightFee;
+    private String days;
+    /*private List<DopRespDetail> detail;
+    private List<String> discount;
+    private DoPExpBillCalculateResponse expBillCalculateResponse;*/
+    private BigDecimal firstWeightFee;
+    private BigDecimal groundPrice;
+    private String label;
+    private BigDecimal lowerOfStage1;
+    private BigDecimal lowerOfStage2;
+    private String productName;
+    private String producteCode;
+    private BigDecimal rateOfStage1;
+    private BigDecimal totalfee;
+    private BigDecimal upperGround;
+}

+ 10 - 0
src/main/java/com/uas/eis/entity/dop/DopRespDetail.java

@@ -0,0 +1,10 @@
+package com.uas.eis.entity.dop;
+
+import lombok.Data;
+
+@Data
+public class DopRespDetail {
+    private int caculateFee;
+    private String priceEntryCode;
+    private String priceEntryName;
+}

+ 3 - 3
src/main/java/com/uas/eis/entity/ky/KYPriceQueryReq.java

@@ -4,12 +4,12 @@ import lombok.Data;
 
 @Data
 public class KYPriceQueryReq {
-    String platformFlag="6820933B508C2977269F78B2DCD329CB";//平台标识  是 测试:6820933B508C2977269F78B2DCD329CB 正式:BY2ENZQAAQKLKHT8NYN7Y0DPKCXW1XS1
-    String customerCode="075525131031";//寄件客户编码 是 075525131031 75576517
+    String platformFlag="BY2ENZQAAQKLKHT8NYN7Y0DPKCXW1XS1";//平台标识  是 测试:6820933B508C2977269F78B2DCD329CB 正式:BY2ENZQAAQKLKHT8NYN7Y0DPKCXW1XS1
+    String customerCode="75576517";//寄件客户编码 是 测试 075525131031 深爱正式:75576517
     String beginAreaCode;//始发区号 是 0755
     String endAreaCode;//目的区号 否 0711
     String billingTime;//货好时间 是 2019-04-25 14:25 时间格为: yyyy-MM-dd HH:mm
-    String pickupCustomerCode="075525131031";//付款公司编码 是 075525131031
+    String pickupCustomerCode="75576517";//付款公司编码 是 075525131031
     Double weight;//计费重量 否 60 默认单位KG,传值不需要带单位(重量、件数、方数,体积四种不能同时为空)
     Integer unit;//件数 否 1 默认单位:件,传值不需要带单位
     Double size;//方数 否 2.2 默认单位:方,传值不需要带单位 立方米

+ 35 - 18
src/main/java/com/uas/eis/service/Impl/ERPServiceImpl.java

@@ -10,7 +10,9 @@ import com.sf.csim.express.service.IServiceCodeStandard;
 import com.sf.csim.express.service.code.ExpressServiceCodeEnum;
 import com.uas.eis.core.config.SpObserver;
 import com.uas.eis.dao.*;
+import com.uas.eis.entity.dop.DoPApiResp;
 import com.uas.eis.entity.dop.DoPPriceQueryReq;
+import com.uas.eis.entity.dop.DoPResponseParam;
 import com.uas.eis.entity.ky.KYApiResp;
 import com.uas.eis.entity.ky.KYPirceData;
 import com.uas.eis.entity.ky.KYPriceQueryReq;
@@ -396,16 +398,21 @@ public class ERPServiceImpl implements ERPService {
             Map<String, Object> data = new HashMap<String, Object>();
             baseDao.callProcedure("SP_LOGISTICSPRICE", new Object[] { rs.getInt("lp_id")});
             //顺丰
-            getPrice_SF(id,rs.getGeneralString("LP_TYPE"),rs.getGeneralDouble("LP_WEIGHT"),rs.getGeneralDouble("LP_VOLUME"),
+             getPrice_SF(id,rs.getGeneralString("LP_TYPE"),rs.getGeneralDouble("LP_WEIGHT"),rs.getGeneralDouble("LP_VOLUME"),
                     rs.getGeneralString("lp_province"),
                     rs.getGeneralString("lp_route"),
                     "广东省","深圳市",
                     rs.getDate("LP_SENDDATETIME"));
             //跨越
-            getPrice_KY(id,rs.getGeneralString("LP_TYPE"),rs.getGeneralDouble("LP_WEIGHT"),  rs.getGeneralString("lp_route"),
+           getPrice_KY(id,rs.getGeneralString("LP_TYPE"),rs.getGeneralDouble("LP_WEIGHT"),  rs.getGeneralString("lp_route"),
                     rs.getDate("LP_SENDDATETIME"));
-           /* getPrice_DoP(id,rs.getGeneralString("LP_TYPE")//,rs.getGeneralDouble("LP_WEIGHT"),  rs.getGeneralString("lp_route"),rs.getGeneralString("SENDDATETIME")
-                     );*/
+           //德邦
+           getPrice_DoP(id,rs.getGeneralString("LP_TYPE"),rs.getGeneralDouble("LP_WEIGHT"),rs.getGeneralDouble("LP_VOLUME"),
+                    rs.getGeneralString("lp_province"),
+                    rs.getGeneralString("lp_route"),
+                    rs.getGeneralString("lp_district"),
+                   rs.getDate("LP_SENDDATETIME")
+                     );
             modelMap.put("success", true);
         }else{
             modelMap.put("message", "单据不存在!");
@@ -415,7 +422,7 @@ public class ERPServiceImpl implements ERPService {
         return modelMap;
     }
     //
-    private Map<String, Object> getPrice_DoP(Integer id,String type){
+    private Map<String, Object> getPrice_DoP(Integer id,String type,double weight,double volume,String province_d,String city_d,String district,Date sendDateTime){
         /*
         * http://dpsanbox.deppon.com/sandbox-web/standard-order/queryPriceTime.action
         *   params String 核算请求参数 是
@@ -433,13 +440,18 @@ public class ERPServiceImpl implements ERPService {
                 普快:RCP(大件快递3.60)
                 物流:HKDJG(航空大件隔日达)
              */
+            if(volume==0){
+                volume=0.001;
+            }else{
+                volume=volume*0.000001;//ERP单位立方厘米 DOP接口单为立方米
+            }
             String businessType="";
             if("特快".equals(type)){
                 businessType="TZKJC";
             }else if("普快".equals(type)){
                 businessType="RCP";//RCP
             }else if("物流".equals(type)){
-                businessType="HKDJG";//HKDJG
+                businessType="NFLF";//新精准卡航:NFLF
             }
               /* originalsStreet": "上海-上海市-长宁区",
                 "originalsaddress": "上海-上海市-长宁区",
@@ -448,32 +460,35 @@ public class ERPServiceImpl implements ERPService {
                 "totalWeight": 500,*/
              DoPPriceQueryReq doPPriceQueryReq=new DoPPriceQueryReq();
              //目标城市
-            doPPriceQueryReq.setOriginalsStreet("上海-上海市-长宁区");
+            doPPriceQueryReq.setOriginalsStreet(province_d+"-"+city_d+"-"+district);
             //出发城市
             doPPriceQueryReq.setOriginalsaddress("广东省-深圳市-龙岗区");
-            doPPriceQueryReq.setSendDateTime("2025-03-22 11:00:03");
-            doPPriceQueryReq.setTotalVolume("0.001");
-            doPPriceQueryReq.setTotalWeight("30");
+            doPPriceQueryReq.setSendDateTime(DateUtil.format(sendDateTime,"yyyy-MM-dd HH:mm:ss"));
+            doPPriceQueryReq.setTotalVolume(String.valueOf(volume));
+            doPPriceQueryReq.setTotalWeight( String.valueOf(weight));
             doPPriceQueryReq.setProductCode(businessType);//特快专递
             String msgData = FastJsonUtil.toJSONString(doPPriceQueryReq);
             String timeStamp = SecurityUtil.getTimestamp();
             Map<String, String> params = new HashMap<String, String>();
             String appkey="8626840f067f147f983c499e03e1a873";
             String digest= SecurityUtil.getDigest(msgData+appkey+timeStamp);
-            System.out.println(msgData);
             params.put("params", msgData);
             params.put("digest", digest);
             params.put("timestamp", timeStamp);
             params.put("companyCode", CHECK_WORD);
+            System.out.println(msgData);
             String result = HttpClientUtil.post(CALL_URL, params);
             System.out.println(result);
-            /*DoPApiResp dopApiResp= FlexJsonUtil.fromJson(result, DoPApiResp.class);
-            if(dopApiResp!=null){
-                if("true".equals(dopApiResp.getResult())){
-                  *//*  String responseParam= dopApiResp.getResponseParam();
-                    DoPPriceMsgData doPPriceMsgData=FlexJsonUtil.fromJson(responseParam, DoPPriceMsgData.class);*//*
+            DoPApiResp doPApiResp= FlexJsonUtil.fromJson(result, DoPApiResp.class);
+            if("true".equals(doPApiResp.getResult())){
+                for(DoPResponseParam dop:doPApiResp.getResponseParam()){
+                    if(businessType.equals(dop.getProducteCode())){
+                        baseDao.execute("update LogisticsPrice set lp_msg2='',LP_REALTIMEPRICE2="+dop.getTotalfee()+" where lp_id="+id);
+                    }
                 }
-            }*/
+            }else{
+                baseDao.execute("update LogisticsPrice set lp_msg2='"+doPApiResp.getReason()+"' where lp_id="+id);
+            }
             return retMap;
         }catch (Exception e){
             e.printStackTrace();
@@ -503,7 +518,7 @@ public class ERPServiceImpl implements ERPService {
                     , new String[]{"CALL_URL","CLIENT_CODE","CHECK_WORD","ENABLE_"}, "LOGISTICS_='KY' and type_='GETPRICE' AND A.ENABLE_ = 1");
             String timeStamp = String.valueOf(System.currentTimeMillis());
             // 是否沙盒环境 true标识沙盒环境,false标识正式环境,发布生产环境时注意切换
-            boolean isSandbox = true;
+            boolean isSandbox = false;
             Map<String, String> params = new HashMap<String, String>();
             String appkey="83955";//obs[1].toString();
             String appSecret = obs[2].toString();//"46129BED8B381806B1FE15562523E2E0";
@@ -546,6 +561,8 @@ public class ERPServiceImpl implements ERPService {
                     if(businessType.equals(ky.getServiceMode())){
                         if(ky.getTotalJF()!=null){
                             baseDao.execute("update LogisticsPrice set lp_msg3='',LP_REALTIMEPRICE3="+ky.getTotalJF()+" where lp_id="+id);
+                        }else{
+                            baseDao.execute("update LogisticsPrice set lp_msg3='"+ky.getRetMsg()+"' where lp_id="+id);
                         }
                     }
                 }

+ 5 - 282
src/test/java/com/uas/eis/UasEisApplicationTests.java

@@ -3,6 +3,10 @@ package com.uas.eis;
 
 import com.deppon.dop.module.sdk.shared.util.SecurityUtil;
 import com.uas.eis.dao.*;
+import com.uas.eis.entity.dop.DoPApiResp;
+import com.uas.eis.entity.dop.DoPResponseParam;
+import com.uas.eis.entity.ky.KYApiResp;
+import com.uas.eis.entity.ky.KYPirceData;
 import com.uas.eis.entity.sf.*;
 import com.uas.eis.service.ERPService;
 import com.uas.eis.utils.*;
@@ -21,6 +25,7 @@ import java.io.InputStream;
 import java.io.UnsupportedEncodingException;
 import java.net.HttpURLConnection;
 import java.net.URL;
+import java.text.DateFormat;
 import java.util.*;
 
 @RunWith(SpringRunner.class)
@@ -30,288 +35,6 @@ public class UasEisApplicationTests {
 	private BaseDao baseDao;
 	@Autowired
 	private ERPService erpService;
-	/**
-	 丰桥新沙箱测试顾客编码  Yg4Zf06w_sxZs3A5D
-	 校验码  3Xdk1jqeG1Xod9nUXus8Op7DNOkchTnw
-	 **/
-	private static final String CLIENT_CODE = "JYXKJWFFJ88E";  //此处替换为您在丰桥平台获取的顾客编码
-	//此处替换为您在丰桥平台获取的校验码
-	private static final String CHECK_WORD_PROD = "GgO0UoyQ5FssNLItii3olo63bQ80ErAE"; //生产校验码
-	private static final String CHECK_WORD_BOX ="rMBhSYRa9OtUPkfX5mow01NlxDWtI411";//沙箱校验码
-
-	//沙箱环境的地址 -PRO
-	private static final String CALL_URL_BOX = "https://sfapi-sbox.sf-express.com/std/service";
-	//生产环境的地址 -PRO
-	private static final String CALL_URL_PROD = "https://sfapi.sf-express.com/std/service";
-	@Test
-	public void TestApi() throws UnsupportedEncodingException {
-		/**ExpressServiceCodeEnum     对应速运类-快递APIs
-		 POSTServiceCodeEnum        对应速运类-驿站APIs
-		 YJTServiceCodeEnum         对应解决方案-医寄通APIs
-		 EPSServiceCodeEnum         对应解决方案-快递管家APIs
-		 HZTServiceCodeEnum         对应解决方案-函证通APIs    2022-2-24 新增
-		 详情见code目录下枚举类,客户可自行修改引用的该类
-		 **/
-		IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_CREATE_ORDER; //下订单
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_SEARCH_ORDER_RESP; //查订单
-		//  IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_UPDATE_ORDER;//订单取消
-		// 	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_FILTER_ORDER_BSP;//订单筛选
-		//  IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_SEARCH_ROUTES;//查路由
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_GET_SUB_MAILNO;//子单号
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_QUERY_SFWAYBILL;//查运费
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_REGISTER_ROUTE;//注册路由
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_CREATE_REVERSE_ORDER;//退货下单
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_CANCEL_REVERSE_ORDER;//退货消单
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_WANTED_INTERCEPT;//截单转寄
-		// 	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_QUERY_DELIVERTM;//时效标准及价格查询
-		//  IServiceCodeStandard standardService = ExpressServiceCodeEnum.COM_RECE_CLOUD_PRINT_WAYBILLS;//面单打印
-		//  IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_UPLOAD_ROUTE;//路由上传
-		//   IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_SEARCH_PROMITM;//预计派送时间查询
-		//  IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_EXCE_CHECK_PICKUP_TIME;//揽件服务时间查询
-		//  IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_VALIDATE_WAYBILLNO;//运单号合法性校验
-
-
-		CallExpressServiceTools tools=CallExpressServiceTools.getInstance();
-		Map<String, String> params = new HashMap<String, String>();
-		String timeStamp = String.valueOf(System.currentTimeMillis());
-		String msgData = tools.packageMsgData(standardService);
-		SFCreatOrderReq sfOrder = new SFCreatOrderReq();
-		sfOrder.setOrderId("SD24090018-2");
-		sfOrder.setMonthlyCard("7551234567");
-//		1,寄件方信息 2,到件方信息
-		List<SFContactInfo> contactInfoList = new ArrayList<>();
-		SFContactInfo sendInfo = new SFContactInfo();
-		sendInfo.setContactType(1);
-		sendInfo.setCompany("深圳市佳毅兴科技有限公司");
-		sendInfo.setContact("窦慧怡");
-		sendInfo.setMobile("18128820006");
-		sendInfo.setAddress("广东省深圳市宝安区大宝路51号新柯城业园1栋5楼");
-		contactInfoList.add(sendInfo);
-
-		SFContactInfo receiveInfo = new SFContactInfo();
-		receiveInfo.setContactType(2);
-		receiveInfo.setCompany("深圳市豪锦瑞科技有限公司");
-		receiveInfo.setContact("刘洋");
-		receiveInfo.setMobile("18688770976");
-		receiveInfo.setAddress("深圳市宝安区71区万源商务大厦B栋606");
-		contactInfoList.add(receiveInfo);
-		sfOrder.setContactInfoList(contactInfoList);
-
-		List<SFCargoDetail> cargoDetails = new ArrayList<>();
-		sfOrder.setCargoDetails(cargoDetails);
-		msgData = FlexJsonUtil.toJsonDeep(sfOrder);
-		params.put("partnerID", CLIENT_CODE);  // 顾客编码 ,对应丰桥上获取的clientCode
-		params.put("requestID", UUID.randomUUID().toString().replace("-", ""));
-		params.put("serviceCode",standardService.getCode());// 接口服务码
-		params.put("timestamp", timeStamp);
-		params.put("msgData", msgData);
-		params.put("msgDigest", tools.getMsgDigest(msgData,timeStamp,CHECK_WORD_BOX));
-		long startTime = System.currentTimeMillis();
-
-//		System.out.println("====调用请求:" + params.get("msgData"));
-		System.out.println("====调用实际请求:" + params);
-		String result = HttpClientUtil.post(CALL_URL_BOX, params);
-		System.out.println("====调用丰桥的接口服务代码:" + String.valueOf(standardService.getCode()) + " 接口耗时:"+ String.valueOf(System.currentTimeMillis()-startTime)+"====");
-		System.out.println("===调用地址 ==="+CALL_URL_BOX);
-		System.out.println("===顾客编码 ==="+CLIENT_CODE);
-		System.out.println("===返回结果:" +result);
-//		Map<String,Object> resData = JacksonUtil.fromJson(result);
-		SFApiResp sfApiResp = FlexJsonUtil.fromJson(result, SFApiResp.class);
-		if(sfApiResp!=null){
-			if("A1000".equals(sfApiResp.getApiResultCode())){
-				String apiResultData = sfApiResp.getApiResultData();
-				SFCreatOrderResp sfApiRespData =  FlexJsonUtil.fromJson(apiResultData, SFCreatOrderResp.class);
-				if(sfApiRespData.isSuccess()){
-					SFCreateOrder sfOrderResp =  sfApiRespData.getMsgData();
-					if(!CollectionUtil.isEmpty(sfOrderResp.getWaybillNoInfoList())){
-						for (SFWaybillNoInfo sfWaybillNoInfoResp:sfOrderResp.getWaybillNoInfoList()){
-							System.out.println("顺丰物流单号: ====="+sfWaybillNoInfoResp.getWaybillNo());
-						}
-					}
-				}else {
-					System.out.println("errorCode:"+sfApiRespData.getErrorCode()+"====errorMsg:"+sfApiRespData.getErrorMsg());
-				}
-			}else {
-				System.out.println("code:"+sfApiResp.getApiResultCode()
-						+"===apiResponseID:"+sfApiResp.getApiResponseID()
-						+"===apiErrorMsg:"+sfApiResp.getApiErrorMsg());
-			}
-		}
-	}
-
-	@Test
-	public void TestCreatSFOrder(){
-		Map<String, Object> res = erpService.creatSFOrder("JYX_TEST", 50734879,"ADMIN");
-		System.out.println("res==="+res.get("success")+":"+res.get("message"));
-	}
-
-	@Test
-	public void TestCancelSFOrder(){
-		Map<String, Object> res = erpService.cancelSFOrder("JYX_TEST", 50734879,"ADMIN");
-		System.out.println("res==="+res.get("success")+":"+res.get("message"));
-	}
-	@Test
-	public void TestPrintPDF() throws UnsupportedEncodingException {
-		/**ExpressServiceCodeEnum     对应速运类-快递APIs
-		 POSTServiceCodeEnum        对应速运类-驿站APIs
-		 YJTServiceCodeEnum         对应解决方案-医寄通APIs
-		 EPSServiceCodeEnum         对应解决方案-快递管家APIs
-		 HZTServiceCodeEnum         对应解决方案-函证通APIs    2022-2-24 新增
-		 详情见code目录下枚举类,客户可自行修改引用的该类
-		 **/
-		IServiceCodeStandard standardService = ExpressServiceCodeEnum.COM_RECE_CLOUD_PRINT_WAYBILLS; //下订单
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_SEARCH_ORDER_RESP; //查订单
-		//  IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_UPDATE_ORDER;//订单取消
-		// 	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_FILTER_ORDER_BSP;//订单筛选
-		//  IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_SEARCH_ROUTES;//查路由
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_GET_SUB_MAILNO;//子单号
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_QUERY_SFWAYBILL;//查运费
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_REGISTER_ROUTE;//注册路由
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_CREATE_REVERSE_ORDER;//退货下单
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_CANCEL_REVERSE_ORDER;//退货消单
-		//	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_WANTED_INTERCEPT;//截单转寄
-		// 	IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_QUERY_DELIVERTM;//时效标准及价格查询
-		//  IServiceCodeStandard standardService = ExpressServiceCodeEnum.COM_RECE_CLOUD_PRINT_WAYBILLS;//面单打印
-		//  IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_UPLOAD_ROUTE;//路由上传
-		//   IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_SEARCH_PROMITM;//预计派送时间查询
-		//  IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_EXCE_CHECK_PICKUP_TIME;//揽件服务时间查询
-		//  IServiceCodeStandard standardService = ExpressServiceCodeEnum.EXP_RECE_VALIDATE_WAYBILLNO;//运单号合法性校验
-
-
-		CallExpressServiceTools tools=CallExpressServiceTools.getInstance();
-		Map<String, String> params = new HashMap<String, String>();
-		String timeStamp = String.valueOf(System.currentTimeMillis());
-		Map<String, Object> msgDataMap = new HashMap<>();
-		msgDataMap.put("templateCode","fm_76130_standard_JYXKJWFFJ88E");
-		msgDataMap.put("version","2.0");
-		msgDataMap.put("fileType","pdf");
-		msgDataMap.put("sync","true");
-		List<Map<String,Object>> docList = new ArrayList<>();
-		Map<String,Object> doc = new HashMap<>();
-		doc.put("masterWaybillNo","SF7444488564898");
-		docList.add(doc);
-		doc = new HashMap<>();
-		doc.put("masterWaybillNo","SF7444488606478");
-		docList.add(doc);
-		msgDataMap.put("documents",docList);
-		String msgData = FlexJsonUtil.toJsonDeep(msgDataMap);
-		params.put("partnerID", CLIENT_CODE);  // 顾客编码 ,对应丰桥上获取的clientCode
-		params.put("requestID", UUID.randomUUID().toString().replace("-", ""));
-		params.put("serviceCode",standardService.getCode());// 接口服务码
-		params.put("timestamp", timeStamp);
-		params.put("msgData", msgData);
-		params.put("msgDigest", tools.getMsgDigest(msgData,timeStamp,CHECK_WORD_BOX));
-		long startTime = System.currentTimeMillis();
-//		System.out.println("====调用请求:" + params.get("msgData"));
-		System.out.println("====调用实际请求:" + params);
-		String result = HttpClientUtil.post(CALL_URL_BOX, params);
-		System.out.println("====调用丰桥的接口服务代码:" + String.valueOf(standardService.getCode()) + " 接口耗时:"+ String.valueOf(System.currentTimeMillis()-startTime)+"====");
-		System.out.println("===调用地址 ==="+CALL_URL_BOX);
-		System.out.println("===顾客编码 ==="+CLIENT_CODE);
-		System.out.println("===返回结果:" +result);
-//		Map<String,Object> resData = JacksonUtil.fromJson(result);
-		SFApiResp sfApiResp = FlexJsonUtil.fromJson(result, SFApiResp.class);
-		if(sfApiResp!=null){
-			if("A1000".equals(sfApiResp.getApiResultCode())){
-				String apiResultData = sfApiResp.getApiResultData();
-				SFPrintToPDFResp sfPrintToPDFResp =  FlexJsonUtil.fromJson(apiResultData, SFCreatOrderResp.class);
-				if(sfPrintToPDFResp.isSuccess()){
-					SFPrintFileResp sfPrintFileResp =  sfPrintToPDFResp.getObj();
-					List<SFPrintFile> files = sfPrintFileResp.getFiles();
-					if(!CollectionUtil.isEmpty(files)){
-						files.stream().sorted(Comparator.comparingInt(SFPrintFile::getSeqNo));
-						for (SFPrintFile file : files) {
-							pdfDownLoad(file.getUrl(),file.getToken(),file.getWaybillNo());
-						}
-					}
-				}else {
-					System.out.println("errorCode:"+sfPrintToPDFResp.getErrorCode()+"====errorMsg:"+sfPrintToPDFResp.getErrorMessage());
-				}
-			}else {
-				System.out.println("code:"+sfApiResp.getApiResultCode()
-						+"===apiResponseID:"+sfApiResp.getApiResponseID()
-						+"===apiErrorMsg:"+sfApiResp.getApiErrorMsg());
-			}
-		}
-	}
-
-	@Test
-	public void TestpdfDownLoad(){
-		String fileUrl="https://eos-scp-core-shenzhen-futian1-oss.sf-express.com:443/v1.2/AUTH_EOS-SCP-CORE/print-file-sbox/AAABkcBBzkdSfT1fJRhKjpLt-VFNcr-a_SF7444488607870_fm_76130_standard_JYXKJWFFJ88E_1_1.pdf";
-		String token="AUTH_tkv12_f146d1855480549d262b5c46ab0ab597ff20a97d9d0db45c16bedeb4fabd112b012deadd477ee524b1d690ce01baa3cdffbb125a6ccf69b73778dba2eb5157eb29d9b3c970d295a3ca38c86f265339b4e7673f13379eb30a5b06511e78f70544cc4cdfc6c2876b2b6b012fdd1261d4dc0a993336de84ff3d3ef08dcf6775c715ea8f1ccf7c6c82a84ac370b171a5ac5311e398d02ff8a80d4a3a5acb161165ebbbfe1b7a686c5f0c6fb838db2b8c7625d1d8540df26f87d4f8e135ecce42d062";
-		String fileName="SF7444488607870";
-		pdfDownLoad(fileUrl,token,fileName);
-	}
-	private void pdfDownLoad(String fileUrl,String token,String fileName){
-		//下载地址
-//		String fileUrl = ioList.getGeneralString("ei_pdfurl"); // "https://inv.jss.com.cn/fp2/2zpnwyKkdvu9dWzE8BhmSnER0Iux3xQRMLidDJhiIE2PziVXY4lL3k83OsK0K06YctW5cf1FFHxraffj-bf16A.pdf";
-		// 定义要保存的文件的路径
-//		String fileName = ioList.getGeneralString("cu_name")+ioList.getGeneralString("ei_refno")+".pdf";//
-		String fileBasePath = "C:\\jyxsf\\"+fileName+".pdf";
-//		fileBasePath = String.valueOf(obs[5])+fileName;//发票储存路径
-		try {//X-Auth-token
-			// 创建URL对象
-			URL url = new URL(fileUrl);
-			HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
-			// 设置请求方法为GET
-			httpURLConnection.setRequestMethod("GET");
-			// 添加请求头
-			httpURLConnection.setRequestProperty("X-Auth-token", token); // 假设你的token是通过Bearer模式传递的
-			// 连接服务器
-			httpURLConnection.connect();
-			// 检查响应码
-			int responseCode = httpURLConnection.getResponseCode();
-			if (responseCode == HttpURLConnection.HTTP_OK) {
-				// 读取输入流
-				InputStream inputStream = httpURLConnection.getInputStream();
-				// 写入文件
-				FileOutputStream fileOutputStream = new FileOutputStream(fileBasePath);
-				byte[] buffer = new byte[4096];
-				int bytesRead = -1;
-				while ((bytesRead = inputStream.read(buffer)) != -1) {
-					fileOutputStream.write(buffer, 0, bytesRead);
-				}
-				// 关闭流
-				fileOutputStream.close();
-				inputStream.close();
-
-				System.out.println("下载成功");
-			} else {
-				System.out.println("下载失败 : " + responseCode);
-			}
-			// 断开连接
-			httpURLConnection.disconnect();
-			// 打开连接
-//			URLConnection conn = url.openConnection();
-//			// 获取输入流
-//			InputStream in = conn.getInputStream();
-//			// 创建输出流
-//			FileOutputStream out = new FileOutputStream(fileBasePath);
-//			// 创建缓冲区
-//			byte[] buffer = new byte[104857600];
-//			// 读取并写入数据
-//			int len;
-//			while ((len = in.read(buffer)) != -1) {
-//				out.write(buffer, 0, len);
-//			}
-//			long size = out.getChannel().size();
-//			// 关闭流
-//			in.close();
-//			out.close();
-//                        System.out.println("size:"+size);
-			//存文件 filepath
-//			int id = commonService.saveFilePath(fileBasePath, (int) size, fileName, "管理员");
-//			baseDao.execute("update ELECINVOICE set ei_pdfattach ='"+id+";' where ei_id = "+ioList.getGeneralInt("ei_id"));
-		} catch (Exception e) {
-			e.printStackTrace();
-			String errMsg = "文件转存异常";
-			if(StringUtil.hasText(e.getMessage())){
-				errMsg = e.getMessage();
-			}else if(e.getCause()!=null&&StringUtil.hasText(e.getCause().getMessage())){
-				errMsg = e.getCause().getMessage();
-			}
-		}
-	}
 
  	@Test
 	public void TestSF_getprice(){