|
@@ -1,96 +1,95 @@
|
|
|
<!--负面清单历史记录-->
|
|
|
<template>
|
|
|
- <div class="violationInfo">
|
|
|
- <div class="title-box">
|
|
|
- <p>历史记录</p>
|
|
|
- <p class="reset-button-one" @click="backPage"><i class="el-icon-arrow-left"></i>返回</p>
|
|
|
+ <div class="page-container violationInfo">
|
|
|
+ <div class="page-top-title-box">
|
|
|
+ <p class="page-top-title-name-p">历史记录</p>
|
|
|
+ <p class="page-top-title-out-p" @click="backPage">返回</p>
|
|
|
</div>
|
|
|
- <div class="rewardPointsListPage">
|
|
|
- <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
|
|
|
- <el-form-item label="状态" prop="overStatus" label-width="50px">
|
|
|
- <el-select v-model="queryParams.overStatus" clearable placeholder="请选择状态">
|
|
|
- <el-option
|
|
|
- v-for="dict in bonusTypeOptions"
|
|
|
- :key="dict.id"
|
|
|
- :label="dict.name"
|
|
|
- :value="dict.id"
|
|
|
- ></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <!--<el-form-item label="学期" prop="semesterId" label-width="50px">-->
|
|
|
- <!--<el-select v-model="queryParams.semesterId" clearable placeholder="请选择学期">-->
|
|
|
- <!--<el-option-->
|
|
|
- <!--v-for="dict in semesterList"-->
|
|
|
- <!--:key="dict.id"-->
|
|
|
- <!--:label="dict.semesterName"-->
|
|
|
- <!--:value="dict.id"-->
|
|
|
- <!--></el-option>-->
|
|
|
- <!--</el-select>-->
|
|
|
- <!--</el-form-item>-->
|
|
|
- <el-form-item label="时间段" prop="dateRange" label-width="65px">
|
|
|
- <el-date-picker
|
|
|
- :clearable="false"
|
|
|
- v-model="dateRange"
|
|
|
- size="small"
|
|
|
- style="width: 240px"
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
- type="daterange"
|
|
|
- range-separator="-"
|
|
|
- start-placeholder="开始日期"
|
|
|
- end-placeholder="结束日期"
|
|
|
- ></el-date-picker>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item>
|
|
|
- <p class="inquire-button-one" style="margin:0 20px;" @click="handleQuery">查询</p>
|
|
|
- <p class="reset-button-one" @click="resetQuery">重置</p>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
- <el-table v-loading="loading" border :data="recordList" style="margin-top:20px;">
|
|
|
- <el-table-column label="姓名" align="left" prop="userName" width="120"/>
|
|
|
- <el-table-column label="违规原因" align="left" prop="reason"/>
|
|
|
- <el-table-column label="实验室" align="left" prop="laboratoryName" width="200"/>
|
|
|
- <el-table-column label="添加人" align="left" prop="createBy" width="120"/>
|
|
|
- <el-table-column label="添加时间" align="left" prop="createTime" width="180"/>
|
|
|
- <el-table-column label="扣分值" align="left" prop="deductionVal" width="100">
|
|
|
- <template slot-scope="scope">
|
|
|
- <span style="color:#FF3131;">-{{scope.row.deductionVal}}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="处理方式" align="left" prop="treatmentMethod" width="100"/>
|
|
|
- <el-table-column label="处理状态" align="left" width="240">
|
|
|
- <template slot-scope="scope">
|
|
|
- <div class="scope-big-box" v-if="scope.row.learnStatus == 0 || scope.row.learnStatus == 1 || scope.row.learnStatus == 2">
|
|
|
- <p>学习</p>
|
|
|
- <p :class="scope.row.learnStatus == 0 ?'scopeColorA':(scope.row.learnStatus == 1 ?'scopeColorB':(scope.row.learnStatus == 2 ?'scopeColorC':''))">{{scope.row.learnStatus == 0 ?'未完成':(scope.row.learnStatus == 1 ?'已完成':(scope.row.learnStatus == 2 ?'已恢复':''))}}</p>
|
|
|
- </div>
|
|
|
- <div class="scope-big-box" v-if="scope.row.practiceStatus == 0 || scope.row.practiceStatus == 1 || scope.row.practiceStatus == 2">
|
|
|
- <p>做题</p>
|
|
|
- <p :class="scope.row.practiceStatus == 0 ?'scopeColorA':(scope.row.practiceStatus == 1 ?'scopeColorB':(scope.row.practiceStatus == 2 ?'scopeColorC':''))">{{scope.row.practiceStatus == 0 ?'未完成':(scope.row.practiceStatus == 1 ?'已完成':(scope.row.practiceStatus == 2 ?'已恢复':''))}}</p>
|
|
|
- </div>
|
|
|
- <div class="scope-big-box" v-if="scope.row.testStatus == 0 || scope.row.testStatus == 1 || scope.row.testStatus == 2">
|
|
|
- <p>考试</p>
|
|
|
- <p :class="scope.row.testStatus == 0 ?'scopeColorA':(scope.row.testStatus == 1 ?'scopeColorB':(scope.row.testStatus == 2 ?'scopeColorC':''))">{{scope.row.testStatus == 0 ?'未完成':(scope.row.testStatus == 1 ?'已完成':(scope.row.testStatus == 2 ?'已恢复':''))}}</p>
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="处理截止日期" align="left" prop="handleDay" width="180" />
|
|
|
- <el-table-column label="信用分" align="left" prop="creditScore" width="100"/>
|
|
|
- </el-table>
|
|
|
- <pagination :page-sizes="[20, 30, 40, 50]"
|
|
|
- style="margin-top:20px;"
|
|
|
- v-show="total>0"
|
|
|
- :total="total"
|
|
|
- layout="total, prev, pager, next, sizes, jumper"
|
|
|
- :page.sync="queryParams.page"
|
|
|
- :limit.sync="queryParams.pageSize"
|
|
|
- @pagination="getList"
|
|
|
- />
|
|
|
+ <div class="page-container">
|
|
|
+ <div class="page-form-title-box" style="border:none;">
|
|
|
+ <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
|
|
|
+ <el-form-item label="" prop="overStatus">
|
|
|
+ <el-select v-model="queryParams.overStatus" clearable placeholder="请选择状态">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in bonusTypeOptions"
|
|
|
+ :key="dict.id"
|
|
|
+ :label="dict.name"
|
|
|
+ :value="dict.id"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="" prop="dateRange">
|
|
|
+ <el-date-picker
|
|
|
+ :clearable="false"
|
|
|
+ v-model="dateRange"
|
|
|
+ size="small"
|
|
|
+ style="width: 240px"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ type="daterange"
|
|
|
+ range-separator="-"
|
|
|
+ start-placeholder="开始日期"
|
|
|
+ end-placeholder="结束日期"
|
|
|
+ ></el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <p class="page-inquire-common-style-button" style="margin:0 20px;" @click="handleQuery">查询</p>
|
|
|
+ <p class="page-reset-common-style-button" @click="resetQuery">重置</p>
|
|
|
+ </el-form>
|
|
|
+ </div>
|
|
|
+ <div class="page-content-box" style="padding-top:0;">
|
|
|
+ <el-table class="table-box" v-loading="loading" border :data="recordList">
|
|
|
+ <el-table-column label="姓名" align="left" prop="joinUserName" width="120" show-overflow-tooltip/>
|
|
|
+ <el-table-column label="违规原因" align="left" prop="reason" show-overflow-tooltip/>
|
|
|
+ <el-table-column label="实验室" align="left" prop="subjectName" width="200" show-overflow-tooltip/>
|
|
|
+ <el-table-column label="添加人" align="left" prop="createBy" width="120" show-overflow-tooltip/>
|
|
|
+ <el-table-column label="添加时间" align="left" prop="createTime" width="180" show-overflow-tooltip>
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span>{{ parseTime(scope.row.createTime,"{y}-{m}-{d} {h}:{i}") }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="扣分值" align="left" prop="deductionVal" width="100" show-overflow-tooltip>
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span style="color:#FF3131;">-{{scope.row.deductionVal}}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="处理方式" align="left" prop="treatmentMethod" width="100" show-overflow-tooltip/>
|
|
|
+ <el-table-column label="处理状态" align="left" width="240" show-overflow-tooltip>
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <div class="scope-big-box" v-if="scope.row.learnStatus == 0 || scope.row.learnStatus == 1 || scope.row.learnStatus == 2">
|
|
|
+ <p>学习</p>
|
|
|
+ <p :class="scope.row.learnStatus == 0 ?'scopeColorA':(scope.row.learnStatus == 1 ?'scopeColorB':(scope.row.learnStatus == 2 ?'scopeColorC':''))">{{scope.row.learnStatus == 0 ?'未完成':(scope.row.learnStatus == 1 ?'已完成':(scope.row.learnStatus == 2 ?'已恢复':''))}}</p>
|
|
|
+ </div>
|
|
|
+ <div class="scope-big-box" v-if="scope.row.practiceStatus == 0 || scope.row.practiceStatus == 1 || scope.row.practiceStatus == 2">
|
|
|
+ <p>做题</p>
|
|
|
+ <p :class="scope.row.practiceStatus == 0 ?'scopeColorA':(scope.row.practiceStatus == 1 ?'scopeColorB':(scope.row.practiceStatus == 2 ?'scopeColorC':''))">{{scope.row.practiceStatus == 0 ?'未完成':(scope.row.practiceStatus == 1 ?'已完成':(scope.row.practiceStatus == 2 ?'已恢复':''))}}</p>
|
|
|
+ </div>
|
|
|
+ <div class="scope-big-box" v-if="scope.row.testStatus == 0 || scope.row.testStatus == 1 || scope.row.testStatus == 2">
|
|
|
+ <p>考试</p>
|
|
|
+ <p :class="scope.row.testStatus == 0 ?'scopeColorA':(scope.row.testStatus == 1 ?'scopeColorB':(scope.row.testStatus == 2 ?'scopeColorC':''))">{{scope.row.testStatus == 0 ?'未完成':(scope.row.testStatus == 1 ?'已完成':(scope.row.testStatus == 2 ?'已恢复':''))}}</p>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="处理截止日期" align="left" prop="handleDay" width="180" show-overflow-tooltip>
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span>{{ parseTime(scope.row.handleDay,"{y}-{m}-{d} {h}:{i}") }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="信用分" align="left" prop="creditScore" width="100" show-overflow-tooltip/>
|
|
|
+ </el-table>
|
|
|
+ <pagination :page-sizes="[20, 30, 40, 50]"
|
|
|
+ v-show="total>0"
|
|
|
+ :total="total"
|
|
|
+ layout="total, prev, pager, next, sizes, jumper"
|
|
|
+ :page.sync="queryParams.page"
|
|
|
+ :limit.sync="queryParams.pageSize"
|
|
|
+ @pagination="getList"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
- import { violationHistoryRecord,getSemesterList } from "@/api/creditViolation/index";
|
|
|
+ import { examViolationHistoryList,getSemesterList } from "@/api/creditViolation/index";
|
|
|
export default {
|
|
|
props:{
|
|
|
propsData:{},
|
|
@@ -107,13 +106,6 @@
|
|
|
page: 1,
|
|
|
pageSize:20,
|
|
|
overStatus: null,
|
|
|
- semesterId: null,
|
|
|
- points: null,
|
|
|
- joinUserId: null,
|
|
|
- mode: null,
|
|
|
- deptName: null,
|
|
|
- deptId: null,
|
|
|
- userId: null,
|
|
|
},
|
|
|
//状态条件
|
|
|
bonusTypeOptions:[
|
|
@@ -121,8 +113,6 @@
|
|
|
{id:0,name:"未完成"},
|
|
|
{id:2,name:"已恢复"},
|
|
|
],
|
|
|
- //学期
|
|
|
- semesterList:[],
|
|
|
//列表数据
|
|
|
recordList:[],
|
|
|
total:0,
|
|
@@ -132,51 +122,43 @@
|
|
|
},
|
|
|
created(){
|
|
|
this.getList();
|
|
|
- this.getSemesterList();
|
|
|
},
|
|
|
methods:{
|
|
|
//返回上级页面
|
|
|
backPage(){
|
|
|
this.$parent.goPage(1);
|
|
|
},
|
|
|
- getSemesterList(){
|
|
|
- getSemesterList(this.queryParams).then( res => {
|
|
|
- this.semesterList = res.data;
|
|
|
- });
|
|
|
- },
|
|
|
/** 查询数据 */
|
|
|
getList() {
|
|
|
this.loading = true;
|
|
|
- if(this.dateRange&&this.dateRange.length>0)
|
|
|
- {
|
|
|
- this.queryParams.statTime=this.dateRange[0]
|
|
|
- this.queryParams.endTime=this.dateRange[1]
|
|
|
+ let obj = JSON.parse(JSON.stringify(this.queryParams))
|
|
|
+ if(this.dateRange&&this.dateRange.length>0) {
|
|
|
+ obj.statTime=this.dateRange[0]
|
|
|
+ obj.endTime=this.dateRange[1]
|
|
|
+ } else {
|
|
|
+ obj.statTime=null;
|
|
|
+ obj.endTime=null
|
|
|
}
|
|
|
- else
|
|
|
- {
|
|
|
- this.queryParams.statTime=null;
|
|
|
- this.queryParams.endTime=null
|
|
|
- }
|
|
|
- this.queryParams.joinUserId = this.propsData.userId;
|
|
|
- violationHistoryRecord(this.queryParams).then( response => {
|
|
|
- this.recordList = response.rows;
|
|
|
- this.total = response.total;
|
|
|
+ obj.joinUserId = this.propsData.joinUserId;
|
|
|
+ examViolationHistoryList(obj).then( response => {
|
|
|
+ this.$set(this,'recordList',response.data.records);
|
|
|
+ this.$set(this,'total',response.data.total);
|
|
|
this.loading = false;
|
|
|
});
|
|
|
},
|
|
|
/** 搜索按钮操作 */
|
|
|
handleQuery() {
|
|
|
- this.queryParams.page = 1;
|
|
|
+ this.$set(this.queryParams,'page',1);
|
|
|
this.getList();
|
|
|
},
|
|
|
/** 重置按钮操作 */
|
|
|
resetQuery() {
|
|
|
- this.dateRange = [];
|
|
|
- this.queryParams.overStatus = null;
|
|
|
- this.queryParams.semesterId = null;
|
|
|
- this.queryParams.statTime = null;
|
|
|
- this.queryParams.endTime = null;
|
|
|
- this.resetForm("queryParams");
|
|
|
+ this.$set(this,'dateRange',[]);
|
|
|
+ this.$set(this,'queryParams',{
|
|
|
+ page: 1,
|
|
|
+ pageSize:20,
|
|
|
+ overStatus: null,
|
|
|
+ });
|
|
|
this.handleQuery();
|
|
|
},
|
|
|
},
|
|
@@ -185,33 +167,6 @@
|
|
|
|
|
|
<style scoped lang="scss">
|
|
|
.violationInfo {
|
|
|
- flex:1;
|
|
|
- display: flex!important;
|
|
|
- flex-direction: column;
|
|
|
- *{
|
|
|
- margin:0;
|
|
|
- }
|
|
|
- .title-box{
|
|
|
- display: flex;
|
|
|
- border-bottom: 1px solid #E0E0E0;
|
|
|
- p:nth-child(1){
|
|
|
- flex:1;
|
|
|
- line-height:80px;
|
|
|
- color:#0045AF;
|
|
|
- font-size:18px;
|
|
|
- margin-left:20px;
|
|
|
- }
|
|
|
- p:nth-child(2){
|
|
|
- margin:20px;
|
|
|
- }
|
|
|
- }
|
|
|
- .rewardPointsListPage{
|
|
|
- flex:1;
|
|
|
- display: flex!important;
|
|
|
- flex-direction: column;
|
|
|
- overflow: hidden;
|
|
|
- padding:20px;
|
|
|
- }
|
|
|
.scope-big-box{
|
|
|
display: flex;
|
|
|
p{
|