Commit 094290d5 authored by 胡冲's avatar 胡冲

修改学习学习内容展板资料不联动

parent ab1bb0b7
...@@ -13,6 +13,7 @@ module.exports = { ...@@ -13,6 +13,7 @@ module.exports = {
proxyTable: { proxyTable: {
'/mall': { '/mall': {
target: "http://111.203.232.175:8088/mall", target: "http://111.203.232.175:8088/mall",
// target: "http://wdzc.digitalfod.com/wdzcfwpt/mall",// 阿里云
// target: "http://192.168.0.106:8088/mall", // target: "http://192.168.0.106:8088/mall",
// target: "http://192.168.204.66:8088/mall", // target: "http://192.168.204.66:8088/mall",
changeOrigin: true, changeOrigin: true,
...@@ -34,7 +35,7 @@ module.exports = { ...@@ -34,7 +35,7 @@ module.exports = {
// Various Dev Server settings // Various Dev Server settings
// host: 'localhost', // can be overwritten by process.env.HOST // host: 'localhost', // can be overwritten by process.env.HOST
host: '0.0.0.0', // can be overwritten by process.env.HOST host: '0.0.0.0', // can be overwritten by process.env.HOST
port: 3000, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined port: 3001, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
autoOpenBrowser: false, autoOpenBrowser: false,
errorOverlay: true, errorOverlay: true,
notifyOnErrors: true, notifyOnErrors: true,
...@@ -63,7 +64,7 @@ module.exports = { ...@@ -63,7 +64,7 @@ module.exports = {
// Paths // Paths
assetsRoot: path.resolve(__dirname, '../plat'), assetsRoot: path.resolve(__dirname, '../plat'),
assetsSubDirectory: 'static', assetsSubDirectory: 'static',
assetsPublicPath: './', assetsPublicPath: '/wdzcfwpt/',
/** /**
* Source Maps * Source Maps
......
/** /**
* Created by supervisor on 2018/2/28. * Created by supervisor on 2018/2/28.
*/ */
let baseUrl=""; let baseUrl="/mall/";
// let baseUrl="http://wdzc.digitalfod.com/wdzcfwpt/mall/"; // 阿里云
let routerMode='history'; let routerMode='history';
let backToken = "back"; let backToken = "back";
......
...@@ -121,7 +121,7 @@ export default { ...@@ -121,7 +121,7 @@ export default {
this.$message({ type: "success", message: "新建视频版权方成功!" }); this.$message({ type: "success", message: "新建视频版权方成功!" });
this.dialogVisible = false this.dialogVisible = false
}else{ }else{
this.$message({ type: "error", message: res.message }); this.$message({ type: "error", message: res.data.message });
} }
......
...@@ -296,7 +296,8 @@ export default { ...@@ -296,7 +296,8 @@ export default {
}, },
multipleSelection: [], multipleSelection: [],
multipleSelection1:[], multipleSelection1:[],
userType: "" userType: "",
tableInitFlag:false
}; };
}, },
mounted() { mounted() {
...@@ -325,6 +326,8 @@ export default { ...@@ -325,6 +326,8 @@ export default {
async init() { async init() {
if (this.$route.query.type === "Update") { if (this.$route.query.type === "Update") {
await this.getInfo(this.$route.query.id); await this.getInfo(this.$route.query.id);
}else{
this.tableInitFlag=true;
} }
await this.getLearnProject(); await this.getLearnProject();
// this.getAssetTypeData(); // this.getAssetTypeData();
...@@ -372,18 +375,27 @@ export default { ...@@ -372,18 +375,27 @@ export default {
this.getTableData(param, "update"); this.getTableData(param, "update");
}, },
async setSelctTable() { async setSelctTable() {
// console.info(this.multipleSelection)
// console.info(this.tableData)
if (!this.multipleSelection.length) { if (!this.multipleSelection.length) {
return false; return false;
} }
let arr =[]
this.multipleSelection.map(item=>{
arr.push(item.id)
})
// console.info(arr)
let _this = this; let _this = this;
let tableData = this.tableData; let tableData = this.tableData;
let multipleSelection = this.multipleSelection; let tempNum=0;
tableData.forEach(v => { tableData.forEach(v => {
multipleSelection.forEach(m => { if (arr.includes(v.id)) {
if (v.id == m.id) {
_this.$refs.multipleTable.toggleRowSelection(v); _this.$refs.multipleTable.toggleRowSelection(v);
tempNum++;
if(tempNum === arr.length){
this.tableInitFlag=true
}
} }
});
}); });
await this.getTableParam1() await this.getTableParam1()
}, },
...@@ -392,16 +404,17 @@ export default { ...@@ -392,16 +404,17 @@ export default {
if (!this.multipleSelection1.length) { if (!this.multipleSelection1.length) {
return false; return false;
} }
let arr =[]
this.multipleSelection1.map(item=>{
arr.push(item.id)
})
let _this = this; let _this = this;
let tableData1 = this.tableData1; let tableData1 = this.tableData1;
let multipleSelection1 = this.multipleSelection1;
tableData1.forEach(v => { tableData1.forEach(v => {
multipleSelection1.forEach(m => { if (arr.includes(v.id)) {
if (v.id == m.id) {
_this.$refs.multipleTable1.toggleRowSelection(v); _this.$refs.multipleTable1.toggleRowSelection(v);
} }
}); });
});
}, },
// 获取展板类别列表 // 获取展板类别列表
getAssetTypeData() { getAssetTypeData() {
...@@ -428,6 +441,8 @@ export default { ...@@ -428,6 +441,8 @@ export default {
this.getAssetTypeData2() this.getAssetTypeData2()
this.ruleForm.copyrightOwnerIdList = [] this.ruleForm.copyrightOwnerIdList = []
this.ruleForm.exhibitionBoardCatIdList = [] this.ruleForm.exhibitionBoardCatIdList = []
this.tableData = []
this.tableData1 = []
}, },
// 获取版权方列表 // 获取版权方列表
getAssetTypeData2() { getAssetTypeData2() {
...@@ -487,14 +502,25 @@ export default { ...@@ -487,14 +502,25 @@ export default {
}, },
// 展板多选赋值 // 展板多选赋值
handleSelectionChange(val) { handleSelectionChange(val) {
if(this.tableInitFlag){
// console.info(this.tableData.length)
// this.getTableParam1()
if(val.length === 0){
this.multipleSelection1 = []
this.tableData1 = []
}
// console.info('tableInitFlag='+this.tableInitFlag)
this.multipleSelection = val; this.multipleSelection = val;
let newArray = val.map(item => { let newArray=[]
return item.id; val.map((item,index) => {
}); newArray.push(item.id)
this.ruleForm.exhibitionBoardIdList = newArray; this.ruleForm.exhibitionBoardIdList = newArray;
if(this.type === 'add') { // console.info(index === (val.length-1))
if(index === (val.length-1)){
this.getTableParam1() this.getTableParam1()
} }
});
}
}, },
// 展板资料多选赋值 // 展板资料多选赋值
handleSelectionChange1(val) { handleSelectionChange1(val) {
...@@ -624,6 +650,10 @@ export default { ...@@ -624,6 +650,10 @@ export default {
}, },
getTableData1 () { getTableData1 () {
let vm = this; let vm = this;
// console.log(vm.ruleForm.exhibitionBoardIdList.length+1)
if(vm.ruleForm.exhibitionBoardIdList.length === 0){
vm.tableData1 = []
}else{
vm.$https( vm.$https(
{ {
url: "asset/getAssetByBoard", url: "asset/getAssetByBoard",
...@@ -640,21 +670,20 @@ export default { ...@@ -640,21 +670,20 @@ export default {
// 选中表格数据 // 选中表格数据
// console.log(this.type) // console.log(this.type)
if(this.type === 'add'){ if(this.type === 'add'){
vm.multipleSelection1 = res.data.data vm.multipleSelection1 = data
setTimeout(() => {
vm.setSelctTable1();
}, 1000);
}else{ }else{
// console.log(this.multipleSelection1) // console.log(this.multipleSelection1)
vm.multipleSelection1 = this.multipleSelection1 vm.multipleSelection1 = this.multipleSelection1
}
setTimeout(() => { setTimeout(() => {
vm.setSelctTable1(); vm.setSelctTable1();
}, 1000); }, 1000);
}
}) })
.catch(function(err) { .catch(function(err) {
console.log(err); console.log(err);
}); });
}
}, },
// 根据展板类别,版权方获取展板备选清单 // 根据展板类别,版权方获取展板备选清单
async getTableData(param, type) { async getTableData(param, type) {
......
<template>
<div class="info">
<video-dialog ref="videoDialog"></video-dialog>
<!-- <div class="info-header">新建学习内容</div> -->
<div class="info-header">{{ type === 'Update'?'修改':'新建'}}学习内容</div>
<div class="info-container">
<div class="info-wrapper">
<div class="pageTips">
<strong>页面说明:</strong>
“*”为必填项。展板类别及版权方支持多选。展板备选清单中可预览备选展板详情及展板内包含的视频。
</div>
<el-form
:model="ruleForm"
:rules="rules"
ref="ruleForm"
label-width="140px"
class="demo-form-inline party-form"
:inline="true"
label-position="top"
>
<el-form-item label="学习内容名称" prop="name" class="w50" style="padding-right: 100px">
<el-input oninput="value = value.trim()" v-model="ruleForm.name"></el-input>
</el-form-item>
<el-form-item label="适用范围" prop="applicableScope">
<!-- <span v-show="userType === '1'" value="ALL_PLAT">全平台</span> -->
<el-radio-group v-show="userType === '1'" v-model="ruleForm.applicableScope">
<el-radio v-show="userType === '1'" label="ALL_PLAT">全平台</el-radio>
</el-radio-group>
<el-radio-group v-show="userType !== '1'" v-model="ruleForm.applicableScope">
<el-radio label="THIS_ORGAN">仅本单位</el-radio>
<el-radio label="THIS_ORGAN_SUB">本单位及下属单位</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="所属学习项目" class="w50" prop="learningProjectId">
<el-select placeholder="请选所属学习项目" v-model="ruleForm.learningProjectId" @change="getSelect(ruleForm.learningProjectId)">
<el-option
v-for="item in learningProjectIdList"
:label="item.name"
:value="item.id"
:key="item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="学习内容宣传图" prop="cover" class="w100">
<upload-img ref="uploadImg" @imgUrl="imgUrl"></upload-img>
</el-form-item>
<el-form-item label="展板版权方" class="w50" prop="copyrightOwnerIdList">
<el-select
placeholder="请选择版权方"
multiple
v-model="ruleForm.copyrightOwnerIdList"
@change="getSelectDep2"
>
<el-checkbox :style="selfstyle" v-model="checkedThing2" @change="selectAllThing2">全选</el-checkbox>
<el-option
v-for="item in assetType2"
:label="item.name"
:value="item.id"
:key="item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="展板类别" prop="exhibitionBoardCatIdList">
<el-select
placeholder="请选择展板类别"
multiple
v-model="ruleForm.exhibitionBoardCatIdList"
@focus="getAssetTypeData"
@change="getSelectDep"
>
<el-checkbox :style="selfstyle" v-model="checkedThing" @change="selectAllThing">全选</el-checkbox>
<el-option
v-for="item in videoContentCat"
:label="item.name"
:value="item.id"
:key="item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="展板备选清单" class="w100" prop="exhibitionBoardIdList">
<div class="party-table">
<el-table
border
@selection-change="handleSelectionChange"
style="width: 100%"
max-height="400"
ref="multipleTable"
:data="tableData"
>
<el-table-column type="selection" width="55"></el-table-column>
<el-table-column type="index" width="120" label="序号">
</el-table-column>
<el-table-column show-overflow-tooltip label="展板名称" prop="name"></el-table-column>
<el-table-column show-overflow-tooltip label="展板类别" prop="exhibitionBoardCatName"></el-table-column>
<el-table-column show-overflow-tooltip label="展板版权方" prop="boardCopyrightOwnerName"></el-table-column>
<el-table-column label="操作" width="180">
<template slot-scope="scope">
<div class="table-btn-group">
<el-tooltip content="视频预览" placement="top">
<el-button circle @click="videoPreview(scope.row)">
<i class="icon-table icon-video"></i>
</el-button>
</el-tooltip>
<el-tooltip content="展板预览" placement="top">
<el-button circle @click="displayPreview(scope.row)">
<i class="icon-table icon-board"></i>
</el-button>
</el-tooltip>
</div>
<!-- <el-button
type="text"
style="padding: 0"
@click="videoPreview(scope.row)"
>视频预览</el-button
>
<el-button
type="text"
style="padding: 0"
@click="displayPreview(scope.row)"
>展板预览</el-button
>-->
</template>
</el-table-column>
</el-table>
</div>
</el-form-item>
<el-form-item label="展板参考资料备选清单" class="w100" prop="fileList">
<div class="party-table">
<el-table
border
@selection-change="handleSelectionChange1"
style="width: 100%"
max-height="400"
ref="multipleTable1"
:data="tableData1"
>
<el-table-column type="selection" width="55"></el-table-column>
<el-table-column type="index" width="120" label="序号">
</el-table-column>
<el-table-column show-overflow-tooltip label="展板名称" prop="boardName"></el-table-column>
<el-table-column show-overflow-tooltip label="参考资料名称" prop="fileName"></el-table-column>
<el-table-column show-overflow-tooltip label="参考资料类型" prop="fileType"></el-table-column>
</el-table>
</div>
</el-form-item>
</el-form>
<!--新增弹框-->
<el-dialog
custom-class="party-dialog"
title="展板预览区"
width="468px"
:visible.sync="dialogVisible"
:before-close="closeDialog"
>
<div class="dialog-content">
<el-form
:model="classForm"
ref="classForm"
label-width="80px"
label-position="top"
:rules="rules"
id="ruleo"
class="party-form"
>
<el-form-item label="展板名称">
<el-input v-model="classForm.name" readonly></el-input>
</el-form-item>
<el-form-item label="版权方">
<el-input v-model="classForm.boardCopyrightOwnerName" readonly></el-input>
</el-form-item>
<el-form-item label="展板分类">
<el-input v-model="classForm.exhibitionBoardCatName" readonly></el-input>
</el-form-item>
<el-form-item label="展板宣传图">
<img class="imgSize" :src="classForm.cover" alt />
</el-form-item>
<el-form-item label="简介">
<el-input type="textarea" v-model="classForm.remarks" readonly></el-input>
</el-form-item>
</el-form>
</div>
</el-dialog>
</div>
</div>
<div class="info-footer">
<div class="btn-group">
<!-- 确定、取消 -->
<el-button
v-show="type === 'add'"
size="mini"
type="primary"
class="btn_form_search"
@click="submitForm('ruleForm')"
>提交审核</el-button>
<el-button
v-show="type === 'Update'"
size="mini"
type="primary"
class="btn_form_search"
@click="updateForm('ruleForm')"
>提交审核</el-button>
<el-button size="mini" class="btn_form_search" @click="close">取消</el-button>
</div>
</div>
</div>
</template>
<script>
let Base64 = require('js-base64').Base64
import uploadImg from "@/page/content/components/uploadVue/uploadImg";
import videoDialog from "@/page/content/components/dialog/videoDialog";
import audioPlay from "@/page/content/components/audioPlay";
export default {
components: {
uploadImg,
videoDialog,
audioPlay
},
data() {
return {
dialogVisible: false,
classForm: {},
type: this.$route.query.type,
learningProjectIdList: "",
videoContentCat: [],
assetType2: [], // 版权方列表
checkedThing: false,
checkedThing2: false,
selfstyle: {
textAlign: "right",
width: "100%",
paddingRight: "10px"
},
tableData: [],
tableData1: [],
ruleForm: {
name: "", //学习内容名称
applicableScope: "", //适用范围
cover: "", //宣传图
projectId: '',
learningProjectId: "", //所属学习项目
exhibitionBoardCatIdList: [], //展板类别
copyrightOwnerIdList: [], //版权方
exhibitionBoardIdList: [], // 展板备选
fileList:[] // 展板资料备选
},
rules: {
name: [
{ required: true, message: "请输入学习内容名称", trigger: "blur" },
{ min: 1, max: 20, message: "请输入1到20个字" },
],
applicableScope: [
{
required: true,
message: "请选择适用范围"
}
],
cover: [
{
required: true,
message: "请选择学习内容宣传图"
}
],
learningProjectId: [
{ required: true, message: "请选择所属学习项目", trigger: "change" }
],
exhibitionBoardCatIdList: [
{
required: true,
type: "array",
message: "请选择展板类别",
trigger: "change"
}
],
copyrightOwnerIdList: [
{
required: true,
type: "array",
message: "请选择版权方",
trigger: "change"
}
],
exhibitionBoardIdList: [
{
required: true,
type: "array",
message: "请选择展板",
trigger: "change"
}
]
},
multipleSelection: [],
multipleSelection1:[],
userType: ""
};
},
mounted() {
this.userType = localStorage.getItem("userType");
this.init();
},
methods: {
// 视频预览
videoPreview(row) {
this.$refs.videoDialog.dialogVisible = true;
const videos = row.videoList
for(var i=0;i<videos.length;i++){
videos[i].fileUrl = Base64.decode(videos[i].intro)
}
this.$refs.videoDialog.videoList = videos
},
// 展板预览
displayPreview(row) {
this.dialogVisible = true;
this.classForm = row;
},
// 关闭弹窗
closeDialog() {
this.dialogVisible = false;
},
async init() {
if (this.$route.query.type === "Update") {
await this.getInfo(this.$route.query.id);
}
await this.getLearnProject();
// this.getAssetTypeData();
},
// 获取版权方详情
async getInfo(id) {
let vm = this;
vm.$https({
url: "learningContent/get/" + id,
method: "get",
authType: this.backToken
})
.then(res => {
let data = res.data.data;
this.ruleForm = data;
// console.log(11111,this.ruleForm.learningProjectId)
this.ruleForm = {
name: data.name,
applicableScope: data.applicableScope,
copyrightOwnerIdList: data.copyrightOwnerIdList,
cover: data.cover,
learningProjectId: data.learningProjectId,
exhibitionBoardCatIdList: data.exhibitionBoardCatIdList,
id: data.id,
exhibitionBoardIdList: data.exhibitionBoardIdList,
};
// this.tableData = data.exhibitionBoardList;
this.multipleSelection = data.exhibitionBoardList;
this.multipleSelection1 = data.assetList
this.$refs.uploadImg.showImg(this.ruleForm.cover);
this.getExhibitionBoardTable();
this.getAssetTypeData()
this.getAssetTypeData2();
})
.catch(function(err) {
console.log(err);
});
},
getExhibitionBoardTable() {
const param = {
boardCopyrightOwnerIdList: this.ruleForm.copyrightOwnerIdList.toString(),
exhibitionBoardCatIdList: this.ruleForm.exhibitionBoardCatIdList.toString(),
learningProjectId:this.ruleForm.learningProjectId
};
this.getTableData(param, "update");
},
// async setSelctTable() {
// if (!this.multipleSelection.length) {
// return false;
// }
// let _this = this;
// let tableData = this.tableData;
// let multipleSelection = this.multipleSelection;
// tableData.forEach(v => {
// multipleSelection.forEach(m => {
// if (v.id == m.id) {
// _this.$refs.multipleTable.toggleRowSelection(v);
// }
// });
// });
// await this.getTableParam1()
// },
// setSelctTable1() {
// // console.log(this.multipleSelection1)
// if (!this.multipleSelection1.length) {
// return false;
// }
// let _this = this;
// let tableData1 = this.tableData1;
// let multipleSelection1 = this.multipleSelection1;
// tableData1.forEach(v => {
// multipleSelection1.forEach(m => {
// if (v.id == m.id) {
// _this.$refs.multipleTable1.toggleRowSelection(v);
// }
// });
// });
// },
async setSelctTable() {
console.info(this.multipleSelection)
console.info(this.tableData)
if (!this.multipleSelection.length) {
return false;
}
let arr =[]
this.multipleSelection.map(item=>{
arr.push(item.id)
})
console.info(arr)
let _this = this;
let tableData = this.tableData;
tableData.forEach(v => {
if (arr.includes(v.id)) {
_this.$refs.multipleTable.toggleRowSelection(v);
}
});
await this.getTableParam1()
},
setSelctTable1() {
// console.log(this.multipleSelection1)
if (!this.multipleSelection1.length) {
return false;
}
let arr =[]
this.multipleSelection.map(item=>{
arr.push(item.id)
})
let _this = this;
let tableData1 = this.tableData1;
tableData1.forEach(v => {
if (arr.includes(v.id)) {
_this.$refs.multipleTable1.toggleRowSelection(v);
}
});
},
// 获取展板类别列表
getAssetTypeData() {
let vm = this;
if(this.ruleForm.copyrightOwnerIdList.length>0){
vm.$https({
url: "exhibitionBoardCat/getListByProjectAndCopyright",
method: "post",
authType: this.backToken
},this.$qs.stringify({copyrightIds:this.ruleForm.copyrightOwnerIdList.toString(),learningProjectId:this.ruleForm.learningProjectId}))
.then(res => {
let data = res.data.data;
vm.videoContentCat = data;
})
.catch(function(err) {
console.log(err);
});
}else{
this.$message.warning("请先选择展板版权方!")
}
},
getSelect() {
this.getAssetTypeData2()
this.ruleForm.copyrightOwnerIdList = []
this.ruleForm.exhibitionBoardCatIdList = []
this.tableData = []
this.tableData1 = []
},
// 获取版权方列表
getAssetTypeData2() {
let vm = this;
// console.log(this.ruleForm)
vm.$https(
{
url: "copyrightOwner/getListByLearningProjectId",
method: "get",
authType: this.backToken
},
{ copyrightOwnerType: "EXHIBITION_BOARD",learningProjectId: vm.ruleForm.learningProjectId}
)
.then(res => {
let data = res.data.data;
// console.log(data,"dhwdhwid")
vm.assetType2 = data;
})
.catch(function(err) {
console.log(err);
});
},
// 获取学习项目列表
getLearnProject() {
let vm = this;
vm.$https({
url: "learningProject/getList",
method: "get",
authType: this.backToken
})
.then(res => {
let data = res.data.data;
vm.learningProjectIdList = data;
})
.catch(function(err) {
console.log(err);
});
},
// 获取获取学习内容展板全部列表
getLearnContentBoard() {
let vm = this;
vm.$https(
{
url: "learningContentBoard/getList",
method: "get",
authType: this.backToken
},
{ learningContentId: this.$route.query.id }
)
.then(res => {
let data = res.data.data;
// console.log(data);
})
.catch(function(err) {
console.log(err);
});
},
// 展板多选赋值
async handleSelectionChange(val) {
this.multipleSelection = val;
let newArray = val.map(item => {
return item.id;
});
this.ruleForm.exhibitionBoardIdList = newArray;
await this.getTableParam1()
},
// 展板资料多选赋值
handleSelectionChange1(val) {
this.multipleSelection1 = this.multipleSelection1.concat(val);
let newArray = val.map(item => {
return item.id;
});
this.ruleForm.fileList = newArray;
},
// 新增
submitForm(formName) {
this.$refs[formName].validate(valid => {
// console.log(this.ruleForm);
if (valid) {
this.$https(
{
url: "/learningContent/save",
method: "post",
authType: this.backToken
},
// this.ruleForm
this.$qs.stringify(this.ruleForm)
)
.then(res => {
if(res.data.resultCode === "200"){
if(this.userType === '1'){
this.$message({ type: "success", message: "新增学习内容申请已提交,待审核!" });
}else{
this.$message({ type: "success", message: "新增成功!" });
}
history.go(-1);
}else{
this.$message({ type: "error", message: res.data.message });
}
})
.catch(function(err) {
console.log(err);
});
} else {
console.log("error submit!!");
return false;
}
});
},
// 修改版权方
updateForm(formName) {
this.$refs[formName].validate(valid => {
if (valid) {
this.$https(
{
url: "learningContent/update",
method: "put",
authType: this.backToken
},
this.$qs.stringify(this.ruleForm)
// this.ruleForm
)
.then(res => {
if(res.data.resultCode === "200"){
if(this.userType === '1'){
this.$message({ type: "success", message: "修改学习内容申请已提交,待审核!" });
}else{
this.$message({ type: "success", message: "修改成功!" });
}
history.go(-1);
}else{
this.$message({ type: "error", message: res.data.message });
}
})
.catch(function(err) {
console.log(err);
});
} else {
console.log("error submit!!");
return false;
}
});
},
imgUrl(url) {
this.ruleForm.cover = url;
this.$refs.ruleForm.validateField("cover");
},
// 展板类别发生变化
getSelectDep(exhibitionBoardCatIdList) {
if (exhibitionBoardCatIdList.length === this.videoContentCat.length) {
this.checkedThing = true;
} else {
this.checkedThing = false;
}
this.getTableParam()
},
getSelectDep2(exhibitionBoardCatIdList) {
if (exhibitionBoardCatIdList.length === this.assetType2.length) {
this.checkedThing2 = true;
} else {
this.checkedThing2 = false;
}
// this.getTableParam()
},
// 筛选展板备选清单选项条件
getTableParam(){
// debugger
const param = {
boardCopyrightOwnerIdList: this.ruleForm.copyrightOwnerIdList.toString(),
exhibitionBoardCatIdList: this.ruleForm.exhibitionBoardCatIdList.toString(),
learningProjectId:this.ruleForm.learningProjectId
};
if((param.boardCopyrightOwnerIdList.length>0)&&(param.exhibitionBoardCatIdList.length>0)){
this.getTableData(param);
}else{
this.tableData = []
}
},
// 筛选展板资料备选清单选项条件
getTableParam1(){
const param = {
boardList:this.ruleForm.exhibitionBoardIdList.toString()
};
if(param.boardList.length>0){
this.getTableData1(param);
}else{
this.tableData1 = []
}
},
getTableData1 () {
let vm = this;
vm.$https(
{
url: "asset/getAssetByBoard",
method: "get",
authType: this.backToken
},
{ boardList:vm.ruleForm.exhibitionBoardIdList.toString() }
)
.then(res => {
// alert(1)
const data = res.data.data;
// console.log(data)
vm.tableData1 = data;
// 选中表格数据
// console.log(this.type)
if(this.type === 'add'){
vm.multipleSelection1 = res.data.data
setTimeout(() => {
vm.setSelctTable1();
}, 1000);
}else{
// console.log(this.multipleSelection1)
vm.multipleSelection1 = this.multipleSelection1
setTimeout(() => {
vm.setSelctTable1();
}, 1000);
}
})
.catch(function(err) {
console.log(err);
});
},
// 根据展板类别,版权方获取展板备选清单
async getTableData(param, type) {
let vm = this;
vm.$https(
{
url: "exhibitionBoard/getListByLearningId",
method: "post",
authType: this.backToken
},
vm.$qs.stringify(param)
)
.then(res => {
// alert(1)
// console.log(res)
let data = res.data.data;
vm.tableData = data;
if (type) {
// 选中表格数据
setTimeout(() => {
vm.setSelctTable();
}, 1000);
}
})
.catch(function(err) {
console.log(err);
});
},
selectAllThing() {
// debugger
this.ruleForm.exhibitionBoardCatIdList = [];
if (this.checkedThing) {
this.videoContentCat.map(item => {
this.ruleForm.exhibitionBoardCatIdList.push(item.id);
});
} else {
this.ruleForm.exhibitionBoardCatIdList = [];
}
this.getTableParam()
},
selectAllThing2() {
// debugger
this.ruleForm.copyrightOwnerIdList = [];
if (this.checkedThing2) {
this.assetType2.map(item => {
this.ruleForm.copyrightOwnerIdList.push(item.id);
});
} else {
this.ruleForm.copyrightOwnerIdList = [];
}
},
// 新增
addSubmit() {
// 至少选一个备选清单 提示
alert("请先至少选择一个展板备选清单");
},
close() {
history.go(-1);
},
moveUpward(row, index) {
if (index > 0) {
let upData = this.tableData[index - 1];
this.tableData.splice(index - 1, 1);
this.tableData.splice(index, 0, upData);
} else {
this.$message({
message: "已经是第一条,上移失败",
type: "warning"
});
}
},
moveDown(row, index) {
if (index + 1 == this.tableData.length) {
this.$message({
message: "已经是最后一条,下移失败",
type: "warning"
});
} else {
let downData = this.tableData[index + 1];
this.tableData.splice(index + 1, 1);
this.tableData.splice(index, 0, downData);
}
}
}
};
</script>
<style lang="less">
@import "../../../../style/table.less";
</style>
...@@ -3,4 +3,3 @@ ...@@ -3,4 +3,3 @@
"baseUrl": "/mall/", "baseUrl": "/mall/",
"directory": "/plat" "directory": "/plat"
} }
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