190 lines
4.5 KiB
Vue
190 lines
4.5 KiB
Vue
|
<template>
|
|||
|
<view class="body">
|
|||
|
<u-navbar :custom-back="router" title="添加心愿"></u-navbar>
|
|||
|
<view class="form">
|
|||
|
<view class="formItem">
|
|||
|
<view class="title">标题</view>
|
|||
|
<view class="input">
|
|||
|
<u-input v-model="title" :maxlength="20" placeholder="请输入标题,不超过20字" type="type"/>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
<view class="formItem">
|
|||
|
<view class="title">内容</view>
|
|||
|
<view class="input">
|
|||
|
<u-input v-model="content" :auto-height="true" :height="500" :maxlength="500"
|
|||
|
placeholder="请输入内容,内容不超过500字"
|
|||
|
type="textarea"/>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
<view v-if="doYouWantToEnableAnonymity" class="formItem noBorder">
|
|||
|
<view class="input">
|
|||
|
<u-checkbox-group>
|
|||
|
<u-checkbox v-model="anonymous">匿名</u-checkbox>
|
|||
|
</u-checkbox-group>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
<view class="btn-box">
|
|||
|
<u-button type="primary" shape="circle" @click="submit" style="width: 80%;">提交</u-button>
|
|||
|
</view>
|
|||
|
<u-toast ref="uToast" />
|
|||
|
</view>
|
|||
|
</template>
|
|||
|
|
|||
|
<script>
|
|||
|
export default {
|
|||
|
data() {
|
|||
|
return {
|
|||
|
title: '',
|
|||
|
content: '',
|
|||
|
anonymous: false,
|
|||
|
doYouWantToEnableAnonymity: false,
|
|||
|
schoolId:'',
|
|||
|
};
|
|||
|
},
|
|||
|
async onLoad() {
|
|||
|
await this.getSchool();
|
|||
|
this.$u.api.CheckNM({
|
|||
|
schoolId: this.schoolId
|
|||
|
}).then(res => {
|
|||
|
if (res.data=== true||res=== true) {
|
|||
|
|
|||
|
this.doYouWantToEnableAnonymity = true;
|
|||
|
}else{
|
|||
|
|
|||
|
this.doYouWantToEnableAnonymity = false;
|
|||
|
}
|
|||
|
})
|
|||
|
},
|
|||
|
methods: {
|
|||
|
router() {
|
|||
|
uni.navigateBack({
|
|||
|
delta: 1
|
|||
|
});
|
|||
|
},
|
|||
|
// 获取学校
|
|||
|
async getSchool() {
|
|||
|
const req = {
|
|||
|
userId: this.vuex_user.id,
|
|||
|
};
|
|||
|
const res = await this.$u.apiList.MyEducations(req);
|
|||
|
console.log(res,'res---');
|
|||
|
const findRow = res.find(x=>x.isSelected === true)
|
|||
|
if(findRow){
|
|||
|
this.schoolId = findRow.schoolId
|
|||
|
}
|
|||
|
console.log(this.schoolId, 'this.schoolId--')
|
|||
|
// this.schoolId = res.filter(function (x) {
|
|||
|
// return x.isSelected === true
|
|||
|
// })[0]?.schoolId
|
|||
|
},
|
|||
|
submit() {
|
|||
|
if (this.title == '') {
|
|||
|
/* uni.showToast({
|
|||
|
title: '标题不能为空',
|
|||
|
icon: 'none'
|
|||
|
}); */
|
|||
|
this.$refs.uToast.show({
|
|||
|
title: '标题不能为空',
|
|||
|
type: 'error'
|
|||
|
});
|
|||
|
return;
|
|||
|
}
|
|||
|
if (this.content == '') {
|
|||
|
/* uni.showToast({
|
|||
|
title: '内容不能为空',
|
|||
|
icon: 'none'
|
|||
|
}); */
|
|||
|
this.$refs.uToast.show({
|
|||
|
title: '内容不能为空',
|
|||
|
type: 'error'
|
|||
|
});
|
|||
|
return;
|
|||
|
}
|
|||
|
uni.showLoading({
|
|||
|
title: '提交中'
|
|||
|
});
|
|||
|
|
|||
|
this.$u.api.PushWishDan({
|
|||
|
userId: this.vuex_user.id,
|
|||
|
title: this.title,
|
|||
|
context: this.content,
|
|||
|
isNM: this.anonymous,
|
|||
|
// schoolId: this.vuex_user.schoolId
|
|||
|
schoolId: this.schoolId
|
|||
|
}).then(res => {
|
|||
|
uni.hideLoading();
|
|||
|
/* uni.showToast({
|
|||
|
title: '提交成功',
|
|||
|
icon: 'none'
|
|||
|
}); */
|
|||
|
this.$refs.uToast.show({
|
|||
|
title: '提交成功',
|
|||
|
type: 'success'
|
|||
|
});
|
|||
|
setTimeout(() => {
|
|||
|
uni.navigateBack({
|
|||
|
delta: 1
|
|||
|
});
|
|||
|
}, 1000);
|
|||
|
|
|||
|
}).catch(e=>{
|
|||
|
/* uni.showToast({
|
|||
|
title: e.error || '提交失败',
|
|||
|
icon: 'none'
|
|||
|
}); */
|
|||
|
this.$refs.uToast.show({
|
|||
|
title: e.error || '提交失败',
|
|||
|
type: 'error'
|
|||
|
});
|
|||
|
})
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
</script>
|
|||
|
|
|||
|
<style lang="scss">
|
|||
|
.body {
|
|||
|
height: 100vh;
|
|||
|
background-color: #FFFFFF;
|
|||
|
}
|
|||
|
|
|||
|
.form {
|
|||
|
padding: 0 24rpx;
|
|||
|
|
|||
|
.formItem {
|
|||
|
padding: 24rpx 0 0;
|
|||
|
border-bottom: 0.01rem solid #EEEEEE;
|
|||
|
|
|||
|
.title {
|
|||
|
font-weight: 400;
|
|||
|
font-size: 0.16rem;
|
|||
|
color: #000000;
|
|||
|
line-height: 0.24rem;
|
|||
|
}
|
|||
|
|
|||
|
.input {
|
|||
|
font-weight: 400;
|
|||
|
font-size: 0.16rem;
|
|||
|
color: rgba(0, 0, 0, 0.4);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
.noBorder {
|
|||
|
border: none !important;
|
|||
|
}
|
|||
|
// 按钮
|
|||
|
.btn-box {
|
|||
|
position: fixed;
|
|||
|
width: 100%;
|
|||
|
bottom: 0;
|
|||
|
height: 150rpx;
|
|||
|
border-top: 1px solid #f1f2f6;
|
|||
|
display: flex;
|
|||
|
align-items: center;
|
|||
|
justify-content: center;
|
|||
|
background-color: white;
|
|||
|
}
|
|||
|
</style>
|