优化销售退货插件中的日期字段校验和异常信息

- 修改了SoSaleReturnPluginInitializerToB和SoSaleReturnPluginInitializerToC类中的日期校验逻辑
- 优化了异常信息的表述,使其更加清晰和准确
- 新增了TestSfExpress类,用于测试顺丰云打印功能(注:实际代码中此测试类已删除,此处为占位内容)
This commit is contained in:
liuy 2024-10-15 10:43:42 +08:00
parent bbba76de05
commit 035e0829ab
3 changed files with 83 additions and 8 deletions

View File

@ -875,8 +875,8 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
}
return businessFormat;
} else {
logger.error("生成出库日期失败或者closedAt为空! json{}", JSON.toJSON(orderOutTobHeaderDto));
Assert.state(false, "生成出库日期失败或者closedAt为空! json{}", JSON.toJSON(orderOutTobHeaderDto));
logger.error("OFS字段closedAt为空(作为U8C的业务日期)! json{}", JSON.toJSON(orderOutTobHeaderDto));
Assert.state(false, "OFS字段closedAt为空(作为U8C的业务日期)! json{}", JSON.toJSON(orderOutTobHeaderDto));
return null;
}
}
@ -1899,8 +1899,8 @@ public class SoSaleReturnPluginInitializerToB extends PluginBaseEntity {
}
return businessFormat;
} else {
logger.error("生成出库日期失败,或者refundedAt为空! json{}", JSON.toJSON(orderOutTobHeaderDto));
Assert.state(false, "生成出库日期失败,或者refundedAt为空! json{}", JSON.toJSON(orderOutTobHeaderDto));
logger.error("refundedAt为空! json{}", JSON.toJSON(orderOutTobHeaderDto));
Assert.state(false, "refundedAt为空! json{}", JSON.toJSON(orderOutTobHeaderDto));
return null;
}
}

View File

@ -972,8 +972,8 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity {
}
return businessFormat;
} else {
logger.error("closedAt为空! json{}", JSON.toJSON(header));
Assert.state(false, "closedAt为空! json{}", JSON.toJSON(header));
logger.error("OFS字段closedAt为空(作为U8C的业务日期)! json{}", JSON.toJSON(header));
Assert.state(false, "OFS字段closedAt为空(作为U8C的业务日期)! json{}", JSON.toJSON(header));
return null;
}
}
@ -998,8 +998,8 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity {
}
return businessFormat;
} else {
logger.error("生成出库日期失败,或者refundedAt为空! json{}", JSON.toJSON(stockinH));
Assert.state(false, "生成出库日期失败,或者refundedAt为空! json{}", JSON.toJSON(stockinH));
logger.error("refundedAt为空! json{}", JSON.toJSON(stockinH));
Assert.state(false, "refundedAt为空! json{}", JSON.toJSON(stockinH));
return null;
}
}

View File

@ -0,0 +1,75 @@
//package com.hzya.frame;
//
//import com.aliyun.teautil.Common;
//
//import javax.servlet.http.HttpServletResponse;
//import java.io.InputStream;
//import java.io.UnsupportedEncodingException;
//import java.net.URL;
//import java.net.URLConnection;
//
///**
// * @Authorliuyang
// * @Packagecom.hzya.frame
// * @ProjectkangarooDataCenterV3
// * @nameTestSfExpress
// * @Date2024/10/12 09:26
// * @FilenameTestSfExpress
// */
//public class TestSfExpress {
// /**
// * 云面单打印
// */
// @SuppressWarnings("static-access")
// public Result<FhhzdH> cloudPrint(FhhzdHDto entity, HttpServletResponse resp) throws UnsupportedEncodingException {
// FhhzdH fhhzdH = mapper.selectByPrimaryKey(entity.getId);
// if (Common.isNull(fhhzdH)) {
// return new Result<FhhzdH>().setCode(BussErrorCode.ARGUMENT_NOT_VALID).setReason("单号为" + entity.getId + "数据不存在!");
// }
// if (Common.isEmpty(fhhzdH.getKddh())) {//快递单号
// return new Result<FhhzdH>().setCode(BussErrorCode.ARGUMENT_NOT_VALID).setReason("该单据还没有下单无法打印面单!");
// }
// //读取顺丰配置文件
// loadSfProperties();
// String msgData = getData(fhhzdH, TEMPLATECODE);//顺丰面单请求参数
// CallExpressServiceTools client = CallExpressServiceTools.getInstance();
// Map<String, String> params = new HashMap<String, String>();
// String timeStamp = String.valueOf(System.currentTimeMillis());
// params.put("partnerID", CLIENT_CODE); // 顾客编码 对应丰桥上获取的clientCode
// params.put("requestID", UUID.randomUUID().toString().replace("-", ""));
// params.put("serviceCode", COM_RECE_CLOUD_PRINT_WAYBILLS);// 接口服务码
// params.put("timestamp", timeStamp);
// params.put("msgData", msgData);
// params.put("msgDigest", client.getMsgDigest(msgData, timeStamp, CHECK_WORD));//数据签名
// String result = HttpClientUtil.post(CALL_URL_BOX, params);
// ShunFengResponse res = new Gson().fromJson(result, ShunFengResponse.class);
// String apiResultData = res.getApiResultData();
// NoodleSheetData data = new Gson().fromJson(apiResultData, NoodleSheetData.class);
// if (data.getSuccess() == false) {
// throw new RuntimeException(String.format("单据号为[%s]读取顺丰面单发生异常", fhhzdH.getDjh()));
// }
// /**
// * 注意如果是异步方式请求接口时不需要关注以下此部分内容我这写的是同步以下代码是要把顺丰云面单
// * 以流的形式输出打印出来默认是异步同步需要设置sync为true
// * 封装顺丰相应参数请严格按照顺丰接口要求书写实体类
// *
// */
// String token = data.getObj().getFiles().get(0).getToken();//顺丰面单返回的token
// String url = data.getObj().getFiles().get(0).getUrl();//pdf文件的url下载地址
// try {
// URL noodleUrl = new URL(url);
// URLConnection connection = noodleUrl.openConnection(); //创建连接
// connection.setRequestProperty("X-Auth-token", token);//设置请求头下载文件时需要的token,设置在请求头的 X-Auth-token 字段有效期 24h
// InputStream in = connection.getInputStream();
// byte[] image = Util.toByteArray(in);
// OutputStream out = resp.getOutputStream();
// out.write(image);
// out.flush();
// out.close();
// } catch (IOException e) {
// log.error("pdf文件转换发生异常", e.getMessage());
// throw new RuntimeException(e.getMessage());
// }
// return null;
// }
//}