| | |
| | | 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; |
| | |
| | | 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()); |
| | | } |
| | |
| | | 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()); |
| | |
| | | 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); |
| | | } |
| | | } |