外协订单回退调用erp

liweidong
李涛 3 days ago
parent b10afb2b9b
commit 9ab24fdeb1
  1. 5
      blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataProduceClient.java
  2. 5
      blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataProduceClientFallback.java
  3. 3
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java
  4. 5
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/feign/ErpDataProduceClient.java
  5. 2
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/IErpDataProduceService.java
  6. 28
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/impl/ErpDataProduceServiceImpl.java

@ -48,6 +48,7 @@ public interface IErpDataProduceClient {
String PRO_RBTRANSFERLEV = API_PREFIX + "/proRbtransferlev"; String PRO_RBTRANSFERLEV = API_PREFIX + "/proRbtransferlev";
String CREATE_MOLD_PLAN = API_PREFIX + "/createMoldPlan"; String CREATE_MOLD_PLAN = API_PREFIX + "/createMoldPlan";
String RETURN_HANDOVER_RECORD = API_PREFIX + "/returnHandoverRecord"; String RETURN_HANDOVER_RECORD = API_PREFIX + "/returnHandoverRecord";
String RETURN_OEM_ERP_BY_WXNO = API_PREFIX + "/returnOemErpByWxno";
/** /**
@ -180,6 +181,7 @@ public interface IErpDataProduceClient {
/** /**
* 获取转试的试验计划 * 获取转试的试验计划
*
* @param nameList 试验计划名称 * @param nameList 试验计划名称
* @return 结果 * @return 结果
*/ */
@ -232,4 +234,7 @@ public interface IErpDataProduceClient {
R<String> returnHandoverRecord(@RequestParam(value = "hrCode") String hrCode, R<String> returnHandoverRecord(@RequestParam(value = "hrCode") String hrCode,
@RequestParam(value = "partCode") String partCode, @RequestParam(value = "partCode") String partCode,
@RequestParam(value = "batchNo") String batchNo); @RequestParam(value = "batchNo") String batchNo);
@GetMapping(RETURN_OEM_ERP_BY_WXNO)
R<String> returnOemErpByWxno(@RequestParam(value = "hrCode") String wxNo);
} }

@ -128,4 +128,9 @@ public class IErpDataProduceClientFallback implements IErpDataProduceClient {
return R.fail("获取数据失败"); return R.fail("获取数据失败");
} }
@Override
public R<String> returnOemErpByWxno(String wxNo) {
return R.fail("获取数据失败");
}
} }

@ -2789,7 +2789,8 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
@Override @Override
public void returnOemErpByWxno(String wxNo) { public void returnOemErpByWxno(String wxNo) {
// todo 外协订单调用接口回退(调用erp) // 外协订单调用接口回退(调用erp)
erpDataProduceClient.returnOemErpByWxno(wxNo);
} }
@Override @Override

@ -137,5 +137,10 @@ public class ErpDataProduceClient implements IErpDataProduceClient {
return R.data(erpDataProduceService.returnHandoverRecord(hrCode, partCode, batchNo)); return R.data(erpDataProduceService.returnHandoverRecord(hrCode, partCode, batchNo));
} }
@Override
public R<String> returnOemErpByWxno(String wxNo) {
return R.data(erpDataProduceService.returnOemErpByWxno(wxNo));
}
} }

@ -64,4 +64,6 @@ public interface IErpDataProduceService {
String keeper, String createMan, String memo); String keeper, String createMan, String memo);
String returnHandoverRecord(String hrCode, String partCode, String batchNo); String returnHandoverRecord(String hrCode, String partCode, String batchNo);
String returnOemErpByWxno(String wxNo);
} }

@ -551,4 +551,32 @@ public class ErpDataProduceServiceImpl implements IErpDataProduceService {
} }
return excflag; 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<String, Object> inParams = new HashMap<>();
inParams.put("v_wxno", wxNo);
// 3. 执行并获取结果 Map
Map<String, Object> 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;
}
} }

Loading…
Cancel
Save