From 0f042d95621cef5fa1b656403cdba24ed6b8fc11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=A3=E5=9C=A3=E5=8D=8E?= <752718920@qq.com> Date: Thu, 25 May 2023 21:59:31 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E4=BB=B7=E6=A0=BC=E5=B1=8F?= =?UTF-8?q?=E8=94=BD=E6=8E=A5=E5=8F=A3=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../erp/controller/DepotItemController.java | 8 ++-- .../service/depotHead/DepotHeadService.java | 26 ++++++----- .../com/jsh/erp/service/role/RoleService.java | 45 ++++++++++++++----- 3 files changed, 54 insertions(+), 25 deletions(-) diff --git a/jshERP-boot/src/main/java/com/jsh/erp/controller/DepotItemController.java b/jshERP-boot/src/main/java/com/jsh/erp/controller/DepotItemController.java index 71afb795..a0310066 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/controller/DepotItemController.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/controller/DepotItemController.java @@ -806,6 +806,8 @@ public class DepotItemController { BaseResponseInfo res = new BaseResponseInfo(); Map map = new HashMap(); try { + Long userId = userService.getUserId(request); + String priceLimit = userService.getRoleTypeByUserId(userId).getPriceLimit(); List list = Tools.getLastMonths(6); JSONArray buyPriceList = new JSONArray(); for(String month: list) { @@ -813,7 +815,7 @@ public class DepotItemController { BigDecimal outPrice = depotItemService.inOrOutPrice("入库", "采购", month, roleType); BigDecimal inPrice = depotItemService.inOrOutPrice("出库", "采购退货", month, roleType); obj.put("x", month); - obj.put("y", roleService.parsePriceByLimit(outPrice.subtract(inPrice), "buy", "***", request)); + obj.put("y", roleService.parseHomePriceByLimit(outPrice.subtract(inPrice), "buy", priceLimit, "***", request)); buyPriceList.add(obj); } map.put("buyPriceList", buyPriceList); @@ -823,7 +825,7 @@ public class DepotItemController { BigDecimal outPrice = depotItemService.inOrOutPrice("出库", "销售", month, roleType); BigDecimal inPrice = depotItemService.inOrOutPrice("入库", "销售退货", month, roleType); obj.put("x", month); - obj.put("y", roleService.parsePriceByLimit(outPrice.subtract(inPrice), "sale", "***", request)); + obj.put("y", roleService.parseHomePriceByLimit(outPrice.subtract(inPrice), "sale", priceLimit, "***", request)); salePriceList.add(obj); } map.put("salePriceList", salePriceList); @@ -833,7 +835,7 @@ public class DepotItemController { BigDecimal outPrice = depotItemService.inOrOutRetailPrice("出库", "零售", month, roleType); BigDecimal inPrice = depotItemService.inOrOutRetailPrice("入库", "零售退货", month, roleType); obj.put("x", month); - obj.put("y", roleService.parsePriceByLimit(outPrice.subtract(inPrice), "retail", "***", request)); + obj.put("y", roleService.parseHomePriceByLimit(outPrice.subtract(inPrice), "retail", priceLimit, "***", request)); retailPriceList.add(obj); } map.put("retailPriceList", retailPriceList); diff --git a/jshERP-boot/src/main/java/com/jsh/erp/service/depotHead/DepotHeadService.java b/jshERP-boot/src/main/java/com/jsh/erp/service/depotHead/DepotHeadService.java index edfaca7f..3f8dcfc8 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/service/depotHead/DepotHeadService.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/service/depotHead/DepotHeadService.java @@ -1087,6 +1087,8 @@ public class DepotHeadService { public Map getBuyAndSaleStatistics(String today, String monthFirstDay, String yesterdayBegin, String yesterdayEnd, String yearBegin, String yearEnd, String roleType, HttpServletRequest request) throws Exception { + Long userId = userService.getUserId(request); + String priceLimit = userService.getRoleTypeByUserId(userId).getPriceLimit(); String [] creatorArray = getCreatorArray(roleType); Map map = new HashMap<>(); //今日 @@ -1141,18 +1143,18 @@ public class DepotHeadService { yearBegin, yearEnd, creatorArray); //今年零售出库 BigDecimal yearRetailSaleBack = getBuyAndSaleRetailStatistics("入库", "零售退货", yearBegin, yearEnd, creatorArray); //今年零售退货 - map.put("todayBuy", roleService.parsePriceByLimit(todayBuy.subtract(todayBuyBack), "buy", "***", request)); - map.put("todaySale", roleService.parsePriceByLimit(todaySale.subtract(todaySaleBack), "sale", "***", request)); - map.put("todayRetailSale", roleService.parsePriceByLimit(todayRetailSale.subtract(todayRetailSaleBack), "retail", "***", request)); - map.put("monthBuy", roleService.parsePriceByLimit(monthBuy.subtract(monthBuyBack), "buy", "***", request)); - map.put("monthSale", roleService.parsePriceByLimit(monthSale.subtract(monthSaleBack), "sale", "***", request)); - map.put("monthRetailSale", roleService.parsePriceByLimit(monthRetailSale.subtract(monthRetailSaleBack), "retail", "***", request)); - map.put("yesterdayBuy", roleService.parsePriceByLimit(yesterdayBuy.subtract(yesterdayBuyBack), "buy", "***", request)); - map.put("yesterdaySale", roleService.parsePriceByLimit(yesterdaySale.subtract(yesterdaySaleBack), "sale", "***", request)); - map.put("yesterdayRetailSale", roleService.parsePriceByLimit(yesterdayRetailSale.subtract(yesterdayRetailSaleBack), "retail", "***", request)); - map.put("yearBuy", roleService.parsePriceByLimit(yearBuy.subtract(yearBuyBack), "buy", "***", request)); - map.put("yearSale", roleService.parsePriceByLimit(yearSale.subtract(yearSaleBack), "sale", "***", request)); - map.put("yearRetailSale", roleService.parsePriceByLimit(yearRetailSale.subtract(yearRetailSaleBack), "retail", "***", request)); + map.put("todayBuy", roleService.parseHomePriceByLimit(todayBuy.subtract(todayBuyBack), "buy", priceLimit, "***", request)); + map.put("todaySale", roleService.parseHomePriceByLimit(todaySale.subtract(todaySaleBack), "sale", priceLimit, "***", request)); + map.put("todayRetailSale", roleService.parseHomePriceByLimit(todayRetailSale.subtract(todayRetailSaleBack), "retail", priceLimit, "***", request)); + map.put("monthBuy", roleService.parseHomePriceByLimit(monthBuy.subtract(monthBuyBack), "buy", priceLimit, "***", request)); + map.put("monthSale", roleService.parseHomePriceByLimit(monthSale.subtract(monthSaleBack), "sale", priceLimit, "***", request)); + map.put("monthRetailSale", roleService.parseHomePriceByLimit(monthRetailSale.subtract(monthRetailSaleBack), "retail", priceLimit, "***", request)); + map.put("yesterdayBuy", roleService.parseHomePriceByLimit(yesterdayBuy.subtract(yesterdayBuyBack), "buy", priceLimit, "***", request)); + map.put("yesterdaySale", roleService.parseHomePriceByLimit(yesterdaySale.subtract(yesterdaySaleBack), "sale", priceLimit, "***", request)); + map.put("yesterdayRetailSale", roleService.parseHomePriceByLimit(yesterdayRetailSale.subtract(yesterdayRetailSaleBack), "retail", priceLimit, "***", request)); + map.put("yearBuy", roleService.parseHomePriceByLimit(yearBuy.subtract(yearBuyBack), "buy", priceLimit, "***", request)); + map.put("yearSale", roleService.parseHomePriceByLimit(yearSale.subtract(yearSaleBack), "sale", priceLimit, "***", request)); + map.put("yearRetailSale", roleService.parseHomePriceByLimit(yearRetailSale.subtract(yearRetailSaleBack), "retail", priceLimit, "***", request)); return map; } diff --git a/jshERP-boot/src/main/java/com/jsh/erp/service/role/RoleService.java b/jshERP-boot/src/main/java/com/jsh/erp/service/role/RoleService.java index 41d83bc2..7e2707aa 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/service/role/RoleService.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/service/role/RoleService.java @@ -82,9 +82,13 @@ public class RoleService { for(RoleEx roleEx: list) { String priceLimit = roleEx.getPriceLimit(); if(StringUtil.isNotEmpty(priceLimit)) { - String priceLimitStr = priceLimit.replace("1", "屏蔽采购价") - .replace("2", "屏蔽零售价") - .replace("3", "屏蔽销售价"); + String priceLimitStr = priceLimit + .replace("1", "屏蔽首页采购价") + .replace("2", "屏蔽首页零售价") + .replace("3", "屏蔽首页销售价") + .replace("4", "屏蔽单据采购价") + .replace("5", "屏蔽单据零售价") + .replace("6", "屏蔽单据销售价"); roleEx.setPriceLimitStr(priceLimitStr); } } @@ -219,14 +223,12 @@ public class RoleService { } /** - * 根据权限进行屏蔽价格 + * 根据权限进行屏蔽价格-首页 * @param price * @param type * @return */ - public Object parsePriceByLimit(BigDecimal price, String type, String emptyInfo, HttpServletRequest request) throws Exception { - Long userId = userService.getUserId(request); - String priceLimit = userService.getRoleTypeByUserId(userId).getPriceLimit(); + public Object parseHomePriceByLimit(BigDecimal price, String type, String priceLimit, String emptyInfo, HttpServletRequest request) throws Exception { if(StringUtil.isNotEmpty(priceLimit)) { if("buy".equals(type) && priceLimit.contains("1")) { return emptyInfo; @@ -252,19 +254,42 @@ public class RoleService { */ public BigDecimal parseBillPriceByLimit(BigDecimal price, String billCategory, String priceLimit, HttpServletRequest request) throws Exception { if(StringUtil.isNotEmpty(priceLimit)) { - if("buy".equals(billCategory) && priceLimit.contains("1")) { + if("buy".equals(billCategory) && priceLimit.contains("4")) { return BigDecimal.ZERO; } - if("retail".equals(billCategory) && priceLimit.contains("2")) { + if("retail".equals(billCategory) && priceLimit.contains("5")) { return BigDecimal.ZERO; } - if("sale".equals(billCategory) && priceLimit.contains("3")) { + if("sale".equals(billCategory) && priceLimit.contains("6")) { return BigDecimal.ZERO; } } return price; } + /** + * 根据权限进行屏蔽价格-物料 + * @param price + * @param type + * @return + */ + public Object parseMaterialPriceByLimit(BigDecimal price, String type, String emptyInfo, HttpServletRequest request) throws Exception { + Long userId = userService.getUserId(request); + String priceLimit = userService.getRoleTypeByUserId(userId).getPriceLimit(); + if(StringUtil.isNotEmpty(priceLimit)) { + if("buy".equals(type) && priceLimit.contains("4")) { + return emptyInfo; + } + if("retail".equals(type) && priceLimit.contains("5")) { + return emptyInfo; + } + if("sale".equals(type) && priceLimit.contains("6")) { + return emptyInfo; + } + } + return price; + } + public String getCurrentPriceLimit(HttpServletRequest request) throws Exception { Long userId = userService.getUserId(request); return userService.getRoleTypeByUserId(userId).getPriceLimit();