|
|
package com.spring.ifs.bean;
import com.alibaba.fastjson.JSON;import com.spring.ifs.api.IfsServer;import com.spring.ifs.api.MasterPartApi;import com.spring.ifs.api.TechnicalClassApi;import com.spring.modules.base.utils.DateUtils;import com.spring.modules.part.entity.APIEntity.PartIfsCatalog;import com.spring.modules.part.entity.APIEntity.PartIfsCatalogModel;import ifs.fnd.ap.APException;import ifs.fnd.ap.Server;import org.apache.commons.lang3.StringUtils;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Component;
import java.util.Date;import java.util.HashMap;import java.util.Map;
/*** @description: 物料件的实现类* @author LR* @date 2024/12/9 11:49* @version 1.0*/@Componentpublic class MasterServiceBean {
@Autowired private IfsServer ifsServer; private static final Logger logger = LoggerFactory.getLogger(MasterServiceBean.class);
/** * @description: 查询物料件的信息 * @author LR * @date 2024/12/9 13:28 * @version 1.0 */ public Map<String, String> getMasterPart(Server srv, PartIfsCatalog inData) { //公共参数
Map<String, String> returnMap = new HashMap<>(); String partNo = inData.getPartNo(); try { //获取参数
Map<String, String> resultMap = MasterPartApi.getMasterPart(srv, partNo); //判断是否存在
if (null == resultMap) { throw new APException("当前物料件不存在!"); } else { //设置ifs 信息
inData.setIfsRowId(resultMap.get("OBJID")); inData.setIfsRowVersion(resultMap.get("OBJVERSION")); } returnMap.put("resultCode", "200"); returnMap.put("obj", JSON.toJSONString(inData)); } catch(APException e){ returnMap.put("resultCode", "400"); returnMap.put("resultMsg", e.getMessage()); logger.info("异常信息:"+e.getMessage()); } return returnMap; }
/** * @description: master part 新增 * @author LR * @date 2024/12/12 15:33 * @version 1.0 */ public Map<String, String> syncPartCatalog(Server srv, PartIfsCatalog inData) { logger.info("Part Catalog 新增开始:"+ JSON.toJSONString(inData)); //公共参数
Map<String, String> returnMap = new HashMap<>(); String partNo = inData.getPartNo(); try{ Map<String, String> partMap = MasterPartApi.getMasterPart(srv, partNo); //判断是否需要插入到ifs
if(partMap == null || partMap.isEmpty()) { Map<String, String> resultMap = MasterPartApi.insertMasterPart(srv, inData); //设置ifs 信息
inData.setIfsRowId(resultMap.get("OBJID")); inData.setIfsRowVersion(resultMap.get("OBJVERSION")); }else { throw new APException("物料件已存在!"); } returnMap.put("resultCode", "200"); returnMap.put("obj", JSON.toJSONString(inData)); } catch(APException e){ returnMap.put("resultCode", "400"); returnMap.put("resultMsg", e.getMessage()); logger.info("异常信息:"+e.getMessage()); } //打印日志
logger.info("Part Catalog 新增结束:"+JSON.toJSONString(inData)); //返回结果集
return returnMap; }
/** * @description: 调用修改的方法 * @author LR * @date 2024/12/12 15:40 * @version 1.0 */ public Map<String, String> modifyPartCatalog(Server srv, PartIfsCatalog inData) { logger.info("Part Catalog 修改开始:"+JSON.toJSONString(inData)); //公共参数
Map<String, String> returnMap = new HashMap<>(); String partNo = inData.getPartNo(); try { //查询数据
Map<String, String> partMap = MasterPartApi.getMasterPart(srv, partNo); //判断是否需要插入到ifs
if (partMap == null || partMap.isEmpty()) { throw new APException("物料件不存在!"); } else { //设置ifs 信息
inData.setIfsRowId(partMap.get("IFSROWID")); inData.setIfsRowVersion(partMap.get("IFSROWVERSION")); Map<String, String> resultMap = MasterPartApi.modifyMasterPart(srv, inData); //处理基数等级的业务方法
this.processPartCatalogTechnicalClass(srv, inData); //设置ifs 信息
inData.setIfsRowVersion(resultMap.get("OBJVERSION")); } returnMap.put("resultCode", "200"); returnMap.put("obj", JSON.toJSONString(inData)); } catch(APException e){ returnMap.put("resultCode", "400"); returnMap.put("resultMsg", e.getMessage()); logger.info("异常信息:"+e.getMessage()); } logger.info("Part Catalog 修改结束:"+JSON.toJSONString(inData)); //返回结果集
return returnMap; }
/** * @description: 处理基数等级的业务方法 * @author LR * @date 2024/12/12 15:40 * @version 1.0 */ public void processPartCatalogTechnicalClass(Server srv, PartIfsCatalog inData) throws APException { //拼装技术等级的属性数据
String partNo = inData.getPartNo(); String luName = "PartCatalog"; String keyRef = "PART_NO=" + partNo + "^"; String technicalClass = inData.getTechnicalClass(); PartIfsCatalogModel technical = new PartIfsCatalogModel(); technical.setLuName(luName); technical.setKeyRef(keyRef); //查询当前技术等级的数据
Map<String, String> technicalMap = TechnicalClassApi.getTechnicalClass(srv, "PART_CATALOG", "PART_NO=" + partNo + "^"); //设置IFS系统的参数
technical.setTechnicalClass(technicalClass); technical.setDtOk(DateUtils.getStringDate(new Date(), "yyyy-MM-dd")); technical.setOkSign(inData.getIfsUsername()); //判断是否已经存在当前数据
if (null == technicalMap){ //判断技术等级是否需要新增
if (StringUtils.isNotBlank(technicalClass)){ //设置同步的属性
technical.setTechnicalSpecNo(""); TechnicalClassApi.insertTechnicalClass(srv, technical); } }else { //直接调用修改的接口
technical.setTechnicalSpecNo(technicalMap.get("TECHNICAL_SPEC_NO")); TechnicalClassApi.modifyTechnicalClass(srv, technical); } }
/** * @description: 调用删除的方法 * @author LR * @date 2024/12/12 15:40 * @version 1.0 */ public Map<String, String> removePartCatalog(Server srv, PartIfsCatalog inData) { logger.info("Part Catalog 删除开始:"+JSON.toJSONString(inData)); //公共参数
Map<String, String> returnMap = new HashMap<>(); String partNo = inData.getPartNo(); //查询数据
try{ Map<String, String> partMap = MasterPartApi.getMasterPart(srv, partNo); //判断是否需要插入到ifs
if(partMap == null || partMap.isEmpty()) { throw new APException("物料件不存在!"); }else { //设置ifs 信息
inData.setIfsRowId(partMap.get("IFSROWID")); inData.setIfsRowVersion(partMap.get("IFSROWVERSION")); MasterPartApi.removeMasterPart(srv, inData); } returnMap.put("resultCode", "200"); returnMap.put("obj", JSON.toJSONString(inData)); } catch(APException e){ returnMap.put("resultCode", "400"); returnMap.put("resultMsg", e.getMessage()); logger.info("异常信息:"+e.getMessage()); } logger.info("Part Catalog 删除结束:"+JSON.toJSONString(inData)); //返回结果集
return returnMap; }
}
|