Joburgess 5 年之前
父節點
當前提交
c7421b5237
共有 14 個文件被更改,包括 74 次插入54 次删除
  1. 6 4
      edu-user/edu-user-client-api/src/main/java/com/keao/edu/user/api/entity/ExamRoom.java
  2. 3 1
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/ExamOrganizationRelationController.java
  3. 11 4
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/ExamRoomController.java
  4. 3 1
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/dto/ExamOrganizationRelationExtraDto.java
  5. 11 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/entity/ExamOrganizationRelation.java
  6. 1 1
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/ExamRoomService.java
  7. 1 1
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamOrganizationRelationServiceImpl.java
  8. 1 1
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamRegistrationServiceImpl.java
  9. 1 1
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamReviewServiceImpl.java
  10. 13 12
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamRoomServiceImpl.java
  11. 1 1
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamRoomStudentRelationServiceImpl.java
  12. 2 5
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/OrganizationServiceImpl.java
  13. 19 21
      edu-user/edu-user-server/src/main/resources/config/mybatis/ExamOrganizationRelationMapper.xml
  14. 1 1
      edu-user/edu-user-server/src/main/resources/config/mybatis/OrganizationMapper.xml

+ 6 - 4
edu-user/edu-user-client-api/src/main/java/com/keao/edu/user/api/entity/ExamRoom.java

@@ -3,6 +3,8 @@ package com.keao.edu.user.api.entity;
 import com.keao.edu.common.enums.YesOrNoEnum;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 
+import java.util.Date;
+
 /**
  * 对应数据库表(exam_room):
  */
@@ -28,8 +30,8 @@ public class ExamRoom {
 	/** 助考老师(多个用逗号分隔) */
 	private String assistantTeacherUserIdList;
 	
-	/** 考试时间(json格式) */
-	private String examTime;
+	/** 考试时间 */
+	private Date examTime;
 
 	private Integer organId;
 
@@ -135,11 +137,11 @@ public class ExamRoom {
 		return this.updateTime;
 	}
 
-	public String getExamTime() {
+	public Date getExamTime() {
 		return examTime;
 	}
 
-	public void setExamTime(String examTime) {
+	public void setExamTime(Date examTime) {
 		this.examTime = examTime;
 	}
 

+ 3 - 1
edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/ExamOrganizationRelationController.java

@@ -36,7 +36,9 @@ public class ExamOrganizationRelationController extends BaseController {
         if(Objects.isNull(sysUser)){
             return failed("请重新登录");
         }
-        queryInfo.setOrganId(sysUser.getId());
+        if(Objects.isNull(queryInfo.getOrganId())){
+            queryInfo.setOrganId(sysUser.getId());
+        }
         return succeed(examOrganizationRelationService.queryExamOrgans(queryInfo));
     }
 

+ 11 - 4
edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/ExamRoomController.java

@@ -1,5 +1,7 @@
 package com.keao.edu.user.controller;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.serializer.SerializerFeature;
 import com.keao.edu.auth.api.client.SysUserFeignService;
 import com.keao.edu.auth.api.entity.SysUser;
 import com.keao.edu.common.controller.BaseController;
@@ -15,6 +17,8 @@ import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.Objects;
+
 @RestController
 @RequestMapping("examRoom")
 @Api(tags = "考场服务")
@@ -28,8 +32,10 @@ public class ExamRoomController extends BaseController {
     @ApiOperation("分页查询监考列表")
     @GetMapping(value = "/list")
     public HttpResponseResult<PageInfo<ExamRoomDto>> getList(ExamRoomQueryInfo queryInfo) {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        queryInfo.setOrganId(sysUser.getId());
+        if(Objects.isNull(queryInfo.getOrganId())){
+            SysUser sysUser = sysUserFeignService.queryUserInfo();
+            queryInfo.setOrganId(sysUser.getId());
+        }
         return succeed(examRoomService.queryExamRoomPage(queryInfo));
     }
 
@@ -44,10 +50,11 @@ public class ExamRoomController extends BaseController {
 
     @ApiModelProperty("创建教室")
     @PostMapping(value = "/createExamRoom")
-    public HttpResponseResult<ExamRoom> createExamRoom(@RequestBody ExamRoom examRoom){
+    public HttpResponseResult createExamRoom(@RequestBody ExamRoom examRoom){
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         examRoom.setOrganId(sysUser.getId());
-        return succeed(examRoomService.createExamRoom(examRoom));
+        examRoomService.createExamRoom(examRoom);
+        return succeed();
     }
 
     @ApiModelProperty("更新教室信息")

+ 3 - 1
edu-user/edu-user-server/src/main/java/com/keao/edu/user/dto/ExamOrganizationRelationExtraDto.java

@@ -1,10 +1,12 @@
 package com.keao.edu.user.dto;
 
+import com.keao.edu.user.entity.ExamOrganizationRelation;
+
 /**
  * @Author Joburgess
  * @Date 2020.06.18
  */
-public class ExamOrganizationRelationExtraDto {
+public class ExamOrganizationRelationExtraDto extends ExamOrganizationRelation {
 
     private String organizationName;
 

+ 11 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/entity/ExamOrganizationRelation.java

@@ -41,6 +41,9 @@ public class ExamOrganizationRelation {
 	@ApiModelProperty(value = "是否已发送链接")
 	private YesOrNoEnum sendUrlFlag;
 
+	@ApiModelProperty(value = "是否允许排考")
+	private YesOrNoEnum isAllowArrangeExam;
+
 	private java.util.Date createTime;
 
 	private java.util.Date updateTime;
@@ -127,6 +130,14 @@ public class ExamOrganizationRelation {
 		this.sendUrlFlag = sendUrlFlag;
 	}
 
+	public YesOrNoEnum getIsAllowArrangeExam() {
+		return isAllowArrangeExam;
+	}
+
+	public void setIsAllowArrangeExam(YesOrNoEnum isAllowArrangeExam) {
+		this.isAllowArrangeExam = isAllowArrangeExam;
+	}
+
 	public void setCreateTime(java.util.Date createTime){
 		this.createTime = createTime;
 	}

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

@@ -23,7 +23,7 @@ public interface ExamRoomService extends BaseService<Long, ExamRoom> {
      * @param examRoom:
      * @return com.keao.edu.user.api.entity.ExamRoom
      */
-    ExamRoom createExamRoom(ExamRoom examRoom);
+    void createExamRoom(ExamRoom examRoom);
 
     /**
      * @describe 更新教室信息

+ 1 - 1
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamOrganizationRelationServiceImpl.java

@@ -49,7 +49,7 @@ public class ExamOrganizationRelationServiceImpl extends BaseServiceImpl<Long, E
 		Map<String, Object> params = new HashMap<String, Object>();
 		MapUtil.populateMap(params, queryInfo);
 
-		List<Integer> nextLevelOrganIds = organizationService.getNextLevelOrganIds(queryInfo.getOrganId(), true);
+		List<Integer> nextLevelOrganIds = organizationService.getChildOrganIds(queryInfo.getOrganId(), true);
 		params.put("organIds", nextLevelOrganIds);
 
 		List<ExamOrganizationRelation> dataList = new ArrayList<>();

+ 1 - 1
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamRegistrationServiceImpl.java

@@ -82,7 +82,7 @@ public class ExamRegistrationServiceImpl extends BaseServiceImpl<Long, ExamRegis
 		Map<String, Object> params = new HashMap<String, Object>();
 		MapUtil.populateMap(params, queryInfo);
 
-		List<Integer> nextLevelOrganIds = organizationService.getNextLevelOrganIds(queryInfo.getOrganId(), true);
+		List<Integer> nextLevelOrganIds = organizationService.getChildOrganIds(queryInfo.getOrganId(), true);
 		params.put("organIds", nextLevelOrganIds);
 
 		List<ExamRegistration> dataList = Collections.EMPTY_LIST;

+ 1 - 1
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamReviewServiceImpl.java

@@ -42,7 +42,7 @@ public class ExamReviewServiceImpl extends BaseServiceImpl<Long, ExamReview> imp
 		Map<String, Object> params = new HashMap<String, Object>();
 		MapUtil.populateMap(params, queryInfo);
 
-		List<Integer> nextLevelOrganIds = organizationService.getNextLevelOrganIds(queryInfo.getOrganId(), true);
+		List<Integer> nextLevelOrganIds = organizationService.getChildOrganIds(queryInfo.getOrganId(), true);
 		params.put("organIds", nextLevelOrganIds);
 
 		List<ExamReviewDto> dataList = null;

+ 13 - 12
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamRoomServiceImpl.java

@@ -2,6 +2,7 @@ package com.keao.edu.user.service.impl;
 
 
 import com.keao.edu.common.dal.BaseDAO;
+import com.keao.edu.common.enums.YesOrNoEnum;
 import com.keao.edu.common.exception.BizException;
 import com.keao.edu.common.page.PageInfo;
 import com.keao.edu.common.service.impl.BaseServiceImpl;
@@ -65,17 +66,7 @@ public class ExamRoomServiceImpl extends BaseServiceImpl<Long, ExamRoom> impleme
 	}
 
 	@Override
-	public ExamRoom createExamRoom(ExamRoom examRoom) {
-		examRoom.setTenantId(TenantContextHolder.getTenantId().toString());
-		examRoomDao.insert(examRoom);
-		return examRoom;
-	}
-
-	@Override
-	public ExamRoom updateExamRoom(ExamRoom examRoom) {
-		if(Objects.isNull(examRoom.getId())){
-			throw new BizException("未生成教室编号");
-		}
+	public void createExamRoom(ExamRoom examRoom) {
 		if(Objects.isNull(examRoom.getExamMode())){
 			throw new BizException("请指定考试类型");
 		}
@@ -88,9 +79,19 @@ public class ExamRoomServiceImpl extends BaseServiceImpl<Long, ExamRoom> impleme
 		if(Objects.isNull(examRoom.getMainTeacherUserId())){
 			throw new BizException("请指定主考老师");
 		}
-		if(StringUtils.isBlank(examRoom.getExamTime())){
+		if(Objects.isNull(examRoom.getExamTime())){
 			throw new BizException("请指定考试时间");
 		}
+		examRoom.setTenantId(TenantContextHolder.getTenantId().toString());
+		examRoom.setExamPlanPushFlag(YesOrNoEnum.NO);
+		examRoomDao.insert(examRoom);
+	}
+
+	@Override
+	public ExamRoom updateExamRoom(ExamRoom examRoom) {
+		if(Objects.isNull(examRoom.getId())){
+			throw new BizException("请指定教室");
+		}
 		examRoomDao.update(examRoom);
 		return examRoom;
 	}

+ 1 - 1
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamRoomStudentRelationServiceImpl.java

@@ -82,7 +82,7 @@ public class ExamRoomStudentRelationServiceImpl extends BaseServiceImpl<Long, Ex
 		Map<String, Object> params = new HashMap<String, Object>();
 		MapUtil.populateMap(params, queryInfo);
 
-		List<Integer> nextLevelOrganIds = organizationService.getNextLevelOrganIds(queryInfo.getOrganId(), true);
+		List<Integer> nextLevelOrganIds = organizationService.getChildOrganIds(queryInfo.getOrganId(), true);
 		params.put("organIds", nextLevelOrganIds);
 
 		List<ExamRoomStudentRelationDto> dataList = new ArrayList<>();

+ 2 - 5
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/OrganizationServiceImpl.java

@@ -137,10 +137,7 @@ public class OrganizationServiceImpl extends BaseServiceImpl<Integer, Organizati
 		if(Objects.isNull(organization)){
 			throw new BizException("当前声部不存在");
 		}
-		StringBuffer parentOrganIdTag= new StringBuffer(organization.getParentOrganIdTag());
-		parentOrganIdTag.append(",");
-		parentOrganIdTag.append(organization.getId());
-		List<Integer> selfAndChildOrganIds = organDao.getChildOrganIds(parentOrganIdTag.toString());
+		List<Integer> selfAndChildOrganIds = organDao.getChildOrganIds(organization.getParentOrganIdTag());
 		if(null == selfAndChildOrganIds){
 			selfAndChildOrganIds= Collections.EMPTY_LIST;
 		}
@@ -163,6 +160,6 @@ public class OrganizationServiceImpl extends BaseServiceImpl<Integer, Organizati
 		if(includeSelf){
 			selfAndChildOrganIds.add(organization.getId());
 		}
-		return null;
+		return selfAndChildOrganIds;
 	}
 }

+ 19 - 21
edu-user/edu-user-server/src/main/resources/config/mybatis/ExamOrganizationRelationMapper.xml

@@ -8,7 +8,6 @@
 	
 	<resultMap type="com.keao.edu.user.entity.ExamOrganizationRelation" id="ExamOrganizationRelation">
 		<result column="id_" property="id" />
-
 		<result column="examination_basic_id_" property="examinationBasicId" />
 		<result column="organ_id_" property="organId" />
 		<result column="settlement_type_" property="settlementType" typeHandler="com.keao.edu.common.dal.CustomEnumTypeHandler" />
@@ -17,6 +16,7 @@
 		<result column="total_payment_amount_" property="totalPaymentAmount"/>
 		<result column="url_" property="url" />
 		<result column="send_url_flag_" property="sendUrlFlag" typeHandler="com.keao.edu.common.dal.CustomEnumTypeHandler" />
+		<result column="is_allow_arrange_exam_" property="isAllowArrangeExam" typeHandler="com.keao.edu.common.dal.CustomEnumTypeHandler" />
 		<result column="create_time_" property="createTime" />
 		<result column="update_time_" property="updateTime" />
 		<result column="tenant_id_" property="tenantId" />
@@ -38,15 +38,15 @@
 	
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.keao.edu.user.entity.ExamOrganizationRelation" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
-		INSERT INTO exam_organization_relation (examination_basic_id_,organ_id_,settlement_type_,share_profit_amount_,total_registration_student_num_,total_payment_amount_,url_,send_url_flag_,create_time_,update_time_,tenant_id_)
-		VALUES(#{examinationBasicId},#{organId},#{settlementType,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},#{shareProfitAmount},#{totalRegistrationStudentNum},#{totalPaymentAmount},#{url},#{sendUrlFlag,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},NOW(),NOW(),#{tenantId})
+		INSERT INTO exam_organization_relation (examination_basic_id_,organ_id_,settlement_type_,share_profit_amount_,total_registration_student_num_,total_payment_amount_,url_,send_url_flag_,is_allow_arrange_exam_,create_time_,update_time_,tenant_id_)
+		VALUES(#{examinationBasicId},#{organId},#{settlementType,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},#{shareProfitAmount},#{totalRegistrationStudentNum},#{totalPaymentAmount},#{url},#{sendUrlFlag,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},#{isAllowArrangeExam,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},NOW(),NOW(),#{tenantId})
 	</insert>
 
     <insert id="batchInsert" parameterType="com.keao.edu.user.entity.ExamOrganizationRelation" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
-		INSERT INTO exam_organization_relation (examination_basic_id_,organ_id_,settlement_type_,share_profit_amount_,total_registration_student_num_,total_payment_amount_,url_,send_url_flag_,create_time_,update_time_,tenant_id_)
+		INSERT INTO exam_organization_relation (examination_basic_id_,organ_id_,settlement_type_,share_profit_amount_,total_registration_student_num_,total_payment_amount_,url_,send_url_flag_,is_allow_arrange_exam_,create_time_,update_time_,tenant_id_)
 		VALUES
 		<foreach collection="examOrganizationRelations" item="examOrganizationRelation" separator=",">
-			(#{examOrganizationRelation.examinationBasicId},#{examOrganizationRelation.organId},#{examOrganizationRelation.settlementType,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},#{examOrganizationRelation.shareProfitAmount},#{examOrganizationRelation.totalRegistrationStudentNum},#{examOrganizationRelation.totalPaymentAmount},#{examOrganizationRelation.url},#{examOrganizationRelation.sendUrlFlag,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},NOW(),NOW(),#{examOrganizationRelation.tenantId})
+			(#{examOrganizationRelation.examinationBasicId},#{examOrganizationRelation.organId},#{examOrganizationRelation.settlementType,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},#{examOrganizationRelation.shareProfitAmount},#{examOrganizationRelation.totalRegistrationStudentNum},#{examOrganizationRelation.totalPaymentAmount},#{examOrganizationRelation.url},#{examOrganizationRelation.sendUrlFlag,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},#{examOrganizationRelation.isAllowArrangeExam,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},NOW(),NOW(),#{examOrganizationRelation.tenantId})
 		</foreach>
 	</insert>
 
@@ -55,25 +55,25 @@
 		UPDATE exam_organization_relation
 		<set>
 			<if test="examinationBasicId != null">
-			examination_basic_id_ = #{examinationBasicId},
+				examination_basic_id_ = #{examinationBasicId},
 			</if>
 			<if test="id != null">
-			id_ = #{id},
+				id_ = #{id},
 			</if>
 			<if test="sendUrlFlag != null">
-			send_url_flag_ = #{sendUrlFlag,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},
+				send_url_flag_ = #{sendUrlFlag,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},
+			</if>
+			<if test="isAllowArrangeExam != null">
+				is_allow_arrange_exam_ = #{isAllowArrangeExam,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},
 			</if>
 			<if test="url != null">
-			url_ = #{url},
+				url_ = #{url},
 			</if>
 			<if test="tenantId != null">
-			tenant_id_ = #{tenantId},
-			</if>
-			<if test="updateTime != null">
-			update_time_ = #{updateTime},
+				tenant_id_ = #{tenantId},
 			</if>
 			<if test="shareProfitAmount != null">
-			share_profit_amount_ = #{shareProfitAmount},
+				share_profit_amount_ = #{shareProfitAmount},
 			</if>
 			<if test="totalRegistrationStudentNum != null">
 				total_registration_student_num_ = #{totalRegistrationStudentNum},
@@ -82,14 +82,12 @@
 				total_payment_amount_ = #{totalPaymentAmount},
 			</if>
 			<if test="organId != null">
-			organ_id_ = #{organId},
+				organ_id_ = #{organId},
 			</if>
 			<if test="settlementType != null">
-			settlement_type_ = #{settlementType,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},
-			</if>
-			<if test="createTime != null">
-			create_time_ = #{createTime},
+				settlement_type_ = #{settlementType,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},
 			</if>
+				update_time_ = NOW()
 		</set> WHERE id_ = #{id}
 	</update>
 	<update id="batchUpdateSendUrlFlag">
@@ -108,7 +106,7 @@
 	<sql id="queryCondition">
 		<where>
 			ear.tenant_id_=#{tenantId}
-			AND ear.orga_id_ IN
+			AND ear.organ_id_ IN
 			<foreach collection="organIds" item="organId" separator="," open="(" close=")">
 				#{organId}
 			</foreach>
@@ -137,7 +135,7 @@
 	
 	<!-- 查询当前表的总记录数 -->
 	<select id="queryCount" resultType="int">
-		SELECT COUNT(*) FROM organ a
+		SELECT COUNT(*) FROM organization a
 		LEFT JOIN exam_organization_relation ear ON ear.organ_id_=a.id_
 		<if test="examId!=null">
 			AND ear.examination_basic_id_=#{examId}

+ 1 - 1
edu-user/edu-user-server/src/main/resources/config/mybatis/OrganizationMapper.xml

@@ -120,7 +120,7 @@
 	<select id="getByTenant" resultMap="Organization">
 		SELECT * FROM organization WHERE tenant_id_ = #{tenantId} ORDER BY id_
 	</select>
-	<select id="getSelfAndChildOrganIds" resultType="int">
+	<select id="getChildOrganIds" resultType="int">
 		SELECT id_ FROM organization WHERE parent_organ_id_tag_ LIKE CONCAT(#{parentOrganIdTag}, '%');
 	</select>
 	<select id="getNextLevelOrganIds" resultType="int">