feat:考试详情

pg_adapter
wangxy 9 months ago
parent 9e92e4c733
commit 41b21c0f8d

@ -5,6 +5,8 @@ import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.system.domain.paper.dto.response.PaperListRespDTO;
import com.ruoyi.system.domain.repo.ElRepo;
import com.ruoyi.system.domain.userexam.dto.request.UserExamReqDTO; import com.ruoyi.system.domain.userexam.dto.request.UserExamReqDTO;
import com.ruoyi.system.domain.userexam.dto.response.UserExamRespDTO; import com.ruoyi.system.domain.userexam.dto.response.UserExamRespDTO;
import com.ruoyi.web.controller.manager.UserExamManager; import com.ruoyi.web.controller.manager.UserExamManager;
@ -12,10 +14,8 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions; import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List; import java.util.List;
@ -40,9 +40,11 @@ public class UserExamController extends BaseController {
private String prefix = "system/elExam/userExam"; private String prefix = "system/elExam/userExam";
@ApiOperation("考试详情") @ApiOperation("考试详情")
@GetMapping() @GetMapping("/toExam/{id}")
public String userExam() { public String toExam(@PathVariable("id") String id, ModelMap mmap) {
mmap.put("examId", id);
return prefix + "/userExam"; return prefix + "/userExam";
} }
@ -57,10 +59,11 @@ public class UserExamController extends BaseController {
} }
@ApiOperation("详情") @ApiOperation("详情")
@GetMapping("/detail") @GetMapping("/detail/{examId}/{userId}")
@ResponseBody public String detail(@PathVariable("examId") String examId, @PathVariable("userId") Long userId, ModelMap mmap) {
public AjaxResult detail(String examId,Long userId) { List<PaperListRespDTO> list = userExamManager.detail(examId, userId);
return success(userExamManager.detail(examId,userId)); mmap.put("list", list);
return prefix + "/userExam";
} }

@ -58,6 +58,7 @@
var types = [[${@dict.getType('sys_open_type')}]]; var types = [[${@dict.getType('sys_open_type')}]];
var datas = [[${@dict.getType('sys_exam_state')}]]; var datas = [[${@dict.getType('sys_exam_state')}]];
var prefix = ctx + "system/newExam"; var prefix = ctx + "system/newExam";
var prefixUser = ctx + "system/userExam";
$(function() { $(function() {
var options = { var options = {
uniqueId: "id", uniqueId: "id",
@ -121,7 +122,8 @@
align: 'center', align: 'center',
formatter: function(value, row, index) { formatter: function(value, row, index) {
var actions = []; var actions = [];
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.editTab(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> '); actions.push('<a class="btn btn-warning btn-xs" href="javascript:void(0)" onclick="detail(\'' + row.id + '\')"><i class="fa fa-search"></i>详细</a> ');
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.editTab(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a>'); actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a>');
return actions.join(''); return actions.join('');
} }
@ -129,6 +131,12 @@
}; };
$.table.init(options); $.table.init(options);
}); });
/*资产列表-详细*/
function detail(id) {
var url = prefixUser + '/toExam/' + id;
$.modal.openTab("考试人员", url);
}
</script> </script>
</body> </body>
</html> </html>

@ -0,0 +1,104 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<head>
<th:block th:include="include :: header('考试管理')" />
</head>
<body class="gray-bg">
<div class="container-div">
<div class="row">
<div class="col-sm-12 search-collapse">
<form id="notice-form">
<div class="select-list">
<ul>
<li>
搜索人员:<input type="text" name="userName"/>
<input type="hidden" name="examId" th:value="*{examId}"/>
</li>
<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i>&nbsp;重置</a>
</li>
</ul>
</div>
</form>
</div>
<div class="btn-group-sm" id="toolbar" role="group">
<a class="btn btn-danger" onclick="closeItem()">
<i class="fa fa-reply-all"></i> 关闭
</a>
</div>
<div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table"></table>
</div>
</div>
</div>
<th:block th:include="include :: footer" />
<script th:inline="javascript">
var prefix = ctx + "system/userExam";
$(function() {
var options = {
uniqueId: "id",
url: prefix + "/list",
queryParams: queryParams,
modalName: "考试",
columns: [
{
field : 'userName',
title : '人员'
},
{
field: 'tryCount',
title: '考试次数'
},
{
field: 'maxScore',
title: '最高分',
align: 'center'
},
{
field: 'passed',
title: '是否通过',
formatter: function(value, row, index) {
if(value=='1'){
return '通过';
}else{
return '未通过';
}
}
},
{
field: 'updateTime',
title: '最后考试时间',
sortable: true
},
{
title: '操作',
align: 'center',
formatter: function(value, row, index) {
var actions = [];
actions.push('<a class="btn btn-success btn-xs" href="javascript:void(0)" onclick="detail(\'' + row.id + '\',\'' + row.userId + '\')"><i class="fa fa-search"></i>考试明细</a> ');
return actions.join('');
}
}]
};
$.table.init(options);
});
function queryParams(params) {
var search = $.table.queryParams(params);
search.examId = [[${examId}]];
return search;
}
/*资产列表-详细*/
function detail(id,userId) {
var url = prefix + '/detail/' + id +'/'+userId;
$.modal.open("考试人员", url);
}
</script>
</body>
</html>
Loading…
Cancel
Save