diff --git a/src/main/java/com/spring/ifs/api/BaseSearchApi.java b/src/main/java/com/spring/ifs/api/BaseSearchApi.java index 92df840f..8f56489b 100644 --- a/src/main/java/com/spring/ifs/api/BaseSearchApi.java +++ b/src/main/java/com/spring/ifs/api/BaseSearchApi.java @@ -700,4 +700,39 @@ public class BaseSearchApi { return returnlList; } } -} + + /** + * @description: 获取库存件的预估成本 + * @author HP + * @date 2025-12-19 16:25 + * @version 1.0 + */ + public static InventoryPartUnitCostSumVo getInventoryEstimatedMaterialCostByPartNo(Server srv, String contract, String partNo) throws APException { + StringBuilder searchSql = new StringBuilder(); + searchSql.append("SELECT OBJID ifsRowId, OBJVERSION ifsRowVersion, CONTRACT site, PART_NO, CONFIGURATION_ID, ESTIMATED_MATERIAL_COST"); + searchSql.append(" FROM ifsapp.INVENTORY_PART_CONFIG ipc"); + searchSql.append(" WHERE ipc.CONTRACT = :contract AND ipc.PART_NO = :partNo AND ipc.CONFIGURATION_ID = '*'"); + //设置查询的入参 + Map inParam = new HashMap<>(); + inParam.put("contract", contract); + inParam.put("partNo", partNo); + //调用查询的通用方法 + RecordCollection recordCollection = IfsPlsqlUtils.execSqlSearchGetRecordCollection(srv, searchSql, inParam); + //判断能否返回 + if (recordCollection == null) { + return null; + } else { + //调用通用的处理方法 返回Map + Map resultMap = IfsConverterToMap.ConverterIfsToMap(recordCollection.get(0)); + InventoryPartUnitCostSumVo resultRow = new InventoryPartUnitCostSumVo(); + //设置参数 + resultRow.setIfsRowId(resultMap.get("IFSROWID")); + resultRow.setIfsRowVersion(resultMap.get("IFSROWVERSION")); + resultRow.setSite(resultMap.get("SITE")); + resultRow.setPartNo(resultMap.get("PART_NO")); + resultRow.setConfigurationId(resultMap.get("CONFIGURATION_ID")); + resultRow.setEstimatedMaterialCost(resultMap.get("ESTIMATED_MATERIAL_COST")); + return resultRow; + } + } +} \ No newline at end of file diff --git a/src/main/java/com/spring/ifs/bean/BaseSearchBean.java b/src/main/java/com/spring/ifs/bean/BaseSearchBean.java index a74a8b90..f39cb89c 100644 --- a/src/main/java/com/spring/ifs/bean/BaseSearchBean.java +++ b/src/main/java/com/spring/ifs/bean/BaseSearchBean.java @@ -180,6 +180,39 @@ public class BaseSearchBean { return returnMap; } + /** + * @description: 获取库存件的预估成本 + * @author HP + * @date 2025-12-19 16:25 + * @version 1.0 + */ + public Map getInventoryEstimatedMaterialCostByPartNo(Server srv, PartInformationEntity inData) { + //查询的参数 + Map returnMap = new HashMap<>(); + String site = inData.getSite(); + String partNo = inData.getPartNo(); + logger.info("库存件cost value请求参数 域:"+site+",物料编码:"+partNo); + try { + InventoryPartUnitCostSumVo resultRow = BaseSearchApi.getInventoryEstimatedMaterialCostByPartNo(srv, site, partNo); + //判断null + if(resultRow == null) { + throw new APException("库存件按成本不存在!"); + } + returnMap.put("resultCode", "200"); + returnMap.put("obj", JSON.toJSONString(resultRow)); + logger.info("返回集合大小:"+resultRow.toString()); + } catch(APException e){ + returnMap.put("resultCode", "400"); + returnMap.put("resultMsg", e.getMessage()); + logger.info("异常信息:"+e.getMessage()); + } + return returnMap; + } + + + + + /** * @description: 按照条件查询技术等级的数据 * @author LR