syshxcx/pages/neighbor/circle/circleDetail.js
dong_bo0602 a1f9e23f6d 0607
2022-06-07 15:43:05 +08:00

327 lines
7.7 KiB
JavaScript

// pages/neighbor/circle/circleDetail.js
const app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
token: app.globalData.token,
sourceUrl: app.baseUrls.sourceUrl,
neighborCircleId: '',
circleDetail: {},
serviceUrl: app.baseUrls.serviceUrl,
baseImgUrl: app.baseUrls.baseImgUrl,
userIcon: '',
userName: '',
reply: '',
goodCount: 0,
isClickedGood: 'no',
isGetFocus: false,
placeholder: '写评论',
replyTo: '',
replyUserName: '',
isLoading: false
},
getCircleDetai: function () {
var self = this
app.restAjax.get(app.restAjax.path(app.apis.getCircleDetail, [app.baseUrls.requestUrl, self.data.neighborCircleId]), {}, {
headers: {
token: self.data.token
}
}, function (code, data) {
if (data.photo) {
data.photo = data.photo.split(',')
}
self.setData({
circleDetail: data
})
}, function (code, data) {
console.log(data)
})
},
doReplyCircle: function () {
var self = this
if (!self.data.isLoading) {
var info = {
content: self.data.reply,
headPortrait: self.data.userIcon,
neighborCircleId: self.data.neighborCircleId,
userName: self.data.userName
}
self.setData({
isLoading: true
})
app.restAjax.post(app.restAjax.path(app.apis.submitCircleReply, [app.baseUrls.requestUrl]), info, {
headers: {
token: self.data.token
}
}, function (code, data) {
if (code == '200') {
self.setData({
isLoading: false
})
wx.showToast({
title: '回复成功!',
icon: 'success'
})
self.getReplyList()
self.setData({
reply: '',
replyTo: '',
replyUserName: '',
placeholder: '讨论一下'
})
}
}, function (code, data) {
console.log(data)
self.setData({
isLoading: false
})
})
}
},
getReplyList: function () {
var self = this
app.restAjax.get(app.restAjax.path(app.apis.getCircleReplyList, [app.baseUrls.requestUrl]), {
neighborCircleId: self.data.neighborCircleId
}, {
headers: {
token: self.data.token
}
}, function (code, data) {
self.setData({
replyList: data
})
}, function (code, data) {
console.log(data)
})
},
clickGood: function () {
var self = this
var info = {
headPortrait: self.data.userIcon,
userName: self.data.userName,
neighborCircleId: self.data.neighborCircleId
}
app.restAjax.post(app.restAjax.path(app.apis.circleClickGood, [app.baseUrls.requestUrl]), info, {
headers: {
token: self.data.token
}
}, function (code, data) {
if (code == '200') {
self.getGoodCount()
self.getIsClicked()
}
console.log(data)
}, function (code, data) {
console.log(data)
})
},
getGoodCount: function () {
var self = this
app.restAjax.get(app.restAjax.path(app.apis.getCircleGoodCount, [app.baseUrls.requestUrl]), {
neighborCircleId: self.data.neighborCircleId
}, {
headers: {
token: self.data.token
}
}, function (code, data) {
self.setData({
goodCount: data.data
})
console.log(data)
}, function (code, data) {
console.log(data)
})
},
getIsClicked: function () {
var self = this
app.restAjax.get(app.restAjax.path(app.apis.circleIsClicked, [app.baseUrls.requestUrl, self.data.neighborCircleId]), {}, {
headers: {
token: self.data.token
}
}, function (code, data) {
self.setData({
isClickedGood: data
})
console.log(data)
}, function (code, data) {
console.log(data)
})
},
toggleGood: function () {
if (this.data.isClickedGood == 'yes') {
this.cancelGood()
} else {
this.clickGood()
}
},
cancelGood: function () {
var self = this
app.restAjax.delete(app.restAjax.path(app.apis.cancelGood, [app.baseUrls.requestUrl, self.data.neighborCircleId]), {}, {
headers: {
token: self.data.token
}
}, function (code, data) {
if (code == '200') {
self.getIsClicked()
self.getGoodCount()
}
console.log(data)
}, function (code, data) {
console.log(data)
})
},
// 输入评论
getFocus: function (e) {
var user = e.currentTarget.dataset.user
var replyTo = e.currentTarget.dataset.id
var name = e.currentTarget.dataset.name
console.log(replyTo)
this.setData({
isGetFocus: true,
placeholder: '回复' + user + ':',
replyTo: replyTo,
replyUserName: name
})
},
// 输入框失去焦点判断文字
inputBlur: function () {
if (!this.data.reply) {
this.setData({
placeholder: '讨论一下',
isGetFocus: false
})
}
},
// 确认回复
doReply: function () {
if (!this.data.replyTo) {
this.doReplyCircle()
} else {
this.doReplyReply()
}
},
// 回复
doReplyReply: function () {
var self = this
if (!self.data.isLoading) {
var info = {
content: self.data.reply,
headPortrait: self.data.userIcon,
userName: self.data.userName,
neighborCircleId: self.data.neighborCircleId,
replyCommentId: self.data.replyTo,
replyNeighborCircleCommentId: self.data.replyTo,
replyUserName: self.data.replyUserName
}
self.setData({
isLoading: true
})
app.restAjax.post(app.restAjax.path(app.apis.submitCircleReply, [app.baseUrls.requestUrl]), info, {
headers: {
token: self.data.token
}
}, function (code, data) {
if (code == '200') {
self.setData({
isLoading: false
})
wx.showToast({
title: '评论成功!',
icon: 'success'
})
self.getReplyList()
self.setData({
reply: '',
replyTo: '',
replyUserName: '',
placeholder: '讨论一下'
})
}
}, function (code, data) {
console.log(data)
self.setData({
isLoading: false
})
})
}
},
viewImg: function (e) {
var id = this.data.serviceUrl + this.data.baseImgUrl + e.currentTarget.dataset.id
var arr = []
for (let i = 0; i < this.data.circleDetail.photo.length; i++) {
var video = this.data.serviceUrl + this.data.baseImgUrl + this.data.circleDetail.photo[i]
arr.push(video)
}
wx.previewImage({
current: id,
urls: arr,
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.setData({
neighborCircleId: options.neighborCircleId,
userIcon: wx.getStorageSync('userIcon'),
userName: wx.getStorageSync('name')
})
this.getCircleDetai()
this.getReplyList()
this.getGoodCount()
this.getIsClicked()
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})