From cd02923a7ce1ffa004b3abbb7af67ab6173dd99d Mon Sep 17 00:00:00 2001
From: zf <1603559716@qq.com>
Date: 星期一, 25 三月 2024 10:59:40 +0800
Subject: [PATCH] Merge branch 'master' of https://sinanoaq.cn:8888/r/safePlatform-out into zf
---
emergency/emergency-service/src/main/java/com/gkhy/safePlatform/emergency/service/impl/EmergencySuppliesServiceImpl.java | 92 ++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 88 insertions(+), 4 deletions(-)
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 ee0cac2..c7ac66d 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
@@ -1,8 +1,11 @@
package com.gkhy.safePlatform.emergency.service.impl;
+import com.alibaba.nacos.common.utils.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.gkhy.safePlatform.account.rpc.apimodel.AccountDepartmentService;
import com.gkhy.safePlatform.account.rpc.apimodel.model.resp.DepInfoRPCRespDTO;
+import com.gkhy.safePlatform.commons.co.ContextCacheUser;
+import com.gkhy.safePlatform.commons.enums.E;
import com.gkhy.safePlatform.commons.enums.ResultCodes;
import com.gkhy.safePlatform.commons.query.PageQuery;
import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
@@ -10,9 +13,12 @@
import com.gkhy.safePlatform.commons.vo.SearchResultVO;
import com.gkhy.safePlatform.emergency.entity.*;
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.model.dto.req.*;
import com.gkhy.safePlatform.emergency.model.dto.resp.*;
+import com.gkhy.safePlatform.emergency.query.EmergencySuppliesCountQuery;
import com.gkhy.safePlatform.emergency.query.EmergencySuppliesQuery;
import com.gkhy.safePlatform.emergency.query.db.EmergencySuppliesDBQuery;
import com.gkhy.safePlatform.emergency.service.EmergencySuppliesMaintainService;
@@ -24,10 +30,8 @@
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
+import java.util.stream.Collectors;
@Service("emergencySuppliesService")
public class EmergencySuppliesServiceImpl implements EmergencySuppliesService {
@@ -95,6 +99,12 @@
@Override
public ResultVO addEmergencySupplies(Long uid, EmergencySuppliesReqDTO emergencySuppliesReqDTO) {
+
+ // 验证必填
+ checkRequired(emergencySuppliesReqDTO);
+ //验证枚举
+ checkEnum(emergencySuppliesReqDTO);
+
Date nowDate = new Date();
// 新增应急物资
EmergencySuppliesInfo emergencySuppliesInfo = new EmergencySuppliesInfo();
@@ -152,6 +162,11 @@
@Override
public ResultVO updateEmergencySupplies(Long uid, EmergencySuppliesReqDTO emergencySuppliesReqDTO) {
+ // 验证必填
+ checkRequired(emergencySuppliesReqDTO);
+ //验证枚举
+ checkEnum(emergencySuppliesReqDTO);
+
Date nowDate = new Date();
// 查询是否存在
EmergencySuppliesInfoDetailDO emergencySuppliesInfoDetailDO = emergencySuppliesInfoService.selectEmergencySuppliesById(emergencySuppliesReqDTO.getId());
@@ -181,6 +196,50 @@
}
}
+ /**
+ * 按照物资类型分类获取列表
+ * @param currentUser
+ * @return
+ */
+ @Override
+ public List<EmergencySuppliesTypeRespDTO> emergencySuppliesList(ContextCacheUser currentUser) {
+
+ List<EmergencySuppliesInfo> emergencySuppliesInfoList = emergencySuppliesInfoService.listByNoConditions();
+ List<EmergencySuppliesTypeRespDTO> typeRespDTOList = new ArrayList<>();
+ for (EmergencySuppliesClassificationEnum teamLevelEnum : EmergencySuppliesClassificationEnum.values()) {
+ EmergencySuppliesTypeRespDTO typeRespDTO = new EmergencySuppliesTypeRespDTO();
+ typeRespDTO.setMaterialType(teamLevelEnum.getCode());
+ typeRespDTO.setMaterialTypeName(teamLevelEnum.getValue());
+ List<EmergencySuppliesRespDTO> respDTOList = new ArrayList<>();
+ List<EmergencySuppliesInfo> collect = emergencySuppliesInfoList.stream().filter(item -> item.getClassification().equals(teamLevelEnum.getCode())).collect(Collectors.toList());
+ if(!CollectionUtils.isEmpty(collect)){
+ for (EmergencySuppliesInfo info : collect) {
+ EmergencySuppliesRespDTO respDTO = new EmergencySuppliesRespDTO();
+ BeanUtils.copyProperties(info,respDTO);
+ respDTO.setMaterialType(info.getClassification());
+ respDTO.setMaterialTypeName(teamLevelEnum.getValue());
+ respDTOList.add(respDTO);
+ }
+ }
+ typeRespDTO.setList(respDTOList);
+ typeRespDTOList.add(typeRespDTO);
+ }
+ return typeRespDTOList;
+ }
+
+ @Override
+ public List<EmergencySuppliesRespDTO> listCountByIds(ContextCacheUser currentUser, List<Long> ids) {
+ if(null == ids || ids.size() == 0 ){
+ throw new EmergencyException(EmergencyResultCodes.SUPPLIES_PARAM_NULL);
+ }
+ List<EmergencySuppliesInfo> emergencySuppliesInfos = emergencySuppliesInfoService.listCountByIds(ids);
+ List<EmergencySuppliesRespDTO> respDTOList = new ArrayList<>();
+ if(!CollectionUtils.isEmpty(emergencySuppliesInfos)){
+ respDTOList = BeanCopyUtils.copyBeanList(emergencySuppliesInfos,EmergencySuppliesRespDTO.class);
+ }
+ return respDTOList;
+ }
+
private void deleteEmergencySupplies(Long id) {
//查询是否存在
EmergencySuppliesInfoDetailDO emergencySuppliesInfoDetailDO = emergencySuppliesInfoService.selectEmergencySuppliesById(id);
@@ -197,4 +256,29 @@
}
}
+
+
+
+ /**
+ * 验证必填项
+ * @return
+ */
+ private void checkRequired(EmergencySuppliesReqDTO emergencySuppliesReqDTO) {
+ //名称
+ if (StringUtils.isBlank(emergencySuppliesReqDTO.getName())) {
+ throw new EmergencyException(EmergencyResultCodes.SUPPLIES_NAME_NOT_EXIST);
+ }
+ }
+
+ /**
+ * 验证枚举
+ */
+ private void checkEnum(EmergencySuppliesReqDTO emergencySuppliesReqDTO){
+ if (EmergencySuppliesClassificationEnum.getByCode(emergencySuppliesReqDTO.getClassification())==null){
+ throw new EmergencyException(EmergencyResultCodes.SUPPLIES_ENUM_CLASSIFICATION_NOT_EXIST);
+ }
+ if (EmergencySuppliesStatusEnum.getByCode(emergencySuppliesReqDTO.getStatus())==null){
+ throw new EmergencyException(EmergencyResultCodes.SUPPLIES_ENUM_STATUS_NOT_EXIST);
+ }
+ }
}
--
Gitblit v1.9.2