This commit is contained in:
kbing1981 2024-08-05 14:42:17 +08:00
parent 4bd1531ef5
commit 2d327ea307
2 changed files with 119 additions and 54 deletions

View File

@ -1,5 +1,5 @@
<template>
<div style="background: #fff; height: calc(100vh - 225px); overflow-y: auto; overflow-x: hidden; margin: 10px 0">
<div style="background: #fff; height: calc(100vh - 225px); overflow-y: auto; overflow-x: hidden; margin: 10px 5px">
<!--查询区域-->
<!-- <div class="jeecg-basic-table-form-container">
<a-form @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol" :wrapper-col="wrapperCol">
@ -21,56 +21,67 @@
</a-form>
</div> -->
<a-row>
<a-col :span="12" v-for="(item, index) in tableData" :key="index" style="padding: 0px 0px 5px 5px; overflow: hidden">
<div style="width: 100%; height: 20px; background-color: rgb(28, 132, 198)"></div>
<a-card style="height: 330px; border: 1px solid rgb(28, 132, 198)">
<div class="rotate" :style="classFun(item)">{{ callText(item) }}</div>
<a-row style="top: -48px; position: relative">
<a-col :span="24" style="margin-bottom: 10px; height: 53px; overflow: hidden" :title="item.title">
<a-col :span="12" v-for="(item, index) in tableData" :key="index" style="padding: 0px 0px 5px 5px; border-radius: 10px; overflow: hidden;">
<div style="width: 100%; height:40px;border-radius: 10px 10px 0 0; background-color: #cdf5ed">
<a-col :span="24" style="height:40px; line-height:40px; padding-left:15px; color:#333; overflow: hidden;" :title="item.title">
<!-- <div style="font-size: 18px;font-weight: bold;" class="ellipsis">{{item.title}}</div> -->
<div style="font-size: 18px; font-weight: bold">{{ item.title }}</div>
</a-col>
<a-col :span="24" class="zyCon">作业时间{{ dayjs(item.startTime).format('YYYY.MM.DD HH:mm') }} ~ {{ dayjs(item.endTime).format('YYYY.MM.DD HH:mm') }}</a-col>
<a-col :span="24" class="zyCon">互评时间<span v-if="item.xshpkg == '1'">{{ dayjs(item.xshpkssj).format('YYYY.MM.DD HH:mm') }} ~ {{ dayjs(item.xshpjssj).format('YYYY.MM.DD HH:mm') }}</span><span v-else>未设置互评</span></a-col>
<a-col :span="24" class="zyCon">
<span style="text-align: left;width:50%;display: block;float:left;">作业得分{{ item.stuscore ? item.stuscore : '未评' }}</span>
<span style="text-align: right;width:50%;display: block;float:left;" class="wpopen" v-if="handleSfkshp(item)" @click="handleHpfs(item)">互评分数:{{ item.xshpfs ? item.xshpfs : '未评' }}</span>
<span style="text-align: left;width:50%;display: block;float:left;" v-if="handleSfkshp(item)">互评奖励{{ item.jxfs ? item.jxfs : '未评' }}</span>
<span style="text-align: right;width:50%;display: block;float:left;">总分:{{ item.zzdf ? item.zzdf : '未评' }}</span>
</div>
<a-card style="height:310px; border: 1px solid #eeeeee">
<div class="rotate" :style="classFun(item)">{{ callText(item) }}</div>
<a-row style="top: -60px; position: relative">
<a-col :span="24" class="zyCon"><span class="zyCon-word">作业时间</span>{{ dayjs(item.startTime).format('YYYY.MM.DD HH:mm') }} ~ {{ dayjs(item.endTime).format('YYYY.MM.DD HH:mm') }}</a-col>
<a-col :span="24" class="zyCon"><span class="zyCon-word">互评时间</span><span v-if="item.xshpkg == '1'">{{ dayjs(item.xshpkssj).format('YYYY.MM.DD HH:mm') }} ~ {{ dayjs(item.xshpjssj).format('YYYY.MM.DD HH:mm') }}</span><span v-else>未设置互评</span></a-col>
<a-col :span="24" class="zyCon Score-List">
<div class="Score-List-row">
<span class="List-row-number">{{ item.stuscore ? item.stuscore : '未评' }}</span>
<span class="List-row-word">作业得分</span>
</div>
<div class="Score-List-row" v-if="handleSfkshp(item)" @click="handleHpfs(item)">
<span class="List-row-number">{{ item.xshpfs ? item.xshpfs : '未评' }}</span>
<span class="List-row-word">互评分数</span>
</div>
<div class="Score-List-row" v-if="handleSfkshp(item)">
<span class="List-row-number">{{ item.jxfs ? item.jxfs : '未评' }}</span>
<span class="List-row-word">互评奖励</span>
</div>
<div class="Score-List-row">
<span class="List-row-number">{{ item.zzdf ? item.zzdf : '未评' }}</span>
<span class="List-row-word">总分</span>
</div>
</a-col>
<a-col :span="24" class="zyCon">
<div style="float: left" class="wpopen" :title="item.wwsftg" @click="handleOpenCcjg(item, '0')">维普资源库查重:{{ getCctype(item, '1') }}</div>
<div style="float: right" class="wpopen" :title="item.nwsftg" @click="handleOpenCcjg(item, '1')">本次作业查重:{{ getCctype(item, '2') }}</div>
<div style="float: left" class="wpopen" :title="item.wwsftg" @click="handleOpenCcjg(item, '0')"><span class="zyCon-word">维普资源库查重</span>{{ getCctype(item, '1') }}</div>
<div style="float: right" class="wpopen" :title="item.nwsftg" @click="handleOpenCcjg(item, '1')"><span class="zyCon-word">本次作业查重</span>{{ getCctype(item, '2') }}</div>
</a-col>
<a-col :span="24" class="zyCon">
<div style="float: left" class="wpopen" :title="item.xnsftg" @click="handleOpenCcjg(item, '3')">学校作业库查重:{{ getCctype(item, '4') }}</div>
<div style="float: right" class="wpopen" :title="item.aigcsftg" @click="handleOpenCcjg(item, '2')">Aigc查重:{{ getCctype(item, '3') }}</div>
<div style="float: left" class="wpopen" :title="item.xnsftg" @click="handleOpenCcjg(item, '3')"><span class="zyCon-word">学校作业库查重</span>{{ getCctype(item, '4') }}</div>
<div style="float: right" class="wpopen" :title="item.aigcsftg" @click="handleOpenCcjg(item, '2')"><span class="zyCon-word">Aigc查重</span>{{ getCctype(item, '3') }}</div>
</a-col>
<a-col :span="24" style="text-align: center; margin-top: 20px">
<a-button type="primary" @click="handleDetail(item)" style="margin-left: 5px; background: rgb(28, 132, 198)">详情</a-button>
<a-button
type="primary"
@click="handleShangchuan(item)"
style="margin-left: 5px; background: rgb(28, 132, 198)"
v-if="!item.stuFilePath"
>上传</a-button
>
<a-button type="primary" @click="handleDownload(item)" style="margin-left: 5px; background: rgb(28, 132, 198)" v-if="item.stuFilePath"
>下载</a-button
>
<a-button type="primary" @click="handlePreview(item)" style="margin-left: 5px; background: rgb(28, 132, 198)" v-if="item.stuFilePath"
>预览</a-button
>
<a-button type="primary" @click="handleHuping(item)" style="margin-left: 5px; background: rgb(28, 132, 198)" v-if="handleSfkshp(item)"
>互评</a-button
>
<a-col :span="24" style="text-align: center; margin-top:12px; border-top: 1px solid #f6f6f6; padding-top:15px">
<a-button class="zyCon-button" type="primary" @click="handleDetail(item)">
详情
</a-button>
<a-button class="zyCon-button" type="primary" @click="handleShangchuan(item)" v-if="!item.stuFilePath">
上传
</a-button>
<a-button class="zyCon-button" type="primary" @click="handleDownload(item)" v-if="item.stuFilePath">
下载
</a-button>
<a-button class="zyCon-button" type="primary" @click="handlePreview(item)" v-if="item.stuFilePath">
预览
</a-button>
<a-button class="zyCon-button" type="primary" @click="handleHuping(item)" v-if="handleSfkshp(item)">
互评
</a-button>
</a-col>
</a-row>
</a-card>
</a-col>
<a-col :span="24">
<div v-show="tableData.length > 0">
<a-pagination v-model="current" :total="total" @change="handlePageChange" :pageSize="pageSize" style="text-align: right" />
<a-pagination v-model="current" :total="total" @change="handlePageChange" :pageSize="pageSize" style="text-align: right; margin-top:5px; margin-bottom:10px" />
</div>
<div v-show="tableData.length == 0">
<a-empty />
@ -262,11 +273,11 @@ function getCctype(record, type) {
function classFun(record) {
if (record.stuscore) {
return 'background: #18a689';
return 'background: linear-gradient(180deg, #4ad5b9, #18a689);';
} else if (record.stuFilePath) {
return 'background: #c6c209';
return 'background: linear-gradient(180deg, #fea317, #ff7d28);';
} else {
return 'background: #fe1a1a';
return 'background: linear-gradient(180deg, #f84444, #d40505)';
}
}
function callText(record) {
@ -420,20 +431,54 @@ onMounted(() => {
}
.zyCon {
line-height: 30px;
color: #999;
}
.rotate {
transform: rotate(45deg);
background: rgb(28, 132, 198);
background: linear-gradient(90deg, #93d861, #8ddc53, #35C495);
color: #fff;
padding: 19px 10px 3px 10px;
padding: 10px;
position: relative;
top: -54px;
right: -200px;
top: -60px;
right: -183px;
text-align: center;
font-size: 11px;
font-size: 12px;
}
.wpopen:hover{
cursor: pointer;
color:#18a689;
}
.zyCon-word{
color: #333;
}
.Score-List{
display: flex;
padding: 10px 0;
}
.Score-List-row{
display: flex;
width: 25%;
flex-direction:column;
margin-right: 10px;
justify-content: center;
text-align: center;
background: #f7f7f7;
padding: 10px 0;
}
.List-row-number{
font-weight: bold;
font-size: 18px;
color: #ffa200;
}
.Score-List-row :hover{
color: #1ab394;
cursor: pointer;
}
.List-row-word{
color: #999;
font-size: 12px;
}
.zyCon-button{
margin-right: 10px;
}
</style>

View File

@ -5,29 +5,31 @@
<a-col :span="24">
<a-form ref="formRef" class="antd-modal-form" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-row>
<div class="wrapper-back">
<div class="wrapper-title">基本信息</div>
<a-col :span="24">
<a-form-item label="作业题目">
{{formData.title}}
<span class="spanb-word">{{formData.title}}</span>
</a-form-item>
</a-col>
<a-col :span="24" v-if="dataKhnr.length > 0">
<a-form-item label="考察内容">
<a-table :columns="columnsKhnr" rowKey="id" :data-source="dataKhnr" :pagination="false" />
<a-table :columns="columnsKhnr" class="spanb-word" rowKey="id" :data-source="dataKhnr" :pagination="false" />
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="作业截止时间" :labelCol="labelCol2" :wrapperCol="wrapperCol2">
{{formData.endTime}}
<span class="spanb-word">{{formData.endTime}}</span>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="作业发布时间" :labelCol="labelCol2" :wrapperCol="wrapperCol2">
{{formData.startTime}}
<span class="spanb-word">{{formData.startTime}}</span>
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item label="作业要求" >
<div v-html="formData.content"></div>
<div class="spanb-word" v-html="formData.content"></div>
</a-form-item>
</a-col>
<a-col :span="24" v-if="formData.filePath">
@ -38,11 +40,13 @@
<a-col :span="24" v-show="formData.sturead=='1' && formData.pfbz">
<a-form-item label="评分标准" layout="inline">
<div v-html="formData.pfbz"></div>
<div class="spanb-word" v-html="formData.pfbz"></div>
</a-form-item>
</a-col>
<a-col :span="24" v-if="formData.wwtgl">
<a-form-item label="查重设置" layout="inline">
</div>
<a-col :span="24" v-if="formData.wwtgl" class="wrapper-back">
<div class="wrapper-title">查重设置</div>
<a-form-item layout="inline" style="margin-left:100px">
<a-form-item label="检测通过率" :labelCol="labelCol3" :wrapperCol="wrapperCol3">
<span style="padding: 7px 20px"></span>
<a-input-number
@ -56,7 +60,7 @@
<template #addonAfter> % </template>
</a-input-number>
</a-form-item>
<a-form-item label="比对库设置" :labelCol="labelCol3" :wrapperCol="wrapperCol3">
<a-form-item label="比对库设置" :labelCol="labelCol3" :wrapperCol="wrapperCol3" >
<div style="padding: 7px 20px">维普</div>
<div style="padding: 0 40px">
<a-checkbox v-model:checked="formData.wwcc" style="margin-left: 10px" disabled
@ -374,4 +378,20 @@ function handleKcnr(kcnr) {
margin-left: 30px;
line-height: 30px;
}
.spanb-word{
color: #999999;
}
.wrapper-back{
background: #f7f7f7;
border-radius: 10px;
margin-top:10px;
padding-top: 15px;
}
.wrapper-title{
font-size: 18px;
border-left:4px solid #1ab394 ;
font-weight: bold;
padding-left: 20PX;
margin-bottom:20px;
}
</style>