From 6de6bb0fc1bf4cd5535e33484ad96b0f273b2b9b Mon Sep 17 00:00:00 2001
From: zhangfeng <1603559716@qq.com>
Date: 星期二, 27 九月 2022 18:05:47 +0800
Subject: [PATCH] 新增根据ids查询应急物资的Rpc接口

---
 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencySuppliesServiceImpl.java                 |   15 +++++++
 emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencySuppliesInfoMapper.xml                                   |   10 +++++
 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencySuppliesController.java                    |    8 ++++
 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencySuppliesInfoRepository.java                |    3 +
 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencySuppliesService.java                          |    3 +
 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencySuppliesInfoServiceImpl.java |   12 +++++
 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/enums/EmergencyResultCodes.java                                |    2 +
 emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/EmergencyRpcAPi.java                                   |    4 ++
 emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencySuppliesInfoService.java          |    2 +
 emergency/emergency-rpc-provider/src/main/java/com/gkhy/safePlatform/emergency/rpc/provider/EmergencyRpcProvider.java                    |   11 +++++
 10 files changed, 69 insertions(+), 1 deletions(-)

diff --git a/emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/EmergencyRpcAPi.java b/emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/EmergencyRpcAPi.java
index d2ca7b9..990f648 100644
--- a/emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/EmergencyRpcAPi.java
+++ b/emergency/emergency-rpc-api/src/main/java/com/gkhy/safePlatform/emergency/rpc/api/EmergencyRpcAPi.java
@@ -28,4 +28,8 @@
 
     //RPC接口--5、按照物资类型获取列表
     ResultVO<List<EmergencySuppliesTypeRPCResp>> emergencySuppliesList(ContextCacheUser currentUser);
+
+    //RPC接口--6、根据ids获取库存数量
+    ResultVO<List<EmergencySuppliesRPCResp>> listCountByIds(ContextCacheUser currentUser,List<Long> ids);
+
 }
diff --git a/emergency/emergency-rpc-provider/src/main/java/com/gkhy/safePlatform/emergency/rpc/provider/EmergencyRpcProvider.java b/emergency/emergency-rpc-provider/src/main/java/com/gkhy/safePlatform/emergency/rpc/provider/EmergencyRpcProvider.java
index c0647ae..c7b71ab 100644
--- a/emergency/emergency-rpc-provider/src/main/java/com/gkhy/safePlatform/emergency/rpc/provider/EmergencyRpcProvider.java
+++ b/emergency/emergency-rpc-provider/src/main/java/com/gkhy/safePlatform/emergency/rpc/provider/EmergencyRpcProvider.java
@@ -71,4 +71,15 @@
         }
         return new ResultVO<>(ResultCodes.OK,typeRPCRespList);
     }
+
+    @Override
+    public ResultVO<List<EmergencySuppliesRPCResp>> listCountByIds(ContextCacheUser currentUser,List<Long> ids) {
+        List<EmergencySuppliesRespDTO> list = (List<EmergencySuppliesRespDTO>)emergencySuppliesService.listCountByIds(currentUser,ids).getData();
+        List<EmergencySuppliesRPCResp> emergencySuppliesRPCRespList = null;
+        if(!CollectionUtils.isEmpty(list)){
+            emergencySuppliesRPCRespList = BeanCopyUtils.copyBeanList(list, EmergencySuppliesRPCResp.class);
+        }
+        
+        return new ResultVO<>(ResultCodes.OK,emergencySuppliesRPCRespList);
+    }
 }
diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencySuppliesController.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencySuppliesController.java
index 2d67e62..595dea3 100644
--- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencySuppliesController.java
+++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/controller/EmergencySuppliesController.java
@@ -75,6 +75,14 @@
         ContextCacheUser currentUser = (ContextCacheUser) authentication.getPrincipal();
         return emergencySuppliesService.emergencySuppliesList(currentUser);
     }
+    /**
+     * 应急物资-根据ids获取数据(为特殊作业提供数据)
+     */
+    @RequestMapping(value = "/listCountByIds",method = RequestMethod.POST)
+    public ResultVO<List<EmergencySuppliesRespDTO>> listCountByIds(Authentication authentication,@RequestBody List<Long> ids){
+        ContextCacheUser currentUser = (ContextCacheUser) authentication.getPrincipal();
+        return emergencySuppliesService.listCountByIds(currentUser,ids);
+    }
 
 
 }
diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/enums/EmergencyResultCodes.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/enums/EmergencyResultCodes.java
index d3af0f7..901b13a 100644
--- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/enums/EmergencyResultCodes.java
+++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/enums/EmergencyResultCodes.java
@@ -96,6 +96,8 @@
 
     SUPPLIES_MAINTAIN_NOT_EXIST("S1006" , "应急物资保养不存在"),
 
+    SUPPLIES_PRAM_NULL("S1001" , "应急物资参数不可为空"),
+
     APPROVE_RELATE_ID_NULL("A1001","审批业务类型不可为空"),
 
     APPROVE_RELATE_TYPE_NULL("A1002","审批业务对象不可为空"),
diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencySuppliesInfoRepository.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencySuppliesInfoRepository.java
index d5be3bb..8aec9d6 100644
--- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencySuppliesInfoRepository.java
+++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/repository/EmergencySuppliesInfoRepository.java
@@ -28,4 +28,7 @@
     List<EmergencySuppliesInfoDetailDO> countEmergencySupplies(Page<EmergencySuppliesInfoDetailDO> page, EmergencySuppliesCountQuery query);
 
     List<EmergencySuppliesInfo> listByNoConditions(@Param("delFlag") Byte delFlag,@Param("status") Byte status);
+
+
+    List<EmergencySuppliesInfo> listCountByIds(@Param("ids")List<Long> ids,@Param("delFlag") Byte delFlag,@Param("status") Byte status);
 }
diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencySuppliesService.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencySuppliesService.java
index 90efb43..189b9ff 100644
--- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencySuppliesService.java
+++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/EmergencySuppliesService.java
@@ -7,6 +7,7 @@
 import com.gkhy.safePlatform.emergency.model.dto.req.EmergencySuppliesReqDTO;
 import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencySuppliesDetailRespDTO;
 import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencySuppliesPageRespDTO;
+import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencySuppliesRespDTO;
 import com.gkhy.safePlatform.emergency.model.dto.resp.EmergencySuppliesTypeRespDTO;
 import com.gkhy.safePlatform.emergency.query.EmergencySuppliesQuery;
 
@@ -25,4 +26,6 @@
     ResultVO batchDeleteEmergencySupplies( Long[]  ids);
 
     ResultVO<List<EmergencySuppliesTypeRespDTO>> emergencySuppliesList(ContextCacheUser currentUser);
+
+    ResultVO<List<EmergencySuppliesRespDTO>> listCountByIds(ContextCacheUser currentUser, List<Long> ids);
 }
diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencySuppliesInfoService.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencySuppliesInfoService.java
index a68518c..795c46a 100644
--- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencySuppliesInfoService.java
+++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/EmergencySuppliesInfoService.java
@@ -26,4 +26,6 @@
     List<EmergencySuppliesInfoDetailDO> countEmergencySupplies(Page<EmergencySuppliesInfoDetailDO> page,EmergencySuppliesCountQuery query);
 
     List<EmergencySuppliesInfo> listByNoConditions();
+
+    List<EmergencySuppliesInfo> listCountByIds(List<Long> ids);
 }
diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencySuppliesInfoServiceImpl.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencySuppliesInfoServiceImpl.java
index 1adc63a..6c99894 100644
--- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencySuppliesInfoServiceImpl.java
+++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/baseService/impl/EmergencySuppliesInfoServiceImpl.java
@@ -1,14 +1,16 @@
 package com.gkhy.safePlatform.emergency.service.baseService.impl;
 
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfo;
 import com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfoDetailDO;
 import com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfoPageDO;
+import com.gkhy.safePlatform.emergency.enums.EmergencyResultCodes;
 import com.gkhy.safePlatform.emergency.enums.EmergencySuppliesClassificationEnum;
 import com.gkhy.safePlatform.emergency.enums.EmergencySuppliesStatusEnum;
+import com.gkhy.safePlatform.emergency.excepiton.EmergencyException;
 import com.gkhy.safePlatform.emergency.query.EmergencySuppliesCountQuery;
 import com.gkhy.safePlatform.emergency.query.db.EmergencySuppliesDBQuery;
 import com.gkhy.safePlatform.emergency.repository.EmergencySuppliesInfoRepository;
@@ -61,5 +63,13 @@
         return baseMapper.listByNoConditions((byte)0,EmergencySuppliesStatusEnum.STATUS_ONE.getCode());
     }
 
+    @Override
+    public List<EmergencySuppliesInfo> listCountByIds(List<Long> ids) {
+        if(null == ids || ids.size() == 0){
+            throw new EmergencyException(EmergencyResultCodes.SUPPLIES_PRAM_NULL);
+        }
+        return baseMapper.listCountByIds(ids, (byte) 0,EmergencySuppliesStatusEnum.STATUS_ONE.getCode());
+    }
+
 
 }
diff --git a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencySuppliesServiceImpl.java b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencySuppliesServiceImpl.java
index c33c62e..044c8bc 100644
--- a/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencySuppliesServiceImpl.java
+++ b/emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencySuppliesServiceImpl.java
@@ -227,6 +227,19 @@
         return new ResultVO<>(ResultCodes.OK,typeRespDTOList);
     }
 
+    @Override
+    public ResultVO<List<EmergencySuppliesRespDTO>> listCountByIds(ContextCacheUser currentUser, List<Long> ids) {
+        if(null == ids || ids.size() == 0 ){
+            throw new EmergencyException(EmergencyResultCodes.SUPPLIES_PRAM_NULL);
+        }
+        List<EmergencySuppliesInfo> emergencySuppliesInfos = emergencySuppliesInfoService.listCountByIds(ids);
+        List<EmergencySuppliesRespDTO> respDTOList = new ArrayList<>();
+        if(!CollectionUtils.isEmpty(emergencySuppliesInfos)){
+            respDTOList = BeanCopyUtils.copyBeanList(emergencySuppliesInfos,EmergencySuppliesRespDTO.class);
+        }
+        return new ResultVO<>(ResultCodes.OK,respDTOList);
+    }
+
     private void deleteEmergencySupplies(Long id) {
         //查询是否存在
         EmergencySuppliesInfoDetailDO emergencySuppliesInfoDetailDO = emergencySuppliesInfoService.selectEmergencySuppliesById(id);
@@ -244,6 +257,8 @@
         }
     }
 
+
+
     /**
      * 验证必填项
      * @return
diff --git a/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencySuppliesInfoMapper.xml b/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencySuppliesInfoMapper.xml
index 5e4a688..fd9b894 100644
--- a/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencySuppliesInfoMapper.xml
+++ b/emergency/emergency-service/src/main/resources/config/mapper/emergency/EmergencySuppliesInfoMapper.xml
@@ -164,4 +164,14 @@
         from emergency_supplies
         where del_flag = #{delFlag} and status = #{status}
    </select>
+    <select id="listCountByIds" resultType="com.gkhy.safePlatform.emergency.entity.EmergencySuppliesInfo">
+        select id,
+               count
+        from emergency_supplies
+        where del_flag = #{delFlag} and status = #{status} and id in
+        <foreach collection="ids" item="id" open="(" close=")" separator=",">
+            #{id}
+        </foreach>
+    </select>
+
 </mapper>

--
Gitblit v1.9.2