diff --git a/ccic-entity/src/main/java/com/ccic/safeliab/entity/ExamSchedule.java b/ccic-entity/src/main/java/com/ccic/safeliab/entity/ExamSchedule.java index 31ac3af..c33127d 100644 --- a/ccic-entity/src/main/java/com/ccic/safeliab/entity/ExamSchedule.java +++ b/ccic-entity/src/main/java/com/ccic/safeliab/entity/ExamSchedule.java @@ -1,12 +1,14 @@ package com.ccic.safeliab.entity; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; import java.sql.Timestamp; @@ -25,9 +27,23 @@ public class ExamSchedule extends BaseEntity{ private Long examId; private String examName; private Integer paperId; + @TableField(exist = false) + private String paperName; private String regulatedIndustry; private String examRegion; + @DateTimeFormat( + pattern = "yyyy-MM-dd" + ) + @JsonFormat( + pattern = "yyyy-MM-dd" + ) private String validFrom; + @DateTimeFormat( + pattern = "yyyy-MM-dd" + ) + @JsonFormat( + pattern = "yyyy-MM-dd" + ) private String validTo; private Integer publishStatus; private String remark; diff --git a/ccic-exam/src/main/java/com/ccic/safeliab/dao/ExamScheduleMapper.java b/ccic-exam/src/main/java/com/ccic/safeliab/dao/ExamScheduleMapper.java index 0b77843..6ee97fd 100644 --- a/ccic-exam/src/main/java/com/ccic/safeliab/dao/ExamScheduleMapper.java +++ b/ccic-exam/src/main/java/com/ccic/safeliab/dao/ExamScheduleMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ccic.safeliab.entity.ExamSchedule; import com.ccic.safeliab.entity.Industry; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; import java.util.List; import java.util.Map; diff --git a/ccic-exam/src/main/java/com/ccic/safeliab/service/ExamScheduleService.java b/ccic-exam/src/main/java/com/ccic/safeliab/service/ExamScheduleService.java index b2fcf2d..28f9019 100644 --- a/ccic-exam/src/main/java/com/ccic/safeliab/service/ExamScheduleService.java +++ b/ccic-exam/src/main/java/com/ccic/safeliab/service/ExamScheduleService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ccic.safeliab.entity.ExamSchedule; import com.ccic.safeliab.entity.Industry; import com.ccic.safeliab.support.BaseService; +import org.apache.ibatis.annotations.Param; import java.util.List; import java.util.Map; @@ -12,4 +13,8 @@ public interface ExamScheduleService extends BaseService { public List selectExamSchedule(Map param); public List> getIndustry(); public List> getPaper(); + public ExamSchedule getExamDataById(String id); + public int doPublish(List ids); + public int doDelete(List ids); + public int doCancel(List ids); } diff --git a/ccic-exam/src/main/java/com/ccic/safeliab/service/ExamScheduleServiceImpl.java b/ccic-exam/src/main/java/com/ccic/safeliab/service/ExamScheduleServiceImpl.java index 2d081be..519b60c 100644 --- a/ccic-exam/src/main/java/com/ccic/safeliab/service/ExamScheduleServiceImpl.java +++ b/ccic-exam/src/main/java/com/ccic/safeliab/service/ExamScheduleServiceImpl.java @@ -6,6 +6,7 @@ import com.ccic.safeliab.dao.ExamScheduleMapper; import com.ccic.safeliab.entity.ExamSchedule; import com.ccic.safeliab.entity.Industry; import com.ccic.safeliab.support.BaseServiceImpl; +import org.apache.ibatis.annotations.Param; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -26,5 +27,32 @@ public class ExamScheduleServiceImpl extends BaseServiceImpl> getPaper(){ return baseMapper.getPaper(); } + public ExamSchedule getExamDataById(String id){ + return baseMapper.selectById(id); + } + public int doPublish(List ids){ + List ExamSchedules = baseMapper.selectBatchIds(ids); + for(ExamSchedule info : ExamSchedules){ + info.setPublishStatus(1); + } + boolean result = updateBatchById(ExamSchedules); + return result?ExamSchedules.size():0; + } + public int doDelete(List ids){ + List ExamSchedules = baseMapper.selectBatchIds(ids); + for(ExamSchedule info : ExamSchedules){ + info.setIsDeleted(1); + } + boolean result = updateBatchById(ExamSchedules); + return result?ExamSchedules.size():0; + } + public int doCancel(List ids){ + List ExamSchedules = baseMapper.selectBatchIds(ids); + for(ExamSchedule info : ExamSchedules){ + info.setPublishStatus(2); + } + boolean result = updateBatchById(ExamSchedules); + return result?ExamSchedules.size():0; + } } diff --git a/ccic-exam/src/main/java/com/ccic/safeliab/web/ExamScheduleController.java b/ccic-exam/src/main/java/com/ccic/safeliab/web/ExamScheduleController.java index 7836aff..201e139 100644 --- a/ccic-exam/src/main/java/com/ccic/safeliab/web/ExamScheduleController.java +++ b/ccic-exam/src/main/java/com/ccic/safeliab/web/ExamScheduleController.java @@ -43,12 +43,17 @@ public class ExamScheduleController { return R.ok().data(result); } @GetMapping("/cancel") - public R cancel() { + public R cancel(@RequestParam(required = false) String[] ids) { ExamScheduleVO insDemoVO = new ExamScheduleVO(); return R.ok().data(service.list(Condition.getQueryWrapper(insDemoVO))); } @GetMapping("/publish") - public R publish() { + public R publish(@RequestParam(required = false) String[] ids) { + ExamScheduleVO insDemoVO = new ExamScheduleVO(); + return R.ok().data(service.list(Condition.getQueryWrapper(insDemoVO))); + } + @GetMapping("/delete") + public R delete(@RequestParam(required = false) String[] ids) { ExamScheduleVO insDemoVO = new ExamScheduleVO(); return R.ok().data(service.list(Condition.getQueryWrapper(insDemoVO))); } @@ -62,19 +67,20 @@ public class ExamScheduleController { @PostMapping("/insert") public R insert(@RequestBody ExamScheduleVO examSchedule) { examSchedule.setPublishStatus(0); - boolean result = service.save(examSchedule); + boolean result = service.saveOrUpdate(examSchedule); return R.ok().data("success."); } @GetMapping("/getIndustry") public R getIndustry(){ return R.ok().data(service.getIndustry()); } - + @GetMapping("/getExamDataById") + public R getExamDataById(@RequestParam(required = false) String id){ + return R.ok().data(service.getExamDataById(id)); + } @GetMapping("/getPaper") public R getPaper(){ - List> results = new ArrayList<>(); - results.addAll(service.getPaper()); - return R.ok().data(results); + return R.ok().data(service.getPaper()); } diff --git a/ccic-exam/src/main/resources/mappers/ExamScheduleMapper.xml b/ccic-exam/src/main/resources/mappers/ExamScheduleMapper.xml index 7c62d00..2e4c501 100644 --- a/ccic-exam/src/main/resources/mappers/ExamScheduleMapper.xml +++ b/ccic-exam/src/main/resources/mappers/ExamScheduleMapper.xml @@ -6,29 +6,38 @@ info.exam_id, info.exam_name, paper.paper_name, - info.regulated_industry, - info.exam_region, + ind.industry_name AS regulated_industry, + CASE + WHEN INSTR(info.exam_region, '/') > 0 THEN + SUBSTRING(info.exam_region, INSTR(info.exam_region, '/') + 1) + ELSE + info.exam_region + END AS exam_region, info.valid_from, info.valid_to, info.publish_status FROM ex_exam_info info LEFT JOIN ex_exam_papers paper - ON info.paper_id = paper.paper_id + ON info.paper_id = paper.id + LEFT JOIN tbl_industry ind + ON ind.industry_id = info.regulated_industry + AND ind.status = 1 WHERE info.is_deleted = 0 - AND info.exam_name LIKE CONCAT('%', #{examName}, '%') + AND info.exam_name LIKE '%' + #{examName} + '%' - AND paper.paper_name LIKE CONCAT('%', #{paperName}, '%') + AND paper.paper_name LIKE '%' + #{paperName} + '%' - AND info.regulated_industry = #{regulatedIndustry} + AND ind.industry_id = #{regulatedIndustry} AND #{date} BETWEEN info.valid_from AND info.valid_to + order by info.exam_id