Sfoglia il codice sorgente

考试安排接口完善

change 4 anni fa
parent
commit
98eee1cb11

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/bo/ExamArrangementEditBo.java

@@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 import java.util.Date;
+import java.util.List;
 
 
 /**
@@ -109,4 +110,8 @@ public class ExamArrangementEditBo {
     /** 申领证书 */
     @ApiModelProperty("申领证书")
     private String certificate;
+
+    /** 申领证书 */
+    @ApiModelProperty("考試時間")
+    private List<ExamArrangementTimeEditBo> examArrangementTimeEditBoList;
 }

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/bo/ExamArrangementTimeEditBo.java

@@ -29,4 +29,8 @@ public class ExamArrangementTimeEditBo {
     /** 考试结束时间 */
     @ApiModelProperty("考试结束时间")
     private Long endTime;
+
+    /** 是否刪除該時間段  0 刪除  1保留*/
+    @ApiModelProperty("是否刪除該時間段")
+    private Integer status;
 }

+ 1 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/mapper/ExamArrangementTimeMapper.java

@@ -11,4 +11,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface ExamArrangementTimeMapper extends BaseMapper<ExamArrangementTime> {
 
+    void insertExamTime(ExamArrangementTime examArrangementTime);
 }

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/IExamArrangementService.java

@@ -51,5 +51,11 @@ public interface IExamArrangementService extends IService<ExamArrangement> {
 	 */
 	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
 
+
+	/**
+	 * 查询学员考试安排列表
+	 * @param bo 查詢參數
+	 * @return
+	 */
 	List<ExamUserVo> queryUserList(ExamArrangementQueryBo bo);
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/IExamArrangementTimeService.java

@@ -49,4 +49,6 @@ public interface IExamArrangementTimeService extends IService<ExamArrangementTim
 	 * @return
 	 */
 	Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+
+    void insertExamArrangementTime(ExamArrangementTime examArrangementTime);
 }

+ 20 - 4
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/impl/ExamArrangementServiceImpl.java

@@ -25,6 +25,7 @@ import com.zhongzheng.modules.exam.domain.ExamArrangement;
 import com.zhongzheng.modules.exam.mapper.ExamArrangementMapper;
 import com.zhongzheng.modules.exam.vo.ExamArrangementVo;
 import com.zhongzheng.modules.exam.service.IExamArrangementService;
+import org.springframework.util.CollectionUtils;
 
 import java.util.ArrayList;
 import java.util.Collection;
@@ -95,6 +96,7 @@ public class ExamArrangementServiceImpl extends ServiceImpl<ExamArrangementMappe
         lqw.eq(StrUtil.isNotBlank(bo.getRegGuide()), ExamArrangement::getRegGuide, bo.getRegGuide());
         lqw.eq(StrUtil.isNotBlank(bo.getExamPeriod()), ExamArrangement::getExamPeriod, bo.getExamPeriod());
         lqw.eq(bo.getStatus() != null, ExamArrangement::getStatus, bo.getStatus());
+        lqw.eq(bo.getStatus() == null, ExamArrangement::getStatus, 0);
         lqw.eq(bo.getExamForm() != null, ExamArrangement::getExamForm, bo.getExamForm());
         lqw.eq(StrUtil.isNotBlank(bo.getExamFromUrl()), ExamArrangement::getExamFromUrl, bo.getExamFromUrl());
         lqw.eq(StrUtil.isNotBlank(bo.getPrintUrl()), ExamArrangement::getPrintUrl, bo.getPrintUrl());
@@ -159,6 +161,21 @@ public class ExamArrangementServiceImpl extends ServiceImpl<ExamArrangementMappe
     public Boolean updateByEditBo(ExamArrangementEditBo bo) {
         ExamArrangement update = BeanUtil.toBean(bo, ExamArrangement.class);
         validEntityBeforeSave(update);
+        if (!CollectionUtils.isEmpty(bo.getExamArrangementTimeEditBoList())) {
+            bo.getExamArrangementTimeEditBoList().stream().forEach(e -> {
+                if (e.getStatus() != null && e.getStatus() == 0){
+                    LambdaQueryWrapper<ExamArrangementTime> lqw = Wrappers.lambdaQuery();
+                    lqw.eq(e.getArrangementId()!= null,ExamArrangementTime::getArrangementId,e.getArrangementId());
+                    lqw.eq(e.getEndTime() != null,ExamArrangementTime::getEndTime,e.getEndTime());
+                    lqw.eq(e.getStartTime() != null,ExamArrangementTime::getStartTime,e.getStartTime());
+                    examArrangementTimeService.remove(lqw);
+                }else {
+                    ExamArrangementTime examArrangementTime = BeanUtil.toBean(e, ExamArrangementTime.class);
+                    examArrangementTime.setArrangementId(bo.getId());
+                    examArrangementTimeService.insertExamArrangementTime(examArrangementTime);
+                }
+            });
+        }
         return this.updateById(update);
     }
 
@@ -173,10 +190,9 @@ public class ExamArrangementServiceImpl extends ServiceImpl<ExamArrangementMappe
 
     @Override
     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
-        if(isValid){
-            //TODO 做一些业务上的校验,判断是否需要校验
-        }
-        return this.removeByIds(ids);
+       List<ExamArrangement> examArrangementList = new ArrayList<>();
+       ids.stream().forEach(id -> examArrangementList.add(new ExamArrangement().setId(id).setStatus(0)));
+        return this.updateBatchById(examArrangementList);
     }
 
     @Override

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/impl/ExamArrangementTimeServiceImpl.java

@@ -94,4 +94,9 @@ public class ExamArrangementTimeServiceImpl extends ServiceImpl<ExamArrangementT
         }
         return this.removeByIds(ids);
     }
+
+    @Override
+    public void insertExamArrangementTime(ExamArrangementTime examArrangementTime) {
+        baseMapper.insertExamTime(examArrangementTime);
+    }
 }

+ 2 - 0
zhongzheng-system/src/main/resources/mapper/modules/exam/ExamArrangementStudentMapper.xml

@@ -71,8 +71,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                 LEFT JOIN exam_arrangement e ON s.arrangement_id = e.id
                 LEFT JOIN exam_arrangement_time t ON t.arrangement_id = e.id
         WHERE 1=1
+          AND e.status != 0
         <if test="startTime != null and startTime != ''">
             AND t.start_time BETWEEN #{startTime} and #{endTime}
         </if>
+
     </select>
 </mapper>

+ 11 - 0
zhongzheng-system/src/main/resources/mapper/modules/exam/ExamArrangementTimeMapper.xml

@@ -11,4 +11,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </resultMap>
 
 
+    <insert id="insertExamTime" parameterType="map">
+        insert into exam_arrangement_time (
+        arrangement_id,
+        start_time,
+        end_time
+        )values(
+                #{arrangementId},
+                #{startTime},
+                #{endTime}
+             )
+    </insert>
 </mapper>