From 2d928646669fe6026c7d63f6b409d9b2790aa65e Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期五, 19 七月 2024 16:09:20 +0800
Subject: [PATCH] feat:设置部门管理员报错解决

---
 src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java |   38 ++++++++++++++++++++++++--------------
 1 files changed, 24 insertions(+), 14 deletions(-)

diff --git a/src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java b/src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java
index feeecc0..26791e9 100644
--- a/src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java
+++ b/src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java
@@ -1,5 +1,8 @@
 package com.mindskip.xzs.service.impl;
 
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.mindskip.xzs.base.RestResponse;
 import com.mindskip.xzs.context.WebContext;
 import com.mindskip.xzs.domain.Subject;
 import com.mindskip.xzs.domain.SubjectDept;
@@ -12,9 +15,7 @@
 import com.mindskip.xzs.repository.SubjectMapper;
 import com.mindskip.xzs.service.SubjectService;
 import com.mindskip.xzs.viewmodel.admin.education.SubjectPageRequestVM;
-import com.github.pagehelper.PageHelper;
-import com.github.pagehelper.PageInfo;
-import org.springframework.beans.factory.annotation.Autowired;
+import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -90,11 +91,15 @@
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public void add(AddSubjectForm form) {
+    public RestResponse add(AddSubjectForm form) {
         Subject subject = new Subject();
         subject.setName(form.getSubjectName());
         subject.setDeleted(false);
-        subjectMapper.insert(subject);
+        try {
+            subjectMapper.insert(subject);
+        } catch (Exception e) {
+            return RestResponse.fail(500, "绉戠洰鍚嶄笉鑳介噸澶�");
+        }
 
         SubjectDept subjectDept = new SubjectDept();
         subjectDept.setDeptId(form.getDeptId());
@@ -102,19 +107,24 @@
         List<SubjectDept> s = new ArrayList<>(1);
         s.add(subjectDept);
         subjectDeptMapper.add(s);
+        return RestResponse.ok();
     }
 
     @Override
     @Transactional(rollbackFor = Exception.class)
     public void edit(EditSubjectForm form) {
-        // 鍒犻櫎鍘熷厛鐨勮鐩紝鍐嶆柊澧�
-        subjectDeptMapper.deleteByDeptId(form.getDeptId());
-        List<SubjectDept> toAddList = form.getSubjectIds().stream().map(subjectId -> {
-            SubjectDept subjectDept = new SubjectDept();
-            subjectDept.setDeptId(form.getDeptId());
-            subjectDept.setSubjectId(subjectId);
-            return subjectDept;
-        }).collect(Collectors.toList());
-        subjectDeptMapper.add(toAddList);
+        if (ObjectUtils.isNotEmpty(form.getDeptId())) {
+            // 鍒犻櫎鍘熷厛鐨勮鐩紝鍐嶆柊澧�
+            subjectDeptMapper.deleteByDeptId(form.getDeptId());
+            List<SubjectDept> toAddList = form.getSubjectIds().stream().map(subjectId -> {
+                SubjectDept subjectDept = new SubjectDept();
+                subjectDept.setDeptId(form.getDeptId());
+                subjectDept.setSubjectId(subjectId);
+                return subjectDept;
+            }).collect(Collectors.toList());
+            if (ObjectUtils.isNotEmpty(toAddList)) {
+                subjectDeptMapper.add(toAddList);
+            }
+        }
     }
 }

--
Gitblit v1.8.0