Joburgess 5 سال پیش
والد
کامیت
2bdbf4e218

+ 1 - 2
edu-user/edu-user-client-api/src/main/java/com/keao/edu/user/api/entity/ExamRoom.java

@@ -55,8 +55,7 @@ public class ExamRoom {
 	private YesOrNoEnum examPlanPushFlag;
 
 	private Integer examRoomStudentNum;
-	
-	/**  */
+
 	private boolean delFlag;
 	
 	/**  */

+ 14 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/ExamRoomController.java

@@ -46,6 +46,20 @@ public class ExamRoomController extends BaseController {
         return succeed(examRoomService.queryExamRoomPage(queryInfo));
     }
 
+    @ApiOperation("获取考级项目教室列表")
+    @GetMapping(value = "/queryExamRooms")
+    public HttpResponseResult<PageInfo<ExamRoomDto>> queryExamRooms(ExamRoomQueryInfo queryInfo) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if(!sysUser.getIsSuperAdmin()&&Objects.isNull(queryInfo.getOrganId())){
+            Employee employee = employeeService.get(sysUser.getId());
+            if(Objects.isNull(employee)){
+                return failed("用户信息异常");
+            }
+            queryInfo.setOrganId(employee.getOrganId());
+        }
+        return succeed(examRoomService.queryExamRooms(queryInfo));
+    }
+
     @ApiOperation("更新考场")
     @PostMapping(value = "/update")
     public HttpResponseResult update(@RequestBody ExamRoom examRoom){

+ 10 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/dao/ExamRoomDao.java

@@ -28,6 +28,16 @@ public interface ExamRoomDao extends BaseDAO<Long, ExamRoom> {
     List<ExamRoomDto> queryExamRoomPage(Map<String, Object> params);
 
     /**
+     * @describe 获取考级教师列表
+     * @author Joburgess
+     * @date 2020.07.12
+     * @param params:
+     * @return java.util.List<com.keao.edu.user.api.entity.ExamRoom>
+     */
+    List<ExamRoomDto> queryExamRoom(Map<String, Object> params);
+    int countExamRoom(Map<String, Object> params);
+
+    /**
      * @describe 删除指定教室
      * @author Joburgess
      * @date 2020.06.24

+ 8 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/ExamRoomService.java

@@ -20,6 +20,14 @@ public interface ExamRoomService extends BaseService<Long, ExamRoom> {
     PageInfo<ExamRoomDto> queryExamRoomPage(ExamRoomQueryInfo queryInfo);
 
     /**
+     * @describe 获取考级项目教室列表
+     * @author Joburgess
+     * @date 2020.07.12
+     * @return com.keao.edu.common.page.PageInfo<com.keao.edu.user.dto.ExamRoomDto>
+     */
+    PageInfo<ExamRoomDto> queryExamRooms(ExamRoomQueryInfo queryInfo);
+
+    /**
      * @describe 创建教室
      * @author Joburgess
      * @date 2020.06.23

+ 23 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamRoomServiceImpl.java

@@ -77,6 +77,29 @@ public class ExamRoomServiceImpl extends BaseServiceImpl<Long, ExamRoom> impleme
 	}
 
 	@Override
+	public PageInfo<ExamRoomDto> queryExamRooms(ExamRoomQueryInfo queryInfo) {
+		PageInfo<ExamRoomDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
+		Map<String, Object> params = new HashMap<>();
+		MapUtil.populateMap(params, queryInfo);
+
+		List<Integer> childOrganIds = organizationService.getChildOrganIds(queryInfo.getOrganId(), true);
+		params.put("organIds", childOrganIds);
+
+		List<ExamRoomDto> dataList = null;
+		int count = examRoomDao.countExamRoom(params);
+		if (count > 0) {
+			pageInfo.setTotal(count);
+			params.put("offset", pageInfo.getOffset());
+			dataList = examRoomDao.queryExamRoom(params);
+		}
+		if (count == 0) {
+			dataList = new ArrayList<>();
+		}
+		pageInfo.setRows(dataList);
+		return pageInfo;
+	}
+
+	@Override
 	public void createExamRoom(ExamRoom examRoom) {
 		if(Objects.isNull(examRoom.getExaminationBasicId())){
 			throw new BizException("请指定考级项目");

+ 36 - 0
edu-user/edu-user-server/src/main/resources/config/mybatis/ExamRoomMapper.xml

@@ -241,6 +241,23 @@
 		LEFT JOIN examination_basic eb ON FIND_IN_SET(er.exam_location_id_,eb.exam_location_id_list_) AND er.tenant_id_ = eb.tenant_id_
 		<include refid="queryExamRoomPageSql"/>
 	</select>
+
+	<sql id="queryExamRoomPageSql">
+		<where>
+			<if test="organIds!=null">
+				AND er.organ_id_ IN
+				<foreach collection="organIds" item="organId" separator="," open="(" close=")">
+					#{organId}
+				</foreach>
+			</if>
+			<if test="examId!=null">
+				AND er.examination_basic_id_=#{examId}
+			</if>
+			<if test="examRoomId!=null">
+				AND er.id_=#{examRoomId}
+			</if>
+		</where>
+	</sql>
 	
 	<select id="queryExamRoomPage" resultMap="ExamRoomDto">
 		SELECT
@@ -255,6 +272,25 @@
 		ORDER BY eb.expect_exam_start_time_ DESC
 		<include refid="global.limit"/>
 	</select>
+
+	<select id="queryExamRoom" resultMap="ExamRoomDto">
+		SELECT
+		er.*,
+		el.id_ el_id_,
+		el.name_ el_name_,
+		eb.name_ exam_name_
+		FROM exam_room er
+		LEFT JOIN exam_location el ON er.exam_location_id_ = el.id_
+		<include refid="queryExamRoomPageSql"/>
+		ORDER BY eb.expect_exam_start_time_ DESC
+		<include refid="global.limit"/>
+	</select>
+
+	<select id="countExamRoom" resultType="java.lang.Integer">
+		SELECT COUNT(er.id_) FROM exam_room er
+		LEFT JOIN exam_location el ON er.exam_location_id_ = el.id_
+		<include refid="queryExamRoomPageSql"/>
+	</select>
 	
     <select id="getWithExam" resultMap="ExamRoom">
 		SELECT * FROM exam_room WHERE examination_basic_id_=#{examId}