Commit 3361888e authored by xulili's avatar xulili

我的消息

parent 9b29ea89
/**
* Created by supervisor on 2020/3/31
*/
const mineRouter = [
{
path: '/message',
name: 'message',
component: () => import('@/views/mainSale/message/index')
},
{
path: '/addMessage',
name: 'addMessage',
component: () => import('@/views/mainSale/message/addMessage')
},
{
path: '/releaseMessage',
name: 'releaseMessage',
component: () => import('@/views/mainSale/message/releaseMessage')
},
]
export default mineRouter
/**
* The file enables `@/store/index.vue.js` to import all vuex modules
* in a one-shot manner. There should not be any reason to edit this file.
*/
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
const files = require.context('./modules', false, /\.js$/)
const modules = {}
files.keys().forEach(key => {
modules[key.replace(/(\.\/|\.js)/g, '')] = files(key).default
})
export default new Vuex.Store({
state: {
},
mutations: {
},
actions: {
},
modules: {
}
modules: modules
})
......@@ -19,10 +19,10 @@ export function getClerkInfoBySupervisorId(params) {
})
}
export function newTask(data) {
export function newTask(params) {
return requestAPI({
url: '/admin/auth/marketing/newTask',
method: 'post',
data
params
})
}
......@@ -24,9 +24,17 @@
content:''
}
},
beforeRouteEnter(to, from, next){
next(vm => {
if(from.name == 'releaseMessage'){
vm.title = vm.$store.state.message.title
vm.content = vm.$store.state.message.content
}
});
},
methods: {
onClickLeft() {
this.$router.back()
this.$router.push('/message')
},
onClickRight() {
//发布 全员发送 获取全部id 部分可见 获取check 的id
......
......@@ -3,11 +3,15 @@
<div class="message-list">
<div class="message-panel-box" v-for="(item,index) in messageList" :key="index">
<div class="message-panel-box-left">
<p class="message-title"></p>
<p class="message-content"></p>
<p class="message-title">
{{item.title}}
</p>
<p class="message-content">
{{item.content}}
</p>
</div>
<div class="message-panel-box-right">
<span></span>
<span>{{item.createDate}}</span>
</div>
</div>
</div>
......@@ -22,11 +26,13 @@
name: 'index',
data() {
return {
// clerkId: '2003160512400400000',
clerkId: '2003160512400400000',
messageList: []
}
},
mounted() {
this.clerkId = sessionStorage.getItem('clerkId')
this.handleGetMessageByClerkId()
},
methods: {
......@@ -55,6 +61,42 @@
<style scoped lang="scss">
.message-container{
height: 100%;
padding: 20px 10px 20px 20px;
.message-panel-box{
font-size: 14px;
display: flex;
align-items: center;
justify-content: space-between;
padding: 5px 0 ;
.message-panel-box-left{
width: calc(100% - 135px);
.message-title,.message-content{
width: 100%;
overflow: hidden;
}
.message-title{
font-size: 16px;
font-weight: 500;
color: black;
line-height: 30px;
text-overflow: ellipsis;
white-space: nowrap;
}
.message-content{
font-size: 12px;
color: #2d2a2a;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
}
}
.message-panel-box-right{
color: #ccc;
}
&:not(last-child){
border-bottom: 1px solid #f3eaea;
}
}
.btn-plus{
position: fixed;
right: 30px;
......
......@@ -12,37 +12,42 @@
</div>
<div class="userlist">
<van-checkbox-group v-model="checkIds">
<van-checkbox :name="item.userId" shape="square" v-for="(item,index) in userList" :key="index">{{item.userName}}</van-checkbox>
<van-checkbox :name="item.id" shape="square" v-for="(item,index) in userList" :key="index">
{{item.userName}}
</van-checkbox>
</van-checkbox-group>
</div>
</div>
</template>
<script>
import {getClerkInfoBySupervisorId,newTask} from '@/utils/utils.Request.aApi'
import {getClerkInfoBySupervisorId, newTask} from '@/utils/utils.Request.aApi'
export default {
name: 'releaseMessage',
data() {
return {
radio: '1',
checkIds:[],
supervisorId:'2003160512400400000',
userList:[]
checkIds: [],
// supervisorId:'2003160512400400000',
supervisorId: '',
userList: []
}
},
mounted(){
this.getClerkInfoBySupervisorId()
mounted() {
this.supervisorId = sessionStorage.getItem('clerkId')
this.getClerkInfoBySupervisorId()
},
methods: {
// 根据主管id获取所属部门全部员工信息
getClerkInfoBySupervisorId(){
getClerkInfoBySupervisorId() {
let _this = this
getClerkInfoBySupervisorId({supervisorId: _this.supervisorId})
.then(res => {
if (res.result == 'success') {
_this.userList = res.data
_this.checkIds = res.data.map(v=>{
return v.userId
_this.checkIds = res.data.map(v => {
return v.id
})
} else {
_this.userList = []
......@@ -54,42 +59,42 @@
})
},
onClickLeft() {
this.$router.back()
this.$router.push('/addMessage')
},
onClickRight() {
//发布 全员发送 获取全部id 部分可见 获取check 的id
let title = this.$store.state.title
let content = this.$store.state.content
let title = this.$store.state.message.title
let content = this.$store.state.message.content
let supervisorId = this.supervisorId
let clerkIds = this.checkIds
debugger
let clerkIds = this.checkIds + ""
let requestParam = {
title:title,
content:content,
supervisorId:supervisorId,
clerkIds:clerkIds
title: title,
content: content,
supervisorId: supervisorId,
clerkIds: clerkIds
}
let _this = this
newTask(requestParam)
.then(res => {
if (res.result == 'success') {
_this.$toast('发布成功');
//清空store 值
_this.$store.commit('message/title', "")
_this.$store.commit('message/content', "")
_this.$router.push('/message')
} else {
_this.$toast(res.errorMsg);
}
})
.catch(err => {
// newTask(requestParam)
// .then(res => {
// if (res.result == 'success') {
// _this.$toast('发布成功');
// _this.$router.push('/message')
// } else {
// _this.$toast(res.errorMsg);
// }
// })
// .catch(err => {
//
// })
})
},
handleChangeRadio(val){
if(val == '1'){
this.checkIds = this.userList.map(v=>{
return v.userId
handleChangeRadio(val) {
if (val == '1') {
this.checkIds = this.userList.map(v => {
return v.id
})
}
},
......@@ -97,23 +102,23 @@
}
</script>
<style lang="scss">
<style lang="scss">
.release-message-container {
height: 100%;
overflow: hidden;
.van-nav-bar {
padding: 0 20px;
/*&:after{*/
/*border: none;*/
/*border: none;*/
/*}*/
}
.radio-group {
margin: 10px 0 20px 0;
.van-radio-group--horizontal{
.van-radio-group--horizontal {
padding: 0 20px;
justify-content: space-around;
}
.van-radio__icon{
.van-radio__icon {
font-size: 18px;
}
.van-radio__label {
......@@ -121,18 +126,18 @@
}
}
.userlist{
.userlist {
height: calc(100% - 66px);
overflow-x: hidden;
overflow-y: scroll;
.van-checkbox-group{
.van-checkbox-group {
padding: 0 30px;
.van-checkbox{
.van-checkbox {
margin-bottom: 10px;
.van-checkbox__icon{
.van-checkbox__icon {
font-size: 18px;
}
.van-checkbox__label{
.van-checkbox__label {
font-size: 14px;
}
}
......
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