From b383ea5f6e3e7b46e3263001ca3a2ff9314f516c Mon Sep 17 00:00:00 2001 From: fengyuan_yang <1976974459@qq.com> Date: Fri, 20 Dec 2024 09:32:38 +0800 Subject: [PATCH] =?UTF-8?q?2024-12-20=20=E6=8E=A5=E5=8F=A3=E6=9B=B4?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/spring/ifs/api/BomApi.java | 4 +- .../com/spring/ifs/bean/BomServiceBean.java | 11 +- .../impl/BomManagementServiceImpl.java | 179 +++++++++--------- .../MasterPartInformationServiceImpl.java | 24 ++- .../impl/PartInformationServiceImpl.java | 132 ++++++------- 5 files changed, 167 insertions(+), 183 deletions(-) diff --git a/src/main/java/com/spring/ifs/api/BomApi.java b/src/main/java/com/spring/ifs/api/BomApi.java index 51907f45..7721de2e 100644 --- a/src/main/java/com/spring/ifs/api/BomApi.java +++ b/src/main/java/com/spring/ifs/api/BomApi.java @@ -604,7 +604,7 @@ public class BomApi { * @date 2024/12/11 16:22 * @version 1.0 */ - public static Map modifyBomItem(Server srv, BomItem inData) throws APException { + public static Map modifyBomItem(Server srv, BomIfsItem inData) throws APException { //公共参数 String ifsRowId = inData.getIfsRowId();// String ifsRowVersion = inData.getIfsRowVersion();// @@ -653,7 +653,7 @@ public class BomApi { * @date 2024/12/11 16:24 * @version 1.0 */ - public static void removeBomItem(Server srv, BomItem inData) throws APException { + public static void removeBomItem(Server srv, BomIfsItem inData) throws APException { //公共参数 //公共参数 String ifsRowId = inData.getIfsRowId();// diff --git a/src/main/java/com/spring/ifs/bean/BomServiceBean.java b/src/main/java/com/spring/ifs/bean/BomServiceBean.java index 0702d38f..86608a37 100644 --- a/src/main/java/com/spring/ifs/bean/BomServiceBean.java +++ b/src/main/java/com/spring/ifs/bean/BomServiceBean.java @@ -14,6 +14,7 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -429,7 +430,7 @@ public class BomServiceBean { * @date 2024/12/13 9:53 * @version 1.0 */ - public Map getBomItems(Server srv, BomItem inData) { + public Map getBomItems(Server srv, BomIfsItem inData) { //公共参数 Map returnMap = new HashMap<>(); String contract = inData.getContract(); @@ -526,7 +527,7 @@ public class BomServiceBean { * @date 2024/12/13 10:24 * @version 1.0 */ - public Map modifyBomItem(Server srv, BomItem inData) { + public Map modifyBomItem(Server srv, BomIfsItem inData) { logger.info("Bom替代明细新增开始:"+JSON.toJSONString(inData)); // 公共参数 Map returnMap = new HashMap<>(); @@ -577,7 +578,7 @@ public class BomServiceBean { * @date 2024/12/13 10:26 * @version 1.0 */ - public Map removeBomItems(Server srv, List inDatas) { + public Map removeBomItems(Server srv, ArrayList inDatas) { logger.info("Bom 明细集合删除开始:"+JSON.toJSONString(inDatas)); //公共参数 Map returnMap = new HashMap<>(); @@ -594,7 +595,7 @@ public class BomServiceBean { //打印日志 logger.info("Bom替代明细集合 批量新增结束:"+JSON.toJSONString(inDatas)); //循环判断的方法 - for(BomItem bomItem : inDatas) { + for(BomIfsItem bomItem : inDatas) { //判断是否已经存在 String tempLineItemNo = bomItem.getLineItemNo(); if(!itemMap.containsKey(tempLineItemNo)) { @@ -602,7 +603,7 @@ public class BomServiceBean { } } // 校验通过 循环调用新增的方法 - for(BomItem bomItem : inDatas) { + for(BomIfsItem bomItem : inDatas) { //设置版本的信息 String key = bomItem.getLineItemNo(); BomItem oriItem = itemMap.get(key); diff --git a/src/main/java/com/spring/modules/part/service/impl/BomManagementServiceImpl.java b/src/main/java/com/spring/modules/part/service/impl/BomManagementServiceImpl.java index 535e871e..bbb3b6a2 100644 --- a/src/main/java/com/spring/modules/part/service/impl/BomManagementServiceImpl.java +++ b/src/main/java/com/spring/modules/part/service/impl/BomManagementServiceImpl.java @@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.spring.common.utils.DateUtils; import com.spring.common.utils.PageUtils; +import com.spring.ifs.api.IfsServer; +import com.spring.ifs.bean.BomServiceBean; import com.spring.modules.base.utils.DataUtils; import com.spring.modules.base.utils.HttpClientUtil; import com.spring.modules.base.utils.ResponseData; @@ -15,6 +17,9 @@ import com.spring.modules.part.mapper.BomManagementMapper; import com.spring.modules.part.mapper.PartInformationMapper; import com.spring.modules.part.service.BomManagementService; import com.spring.modules.part.vo.*; +import com.spring.modules.sys.dao.SysUserDao; +import com.spring.modules.sys.entity.SysUserEntity; +import ifs.fnd.ap.Server; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -32,9 +37,19 @@ public class BomManagementServiceImpl extends ServiceImpl().eq("username", username)); + if (ifsUser == null || !org.apache.commons.lang3.StringUtils.isNotBlank(ifsUser.getIfsUsername()) || !org.apache.commons.lang3.StringUtils.isNotBlank(ifsUser.getIfsPassword())) { + throw new RuntimeException("获取用户的IFS账号密码为空值!"); + } + Server srv = ifsServer.getIfsServer(ifsUser.getUsername(), ifsUser.getPassword()); + return srv; + } + /** * bom列表查询 * @param data @@ -67,7 +94,7 @@ public class BomManagementServiceImpl extends ServiceImpl updateBomHeaderResponse = bomServiceBean.modifyBomHeader(srv, bomIfsHeader); + if (!"200".equals(updateBomHeaderResponse.get("resultCode"))) { + throw new RuntimeException("ifs BomHeader修改异常:" + updateBomHeaderResponse.get("resultMsg")); } } } - // 修改明细表内容 - //bomManagementMapper.updateBomDetail(data); - // 修改子明细内容 -// bomManagementMapper.deleteBomComponent(data); -// bomManagementMapper.saveBomComponent(data.getInformationList()); } /** @@ -99,8 +120,8 @@ public class BomManagementServiceImpl extends ServiceImpl().eq("site", data.getSite()).eq("part_no", data.getPartNo()).eq("eng_chg_level", data.getEngChgLevel()).eq("bom_type", data.getBomType())); // 判断是否为正式的bomHeader if ("Y".equals(bomHeader.getOfficialFlag())) { @@ -113,18 +134,12 @@ public class BomManagementServiceImpl extends ServiceImpl updateBomHeaderResponse = bomServiceBean.modifyBomHeader(srv, bomIfsHeader); + if (!"200".equals(updateBomHeaderResponse.get("resultCode"))) { + throw new RuntimeException("ifs BomHeader修改异常:" + updateBomHeaderResponse.get("resultMsg")); } } } - // 修改明细表内容 - //bomManagementMapper.updateBomDetail(data); - // 修改子明细内容 -// bomManagementMapper.deleteBomComponent(data); -// bomManagementMapper.saveBomComponent(data.getInformationList()); } /** @@ -298,7 +313,7 @@ public class BomManagementServiceImpl extends ServiceImpl updateBomDetailResponse = bomServiceBean.modifyBomAlternative(srv, bomIfsDetail); + if (!"200".equals(updateBomDetailResponse.get("resultCode"))) { + throw new RuntimeException("IFS BomAlternative修改异常:" + updateBomDetailResponse.get("resultMsg")); } } } - // 修改替代 bomManagementMapper.updateBomDetail(data); // 查询替代列表 @@ -345,7 +358,7 @@ public class BomManagementServiceImpl extends ServiceImpl bomDetailList = bomManagementMapper.checkBomDetailOnlyOne(data); if ("Y".equals(bomDetailList.get(0).getOfficialFlag())) { if (dataUrl) { - // ifs 删除 bomDetail + Server srv = getIfsServer(data.getUpdateBy()); BomIfsAlternative bomIfsDetail = new BomIfsAlternative(); bomIfsDetail.setContract(data.getSite()); bomIfsDetail.setPartNo(data.getPartNo()); @@ -353,10 +366,9 @@ public class BomManagementServiceImpl extends ServiceImpl deleteBomDetailResponse = bomServiceBean.removeBomAlternative(srv, bomIfsDetail); + if (!"200".equals(deleteBomDetailResponse.get("resultCode"))) { + throw new RuntimeException("IFS BomAlternative删除异常:" + deleteBomDetailResponse.get("resultMsg")); } } } @@ -368,7 +380,6 @@ public class BomManagementServiceImpl extends ServiceImpl updateAlternativeStatus (BomDetailEntity data) { BomHeaderEntity bomHeader = bomManagementMapper.selectOne(new QueryWrapper().eq("site", data.getSite()).eq("part_no", data.getPartNo()).eq("eng_chg_level", data.getEngChgLevel()).eq("bom_type", data.getBomType())); - // 如果是Build,则校验日期是否重叠 if ("Tentative".equals(data.getStatus())) { List historyBom = bomManagementMapper.selectList(new QueryWrapper().eq("site", data.getSite()).eq("part_no", data.getPartNo()).eq("bom_type", data.getBomType())); @@ -477,7 +487,7 @@ public class BomManagementServiceImpl extends ServiceImpl buildBomDetailResponse = bomServiceBean.buildBomAlternative(srv, bomIfsDetail); + if (!"200".equals(buildBomDetailResponse.get("resultCode"))) { + throw new RuntimeException("ifs BomAlternative Build异常:" + buildBomDetailResponse.get("resultMsg")); } } else if ("Obsolete".equals(data.getStatus())) { // 状态修改为Obsolete - String retireBomDetailURL = apiUrl + "/bom/ifs/retireBomAlternativeToIfs"; - ResponseData retireBomDetailResponse = HttpClientUtil.doPostByRawWithPLM(retireBomDetailURL, bomIfsDetail); - if (!"200".equals(retireBomDetailResponse.getCode())) { - throw new RuntimeException("ifs BomAlternative Retire异常:" + retireBomDetailResponse.getMsg()); + Map retireBomDetailResponse = bomServiceBean.retireBomAlternative(srv, bomIfsDetail); + if (!"200".equals(retireBomDetailResponse.get("resultCode"))) { + throw new RuntimeException("ifs BomAlternative Retire异常:" + retireBomDetailResponse.get("resultMsg")); } } } @@ -659,7 +667,7 @@ public class BomManagementServiceImpl extends ServiceImpl getBomComponentResponse = bomServiceBean.getBomItems(srv, bomIfsItem); + if (!"200".equals(getBomComponentResponse.get("resultCode"))) { // 新增 LinkedList bomIfsItems = new LinkedList<>(); bomIfsItems.add(bomIfsItem); - String addBomComponentURL = apiUrl + "/bom/ifs/syncBomIfsItemsToIfs"; - ResponseData addBomComponentResponse = HttpClientUtil.doPostByRawWithPLM(addBomComponentURL, bomIfsItems); - if (!"200".equals(addBomComponentResponse.getCode())) { - throw new RuntimeException("ifs BomItem新增异常:" + addBomComponentResponse.getMsg()); + Map addBomComponentResponse = bomServiceBean.syncBomItems(srv, bomIfsItems); + if (!"200".equals(addBomComponentResponse.get("resultCode"))) { + throw new RuntimeException("ifs BomItem新增异常:" + addBomComponentResponse.get("resultMsg")); } } else { // 修改 - String updateBomComponentURL = apiUrl + "/bom/ifs/modifyBomIfsItemToIfs"; - ResponseData updateBomComponentResponse = HttpClientUtil.doPostByRawWithPLM(updateBomComponentURL, bomIfsItem); - if (!"200".equals(updateBomComponentResponse.getCode())) { - throw new RuntimeException("ifs BomItem修改异常:" + updateBomComponentResponse.getMsg()); + Map updateBomComponentResponse = bomServiceBean.modifyBomItem(srv, bomIfsItem); + if (!"200".equals(updateBomComponentResponse.get("resultCode"))) { + throw new RuntimeException("ifs BomItem修改异常:" + updateBomComponentResponse.get("resultMsg")); } } } @@ -751,12 +756,11 @@ public class BomManagementServiceImpl extends ServiceImpl updateBomComponent(BomComponentEntity data) { - if (dataUrl) { // 判断替代是否为正式 List bomDetailList = bomManagementMapper.queryBomDetailOfficialFlag(data); if (!bomDetailList.isEmpty() && "Y".equals(bomDetailList.get(0).getOfficialFlag())) { - // 同步ifs + Server srv = getIfsServer(data.getUpdateBy()); BomIfsItem bomIfsItem = new BomIfsItem(); bomIfsItem.setContract(data.getSite()); bomIfsItem.setPartNo(data.getPartNo()); @@ -772,10 +776,9 @@ public class BomManagementServiceImpl extends ServiceImpl updateBomComponentResponse = bomServiceBean.modifyBomItem(srv, bomIfsItem); + if (!"200".equals(updateBomComponentResponse.get("resultCode"))) { + throw new RuntimeException("IFS BomItem修改异常:" + updateBomComponentResponse.get("resultMsg")); } } } @@ -826,17 +829,15 @@ public class BomManagementServiceImpl extends ServiceImpl deleteBomComponentResponse = bomServiceBean.removeBomItems(srv, bomIfsItems); + if (!"200".equals(deleteBomComponentResponse.get("resultCode"))) { + throw new RuntimeException("ifs BomItem删除异常:" + deleteBomComponentResponse.get("resultMsg")); } } } - // 查询bom子明细列表 BomDetailEntity bomDetail = new BomDetailEntity(); BeanUtils.copyProperties(data.getInformationList().get(0),bomDetail); @@ -1090,6 +1091,7 @@ public class BomManagementServiceImpl extends ServiceImpl().eq("site", data.getSite()).eq("part_no", data.getPartNo()).eq("eng_chg_level", data.getEngChgLevel()).eq("bom_type", data.getBomType())); BomIfsHeader bomIfsHeader = new BomIfsHeader(); @@ -1100,19 +1102,16 @@ public class BomManagementServiceImpl extends ServiceImpl getBomHeaderResponse = bomServiceBean.getBomHeader(srv, bomIfsHeader); + if (!"200".equals(getBomHeaderResponse.get("resultCode"))) { // 新增 + Map addBomHeaderResponse = bomServiceBean.syncBomHeader(srv, bomIfsHeader); + if (!"200".equals(addBomHeaderResponse.get("resultCode"))) { + throw new RuntimeException("IFS BomHeader新增异常:" + addBomHeaderResponse.get("resultMsg")); } } else { // 修改 - String updateBomHeaderURL = apiUrl + "/bom/ifs/modifyBomHeaderToIfs"; - ResponseData updateBomHeaderResponse = HttpClientUtil.doPostByRawWithPLM(updateBomHeaderURL, bomIfsHeader); - if (!"200".equals(updateBomHeaderResponse.getCode())) { - throw new RuntimeException("IFS BomHeader修改异常:" + updateBomHeaderResponse.getMsg()); + Map updateBomHeaderResponse = bomServiceBean.modifyBomHeader(srv, bomIfsHeader); + if (!"200".equals(updateBomHeaderResponse.get("resultCode"))) { + throw new RuntimeException("IFS BomHeader修改异常:" + updateBomHeaderResponse.get("resultMsg")); } } // 判断是否已同步bomDetail @@ -1124,28 +1123,24 @@ public class BomManagementServiceImpl extends ServiceImpl getBomDetailResponse = bomServiceBean.getBomAlternative(srv, bomIfsAlternative); + if (!"200".equals(getBomDetailResponse.get("resultCode"))) { // 新增 + Map addBomDetailResponse = bomServiceBean.syncBomAlternative(srv, bomIfsAlternative); + if (!"200".equals(addBomDetailResponse.get("resultCode"))) { + throw new RuntimeException("IFS BomAlternative新增异常:" + addBomDetailResponse.get("resultMsg")); } } else { - String updateBomDetailURL = apiUrl + "/bom/ifs/modifyBomAlternativeToIfs"; - ResponseData updateBomDetailResponse = HttpClientUtil.doPostByRawWithPLM(updateBomDetailURL, bomIfsAlternative); - if (!"200".equals(updateBomDetailResponse.getCode())) { - throw new RuntimeException("IFS BomAlternative修改异常:" + updateBomDetailResponse.getMsg()); + Map updateBomDetailResponse = bomServiceBean.modifyBomAlternative(srv, bomIfsAlternative); + if (!"200".equals(updateBomDetailResponse.get("resultCode"))) { + throw new RuntimeException("IFS BomAlternative修改异常:" + updateBomDetailResponse.get("resultMsg")); } } // 同步bomComponent List componentList = bomManagementMapper.getBomComponent(data); if (!componentList.isEmpty()) { - String addBomComponentURL = apiUrl + "/bom/ifs/syncBomIfsItemsToIfs"; - ResponseData addBomComponentResponse = HttpClientUtil.doPostByRawWithPLM(addBomComponentURL, componentList); - if (!"200".equals(addBomComponentResponse.getCode())) { - throw new RuntimeException("IFS Bom子物料新增异常:" + addBomComponentResponse.getMsg()); + Map addBomComponentResponse = bomServiceBean.syncBomItems(srv, componentList); + if (!"200".equals(addBomComponentResponse.get("resultCode"))) { + throw new RuntimeException("IFS Bom子物料新增异常:" + addBomComponentResponse.get("resultMsg")); } } } diff --git a/src/main/java/com/spring/modules/part/service/impl/MasterPartInformationServiceImpl.java b/src/main/java/com/spring/modules/part/service/impl/MasterPartInformationServiceImpl.java index 56edea92..e908169e 100644 --- a/src/main/java/com/spring/modules/part/service/impl/MasterPartInformationServiceImpl.java +++ b/src/main/java/com/spring/modules/part/service/impl/MasterPartInformationServiceImpl.java @@ -80,6 +80,18 @@ public class MasterPartInformationServiceImpl extends ServiceImpl().eq("username", username)); + if (ifsUser == null || !org.apache.commons.lang3.StringUtils.isNotBlank(ifsUser.getIfsUsername()) || !org.apache.commons.lang3.StringUtils.isNotBlank(ifsUser.getIfsPassword())) { + throw new RuntimeException("获取用户的IFS账号密码为空值!"); + } + Server srv = ifsServer.getIfsServer(ifsUser.getUsername(), ifsUser.getPassword()); + return srv; + } + /** * 获得物料件对象 * @param data @@ -247,14 +259,12 @@ public class MasterPartInformationServiceImpl extends ServiceImpl updateResponse = masterServiceBean.modifyPartCatalog(srv, partIfsCatalog); + if (!"200".equals(updateResponse.get("resultCode"))) { + throw new RuntimeException("ifs 物料件异常信息:" + updateResponse.get("resultMsg")); } } } diff --git a/src/main/java/com/spring/modules/part/service/impl/PartInformationServiceImpl.java b/src/main/java/com/spring/modules/part/service/impl/PartInformationServiceImpl.java index d624e529..12c368b1 100644 --- a/src/main/java/com/spring/modules/part/service/impl/PartInformationServiceImpl.java +++ b/src/main/java/com/spring/modules/part/service/impl/PartInformationServiceImpl.java @@ -13,7 +13,9 @@ import com.spring.common.utils.DateUtils; import com.spring.common.utils.PageUtils; import com.spring.ifs.api.IfsServer; import com.spring.ifs.bean.BaseSearchBean; +import com.spring.ifs.bean.BomServiceBean; import com.spring.ifs.bean.InventoryServiceBean; +import com.spring.ifs.bean.RoutingServiceBean; import com.spring.ifs.data.BaseSearchData; import com.spring.ifs.data.PartCatalog; import com.spring.modules.app.entity.UserEntity; @@ -121,6 +123,12 @@ public class PartInformationServiceImpl extends ServiceImpl getBomHeaderResponse = bomServiceBean.getBomHeader(srv, bomIfsHeader); + if (!"200".equals(getBomHeaderResponse.get("resultCode"))) { // 新增 + Map addBomHeaderResponse = bomServiceBean.syncBomHeader(srv, bomIfsHeader); + if (!"200".equals(addBomHeaderResponse.get("resultCode"))) { + throw new RuntimeException("IFS BOMHeader新增异常:" + addBomHeaderResponse.get("resultMsg")); } } else { // 修改 - String updateBomHeaderURL = apiUrl + "/bom/ifs/modifyBomHeaderToIfs"; - ResponseData updateBomHeaderResponse = HttpClientUtil.doPostByRawWithPLM(updateBomHeaderURL, bomIfsHeader); - if (!"200".equals(updateBomHeaderResponse.getCode())) { - throw new RuntimeException("IFS BOMHeader修改异常:" + updateBomHeaderResponse.getMsg()); + Map updateBomHeaderResponse = bomServiceBean.modifyBomHeader(srv, bomIfsHeader); + if (!"200".equals(updateBomHeaderResponse.get("resultCode"))) { + throw new RuntimeException("IFS BOMHeader修改异常:" + updateBomHeaderResponse.get("resultMsg")); } } } @@ -2930,12 +2932,10 @@ public class PartInformationServiceImpl extends ServiceImpl componentDataList = bomManagementMapper.queryBomComponentAll(bomDetailVo); // 查询原BOM副产品成本分配数据列表 List manufStructCostDistribList = bomManagementMapper.queryBomManufStructCostDistrib(bomDetailVo); - // 创建 IFS 物料 BOM 的 替代 bomDetail.setPartNo(ifsPart.getPartNo()); bomDetail.setOfficialFlag("Y"); bomManagementMapper.bomDetailSave(bomDetail); - // 同步数据到 IFS if (dataUrl) { BomIfsAlternative bomIfsAlternative = new BomIfsAlternative(); @@ -2946,19 +2946,16 @@ public class PartInformationServiceImpl extends ServiceImpl getBomDetailResponse = bomServiceBean.getBomAlternative(srv, bomIfsAlternative); + if (!"200".equals(getBomDetailResponse.get("resultCode"))) { // 新增 + Map addBomDetailResponse = bomServiceBean.syncBomAlternative(srv, bomIfsAlternative); + if (!"200".equals(addBomDetailResponse.get("resultCode"))) { + throw new RuntimeException("IFS BOMAlternative新增异常:" + addBomDetailResponse.get("resultMsg")); } } else { // 修改 - String updateBomDetailURL = apiUrl + "/bom/ifs/modifyBomAlternativeToIfs"; - ResponseData updateBomDetailResponse = HttpClientUtil.doPostByRawWithPLM(updateBomDetailURL, bomIfsAlternative); - if (!"200".equals(updateBomDetailResponse.getCode())) { - throw new RuntimeException("IFS BOMAlternative修改异常:" + updateBomDetailResponse.getMsg()); + Map updateBomDetailResponse = bomServiceBean.modifyBomAlternative(srv, bomIfsAlternative); + if (!"200".equals(updateBomDetailResponse.get("resultCode"))) { + throw new RuntimeException("IFS BOMAlternative修改异常:" + updateBomDetailResponse.get("resultMsg")); } } } @@ -2977,10 +2974,9 @@ public class PartInformationServiceImpl extends ServiceImpl componentList = bomManagementMapper.getBomComponent(bomDetailVo); if (!componentList.isEmpty()) { - String addBomComponentURL = apiUrl + "/bom/ifs/syncBomIfsItemsToIfs"; - ResponseData addBomComponentResponse = HttpClientUtil.doPostByRawWithPLM(addBomComponentURL, componentList); - if (!"200".equals(addBomComponentResponse.getCode())) { - throw new RuntimeException("IFS BOM子物料新增异常:" + addBomComponentResponse.getMsg()); + Map addBomComponentResponse = bomServiceBean.syncBomItems(srv, componentList); + if (!"200".equals(addBomComponentResponse.get("resultCode"))) { + throw new RuntimeException("IFS BOM子物料新增异常:" + addBomComponentResponse.get("resultMsg")); } } } @@ -3030,7 +3026,6 @@ public class PartInformationServiceImpl extends ServiceImpl getRoutingHeaderResponse = routingServiceBean.getRoutingHeader(srv, routingIfsHeader); + if (!"200".equals(getRoutingHeaderResponse.get("resultCode"))) { // 新增 + Map addRoutingHeaderResponse = routingServiceBean.syncRoutingHeader(srv, routingIfsHeader); + if (!"200".equals(addRoutingHeaderResponse.get("resultCode"))) { + throw new RuntimeException("IFS RoutingHeader新增异常:" + addRoutingHeaderResponse.get("resultMsg")); } } else { // 修改 - String updateRoutingHeaderURL = apiUrl + "/routing/ifs/modifyRoutingHeaderToIfs"; - ResponseData updateRoutingHeaderResponse = HttpClientUtil.doPostByRawWithPLM(updateRoutingHeaderURL, routingIfsHeader); - if (!"200".equals(updateRoutingHeaderResponse.getCode())) { - throw new RuntimeException("IFS RoutingHeader修改异常:" + updateRoutingHeaderResponse.getMsg()); + Map updateRoutingHeaderResponse = routingServiceBean.modifyRoutingHeader(srv, routingIfsHeader); + if (!"200".equals(updateRoutingHeaderResponse.get("resultCode"))) { + throw new RuntimeException("IFS RoutingHeader修改异常:" + updateRoutingHeaderResponse.get("resultMsg")); } } } @@ -3064,28 +3056,23 @@ public class PartInformationServiceImpl extends ServiceImpl operationDataList = routingManagementMapper.queryRoutingComponent(routingDetailVo); - // 创建 IFS 物料 Routing 的 替代 routingDetailEntity.setPartNo(ifsPart.getPartNo()); routingDetailEntity.setOfficialFlag("Y"); routingManagementMapper.routingDetailSave(routingDetailEntity); - // 同步数据到 IFS if (dataUrl) { RoutingIfsAlternative routingIfsAlternative = getIfsRoutingDetail(routingDetailEntity); - String getRoutingDetailURL = apiUrl + "/routing/ifs/getRoutingAlternative"; - ResponseData getRoutingDetailResponse = HttpClientUtil.doPostByRawWithPLM(getRoutingDetailURL, routingIfsAlternative); - if (!"200".equals(getRoutingDetailResponse.getCode())) { // 新增 - String addRoutingDetailURL = apiUrl + "/routing/ifs/syncRoutingAlternativeToIfs"; - ResponseData addRoutingDetailResponse = HttpClientUtil.doPostByRawWithPLM(addRoutingDetailURL, routingIfsAlternative); - if (!"200".equals(addRoutingDetailResponse.getCode())) { - throw new RuntimeException("IFS RoutingAlternative新增异常:" + addRoutingDetailResponse.getMsg()); + Map getRoutingDetailResponse = routingServiceBean.getRoutingAlternative(srv, routingIfsAlternative); + if (!"200".equals(getRoutingDetailResponse.get("resultCode"))) { // 新增 + Map addRoutingDetailResponse = routingServiceBean.syncRoutingAlternative(srv, routingIfsAlternative); + if (!"200".equals(addRoutingDetailResponse.get("resultCode"))) { + throw new RuntimeException("IFS RoutingAlternative新增异常:" + addRoutingDetailResponse.get("resultMsg")); } } else { // 修改 - String updateRoutingDetailURL = apiUrl + "/routing/ifs/modifyRoutingAlternativeToIfs"; - ResponseData updateRoutingDetailResponse = HttpClientUtil.doPostByRawWithPLM(updateRoutingDetailURL, routingIfsAlternative); - if (!"200".equals(updateRoutingDetailResponse.getCode())) { - throw new RuntimeException("IFS RoutingAlternative修改异常:" + updateRoutingDetailResponse.getMsg()); + Map updateRoutingDetailResponse = routingServiceBean.modifyRoutingAlternative(srv, routingIfsAlternative); + if (!"200".equals(updateRoutingDetailResponse.get("resultCode"))) { + throw new RuntimeException("IFS RoutingAlternative修改异常:" + updateRoutingDetailResponse.get("resultMsg")); } } } @@ -3098,18 +3085,16 @@ public class PartInformationServiceImpl extends ServiceImpl routingIfsItems = new LinkedList<>(); RoutingIfsItem routingIfsItem = getIfsRoutingComponent(componentEntity); routingIfsItems.add(routingIfsItem); - String addRoutingComponentURL = apiUrl + "/routing/ifs/syncRoutingIfsItemsToIfs"; - ResponseData addRoutingComponentResponse = HttpClientUtil.doPostByRawWithPLM(addRoutingComponentURL, routingIfsItems); - if (!"200".equals(addRoutingComponentResponse.getCode())) { - throw new RuntimeException("IFS RoutingItem新增异常:" + addRoutingComponentResponse.getMsg()); + Map addRoutingComponentResponse = routingServiceBean.syncRoutingItems(srv, routingIfsItems); + if (!"200".equals(addRoutingComponentResponse.get("resultCode"))) { + throw new RuntimeException("IFS RoutingItem新增异常:" + addRoutingComponentResponse.get("resultMsg")); } - String s = String.valueOf(addRoutingComponentResponse.getObj()); + String s = String.valueOf(addRoutingComponentResponse.get("obj")); List ifsItems = JSON.parseArray(s, RoutingIfsItem.class); if (ifsItems.isEmpty()) { throw new RuntimeException("IFS RoutingItem新增接口返回值异常!"); @@ -3133,12 +3118,11 @@ public class PartInformationServiceImpl extends ServiceImpl ifsRoutingTools = routingManagementMapper.getRoutingToolByOperationToIfs(componentEntity.getSite(), componentEntity.getPartNo(), componentEntity.getRoutingType(), componentEntity.getRoutingRevision(), componentEntity.getAlternativeNo(), componentEntity.getOperationId()); - String addRoutingToolURL = apiUrl + "/routing/ifs/syncRoutingIfsToolsToIfs"; - ResponseData addRoutingToolResponse = HttpClientUtil.doPostByRawWithPLM(addRoutingToolURL, ifsRoutingTools); - if (!"200".equals(addRoutingToolResponse.getCode())) { - throw new RuntimeException("IFS RoutingTool新增异常:" + addRoutingToolResponse.getMsg()); + Map addRoutingToolResponse = routingServiceBean.syncRoutingTools(srv, ifsRoutingTools); + if (!"200".equals(addRoutingToolResponse.get("resultCode"))) { + throw new RuntimeException("IFS RoutingTool新增异常:" + addRoutingToolResponse.get("resultMsg")); } - String s = String.valueOf(addRoutingToolResponse.getObj()); + String s = String.valueOf(addRoutingToolResponse.get("obj")); List ifsTools = JSON.parseArray(s, RoutingIfsTool.class); if (ifsTools.isEmpty()) { throw new RuntimeException("IFS RoutingTool新增接口返回值异常!"); @@ -3163,12 +3147,11 @@ public class PartInformationServiceImpl extends ServiceImpl ifsRoutingGuidelines = routingManagementMapper.getRoutingGuidelineByOperationToIfs(componentEntity.getSite(), componentEntity.getPartNo(), componentEntity.getRoutingType(), componentEntity.getRoutingRevision(), componentEntity.getAlternativeNo(), componentEntity.getOperationId()); - String addRoutingGuidelineURL = apiUrl + "/routing/ifs/syncRoutingIfsGuideLinesToIfs"; - ResponseData addRoutingGuidelineResponse = HttpClientUtil.doPostByRawWithPLM(addRoutingGuidelineURL, ifsRoutingGuidelines); - if (!"200".equals(addRoutingGuidelineResponse.getCode())) { - throw new RuntimeException("IFS RoutingGuideline新增异常:" + addRoutingGuidelineResponse.getMsg()); + Map addRoutingGuidelineResponse = routingServiceBean.syncRoutingGuideLines(srv, ifsRoutingGuidelines); + if (!"200".equals(addRoutingGuidelineResponse.get("resultCode"))) { + throw new RuntimeException("IFS RoutingGuideline新增异常:" + addRoutingGuidelineResponse.get("resultMsg")); } - String s = String.valueOf(addRoutingGuidelineResponse.getObj()); + String s = String.valueOf(addRoutingGuidelineResponse.get("obj")); List ifsGuidelines = JSON.parseArray(s, RoutingIfsGuideLine.class); if (ifsGuidelines.isEmpty()) { throw new RuntimeException("IFS RoutingGuideline新增接口返回值异常!"); @@ -3190,7 +3173,6 @@ public class PartInformationServiceImpl extends ServiceImpl manufacturers = partInformationMapper.getPartManufacturers(data); List defaultLocations = partInformationMapper.getPartDefaultLocations(data); List files = partInformationMapper.getPartFiles(data); - if (!agents.isEmpty()) { List ifsAgents = agents.stream().map(a -> { a.setPartNo(ifsPart.getPartNo()); @@ -3198,7 +3180,6 @@ public class PartInformationServiceImpl extends ServiceImpl ifsManufacturers = manufacturers.stream().map(a -> { a.setPartNo(ifsPart.getPartNo()); @@ -3206,14 +3187,12 @@ public class PartInformationServiceImpl extends ServiceImpl ifsDefaultLocations = defaultLocations.stream().map(a -> { a.setPartNo(ifsPart.getPartNo()); return a; }).collect(Collectors.toList()); partInformationMapper.savePartDefaultLocation(ifsDefaultLocations); - // 同步数据到 IFS if (dataUrl) { List locationList = partInformationMapper.getPartLocationList(ifsPart); @@ -3224,7 +3203,6 @@ public class PartInformationServiceImpl extends ServiceImpl ifsFiles = files.stream().map(a -> { a.setOrderRef2(ifsPart.getPartNo());