From deff0ac43b40719ed3384b464ee2a97ab799d762 Mon Sep 17 00:00:00 2001 From: "castle.zang" Date: Fri, 7 Feb 2025 09:35:13 +0800 Subject: [PATCH] =?UTF-8?q?fix=20bug=2044952=20=20MES-=E9=9B=B6=E4=BB=B6?= =?UTF-8?q?=E7=94=9F=E4=BA=A7=E7=BB=84=E6=98=8E=E7=BB=86=E3=80=81=E9=9B=B6?= =?UTF-8?q?=E4=BB=B6=E5=8F=91=E8=BF=90=E7=BB=84=E6=98=8E=E7=BB=86=E3=80=81?= =?UTF-8?q?=E5=AE=A2=E6=88=B7=E8=BD=A6=E5=9E=8B=E9=85=8D=E7=BD=AE=E6=98=8E?= =?UTF-8?q?=E7=BB=86=E8=BE=93=E5=85=A5=E5=AE=A2=E6=88=B7=E9=9B=B6=E4=BB=B6?= =?UTF-8?q?=E5=8F=B7=E5=90=8E=E5=B0=86=E9=9B=B6=E4=BB=B6=E5=8F=B7=E5=B8=A6?= =?UTF-8?q?=E5=87=BA=E6=9D=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ext/mes/api/base/IMesCustomerPartService.java | 6 +++ .../controller/base/MesCustomerPartController.java | 25 ++++++++++ .../serviceimpl/base/MesCustomerPartService.java | 56 ++++++++++++++++++++-- 3 files changed, 84 insertions(+), 3 deletions(-) diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesCustomerPartService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesCustomerPartService.java index 74d74d8..c04652f 100644 --- a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesCustomerPartService.java +++ b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesCustomerPartService.java @@ -18,4 +18,10 @@ public interface IMesCustomerPartService extends IBaseMesService findMesCustomerPartByPartNo(String organizeCode,List partNoList); + @ApiOperation("根据客户零件号查询客erp零件号") + String findErpPartNoByCustPartNo(String custPartNo,String organizeCode); + + @ApiOperation("根据客户零件号查询客erp零件号") + String findPartNo(String custPartNo,String organizeCode); + } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesCustomerPartController.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesCustomerPartController.java index 371f84e..8f33980 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesCustomerPartController.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesCustomerPartController.java @@ -15,6 +15,7 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -45,4 +46,28 @@ public class MesCustomerPartController extends BaseMesController implements IMesCustomerPartService { + @Autowired + private MesCustPartInvoicedRepository partInvoicedRao; @Autowired private MesCustomerCarModelDetailRepository mesCustomerCarModelDetailRDao; + @Autowired + private MesCimGmCbrRuleRepository cbrRuleRao; + protected void setPackQueryBean(MesCustomerPart bean, DdlPackBean packBean) { DdlPreparedPack.getStringEqualPack(bean.getCustPartNo(), "custPartNo", packBean); DdlPreparedPack.getStringEqualPack(bean.getErpPartNo(), "erpPartNo", packBean); @@ -119,4 +124,49 @@ public class MesCustomerPartService extends BaseMesService impl return baseRDao.findByHqlWhere(packBean); } + @Override + public String findErpPartNoByCustPartNo(String custPartNo, String organizeCode) { + DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getStringEqualPack(custPartNo, "custPartNo", ddlPackBean); + List invoicedList = partInvoicedRao.findByHqlTopWhere(ddlPackBean, 1); + if (!CollectionUtils.isEmpty(invoicedList)) { + MesCustPartInvoiced mesCustPartInvoiced = invoicedList.get(0); + return mesCustPartInvoiced.getPartNo(); + } + DdlPackBean erpPartNoPackBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getStringEqualPack(custPartNo, "custPartNo", erpPartNoPackBean); + List customerPartList = baseRDao.findByHqlTopWhere(erpPartNoPackBean, 1); + if (!CollectionUtils.isEmpty(customerPartList)) { + MesCustomerPart mesCustomerPart = customerPartList.get(0); + return mesCustomerPart.getCustPartNo(); + } + return ""; + } + + @Override + public String findPartNo(String custPartNo, String organizeCode) { + DdlPackBean cbrPackBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getStringEqualPack(custPartNo, "custPartNo", cbrPackBean); + List cbrRules = cbrRuleRao.findByHqlTopWhere(cbrPackBean, 1); + if (!CollectionUtils.isEmpty(cbrRules)) { + MesCimGmCbrRule cbrRule = cbrRules.get(0); + return cbrRule.getErpPartNo(); + } + DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getStringEqualPack(custPartNo, "custPartNo", ddlPackBean); + List invoicedList = partInvoicedRao.findByHqlTopWhere(ddlPackBean, 1); + if (!CollectionUtils.isEmpty(invoicedList)) { + MesCustPartInvoiced mesCustPartInvoiced = invoicedList.get(0); + return mesCustPartInvoiced.getPartNo(); + } + DdlPackBean erpPartNoPackBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getStringEqualPack(custPartNo, "custPartNo", erpPartNoPackBean); + List customerPartList = baseRDao.findByHqlTopWhere(erpPartNoPackBean, 1); + if (!CollectionUtils.isEmpty(customerPartList)) { + MesCustomerPart mesCustomerPart = customerPartList.get(0); + return mesCustomerPart.getCustPartNo(); + } + return ""; + } + }