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 ""; + } + }