修改bug
This commit is contained in:
parent
1228e8c0ac
commit
98a93fccce
|
@ -19,8 +19,8 @@ VITE_BUILD_COMPRESS_DELETE_ORIGIN_FILE = false
|
||||||
VITE_GLOB_API_URL=/jeecg-boot
|
VITE_GLOB_API_URL=/jeecg-boot
|
||||||
|
|
||||||
#后台接口全路径地址(必填)
|
#后台接口全路径地址(必填)
|
||||||
#VITE_GLOB_DOMAIN_URL=https://zxkccx.webvpn.nenu.edu.cn/jeecg-boot
|
VITE_GLOB_DOMAIN_URL=https://zxkccx.webvpn.nenu.edu.cn/jeecg-boot
|
||||||
VITE_GLOB_DOMAIN_URL=http://210.47.29.100/jeecg-boot
|
# VITE_GLOB_DOMAIN_URL=http://210.47.29.100/jeecg-boot
|
||||||
|
|
||||||
#RTC服务器地址
|
#RTC服务器地址
|
||||||
VITE_GLOB_RTC_SERVER = https://zxkccx.webvpn.nenu.edu.cn:8081
|
VITE_GLOB_RTC_SERVER = https://zxkccx.webvpn.nenu.edu.cn:8081
|
||||||
|
@ -38,5 +38,5 @@ VITE_USE_PWA = false
|
||||||
VITE_LEGACY = false
|
VITE_LEGACY = false
|
||||||
|
|
||||||
# 是否开启单点登录
|
# 是否开启单点登录
|
||||||
VITE_GLOB_APP_OPEN_SSO = false
|
VITE_GLOB_APP_OPEN_SSO = true
|
||||||
|
|
||||||
|
|
|
@ -34,7 +34,7 @@
|
||||||
</a-form>
|
</a-form>
|
||||||
</div>
|
</div>
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="8" v-for="(item, index) in tableData" :key="index" style="padding: 0px 0px 5px 5px;overflow:hidden;">
|
<a-col :lg="8" 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>
|
<div style="width: 100%; height: 20px; background-color: rgb(28, 132, 198);"></div>
|
||||||
<a-card style="height: 256px;border: 1px solid rgb(28, 132, 198);">
|
<a-card style="height: 256px;border: 1px solid rgb(28, 132, 198);">
|
||||||
<div class="rotate" :style="classFun(item.qpublish)">{{item.qpublish_dictText}}</div>
|
<div class="rotate" :style="classFun(item.qpublish)">{{item.qpublish_dictText}}</div>
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="8" v-for="(item, index) in tableData" :key="index" style="padding: 0px 0px 5px 5px;overflow:hidden;">
|
<a-col :span="8" 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>
|
<div style="width: 100%; height: 20px; background-color: rgb(28, 132, 198);"></div>
|
||||||
<a-card style="height: 210px;">
|
<a-card style="height: 210px;border: 1px solid rgb(28, 132, 198);">
|
||||||
<div class="rotate" :style="classFun(item.flag)">{{getStatus(item.flag)}}</div>
|
<div class="rotate" :style="classFun(item.flag)">{{getStatus(item.flag)}}</div>
|
||||||
<a-row style="top: -48px;position: relative;">
|
<a-row style="top: -48px;position: relative;">
|
||||||
<a-col :span="24" style="margin-bottom: 10px;height:53px;overflow:hidden;">
|
<a-col :span="24" style="margin-bottom: 10px;height:53px;overflow:hidden;">
|
||||||
|
@ -85,7 +85,7 @@
|
||||||
//当前路由信息
|
//当前路由信息
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh,xqxn,typa } = query;//获取传递参数
|
const { rwbh,xqxn,type,teano } = query;//获取传递参数
|
||||||
const { createMessage } = useMessage();
|
const { createMessage } = useMessage();
|
||||||
const APagination = Pagination;
|
const APagination = Pagination;
|
||||||
const queryParam = ref<any>({});
|
const queryParam = ref<any>({});
|
||||||
|
@ -117,7 +117,7 @@
|
||||||
createMessage.error('还未到答卷时间!');
|
createMessage.error('还未到答卷时间!');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
let endTimestamp = Date.parse(record.endTime);
|
let endTimestamp = Date.parse(record.endTime+" 23:59:59");
|
||||||
if(timestamp>endTimestamp){
|
if(timestamp>endTimestamp){
|
||||||
createMessage.error('答卷时间已过!');
|
createMessage.error('答卷时间已过!');
|
||||||
return;
|
return;
|
||||||
|
@ -139,6 +139,7 @@
|
||||||
queryParam.value.pageSize = pageSize.value;
|
queryParam.value.pageSize = pageSize.value;
|
||||||
queryParam.value.rwbh = rwbh;
|
queryParam.value.rwbh = rwbh;
|
||||||
queryParam.value.xqxn = xqxn;
|
queryParam.value.xqxn = xqxn;
|
||||||
|
queryParam.value.teano = teano;
|
||||||
queryParam.value.atype = "6";
|
queryParam.value.atype = "6";
|
||||||
defHttp.get({ url: '/wjxWjxx/wjxWjxx/stuList', params: queryParam.value }).then(res => {
|
defHttp.get({ url: '/wjxWjxx/wjxWjxx/stuList', params: queryParam.value }).then(res => {
|
||||||
// console.log(`🚀 ~ defHttp.get ~ res:`, res)
|
// console.log(`🚀 ~ defHttp.get ~ res:`, res)
|
||||||
|
|
|
@ -90,7 +90,7 @@ const { prefixCls, tableContext, onExportXls, onImportXls } = useListPage({
|
||||||
useSearchForm: false,
|
useSearchForm: false,
|
||||||
actionColumn: {
|
actionColumn: {
|
||||||
width: 280,
|
width: 280,
|
||||||
fixed: 'right',
|
// fixed: 'right',
|
||||||
},
|
},
|
||||||
beforeFetch: (params) => {
|
beforeFetch: (params) => {
|
||||||
params.column = '',params.order = '';//新生成的默认不带排序
|
params.column = '',params.order = '';//新生成的默认不带排序
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
</a-form>
|
</a-form>
|
||||||
</div>
|
</div>
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="8" v-for="(item, index) in tableData" :key="index" style="padding: 0px 0px 5px 5px;overflow:hidden;">
|
<a-col :lg="8" 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>
|
<div style="width: 100%; height: 20px; background-color: rgb(28, 132, 198);"></div>
|
||||||
<a-card style="height: 256px;border: 1px solid rgb(28, 132, 198);">
|
<a-card style="height: 256px;border: 1px solid rgb(28, 132, 198);">
|
||||||
<div class="rotate" :style="classFun(item.qpublish)">{{item.qpublish_dictText}}</div>
|
<div class="rotate" :style="classFun(item.qpublish)">{{item.qpublish_dictText}}</div>
|
||||||
|
@ -59,13 +59,13 @@
|
||||||
</a-row>
|
</a-row>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="24" style="text-align:center;margin-top:8px;">
|
<a-col :span="24" style="text-align:center;margin-top:8px;">
|
||||||
<a-button type="primary" @click="handleEdit(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">编辑问卷</a-button>
|
<a-button type="primary" @click="handlePeizhi(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">设置问卷</a-button>
|
||||||
<a-button type="primary" @click="handleFabu(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">发布问卷</a-button>
|
<a-button type="primary" @click="handleFabu(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">发布问卷</a-button>
|
||||||
<a-button type="primary" @click="handleDelete(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">删除问卷</a-button>
|
<a-button type="primary" @click="handleDelete(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">删除问卷</a-button>
|
||||||
<a-button type="primary" @click="handlePeizhi(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">问卷设置</a-button>
|
<a-button type="primary" @click="handleEdit(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">编辑问卷</a-button>
|
||||||
<a-button type="primary" @click="handlePeizhiXq(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">问卷预览</a-button>
|
<a-button type="primary" @click="handlePeizhiXq(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">预览问卷</a-button>
|
||||||
<a-button type="primary" @click="handleDetail(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==1||item.qpublish==2">问卷详情</a-button>
|
<a-button type="primary" @click="handleDetail(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==1||item.qpublish==2">问卷详情</a-button>
|
||||||
<a-button type="primary" @click="handlePeizhiXq(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==1||item.qpublish==2">问卷预览</a-button>
|
<a-button type="primary" @click="handlePeizhiXq(item)" style="margin-left:5px;margin-bottom:5px;padding: 0px 4px;background:rgb(28, 132, 198);" v-if="item.qpublish==1||item.qpublish==2">预览问卷</a-button>
|
||||||
<a-button type="primary" @click="handleDjjgs(item,'')" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==1||item.qpublish==2">问卷结果</a-button>
|
<a-button type="primary" @click="handleDjjgs(item,'')" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==1||item.qpublish==2">问卷结果</a-button>
|
||||||
</a-col>
|
</a-col>
|
||||||
<!-- <a-col :span="24" style="text-align:center;margin-top:20px;">-->
|
<!-- <a-col :span="24" style="text-align:center;margin-top:20px;">-->
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="8" v-for="(item, index) in tableData" :key="index" style="padding: 0px 0px 5px 5px;overflow:hidden;">
|
<a-col :span="8" 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>
|
<div style="width: 100%; height: 20px; background-color: rgb(28, 132, 198);"></div>
|
||||||
<a-card style="height: 210px;">
|
<a-card style="height: 210px;border: 1px solid rgb(28, 132, 198);">
|
||||||
<div class="rotate" :style="classFun(item.flag)">{{getStatus(item.flag)}}</div>
|
<div class="rotate" :style="classFun(item.flag)">{{getStatus(item.flag)}}</div>
|
||||||
<a-row style="top: -48px;position: relative;">
|
<a-row style="top: -48px;position: relative;">
|
||||||
<a-col :span="24" style="margin-bottom: 10px;height:53px;overflow:hidden;">
|
<a-col :span="24" style="margin-bottom: 10px;height:53px;overflow:hidden;">
|
||||||
|
@ -85,7 +85,7 @@
|
||||||
//当前路由信息
|
//当前路由信息
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh,xqxn,typa } = query;//获取传递参数
|
const { rwbh,xqxn,type,teano } = query;//获取传递参数
|
||||||
const { createMessage } = useMessage();
|
const { createMessage } = useMessage();
|
||||||
const APagination = Pagination;
|
const APagination = Pagination;
|
||||||
const queryParam = ref<any>({});
|
const queryParam = ref<any>({});
|
||||||
|
@ -117,7 +117,7 @@
|
||||||
createMessage.error('还未到答卷时间!');
|
createMessage.error('还未到答卷时间!');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
let endTimestamp = Date.parse(record.endTime);
|
let endTimestamp = Date.parse(record.endTime+" 23:59:59");
|
||||||
if(timestamp>endTimestamp){
|
if(timestamp>endTimestamp){
|
||||||
createMessage.error('答卷时间已过!');
|
createMessage.error('答卷时间已过!');
|
||||||
return;
|
return;
|
||||||
|
@ -139,6 +139,7 @@
|
||||||
queryParam.value.pageSize = pageSize.value;
|
queryParam.value.pageSize = pageSize.value;
|
||||||
queryParam.value.rwbh = rwbh;
|
queryParam.value.rwbh = rwbh;
|
||||||
queryParam.value.xqxn = xqxn;
|
queryParam.value.xqxn = xqxn;
|
||||||
|
queryParam.value.teano = teano;
|
||||||
queryParam.value.atype = "1";
|
queryParam.value.atype = "1";
|
||||||
defHttp.get({ url: '/wjxWjxx/wjxWjxx/stuList', params: queryParam.value }).then(res => {
|
defHttp.get({ url: '/wjxWjxx/wjxWjxx/stuList', params: queryParam.value }).then(res => {
|
||||||
// console.log(`🚀 ~ defHttp.get ~ res:`, res)
|
// console.log(`🚀 ~ defHttp.get ~ res:`, res)
|
||||||
|
|
|
@ -155,6 +155,7 @@ async function submitForm(){
|
||||||
// values[i].openTime = openTime.value;
|
// values[i].openTime = openTime.value;
|
||||||
}
|
}
|
||||||
const isUpdate = false
|
const isUpdate = false
|
||||||
|
console.log(`🚀 ~ submitForm ~ values:`, values)
|
||||||
await djtj(values, isUpdate);
|
await djtj(values, isUpdate);
|
||||||
//关闭弹窗
|
//关闭弹窗
|
||||||
emit('ok');
|
emit('ok');
|
||||||
|
|
|
@ -43,9 +43,11 @@
|
||||||
<div style="margin-left: 40px;">题目分值: {{item.wjScore}} 分</div>
|
<div style="margin-left: 40px;">题目分值: {{item.wjScore}} 分</div>
|
||||||
<div style="margin-left: 40px;">所得分值: {{item.itemScore}} 分</div>
|
<div style="margin-left: 40px;">所得分值: {{item.itemScore}} 分</div>
|
||||||
</template>
|
</template>
|
||||||
|
<!-- -{{item.itemSelected}}- -->
|
||||||
<a-checkbox-group v-model:value="item.itemSelected" style="width: 100%" size="default" disabled>
|
<a-checkbox-group v-model:value="item.itemSelected" style="width: 100%" size="default" disabled>
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="24" v-for="(tmxx,index) in item.wjxWjxxTmxxList">
|
<a-col :span="24" v-for="(tmxx,index) in item.wjxWjxxTmxxList">
|
||||||
|
<!-- -{{tmxx}}- -->
|
||||||
<a-checkbox :value="tmxx.itemIndex" style="width: 100%;margin-bottom: 5px;">
|
<a-checkbox :value="tmxx.itemIndex" style="width: 100%;margin-bottom: 5px;">
|
||||||
<span v-html:value="tmxx.itemTitle" style="width:80%;font-size: 16px;"></span>
|
<span v-html:value="tmxx.itemTitle" style="width:80%;font-size: 16px;"></span>
|
||||||
</a-checkbox>
|
</a-checkbox>
|
||||||
|
|
|
@ -22,7 +22,9 @@
|
||||||
<div style="width: 100%;" v-if="item.wjType==3">
|
<div style="width: 100%;" v-if="item.wjType==3">
|
||||||
<a-card >
|
<a-card >
|
||||||
<template #title>
|
<template #title>
|
||||||
<span>{{index+1}}、</span><a-textarea placeholder="请填写单选题题干" v-model:value="item.wjTitle" style="width: 75%" :auto-size="{ minRows: 2, maxRows: 5 }"/>
|
<span>{{index+1}}、</span>
|
||||||
|
<a-textarea placeholder="请填写单选题题干" v-model:value="item.wjTitle" :bordered="false" :style="{width:handinpwei(item.wjTitle)}" :auto-size="{ minRows: 1, maxRows: 5 }"/>
|
||||||
|
<span style="color: #c2bfbf;">[单选]</span>
|
||||||
</template>
|
</template>
|
||||||
<template #extra>
|
<template #extra>
|
||||||
<a-tooltip placement="topRight" title="题目分数" v-if="isShow">
|
<a-tooltip placement="topRight" title="题目分数" v-if="isShow">
|
||||||
|
@ -43,7 +45,9 @@
|
||||||
</a-row>
|
</a-row>
|
||||||
<a-radio-group v-model:value="item.itemSelected" style="width: 100%" size="default" :disabled="!isShow">
|
<a-radio-group v-model:value="item.itemSelected" style="width: 100%" size="default" :disabled="!isShow">
|
||||||
<div style="width: 100%" v-for="(tmxx,index) in item.wjxWjxxTmxxList">
|
<div style="width: 100%" v-for="(tmxx,index) in item.wjxWjxxTmxxList">
|
||||||
<a-radio :value="tmxx.itemIndex+``" style="width: 100%"><a-input placeholder="请填写选项" v-model:value="tmxx.itemTitle" :bordered="false" style="width:80%;"/>
|
<a-radio :value="tmxx.itemIndex+``" style="width: 100%">
|
||||||
|
<a-input placeholder="请填写选项" v-model:value="tmxx.itemTitle" :style="{width:handinpwei(tmxx.itemTitle)}" :bordered="false" />
|
||||||
|
<span style="color: #ecb646;" v-if="item.itemSelected==tmxx.itemIndex">(正确答案)</span>
|
||||||
<a-tooltip placement="topLeft" title="在下方添加新的选项"><Icon icon="ant-design:plus-circle-outlined" style="cursor: pointer;margin:5px;font-size:20px;color: #1890ff;" @click="handleAddTmxx(tmxx,index,item.wjxWjxxTmxxList)" /></a-tooltip >
|
<a-tooltip placement="topLeft" title="在下方添加新的选项"><Icon icon="ant-design:plus-circle-outlined" style="cursor: pointer;margin:5px;font-size:20px;color: #1890ff;" @click="handleAddTmxx(tmxx,index,item.wjxWjxxTmxxList)" /></a-tooltip >
|
||||||
<a-tooltip placement="topLeft" title="删除选项" ><Icon icon="ant-design:minus-circle-outlined" style="cursor: pointer;margin:5px;font-size:20px;color: #1890ff;" @click="handleRemTmxx(tmxx,index,item.wjxWjxxTmxxList)" /></a-tooltip >
|
<a-tooltip placement="topLeft" title="删除选项" ><Icon icon="ant-design:minus-circle-outlined" style="cursor: pointer;margin:5px;font-size:20px;color: #1890ff;" @click="handleRemTmxx(tmxx,index,item.wjxWjxxTmxxList)" /></a-tooltip >
|
||||||
</a-radio>
|
</a-radio>
|
||||||
|
@ -55,7 +59,8 @@
|
||||||
<div style="width: 100%;" v-else-if="item.wjType==4">
|
<div style="width: 100%;" v-else-if="item.wjType==4">
|
||||||
<a-card >
|
<a-card >
|
||||||
<template #title>
|
<template #title>
|
||||||
<span>{{index+1}}、</span><a-textarea placeholder="请填写多选题题干" v-model:value="item.wjTitle" style="width: 75%" :auto-size="{ minRows: 2, maxRows: 5 }"/>
|
<span>{{index+1}}、</span><a-textarea placeholder="请填写多选题题干" v-model:value="item.wjTitle" :bordered="false" :style="{width:handinpwei(item.wjTitle)}" :auto-size="{ minRows: 1, maxRows: 5 }"/>
|
||||||
|
<span style="color: #c2bfbf;">[多选]</span>
|
||||||
</template>
|
</template>
|
||||||
<template #extra>
|
<template #extra>
|
||||||
<a-tooltip placement="topRight" title="题目分数" v-if="isShow">
|
<a-tooltip placement="topRight" title="题目分数" v-if="isShow">
|
||||||
|
@ -77,7 +82,9 @@
|
||||||
<a-checkbox-group v-model:value="item.itemSelected" style="width: 100%" :disabled="!isShow">
|
<a-checkbox-group v-model:value="item.itemSelected" style="width: 100%" :disabled="!isShow">
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="24" v-for="(tmxx,index) in item.wjxWjxxTmxxList">
|
<a-col :span="24" v-for="(tmxx,index) in item.wjxWjxxTmxxList">
|
||||||
<a-checkbox :value="tmxx.itemIndex"><a-input placeholder="请填写选项" v-model:value="tmxx.itemTitle" :bordered="false" style="width:80%;"/></a-checkbox>
|
<!-- -{{item.itemSelected}}-{{tmxx.itemIndex}} -->
|
||||||
|
<a-checkbox :value="tmxx.itemIndex"><a-input placeholder="请填写选项" v-model:value="tmxx.itemTitle" :bordered="false" :style="{width:handinpwei(tmxx.itemTitle)}"/></a-checkbox>
|
||||||
|
<span style="color: #ecb646;" v-if="cheGrp(item.itemSelected,tmxx.itemIndex)">(正确答案)</span>
|
||||||
<a-tooltip placement="topLeft" title="在下方添加新的选项"><Icon icon="ant-design:plus-circle-outlined" style="cursor: pointer;margin:5px;font-size:20px;color: #1890ff;" @click="handleAddTmxx(tmxx,index,item.wjxWjxxTmxxList)"/></a-tooltip >
|
<a-tooltip placement="topLeft" title="在下方添加新的选项"><Icon icon="ant-design:plus-circle-outlined" style="cursor: pointer;margin:5px;font-size:20px;color: #1890ff;" @click="handleAddTmxx(tmxx,index,item.wjxWjxxTmxxList)"/></a-tooltip >
|
||||||
<a-tooltip placement="topLeft" title="删除选项" ><Icon icon="ant-design:minus-circle-outlined" style="cursor: pointer;margin:5px;font-size:20px;color: #1890ff;" @click="handleRemTmxx(tmxx,index,item.wjxWjxxTmxxList)"/></a-tooltip >
|
<a-tooltip placement="topLeft" title="删除选项" ><Icon icon="ant-design:minus-circle-outlined" style="cursor: pointer;margin:5px;font-size:20px;color: #1890ff;" @click="handleRemTmxx(tmxx,index,item.wjxWjxxTmxxList)"/></a-tooltip >
|
||||||
</a-col>
|
</a-col>
|
||||||
|
@ -89,7 +96,8 @@
|
||||||
<div style="width: 100%;" v-else-if="item.wjType==5">
|
<div style="width: 100%;" v-else-if="item.wjType==5">
|
||||||
<a-card >
|
<a-card >
|
||||||
<template #title>
|
<template #title>
|
||||||
<span>{{index+1}}、</span><a-textarea placeholder="请填写填空题题干" v-model:value="item.wjTitle" style="width: 75%" :auto-size="{ minRows: 2, maxRows: 5 }"/>
|
<span>{{index+1}}、</span><a-textarea placeholder="请填写填空题题干" v-model:value="item.wjTitle" :bordered="false" :style="{width:handinpwei(item.wjTitle)}" :auto-size="{ minRows: 1, maxRows: 5 }"/>
|
||||||
|
<span style="color: #c2bfbf;">[填空]</span>
|
||||||
</template>
|
</template>
|
||||||
<template #extra>
|
<template #extra>
|
||||||
<a-tooltip placement="topRight" title="题目分数" v-if="isShow">
|
<a-tooltip placement="topRight" title="题目分数" v-if="isShow">
|
||||||
|
@ -105,7 +113,7 @@
|
||||||
</template>
|
</template>
|
||||||
<a-row v-if="isShow">
|
<a-row v-if="isShow">
|
||||||
<a-col :span="24">
|
<a-col :span="24">
|
||||||
<a-textarea placeholder="请填写答案" v-model:value="item.wjAnswer" :bordered="true" style="width:100%;" :auto-size="{ minRows: 2, maxRows: 5 }"/>
|
<a-textarea placeholder="请填写答案" v-model:value="item.wjAnswer" :bordered="false" style="width:100%" :auto-size="{ minRows: 1, maxRows: 5 }"/>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</a-card>
|
</a-card>
|
||||||
|
@ -151,6 +159,11 @@ const emit = defineEmits(['register', 'success']);
|
||||||
function addTigan(type){
|
function addTigan(type){
|
||||||
var list = tiganData.value;
|
var list = tiganData.value;
|
||||||
if(type==3){
|
if(type==3){
|
||||||
|
var chk = "";
|
||||||
|
console.log(`🚀 ~ addTigan ~ isShow:`, isShow)
|
||||||
|
if(isShow.value){
|
||||||
|
chk = "1";
|
||||||
|
}
|
||||||
let params = {
|
let params = {
|
||||||
wjType:parseInt(type),
|
wjType:parseInt(type),
|
||||||
wjIndex:list.length+1,
|
wjIndex:list.length+1,
|
||||||
|
@ -158,12 +171,17 @@ function addTigan(type){
|
||||||
wjTitle:null,
|
wjTitle:null,
|
||||||
wjScore:null,
|
wjScore:null,
|
||||||
wjLeixing,
|
wjLeixing,
|
||||||
// itemSelected:'1',
|
itemSelected:chk,
|
||||||
wjxWjxxTmxxList:[{itemTitle:null,itemIndex:'1'},{itemTitle:null,itemIndex:'2'}],
|
wjxWjxxTmxxList:[{itemTitle:null,itemIndex:'1'},{itemTitle:null,itemIndex:'2'}],
|
||||||
}
|
}
|
||||||
list.push(params);
|
list.push(params);
|
||||||
tiganData.value = [...list];
|
tiganData.value = [...list];
|
||||||
}else if(type==4){
|
}else if(type==4){
|
||||||
|
|
||||||
|
var chk = [];
|
||||||
|
if(isShow.value){
|
||||||
|
chk = ['1','2'];
|
||||||
|
}
|
||||||
let params = {
|
let params = {
|
||||||
wjType:parseInt(type),
|
wjType:parseInt(type),
|
||||||
wjIndex:list.length+1,
|
wjIndex:list.length+1,
|
||||||
|
@ -171,7 +189,7 @@ function addTigan(type){
|
||||||
wjTitle:null,
|
wjTitle:null,
|
||||||
wjScore:null,
|
wjScore:null,
|
||||||
wjLeixing,
|
wjLeixing,
|
||||||
// itemSelected:['1'],
|
itemSelected:chk,
|
||||||
wjxWjxxTmxxList:[{itemTitle:null,itemIndex:'1'},{itemTitle:null,itemIndex:'2'}],
|
wjxWjxxTmxxList:[{itemTitle:null,itemIndex:'1'},{itemTitle:null,itemIndex:'2'}],
|
||||||
}
|
}
|
||||||
list.push(params);
|
list.push(params);
|
||||||
|
@ -190,6 +208,36 @@ function addTigan(type){
|
||||||
tiganData.value = [...list];
|
tiganData.value = [...list];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function cheGrp(a,b){
|
||||||
|
var retChe = false;
|
||||||
|
if(a){
|
||||||
|
for(var i=0;i<a.length;i++){
|
||||||
|
if(a[i]==b){
|
||||||
|
retChe = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return retChe;
|
||||||
|
}
|
||||||
|
|
||||||
|
function handinpwei(value){
|
||||||
|
if(!value){
|
||||||
|
return '20rem';
|
||||||
|
}else{
|
||||||
|
if(String(value).length * 1.1<20){
|
||||||
|
return '20rem';
|
||||||
|
}else if(String(value).length * 1.1>60){
|
||||||
|
return '60rem';
|
||||||
|
}else{
|
||||||
|
return String(value).length * 1.1 +"rem";
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
//引用题库
|
//引用题库
|
||||||
function handleYylx(sylx){
|
function handleYylx(sylx){
|
||||||
var createBy = "";
|
var createBy = "";
|
||||||
|
@ -303,7 +351,7 @@ function handleAddTmxx(record,index,list){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
list.push({itemTitle:null,itemIndex:itemIndex+1});
|
list.push({itemTitle:null,itemIndex:parseInt(itemIndex)+1});
|
||||||
}
|
}
|
||||||
//删除题目
|
//删除题目
|
||||||
function handleDelTigan(record,index){
|
function handleDelTigan(record,index){
|
||||||
|
@ -428,29 +476,34 @@ async function submitForm(){
|
||||||
|
|
||||||
<style lang="less" scoped>
|
<style lang="less" scoped>
|
||||||
|
|
||||||
/deep/span.ant-radio + * {
|
// /deep/span.ant-radio + * {
|
||||||
width: 100%;
|
// width: 100%;
|
||||||
}
|
// }
|
||||||
|
|
||||||
/deep/.ant-checkbox-wrapper {
|
// /deep/.ant-checkbox-wrapper {
|
||||||
box-sizing: border-box;
|
// box-sizing: border-box;
|
||||||
margin: 0;
|
// margin: 0;
|
||||||
padding: 0;
|
// padding: 0;
|
||||||
color: rgba(0, 0, 0, 0.85);
|
// color: rgba(0, 0, 0, 0.85);
|
||||||
font-size: 14px;
|
// font-size: 14px;
|
||||||
font-variant: tabular-nums;
|
// font-variant: tabular-nums;
|
||||||
line-height: 1.5715;
|
// line-height: 1.5715;
|
||||||
list-style: none;
|
// list-style: none;
|
||||||
font-feature-settings: tnum;
|
// font-feature-settings: tnum;
|
||||||
display: inline-flex;
|
// display: inline-flex;
|
||||||
align-items: baseline;
|
// align-items: baseline;
|
||||||
line-height: unset;
|
// line-height: unset;
|
||||||
cursor: pointer;
|
// cursor: pointer;
|
||||||
width: 80%;
|
// width: 80%;
|
||||||
}
|
// }
|
||||||
/deep/.ant-checkbox + span {
|
// /deep/.ant-checkbox + span {
|
||||||
padding-right: 8px;
|
// padding-right: 8px;
|
||||||
padding-left: 8px;
|
// padding-left: 8px;
|
||||||
width: 100%;
|
// width: 100%;
|
||||||
|
// }
|
||||||
|
|
||||||
|
.auto-width-input {
|
||||||
|
width: max-content;
|
||||||
|
min-width: 100px; /* 设置最小宽度,防止过度缩小 */
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -151,10 +151,13 @@ function toIndex(){
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
let roleList = userStore?.getLoginInfo?.roleList
|
let roleList = userStore?.getUserInfo?.roleList;
|
||||||
|
console.log(`🚀 ~ onMounted ~ userStore:`, userStore)
|
||||||
|
console.log(`🚀 ~ onMounted ~ roleList:`, roleList)
|
||||||
if(roleList){
|
if(roleList){
|
||||||
for(var i=0;i<roleList.length;i++){
|
for(var i=0;i<roleList.length;i++){
|
||||||
var roleCode = roleList[i].roleCode
|
var roleCode = roleList[i].roleCode
|
||||||
|
console.log(`🚀 ~ onMounted ~ roleCode:`, roleCode)
|
||||||
if(roleCode == 'admin' || roleCode == 'jwms'){
|
if(roleCode == 'admin' || roleCode == 'jwms'){
|
||||||
sfxx.value = "1";
|
sfxx.value = "1";
|
||||||
}
|
}
|
||||||
|
|
|
@ -64,7 +64,7 @@ function toWeek(week){
|
||||||
loadData()
|
loadData()
|
||||||
});
|
});
|
||||||
|
|
||||||
window.open('/zy/dqkcDetail?rwbh='+item.rwbh+'&xqxn='+getSysConfig().flag1+"&type=1","_blank");
|
window.open('/zy/dqkcDetail?rwbh='+item.rwbh+'&xqxn='+getSysConfig().flag1+"&type=1"+"&teano="+item.jgh,"_blank");
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<style lang="less" scoped>
|
<style lang="less" scoped>
|
||||||
|
|
|
@ -1,11 +1,14 @@
|
||||||
<template>
|
<template>
|
||||||
<div style="margin-top:10px;background:#fff;height: calc(100vh - 225px);overflow:auto;">
|
<div style="margin-top:10px;background:#fff;height: calc(100vh - 225px);overflow:auto;">
|
||||||
|
<div style="width:100%;text-align:right;">
|
||||||
|
<a-button type="primary" style="margin-left:10px;" @click="handleZtyl(jxdgInfo)">预览</a-button>
|
||||||
|
</div>
|
||||||
<a-card>
|
<a-card>
|
||||||
<div>
|
<div>
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="3" style="font-size: 18px;font-weight: bold;">课程简介:</a-col>
|
<a-col :lg="3" style="font-size: 18px;font-weight: bold;">课程简介:</a-col>
|
||||||
<a-col :span="15"><a-textarea style="width: 100%;" v-model:value="jxdgInfo.kcjs"></a-textarea></a-col>
|
<a-col :lg="15"><a-textarea style="width: 100%;" v-model:value="jxdgInfo.kcjs"></a-textarea></a-col>
|
||||||
<a-col :span="6" style="text-align:right;"><a-button type="primary" @click="addKcjsHandle(1)">提交</a-button><a-button type="primary" style="margin-left:10px;" @click="handleYinyong(jxdgInfo)">引用</a-button></a-col>
|
<a-col :lg="6" style="text-align:right;"><a-button type="primary" @click="addKcjsHandle(1)">提交</a-button><a-button type="primary" style="margin-left:10px;" @click="handleYinyong(jxdgInfo)">引用</a-button></a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</div>
|
</div>
|
||||||
</a-card>
|
</a-card>
|
||||||
|
@ -71,6 +74,7 @@
|
||||||
</a-card>
|
</a-card>
|
||||||
<ZyCjwtModal ref="ZyCjwtModalPage" @success="handleCjwtOk" />
|
<ZyCjwtModal ref="ZyCjwtModalPage" @success="handleCjwtOk" />
|
||||||
<ZyJxdgListModal ref="ZyJxdgListModalPage" @success="getKcjsJxdg" />
|
<ZyJxdgListModal ref="ZyJxdgListModalPage" @success="getKcjsJxdg" />
|
||||||
|
<studentZyxxModal ref="studentZyxxModalPage" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -92,6 +96,7 @@
|
||||||
import { getFileAccessHttpUrl } from '/@/utils/common/compUtils';
|
import { getFileAccessHttpUrl } from '/@/utils/common/compUtils';
|
||||||
import JeecgPdfView from '/@/views/demo/jeecg/JeecgPdfView.vue';
|
import JeecgPdfView from '/@/views/demo/jeecg/JeecgPdfView.vue';
|
||||||
import { useGlobSetting } from '/@/hooks/setting';
|
import { useGlobSetting } from '/@/hooks/setting';
|
||||||
|
import studentZyxxModal from '/@/views/site/studentWdkc/studentZyxxModal.vue';
|
||||||
|
|
||||||
const globSetting = useGlobSetting();
|
const globSetting = useGlobSetting();
|
||||||
const baseApiUrl = globSetting.domainUrl;
|
const baseApiUrl = globSetting.domainUrl;
|
||||||
|
@ -99,7 +104,7 @@ const baseApiUrl = globSetting.domainUrl;
|
||||||
//当前路由信息
|
//当前路由信息
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh,xqxn } = query;//获取传递参数
|
const { rwbh,xqxn,teano } = query;//获取传递参数
|
||||||
const APagination = Pagination;
|
const APagination = Pagination;
|
||||||
const current = ref<number>(1);
|
const current = ref<number>(1);
|
||||||
const total = ref<number>(0);
|
const total = ref<number>(0);
|
||||||
|
@ -108,6 +113,7 @@ const baseApiUrl = globSetting.domainUrl;
|
||||||
const tkzjParam = ref({rwbh:rwbh});
|
const tkzjParam = ref({rwbh:rwbh});
|
||||||
const ZyCjwtModalPage = ref();
|
const ZyCjwtModalPage = ref();
|
||||||
const ZyJxdgListModalPage = ref();
|
const ZyJxdgListModalPage = ref();
|
||||||
|
const studentZyxxModalPage = ref();
|
||||||
const cjwtSource = ref([]);
|
const cjwtSource = ref([]);
|
||||||
let router = useRouter();
|
let router = useRouter();
|
||||||
const { createMessage } = useMessage();
|
const { createMessage } = useMessage();
|
||||||
|
@ -137,6 +143,11 @@ const baseApiUrl = globSetting.domainUrl;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function handleZtyl(record){
|
||||||
|
studentZyxxModalPage.value.disableSubmit = true;
|
||||||
|
studentZyxxModalPage.value.edit(record);
|
||||||
|
}
|
||||||
|
|
||||||
//引用功能
|
//引用功能
|
||||||
function handleYinyong(record){
|
function handleYinyong(record){
|
||||||
ZyJxdgListModalPage.value.disableSubmit = true;
|
ZyJxdgListModalPage.value.disableSubmit = true;
|
||||||
|
@ -201,7 +212,7 @@ const baseApiUrl = globSetting.domainUrl;
|
||||||
}
|
}
|
||||||
|
|
||||||
function cjwtData(){
|
function cjwtData(){
|
||||||
defHttp.get({ url: '/zyCjwt/zyCjwt/list', params: { pageSize: 3,pageNo:current.value, rwbh:rwbh,xqxn:xqxn,column:'createTime',order:'desc' } }).then((res) => {
|
defHttp.get({ url: '/zyCjwt/zyCjwt/list', params: { pageSize: 3,pageNo:current.value, rwbh:rwbh,xqxn:xqxn,teano:teano,column:'createTime',order:'desc' } }).then((res) => {
|
||||||
// console.log(`🚀 ~ defHttp.get ~ res:`, res)
|
// console.log(`🚀 ~ defHttp.get ~ res:`, res)
|
||||||
cjwtSource.value = res.records;
|
cjwtSource.value = res.records;
|
||||||
total.value = res.total;
|
total.value = res.total;
|
||||||
|
@ -212,7 +223,9 @@ const baseApiUrl = globSetting.domainUrl;
|
||||||
}
|
}
|
||||||
//获取课程简介和教学大纲内容
|
//获取课程简介和教学大纲内容
|
||||||
function getKcjsJxdg(){
|
function getKcjsJxdg(){
|
||||||
defHttp.get({ url: '/zyJxdg/zyJxdg/getKcjsJxdg', params: { rwbh:rwbh,xqxn:xqxn } }).then((res) => {
|
console.log(`🚀 ~111111111111111:`)
|
||||||
|
defHttp.get({ url: '/zyJxdg/zyJxdg/getKcjsJxdg', params: { rwbh:rwbh,xqxn:xqxn,teano:teano } }).then((res) => {
|
||||||
|
console.log(`🚀 ~2222222222222222:`,res)
|
||||||
if(res){
|
if(res){
|
||||||
jxdgInfo.value = res;
|
jxdgInfo.value = res;
|
||||||
}
|
}
|
||||||
|
@ -223,13 +236,14 @@ const baseApiUrl = globSetting.domainUrl;
|
||||||
var model = jxdgInfo.value;
|
var model = jxdgInfo.value;
|
||||||
model.rwbh = rwbh;
|
model.rwbh = rwbh;
|
||||||
model.xqxn = xqxn;
|
model.xqxn = xqxn;
|
||||||
// console.log(`🚀 ~ addKcjsHandle ~ model:`, model)
|
model.teano = teano;
|
||||||
|
console.log(`🚀 ~ addKcjsHandle ~ model:`, model)
|
||||||
if(model.id){
|
if(model.id){
|
||||||
if(type=='1'){
|
if(type=='1'){
|
||||||
model.filePath = '';
|
model.filePath = '';
|
||||||
}
|
}
|
||||||
defHttp.post({ url: '/zyJxdg/zyJxdg/edit', params: model }).then((res) => {
|
defHttp.post({ url: '/zyJxdg/zyJxdg/edit', params: model }).then((res) => {
|
||||||
// console.log(`🚀 ~ defHttp.post 111~ res:`, res)
|
console.log(`🚀 ~ defHttp.post 111~ res:`, res)
|
||||||
getKcjsJxdg();
|
getKcjsJxdg();
|
||||||
});
|
});
|
||||||
}else{
|
}else{
|
||||||
|
@ -237,7 +251,7 @@ const baseApiUrl = globSetting.domainUrl;
|
||||||
model.filePath = '';
|
model.filePath = '';
|
||||||
}
|
}
|
||||||
defHttp.post({ url: '/zyJxdg/zyJxdg/add', params: model }).then((res) => {
|
defHttp.post({ url: '/zyJxdg/zyJxdg/add', params: model }).then((res) => {
|
||||||
// console.log(`🚀 ~ defHttp.post 222~ res:`, res)
|
console.log(`🚀 ~ defHttp.post 222~ res:`, res)
|
||||||
getKcjsJxdg();
|
getKcjsJxdg();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -69,7 +69,7 @@
|
||||||
//当前路由信息
|
//当前路由信息
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh,xqxn,type } = query;//获取传递参数
|
const { rwbh,xqxn,type,teano } = query;//获取传递参数
|
||||||
let router = useRouter();
|
let router = useRouter();
|
||||||
|
|
||||||
|
|
||||||
|
@ -101,11 +101,11 @@
|
||||||
href = "/zy/dqkcCdxx";
|
href = "/zy/dqkcCdxx";
|
||||||
}
|
}
|
||||||
|
|
||||||
router.push({path:href,query: {rwbh,xqxn,type}});
|
router.push({path:href,query: {rwbh,xqxn,type,teano}});
|
||||||
}
|
}
|
||||||
|
|
||||||
function gotoPageByName(name) {
|
function gotoPageByName(name) {
|
||||||
router.push({ name, query: { rwbh, xqxn, type } });
|
router.push({ name, query: { rwbh, xqxn, type,teano } });
|
||||||
}
|
}
|
||||||
|
|
||||||
//进入就加载
|
//进入就加载
|
||||||
|
|
|
@ -51,7 +51,7 @@
|
||||||
//当前路由信息
|
//当前路由信息
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh,xqxn,type } = query;//获取传递参数
|
const { rwbh,xqxn,type,teano } = query;//获取传递参数
|
||||||
let router = useRouter();
|
let router = useRouter();
|
||||||
|
|
||||||
|
|
||||||
|
@ -71,11 +71,11 @@
|
||||||
}else if(zytype=='tlq'){//讨论区
|
}else if(zytype=='tlq'){//讨论区
|
||||||
href = "/stuzy/stuTlq";
|
href = "/stuzy/stuTlq";
|
||||||
}else if(zytype == 'stuJiaoXueDanYuanNeiRong'){//教学单元内容
|
}else if(zytype == 'stuJiaoXueDanYuanNeiRong'){//教学单元内容
|
||||||
router.push({ name: 'stuJiaoXueDanYuanNeiRong', query: { rwbh,xqxn,type } });
|
router.push({ name: 'stuJiaoXueDanYuanNeiRong', query: { rwbh,xqxn,type,teano } });
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
router.push({path:href,query: {rwbh,xqxn,type}});
|
router.push({path:href,query: {rwbh,xqxn,type,teano}});
|
||||||
}
|
}
|
||||||
|
|
||||||
//进入就加载
|
//进入就加载
|
||||||
|
|
|
@ -59,7 +59,7 @@ function openKecheng(record){
|
||||||
defHttp.post({ url: '/zyDbtx/zyDbtx/deleteByRwbhCreate',params:{rwbh:record.rwbh} }).then((res) => {
|
defHttp.post({ url: '/zyDbtx/zyDbtx/deleteByRwbhCreate',params:{rwbh:record.rwbh} }).then((res) => {
|
||||||
loaddata()
|
loaddata()
|
||||||
});
|
});
|
||||||
var url = "/stuzy/studentMain?rwbh="+record.rwbh+"&xqxn="+record.xqxn;
|
var url = "/stuzy/studentMain?rwbh="+record.rwbh+"&xqxn="+record.xqxn+"&teano="+record.jgh;
|
||||||
window.open(url,'_blank')
|
window.open(url,'_blank')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,8 @@
|
||||||
<a-card>
|
<a-card>
|
||||||
<div>
|
<div>
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="3" style="font-size: 18px;font-weight: bold;">课程简介:</a-col>
|
<a-col :lg="3" style="font-size: 18px;font-weight: bold;">课程简介:</a-col>
|
||||||
<a-col :span="20">{{jxdgInfo.kcjs}}</a-col>
|
<a-col :lg="20">{{jxdgInfo.kcjs}}</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</div>
|
</div>
|
||||||
</a-card>
|
</a-card>
|
||||||
|
@ -97,7 +97,7 @@ const baseApiUrl = globSetting.domainUrl;
|
||||||
//当前路由信息
|
//当前路由信息
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh,xqxn } = query;//获取传递参数
|
const { rwbh,xqxn,teano } = query;//获取传递参数
|
||||||
const APagination = Pagination;
|
const APagination = Pagination;
|
||||||
const current = ref<number>(1);
|
const current = ref<number>(1);
|
||||||
const total = ref<number>(0);
|
const total = ref<number>(0);
|
||||||
|
@ -168,7 +168,7 @@ function openJxrlPdf(record){
|
||||||
}
|
}
|
||||||
|
|
||||||
function cjwtData(){
|
function cjwtData(){
|
||||||
defHttp.get({ url: '/zyCjwt/zyCjwt/list', params: { pageSize: 3,pageNo:current.value, rwbh:rwbh,xqxn:xqxn,column:'createTime',order:'desc' } }).then((res) => {
|
defHttp.get({ url: '/zyCjwt/zyCjwt/list', params: { pageSize: 3,pageNo:current.value, rwbh:rwbh,xqxn:xqxn,teano:teano,column:'createTime',order:'desc' } }).then((res) => {
|
||||||
// console.log(`🚀 ~ defHttp.get ~ res:`, res)
|
// console.log(`🚀 ~ defHttp.get ~ res:`, res)
|
||||||
cjwtSource.value = res.records;
|
cjwtSource.value = res.records;
|
||||||
total.value = res.total;
|
total.value = res.total;
|
||||||
|
@ -179,7 +179,7 @@ function openJxrlPdf(record){
|
||||||
}
|
}
|
||||||
//获取课程简介和教学大纲内容
|
//获取课程简介和教学大纲内容
|
||||||
function getKcjsJxdg(){
|
function getKcjsJxdg(){
|
||||||
defHttp.get({ url: '/zyJxdg/zyJxdg/getKcjsJxdg', params: { rwbh:rwbh,xqxn:xqxn} }).then((res) => {
|
defHttp.get({ url: '/zyJxdg/zyJxdg/getKcjsJxdg', params: { rwbh:rwbh,xqxn:xqxn,teano:teano} }).then((res) => {
|
||||||
// console.log(`🚀 1111111111111~ getKcjsJxdg ~ res:`, res)
|
// console.log(`🚀 1111111111111~ getKcjsJxdg ~ res:`, res)
|
||||||
if(res){
|
if(res){
|
||||||
jxdgInfo.value = res;
|
jxdgInfo.value = res;
|
||||||
|
|
|
@ -193,7 +193,7 @@ onMounted(() => {
|
||||||
tjData.value = res;
|
tjData.value = res;
|
||||||
});
|
});
|
||||||
|
|
||||||
let roleList = userStore?.getLoginInfo?.roleList
|
let roleList = userStore?.getUserInfo?.roleList;
|
||||||
if(roleList){
|
if(roleList){
|
||||||
for(var i=0;i<roleList.length;i++){
|
for(var i=0;i<roleList.length;i++){
|
||||||
var roleCode = roleList[i].roleCode
|
var roleCode = roleList[i].roleCode
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<template>
|
<template>
|
||||||
<a-card class="rowGutter">
|
<a-card class="rowGutter">
|
||||||
<a-row :gutter="[16,16]">
|
<a-row :gutter="[16,16]">
|
||||||
<a-col :span="12" v-for="(item,index) in list" :key="index">
|
<a-col :lg="12" v-for="(item,index) in list" :key="index">
|
||||||
<a :href="item.nlink" target="_blank" class="itemLink">
|
<a :href="item.nlink" target="_blank" class="itemLink">
|
||||||
<span class="">
|
<span class="">
|
||||||
<WifiOutlined :rotate="45" class="greenTxt"/>
|
<WifiOutlined :rotate="45" class="greenTxt"/>
|
||||||
|
@ -14,8 +14,8 @@
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
<a-row style="font-size:16px;font-weight: 700;margin-top:10px;">
|
<a-row style="font-size:16px;font-weight: 700;margin-top:10px;">
|
||||||
<a-col :span="3">调停课通知:</a-col>
|
<a-col :lg="3">调停课通知:</a-col>
|
||||||
<a-col :span="15">
|
<a-col :lg="15">
|
||||||
<a-carousel autoplay easing="linear">
|
<a-carousel autoplay easing="linear">
|
||||||
<div v-for="(item,index) in tklist" :key="index" style="font-size:16px;font-weight: 700;">{{item.kcmc}}</div>
|
<div v-for="(item,index) in tklist" :key="index" style="font-size:16px;font-weight: 700;">{{item.kcmc}}</div>
|
||||||
</a-carousel>
|
</a-carousel>
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<a-form ref="formRef" class="antd-modal-form" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
<a-form ref="formRef" class="antd-modal-form" :labelCol="labelCol" :wrapperCol="wrapperCol">
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="24">
|
<a-col :span="24">
|
||||||
<a-card title="外网检测" >
|
<a-card title="网络查重" >
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<a-form-item label="文件">
|
<a-form-item label="文件">
|
||||||
|
@ -30,7 +30,7 @@
|
||||||
|
|
||||||
|
|
||||||
<a-col :span="24">
|
<a-col :span="24">
|
||||||
<a-card title="校内检测(自定义范围库唯一标识及名称)" >
|
<a-card title="校内查重(自定义范围库唯一标识及名称)" >
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<a-form-item label="文件">
|
<a-form-item label="文件">
|
||||||
|
@ -58,7 +58,7 @@
|
||||||
|
|
||||||
|
|
||||||
<a-col :span="24">
|
<a-col :span="24">
|
||||||
<a-card title="AIGC检测" >
|
<a-card title="Aigc查重" >
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<a-form-item label="文件">
|
<a-form-item label="文件">
|
||||||
|
@ -272,7 +272,7 @@
|
||||||
defHttp.post({ url: '/blZycc/blZycc/aigcKsjc', params: formData, }).then((res) => {
|
defHttp.post({ url: '/blZycc/blZycc/aigcKsjc', params: formData, }).then((res) => {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
//AIGC检测结果查询
|
//Aigc查重结果查询
|
||||||
function handleAigccxjcjg(){
|
function handleAigccxjcjg(){
|
||||||
confirmLoading.value = true;
|
confirmLoading.value = true;
|
||||||
defHttp.post({ url: '/blZycc/blZycc/aigcCxjcjg', params: formData, }).then((res) => {
|
defHttp.post({ url: '/blZycc/blZycc/aigcCxjcjg', params: formData, }).then((res) => {
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
<div class="topButton">
|
<div class="topButton">
|
||||||
<a-space v-if="!isPreview">
|
<a-space v-if="!isPreview">
|
||||||
<!-- <a-button type="primary" @click="save" :loading="saveLoading" title="保存"><Icon icon="ant-design:save-outlined"/>保存</a-button> -->
|
<!-- <a-button type="primary" @click="save" :loading="saveLoading" title="保存"><Icon icon="ant-design:save-outlined"/>保存</a-button> -->
|
||||||
<a-button type="primary" @click="addOne()" class="addBtn" title="新增标题"><Icon icon="ant-design:plus-outlined"/>新增标题</a-button>
|
<a-button type="primary" @click="addOne()" class="addBtn" title="新增章节"><Icon icon="ant-design:plus-outlined"/>新增章节</a-button>
|
||||||
<a-button type="" v-if="!isPreview" @click="() => { isPreview = true; reloadStn(); }" class="addBtn" title="预览"><Icon icon="ant-design:fund-view-outlined"/>预览</a-button>
|
<a-button type="" v-if="!isPreview" @click="() => { isPreview = true; reloadStn(); }" class="addBtn" title="预览"><Icon icon="ant-design:fund-view-outlined"/>预览</a-button>
|
||||||
<a-button @click="reload"><Icon icon="ant-design:reload-outlined"/>刷新</a-button>
|
<a-button @click="reload"><Icon icon="ant-design:reload-outlined"/>刷新</a-button>
|
||||||
</a-space>
|
</a-space>
|
||||||
|
@ -43,7 +43,9 @@
|
||||||
<template #extra>
|
<template #extra>
|
||||||
<span v-show="one.showBtn">
|
<span v-show="one.showBtn">
|
||||||
<a-space>
|
<a-space>
|
||||||
<div><a-button type="primary" size="small" @click="addTwo($event, one)" class="twoBtn addBtn" title="新增章节"><Icon icon="ant-design:plus-outlined"/></a-button></div>
|
<div v-show="one.fabu=='0'"><a-button type="primary" size="small" @click="handleFabu(one,'1')" class="addBtn" title="发布"><Icon icon="ant-design:check-outlined"/></a-button></div>
|
||||||
|
<div v-show="one.fabu=='1'"><a-button type="primary" size="small" @click="handleFabu(one,'0')" class="addBtn" title="取消发布"><Icon icon="ant-design:rollback-outlined"/></a-button></div>
|
||||||
|
<div><a-button type="primary" size="small" @click="addTwo($event, one)" class="twoBtn addBtn" title="新增节次"><Icon icon="ant-design:plus-outlined"/></a-button></div>
|
||||||
<div><a-button type="primary" size="small" danger @click="delOne($event, one)" class="addBtn" title="删除"><Icon icon="ant-design:delete"/></a-button></div>
|
<div><a-button type="primary" size="small" danger @click="delOne($event, one)" class="addBtn" title="删除"><Icon icon="ant-design:delete"/></a-button></div>
|
||||||
</a-space>
|
</a-space>
|
||||||
</span>
|
</span>
|
||||||
|
@ -169,7 +171,7 @@
|
||||||
//当前路由信息
|
//当前路由信息
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh, xqxn, type } = query;//获取传递参数
|
const { rwbh, xqxn, type,teano } = query;//获取传递参数
|
||||||
|
|
||||||
const { createConfirm, createMessage } = useMessage();
|
const { createConfirm, createMessage } = useMessage();
|
||||||
const queryParam = ref<any>({});
|
const queryParam = ref<any>({});
|
||||||
|
@ -214,6 +216,7 @@
|
||||||
addOne = '/teachingunitcontent/kcTeachingUnitContentOne/add',
|
addOne = '/teachingunitcontent/kcTeachingUnitContentOne/add',
|
||||||
editOne = '/teachingunitcontent/kcTeachingUnitContentOne/edit',
|
editOne = '/teachingunitcontent/kcTeachingUnitContentOne/edit',
|
||||||
delOne = '/teachingunitcontent/kcTeachingUnitContentOne/delete',
|
delOne = '/teachingunitcontent/kcTeachingUnitContentOne/delete',
|
||||||
|
editJxdyOne = '/teachingunitcontent/kcTeachingUnitContentOne/editJxdyOne',
|
||||||
|
|
||||||
addTwo = '/teachingunitcontent/kcTeachingUnitContentTwo/add',
|
addTwo = '/teachingunitcontent/kcTeachingUnitContentTwo/add',
|
||||||
editTwo = '/teachingunitcontent/kcTeachingUnitContentTwo/edit',
|
editTwo = '/teachingunitcontent/kcTeachingUnitContentTwo/edit',
|
||||||
|
@ -235,6 +238,7 @@
|
||||||
const addOneFetch = (params) => defHttp.post({ url: Api.addOne, params }, { isTransformResponse: false });
|
const addOneFetch = (params) => defHttp.post({ url: Api.addOne, params }, { isTransformResponse: false });
|
||||||
const editOneFetch = (params) => defHttp.put({ url: Api.editOne, params }, { isTransformResponse: false });
|
const editOneFetch = (params) => defHttp.put({ url: Api.editOne, params }, { isTransformResponse: false });
|
||||||
const delOneFetch = (params) => defHttp.delete({ url: Api.delOne, params }, { isTransformResponse: false, joinParamsToUrl: true });
|
const delOneFetch = (params) => defHttp.delete({ url: Api.delOne, params }, { isTransformResponse: false, joinParamsToUrl: true });
|
||||||
|
const editJxdyOne = (params) => defHttp.put({ url: Api.editJxdyOne, params }, { isTransformResponse: false });
|
||||||
|
|
||||||
const addTwoFetch = (params) => defHttp.post({ url: Api.addTwo, params }, { isTransformResponse: false });
|
const addTwoFetch = (params) => defHttp.post({ url: Api.addTwo, params }, { isTransformResponse: false });
|
||||||
const editTwoFetch = (params) => defHttp.put({ url: Api.editTwo, params }, { isTransformResponse: false });
|
const editTwoFetch = (params) => defHttp.put({ url: Api.editTwo, params }, { isTransformResponse: false });
|
||||||
|
@ -258,6 +262,7 @@
|
||||||
let params = {
|
let params = {
|
||||||
rwbh,
|
rwbh,
|
||||||
xqxn,
|
xqxn,
|
||||||
|
teano,
|
||||||
}
|
}
|
||||||
await listAll(params).then(res => {
|
await listAll(params).then(res => {
|
||||||
dataRecursion(res, (x) => x._id = x.id);
|
dataRecursion(res, (x) => x._id = x.id);
|
||||||
|
@ -295,6 +300,18 @@
|
||||||
dataRecursion(dataSource.value, (x, i) => x.sort = i+1);
|
dataRecursion(dataSource.value, (x, i) => x.sort = i+1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function handleFabu(record,type){
|
||||||
|
console.log(`🚀 ~ handleFabu ~ record,type:`, record,type)
|
||||||
|
var params = {id:record.id,fabu:type}
|
||||||
|
editJxdyOne(params).then(res => {
|
||||||
|
if(res.success){
|
||||||
|
createMessage.success('操作成功!');
|
||||||
|
reload();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
//获取祖宗级对象
|
//获取祖宗级对象
|
||||||
function getBtnEle(e, className){
|
function getBtnEle(e, className){
|
||||||
if(e){
|
if(e){
|
||||||
|
@ -348,7 +365,7 @@
|
||||||
addOneFetch(nowData).then(res => {
|
addOneFetch(nowData).then(res => {
|
||||||
if(res.success){
|
if(res.success){
|
||||||
nowData.id = res.result.id;
|
nowData.id = res.result.id;
|
||||||
createMessage.success('添加标题成功!');
|
createMessage.success('新增章节成功!');
|
||||||
// nextTick(() => {
|
// nextTick(() => {
|
||||||
// refreshDataSort();
|
// refreshDataSort();
|
||||||
// });
|
// });
|
||||||
|
@ -359,7 +376,7 @@
|
||||||
function editOne(one){
|
function editOne(one){
|
||||||
editOneFetch(one).then(res => {
|
editOneFetch(one).then(res => {
|
||||||
if(res.success){
|
if(res.success){
|
||||||
createMessage.success('修改标题成功!');
|
createMessage.success('修改章节成功!');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -372,7 +389,7 @@
|
||||||
let index = dataSource.value.findIndex(x => x == one);
|
let index = dataSource.value.findIndex(x => x == one);
|
||||||
if(index == -1) return;
|
if(index == -1) return;
|
||||||
dataSource.value.splice(index, 1);
|
dataSource.value.splice(index, 1);
|
||||||
createMessage.success('删除标题成功!');
|
createMessage.success('删除章节成功!');
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
refreshDataSort();
|
refreshDataSort();
|
||||||
})
|
})
|
||||||
|
@ -415,7 +432,7 @@
|
||||||
addTwoFetch(nowData).then(res => {
|
addTwoFetch(nowData).then(res => {
|
||||||
if(res.success){
|
if(res.success){
|
||||||
nowData.id = res.result.id;
|
nowData.id = res.result.id;
|
||||||
createMessage.success('添加章节成功!');
|
createMessage.success('添加节次成功!');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -423,7 +440,7 @@
|
||||||
function editTwo(two){
|
function editTwo(two){
|
||||||
editTwoFetch(two).then(res => {
|
editTwoFetch(two).then(res => {
|
||||||
if(res.success){
|
if(res.success){
|
||||||
createMessage.success('修改章节成功!');
|
createMessage.success('修改节次成功!');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -435,7 +452,7 @@
|
||||||
let index = one.childrenList.findIndex(x => x == two);
|
let index = one.childrenList.findIndex(x => x == two);
|
||||||
if(index == -1) return;
|
if(index == -1) return;
|
||||||
one.childrenList.splice(index, 1);
|
one.childrenList.splice(index, 1);
|
||||||
createMessage.success('删除章节成功!');
|
createMessage.success('删除节次成功!');
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
refreshDataSort();
|
refreshDataSort();
|
||||||
})
|
})
|
||||||
|
|
|
@ -187,7 +187,7 @@
|
||||||
//当前路由信息
|
//当前路由信息
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh, xqxn, type } = query;//获取传递参数
|
const { rwbh, xqxn, type, teano } = query;//获取传递参数
|
||||||
|
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
|
@ -258,6 +258,8 @@
|
||||||
let params = {
|
let params = {
|
||||||
rwbh,
|
rwbh,
|
||||||
xqxn,
|
xqxn,
|
||||||
|
teano,
|
||||||
|
fabu:'1',
|
||||||
}
|
}
|
||||||
await listAll(params).then(res => {
|
await listAll(params).then(res => {
|
||||||
dataRecursion(res, (x) => x._id = x.id);
|
dataRecursion(res, (x) => x._id = x.id);
|
||||||
|
|
|
@ -61,8 +61,8 @@
|
||||||
const APagination = Pagination;
|
const APagination = Pagination;
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh,xqxn } = query;//获取传递参数
|
const { rwbh,xqxn,teano } = query;//获取传递参数
|
||||||
const queryParam = ref<any>({ rwbh,xqxn ,ggStatus:'1'});
|
const queryParam = ref<any>({ rwbh,xqxn,teano ,ggStatus:'1'});
|
||||||
const current = ref<number>(0);
|
const current = ref<number>(0);
|
||||||
const total = ref<number>(0);
|
const total = ref<number>(0);
|
||||||
const pageNo = ref<number>(0);
|
const pageNo = ref<number>(0);
|
||||||
|
@ -94,6 +94,7 @@
|
||||||
queryParam.value = {};
|
queryParam.value = {};
|
||||||
queryParam.value.rwbh = rwbh;
|
queryParam.value.rwbh = rwbh;
|
||||||
queryParam.value.xqxn = xqxn;
|
queryParam.value.xqxn = xqxn;
|
||||||
|
queryParam.value.teano = teano;
|
||||||
queryParam.value.ggStatus='1';
|
queryParam.value.ggStatus='1';
|
||||||
total.value = 1;
|
total.value = 1;
|
||||||
handlePageChange(1);
|
handlePageChange(1);
|
||||||
|
@ -110,6 +111,7 @@
|
||||||
queryParam.value.pageSize = pageSize.value;
|
queryParam.value.pageSize = pageSize.value;
|
||||||
queryParam.value.rwbh = rwbh;
|
queryParam.value.rwbh = rwbh;
|
||||||
queryParam.value.xqxn = xqxn;
|
queryParam.value.xqxn = xqxn;
|
||||||
|
queryParam.value.teano = teano;
|
||||||
queryParam.value.column="createTime";
|
queryParam.value.column="createTime";
|
||||||
queryParam.value.order="desc";
|
queryParam.value.order="desc";
|
||||||
console.log(`🚀 ~ reload ~ queryParam:`, queryParam)
|
console.log(`🚀 ~ reload ~ queryParam:`, queryParam)
|
||||||
|
|
|
@ -40,12 +40,22 @@
|
||||||
</a-row>
|
</a-row>
|
||||||
<a-row style="padding:10px;">
|
<a-row style="padding:10px;">
|
||||||
<a-col :span="16">
|
<a-col :span="16">
|
||||||
<a-button type="primary" @click="handleEdit(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.ggStatus==0">编辑</a-button>
|
<a @click="handleEdit(item)" style="margin-left:5px;padding: 0px 8px;" v-if="item.ggStatus==0" title="编辑"><Icon icon="ant-design:form-outlined"/></a>
|
||||||
<a-button type="primary" @click="handleDelete(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.ggStatus==0">删除</a-button>
|
<a-divider type="vertical" style="height: 30px; background-color: #7cb305" v-if="item.ggStatus==0"/>
|
||||||
<a-button type="primary" @click="handleCh(item)" style="margin-left:5px;padding: 0px 8px;background:#a7a6a6;" v-if="item.ggStatus==1">撤回</a-button>
|
<a @click="handleDelete(item)" style="margin-left:5px;padding: 0px 8px;" v-if="item.ggStatus==0" title="删除"><Icon icon="ant-design:delete-outlined" /></a>
|
||||||
<a-button type="primary" @click="handleDetail(item)" style="margin-left:5px;padding: 0px 8px;background:#18a689;">预览</a-button>
|
<a-divider type="vertical" style="height: 30px; background-color: #7cb305" v-if="item.ggStatus==0"/>
|
||||||
<a-button type="primary" @click="handleFabu(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.ggStatus==0">发布</a-button>
|
<a @click="handleCh(item)" style="margin-left:5px;padding: 0px 8px;" v-if="item.ggStatus==1" title="撤回"><Icon icon="ant-design:rollback-outlined" /></a>
|
||||||
<!-- <a-button type="primary" @click="handleHistory(item)" style="margin-left:5px;padding: 0px 8px;background:#18a689;">历史</a-button>-->
|
<a-divider type="vertical" style="height: 30px; background-color: #7cb305" v-if="item.ggStatus==1"/>
|
||||||
|
<a @click="handleDetail(item)" style="margin-left:5px;padding: 0px 8px;" title="预览"><Icon icon="ant-design:copy-outlined" /></a>
|
||||||
|
<a-divider type="vertical" style="height: 30px; background-color: #7cb305" v-if="item.ggStatus==0"/>
|
||||||
|
<a @click="handleFabu(item)" style="margin-left:5px;padding: 0px 8px;" v-if="item.ggStatus==0" title="发布"><Icon icon="ant-design:check-circle-outlined" /></a>
|
||||||
|
|
||||||
|
<!-- <a-button type="primary" @click="handleEdit(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.ggStatus==0" title="编辑"><Icon icon="ant-design:form-outlined"/></a-button>
|
||||||
|
<a-button type="primary" @click="handleDelete(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.ggStatus==0" title="删除"><Icon icon="ant-design:delete-outlined" /></a-button>
|
||||||
|
<a-button type="primary" @click="handleCh(item)" style="margin-left:5px;padding: 0px 8px;background:#a7a6a6;" v-if="item.ggStatus==1" title="撤回"><Icon icon="ant-design:rollback-outlined" /></a-button>
|
||||||
|
<a-button type="primary" @click="handleDetail(item)" style="margin-left:5px;padding: 0px 8px;background:#18a689;" title="预览"><Icon icon="ant-design:copy-outlined" /></a-button>
|
||||||
|
<a-button type="primary" @click="handleFabu(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.ggStatus==0" title="发布"><Icon icon="ant-design:check-circle-outlined" /></a-button> -->
|
||||||
|
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="8">
|
<a-col :span="8">
|
||||||
<div style="text-align: right;color:#9e9e9e;font-weight: bold;">{{item.createTime}}</div>
|
<div style="text-align: right;color:#9e9e9e;font-weight: bold;">{{item.createTime}}</div>
|
||||||
|
|
|
@ -43,14 +43,14 @@
|
||||||
<a-col :span="24" class="zyCon">时间:{{dayjs(item.startTime).format('YYYY.MM.DD')}} - {{dayjs(item.endTime).format('YYYY.MM.DD')}}</a-col>
|
<a-col :span="24" class="zyCon">时间:{{dayjs(item.startTime).format('YYYY.MM.DD')}} - {{dayjs(item.endTime).format('YYYY.MM.DD')}}</a-col>
|
||||||
<a-col :span="24" class="zyCon">
|
<a-col :span="24" class="zyCon">
|
||||||
<div style="float:left" >评分:{{item.score?item.score:'未评'}}分</div>
|
<div style="float:left" >评分:{{item.score?item.score:'未评'}}分</div>
|
||||||
<div style="float:right;">网络查重:{{item.wwxsl?item.wwxsl+'%':'-'}}</div>
|
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="24" class="zyCon">
|
<a-col :span="24" class="zyCon">
|
||||||
<div style="float:left" >作业查重:{{item.nwxsl?item.nwxsl+'%':'-'}}</div>
|
<div style="float:left;">网络查重:{{getCctype(item,"1")}}</div>
|
||||||
<div style="float:right;">Aigc查重:{{item.aigcxsl?item.aigcxsl+'%':'-'}}</div>
|
<div style="float:right" >作业查重:{{getCctype(item,"2")}}</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="24" class="zyCon">
|
<a-col :span="24" class="zyCon">
|
||||||
<div style="float:left" >校内查重:{{item.xnxsl?item.xnxsl+'%':'-'}}</div>
|
<div style="float:left;">Aigc查重:{{getCctype(item,"3")}}</div>
|
||||||
|
<div style="float:right" >校内查重:{{getCctype(item,"4")}}</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="24" style="text-align:center;margin-top:20px;">
|
<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="handleDetail(item)" style="margin-left:5px;background:rgb(28, 132, 198);">详情</a-button>
|
||||||
|
@ -99,7 +99,7 @@
|
||||||
//当前路由信息
|
//当前路由信息
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh,xqxn,type } = query;//获取传递参数
|
const { rwbh,xqxn,type,teano } = query;//获取传递参数
|
||||||
const APagination = Pagination;
|
const APagination = Pagination;
|
||||||
const { createConfirm,createMessage } = useMessage();
|
const { createConfirm,createMessage } = useMessage();
|
||||||
const queryParam = ref<any>({});
|
const queryParam = ref<any>({});
|
||||||
|
@ -126,6 +126,43 @@ const baseApiUrl = globSetting.domainUrl;
|
||||||
sm: { span: 16 },
|
sm: { span: 16 },
|
||||||
});
|
});
|
||||||
|
|
||||||
|
function getCctype(record,type){
|
||||||
|
var text="-";
|
||||||
|
if(type=='1'){
|
||||||
|
if(record.wwcc=='1'){
|
||||||
|
if(record.wwxsl){
|
||||||
|
text = record.wwxsl+"%";
|
||||||
|
}else{
|
||||||
|
text = "检测中";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else if(type=='2'){
|
||||||
|
if(record.nwcc=='1'){
|
||||||
|
if(record.nwxsl){
|
||||||
|
text = record.nwxsl+"%";
|
||||||
|
}else{
|
||||||
|
text = "检测中";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else if(type=='3'){
|
||||||
|
if(record.aigccc=='1'){
|
||||||
|
if(record.aigcxsl){
|
||||||
|
text = record.aigcxsl+"%";
|
||||||
|
}else{
|
||||||
|
text = "检测中";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else if(type=='4'){
|
||||||
|
if(record.xncc=='1'){
|
||||||
|
if(record.xnxsl){
|
||||||
|
text = record.xnxsl+"%";
|
||||||
|
}else{
|
||||||
|
text = "检测中";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return text;
|
||||||
|
}
|
||||||
|
|
||||||
function classFun(record){
|
function classFun(record){
|
||||||
if(record.score){
|
if(record.score){
|
||||||
|
@ -234,6 +271,7 @@ const baseApiUrl = globSetting.domainUrl;
|
||||||
queryParam.value.pageSize = pageSize.value;
|
queryParam.value.pageSize = pageSize.value;
|
||||||
queryParam.value.rwbh = rwbh;
|
queryParam.value.rwbh = rwbh;
|
||||||
queryParam.value.xqxn = xqxn;
|
queryParam.value.xqxn = xqxn;
|
||||||
|
queryParam.value.teano = teano;
|
||||||
queryParam.value.zyStatus = '1,2,3,4';
|
queryParam.value.zyStatus = '1,2,3,4';
|
||||||
queryParam.value.column="createTime";
|
queryParam.value.column="createTime";
|
||||||
queryParam.value.order="desc";
|
queryParam.value.order="desc";
|
||||||
|
|
|
@ -74,8 +74,8 @@
|
||||||
//当前路由信息
|
//当前路由信息
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh,xqxn,type } = query;//获取传递参数
|
const { rwbh,xqxn,type,teano } = query;//获取传递参数
|
||||||
const queryParam = ref<any>({xqxn,rwbh});
|
const queryParam = ref<any>({xqxn,rwbh,teano});
|
||||||
const toggleSearchStatus = ref<boolean>(false);
|
const toggleSearchStatus = ref<boolean>(false);
|
||||||
const registerModal = ref();
|
const registerModal = ref();
|
||||||
const ZyInfoStudentListModalPage = ref();
|
const ZyInfoStudentListModalPage = ref();
|
||||||
|
@ -89,7 +89,7 @@
|
||||||
useSearchForm: false,
|
useSearchForm: false,
|
||||||
actionColumn: {
|
actionColumn: {
|
||||||
width: 220,
|
width: 220,
|
||||||
fixed: 'right',
|
// fixed: 'right',
|
||||||
},
|
},
|
||||||
beforeFetch: (params) => {
|
beforeFetch: (params) => {
|
||||||
params.column = 'endTime',params.order = 'desc';//新生成的默认不带排序
|
params.column = 'endTime',params.order = 'desc';//新生成的默认不带排序
|
||||||
|
@ -254,6 +254,7 @@
|
||||||
queryParam.value = {};
|
queryParam.value = {};
|
||||||
queryParam.value.xqxn = xqxn;
|
queryParam.value.xqxn = xqxn;
|
||||||
queryParam.value.rwbh = rwbh;
|
queryParam.value.rwbh = rwbh;
|
||||||
|
queryParam.value.teano = teano;
|
||||||
//刷新数据
|
//刷新数据
|
||||||
reload();
|
reload();
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,7 +37,7 @@
|
||||||
</a-form>
|
</a-form>
|
||||||
</div>
|
</div>
|
||||||
<a-row style="overflow:hidden;">
|
<a-row style="overflow:hidden;">
|
||||||
<a-col :span="8" v-for="(item, index) in tableData" :key="index" style="padding: 0px 0px 5px 5px;overflow:hidden;">
|
<a-col :lg="8" 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>
|
<div style="width: 100%; height: 20px; background-color: rgb(28, 132, 198);"></div>
|
||||||
<a-card style="height: 256px;border: 1px solid rgb(28, 132, 198);">
|
<a-card style="height: 256px;border: 1px solid rgb(28, 132, 198);">
|
||||||
<div class="rotate" :style="classFun(item.zyStatus)">{{item.zyStatus_dictText}}</div>
|
<div class="rotate" :style="classFun(item.zyStatus)">{{item.zyStatus_dictText}}</div>
|
||||||
|
@ -98,7 +98,7 @@ import dayjs from 'dayjs';
|
||||||
//当前路由信息
|
//当前路由信息
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh,xqxn,type } = query;//获取传递参数
|
const { rwbh,xqxn,type,teano } = query;//获取传递参数
|
||||||
const APagination = Pagination;
|
const APagination = Pagination;
|
||||||
const { createConfirm,createMessage } = useMessage();
|
const { createConfirm,createMessage } = useMessage();
|
||||||
const queryParam = ref<any>({});
|
const queryParam = ref<any>({});
|
||||||
|
@ -258,6 +258,7 @@ import dayjs from 'dayjs';
|
||||||
queryParam.value.pageSize = pageSize.value;
|
queryParam.value.pageSize = pageSize.value;
|
||||||
queryParam.value.rwbh = rwbh;
|
queryParam.value.rwbh = rwbh;
|
||||||
queryParam.value.xqxn = xqxn;
|
queryParam.value.xqxn = xqxn;
|
||||||
|
queryParam.value.teano = teano;
|
||||||
// queryParam.value.sflssj = '0';
|
// queryParam.value.sflssj = '0';
|
||||||
queryParam.value.column="endTime";
|
queryParam.value.column="endTime";
|
||||||
queryParam.value.order="desc";
|
queryParam.value.order="desc";
|
||||||
|
|
|
@ -70,6 +70,17 @@
|
||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
|
<template #xnsftgaction="{text,record}">
|
||||||
|
<span v-if="record.xncc=='0'">-</span>
|
||||||
|
<span v-else>
|
||||||
|
<span v-if="text=='通过'" style="color: green;padding: 5px 15px;" title="通过">{{record.xnxsl}}%</span>
|
||||||
|
<span v-else-if="text=='未通过'" style="color: red;padding: 5px 15px;" title="未通过">{{record.xnxsl}}%</span>
|
||||||
|
<span v-else>
|
||||||
|
<span v-if="record.filePath">检测中</span>
|
||||||
|
<span v-else>未提交</span>
|
||||||
|
</span>
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
</BasicTable>
|
</BasicTable>
|
||||||
<!-- 表单区域 -->
|
<!-- 表单区域 -->
|
||||||
<ZyInfoStudentModal ref="registerModal" @success="handleSuccess"></ZyInfoStudentModal>
|
<ZyInfoStudentModal ref="registerModal" @success="handleSuccess"></ZyInfoStudentModal>
|
||||||
|
|
|
@ -12,6 +12,7 @@ enum Api {
|
||||||
editCdlx='/zyInfoStudent/zyInfoStudent/editCdlx',
|
editCdlx='/zyInfoStudent/zyInfoStudent/editCdlx',
|
||||||
deleteOne = '/zyInfoStudent/zyInfoStudent/delete',
|
deleteOne = '/zyInfoStudent/zyInfoStudent/delete',
|
||||||
deleteBatch = '/zyInfoStudent/zyInfoStudent/deleteBatch',
|
deleteBatch = '/zyInfoStudent/zyInfoStudent/deleteBatch',
|
||||||
|
fabuBatch = '/zyInfoStudent/zyInfoStudent/fabuBatch',
|
||||||
importExcel = '/zyInfoStudent/zyInfoStudent/importExcel',
|
importExcel = '/zyInfoStudent/zyInfoStudent/importExcel',
|
||||||
exportXls = '/zyInfoStudent/zyInfoStudent/exportXls',
|
exportXls = '/zyInfoStudent/zyInfoStudent/exportXls',
|
||||||
getQuaList = '/zyCcjg/zyCcjg/getQuaList',
|
getQuaList = '/zyCcjg/zyCcjg/getQuaList',
|
||||||
|
@ -67,6 +68,21 @@ export const batchDelete = (params, handleSuccess) => {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export const batchFabu = (params, handleSuccess) => {
|
||||||
|
createConfirm({
|
||||||
|
iconType: 'warning',
|
||||||
|
title: '确认发布',
|
||||||
|
content: '是否发布选中数据',
|
||||||
|
okText: '确认',
|
||||||
|
cancelText: '取消',
|
||||||
|
onOk: () => {
|
||||||
|
return defHttp.post({url: Api.fabuBatch, data: params}, {joinParamsToUrl: true}).then(() => {
|
||||||
|
handleSuccess();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* 保存或者更新
|
* 保存或者更新
|
||||||
* @param params
|
* @param params
|
||||||
|
|
|
@ -28,28 +28,28 @@ export const columns: BasicColumn[] = [
|
||||||
width: '80px'
|
width: '80px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '外网检测',
|
title: '网络查重',
|
||||||
align: "center",
|
align: "center",
|
||||||
dataIndex: 'wwsftg',
|
dataIndex: 'wwsftg',
|
||||||
slots: { customRender: 'wwsftgaction' },
|
slots: { customRender: 'wwsftgaction' },
|
||||||
width: '100px'
|
width: '100px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '作业检测',
|
title: '作业查重',
|
||||||
align: "center",
|
align: "center",
|
||||||
dataIndex: 'nwsftg',
|
dataIndex: 'nwsftg',
|
||||||
slots: { customRender: 'nwsftgaction' },
|
slots: { customRender: 'nwsftgaction' },
|
||||||
width: '100px'
|
width: '100px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'aigc检测',
|
title: 'Aigc查重',
|
||||||
align: "center",
|
align: "center",
|
||||||
dataIndex: 'aigcsftg',
|
dataIndex: 'aigcsftg',
|
||||||
slots: { customRender: 'aigcsftgaction' },
|
slots: { customRender: 'aigcsftgaction' },
|
||||||
width: '100px'
|
width: '100px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '校内检测',
|
title: '校内查重',
|
||||||
align: "center",
|
align: "center",
|
||||||
dataIndex: 'xnsftg',
|
dataIndex: 'xnsftg',
|
||||||
slots: { customRender: 'xnsftgaction' },
|
slots: { customRender: 'xnsftgaction' },
|
||||||
|
@ -102,13 +102,13 @@ export const htcxcolumns: BasicColumn[] = [
|
||||||
width: '100px',
|
width: '100px',
|
||||||
customRender:({text}) =>{
|
customRender:({text}) =>{
|
||||||
if(text=='1'){
|
if(text=='1'){
|
||||||
text = '作业检测'
|
text = '作业查重'
|
||||||
}else if(text=='3'){
|
}else if(text=='3'){
|
||||||
text = '全校检测'
|
text = '全校检测'
|
||||||
}else if(text=='2'){
|
}else if(text=='2'){
|
||||||
text = 'aigc检测'
|
text = 'Aigc查重'
|
||||||
}else{
|
}else{
|
||||||
text = '外网检测'
|
text = '网络查重'
|
||||||
}
|
}
|
||||||
return text;
|
return text;
|
||||||
},
|
},
|
||||||
|
@ -177,26 +177,33 @@ export const cdxxcolumns: BasicColumn[] = [
|
||||||
width: '80px'
|
width: '80px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '外网检测',
|
title: '网络查重',
|
||||||
align: "center",
|
align: "center",
|
||||||
dataIndex: 'wwsftg',
|
dataIndex: 'wwsftg',
|
||||||
slots: { customRender: 'wwsftgaction' },
|
slots: { customRender: 'wwsftgaction' },
|
||||||
width: '100px'
|
width: '100px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: '内网检测',
|
title: '作业查重',
|
||||||
align: "center",
|
align: "center",
|
||||||
dataIndex: 'nwsftg',
|
dataIndex: 'nwsftg',
|
||||||
slots: { customRender: 'nwsftgaction' },
|
slots: { customRender: 'nwsftgaction' },
|
||||||
width: '100px'
|
width: '100px'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'aigc检测',
|
title: 'Aigc查重',
|
||||||
align: "center",
|
align: "center",
|
||||||
dataIndex: 'aigcsftg',
|
dataIndex: 'aigcsftg',
|
||||||
slots: { customRender: 'aigcsftgaction' },
|
slots: { customRender: 'aigcsftgaction' },
|
||||||
width: '100px'
|
width: '100px'
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: '校内查重',
|
||||||
|
align: "center",
|
||||||
|
dataIndex: 'xnsftg',
|
||||||
|
slots: { customRender: 'xnsftgaction' },
|
||||||
|
width: '100px'
|
||||||
|
},
|
||||||
{
|
{
|
||||||
title: '存档类型',
|
title: '存档类型',
|
||||||
align: "center",
|
align: "center",
|
||||||
|
|
|
@ -27,13 +27,28 @@
|
||||||
</a-form>
|
</a-form>
|
||||||
</div>
|
</div>
|
||||||
<!--引用表格-->
|
<!--引用表格-->
|
||||||
<BasicTable @register="registerTable">
|
<BasicTable @register="registerTable" :rowSelection="rowSelection" style="margin-top:-20px;">
|
||||||
<template #tableTitle>
|
<template #tableTitle>
|
||||||
<span style="font-size: 16px;font-weight:blod;color:red;">检测时间提醒: 非高峰期预计30分钟内返回检测结果,高峰期预计时间会更长,请您耐心等待!</span>
|
<a-dropdown v-if="selectedRowKeys.length > 0">
|
||||||
|
<template #overlay>
|
||||||
|
<a-menu>
|
||||||
|
<a-menu-item key="1" @click="batchHandleFabu">
|
||||||
|
<Icon icon="ant-design:delete-outlined"></Icon>
|
||||||
|
发布评分
|
||||||
|
</a-menu-item>
|
||||||
|
</a-menu>
|
||||||
|
</template>
|
||||||
|
<a-button type="primary">批量操作
|
||||||
|
<Icon icon="mdi:chevron-down"></Icon>
|
||||||
|
</a-button>
|
||||||
|
</a-dropdown>
|
||||||
|
<span style="font-size: 16px;font-weight:blod;color:b9b6b6;width:100%;">温馨提醒: 非高峰期预计30分钟内返回检测结果,高峰期预计时间会更长,请您耐心等待!</span>
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
<!--操作栏-->
|
<!--操作栏-->
|
||||||
<template #action="{ record }">
|
<template #action="{ record }">
|
||||||
<TableAction :actions="getTableAction(record)" :dropDownActions="getDropDownAction(record)"/>
|
<!-- <TableAction :actions="getTableAction(record)" :dropDownActions="getDropDownAction(record)"/> -->
|
||||||
|
<TableAction :actions="getTableAction(record)" />
|
||||||
</template>
|
</template>
|
||||||
<!--字段回显插槽-->
|
<!--字段回显插槽-->
|
||||||
<template #htmlSlot="{text}">
|
<template #htmlSlot="{text}">
|
||||||
|
@ -44,8 +59,8 @@
|
||||||
<template #wwsftgaction="{text,record}">
|
<template #wwsftgaction="{text,record}">
|
||||||
<span v-if="record.wwcc=='0'">-</span>
|
<span v-if="record.wwcc=='0'">-</span>
|
||||||
<span v-else>
|
<span v-else>
|
||||||
<span v-if="text=='通过'" style="color: green;padding: 5px 15px;" title="通过">{{record.wwxsl}}%</span>
|
<span v-if="text=='通过'" style="color: green;padding: 5px 15px;" title="通过" @click="handleYulan(record.wwpaperviewurl)">{{record.wwxsl}}%</span>
|
||||||
<span v-else-if="text=='未通过'" style="color: red;padding: 5px 15px;" title="未通过">{{record.wwxsl}}%</span>
|
<span v-else-if="text=='未通过'" style="color: red;padding: 5px 15px;" title="未通过" @click="handleYulan(record.wwpaperviewurl)">{{record.wwxsl}}%</span>
|
||||||
<span v-else>
|
<span v-else>
|
||||||
<span v-if="record.filePath">检测中</span>
|
<span v-if="record.filePath">检测中</span>
|
||||||
<span v-else>未提交</span>
|
<span v-else>未提交</span>
|
||||||
|
@ -55,8 +70,8 @@
|
||||||
<template #nwsftgaction="{text,record}">
|
<template #nwsftgaction="{text,record}">
|
||||||
<span v-if="record.nwcc=='0'">-</span>
|
<span v-if="record.nwcc=='0'">-</span>
|
||||||
<span v-else>
|
<span v-else>
|
||||||
<span v-if="text=='通过'" style="color: green;padding: 5px 15px;" title="通过">{{record.nwxsl}}%</span>
|
<span v-if="text=='通过'" style="color: green;padding: 5px 15px;" title="通过" @click="handleYulan(record.zypaperviewurl)">{{record.nwxsl}}%</span>
|
||||||
<span v-else-if="text=='未通过'" style="color: red;padding: 5px 15px;" title="未通过">{{record.nwxsl}}%</span>
|
<span v-else-if="text=='未通过'" style="color: red;padding: 5px 15px;" title="未通过" @click="handleYulan(record.zypaperviewurl)">{{record.nwxsl}}%</span>
|
||||||
<span v-else>
|
<span v-else>
|
||||||
<span v-if="record.filePath">检测中</span>
|
<span v-if="record.filePath">检测中</span>
|
||||||
<span v-else>未提交</span>
|
<span v-else>未提交</span>
|
||||||
|
@ -66,8 +81,8 @@
|
||||||
<template #aigcsftgaction="{text,record}">
|
<template #aigcsftgaction="{text,record}">
|
||||||
<span v-if="record.aigccc=='0'">-</span>
|
<span v-if="record.aigccc=='0'">-</span>
|
||||||
<span v-else>
|
<span v-else>
|
||||||
<span v-if="text=='通过'" style="color: green;padding: 5px 15px;" title="通过">{{record.aigcxsl}}%</span>
|
<span v-if="text=='通过'" style="color: green;padding: 5px 15px;" title="通过" @click="handleYulan(record.aigcpaperviewurl)">{{record.aigcxsl}}%</span>
|
||||||
<span v-else-if="text=='未通过'" style="color: red;padding: 5px 15px;" title="未通过">{{record.aigcxsl}}%</span>
|
<span v-else-if="text=='未通过'" style="color: red;padding: 5px 15px;" title="未通过" @click="handleYulan(record.aigcpaperviewurl)">{{record.aigcxsl}}%</span>
|
||||||
<span v-else>
|
<span v-else>
|
||||||
<span v-if="record.filePath">检测中</span>
|
<span v-if="record.filePath">检测中</span>
|
||||||
<span v-else>未提交</span>
|
<span v-else>未提交</span>
|
||||||
|
@ -77,8 +92,8 @@
|
||||||
<template #xnsftgaction="{text,record}">
|
<template #xnsftgaction="{text,record}">
|
||||||
<span v-if="record.aigccc=='0'">-</span>
|
<span v-if="record.aigccc=='0'">-</span>
|
||||||
<span v-else>
|
<span v-else>
|
||||||
<span v-if="text=='通过'" style="color: green;padding: 5px 15px;" title="通过">{{record.xnxsl}}%</span>
|
<span v-if="text=='通过'" style="color: green;padding: 5px 15px;" title="通过" @click="handleYulan(record.xxpaperviewurl)">{{record.xnxsl}}%</span>
|
||||||
<span v-else-if="text=='未通过'" style="color: red;padding: 5px 15px;" title="未通过">{{record.xnxsl}}%</span>
|
<span v-else-if="text=='未通过'" style="color: red;padding: 5px 15px;" title="未通过" @click="handleYulan(record.xxpaperviewurl)">{{record.xnxsl}}%</span>
|
||||||
<span v-else>
|
<span v-else>
|
||||||
<span v-if="record.filePath">检测中</span>
|
<span v-if="record.filePath">检测中</span>
|
||||||
<span v-else>未提交</span>
|
<span v-else>未提交</span>
|
||||||
|
@ -109,7 +124,7 @@
|
||||||
import { BasicTable, useTable, TableAction } from '/@/components/Table';
|
import { BasicTable, useTable, TableAction } from '/@/components/Table';
|
||||||
import { useListPage } from '/@/hooks/system/useListPage';
|
import { useListPage } from '/@/hooks/system/useListPage';
|
||||||
import { columns } from './ZyInfoStudent.data';
|
import { columns } from './ZyInfoStudent.data';
|
||||||
import { list, deleteOne, batchDelete, getImportUrl, getExportUrl } from './ZyInfoStudent.api';
|
import { list, deleteOne, batchDelete, getImportUrl, getExportUrl,batchFabu } from './ZyInfoStudent.api';
|
||||||
import { downloadFile } from '/@/utils/common/renderUtils';
|
import { downloadFile } from '/@/utils/common/renderUtils';
|
||||||
import ZyInfoStudentModal from './components/ZyInfoStudentModal.vue'
|
import ZyInfoStudentModal from './components/ZyInfoStudentModal.vue'
|
||||||
import JDictSelectTag from '/@/components/Form/src/jeecg/components/JDictSelectTag.vue';
|
import JDictSelectTag from '/@/components/Form/src/jeecg/components/JDictSelectTag.vue';
|
||||||
|
@ -246,10 +261,16 @@
|
||||||
await batchDelete({ ids: selectedRowKeys.value }, handleSuccess);
|
await batchDelete({ ids: selectedRowKeys.value }, handleSuccess);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
async function batchHandleFabu() {
|
||||||
|
await batchFabu({ ids: selectedRowKeys.value }, handleSuccess);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 成功回调
|
* 成功回调
|
||||||
*/
|
*/
|
||||||
function handleSuccess() {
|
function handleSuccess() {
|
||||||
|
selectedRowKeys.value = [];
|
||||||
reload();
|
reload();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -268,6 +289,14 @@
|
||||||
label: '设置样本',
|
label: '设置样本',
|
||||||
onClick: handleSzyb.bind(null, record),
|
onClick: handleSzyb.bind(null, record),
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
label: '作业',
|
||||||
|
onClick: handleDown.bind(null, record.filePath),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '预览',
|
||||||
|
onClick: yulanFile.bind(null, record),
|
||||||
|
},
|
||||||
];
|
];
|
||||||
return list;
|
return list;
|
||||||
}else{
|
}else{
|
||||||
|
@ -284,6 +313,14 @@
|
||||||
label: '发布评分',
|
label: '发布评分',
|
||||||
onClick: handleScoreFabu.bind(null, record),
|
onClick: handleScoreFabu.bind(null, record),
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
label: '作业',
|
||||||
|
onClick: handleDown.bind(null, record.filePath),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '预览',
|
||||||
|
onClick: yulanFile.bind(null, record),
|
||||||
|
},
|
||||||
];
|
];
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
@ -360,6 +397,7 @@ function handleYulan(text){
|
||||||
* 查询
|
* 查询
|
||||||
*/
|
*/
|
||||||
function searchQuery() {
|
function searchQuery() {
|
||||||
|
selectedRowKeys.value = [];
|
||||||
reload();
|
reload();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -375,6 +413,7 @@ function handleYulan(text){
|
||||||
}
|
}
|
||||||
|
|
||||||
function init(record){
|
function init(record){
|
||||||
|
selectedRowKeys.value = [];
|
||||||
queryParam.value = {};
|
queryParam.value = {};
|
||||||
queryParam.value.mainId = record.id;
|
queryParam.value.mainId = record.id;
|
||||||
mainId.value = record.id;
|
mainId.value = record.id;
|
||||||
|
|
|
@ -18,9 +18,9 @@
|
||||||
<a-form-item label="检测类型">
|
<a-form-item label="检测类型">
|
||||||
<a-select placeholder="请选择" v-model:value="queryParam.ccType">
|
<a-select placeholder="请选择" v-model:value="queryParam.ccType">
|
||||||
<a-select-option :value="undefined">请选择</a-select-option>
|
<a-select-option :value="undefined">请选择</a-select-option>
|
||||||
<a-select-option value="0">外网检测</a-select-option>
|
<a-select-option value="0">网络查重</a-select-option>
|
||||||
<a-select-option value="1">作业检测</a-select-option>
|
<a-select-option value="1">作业查重</a-select-option>
|
||||||
<a-select-option value="2">AIGC检测</a-select-option>
|
<a-select-option value="2">Aigc查重</a-select-option>
|
||||||
<a-select-option value="3">全校检测</a-select-option>
|
<a-select-option value="3">全校检测</a-select-option>
|
||||||
</a-select>
|
</a-select>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
<a-row>
|
<a-row>
|
||||||
<a-col :span="24">
|
<a-col :span="24">
|
||||||
<a-form-item label="评分" v-bind="validateInfos.score">
|
<a-form-item label="评分" v-bind="validateInfos.score">
|
||||||
<a-input v-model:value="formData.score" :disabled="disabled" ></a-input>
|
<a-input-number v-model:value="formData.score" :disabled="disabled" style="width:100%;" ></a-input-number>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
|
|
|
@ -76,7 +76,7 @@
|
||||||
const APagination = Pagination;
|
const APagination = Pagination;
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh,xqxn } = query;//获取传递参数
|
const { rwbh,xqxn,teano } = query;//获取传递参数
|
||||||
const labelCol = reactive({
|
const labelCol = reactive({
|
||||||
xs: { span: 24 },
|
xs: { span: 24 },
|
||||||
sm: { span: 7 },
|
sm: { span: 7 },
|
||||||
|
@ -164,7 +164,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
function loadData(){
|
function loadData(){
|
||||||
defHttp.get({ url: '/zyTlq/zyTlq/list', params: { pageSize: 3,pageNo:current.value, rwbh:rwbh,xqxn:xqxn,sffb:'1',column:'createTime',order:'desc' } }).then((res) => {
|
defHttp.get({ url: '/zyTlq/zyTlq/list', params: { pageSize: 3,pageNo:current.value, rwbh:rwbh,xqxn:xqxn,teano:teano,sffb:'1',column:'createTime',order:'desc' } }).then((res) => {
|
||||||
console.log(`🚀 ~ defHttp.get ~ res:`, res)
|
console.log(`🚀 ~ defHttp.get ~ res:`, res)
|
||||||
dataSource.value = res.records;
|
dataSource.value = res.records;
|
||||||
total.value = res.total;
|
total.value = res.total;
|
||||||
|
|
|
@ -87,7 +87,7 @@
|
||||||
const APagination = Pagination;
|
const APagination = Pagination;
|
||||||
const { currentRoute } = useRouter();
|
const { currentRoute } = useRouter();
|
||||||
const { query } = unref(currentRoute);
|
const { query } = unref(currentRoute);
|
||||||
const { rwbh,xqxn } = query;//获取传递参数
|
const { rwbh,xqxn,teano } = query;//获取传递参数
|
||||||
const labelCol = reactive({
|
const labelCol = reactive({
|
||||||
xs: { span: 24 },
|
xs: { span: 24 },
|
||||||
sm: { span: 7 },
|
sm: { span: 7 },
|
||||||
|
@ -185,7 +185,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
function loadData(){
|
function loadData(){
|
||||||
defHttp.get({ url: '/zyTlq/zyTlq/list', params: { pageSize: 3,pageNo:current.value, rwbh:rwbh,xqxn:xqxn,column:'createTime',order:'desc' } }).then((res) => {
|
defHttp.get({ url: '/zyTlq/zyTlq/list', params: { pageSize: 3,pageNo:current.value, rwbh:rwbh,xqxn:xqxn,teano:teano,column:'createTime',order:'desc' } }).then((res) => {
|
||||||
console.log(`🚀 ~ defHttp.get ~ res:`, res)
|
console.log(`🚀 ~ defHttp.get ~ res:`, res)
|
||||||
dataSource.value = res.records;
|
dataSource.value = res.records;
|
||||||
total.value = res.total;
|
total.value = res.total;
|
||||||
|
|
Loading…
Reference in New Issue