From 0fb6563de530e5278356f7557480764cb59942c5 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期二, 25 六月 2024 15:14:42 +0800 Subject: [PATCH] 会议后台+学生端对接 --- src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java | 52 +++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 39 insertions(+), 13 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 31d55b9..1dcefdb 100644 --- a/src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java +++ b/src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java @@ -2,7 +2,10 @@ import com.alibaba.fastjson2.JSONArray; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.ycl.jxkg.context.WebContext; import com.ycl.jxkg.domain.entity.Meet; +import com.ycl.jxkg.enums.MeetStatusEnum; +import com.ycl.jxkg.mapper.ClassesUserMapper; import com.ycl.jxkg.mapper.MeetMapper; import com.ycl.jxkg.service.MeetService; import com.ycl.jxkg.base.Result; @@ -10,11 +13,15 @@ import com.ycl.jxkg.domain.form.MeetForm; import com.ycl.jxkg.domain.vo.MeetVO; import com.ycl.jxkg.domain.query.MeetQuery; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.security.core.userdetails.User; import org.springframework.stereotype.Service; import lombok.RequiredArgsConstructor; import com.ycl.jxkg.utils.PageUtil; import org.springframework.beans.BeanUtils; import org.springframework.util.Assert; +import org.springframework.util.CollectionUtils; import java.util.ArrayList; import java.util.List; @@ -32,6 +39,10 @@ private final MeetMapper meetMapper; + @Autowired + private WebContext webContext; + @Autowired + private ClassesUserMapper classesUserMapper; /** * 娣诲姞 * @param form @@ -40,7 +51,8 @@ @Override public Result add(MeetForm form) { Meet entity = MeetForm.getEntityByForm(form, null); - entity.setStudentIds(JSONArray.toJSONString(form.getStudentIds())); + entity.setStatus(MeetStatusEnum.Wait.getCode()); + entity.setCreateUser(webContext.getCurrentUser().getId()); baseMapper.insert(entity); return Result.ok("娣诲姞鎴愬姛"); } @@ -57,7 +69,6 @@ // 涓虹┖鎶汭llegalArgumentException锛屽仛鍏ㄥ眬寮傚父澶勭悊 Assert.notNull(entity, "璁板綍涓嶅瓨鍦�"); BeanUtils.copyProperties(form, entity); - entity.setStudentIds(JSONArray.toJSONString(form.getStudentIds())); baseMapper.updateById(entity); return Result.ok("淇敼鎴愬姛"); } @@ -85,24 +96,39 @@ } /** - * 鍒嗛〉鏌ヨ + * 鏁欏笀鍒嗛〉鏌ヨ * @param query * @return */ @Override public Result page(MeetQuery query) { - - IPage<Meet> page = PageUtil.getPage(query, Meet.class); + Integer id = webContext.getCurrentUser().getId(); + //鏌ヨ嚜宸卞垱寤虹殑鎴块棿 + query.setTeacherId(id); + IPage<MeetVO> page = PageUtil.getPage(query, MeetVO.class); baseMapper.getPage(page, query); - List<Meet> records = page.getRecords(); - List<MeetVO> vos = new ArrayList<>(); - for (Meet record : records) { - MeetVO meetVO = new MeetVO(); - BeanUtils.copyProperties(record,meetVO); - meetVO.setStudentIds(JSONArray.parseArray(record.getStudentIds(),Integer.class)); - vos.add(meetVO); + + return Result.ok().data(page.getRecords()).total(page.getTotal()); + } + + /** + * 瀛︾敓鍒嗛〉鏌ヨ + * @param query + * @return + */ + @Override + public Result studentPage(MeetQuery query) { + Integer userId = webContext.getCurrentUser().getId(); + //鏌ュ嚭瀛︾敓鎵�鍦ㄧ彮绾� + List<Integer> classes = classesUserMapper.getClassesByUserId(userId); + if(CollectionUtils.isEmpty(classes)){ + return Result.ok("鎮ㄦ殏鏈姞鍏ョ彮绾�"); } - return Result.ok().data(vos).total(page.getTotal()); + query.setClassesIds(classes); + IPage<MeetVO> page = PageUtil.getPage(query, MeetVO.class); + baseMapper.getPage(page, query); + + return Result.ok().data(page.getRecords()).total(page.getTotal()); } /** -- Gitblit v1.8.0