From 97875ee7505417c08ae923859d923183e5cce915 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期三, 03 七月 2024 21:21:29 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev
---
src/main/java/com/ycl/jxkg/service/impl/MeetServiceImpl.java | 59 +++++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 45 insertions(+), 14 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..77687d9 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,11 @@
import com.alibaba.fastjson2.JSONArray;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.ycl.jxkg.base.SystemCode;
+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 +14,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 +40,10 @@
private final MeetMapper meetMapper;
+ @Autowired
+ private WebContext webContext;
+ @Autowired
+ private ClassesUserMapper classesUserMapper;
/**
* 娣诲姞
* @param form
@@ -40,7 +52,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 +70,6 @@
// 涓虹┖鎶汭llegalArgumentException锛屽仛鍏ㄥ眬寮傚父澶勭悊
Assert.notNull(entity, "璁板綍涓嶅瓨鍦�");
BeanUtils.copyProperties(form, entity);
- entity.setStudentIds(JSONArray.toJSONString(form.getStudentIds()));
baseMapper.updateById(entity);
return Result.ok("淇敼鎴愬姛");
}
@@ -85,24 +97,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());
}
/**
@@ -114,7 +141,11 @@
public Result detail(Integer id) {
MeetVO vo = baseMapper.getById(id);
Assert.notNull(vo, "璁板綍涓嶅瓨鍦�");
- return Result.ok().data(vo);
+ if(vo.getStatus().equals(MeetStatusEnum.Starting.getCode())){
+ return Result.ok();
+ }else {
+ return Result.fail(SystemCode.InnerError.getCode(),"鎴块棿灏氭湭寮�濮嬫垨宸茬粨鏉�");
+ }
}
/**
--
Gitblit v1.8.0