| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180 | // nova-werun/components/my/index.jsconst Parse = getApp().Parse;const company = getApp().globalData.company;Component({    /**     * 组件的属性列表     */    properties: {    },    /**     * 组件的初始数据     */    data: {        //屏幕高度        statusBarHeight: 0, // 状态栏高度        screenHeight: 0, // 屏幕高度        customHeight: 0, // 自定义导航栏高度(如小程序右上角胶囊按钮)        bottomNavHeight: 0, // 底部导航栏高度        contentHeight: 0, // 可用内容高度        contentpadding: 0, //顶部padding高度        navheight:0,        circlecount: 0,        likesCount:0,        User1List:[],        profile1List2:[]    },    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()        },    },    /**     * 组件的方法列表     */    methods: {        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.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);        },        gourl(e) {            const url = e.currentTarget.dataset.url            wx.navigateTo({                url: `${url}`// 目标页面的路径            });        },    }})
 |