From 87e07ac8b8f1868eb4302fac73dfc93c5417f977 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期二, 30 七月 2024 11:06:14 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/ForestFirePrevention

---
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesServiceImpl.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 49 insertions(+), 8 deletions(-)

diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesServiceImpl.java
index 8a0468c..29911c5 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesServiceImpl.java
@@ -3,29 +3,38 @@
 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.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.ruoyi.common.core.constant.SecurityConstants;
 import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.enums.ClientTypeEnum;
 import com.ruoyi.common.core.utils.page.PageDTO;
 import com.ruoyi.management.domain.InventoriesSupplies;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.management.domain.SlGoodsShelf;
 import com.ruoyi.management.domain.SlStoreManagement;
+import com.ruoyi.management.domain.SlVolumeProductionRk;
 import com.ruoyi.management.domain.dto.InventoriesSuppDTO;
 import com.ruoyi.management.domain.dto.InventoriesSuppliesQuery;
+import com.ruoyi.management.domain.dto.ScanCodesDTO;
 import com.ruoyi.management.domain.vo.InventoriesSuppliesVO;
 import com.ruoyi.management.domain.vo.SlGoodsMaterialsVO;
 import com.ruoyi.management.domain.vo.SlGoodsShelfVO;
 import com.ruoyi.management.mapper.InventoriesSuppliesMapper;
 import com.ruoyi.management.mapper.SlStoreManagementMapper;
+import com.ruoyi.management.mapper.SlVolumeProductionRkMapper;
 import com.ruoyi.management.service.InventoriesSuppliesService;
+import com.ruoyi.management.service.SlVolumeProductionRkService;
+import com.ruoyi.system.api.constants.NotificationTypeConstant;
 import com.ruoyi.system.api.domain.SysUser;
+import com.ruoyi.system.api.domain.WebsocketMessageDTO;
 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.Date;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
+import java.util.*;
+import java.util.concurrent.ConcurrentHashMap;
 import java.util.stream.Collectors;
 
 /**
@@ -45,13 +54,18 @@
     @Resource
     private SysUserClient sysUserClient;
 
+    @Resource
+    private SlVolumeProductionRkMapper slVolumeProductionRkMapper;
+
+    private static final ObjectMapper objectMapper = new ObjectMapper();
+
     @Override
     public PageDTO<InventoriesSuppliesVO> getInventoriesSuppliesList(InventoriesSuppliesQuery inventoriesSuppliesQuery) {
         LambdaQueryWrapper<SlStoreManagement> wrapper= Wrappers.lambdaQuery();
-        if (inventoriesSuppliesQuery.getStoreManagementName()!=null){
+        if (inventoriesSuppliesQuery.getStoreManagementName()!=null&&inventoriesSuppliesQuery.getStoreManagementName()!=""){
             wrapper.eq(SlStoreManagement::getStoreManagementName,inventoriesSuppliesQuery.getStoreManagementName());
         }
-        if (inventoriesSuppliesQuery.getStoreManagementNo()!=null){
+        if (inventoriesSuppliesQuery.getStoreManagementNo()!=null&&inventoriesSuppliesQuery.getStoreManagementNo()!=""){
         wrapper.eq(SlStoreManagement::getStoreManagementNo,inventoriesSuppliesQuery.getStoreManagementNo());
         }
         List<SlStoreManagement> slStoreManagements = slStoreManagementMapper.selectList(wrapper);
@@ -62,7 +76,9 @@
 
         Page<InventoriesSupplies> page = new Page<>(inventoriesSuppliesQuery.getPageCurr(), inventoriesSuppliesQuery.getPageSize());
         LambdaQueryWrapper< InventoriesSupplies> wrapper1= Wrappers.lambdaQuery();
-        wrapper1.like(InventoriesSupplies::getPdrName,inventoriesSuppliesQuery.getPdrName());
+        if (inventoriesSuppliesQuery.getPdrName()!=null&&inventoriesSuppliesQuery.getPdrName()!=""){
+            wrapper1.like(InventoriesSupplies::getPdrName,inventoriesSuppliesQuery.getPdrName());
+        }
         if (slStoreManagementIdList.size()>0){
             wrapper1.in(InventoriesSupplies::getMaterialsId,slStoreManagementIdList);
         }else {
@@ -74,7 +90,7 @@
 
             wrapper1.gt(InventoriesSupplies::getPdTime, inventoriesSuppliesQuery.getStartpdTime());
         }
-        if (inventoriesSuppliesQuery.getEndpdTime()!=null){
+        if (inventoriesSuppliesQuery.getEndpdTime()!=null&&inventoriesSuppliesQuery.getPdrName()!=""){
             wrapper1.le(InventoriesSupplies::getPdTime, inventoriesSuppliesQuery.getEndpdTime());
        }
 
@@ -103,4 +119,29 @@
         inventoriesSupplies.setPdrName(sysUser.getData().getNickName());
         this.save(inventoriesSupplies);
     }
+
+    @Override
+    public void scanCodes(String rkNumber) {
+        LambdaQueryWrapper< SlVolumeProductionRk> wrapper1= Wrappers.lambdaQuery();
+        wrapper1.like(SlVolumeProductionRk::getRkNumber,rkNumber);
+        wrapper1.eq( SlVolumeProductionRk::getDelFlag,0);
+        wrapper1.orderByDesc(SlVolumeProductionRk::getCreateTime);
+        SlVolumeProductionRk page2 = slVolumeProductionRkMapper.selectOne(wrapper1);
+        if (page2.getSmerwmNum()>0){
+            Integer i=page2.getSmerwmNum()-1;
+            page2.setSmerwmNum(i);
+            slVolumeProductionRkMapper.updateById(page2);
+        }
+        Map<String, Object> map = new ConcurrentHashMap<>();
+        map.put("notification_type", NotificationTypeConstant.SCANCODES);
+        map.put("SlVolumeProductionRk",page2);
+        String msg = null;
+        try {
+            msg = objectMapper.writeValueAsString(map);
+        } catch (JsonProcessingException e) {
+        }
+        sysUserClient.pushAll(msg, SecurityConstants.INNER);
+    }
+
+
 }

--
Gitblit v1.7.1