Commit f857ef34 authored by 乐宝呗666's avatar 乐宝呗666

添加必填星号展示

parent a0bcb34d
...@@ -75,14 +75,10 @@ const routes = [ ...@@ -75,14 +75,10 @@ const routes = [
}, },
] ]
function getAbsolutePath () {
let path = location.pathname
return path.substring(0, path.lastIndexOf('/') + 1)
}
const router = new VueRouter({ const router = new VueRouter({
routes: routes, routes: routes,
mode: "history", mode: "history",
base: getAbsolutePath() base: process.env.BASE_URL
}) })
const whiteList =['/login','/success','/screen'] const whiteList =['/login','/success','/screen']
router.beforeEach((to, from, next) => { router.beforeEach((to, from, next) => {
......
...@@ -63,19 +63,10 @@ export default { ...@@ -63,19 +63,10 @@ export default {
}); });
}, },
goDetail(item) { goDetail(item) {
if (item.id === this.currentUserId) { this.$router.push({
// 修改页面 path: "/adminInfo",
this.$router.push({ query: { id: item.id, disabled: item.id !== this.currentUserId },
path: "/adminInfo", });
query: { id: item.id, disabled: false },
});
} else {
// 详情页面
this.$router.push({
path: "/adminInfo",
query: { id: item.id, disabled: true },
});
}
}, },
}, },
}; };
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<van-tabs type="card" v-model="activeTab"> <van-tabs type="card" v-model="activeTab">
<van-tab title="观影互动"> <van-tab title="观影互动">
<div class="commit-page"> <div class="commit-page">
<commit-tab @updateActive="updateActive" /> <commit-tab />
</div> </div>
</van-tab> </van-tab>
<van-tab title="互动历史"> <van-tab title="互动历史">
...@@ -32,18 +32,10 @@ export default { ...@@ -32,18 +32,10 @@ export default {
data() { data() {
return { return {
activeTab: 1, activeTab: 1,
form: {},
show: false,
fileList: [],
imgFileList: [],
}; };
}, },
mounted() {}, mounted() {},
methods: { methods: {},
updateActive(active) {
this.activeTab = active;
},
},
}; };
</script> </script>
......
<template> <template>
<div class="admin-detail-content"> <div class="admin-detail-content">
<Header title="管理员详情" /> <Header title="管理员详情" />
<van-form validate-first ref='form' @submit="onSubmit"> <van-form @submit="onSubmit">
<div class="input-box"> <div class="input-box">
<van-field <van-field
required
label="管理员姓名" label="管理员姓名"
:disabled="disabled" :disabled="disabled"
v-model="form.userName" v-model="form.userName"
...@@ -15,6 +16,7 @@ ...@@ -15,6 +16,7 @@
]" ]"
/> />
<van-field <van-field
required
label="手机号码" label="手机号码"
:disabled="disabled" :disabled="disabled"
v-model="form.phone" v-model="form.phone"
...@@ -150,7 +152,6 @@ export default { ...@@ -150,7 +152,6 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
.admin-detail-content { .admin-detail-content {
padding: 50px 24px 0; padding: 50px 24px 0;
// height: calc(100% - 150px);
overflow-y: auto; overflow-y: auto;
.input-box { .input-box {
padding-bottom: 32px; padding-bottom: 32px;
...@@ -194,6 +195,10 @@ export default { ...@@ -194,6 +195,10 @@ export default {
width: 100%; width: 100%;
} }
} }
::v-deep .van-cell--required::before {
left: -10px;
color:#A4151D;
}
.van-field__control, .van-field__control,
.van-cell__value { .van-cell__value {
color: #333; color: #333;
......
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
class="field-form-item" class="field-form-item"
readonly readonly
clickable clickable
required
name="boardName" name="boardName"
input-align="right" input-align="right"
:value="form.boardName" :value="form.boardName"
...@@ -37,6 +38,7 @@ ...@@ -37,6 +38,7 @@
class="field-form-item" class="field-form-item"
readonly readonly
clickable clickable
required
name="studyTime" name="studyTime"
input-align="right" input-align="right"
:value="form.studyTime || ''" :value="form.studyTime || ''"
...@@ -57,6 +59,7 @@ ...@@ -57,6 +59,7 @@
/> />
</van-popup> </van-popup>
<van-field <van-field
required
label="观影人数" label="观影人数"
v-model="form.num" v-model="form.num"
placeholder="请输入观影人数" placeholder="请输入观影人数"
...@@ -64,6 +67,7 @@ ...@@ -64,6 +67,7 @@
:rules="[{ pattern: /^[1-9]\d{0,9}$/, message: '请输入正确内容,最多10位数',trigger:'blur'}]" :rules="[{ pattern: /^[1-9]\d{0,9}$/, message: '请输入正确内容,最多10位数',trigger:'blur'}]"
/> />
<van-field <van-field
required
label="管理员账号" label="管理员账号"
v-model="form.name" v-model="form.name"
placeholder="请输入管理员账号" placeholder="请输入管理员账号"
...@@ -71,6 +75,7 @@ ...@@ -71,6 +75,7 @@
:rules="[{ required: true }]" :rules="[{ required: true }]"
/> />
<van-field <van-field
required
type="password" type="password"
label="管理员密码" label="管理员密码"
v-model="form.password" v-model="form.password"
...@@ -141,6 +146,7 @@ ...@@ -141,6 +146,7 @@
</div> </div>
<div class="field-content"> <div class="field-content">
<van-field <van-field
required
class="field-textarea" class="field-textarea"
type="textarea" type="textarea"
v-model="form.content" v-model="form.content"
...@@ -207,20 +213,6 @@ export default { ...@@ -207,20 +213,6 @@ export default {
this.form.boardId = this.boardList[index].id; this.form.boardId = this.boardList[index].id;
this.showBoard = false; this.showBoard = false;
}, },
beforeVideo(file) {
let isOver = true
if(Array.isArray(file)){
isOver = file.every(item=>item <= 10*1024*1024)
}else{
isOver = file.size <= 10*1024*1024
}
if(!isOver){
this.$toast.fail("上传文件大小不能超过 10MB");
return false
}else{
return true
}
},
// 打开日历 // 打开日历
onDisplay() { onDisplay() {
this.show = true; this.show = true;
...@@ -328,6 +320,21 @@ export default { ...@@ -328,6 +320,21 @@ export default {
console.log(err); console.log(err);
}); });
}, },
// 上传视频size限制
beforeVideo(file) {
let isOver = true
if(Array.isArray(file)){
isOver = file.every(item=>item <= 10*1024*1024)
}else{
isOver = file.size <= 10*1024*1024
}
if(!isOver){
this.$toast.fail("上传文件大小不能超过 10MB");
return false
}else{
return true
}
},
// 删除视频 // 删除视频
async deleteVideo(file,detail){ async deleteVideo(file,detail){
this.form.videos.splice(detail.index,1) this.form.videos.splice(detail.index,1)
...@@ -408,7 +415,6 @@ export default { ...@@ -408,7 +415,6 @@ export default {
param.images = [...param.images, ...param.videos]; param.images = [...param.images, ...param.videos];
param.images = param.images.join(","); param.images = param.images.join(",");
delete param.videos; delete param.videos;
console.log(param);
vm.$https( vm.$https(
{ {
url: "interaction/add", url: "interaction/add",
...@@ -459,6 +465,32 @@ export default { ...@@ -459,6 +465,32 @@ export default {
} }
.field-content { .field-content {
padding-bottom: 32px; padding-bottom: 32px;
.upload-content {
.avatar-plus {
width: 48px;
height: 48px;
line-height: 48px;
text-align: center;
background-color: #f5f5f5;
border-radius: 1px;
font-size: 25px;
color: #999;
margin-bottom: 12px;
}
.tips {
img {
width: 12px;
height: 12px;
vertical-align: middle;
}
span {
margin-left: 4px;
color: #666;
font-size: 12px;
vertical-align: middle;
}
}
}
} }
.input-box { .input-box {
padding-bottom: 32px; padding-bottom: 32px;
...@@ -472,16 +504,6 @@ export default { ...@@ -472,16 +504,6 @@ export default {
display: none; display: none;
} }
} }
.calendar-icon {
.van-icon {
position: absolute;
width: 20px;
height: 20px;
right: 0;
bottom: 22px;
z-index: 2;
}
}
.commit-page-button { .commit-page-button {
position: fixed; position: fixed;
bottom: 50px; bottom: 50px;
...@@ -522,32 +544,10 @@ export default { ...@@ -522,32 +544,10 @@ export default {
padding: 0; padding: 0;
} }
} }
::v-deep .van-cell--required::before {
.upload-content { left: -10px;
.avatar-plus { color:#A4151D;
width: 48px;
height: 48px;
line-height: 48px;
text-align: center;
background-color: #f5f5f5;
border-radius: 1px;
font-size: 25px;
color: #999;
margin-bottom: 12px;
}
.tips {
img {
width: 12px;
height: 12px;
vertical-align: middle;
}
span {
margin-left: 4px;
color: #666;
font-size: 12px;
vertical-align: middle;
}
}
} }
} }
</style> </style>
\ No newline at end of file
...@@ -8,25 +8,32 @@ ...@@ -8,25 +8,32 @@
@load="onLoad" @load="onLoad"
offset="50" offset="50"
> >
<van-cell v-for="(item,index) in tableData" :key="index"> <van-cell v-for="(item, index) in tableData" :key="index">
<div class="field-title"> <div class="field-title">
<span>{{item.createTime}}</span> <span>{{ item.createTime }}</span>
</div> </div>
<van-collapse v-model="activeNames"> <van-collapse v-model="activeNames">
<van-collapse-item :name="item.id"> <van-collapse-item :name="item.id">
<template #title> <template #title>
<div>{{item.boardName}}<span class="author">{{item.username}}</span> <div>
{{ item.boardName
}}<span class="author">{{ item.username }}</span>
</div> </div>
</template> </template>
<div class="content"> <div class="content">
<div class="learnvideo"> <div class="learnvideo">
<div class="learn-title">学习视频</div> <div class="learn-title">学习视频</div>
<div class="learn-body" v-if="item.videos.length"> <div class="learn-body" v-if="item.videos.length">
<span v-for="(s,i) in item.videos" :key="i"> <span v-for="(s, i) in item.videos" :key="i">
<video controls width='100%' height='100%' poster="@/assets/images/applets/video.png"> <video
<source :src="s" /> controls
</video> width="100%"
<!-- autoplay="autoplay" height="100%"
poster="@/assets/images/applets/video.png"
>
<source :src="s" />
</video>
<!-- autoplay="autoplay"
x5-playsinline='true' x5-playsinline='true'
webkit-playsinline='true' webkit-playsinline='true'
playsinline='true' playsinline='true'
...@@ -34,24 +41,33 @@ ...@@ -34,24 +41,33 @@
x5-video-player-type='h5-page' x5-video-player-type='h5-page'
x5-video-player-fullscreen='true' x5-video-player-fullscreen='true'
x5-video-ignore-metadata='true' --> x5-video-ignore-metadata='true' -->
</span> </span>
</div>
<div class="learn-body" v-if="!item.videos.length">暂无数据</div>
</div> </div>
<div class="learnphoto"> <div class="learn-body" v-if="!item.videos.length">
<div class="learn-title">学习照片</div> 暂无数据
<div class="learn-body" v-if="item.images.length">
<span v-for="(s,i) in item.images" :key="i">
<img :src="s" alt="" @click="sceneImg(item.images,i)" v-if="s">
<span v-else>暂无数据</span>
</span>
</div>
<div class="learn-body" v-if="!item.images.length">暂无数据</div>
</div> </div>
<div class="learntextarea"> </div>
<div class="learn-title">有话对党说</div> <div class="learnphoto">
<div class="learn-body">{{item.content|| '暂无数据'}}</div> <div class="learn-title">学习照片</div>
<div class="learn-body" v-if="item.images.length">
<span v-for="(s, i) in item.images" :key="i">
<img
:src="s"
alt=""
@click="sceneImg(item.images, i)"
v-if="s"
/>
<span v-else>暂无数据</span>
</span>
</div>
<div class="learn-body" v-if="!item.images.length">
暂无数据
</div> </div>
</div>
<div class="learntextarea">
<div class="learn-title">有话对党说</div>
<div class="learn-body">{{ item.content || "暂无数据" }}</div>
</div>
</div> </div>
</van-collapse-item> </van-collapse-item>
</van-collapse> </van-collapse>
...@@ -66,83 +82,85 @@ import { ImagePreview } from "vant"; // 引入Vant图片预览组件 ...@@ -66,83 +82,85 @@ import { ImagePreview } from "vant"; // 引入Vant图片预览组件
export default { export default {
data() { data() {
return { return {
activeNames: ['1'], activeNames: ["1"],
pageNum: 1, pageNum: 1,
pageSize: 8, pageSize: 8,
tableData:[], tableData: [],
loading: false, loading: false,
finished: false, finished: false,
refreshing: false, refreshing: false,
flag:true, flag: true,
}; };
}, },
mounted() { mounted() {
this.getList() this.getList();
}, },
methods: { methods: {
// 图片预览 // 图片预览
sceneImg(images,index) { sceneImg(images, index) {
ImagePreview({ ImagePreview({
images:images, //需要预览的图片 URL 数组 images: images, //需要预览的图片 URL 数组
showIndex:true, //是否显示页码 showIndex: true, //是否显示页码
loop:false, //是否开启循环播放 loop: false, //是否开启循环播放
startPosition:index //图片预览起始位置索引 startPosition: index, //图片预览起始位置索引
}) });
}, },
// 获得数据接口 // 获得数据接口
getList() { getList() {
let vm = this; let vm = this;
let param = { let param = {
_index:this.pageNum, _index: this.pageNum,
_size:this.pageSize, _size: this.pageSize,
orgId: JSON.parse(sessionStorage.getItem("userInfo")).orgId orgId: JSON.parse(sessionStorage.getItem("userInfo")).orgId,
}; };
vm.$https( vm.$https(
{ {
url: "interaction/getList", url: "interaction/getList",
method: "post", method: "post",
authType: this.backToken authType: this.backToken,
}, },
vm.$qs.stringify(param) vm.$qs.stringify(param)
).then(res => { )
if(res.data.resultCode==='200'){ .then((res) => {
vm.loading = false if (res.data.resultCode === "200") {
vm.loading = false;
let data = res.data.data; let data = res.data.data;
let arr=[] let arr = [];
data.records.forEach(item=>{ data.records.forEach((item) => {
arr= item.images.split(',') arr = item.images.split(",");
item.videos =[] item.videos = [];
item.images =[] item.images = [];
item.audio =[] item.audio = [];
arr.forEach((result)=>{ arr.forEach((result) => {
if (/\.(MP4|mp4)/.test(result)){ if (/\.(MP4|MPEG|Ogg|WebM)/i.test(result)) {
item.videos.push(result) item.videos.push(result);
}else if (/\.(MP3|mp3)/.test(result)){ } else if (/\.(MP3|Wav|Ogg)/i.test(result)) {
item.audio.push(result) item.audio.push(result);
}else { } else {
item.images.push(result) item.images.push(result);
} }
}) });
}) });
vm.tableData = vm.flag ? data.records :vm.tableData.concat(data.records) vm.tableData = vm.flag
vm.flag = false ? data.records
: vm.tableData.concat(data.records);
vm.flag = false;
vm.refreshing = false; vm.refreshing = false;
vm.pageNum = vm.pageNum + 1 vm.pageNum = vm.pageNum + 1;
vm.finished = data.records.length < vm.pageSize ? true : false vm.finished = data.records.length < vm.pageSize ? true : false;
vm.tableData = [...vm.tableData] vm.tableData = [...vm.tableData];
}else{ } else {
vm.$toast(res.data.message) vm.$toast(res.data.message);
} }
}) })
.catch(function(err) { .catch(function (err) {
console.log(err); console.log(err);
}) });
}, },
// 列表的load上拉加载事件 // 列表的load上拉加载事件
onLoad() { onLoad() {
if(!this.flag){ if (!this.flag) {
console.log("加载数据"); console.log("加载数据");
this.loading = true; this.loading = true;
this.flag = false; this.flag = false;
...@@ -154,10 +172,10 @@ export default { ...@@ -154,10 +172,10 @@ export default {
this.finished = false; this.finished = false;
this.flag = true; this.flag = true;
this.loading = true; this.loading = true;
this.pageNum =1; this.pageNum = 1;
this.getList(); this.getList();
}, },
} },
}; };
</script> </script>
...@@ -191,7 +209,7 @@ export default { ...@@ -191,7 +209,7 @@ export default {
content: ""; content: "";
height: 16px; height: 16px;
width: 16px; width: 16px;
background-image: url('~@/assets/images/applets/timer.png'); background-image: url("~@/assets/images/applets/timer.png");
background-size: cover; background-size: cover;
position: absolute; position: absolute;
left: 0; left: 0;
...@@ -200,30 +218,30 @@ export default { ...@@ -200,30 +218,30 @@ export default {
} }
} }
.author { .author {
float: right; float: right;
margin-right: 20px; margin-right: 20px;
} }
.content { .content {
.learn-title { .learn-title {
font-size: 14px; font-size: 14px;
color: #333333; color: #333333;
padding: 16px 0; padding: 16px 0;
} }
.learn-body{ .learn-body {
padding-bottom: 12px; padding-bottom: 12px;
img,video { img,
width: 30%; video {
height: auto; width: 30%;
padding: 0 5px; height: auto;
box-sizing: border-box; padding: 0 5px;
} box-sizing: border-box;
} }
.learntextarea { }
.learn-body { .learntextarea {
line-height: 1.5 .learn-body {
} line-height: 1.5;
} }
}
} }
} }
</style> </style>
\ No newline at end of file
...@@ -60,7 +60,7 @@ ...@@ -60,7 +60,7 @@
<div class="learn-title">展板音频</div> <div class="learn-title">展板音频</div>
<div class="learn-body"> <div class="learn-body">
<span <span
class="file-box" class="file-box audio"
v-for="(s, i) in item.audioList" v-for="(s, i) in item.audioList"
:key="i" :key="i"
> >
...@@ -188,6 +188,9 @@ export default { ...@@ -188,6 +188,9 @@ export default {
padding: 10px; padding: 10px;
box-sizing: border-box; box-sizing: border-box;
} }
.file-box.audio {
width: 100%;
}
img { img {
width: 32px; width: 32px;
height: auto; height: auto;
......
...@@ -37,7 +37,6 @@ ...@@ -37,7 +37,6 @@
/> />
</div> </div>
<div class="admin-detail-button"> <div class="admin-detail-button">
<!-- <van-button type="default" plain native-type="button" @click="onCancle">取消</van-button> -->
<van-button type="default" native-type="submit">提交</van-button> <van-button type="default" native-type="submit">提交</van-button>
</div> </div>
</van-form> </van-form>
...@@ -61,11 +60,6 @@ export default { ...@@ -61,11 +60,6 @@ export default {
// 查询管理员信息 // 查询管理员信息
}, },
methods: { methods: {
onCancle() {
this.form = {
username: JSON.parse(sessionStorage.getItem("userInfo")).userName,
};
},
// 提交数据 // 提交数据
onSubmit() { onSubmit() {
if (this.form.password !== this.form.againPsd) { if (this.form.password !== this.form.againPsd) {
...@@ -116,9 +110,6 @@ export default { ...@@ -116,9 +110,6 @@ export default {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
box-sizing: border-box; box-sizing: border-box;
.edit-container {
}
.input-box { .input-box {
padding-bottom: 32px; padding-bottom: 32px;
.van-cell { .van-cell {
......
...@@ -33,7 +33,7 @@ export default { ...@@ -33,7 +33,7 @@ export default {
finished: false, finished: false,
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
flag: true, flag: true, // 是否是第一次加载
list: [], list: [],
refreshing: false, refreshing: false,
}; };
......
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