| | |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.domain.getVolumeProductionRkQuery; |
| | | import com.ruoyi.system.api.feignClient.SysUserClient; |
| | | import com.sun.org.apache.bcel.internal.generic.NEW; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.StringUtils; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.*; |
| | |
| | | Set<Long> goodsSkuIdList = null; |
| | | goodsSkuIdList = data1.stream().map(SysUser::getUserId) |
| | | .collect(Collectors.toSet()); |
| | | |
| | | LambdaQueryWrapper< SlVolumeProductionZygl> wrapper1= Wrappers.lambdaQuery(); |
| | | if (slVolumeProductionZyQuery.getPresentState()!=null){ |
| | | wrapper1.eq(SlVolumeProductionZygl::getPresentState,slVolumeProductionZyQuery.getPresentState()); |
| | |
| | | wrapper1.in(SlVolumeProductionZygl::getSysId,goodsSkuIdList); |
| | | } |
| | | wrapper1.eq( SlVolumeProductionZygl::getDelFlag,0); |
| | | wrapper1.orderByDesc(SlVolumeProductionZygl::getCreateTime); |
| | | // wrapper1.ne(SlVolumeProductionZygl::getAuditStatus,7); |
| | | wrapper1.orderByDesc(SlVolumeProductionZygl::getStartiTime); |
| | | Page<SlVolumeProductionZygl> page2 = this.page(page, wrapper1); |
| | | |
| | | PageDTO<VolumeProductionzZyglVO> SlGoodsShelfDTO = PageDTO.of(page2, VolumeProductionzZyglVO .class); |
| | |
| | | public VolumeProductionZyglInfoVO getVolumeProductionzZyglnfo(ManagementimgVolumeProductionZyQuery managementimgVolumeProductionZyQuery) { |
| | | SlVolumeProductionZygl byId = this.getById(managementimgVolumeProductionZyQuery.getVolumeProductionzyglId()); |
| | | VolumeProductionZyglInfoVO v= BeanUtils.copyBean(byId, VolumeProductionZyglInfoVO.class); |
| | | SlStoreManagement slStoreManagement2 = slStoreManagementMapper.selectById(byId.getManagementId()); |
| | | v.setZhuren(slStoreManagement2.getDirectorId()); |
| | | v.setZhuguan(slStoreManagement2.getCompetentId()); |
| | | v.setGuanliyuan(slStoreManagement2.getAdministratorId()); |
| | | SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(byId.getManagementId()); |
| | | v.setStoreManagementName(slStoreManagement.getStoreManagementName()); |
| | | SlStoreManagement bslStoreManagement = slStoreManagementMapper.selectById(byId.getBmanagementId()); |
| | |
| | | v.setSysName(data1.getNickName()); |
| | | v.setSysPhone(data1.getPhonenumber()); |
| | | // 查询楼层数据 |
| | | SlStoreManagement slStoreManagement1 = slStoreManagementMapper.selectById(byId.getManagementId()); |
| | | SlStoreManagement slStoreManagement1 = slStoreManagementMapper.selectById(byId.getBmanagementId()); |
| | | List<String> number = new ArrayList<>(); |
| | | for (Integer i = 1; i <= slStoreManagement1.getStoreManagementNumber(); i++) { |
| | | switch (i){ |
| | |
| | | } |
| | | } |
| | | v.setNumber(number); |
| | | |
| | | if (managementimgVolumeProductionZyQuery.getStoreManagementNumber()==null){ |
| | | managementimgVolumeProductionZyQuery.setStoreManagementNumber(1); |
| | | } |
| | | QueryWrapper<SlGoodsShelf> eq = new QueryWrapper<SlGoodsShelf>() |
| | | .eq("del_flag", "0") |
| | | .eq("store_management_id", byId.getManagementId()) |
| | | .eq("store_management_id", byId.getBmanagementId()) |
| | | .eq("store_management_number",managementimgVolumeProductionZyQuery.getStoreManagementNumber()); |
| | | List<SlGoodsShelf> slGoodsShelves = slGoodsShelfMapper.selectList(eq); |
| | | v.setGoodsShelfList(slGoodsShelves); |
| | | // 查询物资列表 |
| | | LambdaQueryWrapper<SlVolumeProductionRk> wrapper2= Wrappers.lambdaQuery(); |
| | | wrapper2.eq(SlVolumeProductionRk::getManagementId,byId.getBmanagementId()); |
| | | if (managementimgVolumeProductionZyQuery.getShelfId() == null){ |
| | | managementimgVolumeProductionZyQuery.setShelfId(slGoodsShelves.get(0).getId()); |
| | | // 根据转移id 查询转移数据 收集入库ids |
| | | LambdaQueryWrapper<SlVolumeProductionZy> wrapper = Wrappers.lambdaQuery(); |
| | | wrapper.eq(SlVolumeProductionZy::getZyglId, byId.getId()); |
| | | wrapper.eq(SlVolumeProductionZy::getDelFlag, 0); |
| | | if (managementimgVolumeProductionZyQuery.getShelfId()==null){ |
| | | if (!slGoodsShelves.isEmpty()){ |
| | | wrapper.eq(SlVolumeProductionZy::getShelfId,slGoodsShelves.get(0).getId()); |
| | | } |
| | | }else{ |
| | | wrapper.eq(SlVolumeProductionZy::getShelfId,managementimgVolumeProductionZyQuery.getShelfId()); |
| | | } |
| | | if (managementimgVolumeProductionZyQuery.getStoreManagementNumber()==null){ |
| | | wrapper2.eq(SlVolumeProductionRk::getStoreManagementNumber,1); |
| | | wrapper.eq(SlVolumeProductionZy::getStoreManagementNumber,1); |
| | | }else{ |
| | | wrapper.eq(SlVolumeProductionZy::getStoreManagementNumber,managementimgVolumeProductionZyQuery.getStoreManagementNumber()); |
| | | } |
| | | wrapper2.eq(SlVolumeProductionRk::getShelfId,managementimgVolumeProductionZyQuery.getShelfId()); |
| | | List<Long> collect = new ArrayList<>(); |
| | | |
| | | if (StringUtils.hasLength(byId.getAuthorizationUrl())){ |
| | | collect = slVolumeProductionZyMapper.selectList(wrapper) |
| | | .stream().map(SlVolumeProductionZy::getScrkId).collect(Collectors.toList()); |
| | | }else{ |
| | | collect = slVolumeProductionZyMapper.selectList(wrapper) |
| | | .stream().map(SlVolumeProductionZy::getRkId).collect(Collectors.toList()); |
| | | } |
| | | // 入库ids |
| | | |
| | | if (collect.isEmpty()){ |
| | | // 如果为空 那么插入-1 不查询数据 |
| | | collect.add(-1L); |
| | | } |
| | | // 查询物资列表 |
| | | LambdaQueryWrapper<SlVolumeProductionRk> wrapper2= Wrappers.lambdaQuery(); |
| | | wrapper2.in(SlVolumeProductionRk::getId,collect); |
| | | wrapper2.eq( SlVolumeProductionRk::getDelFlag,0); |
| | | wrapper2.orderByDesc(SlVolumeProductionRk::getCreateTime); |
| | | List<SlVolumeProductionRk> page1 = slVolumeProductionRkMapper.selectList(wrapper2); |
| | |
| | | .collect(Collectors.toSet()); |
| | | Page<SlVolumeProductionZy> page = new Page<>(managementimgVolumeProductionZyQuery.getPageCurr(), managementimgVolumeProductionZyQuery.getPageSize()); |
| | | LambdaQueryWrapper< SlVolumeProductionZy> wrapper1= Wrappers.lambdaQuery(); |
| | | wrapper1.eq(SlVolumeProductionZy::getDelFlag,0); |
| | | wrapper1.eq(SlVolumeProductionZy::getZyglId,managementimgVolumeProductionZyQuery.getVolumeProductionzyglId()); |
| | | if (goodsSkuIdList.size()>0&&goodsSkuIdList!=null){ |
| | | wrapper1.in(SlVolumeProductionZy::getScrkId,goodsSkuIdList); |
| | | if (managementimgVolumeProductionZyQuery.getShelfId()==null){ |
| | | if (!slGoodsShelves.isEmpty()) { |
| | | wrapper1.eq(SlVolumeProductionZy::getShelfId, slGoodsShelves.get(0).getId()); |
| | | } |
| | | }else{ |
| | | wrapper1.eq(SlVolumeProductionZy::getShelfId,managementimgVolumeProductionZyQuery.getShelfId()); |
| | | } |
| | | if (managementimgVolumeProductionZyQuery.getStoreManagementNumber()==null){ |
| | | wrapper1.eq(SlVolumeProductionZy::getStoreManagementNumber,1); |
| | | }else{ |
| | | wrapper1.eq(SlVolumeProductionZy::getStoreManagementNumber,managementimgVolumeProductionZyQuery.getStoreManagementNumber()); |
| | | } |
| | | |
| | | if (goodsSkuIdList.isEmpty()){ |
| | | goodsSkuIdList.add(-1L); |
| | | } |
| | | // 已经确认了转移 |
| | | if (StringUtils.hasLength(byId.getAuthorizationUrl())){ |
| | | wrapper1.in(SlVolumeProductionZy::getScrkId,goodsSkuIdList); |
| | | |
| | | }else{ |
| | | wrapper1.in(SlVolumeProductionZy::getRkId,goodsSkuIdList); |
| | | |
| | | } |
| | | |
| | | |
| | | wrapper1.eq( SlVolumeProductionZy::getDelFlag,0); |
| | | wrapper1.orderByDesc(SlVolumeProductionZy::getCreateTime); |
| | | Page<SlVolumeProductionZy> page2 = slVolumeProductionZyMapper.selectPage(page, wrapper1); |
| | | PageDTO<com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO> SlGoodsShelfDTO = PageDTO.of(page2, com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO.class); |
| | | List<com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO> list2 = SlGoodsShelfDTO.getList(); |
| | | PageDTO<com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO> sl = PageDTO.of(page2, com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO.class); |
| | | List<com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO> list2 = sl.getList(); |
| | | for(com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO list:list2) { |
| | | SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId()); |
| | | list.setStoreManagementNumber(slVolumeProductionRk.getStoreManagementNumber()); |
| | |
| | | SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(slVolumeProductionRk.getMaterialsId()); |
| | | list.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName()); |
| | | list.setIsConsume(slGoodsMaterials.getIsConsume()); |
| | | SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(slVolumeProductionRk.getShelfId()); |
| | | SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(list.getShelfId()); |
| | | list.setGoodsShelfName(slGoodsShelf.getGoodsShelfName()); |
| | | list.setShelfId(slGoodsShelf.getId()); |
| | | if(list.getScrkId()!=null){ |
| | | SlVolumeProductionRk slVolumeProductionRk1 = slVolumeProductionRkMapper.selectById(list.getScrkId()); |
| | | list.setStoreManagementNumber(slVolumeProductionRk1.getStoreManagementNumber()); |
| | | list.setRkNumber(slVolumeProductionRk1.getRkNumber()); |
| | | list.setZyNumber(slVolumeProductionRk1.getRkNumber()); |
| | | } |
| | | list.setZkNum(list.getRepertoryZhai()); |
| | | } |
| | | v.setList(SlGoodsShelfDTO); |
| | | v.setList(sl); |
| | | |
| | | return v; |
| | | } |
| | | |
| | | @Override |
| | | public VolumeProductionZyglInventoryVO getVolumeProductionZyglnventory(Integer id) { |
| | | public VolumeProductionZyglInventoryVO getVolumeProductionZyglnventory(String id) { |
| | | SlVolumeProductionZygl byId = this.getById(id); |
| | | VolumeProductionZyglInventoryVO vo = new VolumeProductionZyglInventoryVO(); |
| | | SysUser data = sysUserClient.getSysUser(byId.getId()).getData(); |
| | | |
| | | |
| | | SysUser data = sysUserClient.getSysUser(byId.getSysId()).getData(); |
| | | vo.setSysPhone(data.getPhonenumber()); |
| | | vo.setSysName(data.getNickName()); |
| | | vo.setStartiTime(byId.getStartiTime()); |
| | |
| | | } |
| | | |
| | | @Override |
| | | public void zy(Integer id) { |
| | | public void zy(Long id,String authorizationUrl) { |
| | | SlVolumeProductionZygl byId = this.getById(id); |
| | | byId.setAuthorizationUrl(authorizationUrl); |
| | | byId.setAuditStatus(6); |
| | | byId.setPresentState(4); |
| | | byId.setEndTime(new Date()); |
| | | this.updateById(byId); |
| | | LambdaQueryWrapper<SlVolumeProductionZy> wrapper1 = Wrappers.lambdaQuery(); |
| | | wrapper1.eq(SlVolumeProductionZy::getZyglId, id); |
| | | wrapper1.eq(SlVolumeProductionZy::getDelFlag, 0); |
| | | wrapper1.orderByDesc(SlVolumeProductionZy::getCreateTime); |
| | | List<SlVolumeProductionZy> page2 = slVolumeProductionZyMapper.selectList(wrapper1); |
| | | for (SlVolumeProductionZy zy:page2){ |
| | | SlVolumeProductionRk slVolumeProductionRk=new SlVolumeProductionRk(); |
| | | slVolumeProductionRk.setMaterialsId(zy.getMaterialsId()); |
| | | slVolumeProductionRk.setStoreManagementNumber(zy.getStoreManagementNumber()); |
| | | slVolumeProductionRk.setManagementId(byId.getBmanagementId()); |
| | | slVolumeProductionRk.setRkNumber("CD-"+new Date().getTime()); |
| | | slVolumeProductionRk.setRkNum(Long.valueOf(zy.getZyNum())); |
| | | slVolumeProductionRk.setShelfId(zy.getShelfId()); |
| | | slVolumeProductionRk.setRepertoryZhai(Long.valueOf(zy.getZyNum())); |
| | | slVolumeProductionRk.setCreateTime(new Date()); |
| | | slVolumeProductionRkMapper.insert(slVolumeProductionRk); |
| | | zy.setScrkId(slVolumeProductionRk.getId()); |
| | | slVolumeProductionZyMapper.updateById(zy); |
| | | // 新入库ids |
| | | List<Long> collect = page2.stream().map(SlVolumeProductionZy::getScrkId).collect(Collectors.toList()); |
| | | for (SlVolumeProductionZy zy : page2) { |
| | | // 确认转移之后扣库存 |
| | | SlVolumeProductionRk slVolumeProductionRk1 = slVolumeProductionRkMapper.selectById(zy.getRkId()); |
| | | slVolumeProductionRk1.setRepertoryZhai(slVolumeProductionRk1.getRepertoryZhai()-Long.valueOf(zy.getZyNum())); |
| | | slVolumeProductionRkMapper.updateById(slVolumeProductionRk1); |
| | | // 给被转移入仓库加库存数量 |
| | | LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery(); |
| | | wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,zy.getMaterialsId()); |
| | | wrapper2.eq(ManagementGoodsMaterials::getManagementId,byId.getBmanagementId()); |
| | |
| | | Long re1=repertoryZhai+Long.valueOf(zy.getZyNum()); |
| | | managementGoodsMaterials.setRepertorySum(re); |
| | | managementGoodsMaterials.setRepertoryZhai(re1); |
| | | managementGoodsMaterials.setRepertoryChu(0); |
| | | managementGoodsMaterialsMapper.updateById(managementGoodsMaterials); |
| | | }else{ |
| | | ManagementGoodsMaterials managementGoodsMaterials1=new ManagementGoodsMaterials(); |
| | |
| | | managementGoodsMaterials1.setGoodsMaterialsId(zy.getMaterialsId()); |
| | | managementGoodsMaterials1.setRepertoryZhai(Long.valueOf(zy.getZyNum())); |
| | | managementGoodsMaterials1.setRepertorySum(Long.valueOf(zy.getZyNum())); |
| | | managementGoodsMaterials1.setRepertoryChu(0); |
| | | managementGoodsMaterials1.setCreateTime(new Date()); |
| | | managementGoodsMaterialsMapper.insert(managementGoodsMaterials1); |
| | | } |
| | | // 给转移仓库减去库存数量 |
| | | LambdaQueryWrapper<ManagementGoodsMaterials> wrapper3 = Wrappers.lambdaQuery(); |
| | | wrapper3.eq(ManagementGoodsMaterials::getGoodsMaterialsId,zy.getMaterialsId()); |
| | | wrapper3.eq(ManagementGoodsMaterials::getManagementId,byId.getManagementId()); |
| | | wrapper3.eq(ManagementGoodsMaterials::getDelFlag, 0); |
| | | ManagementGoodsMaterials managementGoodsMaterials1 = managementGoodsMaterialsMapper.selectOne(wrapper3); |
| | | if (managementGoodsMaterials1!=null){ |
| | | Long repertorySum = managementGoodsMaterials1.getRepertorySum(); |
| | | Long repertoryZhai = managementGoodsMaterials1.getRepertoryZhai(); |
| | | Long re=repertorySum-Long.valueOf(zy.getZyNum()); |
| | | Long re1=repertoryZhai-Long.valueOf(zy.getZyNum()); |
| | | // managementGoodsMaterials1.setRepertorySum(re); |
| | | managementGoodsMaterials1.setRepertoryZhai(re1); |
| | | managementGoodsMaterials1.setRepertoryChu(managementGoodsMaterials1.getRepertoryChu()+zy.getZyNum()); |
| | | managementGoodsMaterialsMapper.updateById(managementGoodsMaterials1); |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |