From 56dfe0d4bf81262622a1919cceb2b039fd356209 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期二, 03 九月 2024 16:52:49 +0800 Subject: [PATCH] 代码提交 bug解决 --- ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java | 65 ++++++++++++++++++++++++++++++-- 1 files changed, 61 insertions(+), 4 deletions(-) diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java index 33b0631..a334ef4 100644 --- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java +++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java @@ -1,8 +1,10 @@ package com.ruoyi.management.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.page.BeanUtils; import com.ruoyi.common.core.utils.page.PageDTO; import com.ruoyi.common.security.utils.SecurityUtils; @@ -62,15 +64,65 @@ public PageDTO<VolumeProductionCkglVO> getslVolumeProductionCkglList(getslVolumeProductionCkglQuery VolumeProductionCkglQuery) { Page<SlVolumeProductionCkgl> page = new Page<>(VolumeProductionCkglQuery.getPageCurr(), VolumeProductionCkglQuery.getPageSize()); + LambdaQueryWrapper< SlVolumeProductionCkgl> wrapper1= Wrappers.lambdaQuery(); + QueryWrapper<SlStoreManagement> storeManagementGrade = new QueryWrapper<SlStoreManagement>() + .eq("del_flag", "0"); getVolumeProductionRkQuery getVolume=new getVolumeProductionRkQuery(); getVolume.setSupplierPhone(VolumeProductionCkglQuery.getSupplierPhone()); getVolume.setSupplierName(VolumeProductionCkglQuery.getSupplierName()); List<SysUser> data1 = sysUserClient.getUserSupplierList(getVolume).getData(); + SysUser sysUser = sysUserClient.getSysUser(SecurityUtils.getUserId()).getData(); + List<Long> managementIds = new ArrayList<>(); + if (sysUser!=null){ + if (!sysUser.getUserType().equals("00")){ + // 仓库管理员 根据仓库管理员的等级查询对应的仓库 + switch (sysUser.getRoleType()){ + case 3: + storeManagementGrade.ge("store_management_grade",3); + storeManagementGrade.eq("city_code",sysUser.getCityCode()); + managementIds = slStoreManagementMapper.selectList(storeManagementGrade).stream() + .map(SlStoreManagement::getId).collect(Collectors.toList()); + if (!managementIds.isEmpty()){ + wrapper1.in(SlVolumeProductionCkgl::getManagementId,managementIds); + } + break; + case 4: + storeManagementGrade.ge("store_management_grade",4); + storeManagementGrade.eq("county_code",sysUser.getCountyCode()); + managementIds = slStoreManagementMapper.selectList(storeManagementGrade).stream() + .map(SlStoreManagement::getId).collect(Collectors.toList()); + if (!managementIds.isEmpty()){ + wrapper1.in(SlVolumeProductionCkgl::getManagementId,managementIds); + } + break; + case 5: + storeManagementGrade.ge("store_management_grade",5); + storeManagementGrade.eq("town_code",sysUser.getTownCode()); + managementIds = slStoreManagementMapper.selectList(storeManagementGrade).stream() + .map(SlStoreManagement::getId).collect(Collectors.toList()); + if (!managementIds.isEmpty()){ + wrapper1.in(SlVolumeProductionCkgl::getManagementId,managementIds); + } + break; + case 6: + storeManagementGrade.eq("store_management_grade",6); + storeManagementGrade.eq("town_code",sysUser.getTownCode()); + managementIds = slStoreManagementMapper.selectList(storeManagementGrade).stream() + .map(SlStoreManagement::getId).collect(Collectors.toList()); + if (!managementIds.isEmpty()){ + wrapper1.in(SlVolumeProductionCkgl::getManagementId,managementIds); + } + break; + } + + } + + } + Set<Long> goodsSkuIdList = null; goodsSkuIdList = data1.stream().map(SysUser::getUserId) .collect(Collectors.toSet()); - LambdaQueryWrapper< SlVolumeProductionCkgl> wrapper1= Wrappers.lambdaQuery(); if (VolumeProductionCkglQuery.getPresentState()!=null &&VolumeProductionCkglQuery.getPresentState()!=0){ wrapper1.eq(SlVolumeProductionCkgl::getPresentState,VolumeProductionCkglQuery.getPresentState()); } @@ -232,7 +284,6 @@ SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId()); Long num =slVolumeProductionRk.getRepertoryZhai()-Long.valueOf(list.getCkNum()); slVolumeProductionRk.setRepertoryZhai(num); - slVolumeProductionRk.setNewAddTime("1"); slVolumeProductionRkMapper.updateById(slVolumeProductionRk); LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery(); wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,list.getMaterialsId()); @@ -278,12 +329,18 @@ if (managementGoodsMaterials!=null){ Long repertoryZhai = managementGoodsMaterials.getRepertoryZhai(); Long re1=repertoryZhai+Long.valueOf(list.getGuihNum()); - Integer m=managementGoodsMaterials.getCheckNum()-list.getCkNum(); + Integer m=managementGoodsMaterials.getRepertoryChu()-list.getGuihNum(); Integer m1=list.getCkNum()-list.getGuihNum(); Integer m2=managementGoodsMaterials.getRepertoryYishi()+m1; managementGoodsMaterials.setRepertoryChu(m); managementGoodsMaterials.setRepertoryZhai(re1); - managementGoodsMaterials.setRepertoryYishi(m2); + SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(list.getMaterialsId()); + if (slGoodsMaterials != null) { + if (slGoodsMaterials.getIsConsume() == 1){ + // 非消耗品才计算遗失 + managementGoodsMaterials.setRepertoryYishi(m2); + } + } managementGoodsMaterialsMapper.updateById(managementGoodsMaterials); } } -- Gitblit v1.7.1