src/views/onlineEducation/classHourBatch/components/handleStudent.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/onlineEducation/classHourBatch/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/onlineEducation/courseManage/components/courseManageDialog.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/onlineEducation/courseManage/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/onlineEducation/groupExams/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/onlineEducation/questionBankManagement/questionManage/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/onlineEducation/systemManage/user/components/userDialog.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/views/onlineEducation/classHourBatch/components/handleStudent.vue
@@ -47,7 +47,17 @@ <el-table-column label="批次名称" prop="phaseName" align="center" /> <el-table-column label="学员名称" prop="studentName" align="center" /> <el-table-column label="手机号" prop="studentPhone" align="center" /> <el-table-column label="总进度" prop="totalProgress" align="center" /> <el-table-column label="总进度" prop="totalProgress" align="center" > <template #default="scope"> <el-progress v-if="scope.row.totalProgress>=0" :text-inside="true" :stroke-width="24" :percentage="scope.row.totalProgress" :status="scope.row.totalProgress <= 50 ? 'exception' : scope.row.totalProgress > 50 && scope.row.totalProgress <= 80 ? 'warning':'success'" /> </template> </el-table-column> <el-table-column label="开始学习时间" prop="startTime" align="center" /> <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="180"> <template #default="scope"> src/views/onlineEducation/classHourBatch/index.vue
@@ -207,9 +207,14 @@ }) } const toStuChoose = (val) => { val.pageNum = data.queryParams.pageNum; val.pageSize = data.queryParams.pageSize const v = JSON.stringify(val) const obj = { pageNum: data.queryParams.pageNum, pageSize: data.queryParams.pageSize, id: val.id } // val.pageNum = data.queryParams.pageNum; // val.pageSize = data.queryParams.pageSize const v = JSON.stringify(obj) router.push({ path: "/chooseStu", query: { val: v } }); } src/views/onlineEducation/courseManage/components/courseManageDialog.vue
@@ -151,6 +151,7 @@ const res = await getCourseById(value.id); if(res.code === 200){ state.form = res.data state.form.companyName = res.data.companyName ? res.data.companyName : '公开课' console.log("11",res.data) if(res.data.logo) { const obj = { src/views/onlineEducation/courseManage/index.vue
@@ -13,6 +13,16 @@ <el-form-item label="课程名称:" > <el-input v-model="data.queryParams.name" placeholder="请输入课程名称"></el-input> </el-form-item> <el-form-item label="审核状态:" > <el-select v-model="data.queryParams.state" placeholder="请选择审核状态" clearable> <el-option v-for="item in data.stateList" :key="item.id" :label="item.name" :value="item.id"> </el-option> </el-select> </el-form-item> <el-form-item > <el-button type="primary" @@ -56,7 +66,16 @@ <el-table-column label="提交单位" prop="companyName" align="center" /> <el-table-column label="审核状态" prop="state" align="center" > <template #default="scope"> <span>{{scope.row.state == 0?'待提交':scope.row.state == 1?'待审核':scope.row.state == 2?'审批通过':'审批不通过'}}</span> <el-tooltip v-if="scope.row.state == 3 && scope.row.message !=''" class="box-item" effect="dark" :content="scope.row.message" placement="top" > <span>审批不通过</span> </el-tooltip> <span v-else>{{scope.row.state == 0?'待提交':scope.row.state == 1?'待审核':scope.row.state == 2?'审批通过':'审批不通过'}}</span> </template> </el-table-column> <el-table-column label="创建时间" prop="createTime" align="center" width="180" /> @@ -140,10 +159,17 @@ /> <course-manage-dialog ref="dialogRef" @getList=getList></course-manage-dialog> <el-dialog v-model="data.appDialog" title="审批课程" width="30%" center align-center> <el-form> <el-form-item label="审批课程:"> <el-radio-group v-model="data.appoveForm.state" style="width: 100%"> <el-radio :label="2" size="large" border>通过</el-radio> <el-radio :label="3" size="large" border>驳回</el-radio> </el-radio-group> </el-form-item> <el-form-item label="审批意见:" v-if="data.appoveForm.state == 3"> <el-input v-model="data.appoveForm.message" type="textarea" maxlength="50" show-word-limit placeholder="请输入审批意见"></el-input> </el-form-item> </el-form> <template #footer> <span class="dialog-footer"> <el-button @click="data.appDialog = false">取消</el-button> @@ -173,7 +199,8 @@ queryParams: { pageNum: 1, pageSize: 10, name: '' name: '', state: null }, total: 0, dataList: [], @@ -181,8 +208,27 @@ appDialog: false, appoveForm: { id: null, state: null state: null, message: '' }, stateList: [ { id: 0, name: '待提交' }, { id: 1, name: '待审核' }, { id: 2, name: '审批通过' }, { id: 3, name: '审批不通过' }, ] }); const { queryParams, total, dataList } = toRefs(data); @@ -217,6 +263,7 @@ return { ...item, logo: item.logo ?[import.meta.env.VITE_APP_BASE_API + "/" + item.logo] : [], companyName: item.companyName ? item.companyName : '公开课' } }) console.log("ddd",data.dataList) @@ -236,7 +283,8 @@ data.queryParams = { pageNum: 1, pageSize: 10, name: '' name: '', state: null } getList() } @@ -285,7 +333,8 @@ const openApprove = (val) => { data.appoveForm = { id: null, state: null state: null, message: '' } data.appoveForm.id = val.id data.appDialog = true src/views/onlineEducation/groupExams/index.vue
@@ -212,9 +212,14 @@ }) } const toStuChoose = (val) => { val.pageNum = data.queryParams.pageNum; val.pageSize = data.queryParams.pageSize const v = JSON.stringify(val) const obj = { pageNum: data.queryParams.pageNum, pageSize: data.queryParams.pageSize, id: val.id } // val.pageNum = data.queryParams.pageNum; // val.pageSize = data.queryParams.pageSize const v = JSON.stringify(obj) router.push({ path: "/examStu", query: { val: v } }); } const viewQuestion = (val) => { src/views/onlineEducation/questionBankManagement/questionManage/index.vue
@@ -33,11 +33,14 @@ <el-select clearable v-model="data.queryParams.bankId" style="width: 200px" v-loadMoreNew:[reselect]="handleScroll" :popper-class="reselect.name" class="item-width" filterable remote reserve-keyword placeholder="请选择题库" remote-show-suffix :remote-method="getBankList" :loading="loading" style="width: 200px" > <el-option v-for="item in data.bankList" @@ -46,6 +49,22 @@ :value="item.id" /> </el-select> <!-- <el-select--> <!-- clearable--> <!-- v-model="data.queryParams.bankId"--> <!-- style="width: 200px"--> <!-- v-loadMoreNew:[reselect]="handleScroll"--> <!-- :popper-class="reselect.name"--> <!-- class="item-width"--> <!-- placeholder="请选择题库"--> <!-- >--> <!-- <el-option--> <!-- v-for="item in data.bankList"--> <!-- :key="item.id"--> <!-- :label="item.name"--> <!-- :value="item.id"--> <!-- />--> <!-- </el-select>--> </el-form-item> <el-form-item> <el-button type="primary" @click="handleQuery">查询</el-button> @@ -91,6 +110,7 @@ import Cookies from "js-cookie"; import {delQuestion, getQuestion} from "@/api/onlineEducation/question"; import {getQuestionBank} from "@/api/onlineEducation/questionBank"; import {getCompany} from "@/api/onlineEducation/company"; const { proxy } = getCurrentInstance(); @@ -141,7 +161,7 @@ data.isAdmin = false; } await getList() await loadMoreBankData() await getBankList("") }) onUnmounted(()=>{ @@ -161,27 +181,56 @@ loading.value = false } const handleScroll = () => { if(data.bankPageNum >= data.hasMoreItems) return data.bankPageNum++; loadMoreBankData() } const loadMoreBankData = async () => { console.log(' Bank'); // const handleScroll = () => { // // if(data.bankPageNum >= data.hasMoreItems) return // data.bankPageNum++; // loadMoreBankData() // // } // const loadMoreBankData = async () => { // console.log(' Bank'); // const queryParams = { // pageNum: data.bankPageNum, // pageSize: data.bankPageSize, // } // const res = await getQuestionBank(queryParams) // if (res.code == 200) { // data.hasMoreItems = res.data.totalPage // const state = res.data // data.bankList = data.bankList.concat(state.list) // }else{ // ElMessage.warning(res.message) // } // } const getBankList = async (val)=>{ if(val != ""){ loading.value = true; const queryParams = { pageNum: data.bankPageNum, pageSize: data.bankPageSize, name: val } const res = await getQuestionBank(queryParams) if (res.code == 200) { data.hasMoreItems = res.data.totalPage const state = res.data data.bankList = data.bankList.concat(state.list) loading.value = false; data.bankList = res.data.list }else{ ElMessage.warning(res.message) } }else { loading.value = true; const queryParams = { pageNum: 1, pageSize: 10 } const res = await getQuestionBank(queryParams) if (res.code == 200) { loading.value = false; data.bankList = res.data.list } else { ElMessage.warning(res.message) } } } const handleQuery = () => { src/views/onlineEducation/systemManage/user/components/userDialog.vue
@@ -50,6 +50,7 @@ </el-form-item> <el-form-item label="所属企业:" prop="companyName" v-if="state.title !== '修改密码' && showCompany"> <el-select clearable v-if="state.isAdmin" v-model="state.form.companyName" filterable @@ -102,7 +103,7 @@ style="width: 45%;" filterable remote searchKey="name" searchKey="username" :methods="getUser"> </scorllSelect> </el-form-item> @@ -263,9 +264,9 @@ } if(type !== 'view' && type !== 'pwd'){ if(state.isAdmin){ // await getCompanyList('open') } // if(state.isAdmin){ // await getCompanyList("") // } } state.title = type === 'add' ? '新增' : type ==='edit' ? '编辑' : type ==='pwd' ? '修改密码' : '查看' ; if(type === 'edit' || type === 'view') { @@ -310,6 +311,20 @@ loading.value = true; const queryParams = { name: val } const res = await getCompany(queryParams) if (res.code == 200) { loading.value = false; state.companyList = res.data.list } else { ElMessage.warning(res.message) } }else { loading.value = true; const queryParams = { pageNum: 1, pageSize: 10 } const res = await getCompany(queryParams) if (res.code == 200) { @@ -398,8 +413,11 @@ } scrollRef.value.getList(param,'change'); } const changeType = () => { const changeType = async (val) => { state.companyList = []; if(state.isAdmin && val !=0){ await getCompanyList("") } state.form.parentId = null; state.form.parentName = ''; state.form.companyId = null;