const app = getApp() Page({ data: { id: '', detail: {} as any, content: '', next: null as any, }, onLoad(options: any) { if (options.id) { this.setData({ id: options.id }) app.waitLogin({ type: 'any' }).then(() => { this.getDetail(options.id) this.addViewRecord(options.id) }) } }, getDetail(id: string) { wx.ajax({ method: 'GET', url: '?r=psvt/pic-text/detail', data: { Id: id }, }).then((res: any) => { this.setData({ detail: res || {}, content: res.Content || '', next: res.Next || null, }) }) }, addViewRecord(id: string) { wx.ajax({ method: 'POST', url: '?r=psvt/pic-text/view', data: { ContentId: Number(id) }, }) }, handleCompliment() { if (!app.checkLoginType(1)) return const { detail, id } = this.data if (detail.IsCompliment) return wx.ajax({ method: 'POST', url: '?r=psvt/pic-text/compliment', data: { ContentId: Number(id) }, }).then(() => { this.setData({ 'detail.IsCompliment': 1, 'detail.ComplimentNum': (detail.ComplimentNum || 0) + 1, }) }) }, handleCollect() { if (!app.checkLoginType(1)) return const { detail, id } = this.data if (detail.IsCollect) { wx.ajax({ method: 'POST', url: '?r=psvt/pic-text/cancel-collection', data: { ContentId: Number(id) }, }).then(() => { this.setData({ 'detail.IsCollect': 0, 'detail.CollectionPeopleNum': Math.max(0, (detail.CollectionPeopleNum * 1 || 0) - 1), }) }) } else { wx.ajax({ method: 'POST', url: '?r=psvt/pic-text/collection', data: { ContentId: Number(id) }, }).then(() => { this.setData({ 'detail.IsCollect': 1, 'detail.CollectionPeopleNum': (detail.CollectionPeopleNum * 1 || 0) + 1, }) }) } }, handleShare() { const { detail, id } = this.data wx.ajax({ method: 'POST', url: '?r=psvt/pic-text/share', data: { ContentId: Number(id) }, }).then(() => { this.setData({ 'detail.IsShare': 1, 'detail.ShareNum': (detail.ShareNum * 1 || 0) + 1, }) }) }, handleNext() { const { next } = this.data if (!next) return wx.redirectTo({ url: `/pages/articleDetail/index?id=${next.Id}`, }) }, handleRecommendTap(e: any) { const { id } = e.currentTarget.dataset wx.navigateTo({ url: `/pages/articleDetail/index?id=${id}`, }) }, onShareAppMessage() { const { detail } = this.data this.handleShare() return { title: detail.Title || '图文详情', path: `/pages/articleDetail/index?id=${this.data.id}`, } }, }) export {}