From 9e5a392aaf03d3e3cf436d9719067ddab3eca24e Mon Sep 17 00:00:00 2001 From: memorylkf <312904636@qq.com> Date: Fri, 9 Jan 2026 10:47:06 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20[=E8=AF=95=E9=AA=8C=E7=AE=A1=E7=90=86]?= =?UTF-8?q?=20=E9=BB=98=E8=AE=A4=E9=80=89=E4=B8=AD=E8=87=AA=E5=B7=B1?= =?UTF-8?q?=E6=89=80=E5=9C=A8=E5=AD=A6=E7=A7=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hxhq/business/controller/StudySubjectController.java | 3 ++- .../main/java/com/hxhq/business/domain/StudySubject.java | 16 ++++++++++++++++ .../com/hxhq/business/service/IStudySubjectService.java | 7 +++++++ .../hxhq/business/service/IStudySubjectUserService.java | 4 +++- .../business/service/impl/StudySubjectServiceImpl.java | 16 +++++++++++++++- .../service/impl/StudySubjectUserServiceImpl.java | 11 ++++++++++- 6 files changed, 53 insertions(+), 4 deletions(-) diff --git a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/StudySubjectController.java b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/StudySubjectController.java index 07564a8..c01cba6 100644 --- a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/StudySubjectController.java +++ b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/controller/StudySubjectController.java @@ -38,7 +38,8 @@ public class StudySubjectController extends BaseController if(studyId==null || studyId.longValue()<=0){ return AjaxResult.success(new ArrayList<>()); } - return AjaxResult.success(studySubjectService.getListByStudyId(studyId)); + List list = studySubjectService.getListByStudyId(studyId); + return AjaxResult.success(studySubjectService.initUserIdList(list)); } /** diff --git a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/domain/StudySubject.java b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/domain/StudySubject.java index a5a93ab..1377c10 100644 --- a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/domain/StudySubject.java +++ b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/domain/StudySubject.java @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.hxhq.common.core.domain.MpBaseEntity; +import java.util.List; + /** * 试验-学科对象 t_study_subject @@ -37,6 +39,12 @@ public class StudySubject extends MpBaseEntity @TableField(exist = false) private Boolean select; + /** + * 设置的用户id列表 + */ + @TableField(exist = false) + private List userIdList; + public void setStudyId(Long studyId) { @@ -95,4 +103,12 @@ public class StudySubject extends MpBaseEntity public void setSelect(Boolean select) { this.select = select; } + + public List getUserIdList() { + return userIdList; + } + + public void setUserIdList(List userIdList) { + this.userIdList = userIdList; + } } diff --git a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IStudySubjectService.java b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IStudySubjectService.java index 7364446..838755e 100644 --- a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IStudySubjectService.java +++ b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IStudySubjectService.java @@ -21,6 +21,13 @@ public interface IStudySubjectService extends IService List getListByStudyId(Long studyId); /** + * 设置学科下的用户idList,用于前端subject默认选中 + * @param list + * @return + */ + List initUserIdList(List list); + + /** * 获取试验下的学科设置信息(含未设置的学科) * @param studyId * @return diff --git a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IStudySubjectUserService.java b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IStudySubjectUserService.java index f68ba42..6087126 100644 --- a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IStudySubjectUserService.java +++ b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/IStudySubjectUserService.java @@ -28,8 +28,10 @@ public interface IStudySubjectUserService extends IService /** * 根据studySubjectId进下删除 + * @param studyId * @param studySubjectId + * @param signRemark */ - void deleteByStudySubjectId(Long studySubjectId); + void deleteByStudySubjectId(Long studyId, Long studySubjectId,String signRemark); } diff --git a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/StudySubjectServiceImpl.java b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/StudySubjectServiceImpl.java index 90b56b7..1fb2bb5 100644 --- a/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/StudySubjectServiceImpl.java +++ b/hxhq-modules/hxhq-system/src/main/java/com/hxhq/business/service/impl/StudySubjectServiceImpl.java @@ -92,6 +92,20 @@ public class StudySubjectServiceImpl extends ServiceImpl initUserIdList(List list) { + if(list.size()>0){ + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.in("study_subject_id",list.stream().map(o->o.getId()).collect(Collectors.toList())); + queryWrapper.select("study_subject_id,user_id"); + List userList = studySubjectUserService.list(queryWrapper); + for(StudySubject l : list){ + l.setUserIdList(userList.stream().filter(o->o.getStudySubjectId().equals(l.getId())).map(o->o.getUserId()).collect(Collectors.toList())); + } + } + return list; + } + + @Override @Transactional(rollbackFor = Exception.class) public void saveInfo(StudySubjectSaveForm form) { Study study = studyService.getById(form.getStudyId()); @@ -147,7 +161,7 @@ public class StudySubjectServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); queryWrapper.eq("study_subject_id",studySubjectId); + List userList = list(queryWrapper); + if(userList.size()>0){ + List deleteNameList = userList.stream().map(o->o.getUserName()).collect(Collectors.toList()); + if(deleteNameList.size()>0){ + Map formData = new LinkedHashMap<>(); + formData.put("删除人员", String.join(",",deleteNameList)); + studyJcgjService.saveInfo(studyId, JcgjlxEnum.ry, JcmcysEnum.blue,"人员变更", JctUtil.formatStr(formData), SecurityUtils.getUserId(),SecurityUtils.getNickName(),signRemark); + } + } remove(queryWrapper); } }