Commit b43868a1 by H.wb.wang.peixun

接口对接

parent 24ab46bd
# 页面标题
VUE_APP_TITLE = RuoYi-Vue-Plus后台管理系统
VUE_APP_TITLE = 封中数学
# 生产环境配置
ENV = 'production'
......
{
"name": "ruoyi-vue-plus",
"version": "4.5.0",
"description": "RuoYi-Vue-Plus后台管理系统",
"description": "封中数学",
"author": "LionLi",
"license": "MIT",
"scripts": {
......
......@@ -8,6 +8,14 @@ export function listQuestionBank(query) {
params: query
})
}
// 阶段列表
export function getPhaseList(query) {
return request({
url: '/system/dept/getPhaseList',
method: 'get',
params: query
})
}
// 查询题库主列表
export function questionType(query) {
return request({
......
......@@ -3,7 +3,7 @@ import request from '@/utils/request'
// 查询答题记录列表
export function listTestPaperRecord(query) {
return request({
url: '/school-paper/testPaperRecord/list',
url: '/school-paper/testPaperRecord/getPhaseList',
method: 'get',
params: query
})
......
......@@ -66,7 +66,7 @@ export default {
},
data() {
return {
uploadUrl: process.env.VUE_APP_BASE_API + "/system/oss/upload", // 上传的图片服务器地址
uploadUrl: process.env.VUE_APP_BASE_API + "school-paper/banner/uploadFile", // 上传的图片服务器地址
headers: {
Authorization: "Bearer " + getToken(),
},
......
......@@ -74,7 +74,7 @@ export default {
number: 0,
uploadList: [],
baseUrl: process.env.VUE_APP_BASE_API,
uploadFileUrl: process.env.VUE_APP_BASE_API + "/system/oss/upload", // 上传文件服务器地址
uploadFileUrl: process.env.VUE_APP_BASE_API + "school-paper/banner/uploadFile", // 上传文件服务器地址
headers: {
Authorization: "Bearer " + getToken(),
},
......@@ -91,19 +91,19 @@ export default {
if (Array.isArray(val)) {
list = val;
} else {
await listByIds(val).then(res => {
list = res.data.map(oss => {
oss = { name: oss.originalName, url: oss.url, ossId: oss.ossId };
return oss;
});
})
// await listByIds(val).then(res => {
// list = res.data.map(oss => {
// oss = { name: oss.originalName, url: oss.url};
// return oss;
// });
// })
}
// 然后将数组转为对象数组
this.fileList = list.map(item => {
item = { name: item.name, url: item.url, ossId: item.ossId };
item.uid = item.uid || new Date().getTime() + temp++;
return item;
});
// this.fileList = list.map(item => {
// item = { url: item.url};
// item.uid = item.uid || new Date().getTime() + temp++;
// return item;
// });
} else {
this.fileList = [];
return [];
......@@ -156,7 +156,7 @@ export default {
// 上传成功回调
handleUploadSuccess(res, file) {
if (res.code === 200) {
this.uploadList.push({ name: res.data.fileName, url: res.data.url, ossId: res.data.ossId });
this.uploadList.push({ name: res.data.originalFilename, url: res.data.url});
this.uploadedSuccessfully();
} else {
this.number--;
......@@ -169,7 +169,7 @@ export default {
// 删除文件
handleDelete(index) {
let ossId = this.fileList[index].ossId;
delOss(ossId);
// delOss(ossId);
this.fileList.splice(index, 1);
this.$emit("input", this.listToString(this.fileList));
},
......
......@@ -6,7 +6,7 @@
<top-nav id="topmenu-container" class="topmenu-container" v-if="topNav"/>
<div class="right-menu">
<template v-if="device!=='mobile'">
<!-- <template v-if="device!=='mobile'">
<search id="header-search" class="right-menu-item" />
<el-tooltip content="源码地址" effect="dark" placement="bottom">
......@@ -23,7 +23,7 @@
<size-select id="size-select" class="right-menu-item hover-effect" />
</el-tooltip>
</template>
</template> -->
<el-dropdown class="avatar-container right-menu-item hover-effect" trigger="click">
<div class="avatar-wrapper">
......
......@@ -4,6 +4,9 @@
<el-col :sm="24" :lg="12" style="padding-left: 20px">
<h2>封中数学</h2>
<p>
技术支持:上海印宏网络科技有限公司
</p>
<!-- <p>
RuoYi-Vue-Plus 是基于 RuoYi-Vue 针对 分布式集群 场景升级(不兼容原框架)
<br/>
* 前端开发框架 Vue、Element UI<br/>
......@@ -67,9 +70,9 @@
@click="goTarget('https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/wikis/pages?sort_id=4106467&doc_id=1469725')"
>更新日志</el-button
>
</p>
</p> -->
</el-col>
<!--
<el-col :sm="24" :lg="12" style="padding-left: 50px">
<el-row>
<el-col :span="12">
......@@ -102,7 +105,7 @@
</ul>
</el-col>
</el-row>
</el-col>
</el-col> -->
</el-row>
<el-divider />
</div>
......@@ -133,12 +136,14 @@ export default {
font-size: 17.5px;
border-left: 5px solid #eee;
}
hr {
margin-top: 20px;
margin-bottom: 20px;
border: 0;
border-top: 1px solid #eee;
}
.col-item {
margin-bottom: 20px;
}
......@@ -148,7 +153,11 @@ export default {
margin: 0;
}
font-family: "open sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
font-family: "open sans",
"Helvetica Neue",
Helvetica,
Arial,
sans-serif;
font-size: 13px;
color: #676a6c;
overflow-x: hidden;
......@@ -186,6 +195,5 @@ export default {
padding-inline-start: 40px;
}
}
}
</style>
}</style>
......@@ -65,19 +65,20 @@
<el-table v-loading="loading" :data="bannerList" @selection-change="handleSelectionChange">
<!-- <el-table-column type="selection" width="55" align="center" /> -->
<!-- <el-table-column label="主键id" align="center" prop="id" v-if="true"/> -->
<el-table-column label="轮播图标题" prop="bannerTitle" />
<el-table-column label="轮播图" prop="url">
<el-table-column label="轮播图标题" prop="bannerTitle" />
<el-table-column label="轮播图" prop="url">
<template slot-scope="scope">
<el-image style="width: 100px; height: 100px" :src="scope.url" :preview-src-list="scope.url">
</el-image>
<el-image style="width: 100px; height: 100px" :src="scope.row.url">
</el-image>
</template>
</el-table-column>
<el-table-column label="是否启用" prop="remark">
<el-table-column label="是否启用" prop="status">
<template slot-scope="scope">
<el-switch v-model="scope.remark" active-color="#13ce66" inactive-color="#ff4949">
</el-switch>
<el-switch v-model="scope.row.status" active-color="#13ce66" inactive-color="#ff4949"
@change="clickChange(scope.row)">
</el-switch>
</template>
</el-table-column>
<!-- <el-table-column label="状态:0正常,1删除" align="center" prop="status" /> -->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
......@@ -100,7 +101,7 @@
<el-input v-model="form.bannerTitle" placeholder="请输入标题" />
</el-form-item>
<el-form-item label="上传" prop="url">
<imageUpload :limit="1" v-model="form.url" ref="refUpload" placeholder="请上传图片"/>
<imageUpload :limit="1" v-model="form.url" ref="refUpload" placeholder="请上传图片" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer" style="text-align: center;">
......@@ -169,11 +170,32 @@ export default {
this.getList();
},
methods: {
clickChange(val) {
console.log(val, '----------------')
if (val.status == false) {
val.status = 1
} else {
val.status = 0
}
updateBanner(val).then(response => {
this.$modal.msgSuccess("修改成功");
this.getList();
})
},
/** 查询轮播图列表 */
getList() {
this.loading = true;
listBanner(this.queryParams).then(response => {
this.bannerList = response.rows;
console.log(this.bannerList.status, 'this.bannerList.status======')
this.bannerList.forEach((item) => {
if (item.status == "0") {
item.status = true
} else {
item.status = false
}
})
this.total = response.total;
this.loading = false;
});
......@@ -227,7 +249,14 @@ export default {
},
/** 提交按钮 */
submitForm() {
console.log(this.form,'this.form,')
// console.log(this.form, 'this.form,')
// this.bannerList.forEach((item) => {
// if (item.status == true) {
// item.status = 0
// } else {
// item.status = 1
// }
// })
this.form.url = this.form.url[0].url
this.$refs["form"].validate(valid => {
if (valid) {
......
......@@ -773,7 +773,7 @@ export default {
padding: 20px 40px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
// justify-content: space-between;
&-item {
padding: 15px 20px;
......@@ -781,6 +781,7 @@ export default {
border-radius: 5px;
background-color: #f1efef;
margin-bottom: 20px;
margin-right: 10px;
&-title {
font-size: 18px;
......@@ -814,9 +815,9 @@ export default {
}
}
&-item:last-child {
margin-bottom: 0px;
}
// &-item:last-child {
// margin-bottom: 0px;
// }
}
&-form {
......
......@@ -2,7 +2,7 @@
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px">
<el-form-item label="题库类别" prop="categoryId">
<el-select clearable v-model="queryParams.categoryId" placeholder="请选择题库类别" >
<el-select clearable v-model="queryParams.categoryId" placeholder="请选择题库类别">
<el-option v-for="item in category" :key="item.id" :label="item.typeValue" :value="item.id">
</el-option>
</el-select>
......@@ -20,13 +20,8 @@
</el-select>
</el-form-item>
<el-form-item label="阶段" prop="phaseId">
<el-select clearable v-model="queryParams.phaseId" placeholder="请选择阶段" >
<el-option v-for="item in [
{ label: '全部', value: '' },
{ label: '高一', value: '1' },
{ label: '高二', value: '2' },
{ label: '高三', value: '3' },
]" :key="item.value" :label="item.label" :value="item.value">
<el-select clearable v-model="queryParams.phaseId" placeholder="请选择阶段">
<el-option v-for="item in PhaseList" :key="item.deptId" :label="item.deptName" :value="item.deptId">
</el-option>
</el-select>
</el-form-item>
......@@ -41,7 +36,7 @@
</el-form-item>
<el-form-item label="强度分类:" prop="intensity">
<!-- 1基础,2中等,3提高 -->
<el-select clearable v-model="queryParams.intensity" placeholder="请选择强度" >
<el-select clearable v-model="queryParams.intensity" placeholder="请选择强度">
<el-option v-for="item in [
{ label: '全部', value: '' },
{ label: '基础', value: '1' },
......@@ -229,11 +224,7 @@
</el-form-item>
<el-form-item label="年级阶段:" prop="phaseId">
<el-select clearable v-model="form.phaseId" placeholder="请选择阶段" @change="handleQuery">
<el-option v-for="item in [
{ label: '高一', value: 1 },
{ label: '高二', value: 2 },
{ label: '高三', value: 3 },
]" :key="item.value" :label="item.label" :value="item.value">
<el-option v-for="item in PhaseList" :key="item.deptId" :label="item.deptName" :value="item.deptId">
</el-option>
</el-select>
</el-form-item>
......@@ -305,7 +296,8 @@
<editor v-model="form.resolveCourse" :min-height="192" :iconType="['image']" />
</el-form-item>
<el-form-item label="解答视频" prop="resolveVideo">
<fileUpload v-model="form.resolveVideo" :limit="1" :fileSize="1024" :fileType="['mp4', 'mp3']" />
<fileUpload v-model="form.resolveVideo" :limit="1" ref="refFileupload" :value="form.resolveVideo"
:fileSize="1024" :fileType="['mp4', 'mp3']" />
</el-form-item>
</template>
</el-col>
......@@ -330,7 +322,8 @@ import {
delQuestionBank,
addQuestionBank,
updateQuestionBank,
questionType
questionType,
getPhaseList
} from "@/api/school-paper/questionBank";
export default {
......@@ -338,6 +331,7 @@ export default {
data() {
return {
category: [], // 题库类别
PhaseList: [], // 阶段
// 按钮loading
buttonLoading: false,
// 遮罩层
......@@ -560,6 +554,9 @@ export default {
this.category = res.rows
// console.log(res,'this.questionBankList======')
})
getPhaseList().then((res) => {
this.PhaseList = res.data
})
},
// 取消按钮
cancel() {
......@@ -710,6 +707,16 @@ export default {
// 判断是否是填空题
if (self.form.species == 1) {
self.form.answer = self.form.rightAnswers
if (self.form.rightAnswersPic) {
let arr = self.form.rightAnswersPic.split(','),
brr = [];
arr.forEach((item) => {
brr.push({
url: item
})
})
self.form.rightAnswersPic = brr
}
}
// 判断是否是解答题
if (self.form.species == 3) {
......@@ -725,6 +732,17 @@ export default {
self.form.rightAnswers = index
}
})
if (self.form.resolveVideo) {
let arr = self.form.resolveVideo.split(','),
brr = [];
arr.forEach((item) => {
brr.push({
url: item
})
})
self.form.resolveVideo = brr
// self.$refs['refFileupload'].fileList = brr
}
// console.log(this.form.rightAnswers, "========newArrnewArrnewArr");
this.title = "修改题库主";
});
......@@ -790,6 +808,10 @@ export default {
self.$set(self.form.options, index, row)
})
}
if (this.form.type == 1) {
this.form.resolveVideo = this.$refs['refFileupload'].fileList
}
// console.log(this.form.resolveVideo,this.$refs['refFileupload'].fileList,'------------')
this.form.rightAnswers = arr[this.form.rightAnswers]
// 判断是否是填空题
if (self.form.species == 1) {
......@@ -820,12 +842,37 @@ export default {
if (self.form.type) {
self.isEditor("resolveCourse");
}
let params = new Object();
if (self.form.rightAnswersPic && self.form.rightAnswersPic.length) {
params = {
...self.form,
rightAnswersPic: self.form.rightAnswersPic.map(item => {
return item.url
}).join(',')
}
} else {
params = {
...self.form
}
}
if (params.resolveVideo && params.resolveVideo.length) {
params = {
...params,
resolveVideo: params.resolveVideo.map(item => {
return item.url
}).join(',')
}
} else {
params = {
...params
}
}
this.$refs["form"].validate((valid) => {
if (valid) {
console.log("规则通过");
this.buttonLoading = true;
if (this.form.id != null) {
updateQuestionBank(this.form)
updateQuestionBank(params)
.then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
......@@ -835,7 +882,7 @@ export default {
this.buttonLoading = false;
});
} else {
addQuestionBank(this.form)
addQuestionBank(params)
.then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
......
......@@ -66,9 +66,9 @@
@selection-change="handleSelectionChange">
<!-- <el-table-column type="selection" width="55" align="center" />
<el-table-column label="主键id" align="center" prop="id" v-if="true"/> -->
<el-table-column label="试卷名称" align="center" prop="userId" />
<el-table-column label="满分" align="center" prop="testPaperId" />
<el-table-column label="阶段" align="center" prop="status" />
<el-table-column label="试卷名称" prop="testName" />
<el-table-column label="满分" prop="totalPoints" />
<el-table-column label="阶段" prop="status" />
<!-- <el-table-column label="总得分" align="center" prop="totalPoints" />
<el-table-column label="备注" align="center" prop="remark" /> -->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
......@@ -89,9 +89,9 @@
@selection-change="handleSelectionChange">
<!-- <el-table-column type="selection" width="55" align="center" />
<el-table-column label="主键id" align="center" prop="id" v-if="true"/> -->
<el-table-column label="同学名称" align="center" prop="userId" />
<el-table-column label="班级" align="center" prop="testPaperId" />
<el-table-column label="得分" align="center" prop="status" />
<el-table-column label="同学名称" prop="userId" />
<el-table-column label="班级" prop="testPaperId" />
<el-table-column label="得分" prop="status" />
<!-- <el-table-column label="总得分" align="center" prop="totalPoints" />
<el-table-column label="备注" align="center" prop="remark" /> -->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment