diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/RemoteSapService.java b/op-api/op-api-system/src/main/java/com/op/system/api/RemoteSapService.java index 85908d3c..048cae71 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/RemoteSapService.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/RemoteSapService.java @@ -69,6 +69,10 @@ public interface RemoteSapService { @PostMapping("/sap/bomSync") public R sapBomSync(); + /**来料检验*/ + @PostMapping("/sap/inComingCheck") + public R inComingCheck(@RequestBody(required = false) List> mapList); + /** * 反冲物料领料过账接口 */ @@ -108,4 +112,5 @@ public interface RemoteSapService { */ @PostMapping("/sap/sapOrderReceipt") public R sapOrderReceipt(@RequestBody(required = false) List> mapList); + } diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteSapFallbackFactory.java b/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteSapFallbackFactory.java index 1c4ca56b..ae817fe0 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteSapFallbackFactory.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteSapFallbackFactory.java @@ -74,6 +74,11 @@ public class RemoteSapFallbackFactory implements FallbackFactory> mapList) { + return R.fail("sap 来料入库信息同步失败" + throwable.getMessage()); + } + @Override public R shopUpdateSync(SapShopOrderQuery sapProOrder) { return R.fail("sap shopUpdateSync失败" + throwable.getMessage()); diff --git a/op-modules/op-job/src/main/java/com/op/job/task/RyTask.java b/op-modules/op-job/src/main/java/com/op/job/task/RyTask.java index 2fd03ad4..5ec9f551 100644 --- a/op-modules/op-job/src/main/java/com/op/job/task/RyTask.java +++ b/op-modules/op-job/src/main/java/com/op/job/task/RyTask.java @@ -187,7 +187,7 @@ public class RyTask { /************部门基础数据定时任务开始*****************/ /************质量管理系统-来料检验批量检验任务创建-定时任务开始*****************/ - //来料检验批量检验任务创建,每10分钟执行一次 + //来料检验批量检验任务创建,每30分钟执行一次 public void createIncomeBatchTask(){ logger.info("++质量管理系统+来料检验批量检验任务创建+开始++createIncomeBatchTask+++++"); remoteQualityService.createIncomeBatchTask(); diff --git a/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapItemSyncImpl.java b/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapItemSyncImpl.java index 6ab55169..2f210fc7 100644 --- a/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapItemSyncImpl.java +++ b/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapItemSyncImpl.java @@ -8,6 +8,7 @@ import com.op.common.core.exception.ServiceException; import com.op.common.core.utils.DateUtils; import com.op.common.core.utils.StringUtils; import com.op.common.core.utils.bean.BeanValidators; +import com.op.common.core.utils.uuid.IdUtils; import com.op.common.security.utils.SecurityUtils; import com.op.system.api.domain.quality.QcCheckTaskIncomeDTO; import com.op.system.api.domain.sap.SapBackflushMPQuery; @@ -27,10 +28,7 @@ import org.springframework.web.bind.annotation.RequestBody; import javax.validation.Validator; import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; @Component @Service @@ -407,20 +405,38 @@ public class SapItemSyncImpl implements SapItemSyncService { if (func == null) { throw new RuntimeException("Function does not exist in SAP"); } + log.info("来料检验-------" + mapList.toString()); func.execute(dest);//执行调用函数 JCoTable maraTable = func.getTableParameterList().getTable("LT_LLZJ"); List qcCheckTaskIncomeDTOList=new ArrayList<>(); + Date nowTime = DateUtils.getNowDate(); + String createBy = "job"; for (int i = 0; i < maraTable.getNumRows(); i++) { maraTable.setRow(i); + //|EBELN |EBELP|CPUDT|CPUTM |LIFNR|LIFNR_NM|MATNR|MAKTX|MENGE|MEI|WERK|USNAM QcCheckTaskIncomeDTO qcCheckTaskIncomeDTO=new QcCheckTaskIncomeDTO(); - qcCheckTaskIncomeDTO.setOrderNo(maraTable.getString("EBELN")); - qcCheckTaskIncomeDTO.setMaterialCode(maraTable.getString("MATNR")); - qcCheckTaskIncomeDTO.setMaterialName(maraTable.getString("MAKTX")); - System.out.println(maraTable); + qcCheckTaskIncomeDTO.setRecordId(IdUtils.fastSimpleUUID()); + qcCheckTaskIncomeDTO.setCheckType("checkTypeLL"); + qcCheckTaskIncomeDTO.setTypeCode("material"); + qcCheckTaskIncomeDTO.setOrderNo(maraTable.getString("EBELN"));//采购订单 + qcCheckTaskIncomeDTO.setSupplierCode(maraTable.getString("LIFNR")); + qcCheckTaskIncomeDTO.setSupplierName(maraTable.getString("LIFNR_NM")); + qcCheckTaskIncomeDTO.setMaterialCode(maraTable.getString("MATNR"));//物料号 + qcCheckTaskIncomeDTO.setMaterialName(maraTable.getString("MAKTX"));//物料描述 + qcCheckTaskIncomeDTO.setQuality(new BigDecimal(maraTable.getString("MENGE")));//数量 + qcCheckTaskIncomeDTO.setUnit(maraTable.getString("MEI"));//单位 + qcCheckTaskIncomeDTO.setIncomeTime(DateUtils.dateTime( + maraTable.getString("CPUDT")+" "+maraTable.getString("CPUTM") + ,"yyyy-MM-dd HH:mm:ss")); + qcCheckTaskIncomeDTO.setFactoryCode(maraTable.getString("WERK")); + qcCheckTaskIncomeDTO.setAttr1(maraTable.getString("USNAM"));//收货人 + qcCheckTaskIncomeDTO.setCreateTime(nowTime); + qcCheckTaskIncomeDTO.setCreateBy(createBy); qcCheckTaskIncomeDTOList.add(qcCheckTaskIncomeDTO); } + log.info("来料信息获取:"+JSONObject.toJSONString(qcCheckTaskIncomeDTOList)); String RETCODE = func.getExportParameterList().getString("RETCODE"); String MESSAGE = func.getExportParameterList().getString("MSG"); if(Constants.SUCCESS.equals(Integer.parseInt(RETCODE))){