From 9ab24fdeb179d7cffc305fcbae7ba2105c82cd81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E6=B6=9B?= Date: Wed, 27 May 2026 09:29:56 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=96=E5=8D=8F=E8=AE=A2=E5=8D=95=E5=9B=9E?= =?UTF-8?q?=E9=80=80=E8=B0=83=E7=94=A8erp?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../erpdata/feign/IErpDataProduceClient.java | 29 +++++++++++-------- .../feign/IErpDataProduceClientFallback.java | 5 ++++ .../service/impl/WorkOrderServiceImpl.java | 3 +- .../erpdata/feign/ErpDataProduceClient.java | 5 ++++ .../service/IErpDataProduceService.java | 2 ++ .../impl/ErpDataProduceServiceImpl.java | 28 ++++++++++++++++++ 6 files changed, 59 insertions(+), 13 deletions(-) diff --git a/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataProduceClient.java b/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataProduceClient.java index a9f62d24f..04787f2d3 100644 --- a/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataProduceClient.java +++ b/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataProduceClient.java @@ -48,6 +48,7 @@ public interface IErpDataProduceClient { String PRO_RBTRANSFERLEV = API_PREFIX + "/proRbtransferlev"; String CREATE_MOLD_PLAN = API_PREFIX + "/createMoldPlan"; String RETURN_HANDOVER_RECORD = API_PREFIX + "/returnHandoverRecord"; + String RETURN_OEM_ERP_BY_WXNO = API_PREFIX + "/returnOemErpByWxno"; /** @@ -180,8 +181,9 @@ public interface IErpDataProduceClient { /** * 获取转试的试验计划 + * * @param nameList 试验计划名称 - * @return 结果 + * @return 结果 */ @PostMapping(TRAIL_ITEM_LIST) R>> trialItemList(@RequestParam List nameList); @@ -218,18 +220,21 @@ public interface IErpDataProduceClient { @RequestParam(value = "lossQty") Integer lossQty, @RequestParam(value = "scrapQty") Integer scrapQty); @GetMapping(CREATE_MOLD_PLAN) - R createMoldPlan(@RequestParam(value = "partCode", required = false)String partCode, - @RequestParam(value = "moCode", required = false)String moCode, - @RequestParam(value = "plantype", required = false)String plantype, - @RequestParam(value = "quantity", required = false)Integer quantity, + R createMoldPlan(@RequestParam(value = "partCode", required = false) String partCode, + @RequestParam(value = "moCode", required = false) String moCode, + @RequestParam(value = "plantype", required = false) String plantype, + @RequestParam(value = "quantity", required = false) Integer quantity, @RequestParam(value = "needDate", required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") Date needDate, - @RequestParam(value = "level", required = false)String level, - @RequestParam(value = "keeper", required = false)String keeper, - @RequestParam(value = "createMan", required = false)String createMan, - @RequestParam(value = "memo", required = false)String memo); + @RequestParam(value = "level", required = false) String level, + @RequestParam(value = "keeper", required = false) String keeper, + @RequestParam(value = "createMan", required = false) String createMan, + @RequestParam(value = "memo", required = false) String memo); @GetMapping(RETURN_HANDOVER_RECORD) - R returnHandoverRecord(@RequestParam(value = "hrCode")String hrCode, - @RequestParam(value = "partCode")String partCode, - @RequestParam(value = "batchNo")String batchNo); + R returnHandoverRecord(@RequestParam(value = "hrCode") String hrCode, + @RequestParam(value = "partCode") String partCode, + @RequestParam(value = "batchNo") String batchNo); + + @GetMapping(RETURN_OEM_ERP_BY_WXNO) + R returnOemErpByWxno(@RequestParam(value = "hrCode") String wxNo); } diff --git a/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataProduceClientFallback.java b/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataProduceClientFallback.java index 4018c9486..0d4e89f38 100644 --- a/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataProduceClientFallback.java +++ b/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataProduceClientFallback.java @@ -128,4 +128,9 @@ public class IErpDataProduceClientFallback implements IErpDataProduceClient { return R.fail("获取数据失败"); } + @Override + public R returnOemErpByWxno(String wxNo) { + return R.fail("获取数据失败"); + } + } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java index 632f1e035..66766221e 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java @@ -2789,7 +2789,8 @@ public class WorkOrderServiceImpl extends BaseServiceImpl returnOemErpByWxno(String wxNo) { + return R.data(erpDataProduceService.returnOemErpByWxno(wxNo)); + } + } diff --git a/blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/IErpDataProduceService.java b/blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/IErpDataProduceService.java index 889d2e319..f0ff48239 100644 --- a/blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/IErpDataProduceService.java +++ b/blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/IErpDataProduceService.java @@ -64,4 +64,6 @@ public interface IErpDataProduceService { String keeper, String createMan, String memo); String returnHandoverRecord(String hrCode, String partCode, String batchNo); + + String returnOemErpByWxno(String wxNo); } diff --git a/blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/impl/ErpDataProduceServiceImpl.java b/blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/impl/ErpDataProduceServiceImpl.java index 467e74ac7..e3e570b83 100644 --- a/blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/impl/ErpDataProduceServiceImpl.java +++ b/blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/impl/ErpDataProduceServiceImpl.java @@ -551,4 +551,32 @@ public class ErpDataProduceServiceImpl implements IErpDataProduceService { } return excflag; } + + @Override + public String returnOemErpByWxno(String wxNo) { + SimpleJdbcCall jdbcCall = new SimpleJdbcCall(jdbcTemplate) + // 指定存储过程名(包含 DB Link) + .withProcedureName("dba_mgr.pro_rbwxdel") + // 建议关闭元数据访问(通过 DB Link 访问时可避免权限/性能问题) + .withoutProcedureColumnMetaDataAccess() + // 显式声明参数 + .declareParameters( + new SqlParameter("v_wxno", Types.VARCHAR), + new SqlOutParameter("v_excnote", Types.VARCHAR), + new SqlOutParameter("v_excflag", Types.VARCHAR) + ); + // 2. 封装输入参数 + Map inParams = new HashMap<>(); + inParams.put("v_wxno", wxNo); + // 3. 执行并获取结果 Map + Map resultMap = jdbcCall.execute(inParams); + + // 4. 提取输出参数 + String excflag = (String) resultMap.get("v_excflag"); + String excnote = (String) resultMap.get("v_excnote"); + if ("0".equals(excflag)) { + throw new ServiceException("外协订单调用接口回退异常:" + excnote); + } + return excflag; + } }