xinelu-applet-ui/pages/myinformation/myinformation.vue
2023-10-16 11:33:36 +08:00

469 lines
12 KiB
Vue

<template>
<view class="app">
<view class="topbanner">
<!-- <view class="title">
我的
</view> -->
<image src="../../static/pages/userbanner.png" mode="" class="userbanner"></image>
<image :src="baseurl+appPersonallist.headPictureUrl" mode="" class="headsculpture" @tap='updatainfo'>
</image>
<view class="namesigning">
<span class="name">
{{appPersonallist.patientName}}
</span>
<view class="signing">
未签约
</view>
</view>
<view class="phone">
{{appPersonallist.phone}}
</view>
<view class="switch btn" @tap='homeshow'>
切换家庭成员
</view>
<view class="manage btn" @click="gomanagefamily">
管理家庭成员
</view>
<view class="Threecategories">
<view class="item" @tap="goBehaviorpoints">
<view class="number">
0
</view>
<view class="text">
行为积分
</view>
</view>
<view class="item" @tap='gointegral'>
<view class="number">
0
</view>
<view class="text">
健康豆
</view>
</view>
<view class="item" @tap='gocoupon'>
<view class="number">
0
</view>
<view class="text">
优惠券
</view>
</view>
</view>
</view>
<view class="myorder">
<view class="title">
我的订单
</view>
<view class="righttitle" @tap="goorder(0,'')">
查看全部
<image src="../../static/huijiantou.png" mode=""></image>
</view>
<view class="orderStatus">
<view class="item" @tap="goorder(1,'WAIT_PAY')">
<image src="../../static/pages/daifukuan.png" mode=""></image>
<view class="text">
待付款
</view>
</view>
<view class="item" @tap="goorder(2,'WAIT_RECEIVED_GOODS')">
<image src="../../static/pages/daishouhuo.png" mode=""></image>
<view class="text">
待收货
</view>
</view>
<view class="item" @tap="goorder(3,'RECEIVED_GOODS')">
<image src="../../static/pages/daipingjia.png" mode=""></image>
<view class="text">
待评价
</view>
</view>
<view class="item" @tap="goorder(4,'EVALUATED')">
<image src="../../static/pages/yiwancheng.png" mode=""></image>
<view class="text">
已完成
</view>
</view>
</view>
</view>
<view class="myorder">
<view class="title">
常用功能
</view>
<view class="orderStatus">
<view class="item" @tap='goHealthrecords'>
<image src="../../static/pages/jiankangdangan.png" mode=""></image>
<view class="text">
健康档案
</view>
</view>
<view class="item">
<image src="../../static/pages/wodeyuyue.png" mode=""></image>
<view class="text">
我的预约
</view>
</view>
<view class="item">
<image src="../../static/pages/fuwupingjia.png" mode=""></image>
<view class="text">
服务评价
</view>
</view>
<view class="item"></view>
</view>
</view>
<view class="myorder titles" @tap="gonursestation">
<view class="title">
护理服务订单
</view>
<view class="righttitle">
<image src="../../static/huijiantou.png" mode=""></image>
</view>
</view>
<view class="myorder titles" @tap="expertOrder">
<view class="title">
专家咨询订单
</view>
<view class="righttitle">
<image src="../../static/huijiantou.png" mode=""></image>
</view>
</view>
<view class="myorder titles">
<view class="title">
签约信息
</view>
<view class="righttitle">
<image src="../../static/huijiantou.png" mode=""></image>
</view>
</view>
<view class="myorder titles">
<view class="title">
退出登录
</view>
<view class="righttitle">
<image src="../../static/huijiantou.png" mode=""></image>
</view>
</view>
<u-toast ref="uToast" />
<view class="mask" v-show="showhome" @click='maskhome'>
<view class="masktext" @tap.stop=''>
<view class="maskcontent">
<template v-for="item in familyList">
<view :class="item.identity === userInfo.identity ? 'p1' : 'p2'" @tap="changeFamilyInfo(item)">
<text>{{item.residentName}}</text>
<text>{{item.identity.substring(0,4)}}************{{item.identity.substring(16,18)}}</text>
</view>
</template>
</view>
<view class="add" @tap="addFamilyItem">
添加家庭成员
</view>
</view>
</view>
</view>
</template>
<script>
import {
mapActions
} from "vuex";
import {
appPersonal,
} from '@/api/pages/myinformation/myinformation.js';
import {
existPatientInfo
} from '@/api/pages/startup/index.js'
import {
createMobileToken
} from '@/api/pages/login/index.js'
import baseurl from '@/api/baseurl.js'
export default {
data() {
return {
baseurl: '',
appPersonallist: null, //获取个人信息
timer: null,
list: {},
showhome: false,//切换
};
},
onShow() {
// this.bjimg = baseurl + '/profile/appletPicture/inviteFriendsOne.png'
let that = this
this.baseurl = baseurl
const value = uni.getStorageSync('patientId');
if (value) {
that.myInfo()
} else {
that.appPersonallist = null
}
},
methods: {
remove() {
let that = this
const value = uni.getStorageSync('patientId');
if (value) {
uni.showModal({
title: '提示',
content: '确认要退出此账号吗',
success: function(res) {
if (res.confirm) {
uni.clearStorageSync();
that.$refs.uToast.show({
title: '退出账号成功',
type: 'success',
duration: '1000'
})
createMobileToken().then(res => {
uni.setStorageSync("token", res.data.token)
})
if (that.timer) {
clearTimeout(that.timer)
}
that.timer = setTimeout(e => {
uni.switchTab({
url: '/pages/homepage/homepage'
})
}, 1000)
}
}
});
} else {
that.$refs.uToast.show({
title: '您未登录,请先登录',
type: 'error',
duration: '1000'
})
}
},
removes() {
this.appPersonallist = null
// uni.removeStorageSync('patientId');
// uni.removeStorageSync('openid');
// uni.removeStorageSync('phone');
// uni.removeStorageSync('Refresh');
},
//获取个人信息
myInfo() {
var that = this
const value = uni.getStorageSync('openid');
const value2 = uni.getStorageSync('patientId');
if (value && value2) {
existPatientInfo(value).then(res => {
if (res.code == 200 && res.msg == 'LOGIN') {
appPersonal(value2).then(Response => {
if (Response.code == 200) {
that.appPersonallist = Response.data
if (!that.appPersonallist.integral) {
that.appPersonallist.integral = 0
}
that.appPersonallist.homeLatitude = Number(that.appPersonallist
.homeLatitude)
that.appPersonallist.homeLongitude = Number(that.appPersonallist
.homeLongitude)
} else if (Response.code == 9999) {} else {
that.removes();
}
})
} else {
that.removes();
}
})
} else {
that.removes();
}
},
updatainfo() {
const value = uni.getStorageSync('openid');
const value2 = uni.getStorageSync('patientId');
if (value && value2) {
uni.navigateTo({
url: `/pagesB/modify/modify`
})
} else {
this.gologin();
}
},
//护理站服务订单
gonursestation() {
const value = uni.getStorageSync('openid');
const value2 = uni.getStorageSync('patientId');
if (value && value2) {
uni.navigateTo({
url: '/pagesB/Nursingstationserviceorder/Nursingstationserviceorder'
})
} else {
this.gologin();
}
},
//去登陆
gologin() {
this.$refs.uToast.show({
title: '您未登录,请先登录',
type: 'error',
duration: '1000',
url: '/pages/login/login'
})
},
//优惠券
gocoupon() {
const value = uni.getStorageSync('openid');
const value2 = uni.getStorageSync('patientId');
if (value && value2) {
uni.navigateTo({
url: '/pagesB/coupon/coupon'
})
} else {
this.gologin();
}
},
//健康档案
goHealthrecords() {
uni.navigateTo({
url: '/pagesC/Healthrecords/Healthrecords'
})
},
//全部订单
goorder(index, item) {
// console.log(index, item)
// const value = uni.getStorageSync('openid');
// const value2 = uni.getStorageSync('patientId');
// if (value && value2) {
uni.navigateTo({
url: '/pagesB/CommodityOrder/CommodityOrder'
})
// uni.navigateTo({
// url: `/pagesB/CommodityOrder/CommodityOrder?toindex=${index}&&orderStatus=${item}`
// })
// } else {
// this.gologin();
// }
},
//去登陆
gologin() {
this.$refs.uToast.show({
title: '您未登录,请先登录',
type: 'error',
duration: '1000',
url: '/pages/login/login'
})
},
//护理站服务订单
gonursestation() {
const value = uni.getStorageSync('openid');
const value2 = uni.getStorageSync('patientId');
if (value && value2) {
uni.navigateTo({
url: '/pagesB/Nursingstationserviceorder/Nursingstationserviceorder'
})
} else {
this.gologin();
}
},
//行为积分
goBehaviorpoints() {
uni.navigateTo({
url: '/pagesB/Behaviorpoints/Behaviorpoints'
})
},
// 切换家庭成员
homeshow() {
// this.getSetting()
// this.listquery.bindingCity = uni.getStorageSync('userInfo').bindingCity
// getFamilyList(this.listquery).then(res => {
// this.familyList = res.data.data
// // })
this.showhome = true
},
//管理家庭成员
gomanagefamily() {
uni.navigateTo({
url: '/pagesB/managefamily/managefamily'
})
},
// 添加家庭成员
addFamilyItem() {
uni.navigateTo({
url:'/pagesB/AddMembers/AddMembers'
})
// if (!this.userInfo) {
// uni.showModal({
// title: "提示",
// content: "您还未注册,是否去注册?",
// confirmText: '是',
// cancelText: '否',
// success(res) {
// if (res.confirm) {
// uni.redirectTo({
// url: "/pages/login/login?mode=注册"
// })
// } else {
// wx.exitMiniProgram()
// }
// },
// })
// } else {
// this.getSetting()
// uni.navigateTo({
// url: '/pages/login/login'
// });
// }
},
//积分页面
...mapActions(["integralopenPopup"]),
gointegral() {
const value = uni.getStorageSync('openid');
const value2 = uni.getStorageSync('patientId');
if (value && value2) {
this.integralopenPopup();
setTimeout(e => {
uni.navigateTo({
url: `/pagesB/healthybeans/healthybeans?integral=${this.appPersonallist.integral}`
})
}, 0)
} else {
this.gologin();
}
},
//修改信息
updatainfo() {
const value = uni.getStorageSync('openid');
const value2 = uni.getStorageSync('patientId');
if (value && value2) {
uni.navigateTo({
url: `/pagesB/modify/modify`
})
} else {
this.gologin();
}
},
// 专家咨询订单
expertOrder() {
uni.navigateTo({
url: "/pagesB/ExpertlookOrder/ExpertlookOrder"
})
},
// getSetting() {
// uni.getSetting({
// withSubscriptions: true,
// success(res) {
// // console.log(res.subscriptionsSetting.itemSettings);
// let itemSettings = res.subscriptionsSetting.itemSettings
// if (!itemSettings || itemSettings['8InV9jXDT5sMj9OWfXEvlLQGlw2UaWfZ9OBMFxufmfk'] != 'accept') {
// uni.requestSubscribeMessage({
// tmplIds: ['8InV9jXDT5sMj9OWfXEvlLQGlw2UaWfZ9OBMFxufmfk']
// })
// return
// }
// }
// })
// }
}
}
</script>
<style lang="scss">
@import './myinformation.scss'
</style>