mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-10 03:16:44 +08:00
feat:合并
This commit is contained in:
@@ -22,3 +22,12 @@ export const QueryAssessmentManageMessage = (obj) => http.post('/admin/assessmen
|
|||||||
|
|
||||||
// 评估管理评估详情查看
|
// 评估管理评估详情查看
|
||||||
export const QueryAssessmentDetail = (obj) => http.post('/admin/assessment/manage/queryAssessmentDetail', obj)
|
export const QueryAssessmentDetail = (obj) => http.post('/admin/assessment/manage/queryAssessmentDetail', obj)
|
||||||
|
|
||||||
|
// 下载中心
|
||||||
|
export const DownLoadList = (obj) => http.get('/admin/download/page', {params: obj})
|
||||||
|
|
||||||
|
// 下载中心容量查询
|
||||||
|
export const DownLoadTotalSize = (obj) => http.get('/admin/download/totalSize', {params: obj})
|
||||||
|
|
||||||
|
// 下载中心删除
|
||||||
|
export const RemoveDownLoadHomeWork = (obj) => http.get('/admin/download/del', {params: obj})
|
||||||
|
|||||||
BIN
src/assets/images/courseManage/downloadnodata.png
Normal file
BIN
src/assets/images/courseManage/downloadnodata.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 30 KiB |
@@ -29,7 +29,7 @@
|
|||||||
v-for="(values, index) in questionListArr"
|
v-for="(values, index) in questionListArr"
|
||||||
:key="index">
|
:key="index">
|
||||||
<!-- 单项选择 -->
|
<!-- 单项选择 -->
|
||||||
<div v-if="values[0].questionType==1" class="assessbox" style="margin-top: 30px">
|
<div v-if="values.questionType==1" class="assessbox" style="margin-top: 30px">
|
||||||
<div class="box1">
|
<div class="box1">
|
||||||
<div class="asstype">评估类型:</div>
|
<div class="asstype">评估类型:</div>
|
||||||
<div class="typename">单选</div>
|
<div class="typename">单选</div>
|
||||||
@@ -37,18 +37,18 @@
|
|||||||
<div class="box1" style="margin-left: 64px">
|
<div class="box1" style="margin-left: 64px">
|
||||||
<div class="asstype">题干:</div>
|
<div class="asstype">题干:</div>
|
||||||
<div style="color: rgba(153, 153, 153, 1); font-size: 14px">
|
<div style="color: rgba(153, 153, 153, 1); font-size: 14px">
|
||||||
{{values[0]?.singleStemName}}
|
{{values?.singleStemName}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-for="(iitem,indexs) in values" :key="indexs">
|
<div>
|
||||||
<div class="box1" style="margin-left: 55px; margin-top: 20px">
|
<div class="box1" v-for="(itteems, indexss) in values.assessmentSingleChoiceVoList" style="margin-left: 55px; margin-top: 20px" :key="indexss">
|
||||||
<div class="asstype">选择{{indexs+1}}:</div>
|
<div class="asstype">选择{{indexss+1}}:</div>
|
||||||
<div style="display:flex;justify-content:center;align-items:center;">
|
<div style="display:flex;justify-content:center;align-items:center;">
|
||||||
<div v-if="iitem.select" style="display:flex;justify-content:center;align-items:center;width:16px;height:16px;border-radius:8px;border:1px solid rgba(151, 151, 151, 0.29);margin-right: 8px;">
|
<div v-if="itteems.select" style="display:flex;justify-content:center;align-items:center;width:16px;height:16px;border-radius:8px;border:1px solid rgba(151, 151, 151, 0.29);margin-right: 8px;">
|
||||||
<div style="width:8px;height:8px;border-radius:4px;background-color:#409eff;"></div>
|
<div style="width:8px;height:8px;border-radius:4px;background-color:#409eff;"></div>
|
||||||
</div>
|
</div>
|
||||||
<div v-else style="width:16px;height:16px;border-radius:8px;border:1px solid rgba(151, 151, 151, 0.29);margin-right: 8px;"></div>
|
<div v-else style="width:16px;height:16px;border-radius:8px;border:1px solid rgba(151, 151, 151, 0.29);margin-right: 8px;"></div>
|
||||||
{{iitem.singleOptionName}}
|
{{itteems.singleOptionName}}
|
||||||
</div>
|
</div>
|
||||||
<!-- <a-radio :value="indexs" defaultValue>{{iitem.singleOptionName}}</a-radio> -->
|
<!-- <a-radio :value="indexs" defaultValue>{{iitem.singleOptionName}}</a-radio> -->
|
||||||
</div>
|
</div>
|
||||||
@@ -56,7 +56,7 @@
|
|||||||
<div style="margin-bottom:30px;"></div>
|
<div style="margin-bottom:30px;"></div>
|
||||||
</div>
|
</div>
|
||||||
<!-- 多项选择 -->
|
<!-- 多项选择 -->
|
||||||
<div v-if="values[0].questionType==2" class="assessbox" style="margin-top: 30px">
|
<div v-if="values.questionType==2" class="assessbox" style="margin-top: 30px">
|
||||||
<div class="box1">
|
<div class="box1">
|
||||||
<div class="asstype">评估类型:</div>
|
<div class="asstype">评估类型:</div>
|
||||||
<div class="typename">多选</div>
|
<div class="typename">多选</div>
|
||||||
@@ -64,18 +64,18 @@
|
|||||||
<div class="box1" style="margin-left: 64px">
|
<div class="box1" style="margin-left: 64px">
|
||||||
<div class="asstype">题干:</div>
|
<div class="asstype">题干:</div>
|
||||||
<div style="color: rgba(153, 153, 153, 1); font-size: 14px">
|
<div style="color: rgba(153, 153, 153, 1); font-size: 14px">
|
||||||
{{values[0]?.multipleStemName}}
|
{{values?.multipleStemName}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-for="(iitem,indexs) in values" :key="indexs">
|
<div>
|
||||||
<div class="box1" style="margin-left: 55px; margin-top: 20px">
|
<div class="box1" v-for="(itteems, indexss) in values.multipleChoiceVoList" style="margin-left: 55px; margin-top: 20px" :key="indexss">
|
||||||
<div class="asstype">选择{{indexs+1}}:</div>
|
<div class="asstype">选择{{indexss+1}}:</div>
|
||||||
<div style="display:flex;justify-content:center;align-items:center;">
|
<div style="display:flex;justify-content:center;align-items:center;">
|
||||||
<div v-if="iitem.select" style="display:flex;justify-content:center;align-items:center;width:16px;height:16px;border-radius:8px;border:1px solid rgba(151, 151, 151, 0.29);margin-right: 8px;">
|
<div v-if="itteems.select" style="display:flex;justify-content:center;align-items:center;width:16px;height:16px;border-radius:8px;border:1px solid rgba(151, 151, 151, 0.29);margin-right: 8px;">
|
||||||
<div style="width:8px;height:8px;border-radius:4px;background-color:#409eff;"></div>
|
<div style="width:8px;height:8px;border-radius:4px;background-color:#409eff;"></div>
|
||||||
</div>
|
</div>
|
||||||
<div v-else style="width:16px;height:16px;border-radius:8px;border:1px solid rgba(151, 151, 151, 0.29);margin-right: 8px;"></div>
|
<div v-else style="width:16px;height:16px;border-radius:8px;border:1px solid rgba(151, 151, 151, 0.29);margin-right: 8px;"></div>
|
||||||
{{iitem.multipleOptionName}}
|
{{itteems.multipleOptionName}}
|
||||||
</div>
|
</div>
|
||||||
<!-- <a-radio :value="indexs" defaultValue>{{iitem.singleOptionName}}</a-radio> -->
|
<!-- <a-radio :value="indexs" defaultValue>{{iitem.singleOptionName}}</a-radio> -->
|
||||||
</div>
|
</div>
|
||||||
@@ -83,7 +83,7 @@
|
|||||||
<div style="margin-bottom:30px;"></div>
|
<div style="margin-bottom:30px;"></div>
|
||||||
</div>
|
</div>
|
||||||
<!-- 问答题 -->
|
<!-- 问答题 -->
|
||||||
<div v-if="values[0].questionType==3" class="assessbox" style="margin-top: 30px">
|
<div v-if="values.questionType==3" class="assessbox" style="margin-top: 30px">
|
||||||
<div class="box1">
|
<div class="box1">
|
||||||
<div class="asstype">评估类型:</div>
|
<div class="asstype">评估类型:</div>
|
||||||
<div class="typename">问答题</div>
|
<div class="typename">问答题</div>
|
||||||
@@ -91,7 +91,7 @@
|
|||||||
<div class="box1" style="margin-left: 64px">
|
<div class="box1" style="margin-left: 64px">
|
||||||
<div class="asstype">标题:</div>
|
<div class="asstype">标题:</div>
|
||||||
<div style="color: rgba(153, 153, 153, 1); font-size: 14px">
|
<div style="color: rgba(153, 153, 153, 1); font-size: 14px">
|
||||||
{{values[0]?.assessmentQaTitle}}
|
{{values?.assessmentQaTitle}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
@@ -100,12 +100,12 @@
|
|||||||
>
|
>
|
||||||
<div class="asstype">描述:</div>
|
<div class="asstype">描述:</div>
|
||||||
<div style="color: rgba(51, 51, 51, 1); font-size: 14px">
|
<div style="color: rgba(51, 51, 51, 1); font-size: 14px">
|
||||||
{{ values[0]?.assessmentQaDescribe }}
|
{{ values?.assessmentQaDescribe }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- 评分题 -->
|
<!-- 评分题 -->
|
||||||
<div v-if="values[0].questionType==4" class="assessbox" style="margin-top: 30px">
|
<div v-if="values.questionType==4" class="assessbox" style="margin-top: 30px">
|
||||||
<div class="box1">
|
<div class="box1">
|
||||||
<div class="asstype">评估类型:</div>
|
<div class="asstype">评估类型:</div>
|
||||||
<div class="typename">评分题</div>
|
<div class="typename">评分题</div>
|
||||||
@@ -113,13 +113,13 @@
|
|||||||
<div class="box1" style="margin-left: 64px">
|
<div class="box1" style="margin-left: 64px">
|
||||||
<div class="asstype">标题:</div>
|
<div class="asstype">标题:</div>
|
||||||
<div style="color: rgba(153, 153, 153, 1); font-size: 14px">
|
<div style="color: rgba(153, 153, 153, 1); font-size: 14px">
|
||||||
{{values[0]?.assessmentScTitle}}{{ values[0]?.assessmentMinScore }}{{ values[0]?.assessmentMaxScore }}
|
{{values?.assessmentScTitle}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="lastbox">
|
<div class="lastbox">
|
||||||
<div class="sorcetext">非常不满意</div>
|
<div class="sorcetext">非常不满意</div>
|
||||||
<div class="sorcebox" v-for="(iittem, index) in [1,2,3,4,5,6,7,8,9,10]" :key="index">
|
<div class="sorcebox" v-for="(iittem, index) in [1,2,3,4,5,6,7,8,9,10]" :key="index">
|
||||||
<div :class="index+1 == values[0].selectAnswer ? 'numbox' : 'numbox1'">{{ iittem }}</div>
|
<div v-if="iittem >= values.assessmentMinScore && iittem <= values.assessmentMaxScore" :class="index+1 == values.selectAnswer ? 'numbox' : 'numbox1'">{{ iittem }}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="sorcetext">非常满意</div>
|
<div class="sorcetext">非常满意</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -200,8 +200,14 @@ export default {
|
|||||||
}).then(res=>{
|
}).then(res=>{
|
||||||
console.log(res)
|
console.log(res)
|
||||||
if(res.data.code==200){
|
if(res.data.code==200){
|
||||||
let qarr = [res.data.data.assessmentEssayQuestionDtoList, res.data.data.assessmentMultipleChoiceDtoList,res.data.data.assessmentScoringQuestionDtoList,res.data.data.assessmentSingleChoiceDtoList]
|
let qarr = [res.data.data.essayQuestionVoList, res.data.data.multipleStemVoList,res.data.data.scoringQuestionVoList,res.data.data.singleStemVoList]
|
||||||
let newarr = formateArr(qarr).sort((a, b) => { return a[0].orderNumber - b[0].orderNumber})
|
let allArr = []
|
||||||
|
for(let i=0;i<qarr.length;i++){
|
||||||
|
for(let j=0;j<qarr[i].length;j++){
|
||||||
|
allArr.push(qarr[i][j])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
let newarr = formateArr(allArr).sort((a, b) => { return a.orderNumber - b.orderNumber})
|
||||||
state.questionListArr = newarr
|
state.questionListArr = newarr
|
||||||
console.log('我是经过排序后的题目',newarr)
|
console.log('我是经过排序后的题目',newarr)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,13 +26,13 @@
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="btns">
|
<div class="btns">
|
||||||
<div class="btn1">
|
<div class="btn1" @click="searchDownloadList">
|
||||||
<div class="img1">
|
<div class="img1">
|
||||||
<img src="../assets/images/courseManage/search0.png" />
|
<img src="../assets/images/courseManage/search0.png" />
|
||||||
</div>
|
</div>
|
||||||
<div class="wz">搜索</div>
|
<div class="wz">搜索</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn2">
|
<div class="btn2" @click="reseatDownloadList">
|
||||||
<div class="img2">
|
<div class="img2">
|
||||||
<img src="../assets/images/courseManage/reset1.png" />
|
<img src="../assets/images/courseManage/reset1.png" />
|
||||||
</div>
|
</div>
|
||||||
@@ -53,17 +53,21 @@
|
|||||||
"
|
"
|
||||||
>
|
>
|
||||||
<div>当前容量:</div>
|
<div>当前容量:</div>
|
||||||
<div>55.01MB / 2GB</div>
|
<div>{{formatCapacity(capacity)}} / 2GB</div>
|
||||||
</div>
|
</div>
|
||||||
<a-progress :percent="40" :width="200" :show-info="false" :stroke-color="{
|
<a-progress :percent="countCMB" :width="200" :show-info="false" :stroke-color="{
|
||||||
'0%': '#45B058',
|
'0%': countCMB>2?'#FF0000 ':'#45B058',
|
||||||
'100%': '#45B058',
|
'100%': countCMB>2?'#FF0000 ':'#45B058',
|
||||||
}" />
|
}" />
|
||||||
|
<div v-if="countCMB>2" style="color:rgba(255, 116, 116, 1);font-size:12px;">容量已满,请删除文件</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- 文件容器 -->
|
<!-- 文件容器 -->
|
||||||
<div style="display:flex;flex-wrap:wrap;">
|
<div style="display:flex;flex-wrap:wrap;">
|
||||||
<div v-for="(values, index) in homeWorkList" class="zipcontainer" :key="index">
|
<div v-if="homeWorkList.length==0" style="width:100%;height:500px;display:flex;justify-content:center;align-items:center;border:1px solid #d9d9d9;border-radius: 8px;margin-top: 60px;">
|
||||||
|
<img src="../assets/images/courseManage/downloadnodata.png" />
|
||||||
|
</div>
|
||||||
|
<div v-else v-for="(values, index) in homeWorkList" class="zipcontainer" :key="index">
|
||||||
<!-- 单个文件 -->
|
<!-- 单个文件 -->
|
||||||
<div v-if="values" class="item">
|
<div v-if="values" class="item">
|
||||||
<div class="itemup">
|
<div class="itemup">
|
||||||
@@ -71,56 +75,159 @@
|
|||||||
<div class="cent">
|
<div class="cent">
|
||||||
<div class="zip"></div>
|
<div class="zip"></div>
|
||||||
<div class="ziprit">
|
<div class="ziprit">
|
||||||
<div class="textop">作业名称</div>
|
<div class="textop">{{values.name}}</div>
|
||||||
<div class="texdown">
|
<div class="texdown">
|
||||||
<div class="timemanag" style="margin-top: 12px">
|
<div class="timemanag" style="margin-top: 12px">
|
||||||
2022-08-08 10:30:30 管理员
|
{{values.createTime?values.createTime:'-'}} {{values.createName?values.createName:'-'}}
|
||||||
</div>
|
</div>
|
||||||
<div class="timemanag">来源:管理者进阶-腾飞班Z1</div>
|
<div class="timemanag">来源:{{values.source?values.source:'-'}}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="itemdown">
|
<div class="itemdown">
|
||||||
<div class="download" @click="downLoadFile">下载</div>
|
<div class="download" @click="downLoadFile(values)">下载</div>
|
||||||
<div class="delete" @click="removeFile">删除</div>
|
<div class="delete" @click="removeFile(values)">删除</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div style="width:100%;margin-top: 90px;display: flex;justify-content: center;align-items: center;">
|
||||||
|
<!-- 分页 -->
|
||||||
|
<a-pagination
|
||||||
|
v-if="total>10"
|
||||||
|
:showSizeChanger="false"
|
||||||
|
showQuickJumper="true"
|
||||||
|
hideOnSinglePage="true"
|
||||||
|
:pageSize="pageSize"
|
||||||
|
:current="currentPage"
|
||||||
|
:total="total"
|
||||||
|
class="pagination"
|
||||||
|
@change="changePaginationStu"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { toRefs, reactive } from "vue";
|
import { toRefs, reactive } from "vue";
|
||||||
|
import { message } from "ant-design-vue";
|
||||||
|
import * as api from "@/api/indexTaskManage";
|
||||||
export default {
|
export default {
|
||||||
name: "DownLoad",
|
name: "DownLoad",
|
||||||
setup() {
|
setup() {
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
name: "",
|
name: "",
|
||||||
homeWorkList: []
|
homeWorkList: [],
|
||||||
|
currentPage: 1,
|
||||||
|
pageSize: 12,
|
||||||
|
total: 0,
|
||||||
|
capacity: 0,
|
||||||
|
countCMB: 0,
|
||||||
|
locationHref: location.href.indexOf('http://') !== -1 ? 'http://111.231.196.214:12016/' : location.href.slice(0, location.href.indexOf('/m')) + '/upload/'
|
||||||
});
|
});
|
||||||
|
|
||||||
function getData() {
|
function getData() {
|
||||||
state.homeWorkList = [1,2,3,4,5,6]
|
api.DownLoadList({
|
||||||
|
current:state.currentPage,
|
||||||
|
name: state.name,
|
||||||
|
size: state.pageSize
|
||||||
|
}).then(res=>{
|
||||||
|
console.log(res)
|
||||||
|
if(res.data.code==200){
|
||||||
|
state.homeWorkList = res.data.data.records;
|
||||||
|
state.total = res.data.data.total;
|
||||||
|
}
|
||||||
|
}).catch(err=>{
|
||||||
|
console.log(err)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取可下载数据
|
// 获取可下载数据
|
||||||
getData()
|
getData()
|
||||||
|
|
||||||
// 下载文件
|
function getDownLoadTotalSize() {
|
||||||
function downLoadFile() {
|
api.DownLoadTotalSize().then(res=>{
|
||||||
|
console.log(res)
|
||||||
|
if(res.data.code==200){
|
||||||
|
state.capacity = res.data.data;
|
||||||
|
}else{
|
||||||
|
state.capacity = 0;
|
||||||
|
}
|
||||||
|
}).catch(err=>{
|
||||||
|
console.log(err)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取当前用户容量
|
||||||
|
getDownLoadTotalSize()
|
||||||
|
|
||||||
|
// 格式化容量显示
|
||||||
|
function formatCapacity(data) {
|
||||||
|
let num = Number(data);
|
||||||
|
let CMB = (num / 1048576).toFixed(2);
|
||||||
|
let countCMB = (num / 1048576*1024).toFixed(2);
|
||||||
|
state.countCMB = countCMB;
|
||||||
|
if(CMB%1024>1){
|
||||||
|
CMB = (CMB/1024).toFixed(2) + 'GB';
|
||||||
|
}else{
|
||||||
|
CMB = CMB + 'MB';
|
||||||
|
}
|
||||||
|
console.log(CMB)
|
||||||
|
return CMB
|
||||||
|
}
|
||||||
|
|
||||||
|
// 下载文件
|
||||||
|
function downLoadFile(data) {
|
||||||
|
console.log(data)
|
||||||
|
window.open(state.locationHref + data.url)
|
||||||
}
|
}
|
||||||
// 删除文件
|
// 删除文件
|
||||||
function removeFile() {
|
function removeFile(data) {
|
||||||
|
console.log(data)
|
||||||
|
api.RemoveDownLoadHomeWork({
|
||||||
|
id:data.id
|
||||||
|
}).then(res=>{
|
||||||
|
console.log(res)
|
||||||
|
if(res.data.code==200){
|
||||||
|
message.destroy()
|
||||||
|
message.success("删除成功")
|
||||||
|
getData()
|
||||||
|
}
|
||||||
|
}).catch(err=>{
|
||||||
|
console.log(err)
|
||||||
|
message.destroy()
|
||||||
|
message.error("删除失败")
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 搜索
|
||||||
|
function searchDownloadList() {
|
||||||
|
getData()
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重置
|
||||||
|
function reseatDownloadList() {
|
||||||
|
state.name = "";
|
||||||
|
state.currentPage = 1;
|
||||||
|
getData()
|
||||||
|
}
|
||||||
|
|
||||||
|
// 分页
|
||||||
|
//分页
|
||||||
|
const changePaginationStu = (page) => {
|
||||||
|
state.currentPage = page;
|
||||||
|
getData();
|
||||||
|
};
|
||||||
|
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
downLoadFile,
|
downLoadFile,
|
||||||
removeFile
|
removeFile,
|
||||||
|
changePaginationStu,
|
||||||
|
searchDownloadList,
|
||||||
|
reseatDownloadList,
|
||||||
|
formatCapacity
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -93,10 +93,10 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="btns">
|
<div class="btns">
|
||||||
<!-- 2022-11-30注释 后面放开 -->
|
<!-- 2022-11-30注释 后面放开 -->
|
||||||
<!-- <div class="btn btn3" @click="openMessage">
|
<div class="btn btn3" @click="openMessage" style="margin-right:14px;">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText">导出</div>
|
<div class="btnText">导出</div>
|
||||||
</div> -->
|
</div>
|
||||||
<div class="btn btn3" @click="of_hShow">
|
<div class="btn btn3" @click="of_hShow">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText">新建课程</div>
|
<div class="btnText">新建课程</div>
|
||||||
@@ -964,6 +964,7 @@
|
|||||||
:closable="false"
|
:closable="false"
|
||||||
wrapClassName="modalStyle onlmanageModal"
|
wrapClassName="modalStyle onlmanageModal"
|
||||||
width="80%"
|
width="80%"
|
||||||
|
@cancel="om_exit"
|
||||||
>
|
>
|
||||||
<div class="modalHeader">
|
<div class="modalHeader">
|
||||||
<div class="headerLeft">
|
<div class="headerLeft">
|
||||||
@@ -1099,6 +1100,10 @@
|
|||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText">搜索</div>
|
<div class="btnText">搜索</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="btn btn2" @click="reseatSearchTable3">
|
||||||
|
<div class="search"></div>
|
||||||
|
<div class="btnText">重置</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="bm_table" style="margin-bottom: 20px">
|
<div class="bm_table" style="margin-bottom: 20px">
|
||||||
@@ -2307,7 +2312,6 @@ import {
|
|||||||
detail,
|
detail,
|
||||||
detailPlan,
|
detailPlan,
|
||||||
handle,
|
handle,
|
||||||
exportP,
|
|
||||||
deletePlan,
|
deletePlan,
|
||||||
planList,
|
planList,
|
||||||
editPlan,
|
editPlan,
|
||||||
@@ -4136,6 +4140,14 @@ export default defineComponent({
|
|||||||
state.manageStuLoading = true;
|
state.manageStuLoading = true;
|
||||||
getCourseStudentList();
|
getCourseStudentList();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const reseatSearchTable3 = () => {
|
||||||
|
state.currentPage222 = 1;
|
||||||
|
state.gl_inputV2 = "";
|
||||||
|
state.gl_selectV2 = undefined;
|
||||||
|
state.manageStuLoading = true;
|
||||||
|
getCourseStudentList();
|
||||||
|
}
|
||||||
// const getTableDate33 = async () => {
|
// const getTableDate33 = async () => {
|
||||||
// let datas = state.tableData2;
|
// let datas = state.tableData2;
|
||||||
// let res = await listReview({
|
// let res = await listReview({
|
||||||
@@ -4438,6 +4450,8 @@ export default defineComponent({
|
|||||||
};
|
};
|
||||||
|
|
||||||
const om_exit = () => {
|
const om_exit = () => {
|
||||||
|
state.gl_selectV2 = undefined;
|
||||||
|
state.gl_inputV2 = "";
|
||||||
state.om_1 = false;
|
state.om_1 = false;
|
||||||
state.faceManageTab = "1";
|
state.faceManageTab = "1";
|
||||||
};
|
};
|
||||||
@@ -4934,7 +4948,12 @@ export default defineComponent({
|
|||||||
);
|
);
|
||||||
endTime = parseInt(new Date(state.projectTime[1].$d).getTime() / 1000);
|
endTime = parseInt(new Date(state.projectTime[1].$d).getTime() / 1000);
|
||||||
}
|
}
|
||||||
exportP({
|
|
||||||
|
window.open(
|
||||||
|
`${process.env.VUE_APP_PROXY_URL}admin/offcourse/export?pageNo=${state.currentPage1}&pageSize=${state.pageSize1}&auditStatus=${state.auditStatus?state.auditStatus:""}&categoryId=${state.categoryId?state.categoryId:""}&projectName=${state.projectName?state.projectName:""}&name=${state.name?state.name:""}&createName=${state.createName?state.createName:""}&endTime=${endTime?endTime:""}&beginTime=${startTime?startTime:""}`
|
||||||
|
);
|
||||||
|
|
||||||
|
{/* exportP({
|
||||||
pageNo: state.currentPage1,
|
pageNo: state.currentPage1,
|
||||||
pageSize: state.pageSize1,
|
pageSize: state.pageSize1,
|
||||||
auditStatus: state.auditStatus,
|
auditStatus: state.auditStatus,
|
||||||
@@ -4948,7 +4967,7 @@ export default defineComponent({
|
|||||||
if (res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
message.success("导出成功");
|
message.success("导出成功");
|
||||||
}
|
}
|
||||||
});
|
}); */}
|
||||||
};
|
};
|
||||||
//获取教师
|
//获取教师
|
||||||
const getTea = async () => {
|
const getTea = async () => {
|
||||||
@@ -5259,7 +5278,7 @@ export default defineComponent({
|
|||||||
console.log("开课管理学员搜索参数", {
|
console.log("开课管理学员搜索参数", {
|
||||||
pageNo: state.currentPage222,
|
pageNo: state.currentPage222,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
status: state.gl_selectV2 ? state.gl_selectV2 : "",
|
status: state.gl_selectV2,
|
||||||
studentName: state.gl_inputV2,
|
studentName: state.gl_inputV2,
|
||||||
id: state.currentFaceId,
|
id: state.currentFaceId,
|
||||||
});
|
});
|
||||||
@@ -5267,7 +5286,7 @@ export default defineComponent({
|
|||||||
.GetCourseStudent({
|
.GetCourseStudent({
|
||||||
pageNo: state.currentPage222,
|
pageNo: state.currentPage222,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
status: state.gl_selectV2 ? state.gl_selectV2 : "",
|
status: state.gl_selectV2,
|
||||||
studentName: state.gl_inputV2,
|
studentName: state.gl_inputV2,
|
||||||
id: state.currentFaceId,
|
id: state.currentFaceId,
|
||||||
})
|
})
|
||||||
@@ -5511,6 +5530,7 @@ export default defineComponent({
|
|||||||
handleRestTable,
|
handleRestTable,
|
||||||
handleSearchTable2,
|
handleSearchTable2,
|
||||||
handleSearchTable3,
|
handleSearchTable3,
|
||||||
|
reseatSearchTable3,
|
||||||
handleGuan22,
|
handleGuan22,
|
||||||
handleStart,
|
handleStart,
|
||||||
handleCopyP,
|
handleCopyP,
|
||||||
@@ -6879,6 +6899,26 @@ export default defineComponent({
|
|||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.btn2 {
|
||||||
|
.search {
|
||||||
|
width: 15px;
|
||||||
|
height: 17px;
|
||||||
|
background-image: url("@/assets/images/coursewareManage/reset1.png");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn2:hover {
|
||||||
|
background: rgba(64, 158, 255, 1);
|
||||||
|
|
||||||
|
.search {
|
||||||
|
background-image: url("@/assets/images/coursewareManage/reset0.png");
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnText {
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,7 +52,7 @@
|
|||||||
<div class="up down">
|
<div class="up down">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<div class="text">学员情况</div>
|
<div class="text">学员情况</div>
|
||||||
<div class="btn btn2">
|
<div class="btn btn2" @click="exportStudentInfo">
|
||||||
<div class="img2"></div>
|
<div class="img2"></div>
|
||||||
<div class="wz">导出信息</div>
|
<div class="wz">导出信息</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -152,6 +152,11 @@ export default {
|
|||||||
|
|
||||||
getInfoDate();
|
getInfoDate();
|
||||||
|
|
||||||
|
// 导出学员信息
|
||||||
|
function exportStudentInfo() {
|
||||||
|
window.open(`${process.env.VUE_APP_PROXY_URL}admin/assessment/manage/exportAssessmentMessage?assessmentId=${state.basicInfo.assessmentId}`)
|
||||||
|
}
|
||||||
|
|
||||||
//分页
|
//分页
|
||||||
const changePaginationStu = (page) => {
|
const changePaginationStu = (page) => {
|
||||||
state.evalStuListLoading = true;
|
state.evalStuListLoading = true;
|
||||||
@@ -327,7 +332,8 @@ export default {
|
|||||||
},
|
},
|
||||||
],
|
],
|
||||||
showassess,
|
showassess,
|
||||||
changePaginationStu
|
changePaginationStu,
|
||||||
|
exportStudentInfo
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user