<template>
|
<view class="container">
|
<view class='initiae-box'>
|
<u-form :model="form" ref="uForm">
|
|
<u-form-item label-width='160' prop="content" label="指令内容" :required="true">
|
<u-input type='textarea' v-model="form.content" placeholder="请输入指令内容" />
|
</u-form-item>
|
|
<u-form-item label-width='160' prop="recipientText" label="指令接收人" :required="true">
|
|
<u-input v-model="form.recipientText" type="select" placeholder="请选择接收人" :border="false"
|
@click="recipientClick" />
|
<u-select v-model="recipientShow" mode="mutil-column-auto" :list="recipientList"
|
@confirm="recipientConfirm">
|
</u-select>
|
|
</u-form-item>
|
|
</u-form>
|
<view>
|
<u-button type="primary" @click="initiateClick" style="margin-top: 4%; width: 60%;">发送</u-button>
|
</view>
|
<view>
|
<u-toast ref="uToast" />
|
</view>
|
</view>
|
</view>
|
</template>
|
|
<script>
|
export default {
|
data() {
|
return {
|
recipientShow: false,
|
recipientList: [],
|
|
form: {
|
content: '',
|
recipient: '',
|
recipientText: ''
|
},
|
|
rules: {
|
content: [{
|
min: 5,
|
required: true,
|
message: '指令内容不能少于5个字',
|
trigger: ['change', 'blur'],
|
}],
|
recipientText: [{
|
required: true,
|
message: '请选择接收人',
|
trigger: ['change', 'blur'],
|
}],
|
|
},
|
};
|
},
|
onLoad() {
|
console.log(this.$store.state)
|
},
|
onReachBottom() {
|
|
},
|
mounted() {},
|
onReady() {
|
this.$refs.uForm.setRules(this.rules);
|
},
|
methods: {
|
recipientClick() {
|
uni.request({
|
url: this.$store.state.piAPI + "/blade-system/dept/lazy-tree-user-app?userId=" + this.$store
|
.state
|
.UserData.user_id,
|
method: "get",
|
data: {
|
|
},
|
success: (res) => {
|
this.recipientList = []
|
res.data.forEach(item => {
|
if (item.hasChildren) {
|
this.recipientList.push(item)
|
}
|
})
|
this.recipientShow = true;
|
}
|
});
|
|
},
|
recipientConfirm(e) {
|
|
if (e.length == 1) {
|
this.form.recipient = e[0].value
|
this.form.recipientText = e[0].label
|
} else if (e.length == 2) {
|
this.form.recipient = e[1].value
|
this.form.recipientText = e[1].label
|
} else if (e.length == 3) {
|
this.form.recipient = e[2].value
|
this.form.recipientText = e[2].label
|
}
|
|
},
|
initiateClick() {
|
this.$refs.uForm.validate(valid => {
|
if (valid) {
|
uni.request({
|
url: this.$store.state.piAPI + "/directive/saveDirectiveAndFile",
|
method: "post",
|
data: {
|
// 接收
|
receiveDirectiveIds: this.form.recipient,
|
// 发送
|
sendDirectiveId: this.$store.state
|
.UserData.user_id,
|
content: this.form.content,
|
},
|
success: (res) => {
|
if (res.data.msg == "操作成功") {
|
this.$refs.uToast.show({
|
title: '指令下发成功',
|
type: 'success',
|
url: '/pages/dispatch/dispatch'
|
})
|
}
|
}
|
});
|
} else {
|
console.log('验证失败');
|
}
|
});
|
}
|
}
|
};
|
</script>
|
|
|
<style lang="scss">
|
.initiae-box {
|
padding: 0 30rpx;
|
}
|
</style>
|