wk-dev
Wkang921 2 years ago
parent 74f9cb9902
commit 2c84bdb967

@ -18,4 +18,9 @@
page {
width: 100%;
height: 100%;
overflow: hidden;
}
view {
box-sizing: border-box;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 758 KiB

@ -33,7 +33,9 @@ Page({
showScsEnergy:false, //显示注册成功提示
showTiming:false, //显示祈祷时间弹层
jmEnergy:false,
showInjectBkc: false //显示注入能量按钮动画
jmEnergy2: true,
showInjectBkc: false, //显示注入能量按钮动画
inPrayer: true
},
ShowOrNotLogoS(){
this.setData({singleShow:!this.data.singleShow})
@ -52,7 +54,7 @@ Page({
this.doSetXxt('female')
},
closeJmEnergy(){
this.setData({jmEnergy: false})
this.setData({jmEnergy2: false})
},
doSetXxt(e){
req.patchRequest('/api/user/curt',{spriteType:e}).then((res)=>{
@ -87,10 +89,14 @@ Page({
const userType = this.data.userInfo.constellation
const loveType = this.data.loverInfo.constellation
this.setData({
xingxiangtu: horoscopes[userType].sprite,
xingxiangtuLove: horoscopes[loveType].sprite,
elfAvatar: horoscopes[userType][`elf-avatar`]
xingxiangtu: horoscopes[userType],
})
if (loveType) {
this.setData({
xingxiangtuLove: horoscopes[loveType],
})
}
},
ShowOrNotLogo(){
this.setData({showSexLogo:!this.data.showSexLogo})
@ -99,6 +105,27 @@ Page({
req.getRequest('/api/user/curt/lover',{}).then((res)=>{
if(res.data.code==200){
this.setData({loverInfo:res.data.data})
// 获取已经祈祷时间
const now = new Date();
const startTime = new Date(res.data.data.prayerStartTime)
const diff = now.getTime() - startTime.getTime();
const hour = Math.floor(diff / (1000 * 60 * 60));
const minutes = Math.floor((diff % (1000 * 60 * 60)) / (1000 * 60));
const seconds = Math.floor((diff % (1000 * 60)) / 1000);
const formattedTime = `${hour.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')}`;
// 获取结束祈祷返回能量
const nowTime = new Date();
const endTime = new Date(res.data.data.prayerEndTime)
const TimeDiff = endTime.getTime() - nowTime.getTime();
// 判断是否正在祈祷
if (res.data.data.isInPrayer) {
this.setData({
prayTime: formattedTime,
energy: Math.floor(TimeDiff / 360000),
})
}
}
}).catch((err)=>{
console.log(err);
@ -128,7 +155,7 @@ Page({
})
},
openPray(){
if(this.data.userInfo.prayerEndTime){
if(this.data.userInfo.isInPrayer){
this.setData({
showIsPray:!this.data.showIsPray
})
@ -164,7 +191,7 @@ Page({
})
const touchTimer = setTimeout(() => {
this.setData({
showInject:!this.data.showInject
showInject:!this.data.showInject,
})
}, 3000);
this.setData({
@ -183,6 +210,17 @@ Page({
},
// 注入晶石
btnInject(){
// 判断之前加持是否已结束
if (this.data.userInfo.pendantLuckInBlessing) {
wx.showToast({
title: '吊坠能量加持未结束',
icon: 'none'
})
return this.setData({
showInject: false
})
}
// 判断是否有能量
if (this.data.userInfo.crystallineEnergy) {
this.setData({
@ -217,11 +255,10 @@ Page({
}else{
console.log('没有能量');
this.setData({showInject: false})
Toast({
context: this,
selector: '#t-toast',
message: '能量不足',
});
wx.showToast({
title: '能量不足',
icon: 'error'
})
}
},
// 关闭注入弹层
@ -241,10 +278,14 @@ Page({
const nowTime = new Date();
const endTime = new Date(res.data.data.prayerEndTime)
const TimeDiff = endTime.getTime() - nowTime.getTime();
this.setData({
prayTime: formattedTime,
energy: Math.floor(TimeDiff / 360000)
})
// 判断是否正在祈祷
if (res.data.data.isInPrayer) {
this.setData({
prayTime: formattedTime,
energy: Math.floor(TimeDiff / 360000),
})
}
const pendantEnergy = res.data.data.crystallineEnergy
const hours = Math.floor(pendantEnergy * 6 / 60); // 计算小时数
@ -260,7 +301,7 @@ Page({
})
}
// 能集满显示提示
// 集满显示提示
if(res.data.data.crystallineEnergy >= 100){
this.setData({jmEnergy: true})
}
@ -271,6 +312,14 @@ Page({
minute:minute,
pendantEnergy:pendantEnergy
})
// 判断运势加持是否结束
const endSeconds = new Date(res.data.data.pendantLuckyEndTime)
const nowSeconds = new Date()
if (endSeconds > nowSeconds) {
this.getYsTime(res.data.data.pendantLuckyStartTime)
}
this.getXxObj()
// console.log(this.data.userInfo);
}
@ -278,6 +327,26 @@ Page({
console.log(err);
})
},
// 计算运势已加持时间
getYsTime(milliseconds){
const statrSeconds = new Date(milliseconds)
const nowSeconds = new Date()
const nowTime = nowSeconds - statrSeconds
const hours = Math.floor(nowTime / 1000 / 3600);
const minutes = Math.floor(nowTime / 1000 / 60 - (hours * 60)) ;
const seconds = Math.floor(nowTime / 1000 - (hours * 3600) - (minutes * 60));
const formattedHours = String(hours).padStart(2, '0');
const formattedMinutes = String(minutes).padStart(2, '0');
const formattedSeconds = String(seconds).padStart(2, '0');
const time = `${formattedHours}:${formattedMinutes}:${formattedSeconds}`
this.setData({ydTime: time})
},
go2Jlai(){
wx.navigateTo({
url: '/pages/home/jl/jlai/jlai'
@ -286,49 +355,49 @@ Page({
btnOK(){
const prayerEnergy = (this.data.pickerValue[0]*60 + this.data.pickerValue[1])/6
if(this.data.pickerValue[0] === 0 && this.data.pickerValue[1] <= 5){
wx.showToast({
return wx.showToast({
title: '祈祷时间不能小于五分钟',
icon: 'none'
})
}
if(this.data.userInfo.crystallineEnergy < 1){
return Toast({
context: this,
selector: '#t-toast',
message: '能量不足',
return wx.showToast({
title: '能量不足',
icon: 'none'
});
}
if(this.data.prayerContent === ''){
return Toast({
context: this,
selector: '#t-toast',
message: '祈祷内容不能为空',
return wx.showToast({
title: '祈祷内容不能为空',
icon: 'none'
});
}
if(this.data.prayerContent.length > 11){
return Toast({
context: this,
selector: '#t-toast',
message: '祈祷内容不能超过11个字',
return wx.showToast({
title: '祈祷内容不能超过11个字',
icon: 'none'
});
}
req.patchRequest('/api/user/curt/prayer',{
prayerContent:this.data.prayerContent,
prayerEnergy:prayerEnergy
}).then((res) => {
if (res.data.code === 1002) {
return wx.showToast({
title: 'Ta正在为你祈祷中请在祈祷结束后再试试~',
icon: 'none'
})
}
if(res.data.code === 200){
Toast({
context: this,
selector: '#t-toast',
message: '祈祷成功',
});
}else{
Toast({
context: this,
selector: '#t-toast',
message: res.data.msg,
});
}
this.getUserInfo()
this.openPray()
}).catch((err) => {
@ -424,7 +493,7 @@ Page({
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
this.getXxObj()
},
/**
@ -432,6 +501,16 @@ Page({
*/
onShow() {
this.getUserInfo()
this.getXxObj()
const time = setInterval(() => {
this.getUserInfo()
this.getUserLoverInfo()
}, 1000);
this.setData({
setInterval: time
})
},
/**
@ -439,6 +518,7 @@ Page({
*/
onHide() {
this.getUserInfo()
clearInterval(this.data.setInterval)
},
/**
@ -446,6 +526,7 @@ Page({
*/
onUnload() {
this.getUserInfo()
clearInterval(this.data.setInterval)
},
/**

@ -1,30 +1,32 @@
<swiper class="call" bindtap="closeEnergy" current="{{swiperIndex}}" circular bindchange="swiperChange">
<swiper wx:if="{{userInfo.loverId}}" class="call" bindtap="closeEnergy" current="{{swiperIndex}}" circular bindchange="swiperChange">
<t-toast id="t-toast" />
<!--情侣页面-->
<swiper-item class="call1" wx:if='{{userInfo.loverId}}'>
<swiper-item class="call1">
<!--未祈祷头像名字-->
<view class="call1-header" wx:if="{{ !userInfo.prayerEndTime }}">
<view class="call1-header" wx:if="{{ !userInfo.isInPrayer && !loverInfo.isInPrayer}}">
<!-- 我的名字和头像 -->
<view class="txtextl">{{userInfo.nick}}</view>
<t-image class="txl" src="{{userInfo.avatar}}"></t-image>
<t-image class="txl" src="{{userInfo.avatar ? userInfo.avatar : xingxiangtu['elf-avatar']}}"></t-image>
<view class="jiuchan"></view>
<!-- 情侣名字和头像 -->
<t-image class="txr" shape="circle" src="{{loverInfo.avatar}}"></t-image>
<t-image class="txr" shape="circle" src="{{loverInfo.avatar ? loverInfo.avatar : xingxiangtuLove['elf-avatar']}}"></t-image>
<view class="txtextr">{{loverInfo.nick}}</view>
</view>
<!--已祈祷头像名字-->
<view class="call1-header" wx:else>
<t-image class="txl" src="{{userInfo.avatar}}"></t-image>
<t-image class="txl" src="{{userInfo.avatar ? userInfo.avatar : xingxiangtu['elf-avatar']}}"></t-image>
<view class="txtextl-qd">
<t-icon name="chevron-right-double" size="24" color="#DE868F"/>
<view class="text-qd">
<view class="top">{{ userInfo.prayerContent }}</view>
<view>你已为Ta祈祷 {{prayTime}}</view>
<view wx:if="{{userInfo.isInPrayer}}" class="top">{{ userInfo.prayerContent }}</view>
<view wx:if="{{loverInfo.isInPrayer}}" class="top">{{ loverInfo.prayerContent }}</view>
<view wx:if="{{userInfo.isInPrayer}}">你已为Ta祈祷 {{prayTime}}</view>
<view wx:if="{{loverInfo.isInPrayer}}">Ta已为你祈祷 {{prayTime}}</view>
</view>
<t-icon name="chevron-right-double" size="24" color="#DE868F"/>
</view>
<t-image class="txr" shape="circle" src="{{loverInfo.avatar}}"></t-image>
<t-image class="txr" shape="circle" src="{{loverInfo.avatar ? loverInfo.avatar : xingxiangtuLove['elf-avatar']}}"></t-image>
</view>
<!-- 精灵图片 -->
<view class="bkg1">
@ -35,7 +37,7 @@
<view class="xxt" bindtap="ShowOrNotLogo">
<!--左侧人形象-->
<view class="xxtl" bindtap="ShowOrNotLogoS">
<image mode="heightFix" src="{{xingxiangtu[userInfo.spriteType]}}"></image>
<image mode="heightFix" src="{{xingxiangtu.sprite[userInfo.spriteType]}}"></image>
<!-- 形态切换 -->
<view class="xxtl-xt1" wx:if="{{singleShow}}">
<view class="yanql1" bindtap="doSetXxtFemale">
@ -51,7 +53,7 @@
</view>
<!--右侧人形象-->
<view class="xxtr" bindtap="ShowOrNotLogoL">
<image mode="heightFix" src="{{xingxiangtuLove[loverInfo.spriteType]}}"></image>
<image mode="heightFix" src="{{xingxiangtuLove.sprite[loverInfo.spriteType]}}"></image>
<!-- 形态切换 -->
<view class="xxtr-xt2" wx:if="{{loverShow}}">
<view class="yanql4" bindtap="doSetXxtFemaleS">
@ -82,7 +84,7 @@
percentage="{{userInfo.crystallineEnergy}}"
color="#f76229" label=""
t-class-bar="dcleft1"
stroke-width="10rpx"
stroke-width="8rpx"
/>
<view class="dcbs"></view>
<view class="dclefttxt">{{userInfo.crystallineEnergy}}%</view>
@ -90,7 +92,7 @@
<!--中间祈祷-->
<view class="call1-btn-qd">
<view class="lovepic" bindtap="openPray"></view>
<view class="dchxtxtql" bindtap="openPray" wx:if="{{ !userInfo.prayerEndTime }}">祈祷</view>
<view class="dchxtxtql" bindtap="openPray" wx:if="{{ !userInfo.isInPrayer }}">祈祷</view>
<view class="dchxtxtql" bindtap="openPray" wx:else>结束祈祷</view>
</view>
<!--右侧图标-->
@ -103,7 +105,7 @@
color="#00A7FF"
label=""
t-class-bar="dcleft1"
stroke-width="10rpx"
stroke-width="8rpx"
/>
<view class="dcrbs" bindtap="openEnergy"></view>
</view>
@ -116,9 +118,17 @@
<swiper-item class="call1">
<!--头像名字-->
<view class="call1-header">
<image class="tx" src="{{userInfo.avatar ? userInfo.avatar : elfAvatar}}"></image>
<image class="tx" src="{{userInfo.avatar ? userInfo.avatar : xingxiangtu['elf-avatar']}}"></image>
<view class="txtext">{{userInfo.nick ? userInfo.nick : userInfo.constellation}}</view>
<!-- 运势加持 -->
<view class="ysjc" wx:if="{{userInfo.pendantLuckInBlessing}}">
<t-icon name="chevron-right-double" size="24" color="#DE868F"/>
<view class="ys-time">运势已加持 {{ydTime}}</view>
<t-icon name="chevron-right-double" size="24" color="#DE868F"/>
</view>
</view>
<!-- 精灵图片 -->
<view class="bkg1">
<view class="bkg2">
@ -126,7 +136,7 @@
<view class="bkg4">
<view class="bkg5">
<view class="xxt" bindtap="ShowOrNotLogo">
<image mode="heightFix" src="{{xingxiangtu[userInfo.spriteType]}}"></image>
<image mode="heightFix" src="{{xingxiangtu.sprite[userInfo.spriteType]}}"></image>
</view>
</view>
</view>
@ -144,7 +154,7 @@
percentage="{{userInfo.crystallineEnergy}}"
color="#f76229" label=""
t-class-bar="dcleft1"
stroke-width="10rpx"
stroke-width="8rpx"
/>
<view class="dcbs"></view>
<view class="dclefttxt">水晶能量</view>
@ -203,7 +213,7 @@
</view>
<!-- 能量已满提示 -->
<view class="energy-full-box" wx:if="{{ jmEnergy }}" bindtap="closeJmEnergy">
<view class="energy-full-box" wx:if="{{ jmEnergy && jmEnergy2 }}" bindtap="closeJmEnergy">
<view class="energy-full">
<view>能量已经集满啦!</view>
<view>可以注入到水晶中</view>
@ -218,11 +228,11 @@
</swiper-item>
<!--对方个人页面-->
<swiper-item class="call1" wx:if='{{userInfo.loverId}}'>
<swiper-item class="call1">
<!--头像名字-->
<view class="call1-header">
<image class="tx" src="{{loverInfo.avatar}}"></image>
<view class="txtext">{{loverInfo.nick ? loverInfo.nick : userInfo.constellation}}</view>
<image class="tx" src="{{loverInfo.avatar ? loverInfo.avatar : xingxiangtuLove['elf-avatar']}}"></image>
<view class="txtext">{{loverInfo.nick ? loverInfo.nick : loverInfo.constellation}}</view>
</view>
<!-- 精灵图片 -->
<view class="bkg1">
@ -231,7 +241,7 @@
<view class="bkg4">
<view class="bkg5">
<view class="xxt" bindtap="ShowOrNotLogo">
<image mode="heightFix" src="{{xingxiangtuLove[loverInfo.spriteType]}}"></image>
<image mode="heightFix" src="{{xingxiangtuLove.sprite[loverInfo.spriteType]}}"></image>
</view>
</view>
</view>
@ -248,7 +258,7 @@
<!-- 运势 -->
<view class="call1-btn-middle">
<view class="k2" bindtap="ToastDialog"><view class="k11"></view></view>
<div class="ktext2">Ta的运势</div>
<div class="ktext2" bindtap="ToastDialog">Ta的运势</div>
</view>
<!-- 幸运颜色 -->
<view class="call1-btn-right">
@ -260,12 +270,128 @@
</swiper-item>
</swiper>
<!-- 单人页面 甲方说要固定页面不让左右滑动 不能使用swiper组件渲染 -->
<view>
<!--单人页面-->
<swiper-item class="call1">
<!--头像名字-->
<view class="call1-header">
<image class="tx" src="{{userInfo.avatar ? userInfo.avatar : xingxiangtu['elf-avatar']}}"></image>
<view class="txtext">{{userInfo.nick ? userInfo.nick : userInfo.constellation}}</view>
<!-- 运势加持 -->
<view class="ysjc" wx:if="{{userInfo.pendantLuckInBlessing}}">
<t-icon name="chevron-right-double" size="24" color="#DE868F"/>
<view class="ys-time">运势已加持 {{ydTime}}</view>
<t-icon name="chevron-right-double" size="24" color="#DE868F"/>
</view>
</view>
<!-- 精灵图片 -->
<view class="bkg1">
<view class="bkg2">
<view class="bkg3">
<view class="bkg4">
<view class="bkg5">
<view class="xxt" bindtap="ShowOrNotLogo">
<image mode="heightFix" src="{{xingxiangtu.sprite[userInfo.spriteType]}}"></image>
</view>
</view>
</view>
</view>
</view>
<view class="gh"></view>
</view>
<!-- 底部图标 -->
<view class="call1-btn">
<!--下方左侧块-->
<view class="dcleft">
<t-progress
class="dcleft1"
theme="circle"
percentage="{{userInfo.crystallineEnergy}}"
color="#f76229" label=""
t-class-bar="dcleft1"
stroke-width="8rpx"
/>
<view class="dcbs"></view>
<view class="dclefttxt">水晶能量</view>
</view>
<!--中间进度条-->
<view class="dcleft-middle">
<t-progress
class="dchx"
percentage="{{userInfo.crystallineEnergy}}"
trackColor="#E0E3EA"
color="#f76229"
label=""
stroke-width="16rpx"
/>
<view class="dchx-box">
<view class="dchx-box-cantainer" wx:if="{{showInjectBkc}}">
<view class="box" wx:for="{{20}}" wx:key="index"></view>
</view>
</view>
<view class="dchxtxt">{{userInfo.crystallineEnergy}}%</view>
</view>
<!--下方左侧块-->
<view class="dcleft-right">
<view class="dcright-bgc">
<view class="dcright-bg" wx:if="{{showInjectBkc}}"></view>
</view>
<view class="dcright" bind:touchstart="openInject" bind:touchend="closeInject"><view class="dcrightwjx"></view></view>
<view class="dcrighttxt">能量注入</view>
</view>
</view>
<!-- 形象按钮 -->
<view class="call1-vivid" wx:if="{{showSexLogo}}" >
<!--男性形象-->
<view
class="yan2"
data-yan="male"
bindtap="doSetXxtMale"
>
<view class="yan12"></view>
</view>
<!--动物形象-->
<view class="yan1"
data-yan="animal"
bindtap="doSetXxtAnimal"
>
<view class="yan11"></view>
</view>
<!--女性形象-->
<view
class="yan3"
data-yan="female"
bindtap="doSetXxtFemale"
>
<view class="yan13"></view>
</view>
</view>
<!-- 能量已满提示 -->
<view class="energy-full-box" wx:if="{{ jmEnergy && jmEnergy2 }}" bindtap="closeJmEnergy">
<view class="energy-full">
<view>能量已经集满啦!</view>
<view>可以注入到水晶中</view>
<view>增强运势哦!</view>
</view>
</view>
<!-- 能量注入成功提示 -->
<view class="energy-complete" wx:if="{{showScsEnergy}}">
<view>能量已注入{{crystallineEnergy}}%</view>
<view>守护时间为{{guarTime}}</view>
</view>
</swiper-item>
</view>
<!-- 未祈祷弹层 -->
<view class="pray" wx:if="{{showPray}}">
<view class="dialog">
<view class="dialog-item">
<text class="dialog-item-text">祈祷内容</text>
<textarea model:value="{{prayerContent}}" placeholder="请写下你要祈祷的内容" bindblur="getTextValue"></textarea>
<textarea maxlength="11" model:value="{{prayerContent}}" placeholder="请写下你要祈祷的内容" bindblur="getTextValue"></textarea>
</view>
<view class="dialog-item">
<text class="dialog-item-text">祈祷时长</text>
@ -359,21 +485,24 @@
</view>
<!-- 能量注入 -->
<t-toast id="t-toast" />
<view class="pray" wx:if="{{showInject}}">
<view class="dialog">
<view class="dialog-text">
<view>你要将能量注入到晶石吗?</view>
<view>晶石将开启守护计时</view>
</view>
<view class="dialog-btn">
<button bindtap="clostBtnInject">取消</button>
<button bindtap="btnInject">开始注入</button>
<view class="pray-box" wx:if="{{showInject}}">
<view class="pray">
<view class="dialog">
<view class="dialog-text">
<view>你要将能量注入到晶石吗?</view>
<view>晶石将开启守护计时</view>
</view>
<view class="dialog-btn">
<button bindtap="clostBtnInject">取消</button>
<button bindtap="btnInject">开始注入</button>
</view>
</view>
</view>
</view>
<!-- 能量注入中 -->
<view class="in-energy" wx:if="{{showInEnergy}}">
<t-image src="/images/hourglass.gif"/>
<t-image src="https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/hourglass.gif"/>
<view>能量注入中……</view>
</view>
@ -406,3 +535,4 @@
<view class="swiper-btn-right" bindtap="goRightSwiper" wx:if='{{userInfo.loverId}}'></view>

@ -1,6 +1,8 @@
/* pages/home/jl/index.wxss */
page {
width: 100%;
height: 100%;
overflow: hidden;
}
.call{
@ -15,10 +17,15 @@ page {
display: flex;
align-items: center;
flex-direction: column;
width: 100%;
height: 100%;
overflow: hidden;
}
.call1-header {
position: relative;
width: 100%;
height: 92rpx;
margin-top: 144rpx;
display: flex;
justify-content: center;
@ -113,6 +120,7 @@ page {
box-sizing: border-box;
display: flex;
justify-content: center;
z-index: 99999;
}
.dcleft{
@ -346,9 +354,14 @@ page {
height:72rpx;
border-radius: 50% !important;
margin-left: 30rpx;
background-repeat: no-repeat;
background-size:100% 100%;
background-image: url(https://wish-assets.windymuse.com.cn/xy/tx.png);
}
.txlAcatat {
width:72rpx;
height:72rpx;
border: 4rpx solid #A48A57;
border-radius: 50% !important;
margin-left: 30rpx;
}
.txr{
@ -358,7 +371,6 @@ page {
border-radius: 50% !important;
background-repeat: no-repeat;
background-size:100% 100%;
background-image: url(https://wish-assets.windymuse.com.cn/xy/tx.png);
}
.txtextl{
@ -379,10 +391,13 @@ page {
.text-qd {
width: 360rpx;
color: rgba(108, 108, 108, 1);
font-size: 14px;
font-size: 28rpx;
overflow: hidden; /* 超出部分隐藏 */
}
.text-qd .top {
width: 100%;
white-space: nowrap; /* 文本不换行 */
color: #DE868F;
}
@ -697,7 +712,7 @@ page {
.ttpopup{
width: 660rpx;
height: 804rpx;
height: 850rpx;
border-radius: 30rpx;
background-color: rgba(255, 255, 255, 0.9);
color: rgba(16, 16, 16, 1);
@ -804,7 +819,7 @@ page {
width: 100%;
display: flex;
justify-content: center;
margin-bottom: 78rpx;
margin-bottom: 70rpx;
}
.ysfgx image {
@ -818,15 +833,23 @@ page {
justify-content: center;
}
.pray-box {
position: absolute;
top: 0;
width: 100%;
height: 100%;
z-index: 999999;
}
.dialog {
position: absolute;
bottom: 500rpx;
width: 586rpx;
height: 434rpx;
width: 648rpx;
height: 484rpx;
padding: 50rpx;
z-index: 999;
box-sizing: border-box;
line-height: 20px;
line-height: 40rpx;
border-radius: 30rpx;
background-color: rgba(255, 255, 255, 1);
text-align: center;
@ -879,6 +902,7 @@ page {
}
.dialog-btn {
padding-top: 20rpx;
display: flex;
justify-content: center;
align-items: center;
@ -1010,21 +1034,25 @@ picker-view-column {
.energy-complete {
position: absolute;
top: 500rpx;
right: 230rpx;
width: 336rpx;
height: 160rpx;
top: 582rpx;
left: 256rpx;
width: 334rpx;
height: 176rpx;
opacity: 0.9;
border-radius: 15px;
border-radius: 30rpx;
background-color: rgba(255, 255, 255, 1);
color: #6C6C6C;
font-size: 14px;
font-size: 28rpx;
padding: 36rpx 0 0 20rpx;
box-sizing: border-box;
box-shadow: 1px 2px 6px 0px rgba(0, 0, 0, 0.4);
box-shadow: 2rpx 4rpx 12rpx 0px rgba(0, 0, 0, 0.4);
z-index: 999;
}
.energy-complete :first-child {
margin-bottom: 10rpx;
}
.in-energy {
position: absolute;
top: 500rpx;
@ -1067,3 +1095,19 @@ picker-view-column {
opacity: 0.5;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/curved-right.png);
}
.ys-time {
width: 290rpx;
height: 40rpx;
color: rgba(108, 108, 108, 1);
font-size: 28rpx;
text-align: center;
}
.ysjc {
position: absolute;
top: 80rpx;
display: flex;
align-items: center;
}

@ -26,7 +26,8 @@ Page({
showPhone: true, //更改手机号码
isHavePhone: true,
existPhone: false,
findAccount: false //账号账号数据
findAccount: false, //账号账号数据
openLogout: false //退出登入
},
// 手机号码校验
getPhone(e){
@ -59,21 +60,25 @@ Page({
},
// 找回账号数据
retrieveAccount(){
// req.patchRequest('/api/user/retrieve-data',{
// phone: this.data.phone,
// code: this.data.phoneVerificationCode
// }).then(res => {
// })
wx.showToast({
title: '找回数据成功,请重新登入',
icon: 'none'
req.patchRequest('/api/user/retrieve-data',{
phone:this.data.phone,
phoneVerificationCode:this.data.phoneVerificationCode
}).then(res => {
if (res.data.code === 200) {
wx.showToast({
title: '找回数据成功,请重新登入',
icon: 'none'
})
setTimeout(() => {
wx.redirectTo({
url: '/pages/index/index',
})
}, 1000);
}
}).catch(res => {
console.log(res, '找回账号数据失败');
})
setTimeout(() => {
wx.redirectTo({
url: '/pages/index/index',
})
}, 1000);
},
closeFindData(){
this.setData({
@ -107,20 +112,31 @@ Page({
}
if(this.data.countdown === 60 || this.data.countdown === '重新获取'){
req.postRequest('/api/user/send-authentication-code',{phone:this.data.phone}).then((res)=>{
console.log(res);
if (this.data.countdown === '重新获取') {
this.setData({countdown: 60})
}
// 验证码倒计时
this.setData({isCxHq:true})
const timerId = setInterval(()=>{
this.setData({countdown:this.data.countdown-1})
if (this.data.countdown === 0) {
clearTimeout(timerId);
this.setData({countdown:'重新获取'})
if (res.data.code === 200) {
wx.showToast({
title: '验证码已发送,请在手机上查收',
icon: 'none'
})
if (this.data.countdown === '重新获取') {
this.setData({countdown: 60})
}
},1000)
console.log('获取验证码');
// 验证码倒计时
this.setData({isCxHq:true})
const timerId = setInterval(()=>{
this.setData({countdown:this.data.countdown-1})
if (this.data.countdown === 0) {
clearTimeout(timerId);
this.setData({countdown:'重新获取'})
}
},1000)
this.setData({timerId: timerId})
}
}).catch(res => {
wx.showToast({
title: '发送失败',
icon: 'error'
})
console.log(res, '验证码发送失败');
})
}
},
@ -136,8 +152,10 @@ Page({
existPhone: false,
findAccount: false, //账号账号数据
phone: '',
phoneVerificationCode: ''
phoneVerificationCode: '',
isCxHq: false
})
clearTimeout(this.data.timerId);
},
bdSuccessBtn(){
this.setData({bdsjhVisible: false})
@ -153,6 +171,24 @@ Page({
phone:this.data.phone,
phoneVerificationCode:this.data.phoneVerificationCode
}).then((res)=>{
if (res.data.code === 1003) {
return wx.showToast({
title: '手机验证码不存在',
icon: 'error'
})
}
if (res.data.code === 1004) {
return wx.showToast({
title: '手机验证码错误',
icon: 'error'
})
}
if (res.data.code === 1005) {
return wx.showToast({
title: '手机验证码已过期',
icon: 'error'
})
}
if (res.data.code === 500) {
return this.setData({
existPhone: true,
@ -170,69 +206,69 @@ Page({
})
},
go2Grzl(){
wx.navigateTo({
wx.redirectTo({
url: '/pages/home/me/grzl/grzl'
})
},
go2Member(){/**跳转到会员购买页面 */
wx.navigateTo({
wx.redirectTo({
url: '/pages/home/me/member/member'
})
},
go2Member2(){/**跳转到会员续费页面 */
wx.navigateTo({
wx.redirectTo({
url: '/pages/home/me/member2/member'
})
},
go2Gw(){
// wx.navigateTo({
// wx.redirectTo({
// url: '/pages/home/me/gw/gw'
// })
console.log('跳转了解星座精灵页面');
},
go2Ysxy(){
// wx.navigateTo({
// url: '/pages/home/me/ysxy/ysxy'
// })
wx.redirectTo({
url: '/pages/home/me/ysxy/ysxy'
})
console.log('跳转隐私协议页面');
},
go2Yhsyxy(){
// wx.navigateTo({
// url: '/pages/home/me/yhsyxy/yhsyxy'
// })
wx.redirectTo({
url: '/pages/home/me/yhsyxy/yhsyxy'
})
console.log('跳转用户协议页面');
},
go2Cjwt(){
// wx.navigateTo({
// wx.redirectTo({
// url: '/pages/home/me/cjwt/cjwt'
// })
console.log('跳转常见问题页面');
},
go2Device(){
wx.navigateTo({
wx.redirectTo({
url: '/pages/home/me/mydevice/device'
})
},
go2Sq(){
// wx.navigateTo({
// url: '/pages/home/me/sq/sq'
// })
console.log('跳转社群');
wx.showToast({
title: '敬请期待',
icon: 'none'
})
},
go2Yjfk(){
wx.navigateTo({
wx.redirectTo({
url: '/pages/home/me/yjfk/yjfk'
})
},
go2Manual(){
// wx.navigateTo({
// url: '/pages/home/me/manual/manual'
// })
wx.redirectTo({
url: '/pages/home/me/manual/manual'
})
console.log('跳转说明书页面');
},
go2Jcjb(){
wx.navigateTo({
wx.redirectTo({
url: '/pages/home/me/jcjb/jcjb'
})
},
@ -243,8 +279,8 @@ Page({
userInfo:res.data.data,
phone:res.data.data.phone,
})
this.getDetele()
}
console.log(this.userInfo);
}).catch((err)=>{
console.log(err);
})
@ -257,6 +293,15 @@ Page({
})
},
// 获取默认头像
getDetele(){
const list = wx.getStorageSync('xy-static-img')
const type = this.data.userInfo.constellation
this.setData({
list: list[type]
})
},
/**
* 生命周期函数--监听页面加载
*/
@ -325,40 +370,17 @@ Page({
,
ljXzjl(){
},
closeLogout(){
this.setData({openLogout: !this.data.openLogout})
},
logout() {
const dialogConfig = {
context: this,
title: '退出登录',
content: '星座精灵是一款快速能够让你快速了解自己的星座特征以及星座运势,确定需要退出吗?',
confirmBtn: '确定',
cancelBtn: '取消',
};
Dialog.confirm(dialogConfig)
.then(() => {
req.deleteRequest('/api/user/logout',{}).then((res)=>{
if(res.data.code===200){
wx.setStorageSync('token', '')
wx.navigateTo({
url: '/pages/index/index'
})
Toast({
context: this,
selector: '#t-toast',
message: '退出成功!',
});
}
}).catch((err)=>{
Toast({
context: this,
selector: '#t-toast',
message: '退出失败!',
});
})
})
.catch(() => console.log('点击了取消'))
.finally(() => {
Dialog.close()});
},
req.deleteRequest('/api/user/logout',{}).then((res)=>{
if(res.data.code === 200){
wx.setStorageSync('token', '')
wx.redirectTo({
url: '/pages/index/index'
})
}
})
}
})

@ -1,78 +1,80 @@
<!--pages/home/me/indexx.wxml-->
<!-- <t-avatar class="avatar" size="large" image="{{userInfo.avatar}}" /> -->
<image class="avatar" src="{{userInfo.avatar}}" />
<view class="xxt"></view><!--星星背景图片-->
<view class="txk" bindtap="go2Grzl"></view><!--头像框-->
<view class="txkx" bindtap="go2Grzl"> </view><!--头像框里面的图标-->
<view class="nickname">{{userInfo.nick}}</view><!--用户昵称-->
<view class="unhybs" wx:if="{{!userInfo.isChatVip}}" bindtap="go2Member"></view><!--非会员图标-->
<view class="hydqr" wx:if="{{!userInfo.isChatVip}}"> 开通VIP会员</view><!--非会员提示-->
<view class="hybs" wx:if="{{userInfo.isChatVip}}" bindtap="go2Member2"></view><!--会员图标-->
<view class="hydqr" wx:if="{{userInfo.isChatVip}}"> 还有21天到期</view><!--会员提示-->
<view class="scroll">
<image class="avatar" src="{{userInfo.avatar ? userInfo.avatar : list['elf-avatar']}}" />
<view class="xxt"></view><!--星星背景图片-->
<view class="txk" bindtap="go2Grzl"></view><!--头像框-->
<view class="txkx" bindtap="go2Grzl"> </view><!--头像框里面的图标-->
<view class="nickname">{{userInfo.nick}}</view><!--用户昵称-->
<view class="unhybs" wx:if="{{!userInfo.isChatVip}}" bindtap="go2Member"></view><!--非会员图标-->
<view class="hydqr" wx:if="{{!userInfo.isChatVip}}"> 开通VIP会员</view><!--非会员提示-->
<view class="hybs" wx:if="{{userInfo.isChatVip}}" bindtap="go2Member2"></view><!--会员图标-->
<view class="hydqr" wx:if="{{userInfo.isChatVip}}"> 还有21天到期</view><!--会员提示-->
<view class="gnk">
<!-- <view class="smst" >说明书</view> -->
<!-- <view class="jrsqt">加入社群</view> -->
<view class="wdsbt">我的设备</view>
<view class="sx"></view>
<!-- <view class="circle k1" bindtap="go2Manual"> -->
<!-- <view class="sms"></view>
</view> -->
<view class="circle k2" bindtap="go2Device">
<view class="sq"></view>
</view>
<!-- <view class="circle k3" bindtap="go2Sq">
<view class="sb"></view>
</view> -->
</view>
<!--功能操作框-->
<view class="mycell" bindtap="ljXzjl" >
<!-- <t-cell hover arrow bindtap="go2Gw">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-triangles.png" size="50rpx"/>
<text slot="title" class="mycelltext" >了解星座精灵</text>
</t-cell> -->
<t-cell hover bindtap="doBdsjh" >
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-phone.png" size="50rpx"/>
<text slot="title" class="mycelltext" >绑定手机号</text>
<text slot="note" wx:if="{{userInfo.hasPhone}}">{{userInfo.phone}}</text>
</t-cell>
<!-- <t-cell hover arrow bindtap="go2Cjwt">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-help%402x.png" size="50rpx"/>
<text slot="title" class="mycelltext" >常见问题</text>
</t-cell> -->
<t-cell hover arrow bindtap="go2Yjfk">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-edit%402x.png" size="50rpx"/>
<text slot="title" class="mycelltext" >意见反馈</text>
</t-cell>
<!-- <t-cell hover arrow bindtap="go2Yhsyxy">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-editor%402x.png" size="50rpx"/>
<text slot="title" class="mycelltext" >用户使用协议</text>
</t-cell> -->
<!-- <t-cell hover arrow bindtap="go2Ysxy">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-audit%402x.png" size="50rpx"/>
<text slot="title" class="mycelltext" >隐私协议</text>
</t-cell> -->
<t-cell hover>
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-layers%402x.png" size="50rpx"/>
<text slot="title" class="mycelltext" >小程序版本</text>
<text slot="note" >V1.0</text>
</t-cell>
<t-cell hover arrow bindtap="go2Jcjb" wx:if="{{userInfo.loverId}}">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/myqcloud.png" size="50rpx"/>
<text slot="title" class="mycelltext" >解除羁绊</text>
</t-cell>
<t-cell hover arrow bindtap="logout">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-logout%402x.png" size="50rpx"/>
<text slot="title" class="mycelltext" >退出登录</text>
</t-cell>
<view class="meempty"></view>
<t-toast id="t-toast" />
<view class="gnk">
<view class="smst" >说明书</view>
<view class="jrsqt">我的设备</view>
<view class="wdsbt">加入社群</view>
<view class="sx"></view>
<view class="circle k1" bindtap="go2Manual">
<view class="sms"></view>
</view>
<view class="circle k2" bindtap="go2Sq">
<view class="sq"></view>
</view>
<view class="circle k3" bindtap="go2Device">
<view class="sb"></view>
</view>
</view>
<!--功能操作框-->
<view class="mycell" bindtap="ljXzjl" >
<t-cell hover arrow bindtap="go2Gw">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-triangles.png" size="50rpx"/>
<text slot="title" class="mycelltext" >了解星座精灵</text>
</t-cell>
<t-cell hover bindtap="doBdsjh" >
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-phone.png" size="50rpx"/>
<text slot="title" class="mycelltext" >绑定手机号</text>
<text slot="note" wx:if="{{userInfo.hasPhone}}">{{userInfo.phone}}</text>
</t-cell>
<t-cell hover arrow bindtap="go2Cjwt">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-help%402x.png" size="50rpx"/>
<text slot="title" class="mycelltext" >常见问题</text>
</t-cell>
<t-cell hover arrow bindtap="go2Yjfk">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-edit%402x.png" size="50rpx"/>
<text slot="title" class="mycelltext" >意见反馈</text>
</t-cell>
<t-cell hover arrow bindtap="go2Yhsyxy">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-editor%402x.png" size="50rpx"/>
<text slot="title" class="mycelltext" >用户使用协议</text>
</t-cell>
<t-cell hover arrow bindtap="go2Ysxy">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-audit%402x.png" size="50rpx"/>
<text slot="title" class="mycelltext" >隐私协议</text>
</t-cell>
<t-cell hover>
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-layers%402x.png" size="50rpx"/>
<text slot="title" class="mycelltext" >小程序版本</text>
<text slot="note" >V1.0</text>
</t-cell>
<t-cell hover arrow bindtap="go2Jcjb" wx:if="{{userInfo.loverId}}">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/myqcloud.png" size="50rpx"/>
<text slot="title" class="mycelltext" >解除羁绊</text>
</t-cell>
<t-cell hover arrow bindtap="closeLogout">
<t-icon slot="left-icon" name="https://wish-assets.windymuse.com.cn/xy/iconPark-logout%402x.png" size="50rpx"/>
<text slot="title" class="mycelltext" >退出登录</text>
</t-cell>
<view class="meempty"></view>
<t-toast id="t-toast" />
<t-dialog id="t-dialog" />
<t-dialog id="t-dialog" />
</view>
</view>
<!-- 绑定手机号码 -->
<view class="bdsjhVisible" wx:if="{{bdsjhVisible}}">
<!-- 绑定手机号码 -->
<view class="bdsjh" wx:if="{{showPhone}}">
<view class="bdsjhm1" wx:if="{{isHavePhone}}">更改手机号码</view>
<view class="bdsjhm1" wx:else>验证手机号码</view>
@ -136,3 +138,14 @@
</view>
</view>
</view>
<!-- 退出登入 -->
<view class="logout" wx:if="{{openLogout}}">
<view class="logout-box">
<view class="logout-box-text">确定要退出登录吗?</view>
<view class="logout-box-btn">
<view class="btn" bindtap="closeLogout">取消</view>
<view class="btn" bindtap="logout">确定</view>
</view>
</view>
</view>

@ -200,8 +200,14 @@
position: absolute;
margin-top: 720rpx;
width:100%;
/* margin-left: 10rpx; */
overflow-x:hidden;
}
.scroll {
position: absolute;
width: 100%;
height: 100%;
overflow-y: scroll;
overflow-x: hidden;
}
.mycelltext{
@ -225,7 +231,6 @@
display: flex!important;
flex-direction: column!important;
border-radius: 50%;
border: 6rpx solid #A48A57;
box-sizing: border-box;
}
@ -254,33 +259,33 @@
}
.qxSjh{
width: 105px;
height: 35px;
line-height: 70rpx;
border-radius: 10px;
background: linear-gradient(233.49deg, rgba(248,99,42,1) 10.48%,rgba(249,135,89,1) 89.2%);
text-align: center;
box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.4);
border: 3px solid rgba(255, 255, 255, 1);
color: rgba(255, 255, 255, 1);
font-size: 14px;
text-align: center;
font-family: SourceHanSansSC-medium;
width: 210rpx;
height: 70rpx;
border-radius: 20rpx;
background: linear-gradient(233.49deg, rgba(248,99,42,1) 10.48%,rgba(249,135,89,1) 89.2%);
text-align: center;
box-shadow: 0px 4rpx 12rpx 0px rgba(0, 0, 0, 0.4);
border: 6rpx solid rgba(255, 255, 255, 1);
color: rgba(255, 255, 255, 1);
font-size: 28rpx;
display: flex;
align-items: center;
justify-content: center;
}
.wcSjh{
width: 105px;
height: 35px;
line-height: 70rpx;
border-radius: 10px;
width: 210rpx;
height: 70rpx;
border-radius: 20rpx;
background: linear-gradient(233.49deg, rgba(248,99,42,1) 10.48%,rgba(249,135,89,1) 89.2%);
text-align: center;
box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.4);
border: 3px solid rgba(255, 255, 255, 1);
box-shadow: 0px 4rpx 12rpx 0px rgba(0, 0, 0, 0.4);
border: 6rpx solid rgba(255, 255, 255, 1);
color: rgba(255, 255, 255, 1);
font-size: 14px;
text-align: center;
font-family: SourceHanSansSC-medium;
font-size: 28rpx;
display: flex;
align-items: center;
justify-content: center;
}
.sjhm1{
@ -354,7 +359,7 @@ font-family: SourceHanSansSC-medium;
width: 100%;
margin-top: 96rpx;
display: flex;
justify-content: space-evenly;
justify-content: space-between;
}
.bd-success {
@ -497,3 +502,56 @@ font-family: SourceHanSansSC-medium;
align-items: center;
justify-content: center;
}
.logout {
position: relative;
width: 100%;
height: 100%;
display: flex;
justify-content: center;
background-color: rgba(255, 255, 255, 0.9);
}
.logout-box {
margin-top: 544rpx;
width: 586rpx;
height: 434rpx;
border-radius: 30rpx;
background-color: rgba(255, 255, 255, 1);
color: rgba(16, 16, 16, 1);
font-size: 28rpx;
text-align: center;
box-shadow: 2rpx 4rpx 12rpx 0px rgba(0, 0, 0, 0.4);
}
.logout-box-text {
width: 100%;
height: 318rpx;
color: rgba(108, 108, 108, 1);
font-size: 36rpx;
display: flex;
align-items: center;
justify-content: center;
}
.logout-box-btn {
width: 100%;
height: 70rpx;
display: flex;
justify-content: space-around;
}
.logout-box-btn .btn {
width: 210rpx;
height: 70rpx;
border-radius: 20rpx;
background: linear-gradient(233.49deg, rgba(248,99,42,1) 10.48%,rgba(249,135,89,1) 89.2%);
text-align: center;
box-shadow: 0px 4rpx 12rpx 0px rgba(0, 0, 0, 0.4);
border: 6rpx solid rgba(255, 255, 255, 1);
color: rgba(255, 255, 255, 1);
font-size: 28rpx;
display: flex;
justify-content: center;
align-items: center;
}

@ -8,6 +8,14 @@ Page({
},
go2Reback(){
wx.redirectTo({
url: '/pages/home/me/indexx',
})
},
/**
* 生命周期函数--监听页面加载
*/

@ -1,4 +1,174 @@
<!--pages/index/out/out.wxml 说明书页面-->
<!--<web-view src="https://xzjl-api.windymuse.cn/"></web-view>-->
<view>跳转页面,待完善</view>
<view class="manual-container">
<!-- 头部导航 -->
<view class="manual-header">
<view class="header-reback" bindtap="go2Reback"></view>
</view>
<view class="manual-box">
<view class="manual-main">
<view class="main-box1">hi亲爱的主人你好</view>
<view class="main-box1">欢迎查看星座守护精灵的【使用手册】</view>
<view class="main-box1">首先,让我们从唤醒精灵开始</view>
<view class="main-box2">
<view class="main-box2-left"></view>
<view class="main-box2-right">
<view>在手机桌面或者小程序激活页面</view>
<view>将首饰感应区贴合手机NFC区域</view>
<view>即可完成激活</view>
</view>
</view>
<view class="main-box3"></view>
<view class="main-box4">
<view>如果不小心忘带或丢失了首饰</view>
<view>还可以点击中间的晶石通过扫描</view>
<view>二维码进入(二维码在我的设</view>
<view>中查看)</view>
</view>
<view class="main-box5">
<view class="main-box5-left"></view>
<view class="main-box5-right">
<view>激活后将直接弹出今日星座运势,</view>
<view>让你不错过每一天的好运气!</view>
</view>
</view>
<view class="main-box6"></view>
<view class="main-box7">
<view>每天前三次查看星座运势都会获得</view>
<view class="btm">相应的水晶能量和银币</view>
<view class="color">【水晶能量】可以用来加持好运</view>
<view class="color">【银币】可以用来在许愿池-许愿</view>
</view>
<view class="main-box8">
<view class="main-box8-left"></view>
<view class="main-box8-right">
<view>在许愿池可以消耗【银币】许愿,</view>
<view>还可以将自己的愿望发送给好友或</view>
<view>者发布朋友圈</view>
</view>
</view>
<view class="main-box9"></view>
<view class="main-box27 btop">
<view>在情侣状态下,你还可以查看</view>
<view>对方的愿望。不错过ta的每一个心愿</view>
</view>
<view class="main-box10">
<view class="main-box10-left"></view>
<view class="main-box10-right">
<view>在精灵页可以查看自己的星座精灵</view>
<view class="btm">点击精灵可以切换【精灵形态】</view>
<view class="color">长按【能量注入】,可以将星座能</view>
<view class="color">量注入到智能首饰中,让精灵守护</view>
<view class="color">你,加持一天的好运哦!</view>
</view>
</view>
<view class="main-box11"></view>
<view class="main-box12">
<view>在精灵页【情侣状态】下,可以查</view>
<view>看双方的精灵形态。同样,点击精</view>
<view>灵可以为对方变换形态。</view>
</view>
<view class="main-box13"></view>
<view class="main-box14 color">
<view>点击对方的【能量晶石】可以将星</view>
<view>座能量赠送给对方。</view>
<view>点击【祈祷】可花费水晶能量为</view>
<view>对方祈祷祝福。对方也会同步显示</view>
</view>
<view class="main-box15">
<view class="btm">向右滑动或点击箭头显示对方详情</view>
<view class="color">点击【ta的运势】来查看对方当天</view>
<view class="color btm">星座运势</view>
</view>
<view class="main-box16">
<view class="img1"></view>
<view class="img2"></view>
</view>
<view class="main-box17">
<view>向左滑动或点击箭头显示自己详情</view>
<view>功能与【单人状态】下相同</view>
</view>
<view class="main-box18"></view>
<view class="main-box19">
<view class="main-box19-left"></view>
<view class="main-box19-right">
<view class="color">点击【精灵AI】按钮即可与你的</view>
<view class="btm color">星座守护精灵进行对话。</view>
<view>无聊的时候或者需要精灵帮你答疑</view>
<view>解惑可以随时找ta哦~</view>
</view>
</view>
<view class="main-box20"></view>
<view class="main-box21">
<view class="main-box21-left"></view>
<view class="main-box21-right">
<view>【单人状态】与【情侣状态】下的</view>
<view class="btm">【星讯】会完全不同。~</view>
<view class="color">在单人状态,你可以点击【信札】</view>
<view class="color">给你爱的人写一封表达爱意的信</view>
<view class="color">点击【羁绊】即可跟你的ta进行</view>
<view class="color">【情侣绑定】,绑定成功后,页面</view>
<view class="color">也将转变为【情侣状态】</view>
</view>
</view>
<view class="main-box22"></view>
<view class="main-box23 btop">
<view>在【情侣状态】时,【星讯】将</view>
<view>变成你们彼此的专属秘密树洞。</view>
<view class="btm btop">将你们的甜蜜回忆都记录在这里。</view>
<view class="color">通过左上角【回忆】按钮可以查看</view>
<view class="color">甜蜜的过往信息哦~</view>
</view>
<view class="main-box24"></view>
<view class="main-box25">
<view class="main-box25-left"></view>
<view class="main-box25-right">
<view>在【我的】页面,可进行个人资料</view>
<view class="btm">等编辑修改。</view>
<view class="color">点击【头像】或【昵称】来更改个</view>
<view class="color btm">人信息</view>
<view class="color">点击【绑定手机号】进行手机号绑</view>
<view class="color">定,如果不小心遗失了智能首饰。</view>
<view class="color btm">也可以进行账号找回</view>
<view class="color">点击【我的设备】即可查看智能首</view>
<view class="color"> 饰的详细信息,可以保存二维码以</view>
<view class="color">便设备不在身边时的【临时登录】</view>
<view class="color btm">点击【解除羁绊】即可解绑情侣,</view>
<view class="color"> 解绑后情侣数据将保留30天。如</view>
<view class="color">果30天内没有重新绑定数据将</view>
<view class="color">被清除。请谨慎操作。</view>
</view>
</view>
<view class="main-box26"></view>
</view>
</view>
</view>

@ -1 +1,354 @@
/* pages/home/me/manual/manual.wxss */
view {
box-sizing: border-box;
}
.color {
color: #F8632A;
}
.btm {
margin-bottom: 10rpx;
}
.btop {
margin-top: 32rpx;
}
.manual-container {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
padding-top: 88rpx;
box-sizing: border-box;
}
.manual-header {
width: 100%;
height: 88rpx;
display: flex;
align-items: center;
justify-content: start;
background-color: #fff;
}
.header-reback{
margin-left: 20rpx;
width:48rpx;
height:48rpx;
background-repeat: no-repeat;
background-size:100% 100%;
background-image: url(https://wish-assets.windymuse.com.cn/xy/reback.png);
}
.manual-box {
width: 100%;
flex: 1;
overflow-y: scroll;
}
.manual-main {
width: 100%;
padding: 32rpx 62rpx 0 62rpx;
box-sizing: border-box;
font-size: 32rpx;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
}
.main-box1 {
color: rgba(248, 99, 42, 1);
margin-bottom: 10rpx;
font-size: 36rpx;
font-weight: 700;
}
.main-box2 {
width: 100%;
padding-left: 28rpx;
margin-top: 16rpx;
display: flex;
}
.main-box2-left {
width: 52rpx;
height: 82rpx;
margin-right: 14rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/one.png);
}
.main-box2-right {
padding-top: 16rpx;
box-sizing: border-box;
}
.main-box3 {
margin-top: 32rpx;
width: 356rpx;
height: 770rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/instructions-img-1.png);
}
.main-box4 {
width: 100%;
padding-left: 94rpx;
box-sizing: border-box;
margin-top: 32rpx;
}
.main-box5 {
width: 100%;
padding-left: 28rpx;
margin-top:48rpx;
display: flex;
}
.main-box5-left {
width: 52rpx;
height: 82rpx;
margin-right: 14rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/two.png);
}
.main-box5-right {
padding-top: 16rpx;
box-sizing: border-box;
}
.main-box6 {
margin-top: 32rpx;
width: 356rpx;
height: 770rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/instructions-img-2.png);
}
.main-box7 {
width: 100%;
padding-left: 94rpx;
margin-top: 32rpx;
}
.main-box27 {
width: 100%;
padding-left: 94rpx;
}
.main-box8 {
width: 100%;
padding-left: 28rpx;
margin-top: 48rpx;
display: flex;
}
.main-box8-left {
width: 52rpx;
height: 82rpx;
margin-right: 14rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/three.png);
}
.main-box8-right {
padding-top: 16rpx;
box-sizing: border-box;
}
.main-box9 {
margin-top: 32rpx;
width: 356rpx;
height: 770rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/instructions-img-3.png);
}
.main-box10 {
width: 100%;
padding-left: 28rpx;
margin-top: 48rpx;
display: flex;
}
.main-box10-left {
width: 52rpx;
height: 82rpx;
margin-right: 14rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/four.png);
}
.main-box10-right {
padding-top: 16rpx;
box-sizing: border-box;
}
.main-box11 {
margin-top: 32rpx;
width: 356rpx;
height: 770rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/instructions-img-4.png);
}
.main-box12 {
width: 100%;
padding-left: 94rpx;
margin-top: 32rpx;
}
.main-box13 {
margin-top: 32rpx;
width: 356rpx;
height: 770rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/instructions-img-5.png);
}
.main-box14 {
width: 100%;
padding-left: 94rpx;
margin-top: 32rpx;
}
.main-box15 {
width: 100%;
padding-left: 94rpx;
margin-top: 48rpx;
}
.main-box16 {
width: 100%;
display: flex;
justify-content: space-between;
}
.main-box16 .img1 {
width: 310rpx;
height: 674rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/instructions-img-6.png);
}
.main-box16 .img2 {
width: 310rpx;
height: 674rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/instructions-img-7.png);
}
.main-box17 {
width: 100%;
padding-left: 94rpx;
margin-top: 32rpx;
}
.main-box18 {
margin-top: 32rpx;
width: 356rpx;
height: 770rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/instructions-img-8.png);
}
.main-box19 {
width: 100%;
padding-left: 28rpx;
margin-top: 48rpx;
display: flex;
}
.main-box19-left {
width: 52rpx;
height: 82rpx;
margin-right: 14rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/five.png);
}
.main-box19-right {
padding-top: 16rpx;
box-sizing: border-box;
}
.main-box20 {
margin-top: 32rpx;
width: 356rpx;
height: 770rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/instructions-img-9.png);
}
.main-box21 {
width: 100%;
padding-left: 28rpx;
margin-top: 48rpx;
display: flex;
}
.main-box21-left {
width: 52rpx;
height: 82rpx;
margin-right: 14rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/six.png);
}
.main-box21-right {
padding-top: 16rpx;
box-sizing: border-box;
}
.main-box22 {
margin-top: 32rpx;
width: 356rpx;
height: 770rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/instructions-img-10.png);
}
.main-box23 {
width: 100%;
padding-left: 94rpx;
}
.main-box24 {
margin-top: 32rpx;
width: 356rpx;
height: 770rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/instructions-img-11.png);
}
.main-box25 {
width: 100%;
padding-left: 28rpx;
margin-top: 48rpx;
display: flex;
}
.main-box25-left {
width: 52rpx;
height: 82rpx;
margin-right: 14rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/seven.png);
}
.main-box25-right {
padding-top: 16rpx;
box-sizing: border-box;
}
.main-box26 {
margin: 32rpx 0 150rpx 0;
width: 356rpx;
height: 770rpx;
background-size: cover;
background-image: url(https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/instructions-img-12.png);
}

@ -1,7 +1,6 @@
<view class="title">我的设备</view>
<swiper class="call" wx:for="{{devs}}">
<swiper-item>
<view class="call">
<view class="tbl" wx:if="{{dev.length>1}}"></view>
<view class="tbr" wx:if="{{dev.length>1}}"></view>
@ -17,11 +16,9 @@
<view class="intr1">可代替设备用于登录,可在设备丢失时临时登录使用</view>
<view class="intr2">请不要将二维码告知他人,否则有账号丢失风险</view>
<view class="sbsbmk"></view><!--设备识别码块-->
<view class="sbsbmkt">{{item.mac}}</view><!--设备识别码块-->
<view class="sbsbmkt">{{devs[0].mac}}</view><!--设备识别码块-->
<view class="fz" data-copy="{{item.mac}}" bindtap="doCopy"></view><!--复制按钮-->
</swiper-item>
</swiper>
</view>
<!-- <canvas class="sbewm" type="2d" style="width: 300rpx; height: 300rpx;" id="myQrcode"></canvas> -->
<!--返回图标-->

@ -8,6 +8,12 @@ Page({
},
go2Reback(){
wx.redirectTo({
url: '/pages/home/me/indexx',
})
},
/**
* 生命周期函数--监听页面加载
*/

@ -1,3 +1,94 @@
<!--pages/home/me/yhsyxy/yhsyxy.wxml 用户使用协议-->
<!--<web-view src="https://xzjl-api.windymuse.cn/"></web-view>-->
<view>跳转页面,待完善</view>
<!-- 头部导航 -->
<view class="user-container">
<view class="user-header">
<view class="header-reback" bindtap="go2Reback"></view>
<view>用户协议</view>
</view>
<view class="user-main">
<view class="main-title">星座守护精灵 用户协议</view>
<text class="main-text">欢迎您使用星座守护精灵 软件。本协议是由用户以下可称“用户”或“您”与我司就所提供的产品及服务所订立的协议。为保障您的权益请您在登录使用我司所提供的产品及服务之前仔细阅读本协议18周岁以下未成年人应当在其法定监护人陪同下阅读包括免除或者限制我司的免责条款及对用户的权利限制条款。如果您进入我司或用户登录页面确认已经阅读、同意本协议的条款并完成登录或者通过其他任何方式获得和使用我司所提供的产品和服务则视为您已经详细阅读了本协议的内容同意遵守本协议的约定。您不应再以不了解本协议内容为由拒绝履行本协议。此外我司有权在不另行通知的情况下随时对本协议或相关协议进行修改修改部分即时生效并适用。请您在使用产品和服务时进行关注并遵守如您不同意修改您可以随时停止使用如果您继续使用则视为您已经接受修改后的协议。
<text class="main-text-title">一、定义和说明</text>
1.1 本软件:星座守护精灵 软件,包含客户端内容及程序,并可能包括相关网络服务器、网站、电子媒体、印刷材料和“联机”或电子文档等。
1.2 用户:指已购买过星座守护精灵 商品并通过我公司提供的合法途径获得星座守护精灵软件使用许可而安装、使用星座守护精灵软件产品及服务的个人。
<text class="main-text-title">二、知识产权声明</text>
2.1我公司依法享有星座守护精灵软件的一切合法权属(包括但不限于知识产权)。本软件的全部著作权及一切其他知识产权,以及与本软件相关的所有信息内容,包括但不限于:文字表述及其组合、图标、图饰、图表、色彩组合、界面设计、版面框架、有关数据、印刷材料、或电子文档等均受中国知识产权相关法律法规和有关的国际条约的保护。
2.2 星座守护精灵软件所体现的徽标(图形)和/或我公司的产品和服务标示均属于我公司在中国及/或其他国家/地区的商标或者注册商标。用户未经合法授权不得自行使用。
2.3 我公司在涉及星座守护精灵软件及相关各项服务中拥有专利权、专利申请权、商标权、著作权及其他知识产权。我公司并未因为本《协议》或者因为向用户提供本软件以及相关服务而授予用户任何与本软件相关的知识产权。本《协议》未明确授予用户的权利均由我公司保留。
<text class="main-text-title">三、隐私政策</text>
本隐私政策将涵盖本应用如何收集、使用、处理、存储和保护App收集的关于您的个人信息。若我们要求您提供某些信息以便在使用产品和服务时验证您的身份我们将仅严格遵守本隐私政策来使用这些信息请你仔细阅读我们的隐私政策。
3.1 如何收集您的个人信息
个人信息是可用于唯一地识别或联系某人的数据。当您使用本应用时,用户登录过程中我们将会收集为您提供服务所必须的个人信息,如:电话号码、邮箱。为了保护个人隐私,我们只会收集明确及合法的目的所必需的信息,而不会以与这些目的不相符的方式进一步处理相关信息。
3.2 我们如何使用您的个人信息
1通过您提供的个人信息向您发送本应用的服务信息。
2通过您提供的个人信息为您提供/实现密码找回功能。
3除不可抗力外本公司不会向任何无关第三方提供、出售、出租、分享或交易您的个人信息除非事先得到您的许可。
3.3 保留政策
如有必要实现收集信息的目的,本应用仅将保留您的个人信息至履行收集目的所需的期限,同时将遵守适用法律规定的数据保留期限。
3.4 法律免责声明
在法律要求的情况下,以及本公司认为必须披露与您有关的信息来保护本公司的法定权益和/或遵守司法程序、法院指令或适用本应用程序的法律程序时,我们有权透露您的个人信息。如果本公司确定为了执行本公司的条款和条件或保护我们的经营,披露是合理必须的,则我们可披露与您有关的信息。
3.5 本隐私政策的更改
我们会对隐私政策进行定期审核,为反映我们信息惯例的变更,我们可能会更新本隐私政策。如果决定更改隐私政策,我们会在本政策中、本公司网站中以及我们认为适当的位置发布这些更改,以便您了解我们如何收集、使用您的个人信息,哪些人可以访问这些信息,以及在什么情况下我们会透露这些信息。我们保留随时修改本政策的权利,因此请经常查看。您若继续使用本应用程序提供的服务,将被视为接受更新的隐私政策。
<text class="main-text-title">四、资费政策</text>
4.1 本公司有权决定我司星座守护精灵软件产品和服务的资费标准和收费方式,我公司可能会就不同的产品和服务制定不同的资费标准和收费方式,也可能按照我们所提供的产品和服务的不同阶段确定不同的资费标准和收费方式。另外,我司也可能不时地修改相关资费政策。
4.2 对于我司星座守护精灵软件的收费产品和服务,用户应该按照我司确定的资费政策购买我们的产品和服务。如果用户未按我司确定的资费政策购买我司的产品和服务,我司可以立即停止向用户提供该产品和服务。
4.3 除非法律另有明文规定,无论该等资费是否已被消费,我司有权决定是否、何时、以何种方式向用户退款。我司同意退款的,用户应补偿支付时使用信用卡、手机等支付渠道产生的费用,该等费用我司有权在返还用户的资费中直接扣收。我司在产品和服务提供过程中赠送的充值金额、虚拟货币、虚拟道具等,不予退款或变现。
<text class="main-text-title">五、服务、协议的中断或终止</text>
5.1 如发生下列任何一种情形,我司有权随时中断或终止向用户提供本协议项下的星座守护精灵软件服务和其他网络服务,对于因而产生的不便和损失,我司不承担任何责任:
1用户提供的个人资料不真实
2用户违反本协议中规定的用户行为准则及本协议其他条款约定的义务。
5.2关于我司星座守护精灵软件所提供的不同产品和服务注销账号/角色的其他情况,请参见各个星座守护精灵软件产品和服务的具体规定,或相关星座守护精灵软件产品和服务的官方网站上的具体规定。
5.3 为了保障星座守护精灵软件及星座守护精灵软件平台网站和服务器的正常运行,我司需要定期或不定期对星座守护精灵软件及星座守护精灵软件平台网站和服务器进行停机维护,或针对突发事件进行紧急停机维护。因上述情况而造成的正常服务中断、中止,用户予以理解并同意,我司则有义务尽力避免服务中断并将中断时间限制在最短时间内。
5.4 在适用法律许可的最大范围内,发生下列情形之一时,为了星座守护精灵软件网站和服务器的持续稳定运行,我司有权不经提前通知,终止或中断星座守护精灵软件服务器所提供之全部或部分服务,对因此而产生的不便或损失,我司对用户或第三人均不承担任何责任:
1定期检查或施工更新软硬件等
2服务器遭受损害无法正常运作
3突发性的软硬件设备与电子通信设备故障
4网络提供商线路或其他故障
5在紧急情况之下依照法律的规定或为用户及第三者之人身安全
6第三方原因或其他不可抗力的情形。
5.5 在适用法律许可的最大范围内,不管产品和服务由于任何原因终止,用户应采取相应的措施自行处理星座守护精灵软件及星座守护精灵软件平台上的虚拟物品。用户不得因终止服务而要求我司承担除用户已经购买但尚未使用的星座守护精灵软件虚拟货币以外任何形式的赔偿或补偿责任,包括但不限于因不再能继续使用星座守护精灵软件账号、星座守护精灵软件内虚拟物品等而要求的赔偿。
<text class="main-text-title">六、用户权利与义务</text>
6.1在用户同意接受本《协议》全部内容的前提下,我公司同意授予用户可撤销的、可变更的、非专有的、不可转让和不可再授权的许可权利。用户可在许可生效的时间内将本软件安装在个人使用的联网设备上,并以指定的方式运行本软件的一份副本并享受我公司提供的服务。我公司基于本《协议》授予用户的许可是针对个人使用的许可。如用户有需要在个人使用的范围以外使用本软件及服务或者将本软件与服务用于任何商业用途,则用户应与我公司联系并获得我公司另行授权。任何未经我公司许可的安装、使用、访问、显示、运行等行为均视为违反本协议。
6.2 除非本《协议》另有规定,否则,未经我公司书面同意,用户不得实施下列行为(无论是营利的还是非营利的):
1复制、翻拷、传播和陈列本软件的程序、使用手册和其它图文音像资料的全部或部分内容。
2公开展示和播放本产品的全部或部分内容。
3出租、销售本软件或者利用本软件从事营利行为。
4修改或遮盖本软件程序、图像、动画、包装和手册等内容上的产品名称、公司标志、版权信息等内容。
5其它违反著作权法、计算机软件保护条例和相关法律法规的行为。
6.3 用户应通过合法的途径使用本软件和相关服务,不得作出以下侵害我公司或第三人利益,扰乱星座守护精灵软件秩序,违反星座守护精灵软件公平性、违反本《协议》或者我公司发布的其他规则或者国家有关法律法规规定的行为,包括但不限于:
1 修改、翻译、注释、整理、汇编、演绎本软件;
2 反向工程、反向编译或者反汇编本软件,或者采用其他技术手段对本软件进行分析、修改、攻击、衍生;
3 使用任何外挂程序或星座守护精灵软件修改程序本《协议》所称“外挂程序”是指独立于星座守护精灵软件软件之外的能够在星座守护精灵软件运行的同时影响星座守护精灵软件操作的所有程序包括但不限于模拟键盘鼠标操作、改变操作环境、修改数据等一切类型。如国家有关法律、法规及政府主管部门的规章或规范性文件规定的外挂定义与本《协议》有冲突则以法律、法规、部门规章或规范性文件规定的为准对本网络星座守护精灵软件软件进行还原工程、编译、译码或修改包括但不限于修改本软件所使用的任何专有通讯协议、对动态随机存取内存RAM中资料进行修改或锁定
4 使用异常的方法登录星座守护精灵软件、使用网络加速器等外挂软件或机器人程式等恶意破坏服务设施、扰乱正常服务秩序的行为;
5 通过异常或者非法方式使用本软件(包括但不限于利用本软件登录星座守护精灵软件私服),恶意破环本软件,扰乱正常的服务秩序或者实施其他不正当行为;
6 制作、传播或使用外挂、封包、加速软件及其它各种作弊程序,或组织、教唆他人使用此类软件程序,或销售此类软件程序而为个人或组织谋取经济利益;
7 使用任何方式或方法,试图攻击提供星座守护精灵软件服务的相关服务器、路由器、交换机以及其他设备,以达到非法获得或修改未经授权的数据资料、影响正常星座守护精灵软件服务,以及其他危害性目的的任何行为;
8 利用本软件可能存在的技术缺陷或漏洞而以各种形式为自己及他人牟利(包括但不限于复制本软件中的虚拟物品等)或者从事其他不正当行为;
9 违反国家有关法律法规的规定,利用本软件制作、复制、发布和传播信息。
一旦我公司通过内部的监测程序发现或经其他用户举报而发现用户有可能正在从事上述行为,则我公司有权作出独立的判断并采取相应的措施,该措施包括但不限于限制用户账号的登陆、限制用户在本软件中的活动、终止本软件授权、删除与复制有关的物品(包括复制出的虚拟物品和参与复制的虚拟物品)、删除用户的账号并要求用户赔偿因从事上述行为而给我公司造成的损失等。
6.4我公司提供可使用的客户端并运用自己的网络系统通过国际互联网络Internet为用户提供服务。同时用户应自行提供以下的设备和信息
6.4.1自行配备上网的所需设备, 包括手机等移动设备或其他必备上网装置。
6.4.2自行负担个人上网所支付的与此服务有关的电话费用、网络费用。
6.4.3基于我公司提供服务的重要性,用户同意:
1提供详尽、准确的个人资料。
2不断更新注册资料符合及时、详尽、准确的要求。
3牢记用户填写的注册资料、历史信息。
我公司在为用户提供相关客户服务的前提是用户能表明用户是账号的所有人,这可能需要用户提供相关信息(包括但不限于注册信息、历史密码等)。用户理解,如果用户不能提供准确完整的注册资料及相关历史信息、未及时更新相关注册资料或者相关的证据,将有可能导致我公司无法判断用户的身份,从而无法为提供密码找回等相关服务,而我公司对此不承担任何责任。如因用户提交的相关信息资料不真实、不准确、不完整、不合法从而导致我公司作出错误的判断的,我公司有权终止为用户提供服务并追究用户的法律责任。
6.5我公司保留通过本软件和相关的服务向用户投放商业性广告的权利。
<text class="main-text-title">七、违约责任</text>
7.1用户同意保障和维护我公司及其他用户的利益,如因用户违反有关法律、法规或本《协议》项下的任何条款而给我公司造成损害,用户同意承担由此造成的损害赔偿责任,该等责任包括但不限于给我公司造成的任何直接或间接损失。
7.2 如用户违反本《协议》、我公司发布的其他规则或者国家法律法规规定,则我公司有权作出独立的判断,立即撤销相关许可,终止为用户提供服务并通过各种合法途径追究用户的法律责任。
<text class="main-text-title">八、法律管辖</text>
8.1 本协议的订立、执行和解释及争议的解决均应适用中国法律。
8.2 如双方就本协议内容或其执行发生任何争议,双方应尽量友好协商解决;协商不成时,任何一方均应向本软件平台所在地的人民法院提起诉讼。
<text class="main-text-title">九、通知和送达</text>
本协议项下所有的通知均可通过重要页面公告、电子邮件或常规的信件传送等方式进行; 该通知于发送之日视为已送达收件人。
<text class="main-text-title">十、 其他规定</text>
10.1 本协议构成双方对本协议之约定事项及其他有关事宜的完整协议,除本协议规定的之外,未赋予本协议各方其他权利。
10.2 如本协议中的任何条款无论因何种原因完全或部分无效或不具有执行力,本协议的其余条款仍应有效并且有约束力。
</text>
</view>
</view>

@ -1 +1,52 @@
/* pages/home/me/yhsyxy/yhsyxy.wxss */
.user-container {
width: 100%;
height: 100%;
padding-top: 88rpx;
display: flex;
flex-direction: column;
}
.user-header {
position: relative;
width: 100%;
height: 88rpx;
display: flex;
align-items: center;
justify-content: center;
color: rgba(108, 108, 108, 1);
font-size: 32rpx;
}
.header-reback{
position: absolute;
left: 20rpx;
width:48rpx;
height:48rpx;
background-repeat: no-repeat;
background-size:100% 100%;
background-image: url(https://wish-assets.windymuse.com.cn/xy/reback.png);
}
.user-main {
flex: 1;
padding: 48rpx 64rpx;
overflow-y: scroll;
}
.main-title {
width: 100%;
margin-bottom: 46rpx;
color: #000000;
font-size: 36rpx;
text-align: center;
}
.main-text {
color: rgba(16, 16, 16, 1);
font-size: 24rpx;
}
.main-text-title {
font-weight: 700;
}

@ -8,6 +8,12 @@ Page({
},
go2Reback(){
wx.redirectTo({
url: '/pages/home/me/indexx',
})
},
/**
* 生命周期函数--监听页面加载
*/

@ -1,4 +1,104 @@
<!--pages/home/me/ysxy/ysxy.wxml 隐私协议页面-->
<!--<web-view src="https://xzjl-api.windymuse.cn/"></web-view>-->
<view>跳转页面,待完善</view>
<!--pages/home/me/yhsyxy/yhsyxy.wxml 用户使用协议-->
<!-- 头部导航 -->
<view class="user-container">
<view class="user-header">
<view class="header-reback" bindtap="go2Reback"></view>
<view>隐私协议</view>
</view>
<view class="user-main">
<view class="main-title">星座守护精灵 隐私协议</view>
<text class="main-text">
<text class="main-text-title">一、总则</text>
星座守护精灵 是北京蛋荚科技有限责任公司(以下简称“我们”)开发、运营和管理的工具类产品。我们非常重视用户个人信息的保护。您在使用我们的产品或服务时,我们可能会收集和使用您的相关信息。我们希望通过《隐私政策》(以下简称“本政策”)向您说明我们在收集和使用您相关个人信息时对应的处理规则等相关事宜,以便更好地保障您的权益。 请在使用星座守护精灵服务前仔细阅读本《隐私政策》。如果您进一步访问并使用星座守护精灵,则表示您了解并接受了本《隐私政策》中所述的全部内容,并同意受其约束。如果您不接受前述任何内容,请停止访问或使用星座守护精灵。
本政策旨在向您说明以下内容:
1. 总则
2. 权限申请及应用场景
3. 我们如何使用这些信息
4. 我们如何分享和披露用户信息
5. 我们如何保护用户信息
6. 如何收集、更新、变更、删除您的信息
7. Cookies及类似技术
8. 未成年人使用我们的服务
9. 本政策的适用范围
10. 本政策的更新
11. 如何联系我们
12. 第三方SDK说明
如您对本隐私政策或相关事宜有任何疑问,您可随时与我们联系。
<text class="main-text-title">二、权限申请及应用场景</text>
我们对于软件需要在用户使用设备上获取的权限非常严格和克制,在使用本应用过程中,我们会向您申请使用该功能所必须的权限,若您不同意开启该权限,请点击“我不同意”,拒绝该权限的申请仅将影响您对特定产品功能的使用。我们在此向您列举产品将可能申请的权限及其使用目的。
1无线连接为了便于用户WiFi状态下进行获取好友的动态本产品的基础功能便于知晓好友近况。
2定位权限当您需要使用定位功能并使用我们基于位置提供相关服务时我们需要收集位置信息以使得您不需要手动输入自身地理坐标就可获得相关服务。使用网络进行定位通过GPS或wifi等方式持续收集您的位置信息。您可以通过系统授权关闭定位功能停止我们对您位置信息的收集但之后您可能将无法使用相关服务或功能
3设备信息为了保证地图基础功能服务的正常运行向您提供问题诊断等服务并进行数据统计我们会收集您的网络设备MAC地址收集您的设备信息以便提供更适合的定制化服务例如向您展示相关程度更高的搜索结果、设备产商、设备型号、设备语言、设备名称、应用列表信息、操作系统和应用程序版本、分辨率、IMEI信息、IP地址、应用包名及版本、独立设备标识、访问日期和时间、软硬件特征信息等数据用于鉴别用户身份、记录系统故障和分析系统故障时产生的原因
4Android ID用于检测和防止欺诈活动鉴别用户身份、记录系统故障和分析系统故障时产生的原因检验用户行为是否为机器程序批量自动化操作判断提供相关依据信息脱敏处理后用来建立异常流量识别模型实现流量反欺诈技术。
5存储权限读取、存储将应用的图片及其他文件缓存/存储到手机上,以及读取一存储的图片及其他文件
6检索运行的应用为了让用户更好的体验服务丰富用户内容画像以及平台为用户内容拓展提供决策参考平台根据用户安装软件的偏好将会在用户每日第一次打开时收集用户已安装并运行的应用软件信息对正在运行中的应用程序进行针对性的优化启动速度。
7我们会从微信第三方获取您授权共享的账户信息头像、昵称、地区。登录后将您的第三方账户与星座守护精灵绑定使您可以通过第三方账户直接登录并使用我们的产品和服务。我们会将依据与第三方的约定、对个人信息来源的合法性进行确认后在符合相关法律和法规规定的前提下使用您的个人信息。
8日志信息你使用地图的搜索服务时我们的服务器会自动记录您的日志信息包括您输入的搜索关键词信息和您发布的报错信息、反馈信息、你上传的图片信息、您的IP地址、操作系统的版本、硬件设备信息、网络运营商的信息、使用时长、浏览记录、您对星座守护精灵呈现的推送信息的反馈、您下载和使用应用程序、您使用第三方平台的情况等方面的信息
<text class="main-text-title">三、我们如何使用这些信息</text>
对于我们收集或接收的有关您的信息,我们可能会用于多种目的,包括但不限于:
1、将您的公开信息进行汇总、分析以形成报告
2、处理您提交的咨询、订阅或定制服务或让您参与有关我们产品和服务的调查
3、管理会员资格及会员权益(如认证身份、管理会员账户、组织会员活动、发放会员福利等)
4、运营和改善星座守护精灵的服务(如设计并推广定制化的服务和产品、推送有针对性的资讯、提升用户体验、及时发现并解决星座守护精灵的技术问题、向您提供与您更加相关的广告以替代普遍投放的广告等)
5、对星座守护精灵进行推广(如对用户信息进行统计并制作反映用户分布及兴趣偏好总体状况等的分析报告、制作市场营销图表或其它营销材料,评估我们服务中的广告和其他促销及推广活动的效果,并加以改善),但我们会对该材料进行去个体识别化处理。
6、用于网络安全防范在我们提供服务时用于身份验证、客户服务、安全防范、诈骗监测、存档和备份用途确保我们向您提供的产品和服务的安全性
7、应用户特殊要求而提供特定服务时需要将信息提供给我们的关联公司、第三方或其他用户
8、其他有利于用户和星座守护精灵运营者利益且不违反任何强制性法律法规的情况。
<text class="main-text-title">四、我们如何分享和披露用户信息</text>
1、除非事先征得您的同意或符合本政策的相关规定我们不会向任何第三方提供、出售、出借、出租或分享用户信息也不允许任何第三方以任何手段查询、收集、编辑或传播我们收集或接收的用户信息。
2、我们会聘请第三方提供特定产品或服务如递送相关资讯、对用户信息进行统计分析、网站托管、邮件管理及网站统计分析等。为提供该等产品或服务之目的供应商将可能在其提供产品或服务所必须的范围内获得我们收集或接收的有关的用户信息。我们严格要求各供应商对其获得的用户信息保密并禁止其将该等用户信息用于提供相关产品或服务以外的任何其他目的。
3、同时我们会根据法律、行政或司法机关的决定、命令或要求来保留或分享用户信息。在我们认为分享用户信息对遵守相关的法律是必要的时候我们也会分享该些信息。此外若分享用户信息对于保护星座守护精灵、用户或其他方的权益是必要或适当的我们也会分享用户信息。
4、我们可能会将您的个人数据与我们的旗下产品共享以在旗下产品中提供更一致的体验和更优质的服务。我们保证其将按照本政策所示目的和要求对您的个人数据进行相应的处理。如旗下产品希望将您的个人数据用于本政策所载目的以外的其他目的我们将再次征得您的同意。
5、在如下情况下星座守护精灵可能会披露您的信息
1事先获得您的授权
2您使用共享功能
3根据法律、法规、法律程序的要求或政府主管部门的强制性要求
4以学术研究或公共利益为目的
5为维护星座守护精灵的合法权益例如查找、预防、处理欺诈或安全方面的问题
6符合相关服务条款或使用协议的规定。
<text class="main-text-title">五、我们如何保护用户信息</text>
1、我们将采取合理的技术措施和其它必要措施以确保用户信息的安全并努力防止用户信息泄露、丢失或遭受破坏。其中包括1使用加密技术来确保您的数据在传输过程中保持私密性2审查我们在收集、存储和处理信息方面的做法包括实体安全措施以防未经授权的人员访问我们的系统4所有因提供服务而必须接触个人信息的 星座守护精灵 员工、承包商和代理商等,都需要遵守合同中规定的严格保密义务,否则可将被处分或被解约。
2、尽管严格遵守法律法规要求的标准并已经采取了上述合理有效措施但由于技术的限制以及可能存在的各种恶意手段等我们无法控制的原因星座守护精灵无法始终保证信息绝对安全我们将尽力确保您提供给我们的个人信息的安全性。因此我们强烈建议您采取积极措施保护个人信息的安全包括但不限于使用复杂密码、定期修改密码、不将自己的账号密码等个人信息透露给他人。
3、我们会制定应急处理预案并在发生用户信息安全事件时立即应急预案努力阻止该等安全事件的影响和后果扩大。在不幸发生用户信息安全事件泄露、丢失等我们将按照法律法规的要求及时向您告知。同时我们还将按照监管部门要求上报个人信息安全事件的处置情况。
<text class="main-text-title">六、如何收集、更新、变更、删除您的数据和信息</text>
我们在提供服务的过程中可能会收集您的如下个人数据,这些数据对于本产品各项功能的实现至关重要。我们将使用这些数据来帮助我们开发和改进我们的产品,以提供更加优质的服务。我们将严格遵守本隐私政策所载明的目的来使用您的个人数据。当我们需要将数据用于本隐私政策未载明的目的时,或者将基于特定目的收集的个人信息用于其他目的时,我们会事先向您告知并征得您的同意。
1、本产品是具备完整的功能并提供丰富的内容和服务的工具产品。根据产品功能属性的不同我们将在不同场景下收集您不同类型的个人数据并为实现产品功能的需要进行使用。
2、为了严格遵守相关国家或地区的法律政策我们需要通过预激活服务来判断您所在的国家或地区。在预激活时我们会将您的IP地址、国家代码MCC、手机语言、系统版本等信息传到我们的服务器。这些信息只用于判断您所在的国家或地区从而为您提供符合该国家或地区的协议和服务。这些信息在完成判断后将在短时间内被删除不会永久保存。
3、目前我们支持手机号登陆与第三方账号登录即微信登陆当您使用微信登录时我们将会获取账号的昵称和头像相关信息。登陆后将您的第三方账户与星座守护精灵绑定使您可以通过第三方账户直接登陆并使用我们的产品和服务。我们将会依据与第三方的约定、对个人信息来源的合法性进行确认后在符合相关法律和法规规定的前提下使用您的个人信息。注销账号只需退出登录即可我们将会清除该账号的所有信息。
4、搜索功能是为了本产品所必需的基本功能。当您使用时我们会收集您的搜索关键字信息、日志记录等。
5、我们通过云服务接口为您提供了丰富的功能和服务比如垃圾清理、产品升级等。为了保证云服务的正常运行我们需要收集一些必要的数据主要包括应用包名、应用版本、应用安装时间等应用信息国家码、系统语言、系统时区等系统信息屏幕分辨率等设备信息运营商等网络信息。
6、您在使用我们的产品和服务时会被要求提供您真实的个人信息您应当对您所提供信息的真实性、合法性、有效性及完整性负责并及时更新和维护您的个人信息以保证信息的真实、合法和有效。您可以随时管理您的个人信息例如您的个人账户注册信息。您可以自行从 星座守护精灵 账号中删除您的内容或个人信息(若您之前已创建了会员账户),或要求我们删除或修改信息,例如您想要删除个人帐户,可以通过软件内的账号注销功能。
<text class="main-text-title">七、Cookies及类似技术</text>
1、Cookies是用户访问网站时存放于用户的计算机等设备中的小文件可被用于存储与您的计算机或设备绑定的唯一识别码以便用户在不同网站的不同浏览进程中被识别为同一个用户。Cookies提供了多种有用的功能例如可以用来记忆用户的密码或记录用户已经注册过的项目使用户在网站上的操作更加有效率。
2、我们可能通过Cookies收集用户信息。用户拥有完全的自主权自行设置浏览器以禁用或限用Cookies。但是该等设置可能导致用户无法登录或使用依赖于Cookie的星座守护精灵的某些服务或功能。
3、 我们还可能使用其他类似的技术例如beacons、flash cookies和HTML5本地存储等。这些技术与Cookies的相似之处在于他们均被存储于用户的设备中并可用于存储与用户的行为和偏好有关的信息。用户拥有完全的自主权自行设置以禁用或限用该等技术。同样该等设置可能导致用户无法登录或使用星座守护精灵的某些服务或功能。
<text class="main-text-title">八、未成年人使用我们的服务</text>
我们建议若您是18周岁以下的未成年人在使用我们的产品或服务前应事先取得其父母或监护人的同意并建议未成年人在提交的个人信息之前寻求父母或监护人的同意和指导。
<text class="main-text-title">九、本政策的适用范围</text>
本隐私政策适用于星座守护精灵及其关联公司提供的所有服务。但是不包括附有独立隐私政策的服务(如第三方提供的产品和服务)。请您注意,本隐私政策不适用于以下情况:
1、通过我们的服务而接入的第三方服务包括任何第三方网站收集的信息本隐私权政策不适用于第三方提供的产品和服务例如在于星座守护精灵上由第三方提供的产品和服务以及在我们的服务中链接到的其他网站这些产品、服务或网站会有独立的隐私政策予以规范请另行查阅相应的政策规定
2、通过在我们服务中进行广告服务的其他公司或机构所收集的信息。
<text class="main-text-title">十、本政策的更新</text>
1. 我们可能会不定期修改、更新本隐私政策,有关隐私政策的更新,我们会在 星座守护精灵 软件及网站中以通知公告等形式发布,您可以访问 星座守护精灵 软件及网站中查询最新版本的隐私政策。对于重大变更,我们会向您发出郑重通知(包括对于某些服务,我们会通过电子邮件发送通知,说明对隐私政策进行的更改)。
<text class="main-text-title">十一、如何联系我们</text>
北京蛋荚科技有限责任公司成立于2022年05月09日
我们的联系邮箱是eggpoder@gmail.com
如您对本政策存在任何问题或建议,或者您需要行使您的数据管理权力,对您的隐私数据进行管理,请随时联系我们。
<text class="main-text-title">十二、第三方SDK说明</text>
我们所接入的第三方 SDK 可能会调用您的设备权限、获取您的相关信息,以便您在不同的手机设备或第三方平台上正常使用相应功能,我们将这些具有个人信息手机功能的第三方 SDK 的名称、提供商、所提供的功能 / 服务隐私政策链接、收集个人信息类型,按照实现功能 / 服务的类别划分说明如下:
12.1. 我们对接入的相关第三方SDK在目录中列明
请注意第三方SDK可能因为其版本升级、策略调整等原因导致数据处理类型存在一定变化请以第三方SDK公示的隐私政策为准。具体如下
12.1.1. 微信开放平台
公司信息:深圳市腾讯计算机系统有限公司
获取信息以及目的:提供第三方登录分享服务;
微信公众平台服务协议:
https://mp.weixin.qq.com/cgi-bin/announce?action=getannouncement&key=1503979103&version=1&lang=zh_CN&platform=2
12.1.2. 支付宝
公司名称:支付宝(中国)网络技术有限公司
用途目的:用于集成支付宝支付功能及生成设备标识
隐私政策https://opendocs.alipay.com/open/54/01g6qm
</text>
</view>
</view>

@ -1 +1,52 @@
/* pages/home/me/ysxy/ysxy.wxss */
/* pages/home/me/ysxy/ysxy.wxss *//* pages/home/me/yhsyxy/yhsyxy.wxss */
.user-container {
width: 100%;
height: 100%;
padding-top: 88rpx;
display: flex;
flex-direction: column;
}
.user-header {
position: relative;
width: 100%;
height: 88rpx;
display: flex;
align-items: center;
justify-content: center;
color: rgba(108, 108, 108, 1);
font-size: 32rpx;
}
.header-reback{
position: absolute;
left: 20rpx;
width:48rpx;
height:48rpx;
background-repeat: no-repeat;
background-size:100% 100%;
background-image: url(https://wish-assets.windymuse.com.cn/xy/reback.png);
}
.user-main {
flex: 1;
padding: 48rpx 64rpx;
overflow-y: scroll;
}
.main-title {
width: 100%;
margin-bottom: 46rpx;
color: #000000;
font-size: 36rpx;
text-align: center;
}
.main-text {
color: rgba(16, 16, 16, 1);
font-size: 24rpx;
}
.main-text-title {
font-weight: 700;
}

@ -143,7 +143,10 @@ Page({
limit:-1,
type: 'graphic'
}).then(res => {
const list = res.data.data.records
// 过滤情侣发送的图片
const list = res.data.data.records.filter(item => {
return item.isSelf
})
list.forEach(item => {
// 将时间字符串转为Date对象
const date = new Date(item.createdAt);

@ -72,12 +72,8 @@ Page({
})
}
})
},
// 关闭分享成功弹层
closeScsBtn(){
this.setData({
@ -100,7 +96,9 @@ Page({
mac: this.data.mac
}).then(res => {
this.setData({mac: ''}),
this.doQueryInit()
wx.switchTab({
url: '/pages/home/jl/index'
})
})
},
@ -180,8 +178,8 @@ Page({
}
},
toSend(){
wx.navigateTo({
url: 'xz/xz'
wx.redirectTo({
url: '/pages/xz/index?open=' + true
})
}
})

@ -163,64 +163,61 @@ Page({
})
},
do2FsLuyin(){/**发送录音按钮 */
// this.data.RM.stop();
// 发送录音
do2FsLuyin(){
if (!this.data.luYinStatus || this.data.luYinStatus === 1) {
return console.log('录音还未结束');
}
console.log('发送录音')
this.setData({luyinVisible:false})
let tt= this
// this.data.RM.onStop((res)=>{
//录音时长判断
console.log('发送录音了1111。。')
// 先计算分钟
let fz = 0
let mz = 0
let hm = 0
if(this.data.soundData.duration>=60*1000){
fz = Math.floor(this.data.soundData.duration/(60*1000))
}
if(this.data.soundData.duration>=1000){
mz = Math.floor((this.data.soundData.duration-fz*60*1000)/(1000))
//录音时长判断
console.log('发送录音了1111。。')
// 先计算分钟
let fz = 0
let mz = 0
let hm = 0
if(this.data.soundData.duration>=60*1000){
fz = Math.floor(this.data.soundData.duration/(60*1000))
}
if(this.data.soundData.duration>=1000){
mz = Math.floor((this.data.soundData.duration-fz*60*1000)/(1000))
}
hm = this.data.soundData.duration - fz*60*1000-mz*1000
let sec = Math.floor(this.data.soundData.duration/1000)
let ssec = fz+'\''+mz+'\'\''
console.log(ssec)
wx.uploadFile({
url: 'https://xzjl-api.windymuse.cn/api/resource',
filePath: this.data.soundData.tempFilePath,
name: 'file',
header: {
'Authorization': wx.getStorageSync('token'),
'Content-Type': 'multipart/form-data'
},
formData: {
type: 'audio'
},
success(res){
let data = JSON.parse(res.data);
let id = data.data.id
req.postRequest('/api/user/curt/message/lover',{"type": "audio","resourceId": id,extra:{
ssec:ssec,
isBf:false //正在播放为false
}}).then((res)=>{
tt.onLoad()
if(res.data.code==200){
console.log(res.data)
}
}).catch((err)=>{
console.log(err);
})
},
fail(res) {
showToast('图片上传失败');
}
hm = this.data.soundData.duration - fz*60*1000-mz*1000
let sec = Math.floor(this.data.soundData.duration/1000)
let ssec = fz+'\''+mz+'\'\''
console.log(ssec)
wx.uploadFile({
url: 'https://xzjl-api.windymuse.cn/api/resource',
filePath: this.data.soundData.tempFilePath,
name: 'file',
header: {
'Authorization': wx.getStorageSync('token'),
'Content-Type': 'multipart/form-data'
},
formData: {
type: 'audio'
},
success(res){
let data = JSON.parse(res.data);
let id = data.data.id
req.postRequest('/api/user/curt/message/lover',{"type": "audio","resourceId": id,extra:{
ssec:ssec,
isBf:false //正在播放为false
}}).then((res)=>{
tt.onLoad()
if(res.data.code==200){
console.log(res.data)
}
}).catch((err)=>{
console.log(err);
})
},
fail(res) {
showToast('图片上传失败');
}
})
// })
})
},
doStopLuyin(){
this.setData({luYinStatus:2})
@ -345,14 +342,16 @@ Page({
title: '你点击了A',
icon: 'none'
});
// 调用自定义组件 popover 中的 onHide 方法
// this.popover.onHide();
},
// 删除消息
changAn(e){
const id = e.currentTarget.dataset.id
this.setData({delId:id})
},
// 关闭删除消息弹层
closeDel(){
this.setData({delId: 0})
},
deleteMsg(){
console.log(this.data.delId);
req.deleteRequest(`/api/user/curt/message/${this.data.delId}`,{}).then(res => {
@ -393,7 +392,7 @@ Page({
},
go2Reback(){
wx.reLaunch({
url: '/pages/home/xy/index',
url: '/pages/home/jl/index',
})
},
go2SeeHxDetail(e){
@ -496,7 +495,7 @@ Page({
}
})
this.setData({messages:list})
this.setData({messages:list.reverse()})
}
}).catch((err)=>{
console.log(err);
@ -596,7 +595,6 @@ Page({
},
getLetter(e){
console.log(e.currentTarget.dataset.item.id,'222');
const id = e.currentTarget.dataset.item.id
wx.redirectTo({
url: '/pages/home/xx/lindex/lxz/lxz?id=' + id

@ -6,7 +6,7 @@
<view class="title">星讯</view>
</view>
<view class="allTap">
<view class="allTap" bindtap="closeDel">
<!--聊天内容-可以滑动-->
<view class="ltinfo">
@ -230,8 +230,7 @@
<view class="luyinblock">
<view class="header">
<view class="qxly" aria-role="button" bindtap="quxiaoLuyin">取消</view>
<view class="qrfs qrfs1" aria-role="button" wx:if="{{luYinStatus!=2}}">发送</view>
<view class="qrfs qrfs2" aria-role="button" wx:if="{{luYinStatus==2}}" bindtap="do2FsLuyin">发送</view>
<view class="qrfs qrfs2" aria-role="button" bindtap="do2FsLuyin">发送</view>
</view>
<!--计时器-->
<view class="luyinjishiqi">{{dsQTime}}</view>

@ -36,8 +36,6 @@ Page({
isPlaying: false // 是否正在播放语音
},
already(){
console.log('确定寄出');
this.setData({showAlready:true})
const list = []
this.data.messageList.forEach(item => {
const obj = {}
@ -74,6 +72,9 @@ Page({
title: '信札发送成功',
icon: 'success'
})
wx.redirectTo({
url: '/pages/home/xx/lindex/lindex'
})
}
})
},
@ -145,12 +146,15 @@ Page({
console.log('添加图片');
wx.chooseMedia({
mediaType: 'image',
count: 9,
success: (res) => {
const files = res.tempFiles[0]
if(files.size > 5 * 1024 * 1024 ){
this.setData({showImgBig:true})
}
this.uploadFile(res.tempFiles[0].tempFilePath,'poster')
const files = res.tempFiles
files.forEach(item => {
if(item.size > 5 * 1024 * 1024 ){
return this.setData({showImgBig:true})
}
this.uploadFile(item.tempFilePath,'poster')
})
}
})
},

@ -102,8 +102,6 @@
<view class="taost" wx:if="{{showSend}}">
<view class="taost-box2">
<view class="taost-box-text">确定要寄出吗?</view>
<view class="taost-box-text">信件寄出后,再次使用晶石激活</view>
<view class="taost-box-text">将直接提示打开信件</view>
<view class="Send-btn">
<view class="taost-box-btn" bindtap="closeShowSend">取消</view>
<view class="taost-box-btn" bindtap="already">确定</view>
@ -111,24 +109,6 @@
</view>
</view>
<view class="already" wx:if="{{showAlready}}">
<view class="already-top"></view>
<view class="already-img"></view>
<view class="already-text">
<view class="already-text1">你的信件已打包好!</view>
<view class="already-text1">快把晶石送给收信人吧!</view>
<view class="already-text3">收信人首次将晶石贴近手机</view>
<view class="already-text2">将会提示打开信件</view>
<view class="already-text2">点击OK回到未激活初始页面</view>
<view class="already-text2">如果误打开信件,需要再次寄出哦!</view>
<view class="already-btn">
<view class="btn" bindtap="modify">修改</view>
<view class="btn" bindtap="logout">OK</view>
</view>
</view>
<view class="already-bom"></view>
</view>
<!-- 预览页面 -->
<view wx:if="{{Preview}}" class="preview">
<!-- 信件主体内容 -->

@ -451,17 +451,19 @@ textarea {
}
.taost-box-text {
margin-bottom: 20rpx;
width: 100%;
height: 200rpx;
display: flex;
margin-bottom: 20rpx;
justify-content: center;
align-items: center;
color: rgba(108, 108, 108, 1);
font-size: 18px;
font-size: 38rpx;
}
.taost-box-btn {
width: 210rpx;
height: 64rpx;
height: 70rpx;
margin: 80rpx auto;
border-radius: 20rpx;
background: linear-gradient(233.49deg, rgba(248,99,42,1) 10.48%,rgba(249,135,89,1) 89.2%);
@ -484,92 +486,6 @@ textarea {
margin: 20rpx 0;
}
.already {
position: absolute;
width: 100%;
height: 100%;
z-index: 999;
background-color: #fff;
}
.already-top {
width: 100%;
height: 230rpx;
margin-top: 104rpx;
background-image: url(https://wish-assets.windymuse.com.cn/xy/bgt1.png);
background-size: contain;
}
.already-bom {
position: absolute;
bottom: 0;
width: 100%;
height: 230rpx;
background-size: contain;
}
.already-img {
margin: 0 auto;
width: 660rpx;
height: 522rpx;
background-size: contain;
background-image: url(https://wish-assets.windymuse.com.cn/xy/xzt.png);
}
.already-text {
width: 100%;
margin-top: 80rpx;
}
.already-text1 {
width: 100%;
display: flex;
justify-content: center;
color: rgba(108, 108, 108, 1);
font-size: 18px;
margin-bottom: 10rpx;
}
.already-text2 {
width: 100%;
display: flex;
justify-content: center;
color: rgba(108, 108, 108, 1);
font-size: 14px;
margin-top: 20rpx;
}
.already-text3 {
width: 100%;
display: flex;
justify-content: center;
color: rgba(108, 108, 108, 1);
font-size: 14px;
margin-top: 72rpx;
}
.already-btn {
width: 100%;
margin-top: 48rpx;
display: flex;
justify-content: space-around;
}
.already-btn .btn {
width: 210rpx;
height: 70rpx;
box-sizing: border-box;
border-radius: 20rpx;
background: linear-gradient(222.54deg, rgba(248,99,42,1) 14.03%,rgba(249,135,89,1) 85.21%);
box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.4);
border: 3px solid rgba(255, 255, 255, 1);
display: flex;
justify-content: center;
align-items: center;
color: #fff;
z-index: 999;
}
editor {
background-color: pink;
}

@ -36,7 +36,28 @@ Page({
isPlaying: false // 是否正在播放语音
},
already(){
console.log('确定寄出');
// 校验
if (this.data.from === '') {
wx.showToast({
title: '寄件人不能为空',
icon: 'error'
})
return this.setData({showSend: false})
}
if (this.data.to === '') {
wx.showToast({
title: '收件人不能为空',
icon: 'error'
})
return this.setData({showSend: false})
}
if (this.data.messageList.length <= 1) {
wx.showToast({
title: '写点东西吧',
icon: 'error'
})
return this.setData({showSend: false})
}
this.setData({showAlready:true})
const fromData = {
from: this.data.from,
@ -88,13 +109,9 @@ Page({
this.setData({messageList: list})
},
goBack(){
// if (this.data.Preview) {
// this.setData({Preview: false})
// }else{
// console.log('返回');
// wx.navigateBack()
// }
wx.navigateBack()
wx.reLaunch({
url: '/pages/home/xx/index'
})
},
// 获取文本框内容
getTextValue(e){
@ -116,12 +133,16 @@ Page({
console.log('添加图片');
wx.chooseMedia({
mediaType: 'image',
count: 9,
success: (res) => {
const files = res.tempFiles[0]
if(files.size > 5 * 1024 * 1024 ){
this.setData({showImgBig:true})
}
this.uploadFile(res.tempFiles[0].tempFilePath,'poster')
const files = res.tempFiles
console.log(res.tempFiles, '这里');
files.forEach(item => {
if(item.size > 5 * 1024 * 1024 ){
return this.setData({showImgBig:true})
}
this.uploadFile(item.tempFilePath,'poster')
})
}
})
},

@ -13,9 +13,8 @@ Page({
xyNfc:true,
xyInfo:{},
visible:false,
showEnergy:true
showEnergy:false
},
/**获取星座图片对应关系 */
getXzTp(){
req.getRequest('/api/dict/value/horoscope-resource',{}).then((res)=>{
@ -54,16 +53,25 @@ Page({
// 关闭运势提示
closeYs(){
this.setData({visible: !this.data.visible, showEnergy: true})
if (this.data.visible) {
const time = setTimeout(() => {
this.setData({showEnergy: false})
}, 1000);
this.setData({time : time})
}
if (!this.data.visible) {
clearTimeout(this.data.time)
}
this.setData({
visible: false ,
showEnergy: false
})
clearTimeout(this.data.time)
},
openYs(){
this.setData({
visible: true ,
showEnergy: true
})
const time = setTimeout(() => {
this.setData({
showEnergy: false
})
}, 1000);
this.setData({
time: time
})
},
// 判断是否第一次登入
@ -75,19 +83,26 @@ Page({
visible: false
})
}else {
if (this.data.userInfo.horoscope) {
this.setData({visible: true, showIsFirst: false})
setTimeout(() => {
this.setData({showEnergy: false})
}, 3000);
}
this.setData({
visible: true ,
showEnergy: true
})
setTimeout(() => {
this.setData({
showEnergy: false
})
}, 2000);
}
},
// 关闭第一次登入弹层
closeFirst(){
console.log('关闭弹层');
this.setData({showIsFirst: false})
this.setData({
showIsFirst: false,
visible: true
})
wx.setStorageSync('isFirst', false)
},
childTap() {
console.log('子盒子被点击');
@ -130,6 +145,7 @@ Page({
this.upImprove()
this.getDefaultAvatars()
this.getUserLoverInfo()
this.isFirst()
},
/**

@ -1,18 +1,18 @@
<!--pages/home/xy/index.wxml-->
<view class="jrys"></view>
<view class="gold111"></view>
<view class="gold" bindtap="closeYs">
<view class="gold" bindtap="openYs">
<view class="gold1"></view>
<view class="gold2"></view>
<view class="gold3" bindtap="ToastDialog"></view>
<view class="gold3"></view>
</view>
<view class="book"></view>
<view class="star" bindtap="closeYs"></view>
<view class="star" bindtap="openYs"></view>
<view class="xyszy">{{userInfo.horoscope.number}}</view>
<view class="xyysy">{{userInfo.horoscope.color}}</view>
<view class="text1">幸运数字</view>
<view class="text2">{{userInfo.horoscope.name}}</view>
<view class="text2">{{userInfo.constellation}}</view>
<view class="text3">幸运颜色</view>
<view class="showEnergy {{showEnergy ? '' : 'hide'}}">
@ -21,7 +21,7 @@
</view>
<image class="xzy" src="{{xzInfo[userInfo.horoscope.name].avatar}}"></image>
<image class="xzy" src="{{xzInfo[userInfo.constellation].avatar}}"></image>
<view class="ttpopup" wx:if="{{visible}}" bindtap="closeYs">
<view class="ztys">{{userInfo.horoscope.summary}}</view>
@ -33,7 +33,9 @@
<!-- 第一次登入欢迎页面 -->
<view class="isFirst" bindtap="closeFirst" wx:if="{{showIsFirst}}">
<view class="isFirst-img" catchtap="childTap"></view>
<view class="isFirst-img" catchtap="childTap">
<image mode="heightFix" src="{{xzInfo[userInfo.constellation].sprite[userInfo.spriteType]}}" />
</view>
<view class="isFirst-box" catchtap="childTap">
<view>Hi~</view>
<view>我是你的星座守护精灵</view>

@ -339,8 +339,12 @@
width: 328rpx;
height: 774rpx;
margin-top: 290rpx;
background-size: contain;
background-image: url(https://ydxxkj-wish.oss-cn-hangzhou.aliyuncs.com/xy/isFistImg.png);
display: flex;
justify-content: center;
}
.isFirst-img image {
height: 100%;
}
.isFirst-box {
@ -348,7 +352,7 @@
top: 600rpx;
width: 514rpx;
height: 300rpx;
padding: 40rpx 66rpx;
padding: 40rpx 0 40rpx 66rpx;
box-sizing: border-box;
border-radius: 30rpx;
opacity: 0.9;

@ -36,15 +36,14 @@ Page({
showToast:false, //显示提示弹层
showCanvas:false
},
handleAdd(e){/**添加图片 */
const { fileList } = this.data;
const { files } = e.detail;
// 方法1选择完所有图片之后统一上传因此选择完就直接展示
this.setData({
fileList: [...fileList, ...files], // 此时设置了 fileList 之后才会展示选择的图片
});
files.forEach(file => this.uploadFile(file))
// 添加图片
handleAdd(e){
// 上传图片显示loading
wx.showLoading({
title: '图片上传中',
mask: true
})
this.uploadFile(e.detail.files[0])
},
handleRemove(e){/**删除图片 */
const { index } = e.detail;
@ -56,7 +55,6 @@ Page({
});
},
uploadFile(file) {/**执行 */
console.log(file,'这里');
wx.uploadFile({
url: 'https://xzjl-api.windymuse.cn/api/resource',
filePath: file.url,
@ -68,19 +66,14 @@ Page({
formData: {
type: 'poster'
},
success: async res => {
success: res => {
let data = JSON.parse(res.data);
if (data.code == 200) {
this.setData({imgUrl:data.data.abUrl})
res.data = JSON.parse(res.data);
if (res.data.code == 1) {
console.log(res.data.data.url);
this.img = this.baseUrl + res.data.data.url;
// 图片路径
this.userinfo.avatar = res.data.data.url;
// let n = await this.$api.upload({ file: res.data.fullurl });
// console.log(n, '上传后');
}
if (data.code === 200) {
this.setData({
imgUrl: data.data.abUrl,
fileList: [file]
})
wx.hideLoading()
}
},
fail(res) {
@ -137,6 +130,10 @@ Page({
doCancelXy(){/**取消许愿 */
this.setData({
visible: false,
xyContent: '',
note: '',
xyLink: '',
fileList: []
});
},
@ -160,6 +157,31 @@ Page({
duration: 5000
})
}else{
// 判断是否修改数据
if (this.data.id) {
return req.patchRequest(`/api/user/curt/wish/${this.data.id}`,{
content:this.data.xyContent,
deadline:this.data.note,
img:this.data.imgUrl,
link:this.data.xyLink}).then(res => {
console.log(res);
if (res.data.code === 200) {
this.setData({
visible: false,
xyContent:'',
xyLink:'',
note:'',
imgUrl:'',
fileList:[]
})
wx.showToast({
title: '修改愿望成功',
icon: 'success'
})
}
})
}
req.postRequest('/api/user/curt/wish',{
content:this.data.xyContent,
deadline:this.data.note,
@ -169,7 +191,7 @@ Page({
if(res.data.code === 200){
this.setData({
visible: false,
});
});
this.setData({userInfo:res.data.data})
if(res.data.data&&res.data.data.loverId&&res.data.data.loverId!=null){
this.setData({single:false})
@ -314,12 +336,13 @@ startDraw() {
const that = this
wx.saveImageToPhotosAlbum({
filePath: url,
success: function() {
success: () => {
wx.showToast({
title: '保存成功',
icon: 'none',
duration: 1500
});
this.setData({showCanvas: false})
},
fail(err) {
if (err.errMsg === "saveImageToPhotosAlbum:fail:auth denied" || err.errMsg === "saveImageToPhotosAlbum:fail auth deny" || err.errMsg === "saveImageToPhotosAlbum:fail authorize no response") {
@ -376,12 +399,40 @@ startDraw() {
})
},
// 获取愿望详情 修改愿望
getWishDetaile(id){
req.getRequest(`/api/user/curt/wish/${id}`,{}).then(res => {
console.log(res,'22222');
if (res.data.code === 200) {
const data = res.data.data
const list = [{
url: data.img,
type: 'image'
}]
this.setData({
visible: true,
xyContent: data.content,
note: data.deadline,
xyLink: data.link,
fileList: list,
imgUrl: data.img,
id: data.id
})
}
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
this.initXy()
this.getMyWish()
// 修改愿望
if (options.id) {
this.getWishDetaile(options.id)
}
},
/**

@ -4,8 +4,14 @@
<view class="xybtn3" wx:if="{{!userInfo.loverId}}" bindtap="go2MyYw">我的愿望<view class="xyctoast">{{wishes.length}}</view></view>
<!--非单身情况下-->
<view class="qlxybtn2" wx:if="{{userInfo.loverId}}"><text class="btn21">银币</text><text class="btn22">{{userInfo.silverCoin}}枚</text></view>
<view class="qlxybtn21" wx:if="{{userInfo.loverId}}" bindtap="go2TaYw">Ta的愿望<view class="xyctoast">{{LoveWishes.length}}</view></view>
<view class="qlxybtn2" wx:if="{{userInfo.loverId}}">
<text class="btn21">银币</text>
<text class="btn22">{{userInfo.silverCoin}}枚</text>
</view>
<view class="qlxybtn21" wx:if="{{userInfo.loverId}}" bindtap="go2TaYw">
Ta的愿望
<view class="xyctoast">{{LoveWishes.length}}</view>
</view>
<view class="qlxybtn22" wx:if="{{userInfo.loverId}}" bindtap="go2MyYw">我的愿望<view class="xyctoast">{{wishes.length}}</view></view>
<view class="bgt3" ></view>
<view class="bgt2" ></view>
@ -20,7 +26,7 @@
<view class="ttop1-item">
<view class="xynr">许愿内容</view>
<t-textarea class="xynrf" model:value="{{xyContent}}" t-class="external-class" placeholder="内容限制30个字" />
<t-textarea class="xynrf" maxlength="30" model:value="{{xyContent}}" t-class="external-class" placeholder="内容限制30个字" />
</view>
<view class="ttop1-item">
@ -47,7 +53,7 @@
<view class="ttop1-item">
<view class="xytp">许愿图片</view>
<t-upload class="xytpt"
mediaType="{{['video','image']}}"
mediaType="{{['image']}}"
max="{{1}}"
files="{{fileList}}"
bind:add="handleAdd"
@ -73,24 +79,13 @@
<!-- 许愿祝福中 -->
<view class="xyc-process" wx:if="{{showXyz}}">
<t-image src="/images/hourglass.gif"/>
<t-image src="https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/hourglass.gif"/>
<view>愿望祝福中……</view>
</view>
<!--愿望详情-->
<view wx:if="{{showDetail}}" class="wishdetail-box">
<view class="wishdetail">
<!-- <canvas canvas-id="myCanvas" class="myCanvas" wx:if="{{showCanvas}}"></canvas>
<view id="my-canvas" class="my_canvas" bindtap="closeDetail">
<image class="logosta my_draw_canvas" src="https://oss.wish.ydxxkj.top/xy/jt.gif" data-type="image" data-url="https://wish-assets.windymuse.com.cn/xy/jxzdt.gif"></image>
<image class="popbox my_draw_canvas" src="https://wish-assets.windymuse.com.cn/xy/detailbkg.png" data-type="image" data-url="https://wish-assets.windymuse.com.cn/xy/detailbkg.png"/>
<image class="yximg my_draw_canvas" mode="heightFix" src="{{item.img}}" data-type="image" data-url="{{item.img}}"/>
<text class="ywwz2 my_draw_canvas" data-type="text" data-text="愿望">愿望</text>
<view class="ywxq2 my_draw_canvas" data-type="text" data-text="{{item.content}}">{{item.content}}</view>
<view class="qwsj2 my_draw_canvas" data-type="text" data-text="期望时间">期望时间</view>
<view class="qwsjtxt2 my_draw_canvas" data-type="text" data-text="{{item.deadline}}">{{item.deadline}}</view>
</view> -->
<view class="wishdetail" bindtap="closeDetail">
<canvas canvas-id="myCanvas" class="myCanvas" wx:if="{{showCanvas}}"></canvas>
<view id="my-canvas" class="my_canvas">
@ -129,7 +124,7 @@
</button>
<view class="item-text">微信</view>
</view>
<view class="box-item">
<!-- <view class="box-item">
<view class="item-icon cyan">
<t-image src="https://wish-assets.windymuse.com.cn/xy/antFill-pyq.png"></t-image>
</view>
@ -152,7 +147,7 @@
<t-image src="https://wish-assets.windymuse.com.cn/xy/antFill-qqkj.png"></t-image>
</view>
<view class="item-text">QQ空间</view>
</view>
</view> -->
<view class="box-item">
<view class="item-icon orange" bindtap="gitImg">
<t-image src="https://wish-assets.windymuse.com.cn/xy/antFill-tp.png"></t-image>

@ -68,49 +68,49 @@
position: absolute;
margin-left: 30rpx;
margin-top: 193rpx;
width: 200rpx;
height: 67.495rpx;
border-radius: 10px;
width: 210rpx;
height: 70rpx;
border-radius: 20rpx;
background: linear-gradient(233.49deg, rgba(248,99,42,1) 10.48%,rgba(249,135,89,1) 89.2%);
text-align: center;
box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.4);
border: 3px solid rgba(255, 255, 255, 1);
line-height: 67.495rpx;
box-shadow: 0px 4rpx 12rpx 0px rgba(0, 0, 0, 0.4);
border: 6rpx solid rgba(255, 255, 255, 1);
color: aliceblue;
font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
font-size: 30rpx;
display: flex;
align-items: center;
justify-content: center;
}
.qlxybtn21{
position: absolute;
margin-left: 270rpx;
margin-top: 193rpx;
width: 200rpx;
height: 67.495rpx;
border-radius: 10px;
width: 210rpx;
height: 70rpx;
border-radius: 20rpx;
background: linear-gradient(233.49deg, rgba(248,99,42,1) 10.48%,rgba(249,135,89,1) 89.2%);
text-align: center;
box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.4);
box-shadow: 0px 4rpx 12rpx 0px rgba(0, 0, 0, 0.4);
border: 3px solid rgba(255, 255, 255, 1);
line-height: 67.495rpx;
color: aliceblue;
font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
font-size: 30rpx;
display: flex;
align-items: center;
justify-content: center;
}
.qlxybtn22{
position: absolute;
margin-left: 510rpx;
margin-top: 193rpx;
width: 200rpx;
height: 67.495rpx;
border-radius: 10px;
width: 210rpx;
height: 70rpx;
border-radius: 20rpx;
background: linear-gradient(233.49deg, rgba(248,99,42,1) 10.48%,rgba(249,135,89,1) 89.2%);
text-align: center;
box-shadow: 0px 2px 6px 0px rgba(0, 0, 0, 0.4);
border: 3px solid rgba(255, 255, 255, 1);
line-height: 67.495rpx;
box-shadow: 0px 4rpx 12rpx 0px rgba(0, 0, 0, 0.4);
border: 6rpx solid rgba(255, 255, 255, 1);
color: aliceblue;
font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
font-size: 30rpx;
display: flex;
align-items: center;
justify-content: center;
}
.btn21{
margin-left:10rpx;
@ -463,12 +463,15 @@
.ywxq2{
position: absolute;
top: 632rpx;
width: 100%;
left: 30rpx;
width: 560rpx;
/* padding: 0 50rpx;
box-sizing: border-box; */
height: 150rpx;
color: rgba(108, 108, 108, 1);
font-size: 36rpx;
text-align: center;
font-family: SourceHanSansSC-regular;
overflow: hidden;
}
.qwsj2{
position: absolute;
@ -549,6 +552,7 @@
height: 462rpx;
margin-bottom: 68rpx;
background-color: #fff;
z-index: 99999999;
}
.popup-main .main-top {

@ -22,8 +22,8 @@ Page({
getImg(){
console.log('获取图片');
this.setData({shareVisible: false, showCanvas:true})
this.drawMyCanvas()
this.setData({shareVisible: false, showCanvas:true})
},
drawMyCanvas() {
@ -87,12 +87,13 @@ startDraw() {
const that = this
wx.saveImageToPhotosAlbum({
filePath: url,
success: function() {
success: () => {
wx.showToast({
title: '保存成功',
icon: 'none',
duration: 1500
});
this.setData({showCanvas : false})
},
fail(err) {
if (err.errMsg === "saveImageToPhotosAlbum:fail:auth denied" || err.errMsg === "saveImageToPhotosAlbum:fail auth deny" || err.errMsg === "saveImageToPhotosAlbum:fail authorize no response") {
@ -200,17 +201,23 @@ startDraw() {
});
},
changeVisible(){
this.setData({visible:false, showCanvas:false})
this.setData({
visible:false,
showCanvas:false,
shareVisible: false
})
},
closeVisible(){
this.setData({visible : false})
},
go2Reback(){
wx.navigateBack({ changed: true });
// wx.navigateBack({ changed: true });
wx.switchTab({
url: '/pages/home/xyc/index'
})
},
getMyWish(){
req.getRequest('/api/user/curt/wish',{limit: '-1'}).then((res)=>{
console.log(res,'11111111')
if(res.data.code==200){
this.setData({wishes:res.data.data.records})
}
@ -218,6 +225,14 @@ startDraw() {
console.log(err);
})
},
// 修改愿望 回显数据
editYw(){
console.log('1111');
const id = this.data.detail.id
wx.reLaunch({
url: '/pages/home/xyc/index?id=' + id
})
},
/**
* 生命周期函数--监听页面加载

@ -22,7 +22,7 @@
</view>
<!-- 图标 -->
<view class="xy-icon" wx:if="{{item.status=='processing'}}">
<t-image class="icon" src="https://oss.wish.ydxxkj.top/xy/jt.gif"></t-image>
<t-image class="icon" src="https://wish-assets.oss-cn-hangzhou.aliyuncs.com/xy/jt.gif"></t-image>
<view class="text">进行中</view>
</view>
@ -50,7 +50,7 @@
<canvas canvas-id="myCanvas" class="myCanvas" wx:if="{{showCanvas}}"></canvas>
<view id="my-canvas" class="my_canvas" bindtap="changeVisible">
<image class="logosta my_draw_canvas" src="https://wish-assets.windymuse.com.cn/xy/ywc.png" data-type="image" data-url="https://wish-assets.windymuse.com.cn/xy/ywc.png" wx:if="{{detail.status=='completed'}}"></image>
<image class="logosta my_draw_canvas" src="https://oss.wish.ydxxkj.top/xy/jt.gif" data-type="image" data-url="https://oss.wish.ydxxkj.top/xy/jt.gif" wx:if="{{detail.status=='processing'}}"></image>
<image class="logosta my_draw_canvas" src="https://wish-assets.windymuse.com.cn/xy/jxzdt.gif" data-type="image" data-url="https://wish-assets.windymuse.com.cn/xy/jxzdt.gif" wx:if="{{detail.status=='processing'}}"></image>
<image class="logosta my_draw_canvas" src="https://wish-assets.windymuse.com.cn/xy/ygq.png" data-type="image" data-url="https://wish-assets.windymuse.com.cn/xy/ygq.png" wx:if="{{detail.status=='expired'}}"></image>
<image class="popbox my_draw_canvas" src="https://wish-assets.windymuse.com.cn/xy/detailbkg.png" data-type="image" data-url="https://wish-assets.windymuse.com.cn/xy/detailbkg.png"/>
<view class="yximg-box my_draw_canvas" data-url="{{detail.img}}" data-type="image">
@ -73,7 +73,7 @@
<view class="anwztxt1">删除</view>
</view>
<view class="anwz1">
<view class="yqq">
<view class="yqq" bindtap='editYw'>
<t-image class="anzmlogo1" src="https://wish-assets.windymuse.com.cn/xy/lxg.png"></t-image>
</view>
<view class="anwztxt1">修改</view>
@ -149,13 +149,13 @@
</button>
<view class="item-text">微信</view>
</view>
<view class="box-item">
<!-- <view class="box-item">
<view class="item-icon cyan">
<t-image src="https://wish-assets.windymuse.com.cn/xy/antFill-pyq.png"></t-image>
</view>
<view class="item-text">朋友圈</view>
</view>
<view class="box-item">
</view> -->
<!-- <view class="box-item">
<view class="item-icon orange">
<t-image src="https://wish-assets.windymuse.com.cn/xy/antFill-wb.png"></t-image>
</view>
@ -172,7 +172,7 @@
<t-image src="https://wish-assets.windymuse.com.cn/xy/antFill-qqkj.png"></t-image>
</view>
<view class="item-text">QQ空间</view>
</view>
</view> -->
<view class="box-item">
<view class="item-icon orange" bindtap="getImg">
<t-image src="https://wish-assets.windymuse.com.cn/xy/antFill-tp.png"></t-image>

@ -104,6 +104,11 @@
font-size: 28rpx;
font-weight: 700;
width: 320rpx;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box; /* 使用旧的 WebKit 内核的浏览器需要添加此属性 */
-webkit-box-orient: vertical; /* 设置为垂直方向排列 */
-webkit-line-clamp: 2; /* 最多显示的行数 */
}
.qwsjbox{
@ -182,6 +187,8 @@
top: 632rpx;
width: 100%;
height: 150rpx;
padding: 0 50rpx;
box-sizing: border-box;
color: rgba(108, 108, 108, 1);
font-size: 36rpx;
text-align: center;

@ -15,7 +15,8 @@ Page({
showDel:false,
imgList:[],
audioList:[],
messageList: []
messageList: [],
playVideos: true
},
openLetter(){
this.setData({showLetter: !this.data.showLetter}),
@ -63,10 +64,15 @@ Page({
},
// 播放录音
playVideos(e){
console.log(e.currentTarget.dataset.url.audio);
const innerAudioContext = wx.createInnerAudioContext()
innerAudioContext.src = e.currentTarget.dataset.url.audio
innerAudioContext.play()
if (this.data.playVideos) {
this.setData({playVideos: false})
const innerAudioContext = wx.createInnerAudioContext()
innerAudioContext.src = e.currentTarget.dataset.url.audio
innerAudioContext.play()
innerAudioContext.onEnded(() => {
this.setData({playVideos: true})
})
}
},
// 重置信札
resetLetter(){
@ -83,11 +89,27 @@ Page({
})
},
// 修改信札
editXz(){
wx.redirectTo({
url: '/pages/home/xx/xz/xz'
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
this.getUserInfo()
if (options.open) {
// 单人状态下点击【信札】跳转的页面
this.setData({showLetter: false})
}else if (options.id) {
// 情侣状态下点击【信札】跳转的页面
console.log(options.id, '111');
this.setData({showLetter: false})
}else {
this.getUserInfo()
}
},
/**

@ -50,8 +50,8 @@
<view class="btm-img-more" bindtap="openMore">
<image src="https://wish-assets.windymuse.com.cn/xy/md-more_horiz%20Copy%401x.png" />
</view>
<view class="btm-img-more modify" wx:if="{{showMore}}" bindtap="openDel">毁</view>
<!-- <view class="btm-img-more del" wx:if="{{showMore}}">修改</view> -->
<view class="btm-img-more modify" wx:if="{{showMore}}" bindtap="openDel">毁</view>
<view class="btm-img-more del" bindtap="editXz" wx:if="{{showMore}}">修改</view>
</view>
</view>

@ -8,13 +8,6 @@
"condition": {
"miniprogram": {
"list": [
{
"name": "",
"pathName": "pages/home/xx/lindex/lindex",
"query": "",
"launchMode": "default",
"scene": null
},
{
"name": "",
"pathName": "pages/home/xx/lindex/lxz/lxz",
@ -24,14 +17,7 @@
},
{
"name": "",
"pathName": "pages/home/xx/hy/index",
"query": "",
"launchMode": "default",
"scene": null
},
{
"name": "",
"pathName": "pages/home/jl/index",
"pathName": "pages/home/xx/hy/hx/hx",
"query": "",
"launchMode": "default",
"scene": null

Loading…
Cancel
Save