From 4bdd6471fb934f541f974d91b34678c2acfb9778 Mon Sep 17 00:00:00 2001 From: yinq <1345442242@qq.com> Date: Fri, 13 Oct 2023 11:07:18 +0800 Subject: [PATCH] =?UTF-8?q?change=20-=20sap=E6=8E=A5=E5=8F=A3=E5=8E=BB?= =?UTF-8?q?=E9=87=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/service/ISAPPutStorageService.java | 1 + .../impl/SAPPutStorageServiceImpl.java | 33 ++- .../BaseMaterialInfoController.java | 1 - .../controller/OrderBomInfoController.java | 1 - .../impl/BaseMaterialinfoServiceImpl.java | 3 + .../service/impl/OrderBomInfoServiceImpl.java | 3 + .../mapper/base/OrderBomInfoMapper.xml | 192 ++++++++++-------- 7 files changed, 130 insertions(+), 104 deletions(-) diff --git a/aucma-api/src/main/java/com/aucma/api/service/ISAPPutStorageService.java b/aucma-api/src/main/java/com/aucma/api/service/ISAPPutStorageService.java index 529ba74..46fe822 100644 --- a/aucma-api/src/main/java/com/aucma/api/service/ISAPPutStorageService.java +++ b/aucma-api/src/main/java/com/aucma/api/service/ISAPPutStorageService.java @@ -32,6 +32,7 @@ public interface ISAPPutStorageService { * * */ public ArrayList insertSAPBaseOrderInfo(SAPResultOrderInfoVo resultVo) throws ParseException; + /** * 转设备台账实体类 保存数据 * @param resultVo diff --git a/aucma-api/src/main/java/com/aucma/api/service/impl/SAPPutStorageServiceImpl.java b/aucma-api/src/main/java/com/aucma/api/service/impl/SAPPutStorageServiceImpl.java index 9ee182f..75c7b58 100644 --- a/aucma-api/src/main/java/com/aucma/api/service/impl/SAPPutStorageServiceImpl.java +++ b/aucma-api/src/main/java/com/aucma/api/service/impl/SAPPutStorageServiceImpl.java @@ -1,6 +1,5 @@ package com.aucma.api.service.impl; -import com.aucma.api.domain.vo.SAPResultBomVo; import com.aucma.api.domain.vo.SAPResultOrderInfoVo; import com.aucma.api.domain.vo.SAPResultVo; import com.aucma.api.service.ISAPPutStorageService; @@ -13,19 +12,13 @@ import com.aucma.base.service.IBaseMaterialInfoService; import com.aucma.base.service.IBaseOrderInfoService; import com.aucma.base.service.IOrderBomInfoService; import com.aucma.common.utils.DateUtils; -import com.aucma.common.utils.SecurityUtils; -import com.aucma.production.domain.BaseBomInfo; -import com.aucma.production.service.IBaseBomInfoService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.core.parameters.P; import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.time.format.DateTimeFormatter; import java.util.ArrayList; -import java.util.Date; import java.util.HashMap; import java.util.List; @@ -46,6 +39,7 @@ public class SAPPutStorageServiceImpl implements ISAPPutStorageService { @Autowired private IBaseOrderInfoService baseOrderInfoService; + @Autowired private IOrderBomInfoService orderBomInfoService; @@ -60,6 +54,7 @@ public class SAPPutStorageServiceImpl implements ISAPPutStorageService { List> itemList = resultVo.getO_TAB().get("item"); for (HashMap map : itemList) { BaseMaterialInfo baseMaterialInfo = new BaseMaterialInfo(); + baseMaterialInfo.setPlantCode(map.get("WERKS")); baseMaterialInfo.setMaterialCode(map.get("MATNR")); List baseMaterialInfoList = baseMaterialInfoService.selectBaseMaterialInfoList(baseMaterialInfo); if (baseMaterialInfoList.isEmpty()) { @@ -84,9 +79,10 @@ public class SAPPutStorageServiceImpl implements ISAPPutStorageService { ArrayList baseOrderInfoList = new ArrayList<>(); List> itemList = resultVo.getO_TAB().get("item"); for (HashMap map : itemList) { - String aufnr = map.get("AUFNR"); BaseOrderInfo boInfo = new BaseOrderInfo(); - boInfo.setOrderCode(aufnr); + boInfo.setOrderCode(map.get("AUFNR")); + boInfo.setMaterialCode(map.get("MATNR")); + boInfo.setFactoryCode(map.get("WERKS")); List baseOrderInfos = baseOrderInfoService.selectBaseOrderInfoList(boInfo); if (baseOrderInfos.isEmpty()) { BaseOrderInfo baseOrderInfo = new BaseOrderInfo(); @@ -104,7 +100,6 @@ public class SAPPutStorageServiceImpl implements ISAPPutStorageService { baseOrderInfo.setEndDate(new SimpleDateFormat("yyyy-MM-dd").parse(map.get("GSTRP"))); baseOrderInfo.setCreatedTime(DateUtils.getNowDate()); baseOrderInfoService.insertBaseOrderInfo(baseOrderInfo); - baseOrderInfoList.add(baseOrderInfo); } @@ -126,9 +121,10 @@ public class SAPPutStorageServiceImpl implements ISAPPutStorageService { List> itemList = resultVo.getO_TAB().get("item"); for (HashMap map : itemList) { BaseDeviceLedger device = new BaseDeviceLedger(); + device.setCostCenter(map.get("KOSTL"));; device.setDeviceCode(map.get("EQUNR")); + device.setFactoryCode(map.get("IWERK")); List baseDeviceLedgers = baseDeviceLedgerService.selectBaseDeviceLedgerList(device); - if (!baseDeviceLedgers.isEmpty()) { BaseDeviceLedger deviceLedger = new BaseDeviceLedger(); deviceLedger.setCostCenter(map.get("KOSTL"));// @@ -147,15 +143,20 @@ public class SAPPutStorageServiceImpl implements ISAPPutStorageService { return baseDeviceLedgerArrayList; } + /** + * 转换产品bom信息实体类 保存数据 + * + * */ @Override public ArrayList insertSAPOrderBomInfo(SAPResultOrderInfoVo resultVo) throws ParseException { ArrayList orderBomInfoList = new ArrayList<>(); List> itemList = resultVo.getO_TAB().get("item"); - for (HashMap map : itemList) { - OrderBomInfo orderBomInfo1 = new OrderBomInfo(); - orderBomInfo1.setMaterialCode(map.get("IDNRK")); - List orderBomInfos = orderBomInfoService.selectOrderBomInfoList(orderBomInfo1); + OrderBomInfo bomInfo = new OrderBomInfo(); + bomInfo.setMaterialCode(map.get("IDNRK")); + bomInfo.setParentId(map.get("MATNR")); + bomInfo.setFactoryCode(map.get("WERKS")); + List orderBomInfos = orderBomInfoService.selectOrderBomInfoList(bomInfo); if (orderBomInfos.isEmpty()) { OrderBomInfo orderBomInfo = new OrderBomInfo(); orderBomInfo.setFactoryCode(map.get("WERKS")); @@ -167,8 +168,6 @@ public class SAPPutStorageServiceImpl implements ISAPPutStorageService { orderBomInfo.setSort(map.get("SORTF")); orderBomInfo.setVbeln(map.get("VBELN")); orderBomInfo.setVbpos(map.get("VBPOS")); - orderBomInfo.setCreatedTime(DateUtils.getNowDate()); -// baseBomInfo.setCreatedBy(SecurityUtils.getLoginUser().getUsername()); orderBomInfoService.insertOrderBomInfo(orderBomInfo); orderBomInfoList.add(orderBomInfo); } diff --git a/aucma-base/src/main/java/com/aucma/base/controller/BaseMaterialInfoController.java b/aucma-base/src/main/java/com/aucma/base/controller/BaseMaterialInfoController.java index cfb9588..7635d75 100644 --- a/aucma-base/src/main/java/com/aucma/base/controller/BaseMaterialInfoController.java +++ b/aucma-base/src/main/java/com/aucma/base/controller/BaseMaterialInfoController.java @@ -75,7 +75,6 @@ public class BaseMaterialInfoController extends BaseController { @PostMapping public AjaxResult add(@RequestBody BaseMaterialInfo baseMaterialInfo) { baseMaterialInfo.setCreatedBy(getUsername()); - baseMaterialInfo.setCreatedTime(DateUtils.getNowDate()); return toAjax(baseMaterialInfoService.insertBaseMaterialInfo(baseMaterialInfo)); } diff --git a/aucma-base/src/main/java/com/aucma/base/controller/OrderBomInfoController.java b/aucma-base/src/main/java/com/aucma/base/controller/OrderBomInfoController.java index 2131c50..ccfa81b 100644 --- a/aucma-base/src/main/java/com/aucma/base/controller/OrderBomInfoController.java +++ b/aucma-base/src/main/java/com/aucma/base/controller/OrderBomInfoController.java @@ -86,7 +86,6 @@ public class OrderBomInfoController extends BaseController { @PostMapping public AjaxResult add(@RequestBody OrderBomInfo orderBomInfo) { orderBomInfo.setCreatedBy(getUsername()); - orderBomInfo.setCreatedTime(DateUtils.getNowDate()); return toAjax(orderBomInfoService.insertOrderBomInfo(orderBomInfo)); } diff --git a/aucma-base/src/main/java/com/aucma/base/service/impl/BaseMaterialinfoServiceImpl.java b/aucma-base/src/main/java/com/aucma/base/service/impl/BaseMaterialinfoServiceImpl.java index 646efc5..32ec8e6 100644 --- a/aucma-base/src/main/java/com/aucma/base/service/impl/BaseMaterialinfoServiceImpl.java +++ b/aucma-base/src/main/java/com/aucma/base/service/impl/BaseMaterialinfoServiceImpl.java @@ -1,6 +1,8 @@ package com.aucma.base.service.impl; import java.util.List; + +import com.aucma.common.utils.DateUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.aucma.base.mapper.BaseMaterialInfoMapper; @@ -52,6 +54,7 @@ public class BaseMaterialInfoServiceImpl implements IBaseMaterialInfoService @Override public int insertBaseMaterialInfo(BaseMaterialInfo baseMaterialInfo) { + baseMaterialInfo.setCreatedTime(DateUtils.getNowDate()); return baseMaterialInfoMapper.insertBaseMaterialInfo(baseMaterialInfo); } diff --git a/aucma-base/src/main/java/com/aucma/base/service/impl/OrderBomInfoServiceImpl.java b/aucma-base/src/main/java/com/aucma/base/service/impl/OrderBomInfoServiceImpl.java index a45e69e..416539a 100644 --- a/aucma-base/src/main/java/com/aucma/base/service/impl/OrderBomInfoServiceImpl.java +++ b/aucma-base/src/main/java/com/aucma/base/service/impl/OrderBomInfoServiceImpl.java @@ -1,6 +1,8 @@ package com.aucma.base.service.impl; import java.util.List; + +import com.aucma.common.utils.DateUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.aucma.base.mapper.OrderBomInfoMapper; @@ -52,6 +54,7 @@ public class OrderBomInfoServiceImpl implements IOrderBomInfoService @Override public int insertOrderBomInfo(OrderBomInfo orderBomInfo) { + orderBomInfo.setCreatedTime(DateUtils.getNowDate()); return orderBomInfoMapper.insertOrderBomInfo(orderBomInfo); } diff --git a/aucma-base/src/main/resources/mapper/base/OrderBomInfoMapper.xml b/aucma-base/src/main/resources/mapper/base/OrderBomInfoMapper.xml index 113e210..0ac25ff 100644 --- a/aucma-base/src/main/resources/mapper/base/OrderBomInfoMapper.xml +++ b/aucma-base/src/main/resources/mapper/base/OrderBomInfoMapper.xml @@ -5,121 +5,143 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - select obj_id, bom_code, material_code, material_name, material_type, standard_amount, parent_id, is_flag, created_by, created_time, updated_by, updated_time, factory_code, sort, vbeln, vbpos from order_bominfo + select ob.obj_id, + ob.bom_code, + ob.material_code, + bm.material_name, + ob.material_type, + ob.standard_amount, + ob.parent_id, + ob.is_flag, + ob.created_by, + ob.created_time, + ob.updated_by, + ob.updated_time, + ob.factory_code, + ob.sort, + ob.vbeln, + ob.vbpos + from order_bominfo ob + left join BASE_MATERIALINFO bm ON bm.MATERIAL_CODE = ob.material_code - - SELECT seq_order_bominfo.NEXTVAL as objId FROM DUAL - + + SELECT seq_order_bominfo.NEXTVAL as objId FROM DUAL + insert into order_bominfo - obj_id, - bom_code, - material_code, - material_name, - material_type, - standard_amount, - parent_id, - is_flag, - created_by, - created_time, - updated_by, - updated_time, - factory_code, - sort, - vbeln, - vbpos, + obj_id, + bom_code, + material_code, + material_name, + material_type, + standard_amount, + parent_id, + is_flag, + created_by, + created_time, + updated_by, + updated_time, + factory_code, + sort, + vbeln, + vbpos, - #{objId}, - #{bomCode}, - #{materialCode}, - #{materialName}, - #{materialType}, - #{standardAmount}, - #{parentId}, - #{isFlag}, - #{createdBy}, - #{createdTime}, - #{updatedBy}, - #{updatedTime}, - #{factoryCode}, - #{sort}, - #{vbeln}, - #{vbpos}, + #{objId}, + #{bomCode}, + #{materialCode}, + #{materialName}, + #{materialType}, + #{standardAmount}, + #{parentId}, + #{isFlag}, + #{createdBy}, + #{createdTime}, + #{updatedBy}, + #{updatedTime}, + #{factoryCode}, + #{sort}, + #{vbeln}, + #{vbpos}, update order_bominfo - bom_code = #{bomCode}, - material_code = #{materialCode}, - material_name = #{materialName}, - material_type = #{materialType}, - standard_amount = #{standardAmount}, - parent_id = #{parentId}, - is_flag = #{isFlag}, - created_by = #{createdBy}, - created_time = #{createdTime}, - updated_by = #{updatedBy}, - updated_time = #{updatedTime}, - factory_code = #{factoryCode}, - sort = #{sort}, - vbeln = #{vbeln}, - vbpos = #{vbpos}, + bom_code = #{bomCode}, + material_code = #{materialCode}, + material_name = #{materialName}, + material_type = #{materialType}, + standard_amount = #{standardAmount}, + parent_id = #{parentId}, + is_flag = #{isFlag}, + created_by = #{createdBy}, + created_time = #{createdTime}, + updated_by = #{updatedBy}, + updated_time = #{updatedTime}, + factory_code = #{factoryCode}, + sort = #{sort}, + vbeln = #{vbeln}, + vbpos = #{vbpos}, where obj_id = #{objId} - delete from order_bominfo where obj_id = #{objId} + delete + from order_bominfo + where obj_id = #{objId}