Commit dd45f888e350ec0f05c2443753a1232f264923f9

Authored by 房远帅
1 parent dbf2adcd

楚江ERP:规格变更单生产人员不显示价格

1 1 package com.lframework.xingyun.sc.controller;
2 2
3 3 import com.lframework.starter.common.utils.CollectionUtil;
  4 +import com.lframework.starter.web.core.components.security.SecurityUtil;
4 5 import com.lframework.starter.web.core.controller.DefaultBaseController;
5 6 import com.lframework.starter.web.core.components.resp.InvokeResult;
6 7 import com.lframework.starter.web.core.components.resp.InvokeResultBuilder;
7 8 import com.lframework.starter.web.core.components.resp.PageResult;
8 9 import com.lframework.starter.web.core.utils.PageResultUtil;
  10 +import com.lframework.starter.web.inner.entity.SysDept;
  11 +import com.lframework.starter.web.inner.entity.SysUserDept;
  12 +import com.lframework.starter.web.inner.service.system.SysDeptService;
  13 +import com.lframework.starter.web.inner.service.system.SysUserDeptService;
9 14 import com.lframework.xingyun.sc.bo.order.GetPurchaseOrderInfoBo;
10 15 import com.lframework.xingyun.sc.bo.paytype.OrderPayTypeBo;
11 16 import com.lframework.xingyun.sc.bo.purchase.PurchaseOrderSelectorBo;
... ... @@ -78,6 +83,10 @@ public class ScSelectorController extends DefaultBaseController {
78 83 private PurchaseOrderInfoService orderInfoService;
79 84 @Resource
80 85 private PurchaseOrderLineService orderLineService;
  86 + @Resource
  87 + private SysUserDeptService sysUserDeptService;
  88 + @Resource
  89 + private SysDeptService sysDeptService;
81 90
82 91
83 92 /**
... ... @@ -321,8 +330,38 @@ public class ScSelectorController extends DefaultBaseController {
321 330 for (GetPurchaseOrderInfoBo orderInfoBo : result) {
322 331 String orderId = orderInfoBo.getId();
323 332 List<PurchaseOrderLine> lineList = orderLineMap.get(orderId);
  333 + //生产人员不展示价格
  334 + processPrice(lineList);
324 335 orderInfoBo.setPurchaseOrderLineList(lineList);
325 336 }
326 337 return InvokeResultBuilder.success(result);
327 338 }
  339 +
  340 + //生产人员不展示价格,根据部门判断(生产管理科、精轧一车间、精轧车间、品质管理科),需要生产的控制价格
  341 + public void processPrice(List<PurchaseOrderLine> purchaseOrderLineList) {
  342 + if (CollectionUtils.isEmpty(purchaseOrderLineList)) {
  343 + return;
  344 + }
  345 + List<SysUserDept> userDeptList = sysUserDeptService.getByUserId(SecurityUtil.getCurrentUser().getId());
  346 + if (CollectionUtils.isNotEmpty(userDeptList)) {
  347 + boolean b = false;
  348 + for (SysUserDept sysUserDept : userDeptList) {
  349 + String deptId = sysUserDept.getDeptId();
  350 + SysDept sysDept = sysDeptService.findById(deptId);
  351 + String code = sysDept.getCode();
  352 + if ("YFCSCGLK".equals(code) || "EFCSCGLK".equals(code) || "SFCSCGLK".equals(code)
  353 + || "ZTFCSCGLK".equals(code) || "YFCPZGLK".equals(code) || "EFCPZGLK".equals(code)
  354 + || "SFCPZGLK".equals(code) || "ZTFCPZGLK".equals(code) || "YFCJYCJ".equals(code)
  355 + || "EFCJYCJ".equals(code) || "ZTFCJYYCJ".equals(code) || "ZTFCJYECJ".equals(code)) {
  356 + b = true;
  357 + break;
  358 + }
  359 + }
  360 + if (b) {
  361 + for (PurchaseOrderLine purchaseOrderLine : purchaseOrderLineList) {
  362 + purchaseOrderLine.setShowSalesPrice(false);
  363 + }
  364 + }
  365 + }
  366 + }
328 367 }
... ...
... ... @@ -11,6 +11,10 @@ import com.lframework.starter.common.utils.StringUtil;
11 11 import com.lframework.starter.web.core.components.redis.RedisHandler;
12 12 import com.lframework.starter.web.core.components.security.SecurityUtil;
13 13 import com.lframework.starter.web.core.utils.*;
  14 +import com.lframework.starter.web.inner.entity.SysDept;
  15 +import com.lframework.starter.web.inner.entity.SysUserDept;
  16 +import com.lframework.starter.web.inner.service.system.SysDeptService;
  17 +import com.lframework.starter.web.inner.service.system.SysUserDeptService;
14 18 import com.lframework.starter.web.inner.service.system.SysUserService;
15 19 import com.lframework.xingyun.basedata.entity.Workshop;
16 20 import com.lframework.xingyun.basedata.service.customer.CustomerService;
... ... @@ -77,6 +81,10 @@ public class OrderChangeRecordServiceImpl extends BaseMpServiceImpl<OrderChangeR
77 81 private WorkshopService workshopService;
78 82 @Resource
79 83 private TransactorHandler transactorHandler;
  84 + @Resource
  85 + private SysUserDeptService sysUserDeptService;
  86 + @Resource
  87 + private SysDeptService sysDeptService;
80 88
81 89
82 90 @Override
... ... @@ -120,10 +128,14 @@ public class OrderChangeRecordServiceImpl extends BaseMpServiceImpl<OrderChangeR
120 128 Object obj = redisHandler.get(changeRecord.getOrderId() + "_order_line_info");
121 129 if (obj != null) {
122 130 List<PurchaseOrderLine> beforeChangeList = JsonUtil.parseList(obj.toString(), PurchaseOrderLine.class);
  131 + //生产人员不展示价格
  132 + processPrice(beforeChangeList);
123 133 changeRecord.setBeforeChangeSpecList(beforeChangeList);
124 134 }
125 135 // 变更后
126 136 List<PurchaseOrderLine> afterChangeList = purchaseOrderLineService.listByOrderIds(Collections.singletonList(id), true);
  137 + //生产人员不展示价格
  138 + processPrice(afterChangeList);
127 139 if (CollectionUtils.isNotEmpty(afterChangeList)) {
128 140 BigDecimal total = BigDecimal.ZERO;
129 141 for (PurchaseOrderLine afterChangeLine : afterChangeList) {
... ... @@ -417,4 +429,32 @@ public class OrderChangeRecordServiceImpl extends BaseMpServiceImpl<OrderChangeR
417 429 // 发起流程
418 430 flowInstanceWrapperService.startInstance("SPEC_CHANGE_CONFIRM", id, "SPEC_CHANGE_CONFIRM", record);
419 431 }
  432 +
  433 + //生产人员不展示价格,根据部门判断(生产管理科、精轧一车间、精轧车间、品质管理科),需要生产的控制价格
  434 + public void processPrice(List<PurchaseOrderLine> purchaseOrderLineList) {
  435 + if (CollectionUtils.isEmpty(purchaseOrderLineList)) {
  436 + return;
  437 + }
  438 + List<SysUserDept> userDeptList = sysUserDeptService.getByUserId(SecurityUtil.getCurrentUser().getId());
  439 + if (CollectionUtils.isNotEmpty(userDeptList)) {
  440 + boolean b = false;
  441 + for (SysUserDept sysUserDept : userDeptList) {
  442 + String deptId = sysUserDept.getDeptId();
  443 + SysDept sysDept = sysDeptService.findById(deptId);
  444 + String code = sysDept.getCode();
  445 + if ("YFCSCGLK".equals(code) || "EFCSCGLK".equals(code) || "SFCSCGLK".equals(code)
  446 + || "ZTFCSCGLK".equals(code) || "YFCPZGLK".equals(code) || "EFCPZGLK".equals(code)
  447 + || "SFCPZGLK".equals(code) || "ZTFCPZGLK".equals(code) || "YFCJYCJ".equals(code)
  448 + || "EFCJYCJ".equals(code) || "ZTFCJYYCJ".equals(code) || "ZTFCJYECJ".equals(code)) {
  449 + b = true;
  450 + break;
  451 + }
  452 + }
  453 + if (b) {
  454 + for (PurchaseOrderLine purchaseOrderLine : purchaseOrderLineList) {
  455 + purchaseOrderLine.setShowSalesPrice(false);
  456 + }
  457 + }
  458 + }
  459 + }
420 460 }
... ...