修改bug

This commit is contained in:
yangjun 2024-05-21 17:53:16 +08:00
parent a7b4413a13
commit 7c5b7c0540
29 changed files with 199 additions and 138 deletions

View File

@ -3,7 +3,7 @@
<a-upload
:headers="headers"
:multiple="multiple"
:action="uploadFn"
:action="uploadUrl"
:fileList="fileList"
:disabled="disabled"
v-bind="bindProps"
@ -38,7 +38,6 @@
import { UploadTypeEnum } from './upload.data';
import { getFileAccessHttpUrl } from '/@/utils/common/compUtils';
import UploadItemActions from './components/UploadItemActions.vue';
import { defHttp } from '/@/utils/http/axios';
const { createMessage, createConfirm } = useMessage();
const { prefixCls } = useDesign('j-upload');
@ -373,21 +372,6 @@
return path.substring(path.lastIndexOf('/') + 1);
}
function uploadFn(file){
let form = new FormData();
form.append('biz', props.bizPath);
form.append('file', file);
console.log(`🚀 -------------------------------------🚀`);
console.log(`🚀 ~ uploadFn ~ uploadUrl:`, uploadUrl);
console.log(`🚀 -------------------------------------🚀`);
// * * 60
defHttp.post({ url: '/sys/common/upload', formData: form }, { timeout: 60 * 60 * 1000, joinPrefix: false, apiUrl: 'http://localhost:8090/jeecg-boot'});//http://localhost:8090/jeecg-boot/sys/common/upload
}
defineExpose({
addActionsListener,
});

View File

@ -18,7 +18,7 @@ const zuoyehistory: AppRouteModule = {
path: 'hismain',
name: 'zuoyeHistoryMain',
meta: {
title: '课程',
title: '课程介',
},
component: () => import('/@/views/site/renKeJiaoCheng/checkKecheng/history/kcHistoryDetail.vue'),
},

View File

@ -5,12 +5,12 @@
<a-form @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-row :gutter="24">
<a-col :lg="7">
<a-form-item label="问卷名称">
<a-input placeholder="请输入问卷名称" v-model:value="queryParam.title"></a-input>
<a-form-item label="测验名称">
<a-input placeholder="请输入测验名称" v-model:value="queryParam.title"></a-input>
</a-form-item>
</a-col>
<a-col :lg="7">
<a-form-item label="问卷类型">
<a-form-item label="测验类型">
<a-select placeholder="请选择问卷状态" ref="select" v-model:value="queryParam.qpublish">
<a-select-option value="">全部</a-select-option>
<a-select-option value="0">未发布</a-select-option>

View File

@ -5,12 +5,12 @@
<a-form @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-row :gutter="24">
<a-col :lg="7">
<a-form-item label="问卷名称">
<a-input placeholder="请输入问卷名称" v-model:value="queryParam.title"></a-input>
<a-form-item label="测验名称">
<a-input placeholder="请输入测验名称" v-model:value="queryParam.title"></a-input>
</a-form-item>
</a-col>
<a-col :lg="7">
<a-form-item label="问卷类型">
<a-form-item label="测验类型">
<a-select placeholder="请选择问卷状态" ref="select" v-model:value="queryParam.qpublish">
<a-select-option value="">全部</a-select-option>
<a-select-option value="0">未发布</a-select-option>

View File

@ -5,15 +5,15 @@
<a-form @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-row :gutter="24">
<a-col :lg="7">
<a-form-item label="问卷名称">
<a-input placeholder="请输入问卷名称" v-model:value="queryParam.title"></a-input>
<a-form-item label="测验名称">
<a-input placeholder="请输入测验名称" v-model:value="queryParam.title"></a-input>
</a-form-item>
</a-col>
<a-col :lg="7">
<a-form-item label="问卷类型">
<a-form-item label="测验类型">
<a-select placeholder="请选择问卷状态" ref="select" v-model:value="queryParam.qpublish">
<a-select-option value="">全部</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>
</a-form-item>
@ -62,13 +62,13 @@
</a-row>
</a-col>
<a-col :span="24" style="text-align:center;margin-top:20px;">
<a-button type="primary" @click="handleEdit(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">编辑</a-button>
<a-button type="primary" @click="handlePeizhi(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">配置</a-button>
<a-button type="primary" @click="handleFabu(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">发布</a-button>
<a-button type="primary" @click="handleDelete(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">删除</a-button>
<a-button type="primary" @click="handleDetail(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==1">详情</a-button>
<a-button type="primary" @click="handlePeizhiXq(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==1">配置</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">结果</a-button>
<a-button type="primary" @click="handleEdit(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">设置试卷</a-button>
<a-button type="primary" @click="handlePeizhi(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">编辑题目</a-button>
<a-button type="primary" @click="handleFabu(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">发布试卷</a-button>
<a-button type="primary" @click="handleDelete(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==0">删除试卷</a-button>
<a-button type="primary" @click="handleDetail(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==1">试卷详情</a-button>
<a-button type="primary" @click="handlePeizhiXq(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==1">编辑题目</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">测验结果</a-button>
</a-col>
<!-- <a-col :span="24" style="text-align:center;margin-top:20px;">-->
<!-- <a-button type="primary" @click="handleDj(item)" style="margin-left:5px;padding: 0px 8px;background:rgb(28, 132, 198);" v-if="item.qpublish==1">答卷</a-button>-->

View File

@ -5,16 +5,16 @@
<a-form @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-row :gutter="24">
<a-col :lg="7">
<a-form-item label="问卷名称">
<a-input placeholder="请输入问卷名称" v-model:value="queryParam.title"></a-input>
<a-form-item label="测验名称">
<a-input placeholder="请输入测验名称" v-model:value="queryParam.title"></a-input>
</a-form-item>
</a-col>
<a-col :lg="7">
<a-form-item label="问卷类型">
<a-form-item label="测验类型">
<a-select placeholder="请选择问卷状态" ref="select" v-model:value="queryParam.flag">
<a-select-option value="">全部</a-select-option>
<a-select-option value="-1">提交</a-select-option>
<a-select-option value="0">已提交</a-select-option>
<a-select-option value="-1">答卷</a-select-option>
<a-select-option value="0">待批卷</a-select-option>
<a-select-option value="1">已完成</a-select-option>
</a-select>
</a-form-item>

View File

@ -5,15 +5,15 @@
<a-form @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-row :gutter="24">
<a-col :lg="7">
<a-form-item label="问卷名称">
<a-input placeholder="请输入问卷名称" v-model:value="queryParam.title"></a-input>
<a-form-item label="测验名称">
<a-input placeholder="请输入测验名称" v-model:value="queryParam.title"></a-input>
</a-form-item>
</a-col>
<a-col :lg="7">
<a-form-item label="问卷类型">
<a-form-item label="测验类型">
<a-select placeholder="请选择问卷状态" ref="select" v-model:value="queryParam.qpublish">
<a-select-option value="">全部</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>
</a-form-item>

View File

@ -5,12 +5,12 @@
<a-form @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-row :gutter="24">
<a-col :lg="7">
<a-form-item label="问卷名称">
<a-input placeholder="请输入问卷名称" v-model:value="queryParam.title"></a-input>
<a-form-item label="测验名称">
<a-input placeholder="请输入测验名称" v-model:value="queryParam.title"></a-input>
</a-form-item>
</a-col>
<a-col :lg="7">
<a-form-item label="问卷类型">
<a-form-item label="测验类型">
<a-select placeholder="请选择问卷状态" ref="select" v-model:value="queryParam.qpublish">
<a-select-option value="">全部</a-select-option>
<a-select-option value="0">未发布</a-select-option>

View File

@ -5,12 +5,12 @@
<a-form @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-row :gutter="24">
<a-col :lg="7">
<a-form-item label="问卷名称">
<a-input placeholder="请输入问卷名称" v-model:value="queryParam.title"></a-input>
<a-form-item label="测验名称">
<a-input placeholder="请输入测验名称" v-model:value="queryParam.title"></a-input>
</a-form-item>
</a-col>
<a-col :lg="7">
<a-form-item label="问卷类型">
<a-form-item label="测验类型">
<a-select placeholder="请选择问卷状态" ref="select" v-model:value="queryParam.qpublish">
<a-select-option value="">全部</a-select-option>
<a-select-option value="0">未发布</a-select-option>

View File

@ -6,12 +6,12 @@
<a-row :gutter="24">
<a-col :lg="7">
<a-form-item label="问卷名称">
<a-input placeholder="请输入问卷名称" v-model:value="queryParam.title"></a-input>
<j-input placeholder="请输入问卷名称" v-model:value="queryParam.title"></j-input>
</a-form-item>
</a-col>
<a-col :lg="7">
<a-form-item label="问卷类型">
<a-select placeholder="请选择问卷状态" ref="select" v-model:value="queryParam.qpublish">
<a-select placeholder="请选择问卷类型" ref="select" v-model:value="queryParam.qpublish">
<a-select-option value="">全部</a-select-option>
<a-select-option value="0">未发布</a-select-option>
<a-select-option value="1">已发布</a-select-option>
@ -108,6 +108,7 @@
import WjxWjxxTmlbDjjgsDcModal from '/@/views/kc/wjxWjxx/components/WjxWjxxTmlbDjjgsDcModal.vue'
import XxhbbksListModal from '/@/views/kc/xxhbbks/XxhbbksListModal.vue';
import {useRouter} from "vue-router";
import { JInput } from '/@/components/Form';
//
const { currentRoute } = useRouter();

View File

@ -5,12 +5,12 @@
<a-form @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-row :gutter="24">
<a-col :lg="7">
<a-form-item label="问卷名称">
<a-input placeholder="请输入问卷名称" v-model:value="queryParam.title"></a-input>
<a-form-item label="测验名称">
<a-input placeholder="请输入测验名称" v-model:value="queryParam.title"></a-input>
</a-form-item>
</a-col>
<a-col :lg="7">
<a-form-item label="问卷类型">
<a-form-item label="测验类型">
<a-select placeholder="请选择问卷状态" ref="select" v-model:value="queryParam.flag">
<a-select-option value="">全部</a-select-option>
<a-select-option value="-1">待提交</a-select-option>

View File

@ -5,12 +5,12 @@
<a-form @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol" :wrapper-col="wrapperCol">
<a-row :gutter="24">
<a-col :lg="7">
<a-form-item label="问卷名称">
<a-input placeholder="请输入问卷名称" v-model:value="queryParam.title"></a-input>
<a-form-item label="测验名称">
<a-input placeholder="请输入测验名称" v-model:value="queryParam.title"></a-input>
</a-form-item>
</a-col>
<a-col :lg="7">
<a-form-item label="问卷类型">
<a-form-item label="测验类型">
<a-select placeholder="请选择问卷状态" ref="select" v-model:value="queryParam.qpublish">
<a-select-option value="">全部</a-select-option>
<a-select-option value="0">未发布</a-select-option>

View File

@ -10,7 +10,7 @@ export const columns: BasicColumn[] = [
dataIndex: 'qpublish_dictText'
},
{
title: '问卷名称',
title: '测验名称',
align: "center",
dataIndex: 'title'
},
@ -49,7 +49,7 @@ export const columns: BasicColumn[] = [
//查询数据
export const searchFormSchema: FormSchema[] = [
{
label: "问卷名称",
label: "测验名称",
field: 'title',
component: 'Input',
colProps: {span: 6},
@ -59,12 +59,12 @@ export const searchFormSchema: FormSchema[] = [
//表单数据
export const formSchema: FormSchema[] = [
{
label: '问卷名称',
label: '测验名称',
field: 'title',
component: 'Input',
dynamicRules: ({model,schema}) => {
return [
{ required: true, message: '请输入问卷名称!'},
{ required: true, message: '请输入测验名称!'},
];
},
},

View File

@ -3,23 +3,28 @@
<a-form ref="formRef" class="antd-modal-form" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-row>
<a-col :span="24">
<a-form-item label="问卷名称" v-bind="validateInfos.title">
<a-input v-model:value="formData.title" placeholder="请输入问卷名称" :disabled="disabled"></a-input>
<a-form-item label="课程名称">
<a-input v-model:value="formData.kcmc" disabled></a-input>
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item label="名称" v-bind="validateInfos.title">
<a-input v-model:value="formData.title" placeholder="请输入名称" :disabled="disabled"></a-input>
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item label="开始时间" v-bind="validateInfos.startTime">
<a-date-picker placeholder="请选择开始时间" v-model:value="formData.startTime" value-format="YYYY-MM-DD" style="width: 100%" :disabled="disabled"/>
<a-date-picker placeholder="请选择开始时间" v-model:value="formData.startTime" :disabled-date="disabledDate" value-format="YYYY-MM-DD" style="width: 100%" :disabled="disabled"/>
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item label="结束时间" v-bind="validateInfos.endTime">
<a-date-picker placeholder="请选择结束时间" v-model:value="formData.endTime" value-format="YYYY-MM-DD" style="width: 100%" :disabled="disabled"/>
<a-date-picker placeholder="请选择结束时间" v-model:value="formData.endTime" :disabled-date="disabledDate" value-format="YYYY-MM-DD" style="width: 100%" :disabled="disabled"/>
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item label="问卷描述" v-bind="validateInfos.content">
<a-textarea v-model:value="formData.content" rows="4" placeholder="请输入问卷描述" :disabled="disabled"/>
<a-form-item label="描述" v-bind="validateInfos.content">
<a-textarea v-model:value="formData.content" rows="4" placeholder="请输入描述" :disabled="disabled"/>
</a-form-item>
</a-col>
<a-col :span="24" hidden>
@ -27,11 +32,6 @@
<a-input v-model:value="formData.xqxn" disabled></a-input>
</a-form-item>
</a-col>
<a-col :span="24">
<a-form-item label="课程名称">
<a-input v-model:value="formData.kcmc" disabled></a-input>
</a-form-item>
</a-col>
<a-col :span="24" hidden>
<a-form-item label="选课人数">
<a-input v-model:value="formData.xkrs" disabled></a-input>
@ -52,6 +52,7 @@ import {ref, reactive, defineExpose, nextTick, defineProps, computed, onMounted,
import { saveOrUpdate } from '../WjxWjxx.api';
import { Form } from 'ant-design-vue';
import {useRouter} from "vue-router";
import dayjs, { Dayjs } from 'dayjs';
//
const { currentRoute } = useRouter();
@ -82,10 +83,13 @@ import {ref, reactive, defineExpose, nextTick, defineProps, computed, onMounted,
const confirmLoading = ref<boolean>(false);
//
const validatorRules = {
title: [{ required: true, message: '请输入问卷名称!'},],
title: [{ required: true, message: '请输入测验名称!'},],
startTime: [{ required: true, message: '请选择开始时间!'},],
endTime: [{ required: true, message: '请选择结束时间!'},]
};
const disabledDate = (current: Dayjs) => {
return current && current < dayjs().subtract(1,'days').endOf('day');
};
const { resetFields, validate, validateInfos } = useForm(formData, validatorRules, { immediate: true });
//

View File

@ -5,7 +5,7 @@ import { render } from '/@/utils/common/renderUtils';
//列表数据
export const columns: BasicColumn[] = [
{
title: '问卷名称',
title: '测验名称',
align: "center",
dataIndex: 'title',
width: 200
@ -29,7 +29,7 @@ export const columns: BasicColumn[] = [
width: 80
},
{
title: '总分',
title: '总分',
align: "center",
dataIndex: 'totalScore',
width: 80
@ -86,7 +86,7 @@ export const columns: BasicColumn[] = [
export const dccolumns: BasicColumn[] = [
{
title: '问卷名称',
title: '测验名称',
align: "center",
dataIndex: 'title',
width: 200

View File

@ -3,7 +3,7 @@
<a-card>
<div>
<a-row>
<a-col :span="3" style="font-size: 18px;font-weight: bold;">课程</a-col>
<a-col :span="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 :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">引用</a-button></a-col>
</a-row>
@ -178,7 +178,7 @@ const baseApiUrl = globSetting.domainUrl;
console.log(`🚀 ~ defHttp.get ~ cjwtSource:`, cjwtSource)
});
}
//
//
function getKcjsJxdg(){
defHttp.get({ url: '/zyJxdg/zyJxdg/getKcjsJxdg', params: { rwbh:rwbh} }).then((res) => {
if(res){

View File

@ -3,13 +3,14 @@
<a-row>
<a-col :span="24">
<a-menu
v-model:openKeys="openKeys"
v-model:selectedKeys="selectedKeys"
style="width: 98%;min-height: calc(100vh - 142px);margin: 10px 0;"
mode="inline"
>
<a-sub-menu key="sub1">
<template #title>教学内容</template>
<a-menu-item key="1" @click="getGzt('kcjs')">课程</a-menu-item>
<a-menu-item key="1" @click="getGzt('kcjs')">课程</a-menu-item>
<a-menu-item key="2" @click="getGzt('gonggao')">通知公告</a-menu-item>
<a-menu-item key="3" @click="gotoPageByName('jiaoXueDanYuanNeiRong')">教学单元内容</a-menu-item>
</a-sub-menu>
@ -62,7 +63,8 @@
import dqxqkc from '/@/views/site/renKeJiaoCheng/checkKecheng/dqxqkc.vue';
const maxClassName = ref<any>({});
const selectedKeys = ref<string[]>([]);
const selectedKeys = ref<string[]>(['1']);
const openKeys = ref<string[]>(['sub1']);
//
const { currentRoute } = useRouter();
const { query } = unref(currentRoute);

View File

@ -3,7 +3,7 @@
<a-card>
<div>
<a-row>
<a-col :span="3" style="font-size: 18px;font-weight: bold;">课程</a-col>
<a-col :span="3" style="font-size: 18px;font-weight: bold;">课程</a-col>
<a-col :span="20">{{jxdgInfo.kcjs}}</a-col>
</a-row>
</div>
@ -156,7 +156,7 @@ const baseApiUrl = globSetting.domainUrl;
console.log(`🚀 ~ defHttp.get ~ cjwtSource:`, cjwtSource)
});
}
//
//
function getKcjsJxdg(){
defHttp.get({ url: '/zyJxdg/zyJxdg/getKcjsJxdg', params: { rwbh:rwbh} }).then((res) => {
console.log(`🚀 1111111111111~ getKcjsJxdg ~ res:`, res)

View File

@ -9,7 +9,7 @@
>
<a-sub-menu key="sub1">
<template #title>教学内容</template>
<a-menu-item key="1" @click="getGzt('kcjs')">课程</a-menu-item>
<a-menu-item key="1" @click="getGzt('kcjs')">课程</a-menu-item>
<a-menu-item key="2" @click="getGzt('gonggao')">通知公告</a-menu-item>
<a-menu-item key="3" @click="getGzt('jxdynr')">教学单元内容</a-menu-item>
</a-sub-menu>
@ -56,7 +56,7 @@
function getGzt(zytype){
var param = {rwbh,xqxn,type};
var href = "";
if(zytype=='kcjs'){//
if(zytype=='kcjs'){//
href = "/history/hismain";
}else if(zytype=='gonggao'){//
href = "/history/hisTzgg";

View File

@ -8,8 +8,8 @@
mode="inline"
>
<a-sub-menu key="sub1">
<template #title>课程</template>
<a-menu-item key="1" @click="getGzt('kcjs')">课程</a-menu-item>
<template #title>课程</template>
<a-menu-item key="1" @click="getGzt('kcjs')">课程</a-menu-item>
<a-menu-item key="2" @click="getGzt('tzgg')">通知公告</a-menu-item>
<a-menu-item key="3" @click="getGzt('stuJiaoXueDanYuanNeiRong')">教学单元</a-menu-item>
</a-sub-menu>
@ -64,7 +64,7 @@
href = "/stuzy/stuDcwjWenjuan";
}else if(zytype=='kcjc'){//
href = "/stuzy/stuCeshiWenjuan";
}else if(zytype=='kcjs'){//
}else if(zytype=='kcjs'){//
href = "/stuzy/studentMain";
}else if(zytype=='tzgg'){//
href = "/stuzy/StudentGonggaoList";

View File

@ -3,7 +3,7 @@
<a-card>
<div>
<a-row>
<a-col :span="3" style="font-size: 18px;font-weight: bold;">课程</a-col>
<a-col :span="3" style="font-size: 18px;font-weight: bold;">课程</a-col>
<a-col :span="20">{{jxdgInfo.kcjs}}</a-col>
</a-row>
</div>
@ -174,7 +174,7 @@ function openJxrlPdf(record){
console.log(`🚀 ~ defHttp.get ~ cjwtSource:`, cjwtSource)
});
}
//
//
function getKcjsJxdg(){
defHttp.get({ url: '/zyJxdg/zyJxdg/getKcjsJxdg', params: { rwbh:rwbh} }).then((res) => {
console.log(`🚀 1111111111111~ getKcjsJxdg ~ res:`, res)

View File

@ -2,6 +2,8 @@
<div class="max">
<!-- <a-affix :offset-top="0" :target="() => doctomen"> -->
<div style="background: #fff">
<div style="font-size: 14px;color: #858588;margin-top: 10px;width:100%;padding: 10px 0 0 10px;">提示每一个小的章节都可以上传章节相关的教学资源</div>
<div class="topButton">
<a-space v-if="!isPreview">
<a-button type="primary" @click="save" :loading="saveLoading" title="保存"><Icon icon="ant-design:save-outlined"/>保存</a-button>
@ -16,6 +18,7 @@
</a-space>
</template>
</div>
</div>
<!-- </a-affix> -->
<stuIndex v-show="isPreview" :hiddenBtn="true"/>
<div v-show="!isPreview" class="maxDiv">
@ -475,7 +478,7 @@
}
.topButton {
padding-top: 10px;
padding: 10px;
}
.ainput {

View File

@ -6,7 +6,7 @@
<a-row :gutter="24">
<a-col :lg="8">
<a-form-item label="作业名称">
<a-input placeholder="请输入作业名称" v-model:value="queryParam.title"></a-input>
<j-input placeholder="请输入作业名称" v-model:value="queryParam.title"></j-input>
</a-form-item>
</a-col>
<!-- <a-col :lg="8">
@ -41,7 +41,13 @@
<div style="font-size: 18px;font-weight: bold;">{{item.title}}</div>
</a-col>
<a-col :span="24" class="zyCon">时间{{item.startTime}} - {{item.endTime}}</a-col>
<a-col :span="24" class="zyCon"><div style="float:left" v-if="item.score">{{item.score}}</div><div style="float:right;" @click="openXkrs(item)"><a>{{item.xkxs}}人选课</a></div></a-col>
<a-col :span="24" class="zyCon">
<div style="float:left" v-if="item.score">{{item.score}}</div>
<div style="float:right;">
&nbsp;
<!-- <a>{{item.xkxs}}人选课</a> -->
</div>
</a-col>
<a-col :span="24" style="text-align:center;margin-top:20px;">
<a-button type="primary" @click="handleDetail(item)" style="margin-left:5px;background:rgb(28, 132, 198);">详情</a-button>
<a-button type="primary" @click="handleShangchuan(item)" style="margin-left:5px;background:rgb(28, 132, 198);" v-if="!item.stuFilePath" >上传</a-button>
@ -74,6 +80,7 @@
import { defHttp } from '/@/utils/http/axios';
import { useMessage } from "/@/hooks/web/useMessage";
import { useRouter } from 'vue-router';
import JInput from '/@/components/Form/src/jeecg/components/JInput.vue';
import ZyInfoModal from './components/ZyInfoModal.vue';
import ZyInfoStudentListModal from '/@/views/zy/zyInfoStudent/ZyInfoStudentListModal.vue';
import ZyInfoStudentModal from '/@/views/zy/zyInfoStudent/components/ZyInfoStudentModal.vue';
@ -116,7 +123,7 @@
}else if(record.stuFilePath){
return "background: #18a689";
}else{
return "background: #a7a6a6";
return "background: #ff0000";
}
}
function callText(record){
@ -139,6 +146,19 @@
//
function handleShangchuan(record){
let timestamp = new Date().getTime();
let startTimestamp = Date.parse(record.startTime);
if(timestamp<startTimestamp){
createMessage.error('还未到答卷时间!');
return;
}
let endTimestamp = Date.parse(record.endTime);
if(timestamp>endTimestamp){
createMessage.error('答卷时间已过!');
return;
}
ZyInfoStudentModalPage.value.disableSubmit = false;
var param = {id:record.stuId,zyfj:record.filePath}
ZyInfoStudentModalPage.value.edit(param);

View File

@ -52,8 +52,9 @@
<a-col :span="24" style="text-align:center;margin-top:20px;">
<a-button type="primary" @click="handleEdit(item)" style="margin-left:5px;background:rgb(28, 132, 198);" v-if="item.zyStatus==0">编辑</a-button>
<a-button type="primary" @click="handleFabu(item)" style="margin-left:5px;background:rgb(28, 132, 198);" v-if="item.zyStatus==0">发布</a-button>
<a-button type="primary" @click="handleDetail(item)" style="margin-left:5px;background:rgb(28, 132, 198);">详情</a-button>
<a-button type="primary" @click="handleZyxx(item)" style="margin-left:5px;background:rgb(28, 132, 198);" v-if="item.zyStatus==1||item.zyStatus==2||item.zyStatus==3">作业</a-button>
<a-button type="primary" @click="handleDelete(item)" style="margin-left:5px;background:rgb(28, 132, 198);" v-if="item.zyStatus==0">删除</a-button>
<a-button type="primary" @click="handleDetail(item)" style="margin-left:5px;background:rgb(28, 132, 198);" v-if="item.zyStatus==1||item.zyStatus==2||item.zyStatus==3">作业详情</a-button>
<a-button type="primary" @click="handleZyxx(item)" style="margin-left:5px;background:rgb(28, 132, 198);" v-if="item.zyStatus==1||item.zyStatus==2||item.zyStatus==3">查看作业</a-button>
<!-- <a-button type="primary" @click="handleShangchuan(item)" style="margin-left:5px;background:rgb(28, 132, 198);" v-if="item.zyStatus==1||item.zyStatus==2||item.zyStatus==3">上传</a-button> -->
</a-col>
</a-row>
@ -219,6 +220,7 @@
* 查询
*/
function searchQuery() {
queryParam.value.pageNo = 1;
reload();
}
@ -227,6 +229,7 @@
*/
function searchReset() {
queryParam.value = {};
queryParam.value.pageNo = 1;
//
reload();
}

View File

@ -24,12 +24,12 @@
</a-col>
<a-col :span="12">
<a-form-item label="开始时间" v-bind="validateInfos.startTime">
<a-date-picker placeholder="请选择开始时间" v-model:value="formData.startTime" value-format="YYYY-MM-DD" style="width: 100%" :disabled="disabled"/>
<a-date-picker placeholder="请选择开始时间" v-model:value="formData.startTime" :disabled-date="disabledDate" value-format="YYYY-MM-DD" style="width: 100%" :disabled="disabled"/>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="结束时间" v-bind="validateInfos.endTime">
<a-date-picker placeholder="请选择结束时间" v-model:value="formData.endTime" value-format="YYYY-MM-DD" style="width: 100%" :disabled="disabled"/>
<a-date-picker placeholder="请选择结束时间" v-model:value="formData.endTime" :disabled-date="disabledDate" value-format="YYYY-MM-DD" style="width: 100%" :disabled="disabled"/>
</a-form-item>
</a-col>
<a-col :span="12">
@ -92,6 +92,7 @@
import { saveOrUpdate } from '../ZyInfo.api';
import { Form } from 'ant-design-vue';
import { useRouter } from 'vue-router';
import dayjs, { Dayjs } from 'dayjs';
import JUpload from '/@/components/Form/src/jeecg/components/JUpload/JUpload.vue';
//
@ -142,7 +143,9 @@
aigctgl: [{ required: false}, { pattern: /^-?\d+\.?\d*$/, message: '请输入数字!'},],
};
const { resetFields, validate, validateInfos } = useForm(formData, validatorRules, { immediate: false });
const disabledDate = (current: Dayjs) => {
return current && current < dayjs().subtract(1,'days').endOf('day');
};
//
const disabled = computed(()=>{
if(props.formBpm === true){

View File

@ -36,35 +36,38 @@ export const columns: BasicColumn[] = [
// dataIndex: 'filePath',
// slots: { customRender: 'fileZxSlot' },
// },
// {
// title: '外网相似率',
// align: "center",
// dataIndex: 'wwxsl'
// },
{
title: '外网相似率',
title: '外网检测是否通过',
align: "center",
dataIndex: 'wwxsl'
dataIndex: 'wwsftg',
slots: { customRender: 'wwsftgaction' },
},
// {
// title: '内网相似率',
// align: "center",
// dataIndex: 'nwxsl'
// },
{
title: '外网是否通过',
title: '内网检测是否通过',
align: "center",
dataIndex: 'wwsftg'
dataIndex: 'nwsftg',
slots: { customRender: 'nwsftgaction' },
},
// {
// title: 'aigc相似率',
// align: "center",
// dataIndex: 'aigcxsl'
// },
{
title: '内网相似率',
title: 'aigc检测是否通过',
align: "center",
dataIndex: 'nwxsl'
},
{
title: '内网是否通过',
align: "center",
dataIndex: 'nwsftg'
},
{
title: 'aigc相似率',
align: "center",
dataIndex: 'aigcxsl'
},
{
title: 'aigc是否通过',
align: "center",
dataIndex: 'aigcsftg'
dataIndex: 'aigcsftg',
slots: { customRender: 'aigcsftgaction' },
},
];

View File

@ -21,9 +21,13 @@
</a-form>
</div> -->
<!--引用表格-->
<BasicTable @register="registerTable">
<BasicTable @register="registerTable" style="margin-top: 20px;">
<!--插槽:table标题-->
<template #tableTitle>
<div style="padding: 10px;">
<span style="background: green;color:#fff;padding: 5px 15px;margin-left:20px;">通过</span>
<span style="background: red;color:#fff;padding: 5px 15px;margin-left:20px;">未通过</span>
</div>
</template>
<!--操作栏-->
<template #action="{ record }">
@ -34,6 +38,40 @@
<div v-html="text"></div>
</template>
<!--省市区字段回显插槽-->
<template #wwsftgaction="{text,record}">
<span v-if="record.wwcc=='0'">-</span>
<span v-else>
<span v-if="text=='通过'" style="background: green;color:#fff;padding: 5px 15px;" title="通过">{{record.wwxsl}}%</span>
<span v-else-if="text=='未通过'" style="background: red;color:#fff;padding: 5px 15px;" title="未通过">{{record.wwxsl}}%</span>
<span v-else>
<span v-if="record.filePath">检测中</span>
<span v-else>未提交</span>
</span>
</span>
</template>
<template #nwsftgaction="{text,record}">
<span v-if="record.nwcc=='0'">-</span>
<span v-else>
<span v-if="text=='通过'" style="background: green;color:#fff;padding: 5px 15px;" title="通过">{{record.nwxsl}}%</span>
<span v-else-if="text=='未通过'" style="background: red;color:#fff;padding: 5px 15px;" title="未通过">{{record.nwxsl}}%</span>
<span v-else>
<span v-if="record.filePath">检测中</span>
<span v-else>未提交</span>
</span>
</span>
</template>
<template #aigcsftgaction="{text,record}">
<span v-if="record.aigccc=='0'">-</span>
<span v-else>
<span v-if="text=='通过'" style="background: green;color:#fff;padding: 5px 15px;" title="通过">{{record.aigcxsl}}%</span>
<span v-else-if="text=='未通过'" style="background: red;color:#fff;padding: 5px 15px;" title="未通过">{{record.aigcxsl}}%</span>
<span v-else>
<span v-if="record.filePath">检测中</span>
<span v-else>未提交</span>
</span>
</span>
</template>
<!--<template #pcaSlot="{text}">
{{ getAreaTextByCode(text) }}
</template>-->
@ -85,7 +123,7 @@ const baseApiUrl = globSetting.domainUrl;
useSearchForm: false,
actionColumn: {
width: 220,
fixed: 'right',
// fixed: 'right',
},
beforeFetch: (params) => {
params.column = '',params.order = '';//

View File

@ -122,7 +122,7 @@
<style lang="less" scoped>
.antd-modal-form {
min-height: 500px !important;
min-height: 300px !important;
overflow-y: auto;
padding: 24px 24px 24px 24px;
}

View File

@ -10,7 +10,7 @@ export const columns: BasicColumn[] = [
dataIndex: 'xqxn'
},
{
title: '课程',
title: '课程介',
align: "center",
dataIndex: 'kcjs'
},