diff --git a/op-modules/op-sap/src/main/java/com/op/sap/controller/SapController.java b/op-modules/op-sap/src/main/java/com/op/sap/controller/SapController.java index e56987b27..692875dd1 100644 --- a/op-modules/op-sap/src/main/java/com/op/sap/controller/SapController.java +++ b/op-modules/op-sap/src/main/java/com/op/sap/controller/SapController.java @@ -192,7 +192,7 @@ public class SapController extends BaseController { logger.info("++++++++++++" + dateSource.get("poolName") + "++++供应商主数据开始++++++++++"); DynamicDataSourceContextHolder.push(dateSource.get("poolName"));// 这是数据源的key sapSupplierQuery.setBukrs(dateSource.get("poolName").replace("ds_",""));//工厂 - Date maxTime = sapBomMapper.getMaxTime(); + Date maxTime = sapBomMapper.getSupplierMaxTime(); if(maxTime != null){ sapSupplierQuery.setErdat(DateFormatUtils.format(maxTime, "yyyyMMdd"));//修改日期20230923 } @@ -227,7 +227,7 @@ public class SapController extends BaseController { logger.info("++++++++++++" + dateSource.get("poolName") + "++++客户主数据开始++++++++++"); DynamicDataSourceContextHolder.push(dateSource.get("poolName"));// 这是数据源的key sapCustom.setBukrs(dateSource.get("poolName").replace("ds_",""));//工厂 - Date maxTime = sapBomMapper.getMaxTime(); + Date maxTime = sapBomMapper.getCustomMaxTime(); if(maxTime != null){ sapCustom.setErdat(DateFormatUtils.format(maxTime, "yyyyMMdd"));//修改日期20230923 } diff --git a/op-modules/op-sap/src/main/java/com/op/sap/mapper/SapBomMapper.java b/op-modules/op-sap/src/main/java/com/op/sap/mapper/SapBomMapper.java index 3ffbf46db..dba976d61 100644 --- a/op-modules/op-sap/src/main/java/com/op/sap/mapper/SapBomMapper.java +++ b/op-modules/op-sap/src/main/java/com/op/sap/mapper/SapBomMapper.java @@ -25,6 +25,12 @@ public interface SapBomMapper { public Date getMaxTime(); public List getExsitCodes(@Param("list") List codes); + public Date getSupplierMaxTime(); + + public List getSupplierExsitCodes(@Param("list") List codes); + public Date getCustomMaxTime(); + + public List getCustomExsitCodes(@Param("list") List codes); int updateFactoryBatchs(@Param("list")List updates); diff --git a/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapWorkCenterServiceImpl.java b/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapWorkCenterServiceImpl.java index 5ca6e4c7c..80d874d11 100644 --- a/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapWorkCenterServiceImpl.java +++ b/op-modules/op-sap/src/main/java/com/op/sap/service/impl/SapWorkCenterServiceImpl.java @@ -301,7 +301,7 @@ public class SapWorkCenterServiceImpl implements SapWorkCenterService { //sap返回的供应商编码 List codes = dtos.stream().map(SapSupplier::getLifnr).collect(Collectors.toList()); //sap返回的供应商编码-本地已存在 - List exsitCodes = sapBomMapper.getExsitCodes(codes); + List exsitCodes = sapBomMapper.getSupplierExsitCodes(codes); //sap返回的供应商编码-本地不存在// 差集 (list2 - list1) List noExsitCodes = codes.stream().filter(item -> !exsitCodes.contains(item)).collect(Collectors.toList()); @@ -339,7 +339,7 @@ public class SapWorkCenterServiceImpl implements SapWorkCenterService { //sap返回的客户编码 List codes = dtos.stream().map(SapCustom::getKunnr).collect(Collectors.toList()); //sap返回的客户编码-本地已存在 - List exsitCodes = sapBomMapper.getExsitCodes(codes); + List exsitCodes = sapBomMapper.getCustomExsitCodes(codes); //sap返回的客户编码-本地不存在// 差集 (list2 - list1) List noExsitCodes = codes.stream().filter(item -> !exsitCodes.contains(item)).collect(Collectors.toList()); diff --git a/op-modules/op-sap/src/main/resources/mapper/sap/SapBomMapper.xml b/op-modules/op-sap/src/main/resources/mapper/sap/SapBomMapper.xml index 27ee38eba..c4064a9cd 100644 --- a/op-modules/op-sap/src/main/resources/mapper/sap/SapBomMapper.xml +++ b/op-modules/op-sap/src/main/resources/mapper/sap/SapBomMapper.xml @@ -258,52 +258,79 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + + update base_supplier - set zh_desc = #{item.name1} + set + zh_desc = #{item.name1}, + contact_phone = #{item.telf1}, + address = #{item.stars}, + factory_code = #{item.bukrs} where - supplier_code = #{item.bukrs} + supplier_code = #{item.lifnr} insert into base_supplier - (supplier_code,zh_desc,contact_phone,address, + (supplier_code,zh_desc,contact_phone,address,factory_code, create_by, create_time, update_time) VALUES - (#{item.bukrs},#{item.name1},#{item.telf1},#{item.stras}, + (#{item.lifnr},#{item.name1},#{item.telf1},#{item.stars},#{item.bukrs} 'job', #{item.erdat}, #{item.erdat}) - + update sys_customer - set client_name = #{item.name1} + set + client_name = #{item.name1}, + contact1_tel = #{item.telf1}, + address = #{item.stars}, + factory_code = #{item.bukrs} where - client_code = #{item.bukrs} + client_code = #{item.kunnr} - + insert into sys_customer - (client_code,client_name,contact1_tel,address, + (client_code,client_name,contact1_tel,address,factory_code, create_by, create_time, - update_time,factory_code) + update_time) VALUES - (#{item.lifnr},#{item.name1},#{item.telf1},#{item.stars} + (#{item.kunnr},#{item.name1},#{item.telf1},#{item.stars},#{item.bukrs}, 'job', #{item.erdat}, - #{item.erdat},#{item.bukrs}) + #{item.erdat})