Commit f8825706 authored by qzhxx's avatar qzhxx

展板内容,学习项目,学习内容

parent 39169553
......@@ -20,12 +20,14 @@ export const menuList = [
]
},
{
subtitle:'学习内容及互动管理',
subtitle:'学习管理',
subMenu:[
{label:'学习项目管理', imgUrl:'',url:'/learnProject'},
{label:'学习内容管理', imgUrl:'',url:'/learnContent'},
{label:'互动管理', imgUrl:'',url:'/interactive'}
]
},
]
},
{
......@@ -44,6 +46,12 @@ export const menuList = [
subMenu:[
{label:'统计账号管理', imgUrl:''}
]
},
{
subtitle:'互动管理',
subMenu:[
{label:'互动管理', imgUrl:'',url:'/interactive'}
]
},
]
},
......
......@@ -341,7 +341,7 @@ export default {
)
.then(
res => {
if (res.data.code == 200 || res.data.code == 201) {
if (res.data.resultCode == 200 || res.data.resultCode == 201) {
_this.$message({
type: "success",
message: '新建成功!'
......@@ -383,7 +383,7 @@ export default {
)
.then(
res => {
if (res.data.code == 200 || res.data.code == 201) {
if (res.data.resultCode == 200 || res.data.resultCode == 201) {
_this.$message({
type: "success",
message: '新建成功!'
......
......@@ -334,7 +334,7 @@ export default {
)
.then(
res => {
if (res.data.code == 200 || res.data.code == 201) {
if (res.data.resultCode == 200 || res.data.resultCode == 201) {
_this.$message({
type: "success",
message: '新建成功!'
......@@ -376,7 +376,7 @@ export default {
)
.then(
res => {
if (res.data.code == 200 || res.data.code == 201) {
if (res.data.resultCode == 200 || res.data.resultCode == 201) {
_this.$message({
type: "success",
message: '新建成功!'
......
......@@ -334,7 +334,7 @@ export default {
)
.then(
res => {
if (res.data.code == 200 || res.data.code == 201) {
if (res.data.resultCode == 200 || res.data.resultCode == 201) {
_this.$message({
type: "success",
message: '新建成功!'
......@@ -376,7 +376,7 @@ export default {
)
.then(
res => {
if (res.data.code == 200 || res.data.code == 201) {
if (res.data.resultCode == 200 || res.data.resultCode == 201) {
_this.$message({
type: "success",
message: '新建成功!'
......
<template>
<!--新增弹框-->
<el-dialog
custom-class="party-dialog"
title="新建视频分类"
width="468px"
:visible.sync="dialogVisible"
:before-close="close"
>
<div class="dialog-content">
<el-form
:model="ruleForm"
:rules="rules"
ref="ruleForm"
label-width="140px"
class="party-form form-inline"
>
<el-form-item
label="页面说明:"
class="addTipMsg"
>可新建版权方信息。“*”为必填项。预设视频分类中没有合适的选项,可点击“新建视频分类”在弹框中新建分类</el-form-item>
<el-form-item label="版权方名称" prop="name">
<el-input v-model="ruleForm.name"></el-input>
</el-form-item>
<el-form-item label="版权方有效期" required>
<el-date-picker
value-format="yyyy-MM-dd"
v-model="value1"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</el-form-item>
<el-form-item class="addTip">
<span>若没有相应的视频分类,请点击</span>
<el-button type="text" @click="addVideoClass">新建视频分类</el-button>
</el-form-item>
<el-form-item class="selectH100" label="请选择预设视频分类">
<el-select
placeholder="请选择预设视频分类"
@focus="getAssetTypeData"
multiple
v-model="ruleForm.assetTypeIdList"
@change="getSelectDep"
>
<el-checkbox :style="selfstyle" v-model="checkedThing" @change="selectAllThing">全选</el-checkbox>
<el-option v-for="item in assetType" :label="item.name" :value="item.id" :key="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="备注">
<el-input type="textarea" v-model="ruleForm.remarks"></el-input>
</el-form-item>
</el-form>
</div>
<div slot="footer" class="dialog-footer btn-group">
<el-button size="mini" type="primary" @click="save('classForm')">确定</el-button>
<el-button size="mini" @click="close">取 消</el-button>
</div>
</el-dialog>
</template>
<script>
export default {
data() {
return {
ruleForm: {
assetTypeIdList: [],
name: "",
ownerType: "ASSET"
},
ruleForm: {
assetTypeIdList: [],
name: "",
ownerType: "ASSET"
},
assetType: [
{
value: "Beijing",
label: "北京"
},
{
value: "Shanghai",
label: "上海"
}
],
checkedThing: false,
selfstyle: {
textAlign: "right",
width: "100%",
paddingRight: "10px"
},
rules: {
name: [
{ required: true, message: "请输入版权方名称", trigger: "blur" }
// { min: 3, max: 5, message: "长度在 3 到 5 个字符", trigger: "blur" }
],
date1: [
{
type: "date",
required: true,
message: "请选择日期",
trigger: "change"
}
],
date2: [
{
type: "date",
required: true,
message: "请选择时间",
trigger: "change"
}
],
type: [
{
type: "array",
required: true,
message: "请至少选择一个活动性质",
trigger: "change"
}
],
resource: [
{ required: true, message: "请选择活动资源", trigger: "change" }
],
desc: [{ required: true, message: "请填写活动形式", trigger: "blur" }]
}
};
},
methods: {
// 弹窗保存
save(formName) {
this.$refs[formName].validate(valid => {
this.ruleForm.expireDateEnd = this.value1[1];
this.ruleForm.expireDateStart = this.value1[0];
if (valid) {
this.$https(
{
url: "assetType/save",
method: "post",
authType: this.backToken
},
this.classForm
)
.then(res => {
this.$message({ type: "success", message: "新增分类成功!" });
this.dialogVisible = false;
})
.catch(function(err) {
this.$message({
type: "fail",
message: "新增失败!" + err.response.data.msg
});
console.log(err);
});
} else {
console.log("error submit!!");
return false;
}
});
},
// 新增关闭
close() {
this.dialogVisible = false;
for (let key in this.classForm) {
this.classForm[key] = null;
}
this.$refs["classForm"].resetFields();
},
// 获取视频分类列表
getAssetTypeData() {
let vm = this;
vm.$https({
url: "assetType/getList",
method: "get",
authType: this.backToken
})
.then(res => {
let data = res.data.data;
this.assetType = data;
// this.value1[0]=data.expireDateEnd
//this.value1[1]=data.expireDateStart
})
.catch(function(err) {
console.log(err);
});
},
getSelectDep(assetTypeIdList) {
if (assetTypeIdList.length === this.assetType.length) {
this.checkedThing = true;
} else {
this.checkedThing = false;
}
},
selectAllThing() {
// debugger
this.ruleForm.assetTypeIdList = [];
if (this.checkedThing) {
this.assetType.map(item => {
this.ruleForm.assetTypeIdList.push(item.id);
});
} else {
this.ruleForm.assetTypeIdList = [];
}
}
}
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<el-select
placeholder="请选择视频版权方"
@focus="getAssetTypeData"
multiple
v-model="assetTypeIdList"
@change="getSelectDep"
>
<el-checkbox :style="selfstyle" v-model="checkedThing" @change="selectAllThing">全选</el-checkbox>
<el-option v-for="item in assetType" :label="item.name" :value="item.id" :key="item.id"></el-option>
</el-select>
</template>
<script>
export default {
data() {
return {
assetType: [],
assetTypeIdList: [],
checkedThing: false,
selfstyle: {
textAlign: "right",
width: "100%",
paddingRight: "10px"
}
};
},
watch: {
assetTypeIdList(val, newval) {
console.log(val)
this.$emit('videoCopyright', val)
}
},
methods: {
// this.$refs.mulDisplay.assetType // 使用时父组件直接获取此值即可
// 获取视频版权方
getAssetTypeData() {
let vm = this;
vm.$https({
url: "copyrightOwner/getList",
method: "get",
authType: this.backToken
},
// _this.$qs.stringify(_this.permisform)
{copyrightOwnerType:'ASSET'}
)
.then(res => {
let data = res.data.data;
this.assetType = data;
// this.value1[0]=data.expireDateEnd
//this.value1[1]=data.expireDateStart
})
.catch(function(err) {
console.log(err);
});
},
getSelectDep(assetTypeIdList) {
if (assetTypeIdList.length === this.assetType.length) {
this.checkedThing = true;
} else {
this.checkedThing = false;
}
},
selectAllThing() {
// debugger
this.assetTypeIdList = [];
if (this.checkedThing) {
this.assetType.map(item => {
this.assetTypeIdList.push(item.id);
});
} else {
this.assetTypeIdList = [];
}
}
}
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<el-select
placeholder="请选择预设视频分类"
@focus="getAssetTypeData"
multiple
v-model="assetTypeIdList"
@change="getSelectDep"
>
<el-checkbox :style="selfstyle" v-model="checkedThing" @change="selectAllThing">全选</el-checkbox>
<el-option v-for="item in assetType" :label="item.name" :value="item.id" :key="item.id"></el-option>
</el-select>
</template>
<script>
export default {
data() {
return {
assetType: [],
assetTypeIdList: [],
checkedThing: false,
selfstyle: {
textAlign: "right",
width: "100%",
paddingRight: "10px"
}
};
},
methods: {
// this.$refs.mulDisplay.assetType // 使用时父组件直接获取此值即可
// 获取视频分类列表
getAssetTypeData() {
let vm = this;
vm.$https({
url: "assetType/getList",
method: "get",
authType: this.backToken
})
.then(res => {
let data = res.data.data;
this.assetType = data;
// this.value1[0]=data.expireDateEnd
//this.value1[1]=data.expireDateStart
})
.catch(function(err) {
console.log(err);
});
},
getSelectDep(assetTypeIdList) {
if (assetTypeIdList.length === this.assetType.length) {
this.checkedThing = true;
} else {
this.checkedThing = false;
}
},
selectAllThing() {
// debugger
this.assetTypeIdList = [];
if (this.checkedThing) {
this.assetType.map(item => {
this.assetTypeIdList.push(item.id);
});
} else {
this.assetTypeIdList = [];
}
}
}
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<el-upload
class="upload-demo"
ref="upload"
action="http://192.168.110.67/mall/file/audio/upload"
:on-preview="handlePreview"
:on-remove="handleRemove"
:file-list="fileList"
:on-success="handleAvatarSuccess"
:auto-upload="false">
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
<el-button style="margin-left: 10px;" size="small" type="success" @click="submitUpload">上传到服务器</el-button>
<div slot="tip" class="el-upload__tip">(支持上传多个视频及视频文件夹,视频语言支持汉语、蒙语、藏语、维吾尔语、英语,视频命名规定:视频名称+语言)</div>
</el-upload>
</template>
<script>
export default {
data() {
return {
fileList: []
};
},
methods: {
handleAvatarSuccess(res, file) {
console.log(res)
console.log(res.url)
this.$emit('audioList', res.urlList)
},
submitUpload() {
this.$refs.upload.submit();
},
handleRemove(file, fileList) {
console.log(file, fileList);
},
handlePreview(file) {
console.log(file);
}
}
}
</script>
<style>
</style>
\ No newline at end of file
<template>
<el-upload
class="upload-demo"
ref="upload"
action="http://192.168.110.67/mall/file/datum/upload"
:on-preview="handlePreview"
:on-remove="handleRemove"
:file-list="fileList"
:on-success="handleAvatarSuccess"
:auto-upload="false">
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
<el-button style="margin-left: 10px;" size="small" type="success" @click="submitUpload">上传到服务器</el-button>
<div slot="tip" class="el-upload__tip">(支持上传多个视频及视频文件夹,视频语言支持汉语、蒙语、藏语、维吾尔语、英语,视频命名规定:视频名称+语言)</div>
</el-upload>
</template>
<script>
export default {
data() {
return {
fileList: []
};
},
methods: {
handleAvatarSuccess(res, file) {
console.log(res)
console.log(res.url)
this.$emit('datumList', res.urlList)
},
submitUpload() {
this.$refs.upload.submit();
},
handleRemove(file, fileList) {
console.log(file, fileList);
},
handlePreview(file) {
console.log(file);
}
}
}
</script>
<style>
</style>
\ No newline at end of file
<template>
<el-upload
class="upload-demo"
ref="upload"
action="http://192.168.110.67/mall/file/video/upload"
:on-preview="handlePreview"
:on-remove="handleRemove"
:file-list="fileList"
:on-success="handleAvatarSuccess"
:auto-upload="false">
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
<el-button style="margin-left: 10px;" size="small" type="success" @click="submitUpload">上传到服务器</el-button>
<div slot="tip" class="el-upload__tip">(支持上传多个视频及视频文件夹,视频语言支持汉语、蒙语、藏语、维吾尔语、英语,视频命名规定:视频名称+语言)</div>
</el-upload>
</template>
<script>
export default {
data() {
return {
fileList: []
};
},
methods: {
handleAvatarSuccess(res, file) {
console.log(res)
console.log(res.url)
this.$emit('videoList', res.urlList)
},
submitUpload() {
this.$refs.upload.submit();
},
handleRemove(file, fileList) {
console.log(file, fileList);
},
handlePreview(file) {
console.log(file);
}
}
}
</script>
<style>
</style>
\ No newline at end of file
<template>
<div>
<el-upload
action="http://192.168.110.67/mall/file/image/upload"
list-type="picture-card"
:on-preview="handlePictureCardPreview"
:on-remove="handleRemove"
:on-success="handleAvatarSuccess"
:headers="headers"
>
<i class="el-icon-plus"></i>
</el-upload>
<el-dialog :visible.sync="dialogVisible">
<img width="100%" :src="dialogImageUrl" alt />
</el-dialog>
</div>
</template>
<script>
export default {
data() {
return {
dialogImageUrl: "",
dialogVisible: false
};
},
computed: {
headers() {
// return { 'token': this.backToken }
}
},
methods: {
// 图片上传成功的返回值
handleAvatarSuccess(res, file) {
console.log(res)
console.log(res.url)
this.$emit('imgUrl', res.url)
// this.imageUrl = URL.createObjectURL(file.raw);
},
handleRemove(file, fileList) {
console.log(file, fileList);
},
handlePictureCardPreview(file) {
this.dialogImageUrl = file.url;
this.dialogVisible = true;
}
}
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<div>
<el-upload
action="http://192.168.110.67/mall/file/image/upload"
list-type="picture-card"
:on-preview="handlePictureCardPreview"
:on-remove="handleRemove"
:on-success="handleAvatarSuccess"
:headers="headers"
>
<i class="el-icon-plus"></i>
</el-upload>
<el-dialog :visible.sync="dialogVisible">
<img width="100%" :src="dialogImageUrl" alt />
</el-dialog>
</div>
</template>
<script>
export default {
data() {
return {
dialogImageUrl: "",
dialogVisible: false
};
},
computed: {
headers() {
// return { 'token': this.backToken }
}
},
methods: {
// 图片上传成功的返回值
handleAvatarSuccess(res, file) {
console.log(res)
console.log(res.url)
this.$emit('qrcodeUrl', res.url)
// this.imageUrl = URL.createObjectURL(file.raw);
},
handleRemove(file, fileList) {
console.log(file, fileList);
},
handlePictureCardPreview(file) {
this.dialogImageUrl = file.url;
this.dialogVisible = true;
}
}
};
</script>
<style>
</style>
\ No newline at end of file
<template>
<div>
<!--
<video :src="videoSrc" :poster="videoImg" :autoplay="playStatus" height="421" width="700" :muted="muteStatus">
your browser does not support the video tag
</video>
<button @click="playClick" :class="{hide: isPlay}">点击播放</button> -->
<!--class="video-js vjs-default-skin vjs-big-play-centered" -->
<video :preload="preload"
:poster="videoImg" :height="height" :width="width" align="center" :controls="controls" :autoplay="autoplay">
<source :src="videoSrc" type="video/mp4">
</video>
</div>
</template>
<script>
export default {
name: 'Video',
data () {
return {
videoSrc: 'https://video.pearvideo.com/mp4/short/20200209/cont-1650197-14888002-hd.mp4',
videoImg: 'https://sm.ms/image/ueRFCZfk2xTONGb',
playStatus: '',
muteStatus: '',
isMute: true,
isPlay: false,
width: '820', // 设置视频播放器的显示宽度(以像素为单位)
height: '500', // 设置视频播放器的显示高度(以像素为单位)
preload: 'auto', // 建议浏览器是否应在<video>加载元素后立即开始下载视频数据。
controls: true, // 确定播放器是否具有用户可以与之交互的控件。没有控件,启动视频播放的唯一方法是使用autoplay属性或通过Player API。
autoplay: ''
}
}
// 自动播放属性,muted:静音播放
// autoplay: 'muted',
}
</script>
<style scoped >
</style>
......@@ -6,7 +6,7 @@
<el-input
size="mini"
placeholder="请输入版权方名称"
v-model="form.name"
v-model="form.nameOrCode"
@keyup.enter.native="Search"
clearable
></el-input>
......@@ -174,17 +174,10 @@ export default {
name: ""
},
editform: {
menuName: "",
menuUrl: "",
parentId: "",
sort: "",
id: ""
},
classForm: {
menuName: "",
menuUrl: "",
parentId: "",
sort: ""
},
typeList: [],
rules: {
......@@ -246,7 +239,7 @@ export default {
let vm = this;
vm.$https(
{
url: "assetType/getPageList",
url: "exhibitionBoardCat/getPageList",
method: "post",
authType: this.backToken
},
......@@ -280,7 +273,7 @@ export default {
let searchObj = {
_index: 1,
_size: _this.page.pageSize,
name: _this.form.name
nameOrCode: _this.form.nameOrCode
};
this.getTableData(searchObj);
},
......@@ -318,13 +311,13 @@ export default {
if (valid) {
_this
.$https(
{ url: "assetType/save", method: "post", authType: this.backToken },
// _this.$qs.stringify(_this.classForm)
_this.classForm
{ url: "exhibitionBoardCat/save", method: "post", authType: this.backToken },
_this.$qs.stringify(_this.classForm)
// _this.classForm
)
.then(
res => {
if (res.data.code == 200 || res.data.code == 201) {
if (res.data.resultCode == 200 || res.data.resultCode == 201) {
_this.$message({
type: "success",
message: '新建成功!'
......@@ -360,16 +353,16 @@ export default {
if (valid) {
_this
.$https(
{ url: "assetType/update", method: "put", authType: this.backToken },
{ url: "exhibitionBoardCat/update", method: "put", authType: this.backToken },
_this.$qs.stringify(_this.classForm)
// _this.classForm
)
.then(
res => {
if (res.data.code == 200 || res.data.code == 201) {
if (res.data.resultCode == 200 || res.data.resultCode == 201) {
_this.$message({
type: "success",
message: '新建成功!'
message: '修改成功!'
});
//跳回用户列表
_this.onSearch();
......@@ -431,7 +424,7 @@ export default {
let vm = this;
vm.$https(
{
url: "assetType/get/" + id,
url: "exhibitionBoardCat/get/" + id,
method: "get",
authType: this.backToken
},
......@@ -461,7 +454,7 @@ export default {
.then(() => {
_this.$https({
method: 'delete',
url: 'assetType/delete/'+ row.id,
url: 'exhibitionBoardCat/delete/'+ row.id,
authType: this.backToken
}).then((res) => {
this.$message({type: 'success', message: '删除成功!'});
......
<template>
<el-form :model="dealForm" >
<el-form-item
prop="uploadFile"
label="上传文件">
<el-upload
ref="fileUpload"
:auto-upload="false"
:limit="3"
:on-change="fileOnChange"
:before-upload="fileBeforeUpload"
:before-remove="fileBeforeRemove"
size="mini"
class="upload-file"
action="/"
multiple>
<el-button
class="upload-button"
size="small"
type="primary">请选择文件</el-button>
<!--<div
slot="tip"
class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>-->
</el-upload>
</el-form-item>
<el-form-item
prop="uploadImg"
label="上传图片">
<!--:on-remove="imgRemoveList"-->
<el-upload
ref="imgUpload"
:auto-upload="false"
:limit="3"
:on-change="imgOnChange"
:before-upload="imgBeforeUpload"
:before-remove="imgBeforeRemove"
size="mini"
class="upload-img"
action="/"
accept=".jpg,.jpeg,.png"
list-type="picture-card"
multiple>
<!--<i class="el-icon-plus"/>-->
<i class="icon-tupian"/>
<!--<div class="el-upload__text">将文件拖到此处</div>-->
<div
slot="tip"
class="el-upload__tip">只能上传jpg/png文件,大小不超过20M</div>
</el-upload>
</el-form-item>
<el-button @click="saveDealEvent">提交</el-button>
</el-form>
</template>
<script>
export default {
data() {
let validateLicense = (rule, value, callback) => {
if (!(this.imgSizeIsSatisfy.length === 0)) {
callback(new Error('上传图片大小不能超过 5MB!'));
} else {
callback();
}
};
let fileValidate = (rule, value, callback) => {
if (!(this.fileSizeIsSatisfy.length === 0)) {
callback(new Error('上传图片大小不能超过 10MB!'));
} else {
callback();
}
};
return {
dealForm: {
solutions: '111',
dealStatus: 'ww',
dealFunction: 'qq'
},
dealFormRules: {
uploadImg: [{ validator: validateLicense }],
uploadFile: [{ validator: fileValidate }]
},
uploadFile: [],
uploadImg: [],
imgSizeIsSatisfy: [],
fileSizeIsSatisfy: []
};
},
methods: {
imgBeforeUpload(file) {
this.uploadImg.push(file);
return false;
// 返回false,停止上传
},
fileBeforeUpload(file) {
this.uploadFile.push(file);
return false;
},
saveDealEvent() {
// this.$refs.dealForm.validate(valid => {
// if (valid) {
this.$confirm('确认提交吗?', '提示', {})
.then(() => {
// 创建一个formData对象
const formData = new FormData();
// 把表单双向绑定的数据添加到formData对象里面
Object.keys(this.dealForm).forEach(key => {
formData.append(key, this.dealForm[key]);
});
console.log(formData)
// 添加eventId到formData对象里面
// formData.append('eventId', this.evtId);
// 手动上传文件列表
this.$refs.fileUpload.submit();
this.$refs.imgUpload.submit();
// 把要上传的文件添加到formData对象里面
for (let i = 0; i < this.uploadFile.length; i++) {
formData.append('fileFiles', this.uploadFile[i]);
}
for (let i = 0; i < this.uploadImg.length; i++) {
formData.append('imgFiles', this.uploadImg[i]);
}
console.log(formData,'formData')
let vm = this;
vm.$https(
{
url: "asset/dddddgetPageList",
method: "post",
authType: this.backToken
},
// vm.$qs.stringify(this.dealForm)
vm.$qs.stringify(formData)
// param
)
.then(res => {
})
.catch(function(err) {
console.log(err);
});
// // 提交表单
// saveDealEvent(formData).then(res => {
// // 提交后置空
// this.dealForm = {};
// this.uploadFile = [];
// this.uploadImg = [];
// this.$refs['dealForm'].resetFields();
// this.$message({
// message: '提交成功',
// type: 'success'
// });
// });
})
.catch(e => {
console.log(e);
});
// }
// });
},
imgOnChange(file, fileList) {
console.log(file,'eeeee')
this.dealForm.imgFile =file
this.imgSizeIsSatisfy.push(file.name);
this.$refs.dealForm.validateField('uploadImg');
const isLt2M = file.size / 1024 / 1024 < 5;
// if (!isLt2M) {
// this.imgSizeIsSatisfy.push(file.name);
// this.$refs.dealForm.validateField('uploadImg');
// }
},
imgBeforeRemove(file) {
if (!(this.imgSizeIsSatisfy.indexOf(file.name) === -1)) {
let temp = this.imgSizeIsSatisfy.indexOf(file.name);
this.imgSizeIsSatisfy.splice(temp, 1);
this.$refs.dealForm.validateField('uploadImg');
}
},
fileOnChange(file, fileList) {
const isLt2M = file.size / 1024 / 1024 < 10;
if (!isLt2M) {
this.fileSizeIsSatisfy.push(file.name);
this.$refs.dealForm.validateField('uploadFile');
}
},
fileBeforeRemove(file) {
if (!(this.fileSizeIsSatisfy.indexOf(file.name) === -1)) {
let temp = this.fileSizeIsSatisfy.indexOf(file.name);
this.fileSizeIsSatisfy.splice(temp, 1);
this.$refs.dealForm.validateField('uploadFile');
}
}
}
}
</script>
<style>
</style>
\ No newline at end of file
This diff is collapsed.
......@@ -6,7 +6,7 @@
<el-input
size="mini"
placeholder="请输入版权方名称"
v-model="form.name"
v-model="form.nameOrCode"
@keyup.enter.native="Search"
clearable
></el-input>
......@@ -39,19 +39,24 @@
<div class="party-table">
<el-table
border
style="width: 100%;height:100%" height="100%"
style="width: 100%;height:100%"
height="100%"
ref="multipleTable"
:data="tableData"
@selection-change="handleSelectionChange"
>
<el-table-column type="index" width="120" label="序号"></el-table-column>
<el-table-column show-overflow-tooltip label="版权方名称" prop="menuName"></el-table-column>
<el-table-column show-overflow-tooltip label="视频分类" prop="menuUrl"></el-table-column>
<el-table-column label="创建时间" prop="sort"></el-table-column>
<el-table-column label="版权方有效期" prop="sort"></el-table-column>
<el-table-column show-overflow-tooltip label="备注" prop="menuName"></el-table-column>
<el-table-column show-overflow-tooltip label="展板名称" prop="name"></el-table-column>
<el-table-column show-overflow-tooltip label="展板版权方" prop="boardCopyrightOwnerName"></el-table-column>
<el-table-column label="展板分类" prop="createTime"></el-table-column>
<el-table-column show-overflow-tooltip label="展板简介" prop="remarks"></el-table-column>
<el-table-column label="关联视频名称" prop="createTime"></el-table-column>
<el-table-column label="视频版权方" prop="expireDateEnd"></el-table-column>
<el-table-column label="创建时间" prop="createTime"></el-table-column>
<el-table-column label="审核状态" prop="auditStatus"></el-table-column>
<el-table-column label="是否上架" prop="createTime"></el-table-column>
<el-table-column label="操作" header-align="center" align="center">
<template slot-scope="scope" width="220">
<template slot-scope="scope" width="360">
<el-button-group>
<el-button
title="编辑"
......@@ -59,7 +64,10 @@
type="text"
@click="openEdit(scope.row)"
>编辑&nbsp;&nbsp;</el-button>
<el-button title="删除" type="text" size="mini" @click="handleDelete(scope.row)">删除</el-button>
<el-button type="text" size="mini" @click="displayInfo(scope.row)">展板详情</el-button>
<el-button type="text" size="mini" @click="handleDelete(scope.row)">下架&nbsp;&nbsp;</el-button>
<el-button type="text" size="mini" @click="handleDelete(scope.row)">上架&nbsp;&nbsp;</el-button>
<el-button type="text" size="mini" @click="handleDelete(scope.row)">删除</el-button>
</el-button-group>
</template>
</el-table-column>
......@@ -99,7 +107,7 @@ export default {
FormVisible1: false,
formLabelWidth: "100px",
form: {
name: ""
nameOrCode: ""
},
editform: {
menuName: "",
......@@ -140,7 +148,7 @@ export default {
computed: {},
mounted() {
this.onSearch();
this.getPermis();
// this.getPermis();
},
components: {},
methods: {
......@@ -174,14 +182,15 @@ export default {
let vm = this;
vm.$https(
{
url: "menu/getMenuList",
method: "get",
url: "exhibitionBoard/getPageList",
method: "post",
authType: this.backToken
},
param
vm.$qs.stringify(param)
// param
)
.then(res => {
let data = res.data;
let data = res.data.data;
vm.page.pageSize = data.size;
vm.page.total = data.total;
vm.tableData = data.records;
......@@ -202,9 +211,10 @@ export default {
_this.getTableData(param);
},
// 重置
Reset(){
this.form = {}
this.Search()
Reset() {
// this.$refs["form"].resetFields();
this.form = {};
this.Search();
},
Search() {
let _this = this;
......@@ -212,7 +222,7 @@ export default {
let searchObj = {
_index: 1,
_size: _this.page.pageSize,
name: _this.form.name
nameOrCode: _this.form.nameOrCode
};
this.getTableData(searchObj);
},
......@@ -230,11 +240,15 @@ export default {
}
return searchObj;
},
// 添加
// 添加
addPermis() {
this.$router.push({ path: "displayContentAdd", query: { type: "add" } });
// $('.el-dialog__title').html('新建');
// this.FormVisible1 = true;
this.$router.push({ path: "displayContentAdd", query: { type: "add" } }); // $('.el-dialog__title').html('新建'); // this.FormVisible1 = true;
},
displayInfo(row) {
this.$router.push({
path: "displayContentDetails",
query: { id: row.id, }
});
},
// 添加权限
permisSave() {
......@@ -294,7 +308,7 @@ export default {
openEdit(row) {
this.$router.push({
path: "displayContentUpdate",
query: { type: "Update" }
query: { type: "Update", id: row.id }
});
// alert('编辑')
// $('.el-dialog__title').html('编辑');
......@@ -315,17 +329,24 @@ export default {
type: "warning"
})
.then(() => {
// _this.$https({
// method: 'delete',
// url: 'menu/delete?menuId='+ row.id,
// authType: this.backToken
// }).then((res) => {
// this.$message({type: 'success', message: '删除成功!'});
// _this.Search();
// }, (error) => {
// this.$message({type: 'fail', message: "删除失败!" + error.response.data});
// }
// )
_this
.$https({
method: "delete",
url: "exhibitionBoard/delete/" + row.id,
authType: this.backToken
})
.then(
res => {
this.$message({ type: "success", message: "删除成功!" });
_this.Search();
},
error => {
this.$message({
type: "fail",
message: "删除失败!" + error.response.data
});
}
);
})
.catch(() => {});
},
......@@ -385,57 +406,6 @@ export default {
handleSelectionChange(selection) {
let _this = this;
_this.selection = selection;
},
getMultipleSelect() {
let _this = this;
let arr = [];
let str = "";
if (_this.selection) {
_this.selection.forEach(function(e) {
arr.push(e.id);
});
str = arr.join(",");
} else {
str = "";
}
return str;
},
// 批量删除
multipleDelete() {
let _this = this;
let str = _this.getMultipleSelect();
if (str) {
this.$confirm("此操作将删除选中菜单, 是否继续?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
_this
.$https({
url: "menu/batchDel?menuIds=" + str,
method: "DELETE",
authType: this.backToken
})
.then(
res => {
if (res.data.status == 201 || res.data.status == 200) {
this.$message({
type: "success",
message: "删除成功!"
});
}
//重新查询数据
_this.onSearch();
},
error => {}
);
});
} else {
this.$message({
type: "info",
message: "请至少选择一个选项!"
});
}
}
}
};
......@@ -444,6 +414,6 @@ export default {
<style lang="less">
// @import "../../../../style/common";
// @import "../../style/list";
@import '../../../../style/table.less';
@import '../../../../style/pagination.less';
@import "../../../../style/table.less";
@import "../../../../style/pagination.less";
</style>
This diff is collapsed.
This diff is collapsed.
......@@ -150,7 +150,7 @@ export default {
let vm = this;
vm.$https({
method: "get",
url: "menu/getRoleMenu?roleId=" + sessionStorage.getItem("roleId"),
url: "menu/getRoleMenu?roleId=" + sessionStorage.gelearningContent("roleId"),
authType: this.backToken
}).then(
res => {
......@@ -175,7 +175,7 @@ export default {
let vm = this;
vm.$https(
{
url: "copyrightOwner/getPageList",
url: "learningContent/getPageList",
method: "post",
authType: this.backToken
},
......@@ -300,7 +300,7 @@ export default {
// 编辑弹框
openEdit(row) {
this.$router.push({
path: "videoCopyrightUpdate",
path: "learnContentUpdate",
query: { type: "Update" ,id :row.id}
});
// alert('编辑')
......@@ -324,7 +324,7 @@ export default {
.then(() => {
_this.$https({
method: 'delete',
url: 'copyrightOwner/delete/'+ row.id,
url: 'learningContent/delete/'+ row.id,
authType: this.backToken
}).then((res) => {
this.$message({type: 'success', message: '删除成功!'});
......
......@@ -29,12 +29,12 @@
</el-form>
<div class="page-tip">
<span class="page-tip-title">页面说明:</span>
<span class="page-tips">可通过创建时间、视频分类名称模糊搜索快速筛选视频分类信息,可对视频分类信息进行修改、删除。可新建视频分类</span>
<span class="page-tips">展示系统所有的学习项目,可按照时间及相关名称进行快速信息搜索</span>
</div>
</div>
<div class="table-content">
<div class="btn-group">
<el-button type="primary" @click="addPermis()">新建视频分类</el-button>
<el-button type="primary" @click="addPermis()">新建学习项目</el-button>
</div>
<div class="party-table">
<el-table
......@@ -181,10 +181,9 @@ export default {
id: ""
},
classForm: {
menuName: "",
menuUrl: "",
parentId: "",
sort: ""
id:"",
name:"",
remarks:""
},
typeList: [],
rules: {
......@@ -246,7 +245,7 @@ export default {
let vm = this;
vm.$https(
{
url: "assetType/getPageList",
url: "learningProject/getPageList",
method: "post",
authType: this.backToken
},
......@@ -318,13 +317,13 @@ export default {
if (valid) {
_this
.$https(
{ url: "assetType/save", method: "post", authType: this.backToken },
// _this.$qs.stringify(_this.classForm)
_this.classForm
{ url: "learningProject/save", method: "post", authType: this.backToken },
_this.$qs.stringify(_this.classForm)
// _this.classForm
)
.then(
res => {
if (res.data.code == 200 || res.data.code == 201) {
if (res.data.resultCode == 200 || res.data.resultCode == 201) {
_this.$message({
type: "success",
message: '新建成功!'
......@@ -360,16 +359,16 @@ export default {
if (valid) {
_this
.$https(
{ url: "assetType/update", method: "put", authType: this.backToken },
{ url: "learningProject/update", method: "put", authType: this.backToken },
_this.$qs.stringify(_this.classForm)
// _this.classForm
)
.then(
res => {
if (res.data.code == 200 || res.data.code == 201) {
if (res.data.resultCode == 200 || res.data.resultCode == 201) {
_this.$message({
type: "success",
message: '新建成功!'
message: '修改成功!'
});
//跳回用户列表
_this.onSearch();
......@@ -431,7 +430,7 @@ export default {
let vm = this;
vm.$https(
{
url: "assetType/get/" + id,
url: "learningProject/get/" + id,
method: "get",
authType: this.backToken
},
......@@ -440,7 +439,10 @@ export default {
)
.then(res => {
let data = res.data.data;
this.classForm = data
// this.classForm = data
this.classForm.id =data.id
this.classForm.name =data.name
this.classForm.remarks = data.remarks
})
.catch(function(err) {
console.log(err);
......@@ -461,7 +463,7 @@ export default {
.then(() => {
_this.$https({
method: 'delete',
url: 'assetType/delete/'+ row.id,
url: 'learningProject/delete/'+ row.id,
authType: this.backToken
}).then((res) => {
this.$message({type: 'success', message: '删除成功!'});
......
......@@ -181,10 +181,9 @@ export default {
id: ""
},
classForm: {
menuName: "",
menuUrl: "",
parentId: "",
sort: ""
id:"",
name:"",
remarks:""
},
typeList: [],
rules: {
......@@ -319,12 +318,12 @@ export default {
_this
.$https(
{ url: "assetType/save", method: "post", authType: this.backToken },
// _this.$qs.stringify(_this.classForm)
_this.classForm
_this.$qs.stringify(_this.classForm)
// _this.classForm
)
.then(
res => {
if (res.data.code == 200 || res.data.code == 201) {
if (res.data.resultCode == 200 || res.data.resultCode == 201) {
_this.$message({
type: "success",
message: '新建成功!'
......@@ -366,10 +365,10 @@ export default {
)
.then(
res => {
if (res.data.code == 200 || res.data.code == 201) {
if (res.data.resultCode == 200 || res.data.resultCode == 201) {
_this.$message({
type: "success",
message: '新建成功!'
message: '修改成功!'
});
//跳回用户列表
_this.onSearch();
......@@ -440,7 +439,10 @@ export default {
)
.then(res => {
let data = res.data.data;
this.classForm = data
// this.classForm = data
this.classForm.id =data.id
this.classForm.name =data.name
this.classForm.remarks = data.remarks
})
.catch(function(err) {
console.log(err);
......
This diff is collapsed.
This diff is collapsed.
......@@ -39,7 +39,8 @@
<div class="party-table">
<el-table
border
style="width: 100%;height:100%" height="100%"
style="width: 100%;height:100%"
height="100%"
ref="multipleTable"
:data="tableData"
@selection-change="handleSelectionChange"
......@@ -53,18 +54,16 @@
<template slot-scope="scope" width="220">
<el-button-group>
<el-button
title="删除"
type="text"
size="mini"
@click="handleDelete(scope.row)"
>删除&nbsp;&nbsp;</el-button>
<el-button
title="编辑"
size="mini"
type="text"
@click="openEdit(scope.row)"
>编辑&nbsp;&nbsp;</el-button>
<el-button title="编辑" size="mini" type="text" @click="openDetails(scope.row)">查看详情</el-button>
<el-button size="mini" type="text" @click="openDetails(scope.row)">查看详情</el-button>
</el-button-group>
</template>
</el-table-column>
......@@ -145,16 +144,25 @@
</div>
</el-dialog>
<!--查看详情-->
<el-dialog custom-class="party-dialog" title="查看详情" width="468px" :visible.sync="FormVisible" :before-close="close" >
<el-dialog
custom-class="party-dialog"
title="查看详情"
width="468px"
:visible.sync="FormVisible"
:before-close="close"
>
<div class="dialog-content">
<el-form :model="editform" disabled class="party-form" ref="editform" label-width="80px" label-position="right" :rules="rules">
<el-form
:model="editform"
disabled
class="party-form"
ref="editform"
label-width="80px"
label-position="right"
:rules="rules"
>
<el-form-item label="审核层级:" :label-width="formLabelWidth">
<el-input
size="small"
v-model="editform.sort"
auto-complete="off"
clearable
></el-input>
<el-input size="small" v-model="editform.sort" auto-complete="off" clearable></el-input>
</el-form-item>
<el-form-item label="审核时间:" :label-width="formLabelWidth">
<el-input
......@@ -178,11 +186,11 @@
<el-input type="textarea" v-model="editform.desc"></el-input>
</el-form-item>
</el-form>
</div>
<div slot="footer" class="dialog-footer btn-group">
<el-button size="mini" type="primary" @click="submitForm('editform')">确定</el-button>
<el-button size="mini" @click="close">取 消</el-button>
</div>
</div>
</el-dialog>
</div>
</template>
......@@ -310,9 +318,9 @@ export default {
_this.getTableData(param);
},
// 重置
Reset(){
this.form = {}
this.Search()
Reset() {
this.form = {};
this.Search();
},
Search() {
let _this = this;
......@@ -402,7 +410,7 @@ export default {
openEdit(row) {
this.$router.push({
path: "videoContentUpdate",
query: { type: "Update" }
query: { type: "Update" ,id:row.id }
});
// alert('编辑')
// $('.el-dialog__title').html('编辑');
......@@ -419,23 +427,22 @@ export default {
let _this = this;
_this.FormVisible = true;
// 获取详情
this.getAssetInfo(row.id)
this.getAssetInfo(row.id);
},
// 获取视频分类详情
getAssetInfo(id){
getAssetInfo(id) {
let vm = this;
vm.$https(
{
url: "asset/get/" + id,
method: "get",
authType: this.backToken
},
}
// param
)
.then(res => {
let data = res.data.data;
this.editform = data
this.editform = data;
})
.catch(function(err) {
console.log(err);
......@@ -450,17 +457,24 @@ export default {
type: "warning"
})
.then(() => {
_this.$https({
method: 'delete',
url: 'asset/delete/'+ row.id,
_this
.$https({
method: "delete",
url: "asset/delete/" + row.id,
authType: this.backToken
}).then((res) => {
this.$message({type: 'success', message: '删除成功!'});
})
.then(
res => {
this.$message({ type: "success", message: "删除成功!" });
_this.Search();
}, (error) => {
this.$message({type: 'fail', message: "删除失败!" + error.response.data});
},
error => {
this.$message({
type: "fail",
message: "删除失败!" + error.response.data
});
}
)
);
})
.catch(() => {});
},
......@@ -580,7 +594,7 @@ export default {
// @import "../../../../style/common";
// @import "../../style/list";
@import '../../../../style/table.less';
@import '../../../../style/pagination.less';
@import "../../../../style/table.less";
@import "../../../../style/pagination.less";
@import "../../../../style/dialog.less";
</style>
This diff is collapsed.
......@@ -6,7 +6,7 @@
<el-input
size="mini"
placeholder="请输入版权方名称"
v-model="form.name"
v-model="form.nameOrCode"
@keyup.enter.native="Search"
clearable
></el-input>
......@@ -99,7 +99,8 @@ export default {
FormVisible1: false,
formLabelWidth: "100px",
form: {
name: ""
nameOrCode: "",
ownerType:'ASSET'
},
editform: {
menuName: "",
......@@ -205,7 +206,7 @@ export default {
// 重置
Reset(){
// this.$refs["form"].resetFields();
this.form = {}
this.form = { ownerType:'ASSET'}
this.Search()
},
Search() {
......@@ -214,7 +215,8 @@ export default {
let searchObj = {
_index: 1,
_size: _this.page.pageSize,
name: _this.form.name
nameOrCode: _this.form.nameOrCode,
ownerType:'ASSET'
};
this.getTableData(searchObj);
},
......
......@@ -287,7 +287,7 @@
height:100px;
overflow: auto;
}
// 详情页
// 内容、审核详情页
.info {
height: 100%;
width: 100%;
......@@ -307,6 +307,16 @@
width: 640px;
margin: 0 auto;
background: #fff;
.pageTips{
height: 72px;
padding:16px;
background: #F7F5F2;
border-radius: 8px;
margin:10px 0;
}
.el-collapse-item__header.is-active {
border-bottom-color: #eeeeee;
}
}
.info-container {
width: 100%;
......@@ -319,6 +329,10 @@
border-top: 2px solid #eee;
padding: 20px;
text-align: center;
.el-button{
width: 160px;
height: 40px;
}
}
}
// 适用于统计详情样式
......
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