功能完善,页面展示修改。
This commit is contained in:
parent
549c9c3aef
commit
7c8c39c4d0
@ -16,6 +16,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@ -125,4 +126,16 @@ public class ExaminationController extends DefaultBaseController {
|
||||
return examinationService.resultExamUser(page);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "分配的监考老师", notes = "分配的监考老师接口")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "examinationId", value = "ID", paramType = "path")
|
||||
})
|
||||
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
|
||||
@GetMapping("get-exam-user/{examId}")
|
||||
public ExaminationDTO getExamUser(@PathVariable("examId") String examId) {
|
||||
Map<String, Object> params = new HashMap<>();
|
||||
params.put("examId", examId);
|
||||
return examinationService.getExamUser(params);
|
||||
}
|
||||
|
||||
}
|
@ -147,4 +147,12 @@ public interface IExaminationDao {
|
||||
* @throws SearchException
|
||||
*/
|
||||
void updateExamHis(Map<String, Object> params) throws SearchException;
|
||||
|
||||
/**
|
||||
* 分配的监考老师
|
||||
* @param params
|
||||
* @return
|
||||
* @throws SearchException
|
||||
*/
|
||||
ExaminationDTO getExamUser(Map<String, Object> params) throws SearchException;
|
||||
}
|
@ -144,8 +144,14 @@ public class ExamApplyServiceImpl extends DefaultBaseService implements IExamApp
|
||||
DistributionSaveVO dstributionSaveVO = new DistributionSaveVO();
|
||||
dstributionSaveVO.setPlanId(examApplyVO.getExamId());
|
||||
dstributionSaveVO.setPlanName(examApplyVO.getPlanName());
|
||||
dstributionSaveVO.setDistributionTime(examApplyVO.getTheoryExamStartTime());
|
||||
dstributionSaveVO.setDistributionEndTime(examApplyVO.getTheoryExamEndTime());
|
||||
if(1 == examApplyVO.getExamType()) {
|
||||
dstributionSaveVO.setDistributionTime(examApplyVO.getTheoryExamStartTime());
|
||||
dstributionSaveVO.setDistributionEndTime(examApplyVO.getTheoryExamEndTime());
|
||||
}
|
||||
if(2 == examApplyVO.getExamType()) {
|
||||
dstributionSaveVO.setDistributionTime(examApplyVO.getPracticeExamStartTime());
|
||||
dstributionSaveVO.setDistributionEndTime(examApplyVO.getPracticeExamEndTime());
|
||||
}
|
||||
dstributionSaveVO.setDistributionNumber(examApplyVO.getPlanPersonNum());
|
||||
dstributionSaveVO.setStationId(examApplyVO.getTheoryExamAddressId());
|
||||
distributionService.save(dstributionSaveVO);
|
||||
|
@ -182,6 +182,8 @@ public class ExamCheckServiceImpl extends DefaultBaseService implements IExamChe
|
||||
ClassPlanDTO classPlanDTO = classPlanService.get(examCheckDTO.getPlanId());
|
||||
examCheckDTO.setClassPlanDTO(classPlanDTO);
|
||||
if(null != classPlanDTO) {
|
||||
System.out.println(classPlanDTO.getClassPlanId());
|
||||
System.out.println(classPlanDTO.getOrgId());
|
||||
InstitutionDTO institutionDTO = iInstitutionService.get(classPlanDTO.getOrgId());
|
||||
if(null != institutionDTO) {
|
||||
classPlanDTO.setOrgId(institutionDTO.getInstitutionName());
|
||||
|
@ -201,4 +201,12 @@ public interface IExaminationService {
|
||||
* @throws SearchException
|
||||
*/
|
||||
SuccessResultList<List<ExaminationDTO>> resultExamUser(ListPage page) throws SearchException;
|
||||
|
||||
/**
|
||||
* 分配的监考老师
|
||||
* @param params
|
||||
* @return
|
||||
* @throws SearchException
|
||||
*/
|
||||
ExaminationDTO getExamUser(Map<String, Object> params) throws SearchException;
|
||||
}
|
@ -262,6 +262,11 @@ public class ExaminationServiceImpl extends DefaultBaseService implements IExami
|
||||
return new SuccessResultList<>(examinationDTOList, pageInfo.getPageNum(), pageInfo.getTotal());
|
||||
}
|
||||
|
||||
@Override
|
||||
public ExaminationDTO getExamUser(Map<String, Object> params) throws SearchException {
|
||||
return examinationDao.getExamUser(params);
|
||||
}
|
||||
|
||||
/**
|
||||
* 判断当天是否存在该考务人员的监考记录
|
||||
* @param params
|
||||
|
@ -131,8 +131,8 @@
|
||||
WHERE
|
||||
t1.is_delete = 0
|
||||
<if test="examinationId != null and examinationId != ''">
|
||||
AND
|
||||
t1.examination_id = #{examinationId}
|
||||
AND
|
||||
t1.examination_id = #{examinationId}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
@ -330,7 +330,7 @@
|
||||
emergency_examination_his t1
|
||||
WHERE
|
||||
(
|
||||
datediff(t1.gmt_create, #{startDay}) = 0
|
||||
datediff(t1.start_time, #{startDay}) = 0
|
||||
)
|
||||
AND t1.is_delete = 0
|
||||
<if test="examinationId != null and examinationId != ''">
|
||||
@ -380,4 +380,21 @@
|
||||
AND exam_id = #{examId}
|
||||
</update>
|
||||
|
||||
<!-- 分配的监考老师 -->
|
||||
<select id="getExamUser" parameterType="map" resultMap="examinationDTO">
|
||||
SELECT
|
||||
t2.`name`,
|
||||
t2.phone,
|
||||
t2.examination_id
|
||||
FROM
|
||||
emergency_examination_his t1
|
||||
LEFT JOIN emergency_examination t2 ON t1.examination_id = t2.examination_id
|
||||
AND t2.is_delete = 0
|
||||
WHERE
|
||||
t1.is_delete = 0
|
||||
<if test="examId != null and examId != ''">
|
||||
AND t1.exam_id = #{examId}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
</mapper>
|
@ -301,6 +301,18 @@
|
||||
rowData = '<a class="layui-btn layui-btn-xs" lay-event="sendExamination">分配监考老师</a>';
|
||||
return rowData;
|
||||
}
|
||||
},
|
||||
{field: 'viewExamination', fixed: 'right', width: 150, title: '查看监考老师', align:'center',
|
||||
templet: function(row) {
|
||||
var status = row['status'];
|
||||
var rowData;
|
||||
if('0' == status) {
|
||||
rowData = '暂未分配考场信息';
|
||||
return rowData;
|
||||
}
|
||||
rowData = '<a class="layui-btn layui-btn-xs" lay-event="viewExamination">查看监考老师</a>';
|
||||
return rowData;
|
||||
}
|
||||
}
|
||||
]
|
||||
],
|
||||
@ -450,9 +462,42 @@
|
||||
});
|
||||
}
|
||||
|
||||
// 查看监考老师
|
||||
function viewExamination(data) {
|
||||
var loadLayerIndex;
|
||||
top.restAjax.get(top.restAjax.path('api/examination/get-exam-user/{examId}',
|
||||
[data.examId]), {}, null, function(code, resultData) {
|
||||
layer.open({
|
||||
type: 2,
|
||||
title: false,
|
||||
closeBtn: 0,
|
||||
area: ['100%', '100%'],
|
||||
shadeClose: true,
|
||||
anim: 2,
|
||||
content: top.restAjax.path('route/examinationuser/update.html?examinationId={examinationId}&isView={isView}', [resultData.examinationId, 'yes']),
|
||||
end: function() {
|
||||
reloadTable();
|
||||
}
|
||||
});
|
||||
}, function(code, data) {
|
||||
top.dialog.msg(data.msg);
|
||||
}, function() {
|
||||
loadLayerIndex = top.dialog.msg(top.dataMessage.loading, {icon: 16, time: 0, shade: 0.3});
|
||||
}, function() {
|
||||
top.dialog.close(loadLayerIndex);
|
||||
});
|
||||
}
|
||||
|
||||
function selOther(data) {
|
||||
var startTime;
|
||||
if(data.examType == '1') {
|
||||
startTime = data.theoryExamStartTime;
|
||||
}
|
||||
if(data.examType == '2') {
|
||||
startTime = data.practiceExamStartTime
|
||||
}
|
||||
top.dialog.open({
|
||||
url: top.restAjax.path('route/examinationuser/view-list.html?startTime={startTime}', [data.theoryExamStartTime]),
|
||||
url: top.restAjax.path('route/examinationuser/view-list.html?startTime={startTime}', [startTime]),
|
||||
title: "剩余考务人员",
|
||||
width: '80%',
|
||||
height: '80%',
|
||||
@ -471,6 +516,9 @@
|
||||
}else if('selOther' == obj.event) {
|
||||
// 查看剩余监考老师
|
||||
selOther(data);
|
||||
}else if('viewExamination' == obj.event) {
|
||||
// 查看监考老师
|
||||
viewExamination(data);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
@ -104,7 +104,7 @@
|
||||
<input type="text" id="certificateOffice" name="certificateOffice" class="layui-input" value="" lay-verify="required" placeholder="请输入发证机关" maxlength="255">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-form-item" id="theoryAddressDiv">
|
||||
<label class="layui-form-label" style="width: 130px;">理论考试地点</label>
|
||||
<div class="layui-input-block layui-form" id="theoryExamAddressIdSelectTemplateBox" lay-filter="theoryExamAddressIdSelectTemplateBox" style="margin-left: 130px;"></div>
|
||||
<script id="theoryExamAddressIdSelectTemplate" type="text/html">
|
||||
@ -116,7 +116,7 @@
|
||||
</select>
|
||||
</script>
|
||||
</div>
|
||||
<div class="layui-form-item layui-row">
|
||||
<div class="layui-form-item layui-row" id="theoryTimeDiv">
|
||||
<div class="layui-col-lg6">
|
||||
<label class="layui-form-label" style="width: 144px;">理论考试开始时间</label>
|
||||
<div class="layui-input-block" style="margin-left: 144px;">
|
||||
@ -131,7 +131,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-form-item" id="practiceAddressDiv">
|
||||
<label class="layui-form-label" style="width: 130px;">实操考试地点</label>
|
||||
<div class="layui-input-block layui-form" id="practiceExamAddressIdSelectTemplateBox" lay-filter="practiceExamAddressIdSelectTemplateBox" style="margin-left: 130px;"></div>
|
||||
<script id="practiceExamAddressIdSelectTemplate" type="text/html">
|
||||
@ -143,7 +143,7 @@
|
||||
</select>
|
||||
</script>
|
||||
</div>
|
||||
<div class="layui-form-item layui-row">
|
||||
<div class="layui-form-item layui-row" id="practiceTimeDiv">
|
||||
<div class="layui-col-lg6">
|
||||
<label class="layui-form-label" style="width: 144px;">实操考试开始时间</label>
|
||||
<div class="layui-input-block" style="margin-left: 144px;">
|
||||
@ -225,6 +225,7 @@
|
||||
var wangEditor = window.wangEditor;
|
||||
var wangEditorObj = {};
|
||||
var viewerObj = {};
|
||||
var examType = 1;
|
||||
|
||||
// 初始化实操考试地点下拉选择
|
||||
function initPracticeExamAddressIdSelect(selectValue) {
|
||||
@ -420,6 +421,8 @@
|
||||
var loadLayerIndex;
|
||||
top.restAjax.get(top.restAjax.path('api/examapply/get/{examApplyId}', [examApplyId]), {}, null, function(code, data) {
|
||||
var dataFormData = {};
|
||||
examType = data.examType;
|
||||
initExamType(data.examType);
|
||||
for(var i in data) {
|
||||
dataFormData[i] = data[i] +'';
|
||||
}
|
||||
@ -447,6 +450,27 @@
|
||||
}
|
||||
initData();
|
||||
|
||||
function initExamType(examType) {
|
||||
if('1' == examType) {
|
||||
$('#theoryAddressDiv').show();
|
||||
$('#theoryTimeDiv').show();
|
||||
$('#practiceAddressDiv').hide();
|
||||
$('#practiceTimeDiv').hide();
|
||||
}
|
||||
if('2' == examType) {
|
||||
$('#theoryAddressDiv').hide();
|
||||
$('#theoryTimeDiv').hide();
|
||||
$('#practiceAddressDiv').show();
|
||||
$('#practiceTimeDiv').show();
|
||||
}
|
||||
if('3' == examType) {
|
||||
$('#theoryAddressDiv').show();
|
||||
$('#theoryTimeDiv').show();
|
||||
$('#practiceAddressDiv').show();
|
||||
$('#practiceTimeDiv').show();
|
||||
}
|
||||
}
|
||||
|
||||
// 获取考试申请基本信息
|
||||
function initExamBaseInfo() {
|
||||
var loadLayerIndex;
|
||||
@ -493,20 +517,36 @@
|
||||
}
|
||||
}
|
||||
|
||||
// 提交表单
|
||||
form.on('submit(submitForm)', function(formData) {
|
||||
function theoryCheck() {
|
||||
var theoryExamStartTime = new Date($('#theoryExamEndTime').val()).getTime();
|
||||
var theoryExamEndTime = new Date($('#theoryExamStartTime').val()).getTime();
|
||||
if(theoryExamEndTime >= theoryExamStartTime) {
|
||||
top.dialog.msg('理论考试结束时间不能早于等于开始时间');
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/*var practiceExamStartTime = new Date($('#practiceExamEndTime').val()).getTime();
|
||||
function practiceCheck() {
|
||||
var practiceExamStartTime = new Date($('#practiceExamEndTime').val()).getTime();
|
||||
var practiceExamEndTime = new Date($('#practiceExamStartTime').val()).getTime();
|
||||
if(practiceExamEndTime <= practiceExamStartTime) {
|
||||
if(practiceExamEndTime >= practiceExamStartTime) {
|
||||
layer.msg('实操考试结束时间不能早于等于开始时间');
|
||||
}*/
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// 提交表单
|
||||
form.on('submit(submitForm)', function(formData) {
|
||||
if('1' == examType) {
|
||||
theoryCheck();
|
||||
}
|
||||
if('2' == examType) {
|
||||
practiceCheck();
|
||||
}
|
||||
if('3' == examType) {
|
||||
theoryCheck();
|
||||
practiceCheck();
|
||||
}
|
||||
|
||||
formData.field.planName = $('#planName').val();
|
||||
formData.field.planPersonNum = $('#planPersonNum').val();
|
||||
@ -514,18 +554,7 @@
|
||||
top.dialog.close(index);
|
||||
var loadLayerIndex;
|
||||
top.restAjax.put(top.restAjax.path('api/examapply/update/{examApplyId}', [examApplyId]), formData.field, null, function(code, data) {
|
||||
var layerIndex = top.dialog.msg(top.dataMessage.updateSuccess, {
|
||||
time: 0,
|
||||
btn: [top.dataMessage.button.yes, top.dataMessage.button.no],
|
||||
shade: 0.3,
|
||||
yes: function(index) {
|
||||
top.dialog.close(index);
|
||||
window.location.reload();
|
||||
},
|
||||
btn2: function() {
|
||||
closeBox();
|
||||
}
|
||||
});
|
||||
top.dialog.close(index);
|
||||
}, function(code, data) {
|
||||
top.dialog.msg(data.msg);
|
||||
}, function() {
|
||||
|
@ -35,10 +35,7 @@
|
||||
<script type="text/html" id="headerToolBar">
|
||||
<div class="layui-btn-group">
|
||||
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm" lay-event="updateEvent">
|
||||
<i class="fa fa-lg fa-edit"></i> 编辑
|
||||
</button>
|
||||
<button type="button" class="layui-btn layui-btn-danger layui-btn-sm" lay-event="removeEvent">
|
||||
<i class="fa fa-lg fa-trash"></i> 删除
|
||||
<i class="fa fa-lg fa-edit"></i> 开班计划审核
|
||||
</button>
|
||||
</div>
|
||||
</script>
|
||||
|
@ -222,7 +222,7 @@
|
||||
area: ['100%', '100%'],
|
||||
shadeClose: true,
|
||||
anim: 2,
|
||||
content: top.restAjax.path('route/examination/save.html', []),
|
||||
content: top.restAjax.path('route/examinationuser/save.html', []),
|
||||
end: function() {
|
||||
reloadTable();
|
||||
}
|
||||
@ -240,7 +240,7 @@
|
||||
area: ['100%', '100%'],
|
||||
shadeClose: true,
|
||||
anim: 2,
|
||||
content: top.restAjax.path('route/examination/update.html?examinationId={examinationId}', [checkDatas[0].examinationId]),
|
||||
content: top.restAjax.path('route/examinationuser/update.html?examinationId={examinationId}', [checkDatas[0].examinationId]),
|
||||
end: function() {
|
||||
reloadTable();
|
||||
}
|
||||
|
@ -37,7 +37,7 @@
|
||||
<div class="layui-form-item layui-layout-admin">
|
||||
<div class="layui-input-block">
|
||||
<div class="layui-footer" style="left: 0;">
|
||||
<button type="button" class="layui-btn" lay-submit lay-filter="submitForm">提交编辑</button>
|
||||
<button type="button" class="layui-btn" id="subBtn" lay-submit lay-filter="submitForm">提交编辑</button>
|
||||
<button type="button" class="layui-btn layui-btn-primary close">返回上级</button>
|
||||
</div>
|
||||
</div>
|
||||
@ -61,11 +61,16 @@
|
||||
var laytpl = layui.laytpl;
|
||||
var laydate = layui.laydate;
|
||||
var examinationId = top.restAjax.params(window.location.href).examinationId;
|
||||
var isView = top.restAjax.params(window.location.href).isView;
|
||||
|
||||
var wangEditor = window.wangEditor;
|
||||
var wangEditorObj = {};
|
||||
var viewerObj = {};
|
||||
|
||||
if('yes' == isView) {
|
||||
$('#subBtn').hide();
|
||||
}
|
||||
|
||||
function closeBox() {
|
||||
parent.layer.close(parent.layer.getFrameIndex(window.name));
|
||||
}
|
||||
|
@ -71,7 +71,6 @@
|
||||
},
|
||||
cols: [
|
||||
[
|
||||
{type:'checkbox', fixed: 'left'},
|
||||
{field:'rowNum', width:80, title: '序号', fixed: 'left', align:'center', templet: '<span>{{d.LAY_INDEX}}</span>'},
|
||||
{field: 'name', width: 180, title: '考务人员姓名', align:'center',
|
||||
templet: function(row) {
|
||||
|
Loading…
Reference in New Issue
Block a user