From b5ef65d0103a71dc7af2b9be6d2ac43aca5bb726 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期二, 27 八月 2024 08:59:57 +0800 Subject: [PATCH] 代码提交 bug解决 --- ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java | 279 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 277 insertions(+), 2 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 eece32f..8a664ee 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,10 +1,28 @@ package com.ruoyi.management.service.impl; -import com.ruoyi.management.domain.SlVolumeProductionCkgl; -import com.ruoyi.management.mapper.SlVolumeProductionCkglMapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.common.core.utils.page.BeanUtils; +import com.ruoyi.common.core.utils.page.PageDTO; +import com.ruoyi.common.security.utils.SecurityUtils; +import com.ruoyi.management.domain.*; +import com.ruoyi.management.domain.dto.VolumeProductionCkglDTO; +import com.ruoyi.management.domain.dto.getslVolumeProductionCkglQuery; +import com.ruoyi.management.domain.vo.*; +import com.ruoyi.management.mapper.*; import com.ruoyi.management.service.SlVolumeProductionCkglService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.system.api.domain.SysUser; +import com.ruoyi.system.api.domain.getVolumeProductionRkQuery; +import com.ruoyi.system.api.feignClient.LogClient; +import com.ruoyi.system.api.feignClient.SysUserClient; +import io.swagger.models.auth.In; import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.*; +import java.util.stream.Collectors; /** * <p> @@ -16,5 +34,262 @@ */ @Service public class SlVolumeProductionCkglServiceImpl extends ServiceImpl<SlVolumeProductionCkglMapper, SlVolumeProductionCkgl> implements SlVolumeProductionCkglService { + @Resource + private SysUserClient sysUserClient; + @Resource + private SlStoreManagementMapper slStoreManagementMapper; + + @Resource + private SlVolumeProductionCkMapper slVolumeProductionCkMapper; + + @Resource + private SlVolumeProductionRkMapper slVolumeProductionRkMapper; + + @Resource + private SlGoodsMaterialsMapper slGoodsMaterialsMapper; + + @Resource + private SlGoodsShelfMapper slGoodsShelfMapper; + + @Resource + private ManagementGoodsMaterialsMapper managementGoodsMaterialsMapper; + + @Resource + private LogClient logClient; + + @Override + public PageDTO<VolumeProductionCkglVO> getslVolumeProductionCkglList(getslVolumeProductionCkglQuery VolumeProductionCkglQuery) { + + Page<SlVolumeProductionCkgl> page = new Page<>(VolumeProductionCkglQuery.getPageCurr(), VolumeProductionCkglQuery.getPageSize()); + getVolumeProductionRkQuery getVolume=new getVolumeProductionRkQuery(); + getVolume.setSupplierPhone(VolumeProductionCkglQuery.getSupplierPhone()); + getVolume.setSupplierName(VolumeProductionCkglQuery.getSupplierName()); + List<SysUser> data1 = sysUserClient.getUserSupplierList(getVolume).getData(); + 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()); + } + if (VolumeProductionCkglQuery.getAuditStatus()!=null &&VolumeProductionCkglQuery.getAuditStatus()!=0){ + wrapper1.eq(SlVolumeProductionCkgl::getAuditStatus,VolumeProductionCkglQuery.getAuditStatus()); + + } + if (goodsSkuIdList.size()>0){ + wrapper1.in(SlVolumeProductionCkgl::getSysId,goodsSkuIdList); + } + wrapper1.eq( SlVolumeProductionCkgl::getDelFlag,0); + wrapper1.orderByDesc(SlVolumeProductionCkgl::getCreateTime); + Page<SlVolumeProductionCkgl> page2 = this.page(page, wrapper1); + + PageDTO<VolumeProductionCkglVO> SlGoodsShelfDTO = PageDTO.of(page2, VolumeProductionCkglVO .class); + List<VolumeProductionCkglVO> list2 = SlGoodsShelfDTO.getList(); + for(VolumeProductionCkglVO list:list2){ + SysUser data = sysUserClient.getSysUser(list.getSysId()).getData(); + list.setNickName(data.getNickName()); + list.setPhonenumber(data.getPhonenumber()); + SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(list.getManagementId()); + list.setStoreManagementName(slStoreManagement.getStoreManagementName()); + } + return SlGoodsShelfDTO; + } + + @Override + public String addslVolumeProductionCkgl(VolumeProductionCkglDTO volumeProductionCkglDTO) { + Long userid = SecurityUtils.getUserId(); + if (volumeProductionCkglDTO.getId()==null){ + SlVolumeProductionCkgl slVolumeProductionRkgl=new SlVolumeProductionCkgl(); + slVolumeProductionRkgl.setAttachmentUrl(volumeProductionCkglDTO.getAttachmentUrl()); + slVolumeProductionRkgl.setAuthorizationUrl(volumeProductionCkglDTO.getAuthorization()); + slVolumeProductionRkgl.setSource(volumeProductionCkglDTO.getSource()); + slVolumeProductionRkgl.setAuditStatus(1); + slVolumeProductionRkgl.setManagementId(volumeProductionCkglDTO.getManagementId()); + slVolumeProductionRkgl.setPresentState(1); + slVolumeProductionRkgl.setSource(volumeProductionCkglDTO.getSource()); + slVolumeProductionRkgl.setStartiTime(new Date()); + slVolumeProductionRkgl.setSysId(userid); + slVolumeProductionRkgl.setCreateTime(new Date()); + this.save(slVolumeProductionRkgl); + return slVolumeProductionRkgl.getId().toString(); + }else{ + SlVolumeProductionCkgl byId = this.getById(volumeProductionCkglDTO.getId()); + if (volumeProductionCkglDTO.getSource()!=null){ + byId.setSource(volumeProductionCkglDTO.getSource()); + } + if (volumeProductionCkglDTO.getAttachmentUrl()!=null){ + byId.setAttachmentUrl(volumeProductionCkglDTO.getAttachmentUrl()); + } + if (volumeProductionCkglDTO.getAuthorization()!=null){ + byId.setAuthorizationUrl(volumeProductionCkglDTO.getAuthorization()); + } + this.updateById(byId); + return volumeProductionCkglDTO.getId().toString(); + } + } + + @Override + public VolumeProductionCkglInfoVO getVolumeProductionCkglnfo(Long id) { + SlVolumeProductionCkgl byId = this.getById(id); + VolumeProductionCkglInfoVO v= BeanUtils.copyBean(byId, VolumeProductionCkglInfoVO.class); + v.setAuthorization(byId.getAuthorizationUrl()); + SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(byId.getManagementId()); + v.setStoreManagementName(slStoreManagement.getStoreManagementName()); + v.setZhuren(slStoreManagement.getDirectorId()); + v.setZhuguan(slStoreManagement.getCompetentId()); + v.setGuanliyuan(slStoreManagement.getAdministratorId()); + v.setReasonsRefusal(byId.getReasonsRefusal()); + SysUser data1 = sysUserClient.getSysUser(Long.valueOf(byId.getSysId())).getData(); + if (data1!=null){ + v.setSysName(data1.getNickName()); + v.setSysPhone(data1.getPhonenumber()); + } + return v; + } + + @Override + public VolumeProductionCkglInventoryVO getVolumeProductionCkglInventory(Long id) { + SlVolumeProductionCkgl byId = this.getById(id); + VolumeProductionCkglInventoryVO vo = new VolumeProductionCkglInventoryVO(); + SysUser data = sysUserClient.getSysUser(byId.getSysId()).getData(); + vo.setSysPhone(data.getPhonenumber()); + vo.setSysName(data.getNickName()); + vo.setStartiTime(byId.getStartiTime()); + SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(byId.getManagementId()); + vo.setStoreManagementName(slStoreManagement.getStoreManagementName()); + String directorId = slStoreManagement.getDirectorId(); + List<String> stri = Arrays.asList(directorId.split(",")); + String str1 = ""; + if (stri.size() > 0) { + for (String str : stri) { + SysUser data1 = sysUserClient.getSysUser(Long.valueOf(str)).getData(); + str1 += data1.getNickName() + ","; + } + } + vo.setDirectorName(str1.substring(0, str1.length() - 1)); + + String competentId = slStoreManagement.getCompetentId(); + List<String> stri1 = Arrays.asList(competentId.split(",")); + String str11 = ""; + if (stri1.size() > 0) { + for (String str : stri1) { + SysUser data1 = sysUserClient.getSysUser(Long.valueOf(str)).getData(); + str11 += data1.getNickName() + ","; + } + } + vo.setCompetentName(str11.substring(0, str11.length() - 1)); + + String administratorId = slStoreManagement.getAdministratorId(); + List<String> stri11 = Arrays.asList(administratorId.split(",")); + String str111 = ""; + if (stri11.size() > 0) { + for (String str : stri11) { + SysUser data1 = sysUserClient.getSysUser(Long.valueOf(str)).getData(); + str111 += data1.getNickName() + ","; + } + } + vo.setAdministratorName(str111.substring(0, str111.length() - 1)); + + + LambdaQueryWrapper< SlVolumeProductionCk> wrapper2= Wrappers.lambdaQuery(); + wrapper2.eq(SlVolumeProductionCk::getCkglId,id); + wrapper2.eq( SlVolumeProductionCk::getDelFlag,0); + wrapper2.orderByDesc(SlVolumeProductionCk::getCreateTime); + List<SlVolumeProductionCk> page2 = slVolumeProductionCkMapper.selectList(wrapper2); + List<ManagementimgVolumeProductionCkVO> SlGoodsShelfDTO=new ArrayList<>(); + for(SlVolumeProductionCk list1:page2) { + ManagementimgVolumeProductionCkVO list=new ManagementimgVolumeProductionCkVO(); + list.setId(list1.getId()); + list.setCkNum(list1.getCkNum()); + SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list1.getRkId()); + list.setStoreManagementNumber(slVolumeProductionRk.getStoreManagementNumber()); + list.setRkNumber(slVolumeProductionRk.getRkNumber()); + list.setRepertoryZhai(slVolumeProductionRk.getRepertoryZhai()); + SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(slVolumeProductionRk.getMaterialsId()); + list.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName()); + list.setIsConsume(slGoodsMaterials.getIsConsume()); + SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(slVolumeProductionRk.getShelfId()); + list.setGoodsShelfName(slGoodsShelf.getGoodsShelfName()); + + SlGoodsShelfDTO.add(list); + } + vo.setManagementimgVolumeProductionCkVOList(SlGoodsShelfDTO); + return vo; + } + + @Override + public void ck(Long id) { + LambdaQueryWrapper<SlVolumeProductionCk> wrapper1 = Wrappers.lambdaQuery(); + wrapper1.eq(SlVolumeProductionCk::getCkglId, id); + wrapper1.eq(SlVolumeProductionCk::getDelFlag, 0); + wrapper1.orderByDesc(SlVolumeProductionCk::getCreateTime); + List<SlVolumeProductionCk> page2 = slVolumeProductionCkMapper.selectList(wrapper1); + for (SlVolumeProductionCk list : page2) { + list.setCkTime(new Date()); + slVolumeProductionCkMapper.updateById(list); + SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId()); + Long num =slVolumeProductionRk.getRepertoryZhai()-Long.valueOf(list.getCkNum()); + slVolumeProductionRk.setRepertoryZhai(num); + slVolumeProductionRkMapper.updateById(slVolumeProductionRk); + LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery(); + wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,list.getMaterialsId()); + wrapper2.eq(ManagementGoodsMaterials::getManagementId,slVolumeProductionRk.getManagementId()); + wrapper2.eq(ManagementGoodsMaterials::getDelFlag, 0); + ManagementGoodsMaterials managementGoodsMaterials = managementGoodsMaterialsMapper.selectOne(wrapper2); + if (managementGoodsMaterials!=null){ + Long repertoryZhai = managementGoodsMaterials.getRepertoryZhai(); + Long re1=repertoryZhai-Long.valueOf(list.getCkNum()); + Integer num1= managementGoodsMaterials.getRepertoryChu()+list.getCkNum(); + managementGoodsMaterials.setRepertoryZhai(re1); + managementGoodsMaterials.setCheckNum(num1); + managementGoodsMaterialsMapper.updateById(managementGoodsMaterials); + } + } + SlVolumeProductionCkgl byId = this.getById(id); + byId.setAuditStatus(6); + this.updateById(byId); + logClient.savelong1(); + + } + + @Override + public void gh(Long id) { + LambdaQueryWrapper<SlVolumeProductionCk> wrapper1 = Wrappers.lambdaQuery(); + wrapper1.eq(SlVolumeProductionCk::getCkglId, id); + wrapper1.eq(SlVolumeProductionCk::getDelFlag, 0); + wrapper1.orderByDesc(SlVolumeProductionCk::getCreateTime); + List<SlVolumeProductionCk> page2 = slVolumeProductionCkMapper.selectList(wrapper1); + for (SlVolumeProductionCk list : page2) { + list.setIsGh(2); + list.setGhTime(new Date()); + slVolumeProductionCkMapper.updateById(list); + SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId()); + Long num =slVolumeProductionRk.getRepertoryZhai()+Long.valueOf(list.getGuihNum()); + slVolumeProductionRk.setRepertoryZhai(num); + slVolumeProductionRkMapper.updateById(slVolumeProductionRk); + LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery(); + wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,list.getMaterialsId()); + wrapper2.eq(ManagementGoodsMaterials::getManagementId,slVolumeProductionRk.getManagementId()); + wrapper2.eq(ManagementGoodsMaterials::getDelFlag, 0); + ManagementGoodsMaterials managementGoodsMaterials = managementGoodsMaterialsMapper.selectOne(wrapper2); + if (managementGoodsMaterials!=null){ + Long repertoryZhai = managementGoodsMaterials.getRepertoryZhai(); + Long re1=repertoryZhai+Long.valueOf(list.getGuihNum()); + Integer m=managementGoodsMaterials.getCheckNum()-list.getCkNum(); + Integer m1=list.getCkNum()-list.getGuihNum(); + Integer m2=managementGoodsMaterials.getRepertoryYishi()+m1; + managementGoodsMaterials.setRepertoryChu(m); + managementGoodsMaterials.setRepertoryZhai(re1); + managementGoodsMaterials.setRepertoryYishi(m2); + managementGoodsMaterialsMapper.updateById(managementGoodsMaterials); + } + } + SlVolumeProductionCkgl byId = this.getById(id); + byId.setAuditStatus(7); + byId.setPresentState(4); + byId.setEndTime(new Date()); + this.updateById(byId); + } } -- Gitblit v1.7.1