From df4898d55d3aa97f2cf455b4c351c37f2b84e257 Mon Sep 17 00:00:00 2001 From: luohairen <3399054449@qq.com> Date: 星期三, 30 十月 2024 17:59:25 +0800 Subject: [PATCH] bug --- src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java | 37 ++++++++++++++++++++++++++++++++----- 1 files changed, 32 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java b/src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java index 1474c95..408a884 100644 --- a/src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java +++ b/src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java @@ -9,18 +9,17 @@ import com.ycl.jxkg.base.SystemCode; import com.ycl.jxkg.context.WebContext; import com.ycl.jxkg.domain.entity.Meet; +import com.ycl.jxkg.domain.entity.MeetClasses; import com.ycl.jxkg.domain.entity.MeetStudent; import com.ycl.jxkg.domain.entity.StudyRecord; import com.ycl.jxkg.domain.form.MeetForm; import com.ycl.jxkg.domain.query.MeetQuery; import com.ycl.jxkg.domain.vo.ClassesVO; +import com.ycl.jxkg.domain.vo.MeetClassesVo; import com.ycl.jxkg.domain.vo.MeetVO; import com.ycl.jxkg.domain.vo.StudentSimpleVO; import com.ycl.jxkg.enums.MeetStatusEnum; -import com.ycl.jxkg.mapper.ClassesUserMapper; -import com.ycl.jxkg.mapper.MeetMapper; -import com.ycl.jxkg.mapper.MeetStudentMapper; -import com.ycl.jxkg.mapper.StudyRecordMapper; +import com.ycl.jxkg.mapper.*; import com.ycl.jxkg.rabbitmq.msg.MeetStatusMsg; import com.ycl.jxkg.rabbitmq.product.Producer; import com.ycl.jxkg.service.MeetService; @@ -30,6 +29,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.Assert; import org.springframework.util.CollectionUtils; import java.util.Date; @@ -55,12 +55,14 @@ private final Producer producer; private final MeetStudentMapper meetStudentMapper; private final StudyRecordMapper studyRecordMapper; + private final MeetClassesMapper meetClassesMapper; /** * 娣诲姞 * @param form * @return */ @Override + @Transactional(rollbackFor = Exception.class) public Result add(MeetForm form) { Meet entity = MeetForm.getEntityByForm(form, null); entity.setStatus(MeetStatusEnum.Wait.getCode()); @@ -70,6 +72,13 @@ if (baseMapper.insert(entity) > 0) { this.sendMQ(entity, 0); } + // 鍚戜細璁彮绾т腑闂磋〃涓彃鍏ユ暟鎹� + form.getClassesIds().forEach(classId -> { + MeetClasses meetClasses = new MeetClasses(); + meetClasses.setMeetId(entity.getId()); + meetClasses.setClassesId(classId); + meetClassesMapper.insert(meetClasses); + }); return Result.ok("娣诲姞鎴愬姛"); } @@ -84,6 +93,20 @@ // 涓虹┖鎶汭llegalArgumentException锛屽仛鍏ㄥ眬寮傚父澶勭悊 Assert.notNull(entity, "璁板綍涓嶅瓨鍦�"); BeanUtils.copyProperties(form, entity); + + // 鍏堝垹闄ゅ啀鏂板 + new LambdaUpdateChainWrapper<>(meetClassesMapper) + .eq(MeetClasses::getMeetId, entity.getId()) + .remove(); + // 鍚戜細璁彮绾т腑闂磋〃涓彃鍏ユ暟鎹� + form.getClassesIds().forEach(classId -> { + MeetClasses meetClasses = new MeetClasses(); + meetClasses.setMeetId(entity.getId()); + meetClasses.setClassesId(classId); + meetClassesMapper.insert(meetClasses); + }); + + // 濡傛灉淇敼鎴愬姛鍙戦�乵q娑堟伅 if (baseMapper.updateById(entity) > 0) { this.sendMQ(entity, entity.getUpdateVersion()); @@ -125,7 +148,11 @@ query.setTeacherId(id); IPage<MeetVO> page = PageUtil.getPage(query, MeetVO.class); baseMapper.getPage(page, query); - + page.getRecords().forEach(vo -> { + if (!CollectionUtils.isEmpty(vo.getTeacherNames())) { + vo.setTeacherNamesStr(vo.getTeacherNames().stream().collect(Collectors.joining("銆�"))); + } + }); return Result.ok().data(page.getRecords()).total(page.getTotal()); } -- Gitblit v1.8.0