Merge remote-tracking branch 'origin/wms_dev' into wms_dev
This commit is contained in:
+22
@@ -49,9 +49,31 @@ public class StorageLocationApplicationService {
|
||||
if (topOrganizationId != null && topOrganizationId != 1){
|
||||
storageLocationDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
|
||||
}
|
||||
// 只有当前端没有明确传仓库条件时,才使用用户关联仓库缓存进行过滤;
|
||||
// 避免出现“单据仓库=常温仓,但库位列表仍显示保税仓”的错配问题。
|
||||
boolean hasWarehouseFilter = storageLocationDO.getWarehouseId() != null
|
||||
|| (storageLocationDO.getWarehouseCode() != null && !storageLocationDO.getWarehouseCode().trim().isEmpty())
|
||||
|| (storageLocationDO.getWarehouseName() != null && !storageLocationDO.getWarehouseName().trim().isEmpty());
|
||||
if (!hasWarehouseFilter) {
|
||||
try {
|
||||
AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
if (associationWarehouseCacheDO != null) {
|
||||
if (associationWarehouseCacheDO.getWarehouseId() != null) {
|
||||
storageLocationDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
}
|
||||
if (associationWarehouseCacheDO.getWarehouseCode() != null && !associationWarehouseCacheDO.getWarehouseCode().trim().isEmpty()) {
|
||||
storageLocationDO.setWarehouseCode(associationWarehouseCacheDO.getWarehouseCode());
|
||||
}
|
||||
if (associationWarehouseCacheDO.getWarehouseName() != null && !associationWarehouseCacheDO.getWarehouseName().trim().isEmpty()) {
|
||||
storageLocationDO.setWarehouseName(associationWarehouseCacheDO.getWarehouseName());
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
// 获取失败不影响查询(允许查询所有仓库,或由前端传参控制)
|
||||
log.warn("获取用户关联仓库信息失败,将按前端条件查询库位数据,用户ID:{},错误:{}", loginUser.getUserid(), e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
return storageLocationDomainService.queryList(storageLocationDO);
|
||||
}
|
||||
|
||||
|
||||
+17
-1
@@ -41,16 +41,32 @@ public class StatementStatisticsService {
|
||||
if (topOrganizationId != null && topOrganizationId != 1){
|
||||
immediateInventoryDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
|
||||
}
|
||||
// 只有在用户没有明确指定仓库参数时,才使用缓存中的仓库信息
|
||||
// 如果用户已经传递了 warehouseId、warehouseCode 或 warehouseName,优先使用这些值
|
||||
boolean hasWarehouseFilter = (immediateInventoryDO.getWarehouseId() != null)
|
||||
|| (immediateInventoryDO.getWarehouseCode() != null && !immediateInventoryDO.getWarehouseCode().trim().isEmpty())
|
||||
|| (immediateInventoryDO.getWarehouseName() != null && !immediateInventoryDO.getWarehouseName().trim().isEmpty());
|
||||
|
||||
if (!hasWarehouseFilter) {
|
||||
try {
|
||||
AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
if (associationWarehouseCacheDO != null && associationWarehouseCacheDO.getWarehouseId() != null) {
|
||||
if (associationWarehouseCacheDO != null) {
|
||||
if (associationWarehouseCacheDO.getWarehouseId() != null) {
|
||||
immediateInventoryDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
}
|
||||
if (associationWarehouseCacheDO.getWarehouseCode() != null && !associationWarehouseCacheDO.getWarehouseCode().trim().isEmpty()) {
|
||||
immediateInventoryDO.setWarehouseCode(associationWarehouseCacheDO.getWarehouseCode());
|
||||
}
|
||||
if (associationWarehouseCacheDO.getWarehouseName() != null && !associationWarehouseCacheDO.getWarehouseName().trim().isEmpty()) {
|
||||
immediateInventoryDO.setWarehouseName(associationWarehouseCacheDO.getWarehouseName());
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
// 如果获取仓库信息失败,记录日志但不影响查询(允许查询所有仓库)
|
||||
log.warn("获取用户关联仓库信息失败,将查询所有仓库数据,用户ID:{},错误:{}", loginUser.getUserid(), e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
return materialInventoryDomainService.queryImmediateInventoryList(immediateInventoryDO);
|
||||
}
|
||||
|
||||
|
||||
+17
-2
@@ -72,8 +72,23 @@ public class StockInOrderApplicationService {
|
||||
if (topOrganizationId != null && topOrganizationId != 1){
|
||||
stockInOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
|
||||
}
|
||||
// AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
// stockInOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
try {
|
||||
AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
if (associationWarehouseCacheDO != null) {
|
||||
if (associationWarehouseCacheDO.getWarehouseId() != null) {
|
||||
stockInOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
}
|
||||
if (StringUtils.isNotBlank(associationWarehouseCacheDO.getWarehouseCode())) {
|
||||
stockInOrderDO.setWarehouseCode(associationWarehouseCacheDO.getWarehouseCode());
|
||||
}
|
||||
if (StringUtils.isNotBlank(associationWarehouseCacheDO.getWarehouseName())) {
|
||||
stockInOrderDO.setWarehouseName(associationWarehouseCacheDO.getWarehouseName());
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
// 如果获取仓库信息失败,记录日志但不影响查询(允许查询所有仓库)
|
||||
log.warn("获取用户关联仓库信息失败,将查询所有仓库数据,用户ID:{},错误:{}", loginUser.getUserid(), e.getMessage());
|
||||
}
|
||||
}
|
||||
return stockInOrderDomainService.queryList(stockInOrderDO);
|
||||
}
|
||||
|
||||
+19
-2
@@ -85,11 +85,28 @@ public class StockReceiptOrderApplicationService {
|
||||
|
||||
public List<StockReceiptOrderPO> queryList(StockReceiptOrderDO stockReceiptOrderDO) {
|
||||
LoginUser loginUser = SecurityUtils.getLoginUser();
|
||||
if (loginUser != null){
|
||||
Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId();
|
||||
if (topOrganizationId != null && topOrganizationId != 1){
|
||||
stockReceiptOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
|
||||
// AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
// stockReceiptOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
}
|
||||
try {
|
||||
AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
if (associationWarehouseCacheDO != null) {
|
||||
if (associationWarehouseCacheDO.getWarehouseId() != null) {
|
||||
stockReceiptOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
}
|
||||
if (StringUtils.isNotBlank(associationWarehouseCacheDO.getWarehouseCode())) {
|
||||
stockReceiptOrderDO.setWarehouseCode(associationWarehouseCacheDO.getWarehouseCode());
|
||||
}
|
||||
if (StringUtils.isNotBlank(associationWarehouseCacheDO.getWarehouseName())) {
|
||||
stockReceiptOrderDO.setWarehouseName(associationWarehouseCacheDO.getWarehouseName());
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
// 如果获取仓库信息失败,记录日志但不影响查询(允许查询所有仓库)
|
||||
log.warn("获取用户关联仓库信息失败,将查询所有仓库数据,用户ID:{},错误:{}", loginUser.getUserid(), e.getMessage());
|
||||
}
|
||||
}
|
||||
return stockReceiptOrderDomainService.queryList(stockReceiptOrderDO);
|
||||
}
|
||||
|
||||
+18
-2
@@ -6,6 +6,7 @@ import com.mhd.common.core.constant.SnowFlakeConstants;
|
||||
import com.mhd.common.core.domain.po.UserPo;
|
||||
import com.mhd.common.core.exception.ServiceException;
|
||||
import com.mhd.common.core.utils.IgnoreNullUtil;
|
||||
import com.mhd.common.core.utils.StringUtils;
|
||||
import com.mhd.common.core.utils.bean.BeanUtils;
|
||||
import com.mhd.common.core.utils.uuid.IdGenerator;
|
||||
import com.mhd.common.core.web.domain.AjaxResult;
|
||||
@@ -67,8 +68,23 @@ public class StockShelfOrderApplicationService {
|
||||
if (topOrganizationId != null && topOrganizationId != 1){
|
||||
stockShelfOrderDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId());
|
||||
}
|
||||
// AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
// stockShelfOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
try {
|
||||
AssociationWarehouseCacheDO associationWarehouseCacheDO = SystemServiceCacheUtil.getAssociationWarehouseCache(loginUser.getUserid());
|
||||
if (associationWarehouseCacheDO != null) {
|
||||
if (associationWarehouseCacheDO.getWarehouseId() != null) {
|
||||
stockShelfOrderDO.setWarehouseId(associationWarehouseCacheDO.getWarehouseId());
|
||||
}
|
||||
if (StringUtils.isNotBlank(associationWarehouseCacheDO.getWarehouseCode())) {
|
||||
stockShelfOrderDO.setWarehouseCode(associationWarehouseCacheDO.getWarehouseCode());
|
||||
}
|
||||
if (StringUtils.isNotBlank(associationWarehouseCacheDO.getWarehouseName())) {
|
||||
stockShelfOrderDO.setWarehouseName(associationWarehouseCacheDO.getWarehouseName());
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
// 如果获取仓库信息失败,记录日志但不影响查询(允许查询所有仓库)
|
||||
log.warn("获取用户关联仓库信息失败,将查询所有仓库数据,用户ID:{},错误:{}", loginUser.getUserid(), e.getMessage());
|
||||
}
|
||||
}
|
||||
return stockShelfOrderDomainService.queryList(stockShelfOrderDO);
|
||||
}
|
||||
|
||||
@@ -408,8 +408,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
and a.warehouse_id = #{warehouseId}
|
||||
</if>
|
||||
|
||||
<if test="warehouseCode != null and warehouseCode != '' ">
|
||||
and a.warehouse_code = #{warehouseCode}
|
||||
</if>
|
||||
|
||||
<if test="warehouseName != null and warehouseName != '' ">
|
||||
and a.warehouse_name = #{warehouseName}
|
||||
and a.warehouse_name like concat('%', #{warehouseName}, '%')
|
||||
</if>
|
||||
|
||||
<if test="materialName != null and materialName != '' ">
|
||||
|
||||
Reference in New Issue
Block a user