From 04f6fdfd40b8f111963337a4f64ffd16ec010ae2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=A3=E5=9C=A3=E5=8D=8E?= <752718920@qq.com> Date: Sun, 11 Jun 2023 18:47:07 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=8E=E6=8E=A5=E5=8F=A3=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=E9=94=80=E5=94=AE=E4=BB=B7=E6=AF=8F=E4=B8=AA=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E4=B8=8D=E5=90=8C=E7=9A=84=E4=BB=B7=E6=A0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../erp/controller/MaterialController.java | 8 +++++++- .../datasource/mappers/DepotItemMapperEx.java | 6 ++++++ .../service/depotItem/DepotItemService.java | 19 +++++++++++++++++++ .../mapper_xml/DepotItemMapperEx.xml | 11 +++++++++++ 4 files changed, 43 insertions(+), 1 deletion(-) diff --git a/jshERP-boot/src/main/java/com/jsh/erp/controller/MaterialController.java b/jshERP-boot/src/main/java/com/jsh/erp/controller/MaterialController.java index a964ab55..c2463960 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/controller/MaterialController.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/controller/MaterialController.java @@ -457,6 +457,7 @@ public class MaterialController { @GetMapping(value = "/getMaterialByBarCode") @ApiOperation(value = "根据条码查询商品信息") public BaseResponseInfo getMaterialByBarCode(@RequestParam("barCode") String barCode, + @RequestParam(value = "organId", required = false) Long organId, @RequestParam(value = "depotId", required = false) Long depotId, @RequestParam("mpList") String mpList, @RequestParam(required = false, value = "prefixNo") String prefixNo, @@ -483,7 +484,12 @@ public class MaterialController { mvo.setBillPrice(mvo.getPurchaseDecimal()); } else if ("XSDD".equals(prefixNo) || "XSCK".equals(prefixNo) || "XSTH".equals(prefixNo) || "QTCK".equals(prefixNo)) { //销售价 - mvo.setBillPrice(mvo.getWholesaleDecimal()); + if(organId == null) { + mvo.setBillPrice(mvo.getWholesaleDecimal()); + } else { + //查询最后一单的销售价,实现不同的客户不同的销售价 + mvo.setBillPrice(depotItemService.getLastUnitPriceByParam(organId, mvo.getMeId(), prefixNo)); + } } //仓库id if (depotId == null) { diff --git a/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/DepotItemMapperEx.java b/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/DepotItemMapperEx.java index 53ac6431..eaa4c3e7 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/DepotItemMapperEx.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/datasource/mappers/DepotItemMapperEx.java @@ -233,4 +233,10 @@ public interface DepotItemMapperEx { BigDecimal getCurrentStockByParam( @Param("depotId") Long depotId, @Param("mId") Long mId); + + BigDecimal getLastUnitPriceByParam( + @Param("organId") Long organId, + @Param("meId") Long meId, + @Param("type") String type, + @Param("subType") String subType); } diff --git a/jshERP-boot/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java b/jshERP-boot/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java index d9aa803e..83e5bf74 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/service/depotItem/DepotItemService.java @@ -1195,4 +1195,23 @@ public class DepotItemService { map.put("rows", arr); return map; } + + public BigDecimal getLastUnitPriceByParam(Long organId, Long meId, String prefixNo) { + String type = ""; + String subType = ""; + if("XSDD".equals(prefixNo)) { + type = "其它"; + subType = "销售订单"; + } else if("XSCK".equals(prefixNo)) { + type = "出库"; + subType = "销售"; + } else if("XSTH".equals(prefixNo)) { + type = "入库"; + subType = "销售退货"; + } else if("QTCK".equals(prefixNo)) { + type = "出库"; + subType = "其它"; + } + return depotItemMapperEx.getLastUnitPriceByParam(organId, meId, type, subType); + } } diff --git a/jshERP-boot/src/main/resources/mapper_xml/DepotItemMapperEx.xml b/jshERP-boot/src/main/resources/mapper_xml/DepotItemMapperEx.xml index f7cb748a..90681a64 100644 --- a/jshERP-boot/src/main/resources/mapper_xml/DepotItemMapperEx.xml +++ b/jshERP-boot/src/main/resources/mapper_xml/DepotItemMapperEx.xml @@ -989,4 +989,15 @@ and ifnull(delete_flag,'0') !='1' + +