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/SlEquipmentServiceImpl.java | 66 ++++++++++++++++++++++++++------ 1 files changed, 53 insertions(+), 13 deletions(-) diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlEquipmentServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlEquipmentServiceImpl.java index 9fbdf4c..3b5cd02 100644 --- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlEquipmentServiceImpl.java +++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlEquipmentServiceImpl.java @@ -1,9 +1,11 @@ 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.utils.page.PageDTO; +import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.management.domain.SlEquipment; import com.ruoyi.management.domain.SlGoodsMaterials; import com.ruoyi.management.domain.SlStoreManagement; @@ -19,10 +21,8 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; +import java.util.*; +import java.util.stream.Collectors; /** * <p> @@ -37,15 +37,18 @@ @Resource private SlStoreManagementMapper slStoreManagementMapper; + @Resource + private SlEquipmentMapper slEquipmentMapper; @Override public PageDTO<SlEquipmentVO> getSlEquipmentList(SlEquipmentQuery slEquipmentQuery) { + Page<SlEquipment> page = new Page<>(slEquipmentQuery.getPageCurr(), slEquipmentQuery.getPageSize()); LambdaQueryWrapper< SlEquipment> wrapper= Wrappers.lambdaQuery(); if(slEquipmentQuery.getEquipmentName()!=null&&slEquipmentQuery.getEquipmentName()!=""){ wrapper.like(SlEquipment::getEquipmentName,slEquipmentQuery.getEquipmentName()); } - if(slEquipmentQuery.getEquipmentName()!=null&&slEquipmentQuery.getType()!=0){ + if(slEquipmentQuery.getType()!=null&&slEquipmentQuery.getType()!=0){ wrapper.eq(SlEquipment::getType,slEquipmentQuery.getType()); } wrapper.eq( SlEquipment::getDelFlag,0); @@ -69,16 +72,33 @@ } @Override - public void addSlEquipment(SlEquipmentDTO slEquipmentDTO) { + public AjaxResult addSlEquipment(SlEquipmentDTO slEquipmentDTO) { + if (slEquipmentDTO.getId()==null){ + List<SlEquipment> list = this.list(new QueryWrapper<SlEquipment>() + .eq("type", slEquipmentDTO.getType()) + .eq("del_flag","0") + .eq("equipment_num", slEquipmentDTO.getEquipmentNum())); + if (!list.isEmpty()){ + return AjaxResult.error("当前设备已存在相同设备编号"); + } SlEquipment slEquipment=new SlEquipment(); slEquipment.setEquipmentName(slEquipmentDTO.getEquipmentName()); slEquipment.setEquipmentNum(slEquipmentDTO.getEquipmentNum()); slEquipment.setType(slEquipmentDTO.getType()); slEquipment.setManagementId(slEquipmentDTO.getManagementId()); + slEquipment.setCreateTime(new Date()); this.save(slEquipment); }else{ SlEquipment byId = this.getById(slEquipmentDTO.getId()); + List<SlEquipment> list = this.list(new QueryWrapper<SlEquipment>() + .eq("type", slEquipmentDTO.getType()) + .ne("id",slEquipmentDTO.getId()) + .eq("del_flag","0") + .eq("equipment_num", slEquipmentDTO.getEquipmentNum())); + if (!list.isEmpty()){ + return AjaxResult.error("当前设备已存在相同设备编号"); + } if (slEquipmentDTO.getEquipmentName()!=null){ byId.setEquipmentName(slEquipmentDTO.getEquipmentName()); } @@ -93,6 +113,7 @@ } this.updateById(byId); } + return AjaxResult.success(); } @Override @@ -120,28 +141,47 @@ @Override public Integer getequipmente(SeBei seBei) { + // 仓库ids + List<Long> collect = slEquipmentMapper.selectList(new QueryWrapper<SlEquipment>() + .eq("del_flag", "0") + .eq("equipment_num", seBei.getSebei()) + ).stream().map(SlEquipment::getManagementId).collect(Collectors.toList()); + if (collect.isEmpty()){ + return 9; + } LambdaQueryWrapper< SlStoreManagement> wrapper= Wrappers.lambdaQuery(); - List<Long> arr=new ArrayList<>(); wrapper.eq(SlStoreManagement::getDelFlag,0); - wrapper.eq(SlStoreManagement::getAdministratorId,seBei.getUserId()); List<SlStoreManagement> page = slStoreManagementMapper.selectList(wrapper); for (SlStoreManagement a:page){ - arr.add(a.getId()); + List<String> list = Arrays.asList(a.getAdministratorId().split(",")); + if (list.contains(seBei.getUserId().toString())){ + arr.add(a.getId()); + } } LambdaQueryWrapper< SlStoreManagement> wrapper1= Wrappers.lambdaQuery(); wrapper1.eq(SlStoreManagement::getDelFlag,0); - wrapper1.eq(SlStoreManagement::getCompetentId,seBei.getUserId()); + if (!collect.isEmpty()){ + wrapper1.in(SlStoreManagement::getId,collect); + } List<SlStoreManagement> page1 = slStoreManagementMapper.selectList(wrapper1); for (SlStoreManagement a1:page1){ - arr.add(a1.getId()); + List<String> list = Arrays.asList(a1.getCompetentId().split(",")); + if (list.contains(seBei.getUserId().toString())){ + arr.add(a1.getId()); + } } LambdaQueryWrapper< SlStoreManagement> wrapper2= Wrappers.lambdaQuery(); wrapper2.eq(SlStoreManagement::getDelFlag,0); - wrapper2.eq(SlStoreManagement::getDirectorId,seBei.getUserId()); + if (!collect.isEmpty()){ + wrapper2.in(SlStoreManagement::getId,collect); + } List<SlStoreManagement> page2 = slStoreManagementMapper.selectList(wrapper2); for (SlStoreManagement a2:page2){ - arr.add(a2.getId()); + List<String> list = Arrays.asList(a2.getDirectorId().split(",")); + if (list.contains(seBei.getUserId().toString())){ + arr.add(a2.getId()); + } } Set<Long> set = new HashSet<>(arr); arr.clear(); -- Gitblit v1.7.1