You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
316 lines
8.5 KiB
316 lines
8.5 KiB
// pages/home/xx/xz/xz.js
|
|
const app = getApp();//新建页面时 默认引入
|
|
const req = app.xzjlReq();//初始化一个的request() 实例
|
|
|
|
Page({
|
|
|
|
/**
|
|
* 页面的初始数据
|
|
*/
|
|
data: {
|
|
to:'',
|
|
from:'',
|
|
content:'',
|
|
img:'https://wk921-1316969570.cos.ap-nanjing.myqcloud.com/xzimg.png',
|
|
messageList:[],
|
|
sound:'',
|
|
soundTime:0,
|
|
showBtn:true,
|
|
showImg:true,
|
|
showLtqp:true,
|
|
showImgBig:false, //图片太大弹层
|
|
showSoundMore:false, //语音太多提示
|
|
showSend:false, //寄出提示
|
|
Preview:false, //预览
|
|
showSound:false,
|
|
showAlready:false,
|
|
btn1:true,
|
|
btn2:false,
|
|
btn3:false
|
|
},
|
|
writeLetters(){
|
|
console.log('写信');
|
|
this.setData({
|
|
showImg:false,
|
|
showLtqp:false,
|
|
})
|
|
},
|
|
already(){
|
|
console.log('确定寄出');
|
|
this.setData({showAlready:true})
|
|
const list = this.data.messageList
|
|
list.push({
|
|
type: 'text',
|
|
content: this.data.content
|
|
})
|
|
const formData = {
|
|
from: this.data.from,
|
|
to: this.data.to,
|
|
messageList: list
|
|
}
|
|
console.log(formData);
|
|
req.putRequest('/api/user/curt/letter',{formData}).then(res => {
|
|
console.log(res);
|
|
})
|
|
},
|
|
closeShowImgBig(){
|
|
this.setData({showImgBig:false})
|
|
},
|
|
closeShowSoundMore(){
|
|
this.setData({showSoundMore:false})
|
|
},
|
|
openShowSend(){
|
|
this.setData({showSend:true})
|
|
},
|
|
closeShowSend(){
|
|
this.setData({showSend:false})
|
|
},
|
|
openPreview(){
|
|
console.log('预览');
|
|
this.setData({Preview:true})
|
|
},
|
|
ClearYl(){
|
|
console.log('清除语音');
|
|
// this.setData({showLtqp:false})
|
|
},
|
|
goBack(){
|
|
wx.redirectTo({
|
|
url: '/pages/home/xx/index',
|
|
})
|
|
},
|
|
ClearImg(){
|
|
console.log('清除图片');
|
|
const list = this.data.messageList.filter(item => {
|
|
return item.type !== "graphic"
|
|
})
|
|
this.setData({
|
|
img:'https://wk921-1316969570.cos.ap-nanjing.myqcloud.com/xzimg.png',
|
|
messageList: list
|
|
})
|
|
console.log(this.data.messageList);
|
|
},
|
|
// 上传图片
|
|
addImg(){
|
|
console.log('添加图片');
|
|
this.setData({
|
|
showImg:true
|
|
})
|
|
wx.chooseMedia({
|
|
mediaType: 'image',
|
|
success: (res) => {
|
|
const files = res.tempFiles[0]
|
|
if(files.size > 5 * 1024 * 1024 ){
|
|
this.setData({showImgBig:true})
|
|
}
|
|
this.uploadFile(res.tempFiles[0].tempFilePath,'poster')
|
|
}
|
|
})
|
|
},
|
|
uploadFile(file,type) {
|
|
wx.uploadFile({
|
|
url: 'https://xzjl-api.windymuse.cn/api/resource',
|
|
filePath: file,
|
|
name: 'file',
|
|
header: {
|
|
'Authorization': wx.getStorageSync('token'),
|
|
'Content-Type': 'multipart/form-data'
|
|
},
|
|
formData: {
|
|
type: type
|
|
},
|
|
success: (async(res) => {
|
|
const data = JSON.parse(res.data);
|
|
console.log(data);
|
|
if (data.data.type === 'audio') {
|
|
console.log('添加音频');
|
|
const list = this.data.messageList
|
|
const audio = this.data.messageList.filter(item => {
|
|
return item.type === 'audio'
|
|
})
|
|
// 判断语音条数大于3条
|
|
if(audio.length >= 3){
|
|
this.setData({showSoundMore:true})
|
|
}else {
|
|
list.push({
|
|
type: 'audio',
|
|
resourceId: data.data.id,
|
|
})
|
|
this.setData({
|
|
messageList: list
|
|
})
|
|
}
|
|
console.log(this.data.messageList);
|
|
|
|
} else if (data.data.type === 'poster') {
|
|
console.log('添加图片');
|
|
const list = this.data.messageList
|
|
list.push({
|
|
type: 'graphic',
|
|
resourceId: data.data.id
|
|
})
|
|
this.setData({
|
|
img:data.data.abUrl,
|
|
messageList:list
|
|
})
|
|
console.log(this.data.messageList);
|
|
}
|
|
}),
|
|
// success: async res => {
|
|
// let data = JSON.parse(res.data);
|
|
// console.log(data, '111111');
|
|
// if (data.code == 200) {
|
|
// this.setData({imgUrl:data.data.abUrl})
|
|
// console.log('打印1111')
|
|
// console.log(this.data.imgUrl)
|
|
// res.data = JSON.parse(res.data);
|
|
// console.log(res.data);
|
|
// if (res.data.code == 1) {
|
|
// console.log(res.data.data.url);
|
|
// this.img = this.baseUrl + res.data.data.url;
|
|
// 图片路径
|
|
// this.userinfo.avatar = res.data.data.url;
|
|
// let n = await this.$api.upload({ file: res.data.fullurl });
|
|
// console.log(n, '上传后');
|
|
// }
|
|
// }
|
|
// },
|
|
fail(res) {
|
|
console.log('上传失败');
|
|
}
|
|
});
|
|
},
|
|
openSound(){
|
|
console.log('添加声音');
|
|
this.setData({showSound:true,showLtqp:true})
|
|
},
|
|
closeSound(){
|
|
this.setData({showSound:false})
|
|
},
|
|
startSound(){
|
|
console.log('开始录音');
|
|
const time = setInterval(()=>{
|
|
this.setData({soundTime:this.data.soundTime + 1})
|
|
},1000)
|
|
this.setData({ timeId: time })
|
|
wx.startRecord({
|
|
success: (res) => {
|
|
console.log(res.tempFilePath);
|
|
this.setData({sound:res.tempFilePath,btn1:false,btn2:true})
|
|
}
|
|
})
|
|
},
|
|
endSound(){
|
|
console.log('结束录音');
|
|
wx.stopRecord()
|
|
clearInterval(this.data.timeId)
|
|
},
|
|
playVoice(){
|
|
console.log('播放录音');
|
|
this.setData({btn2:false,btn3:true})
|
|
wx.playVoice({
|
|
filePath: this.data.sound,
|
|
complete: () => {
|
|
console.log('录音播放结束');
|
|
this.setData({btn2:true,btn3:false})
|
|
}
|
|
});
|
|
},
|
|
addSound(){
|
|
console.log('添加录音');
|
|
this.uploadFile(this.data.sound,'audio')
|
|
this.setData({
|
|
btn1:true,
|
|
btn2:false,
|
|
btn3:false,
|
|
soundTime:0
|
|
})
|
|
// console.log(this.data.messageList);
|
|
},
|
|
delSound(){
|
|
console.log('不添加该条语音');
|
|
this.setData({
|
|
sound:'',
|
|
btn1:true,
|
|
btn2:false,
|
|
btn3:false,
|
|
soundTime:0
|
|
})
|
|
},
|
|
logout(){
|
|
req.deleteRequest('/api/user/logout',{}).then((res)=>{
|
|
if(res.data.code===200){
|
|
wx.navigateTo({
|
|
url: '/pages/index/index'
|
|
})
|
|
wx.showToast({
|
|
title:'寄出成功'
|
|
})
|
|
}
|
|
})
|
|
},
|
|
getLetter(){
|
|
console.log('获取当前用户信札内容');
|
|
req.getRequest('/api/user/curt/letter',{}).then(res => {
|
|
console.log(res);
|
|
this.setData({
|
|
to: res.data.data.to,
|
|
from: res.data.data.from,
|
|
})
|
|
})
|
|
},
|
|
/**
|
|
* 生命周期函数--监听页面加载
|
|
*/
|
|
onLoad(options) {
|
|
this.getLetter()
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面初次渲染完成
|
|
*/
|
|
onReady() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面显示
|
|
*/
|
|
onShow() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面隐藏
|
|
*/
|
|
onHide() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 生命周期函数--监听页面卸载
|
|
*/
|
|
onUnload() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 页面相关事件处理函数--监听用户下拉动作
|
|
*/
|
|
onPullDownRefresh() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 页面上拉触底事件的处理函数
|
|
*/
|
|
onReachBottom() {
|
|
|
|
},
|
|
|
|
/**
|
|
* 用户点击右上角分享
|
|
*/
|
|
onShareAppMessage() {
|
|
|
|
}
|
|
}) |