From 47cd9ecc0eff38ffe6b3b794b2bf197e958f4403 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期三, 14 五月 2025 15:50:57 +0800 Subject: [PATCH] bug:学员有状态不能修改问题 --- src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java | 58 ++++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 44 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..7cbf9f7 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,14 +15,13 @@ 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; import java.util.ArrayList; import java.util.List; +import java.util.Objects; import java.util.stream.Collectors; @Service @@ -61,6 +63,12 @@ return subjectMapper.allSubject(deptIds, admin); } + public List<Subject> studentSubList() { + // 鍙煡鑷繁閮ㄩ棬鐨勮鐩� + List<Integer> deptIds = webContext.getAdminDeptIds(); + return subjectMapper.allSubject(deptIds, Boolean.FALSE); + } + @Override public Integer levelBySubjectId(Integer id) { return this.selectById(id).getLevel(); @@ -90,11 +98,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 +114,37 @@ 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); + } + } + } + + /** + * 妫�鏌ュ悕绉版槸鍚﹀瓨鍦� + * + * @param id + * @param name + * @return + */ + @Override + public Boolean selectByName(Integer id, String name) { + Subject subject = subjectMapper.selectByName(id,name); + return Objects.nonNull(subject); } } -- Gitblit v1.8.0