| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304 | 
							- // nova-werun/components/my/index.js
 
- const Parse = getApp().Parse;
 
- const company = getApp().globalData.company;
 
- const auth = require('../../service/auth.service')
 
- const uid = Parse?.User?.current()?.id
 
- let getSportData = require('../../service/getSportData')
 
- Component({
 
-   /**
 
-    * 组件的属性列表
 
-    */
 
-   properties: {
 
-   },
 
-   /**
 
-    * 组件的初始数据
 
-    */
 
-   data: {
 
-     //屏幕高度
 
-     statusBarHeight: 0, // 状态栏高度
 
-     screenHeight: 0, // 屏幕高度
 
-     customHeight: 0, // 自定义导航栏高度(如小程序右上角胶囊按钮)
 
-     bottomNavHeight: 0, // 底部导航栏高度
 
-     contentHeight: 0, // 可用内容高度
 
-     contentpadding: 0, //顶部padding高度
 
-     navheight: 0,
 
-     circlecount: 0,
 
-     likesCount: 0,
 
-     User1List: [],
 
-     profile1List2: [],
 
-     meChick: 0, //当前用户累计签到天数
 
-   },
 
-   lifetimes: {
 
-     detached: function () {
 
-       // 在组件实例被从页面节点树移除时执行
 
-     },
 
-     attached: async function () {
 
-       // 在组件实例进入页面节点树时执行
 
-       // 计算
 
-       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;
 
-       const contentpadding = (statusBarHeight + customHeight) * 750 / systemInfo.windowWidth;
 
-       const contentHeight = (screenHeight - bottomNavHeight - 50 - statusBarHeight - customHeight) * 750 / systemInfo.windowWidth;
 
-       const navheight = (statusBarHeight + customHeight) * 750 / systemInfo.windowWidth;
 
-       this.setData({
 
-         statusBarHeight,
 
-         screenHeight: (screenHeight - 50 - bottomNavHeight) * 750 / systemInfo.windowWidth,
 
-         customHeight,
 
-         bottomNavHeight,
 
-         contentHeight,
 
-         contentpadding,
 
-         navheight
 
-       });
 
-       this.getcircle()
 
-       this.getname()
 
-       this.getMeChick()
 
-     },
 
-   },
 
-   /**
 
-    * 组件的方法列表
 
-    */
 
-   methods: {
 
-     /**获取中部数据 */
 
-     async getMeChick() {
 
-       let meChick = await getSportData.getChickCount(uid, 'EventLog') || 0
 
-       this.setData({
 
-         meChick
 
-       })
 
-     },
 
-     gourl(e) {
 
-       const url = e.currentTarget.dataset.url
 
-       wx.navigateTo({
 
-         url: `${url}` // 目标页面的路径
 
-       });
 
-     },
 
-     gourl2(e) {
 
-       const type = e.currentTarget.dataset.type
 
-       const url = e.currentTarget.dataset.url
 
-       wx.navigateTo({
 
-         url: `${url}?type=` + type // 目标页面的路径
 
-       });
 
-     },
 
-     //查全部朋友圈
 
-     // async getcircle() {
 
-     //     const currentUser = Parse.User.current();
 
-     //     let Profilequery2 = new Parse.Query('Profile');
 
-     //     Profilequery2.equalTo('company', company);
 
-     //     Profilequery2.equalTo('user', currentUser.id);
 
-     //     Profilequery2.equalTo('isCheck', true);
 
-     //     Profilequery2.notEqualTo('isDeleted', true)
 
-     //     let P2 = await Profilequery2.find();
 
-     //     let profile1List2 = P2.map(item => item.toJSON());
 
-     //     let Profilequery = new Parse.Query('AIMoment');
 
-     //     Profilequery.equalTo('company', company);
 
-     //     Profilequery.equalTo('isVisible', true);
 
-     //     Profilequery.notEqualTo('isDeleted', true)
 
-     //     Profilequery.equalTo('profile', profile1List2[0].objectId);
 
-     //     Profilequery.descending('createdAt');
 
-     //     let count = await Profilequery.count();
 
-     //     if (count) {
 
-     //         this.setData({
 
-     //             circlecount: count
 
-     //         })
 
-     //     }
 
-     // },
 
-     async getcircle() {
 
-       const currentUser = Parse.User.current();
 
-       let Profilequery2 = new Parse.Query('Profile');
 
-       Profilequery2.equalTo('company', company);
 
-       Profilequery2.equalTo('user', currentUser?.id);
 
-       Profilequery2.equalTo('isCheck', true);
 
-       Profilequery2.notEqualTo('isDeleted', true);
 
-       Profilequery2.include('user');
 
-       Profilequery2.include('center');
 
-       Profilequery2.include('department');
 
-       let P2 = await Profilequery2.find();
 
-       let profile1List2 = P2.map(item => item.toJSON());
 
-       this.setData({
 
-         profile1List2,
 
-       })
 
-       console.log('信息', this.data.profile1List2);
 
-       let Profilequery = new Parse.Query('AIMoment');
 
-       Profilequery.equalTo('company', company);
 
-       Profilequery.equalTo('isVisible', true);
 
-       Profilequery.notEqualTo('isDeleted', true);
 
-       // Profilequery.equalTo('profile', profile1List2[0].objectId);
 
-       Profilequery.equalTo('user', currentUser.id);
 
-       Profilequery.descending('createdAt');
 
-       let moments = await Profilequery.find(); // 查找所有动态
 
-       if (moments.length) {
 
-         this.setData({
 
-           circlecount: moments.length
 
-         });
 
-         // 获取所有动态的ID
 
-         let momentIds = moments.map(moment => moment.id);
 
-         // 创建对 AIMomentLike 表的查询
 
-         let LikeQuery = new Parse.Query('AIMomentLike');
 
-         LikeQuery.equalTo('isLiked', true);
 
-         LikeQuery.equalTo('company', company);
 
-         LikeQuery.notEqualTo('isDeleted', true);
 
-         LikeQuery.containedIn('moment', momentIds); // 使用 containedIn 来一次性查询多个动态的点赞
 
-         // 统计点赞数量
 
-         let likesCount = await LikeQuery.count();
 
-         // 这里可以进一步处理 likesCount,按动态分配点赞数量
 
-         console.log(`总点赞数量: ${likesCount}`);
 
-         this.setData({
 
-           likesCount,
 
-         })
 
-       }
 
-     },
 
-     //查看积分
 
-     async getpoint() {
 
-     },
 
-     //获取头像名称
 
-     async getname() {
 
-       const currentUser = Parse.User.current();
 
-       let Userquery = new Parse.Query('_User');
 
-       Userquery.equalTo('company', company);
 
-       Userquery.equalTo('objectId', currentUser?.id);
 
-       Userquery.notEqualTo('isDeleted', true)
 
-       let P2 = await Userquery.find();
 
-       let User1List = P2.map(item => item.toJSON());
 
-       this.setData({
 
-         User1List
 
-       })
 
-       console.log(this.data.User1List);
 
-     },
 
-     /**退出登录 */
 
-     outLogin() {
 
-       wx.showModal({
 
-         title: '提示',
 
-         content: '你确定退出登录吗?',
 
-         showCancel: true,
 
-         cancelText: '取消',
 
-         cancelColor: '#000000',
 
-         confirmText: '确定',
 
-         confirmColor: '#3CC51F',
 
-         success: (result) => {
 
-           if (result.confirm) {
 
-             auth.logout()
 
-           }
 
-         },
 
-         fail: () => {},
 
-         complete: () => {}
 
-       });
 
-     },
 
-     gourl(e) {
 
-       const url = e.currentTarget.dataset.url
 
-       wx.navigateTo({
 
-         url: `${url}` // 目标页面的路径
 
-       });
 
-     },
 
-     /**隐私协议 */
 
-     async getArticle() {
 
-       let query = new Parse.Query("Article")
 
-       query.equalTo("company", company)
 
-       query.equalTo("type", 'home')
 
-       query.equalTo("isEnabled", true)
 
-       query.select("title", "attachment")
 
-       let res = await query.first()
 
-       if (res && res.id) {
 
-         let r = res.toJSON()
 
-         if (r.attachment && r.attachment.length > 0) {
 
-           this.setData({
 
-             attachment: r
 
-           })
 
-         }
 
-       }
 
-     },
 
-     //附件下载
 
-     async openFile() {
 
-       await this.getArticle()
 
-       let {
 
-         attachment
 
-       } = this.data
 
-       let url = attachment.attachment[0].url,
 
-         name = attachment.title
 
-       const _this = this
 
-       let rep = this.getFileType(url)
 
-       wx.showLoading({
 
-         title: '加载中',
 
-       })
 
-       wx.downloadFile({
 
-         url: url, //要预览的PDF的地址
 
-         filePath: wx.env.USER_DATA_PATH + `/${name}.${rep}`,
 
-         success: function (res) {
 
-           if (res.statusCode === 200) { //成功
 
-             var Path = res.filePath //返回的文件临时地址,用于后面打开本地预览所用
 
-             wx.openDocument({
 
-               filePath: Path, //要打开的文件路径
 
-               showMenu: true,
 
-               success: function (res) {
 
-                 wx.hideLoading()
 
-               },
 
-               fail: function (res) {
 
-                 wx.hideLoading()
 
-               }
 
-             })
 
-           }
 
-         },
 
-         fail: function (res) {
 
-           wx.hideLoading()
 
-         },
 
-       })
 
-     },
 
-     //解析文件类型
 
-     getFileType(url) {
 
-       let pdfReg = /^.+(\.pdf)$/
 
-       let txtReg = /^.+(\.txt)$/
 
-       let wordReg = /^.+(\.doc|\.docx)$/
 
-       let excelReg = /^.+(\.xls|\.xlsx)$/
 
-       let jpgPng = /^.+(\.png)$/
 
-       let jpgJpg = /^.+(\.jpg)$/
 
-       let jpgJpeg = /^.+(\.jpeg)$/
 
-       if (pdfReg.test(url)) {
 
-         return 'pdf'
 
-       }
 
-       if (txtReg.test(url)) {
 
-         return 'txt'
 
-       }
 
-       if (wordReg.test(url)) {
 
-         return 'doc'
 
-       }
 
-       if (excelReg.test(url)) {
 
-         return 'xls'
 
-       }
 
-       if (jpgPng.test(url)) {
 
-         return 'png'
 
-       }
 
-       if (jpgJpg.test(url)) {
 
-         return 'jpg'
 
-       }
 
-       if (jpgJpeg.test(url)) {
 
-         return 'jpeg'
 
-       }
 
-     },
 
-   }
 
- })
 
 
  |