|
@@ -1,274 +1,259 @@
|
|
|
|
|
|
const Parse = getApp().Parse;
|
|
|
const company = getApp().globalData.company;
|
|
|
+const uid = Parse.User.current()?.id
|
|
|
+let getSportData = require('../../../service/getSportData')
|
|
|
+
|
|
|
Page({
|
|
|
|
|
|
-
|
|
|
- * 页面的初始数据
|
|
|
- */
|
|
|
- data: {
|
|
|
-
|
|
|
- statusBarHeight: 0,
|
|
|
- screenHeight: 0,
|
|
|
- customHeight: 0,
|
|
|
- bottomNavHeight: 0,
|
|
|
- contentHeight: 0,
|
|
|
- contentHeight2: 0,
|
|
|
- contentpadding: 0,
|
|
|
-
|
|
|
- inputValue: '',
|
|
|
- textareaHeight: 52,
|
|
|
-
|
|
|
- fileList: [],
|
|
|
- fileLists: [],
|
|
|
- uptokenURL: '',
|
|
|
- domain: '',
|
|
|
- uploadURL: '',
|
|
|
- saveimage: false,
|
|
|
- checked: false,
|
|
|
- address: '',
|
|
|
- },
|
|
|
+
|
|
|
+ * 页面的初始数据
|
|
|
+ */
|
|
|
+ data: {
|
|
|
+
|
|
|
+ statusBarHeight: 0,
|
|
|
+ screenHeight: 0,
|
|
|
+ customHeight: 0,
|
|
|
+ bottomNavHeight: 0,
|
|
|
+ contentHeight: 0,
|
|
|
+ contentHeight2: 0,
|
|
|
+ contentpadding: 0,
|
|
|
+
|
|
|
+ inputValue: '',
|
|
|
+ textareaHeight: 100,
|
|
|
+
|
|
|
+ fileList: [],
|
|
|
+ fileLists: [],
|
|
|
+ uptokenURL: '',
|
|
|
+ domain: '',
|
|
|
+ uploadURL: '',
|
|
|
+ saveimage: false,
|
|
|
+ checked: false,
|
|
|
+ address: '',
|
|
|
+ },
|
|
|
|
|
|
-
|
|
|
- * 生命周期函数--监听页面加载
|
|
|
- */
|
|
|
- onLoad: function (options) {
|
|
|
-
|
|
|
- const systemInfo = wx.getSystemInfoSync();
|
|
|
- const statusBarHeight = systemInfo.statusBarHeight || 0;
|
|
|
- const screenHeight = systemInfo.screenHeight || 0;
|
|
|
- const custom = wx.getMenuButtonBoundingClientRect();
|
|
|
- const customHeight = custom.height + 10 + 2 || 0;
|
|
|
- const bottomNavHeight = systemInfo.screenHeight - systemInfo.safeArea.bottom || 0;
|
|
|
+
|
|
|
+ * 生命周期函数--监听页面加载
|
|
|
+ */
|
|
|
+ onLoad: function (options) {
|
|
|
+ const images = []
|
|
|
+ images.push({
|
|
|
+ url: options.image
|
|
|
+ })
|
|
|
+ console.log('options.image', options.image);
|
|
|
+ if (options.image) {
|
|
|
+ this.setData({
|
|
|
+ fileList: images,
|
|
|
+ saveimage: true,
|
|
|
+ })
|
|
|
+ }
|
|
|
+ this.getUptoken()
|
|
|
+ },
|
|
|
|
|
|
- const contentpadding = (statusBarHeight + customHeight) * 750 / systemInfo.windowWidth;
|
|
|
- const contentHeight = (screenHeight - bottomNavHeight - statusBarHeight - customHeight) * 750 / systemInfo.windowWidth;
|
|
|
- this.setData({
|
|
|
- statusBarHeight,
|
|
|
- screenHeight,
|
|
|
- customHeight,
|
|
|
- bottomNavHeight,
|
|
|
- contentpadding,
|
|
|
- contentHeight
|
|
|
- });
|
|
|
- const images = []
|
|
|
- images.push({
|
|
|
- url: options.image
|
|
|
- })
|
|
|
- console.log('options.image', options.image);
|
|
|
- if (options.image) {
|
|
|
- this.setData({
|
|
|
- fileList: images,
|
|
|
- saveimage: true,
|
|
|
- })
|
|
|
- }
|
|
|
- this.getUptoken()
|
|
|
- },
|
|
|
+
|
|
|
+ async saveAIMoment() {
|
|
|
+ wx.showLoading({
|
|
|
+ title: '加载中',
|
|
|
+ })
|
|
|
+ let {
|
|
|
+ fileList,
|
|
|
+ inputValue,
|
|
|
+ checked,
|
|
|
+ address
|
|
|
+ } = this.data
|
|
|
+ console.log(fileList, inputValue, checked)
|
|
|
+ if (fileList?.length <= 0 && !inputValue) {
|
|
|
+ wx.showToast({
|
|
|
+ title: '内容为空',
|
|
|
+ icon: 'error'
|
|
|
+ })
|
|
|
+ wx.hideLoading()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ fileList=fileList?.map(item=>item.url)
|
|
|
+ let Profilequery = new Parse.Query('Profile');
|
|
|
+ Profilequery.equalTo('company', company);
|
|
|
+ Profilequery.equalTo('isCheck', true);
|
|
|
+ Profilequery.notEqualTo('isDeleted', true);
|
|
|
+ Profilequery.equalTo('user', uid);
|
|
|
+ let p = await Profilequery.first()
|
|
|
|
|
|
-
|
|
|
- * 生命周期函数--监听页面初次渲染完成
|
|
|
- */
|
|
|
- onReady: function () {
|
|
|
+ let AIMoment = Parse.Object.extend("AIMoment")
|
|
|
+ let mom = new AIMoment()
|
|
|
+ mom.set("company", {
|
|
|
+ __type: "Pointer",
|
|
|
+ className: 'Company',
|
|
|
+ objectId: company
|
|
|
+ })
|
|
|
+ mom.set("user", {
|
|
|
+ __type: "Pointer",
|
|
|
+ className: '_User',
|
|
|
+ objectId: uid
|
|
|
+ })
|
|
|
+ if (p?.id) {
|
|
|
+ mom.set("profile", {
|
|
|
+ __type: "Pointer",
|
|
|
+ className: 'Profile',
|
|
|
+ objectId: p?.id
|
|
|
+ })
|
|
|
+ mom.set("isVisible", true)
|
|
|
+ }
|
|
|
+ mom.set("content", inputValue || '')
|
|
|
+ mom.set("images", fileList || [])
|
|
|
+ checked && mom.set("location", address)
|
|
|
+ await mom.save()
|
|
|
+
|
|
|
+ setTimeout(() => {
|
|
|
+ wx.hideLoading()
|
|
|
+ wx.showToast({
|
|
|
+ title: `发表成功${p?.id?'':',等待审核'}`,
|
|
|
+ icon:'none'
|
|
|
+ })
|
|
|
+ wx.redirectTo({
|
|
|
+ url: '/nova-werun/pages/circle/my-circle/index'
|
|
|
+ })
|
|
|
+ }, 1000)
|
|
|
+ },
|
|
|
|
|
|
- },
|
|
|
|
|
|
-
|
|
|
- * 生命周期函数--监听页面显示
|
|
|
- */
|
|
|
- onShow: function () {
|
|
|
+
|
|
|
+ onChange(event) {
|
|
|
+ this.Getlocation()
|
|
|
+ this.setData({
|
|
|
+ checked: event.detail,
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+ Getlocation() {
|
|
|
+ wx.getLocation({
|
|
|
+ type: 'wgs84',
|
|
|
+ success: (res) => {
|
|
|
+ const {
|
|
|
+ latitude,
|
|
|
+ longitude
|
|
|
+ } = res;
|
|
|
+ wx.request({
|
|
|
+ url: 'https://api.map.baidu.com/reverse_geocoding/v3/?ak=sHZTomd7grslfP7sPKB8tRgT49FK9TEu&output=json&coordtype=gcj02&location=' + latitude + ',' + longitude,
|
|
|
+ data: {},
|
|
|
+ header: {
|
|
|
+ 'Content-Type': 'application/json'
|
|
|
+ },
|
|
|
+ success: (ops) => {
|
|
|
+ const address = ops.data.result.formatted_address;
|
|
|
+ this.setData({
|
|
|
+ address: address,
|
|
|
+ });
|
|
|
+ },
|
|
|
+ fail: function (resq) {
|
|
|
+ wx.showModal({
|
|
|
+ title: '信息提示',
|
|
|
+ content: '请求失败',
|
|
|
+ showCancel: false,
|
|
|
+ confirmColor: '#f37938'
|
|
|
+ });
|
|
|
+ },
|
|
|
+ complete: function () {}
|
|
|
+ })
|
|
|
|
|
|
- },
|
|
|
+ },
|
|
|
+ fail: (err) => {
|
|
|
+ console.error(err);
|
|
|
+ wx.showToast({
|
|
|
+ title: '获取位置失败',
|
|
|
+ icon: 'none'
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+ picture(event) {
|
|
|
+ let FileList = event.detail
|
|
|
+ this.setData({
|
|
|
+ fileList: FileList,
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ async getUptoken() {
|
|
|
+ let res = await Parse.Cloud.run('qiniu_uptoken', {
|
|
|
+ company: company
|
|
|
+ })
|
|
|
+ this.setData({
|
|
|
+ uptokenURL: res.uptoken,
|
|
|
+ domain: res.domain,
|
|
|
+ uploadURL: res.zoneUrl
|
|
|
+ })
|
|
|
+ console.log(this.data.uptokenURL, this.data.domain, this.data.uploadURL);
|
|
|
+ },
|
|
|
+
|
|
|
+ * 生命周期函数--监听页面初次渲染完成
|
|
|
+ */
|
|
|
+ onReady: function () {
|
|
|
|
|
|
-
|
|
|
- * 生命周期函数--监听页面隐藏
|
|
|
- */
|
|
|
- onHide: function () {
|
|
|
+ },
|
|
|
|
|
|
- },
|
|
|
+
|
|
|
+ * 生命周期函数--监听页面显示
|
|
|
+ */
|
|
|
+ onShow: function () {
|
|
|
|
|
|
-
|
|
|
- * 生命周期函数--监听页面卸载
|
|
|
- */
|
|
|
- onUnload: function () {
|
|
|
+ },
|
|
|
|
|
|
- },
|
|
|
+
|
|
|
+ * 生命周期函数--监听页面隐藏
|
|
|
+ */
|
|
|
+ onHide: function () {
|
|
|
|
|
|
-
|
|
|
- * 页面相关事件处理函数--监听用户下拉动作
|
|
|
- */
|
|
|
- onPullDownRefresh: function () {
|
|
|
+ },
|
|
|
|
|
|
- },
|
|
|
+
|
|
|
+ * 生命周期函数--监听页面卸载
|
|
|
+ */
|
|
|
+ onUnload: function () {
|
|
|
|
|
|
-
|
|
|
- * 页面上拉触底事件的处理函数
|
|
|
- */
|
|
|
- onReachBottom: function () {
|
|
|
+ },
|
|
|
|
|
|
- },
|
|
|
+
|
|
|
+ * 页面相关事件处理函数--监听用户下拉动作
|
|
|
+ */
|
|
|
+ onPullDownRefresh: function () {
|
|
|
|
|
|
-
|
|
|
- * 用户点击右上角分享
|
|
|
- */
|
|
|
- onShareAppMessage: function () {
|
|
|
+ },
|
|
|
|
|
|
- },
|
|
|
-
|
|
|
- onInput: function (event) {
|
|
|
- const value = event.detail.value;
|
|
|
- this.setData({
|
|
|
- inputValue: value,
|
|
|
- });
|
|
|
- console.log(this.data.inputValue);
|
|
|
- },
|
|
|
- async getUptoken() {
|
|
|
- let res = await Parse.Cloud.run('qiniu_uptoken', {
|
|
|
- company: company
|
|
|
- })
|
|
|
- this.setData({
|
|
|
- uptokenURL: res.uptoken,
|
|
|
- domain: res.domain,
|
|
|
- uploadURL: res.zoneUrl
|
|
|
- })
|
|
|
- console.log(this.data.uptokenURL, this.data.domain, this.data.uploadURL);
|
|
|
- },
|
|
|
-
|
|
|
- picture(event) {
|
|
|
- console.log('event', event);
|
|
|
- let FileList = event.detail
|
|
|
- this.setData({
|
|
|
- fileList: FileList,
|
|
|
- })
|
|
|
- console.log('图片', this.data.fileLists);
|
|
|
- },
|
|
|
-
|
|
|
- async send() {
|
|
|
- const currentUser = Parse.User.current();
|
|
|
- let Profilequery = new Parse.Query('Profile');
|
|
|
- Profilequery.equalTo('company', company);
|
|
|
- Profilequery.equalTo('isCheck', true);
|
|
|
- Profilequery.notEqualTo('isDeleted', true);
|
|
|
- Profilequery.equalTo('user', currentUser.id);
|
|
|
- let p = await Profilequery.first()
|
|
|
+
|
|
|
+ * 页面上拉触底事件的处理函数
|
|
|
+ */
|
|
|
+ onReachBottom: function () {
|
|
|
|
|
|
- let userequery = new Parse.Query('_User');
|
|
|
- userequery.equalTo('company', company);
|
|
|
- userequery.notEqualTo('isDeleted', true);
|
|
|
- userequery.equalTo('objectId', currentUser.id);
|
|
|
- let user = await userequery.first()
|
|
|
+ },
|
|
|
|
|
|
- let companyPointer = Parse.Object.extend('Company').createWithoutData(company);
|
|
|
- let Comment = new Parse.Object('AIMoment');
|
|
|
- if(p){
|
|
|
- Comment.set('profile', p.toPointer())
|
|
|
- Comment.set('isVisible', true);
|
|
|
- }
|
|
|
- Comment.set('company', companyPointer);
|
|
|
- Comment.set('user', user.toPointer());
|
|
|
-
|
|
|
- if (this.data.fileList.length > 0) {
|
|
|
- let url = []
|
|
|
- for (let i = 0; i < this.data.fileList.length; i++) {
|
|
|
- url.push(this.data.fileList[i].url)
|
|
|
- }
|
|
|
- this.setData({
|
|
|
- fileLists: url,
|
|
|
- })
|
|
|
- Comment.set('images', this.data.fileLists);
|
|
|
- }
|
|
|
- Comment.set('content', this.data.inputValue);
|
|
|
- if (this.data.checked) {
|
|
|
- Comment.set('location', this.data.address);
|
|
|
- }
|
|
|
- try {
|
|
|
- if (this.data.fileList.length == 0 && !this.data.inputValue) {
|
|
|
- console.log('新数据保存失败');
|
|
|
- } else {
|
|
|
- let saveDate2 = await Comment.save();
|
|
|
- console.log(saveDate2);
|
|
|
- console.log("新数据保存成功");
|
|
|
- wx.showToast({
|
|
|
- title: '发布成功',
|
|
|
- icon: 'success',
|
|
|
- duration: 1000
|
|
|
- });
|
|
|
- setTimeout(() => {
|
|
|
- this.goback()
|
|
|
- }, 1000)
|
|
|
- }
|
|
|
+
|
|
|
+ * 用户点击右上角分享
|
|
|
+ */
|
|
|
+ onShareAppMessage: function () {
|
|
|
|
|
|
+ },
|
|
|
+
|
|
|
+ onInput: function (event) {
|
|
|
+ const value = event.detail.value;
|
|
|
+ this.setData({
|
|
|
+ inputValue: value,
|
|
|
+ });
|
|
|
+ console.log(this.data.inputValue);
|
|
|
+ },
|
|
|
|
|
|
- } catch (error) {
|
|
|
- console.error("保存数据时出现错误:", error);
|
|
|
- }
|
|
|
|
|
|
|
|
|
- },
|
|
|
- async goback() {
|
|
|
- if (!this.data.saveimage) {
|
|
|
- let pages = getCurrentPages();
|
|
|
- console.log(pages);
|
|
|
- let prevpage = pages[pages.length - 2];
|
|
|
- console.log(prevpage);
|
|
|
- await prevpage.updateCom()
|
|
|
- }
|
|
|
- wx.navigateBack({
|
|
|
- delta: 1
|
|
|
- });
|
|
|
- },
|
|
|
-
|
|
|
- onChange(event) {
|
|
|
- this.setData({
|
|
|
- checked: event.detail,
|
|
|
- });
|
|
|
- console.log(this.data.checked);
|
|
|
- this.Getlocation()
|
|
|
- },
|
|
|
-
|
|
|
- Getlocation() {
|
|
|
-
|
|
|
- wx.getLocation({
|
|
|
- type: 'wgs84',
|
|
|
- success: (res) => {
|
|
|
- const {
|
|
|
- latitude,
|
|
|
- longitude
|
|
|
- } = res;
|
|
|
-
|
|
|
- wx.request({
|
|
|
- url: 'https://api.map.baidu.com/reverse_geocoding/v3/?ak=sHZTomd7grslfP7sPKB8tRgT49FK9TEu&output=json&coordtype=gcj02&location=' + latitude + ',' + longitude,
|
|
|
- data: {},
|
|
|
- header: {
|
|
|
- 'Content-Type': 'application/json'
|
|
|
- },
|
|
|
- success: (ops) => {
|
|
|
- console.log(ops);
|
|
|
-
|
|
|
- const address = ops.data.result.formatted_address;
|
|
|
- this.setData({
|
|
|
- address: address,
|
|
|
- });
|
|
|
- console.log(this.data.address);
|
|
|
- },
|
|
|
- fail: function (resq) {
|
|
|
- wx.showModal({
|
|
|
- title: '信息提示',
|
|
|
- content: '请求失败',
|
|
|
- showCancel: false,
|
|
|
- confirmColor: '#f37938'
|
|
|
- });
|
|
|
- },
|
|
|
- complete: function () {}
|
|
|
- })
|
|
|
+ async goback() {
|
|
|
+ if (!this.data.saveimage) {
|
|
|
+ let pages = getCurrentPages();
|
|
|
+ console.log(pages);
|
|
|
+ let prevpage = pages[pages.length - 2];
|
|
|
+ console.log(prevpage);
|
|
|
+ await prevpage.updateCom()
|
|
|
+ }
|
|
|
+ wx.navigateBack({
|
|
|
+ delta: 1
|
|
|
+ });
|
|
|
+ },
|
|
|
|
|
|
- },
|
|
|
- fail: (err) => {
|
|
|
- console.error(err);
|
|
|
- wx.showToast({
|
|
|
- title: '获取位置失败',
|
|
|
- icon: 'none'
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
- },
|
|
|
})
|