2025-07-21 22:10:59 +08:00
|
|
|
"use strict";const t=require("../../../common/vendor.js"),e=require("../../../components/ChatId.js"),i=require("../../../components/TimeFormatting.js"),s=require("../../../components/request.js"),o=require("../../../components/goEasyTool/tool.js"),n={data:()=>({userId:"",nickname:"",avatar:"",chatList:[],userinfo:{},ButtonStatus:!1,MoreStatus:!1,KeyboardHeight:0,content:"",MoreItemStatus:null,ioshide:0,ElementPositioning:null,scrollviewheight:0,Elementheight:0,Scrolling:!1,scrollTop:0,judgescrollTop:!1,onPage:!1,timer:null,lastTimestamp:null,LastTime:null,MoreMessageList:[],Record:null,myitem:null,youritem:null,type:null,popUpList:[{name:"邀请",icon:"https://vv-1317974657.cos.ap-shanghai.myqcloud.com/util/chat_invite.png",type:"Invitation"}]}),onShow(){this.onPage=!0,t.index.onKeyboardHeightChange((t=>{this.KeyboardHeight=2*t.height-this.ioshide}))},onHide(){this.onPage=!1},onLoad(i){t.index.getStorage({key:"userinfo",success:t=>{this.userinfo=t.data}}),this.userId=i.userId,this.nickname=i.nickname,this.avatar=i.avatar,this.type=i.type;try{this.myitem=JSON.parse(i.myitem),this.youritem=JSON.parse(i.youritem)}catch(n){}"pk"==this.type&&setTimeout((()=>{this.sendCustomMessage()}),500),o.getConversationMessages(this.$goeasy,this.userId,null).then((i=>{this.chatList=i.map((t=>(t.id=e.generateId(),t.timestampStatus=this.checkInterval(t.timestamp),t))),setTimeout((()=>{this.chatList.length>0?(this.ElementPositioning=this.chatList[this.chatList.length-1].id,this.LastTime=this.chatList[0].timestamp):t.index.showToast({title:"您和对方暂无聊天记录,快去聊天吧",icon:"none",duration:2e3})}),300);t.index.createSelectorQuery().in(this).select(".inputComponent").boundingClientRect((t=>{this.Elementheight=2*t.height})).exec()})),o.messageRead(this.$goeasy,this.userId).then((t=>{console.log("已读对方的消息")})),this.getIOSDeviceType();var s=this.$goeasy.im;s.on(t.jo.IM_EVENT.PRIVATE_MESSAGE_RECEIVED,this.onPrivateMessageReceived),s.on(t.jo.IM_EVENT.MESSAGE_READ,this.onMessageRead),this.getscrollviewheight()},methods:{sendCustomMessage(){s.request({url:"pk/createPkRecord",method:"POST",data:{pkIdA:this.youritem.id,pkIdB:this.myitem.id,userIdA:this.userId,userIdB:this.userinfo.id,pkTime:this.youritem.pkTime,pkNumber:this.youritem.pkNumber,anchorIdA:this.youritem.anchorId,anchorIdB:this.myitem.anchorId,anchorIconA:this.youritem.anchorIcon,anchorIconB:this.myitem.anchorIcon,piIdA:this.youritem.id,piIdB:this.myitem.id},userInfo:!0}).then((i=>{if(200==i.code){let s={customData:{id:i.data.id,pkIdA:this.youritem.id,pkIdB:this.myitem.id},link:"https://vv-1317974657.cos.ap-shanghai.myqcloud.com/util/pk.png",text:"PK邀请消息"};o.sendCustomMessage(this.$goeasy,this.type,this.userId,s,this.avatar,this.nickname).then((i=>{this.ElementPositioning=i.id=e.generateId(),i.timestampStatus=this.checkInterval(i.timestamp),this.chatList.push(i),t.index.showToast({title:"发送成功",icon:"none"})}))}else t.index.showToast({title:i.msg,icon:"none"})}))},checkInterval(t){if(!this.lastTimestamp)return this.lastTimestamp=t,!0;return t-this.lastTimestamp>=3e5&&(this.lastTimestamp=t,!0)},TimeFormatting:i.TimeFormatting,getscrollviewheight(){t.index.createSelectorQuery().in(this).select(".scroll").boundingClientRect((t=>{this.scrollviewheight=t.height})).exec()},onScroll(t){this.judgescrollTop?this.scrollTop-t.detail.scrollTop>this.scrollviewheight?this.Scrolling=!0:this.scrollTop-t.detail.scrollTop<this.scrollviewheight&&(this.Scrolling=!1):(this.scrollTop=t.detail.scrollTop,this.judgescrollTop=!0)},onScrollToUpper(){this.lastTimestamp=null,o.getConversationMessages(this.$goeasy,this.userId,this.LastTime).then((t=>{this.Record=this.chatList[0].id,this.MoreMessageList=t.map((t=>(t.id=e.generateId(),t.timestampStatus=this.checkInterval(t.timestamp),t)))})),setTimeout((()=>{this.chatList=[...this.MoreMessageList,...this.chatList],console.log("获取更多聊天记录",this.chatList),this.LastTime=this.chatList[0].timestamp,this.ElementPositioning=this.Record}),300)},onMessageRead(t){console.log("1已读消息",t)},onPrivateMessageReceived
|