From 48e1a3658117ebda9270d87092cfb0d31a634b92 Mon Sep 17 00:00:00 2001
From: wl <173@qq.com>
Date: 星期四, 21 七月 2022 15:07:00 +0800
Subject: [PATCH] bug修改

---
 src/main/java/com/example/jz/service/impl/CauseServiceImpl.java |   26 +++++++++++++++++++++++---
 1 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java b/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java
index 5be530f..f5156b6 100644
--- a/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java
+++ b/src/main/java/com/example/jz/service/impl/CauseServiceImpl.java
@@ -9,6 +9,7 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.example.jz.dao.*;
 import com.example.jz.enums.CauseEnums;
+import com.example.jz.exception.BusinessException;
 import com.example.jz.modle.PageParam;
 import com.example.jz.modle.dto.AddReportDto;
 import com.example.jz.modle.dto.CauseDto;
@@ -154,12 +155,15 @@
 
     @Override
     @SneakyThrows
+    @Transactional(rollbackFor = BusinessException.class)
     public void loadFile(MultipartFile multipartFile) {
         ArrayList<CauseLoadDto> causeLoadDtos = new ArrayList<>();
         EasyExcel.read(multipartFile.getInputStream(),CauseLoadDto.class, new AnalysisEventListener<CauseLoadDto>() {
                     @Override
                     public void invoke(CauseLoadDto data, AnalysisContext context) {
-                        causeLoadDtos.add(data);
+                        if (StringUtils.isNotBlank(data.getName())&&StringUtils.isNotBlank(data.getUserName())){
+                            causeLoadDtos.add(data);
+                        }
                     }
 
                     @Override
@@ -173,6 +177,9 @@
                 a -> {
                     Cause cause = new Cause();
                     BeanUtils.copyProperties(a, cause);
+                    if (StringUtils.isBlank(a.getStatus())){
+                        throw new BusinessException("鐘舵�佷笉鑳戒负绌�");
+                    }
                     if (a.getStatus().equals(CauseEnums.UNCHECKED.getMsg())) {
                         cause.setStatus(CauseEnums.UNCHECKED.value());
                     }
@@ -189,8 +196,21 @@
                         cause.setStatus(CauseEnums.HASBEENDROPPED.value());
                     }
                     cause.setCtime(new Date());
-                    cause.setUserId(userDao.selectOne(new QueryWrapper<User>().eq("real_name", a.getUserName())).getId());
-                    causeDao.insert(cause);
+                    if (StringUtils.isBlank(a.getUserName())){
+                        throw new BusinessException("璐熻矗浜轰笉鍏佽涓虹┖");
+                    }
+                    if (userDao.selectOne(new QueryWrapper<User>().eq("real_name", a.getUserName()))==null){
+                        throw new BusinessException("璐熻矗浜轰笉瀛樺湪");
+                    }
+                    Integer id = userDao.selectOne(new QueryWrapper<User>().eq("real_name", a.getUserName())).getId();
+                    cause.setUserId(id);
+                    causeService.save(cause);
+                    Group group = new Group();
+                    group.setCtime(new Date());
+                    group.setUserId(id);
+                    group.setGroupName(a.getName());
+                    group.setCauseId(cause.getId());
+                    groupDao.insert(group);
                 });
     }
 

--
Gitblit v1.8.0