From 498e71eb8ce7db34e54f64dc2c83e8edc49c54a3 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 08 五月 2024 10:40:06 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit
---
h5/pages/meeting/personal/personal.vue | 484 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 484 insertions(+), 0 deletions(-)
diff --git a/h5/pages/meeting/personal/personal.vue b/h5/pages/meeting/personal/personal.vue
new file mode 100644
index 0000000..8be8573
--- /dev/null
+++ b/h5/pages/meeting/personal/personal.vue
@@ -0,0 +1,484 @@
+<template>
+ <view class="personal">
+ <view class="personal_image">
+ <view class="personal_image_box">
+ <image :src="userInfo.avatar ? `${userInfo.prefixUrl}${userInfo.avatar}` : defaultAvatar" mode="widthFix"></image>
+ </view>
+ <button class="personal_image_box_btn" open-type="chooseAvatar" @chooseavatar="bindchooseavatar">鏇存崲澶村儚</button>
+ </view>
+ <view class="personal_list">
+ <view class="personal_list_item" @click="show1 = true">
+ <view class="label">鏄电О</view>
+ <view class="right">
+ <text :class="userInfo.wechatName ? 'right_info black' : 'right_info'">{{userInfo.wechatName ? userInfo.wechatName : '鐐瑰嚮鑾峰彇寰俊鏄电О'}}</text>
+ <u-icon name="arrow-right" color="#CCCCCC" size="20"></u-icon>
+ </view>
+ </view>
+ <view class="personal_list_item">
+ <view class="label">鎵嬫満鍙�</view>
+ <view class="right">
+ <text :class="userInfo.mobile ? 'right_info black' : 'right_info'">{{userInfo.mobile ? userInfo.mobile : '鐐瑰嚮鑾峰彇寰俊鎵嬫満鍙�'}}</text>
+ <u-icon name="arrow-right" color="#CCCCCC" size="20"></u-icon>
+ </view>
+ </view>
+ <view class="personal_list_item" @click="show = true">
+ <view class="label">鐪熷疄濮撳悕</view>
+ <view class="right">
+ <text :class="userInfo.realname ? 'right_info black' : 'right_info'">{{userInfo.realname ? userInfo.realname : '璇疯緭鍏ョ湡瀹炲鍚�'}}</text>
+ <u-icon name="arrow-right" color="#CCCCCC" size="20"></u-icon>
+ </view>
+ </view>
+ <view class="personal_list_item" @click="sex = true">
+ <view class="label">鎬у埆</view>
+ <view class="right">
+ <text class="right_info black" v-if="userInfo.sex === 1">鐢�</text>
+ <text class="right_info black" v-else-if="userInfo.sex === 2">濂�</text>
+ <text class="right_info" v-else>璇烽�夋嫨</text>
+ <u-icon name="arrow-right" color="#CCCCCC" size="20"></u-icon>
+ </view>
+ </view>
+ <view class="personal_list_item" @click="isShow = true">
+ <view class="label">鐢熸棩</view>
+ <view class="right">
+ <text :class="userInfo.birthday ? 'right_info black' : 'right_info'">{{userInfo.birthday ? userInfo.birthday : '璇烽�夋嫨'}}</text>
+ <u-icon name="arrow-right" color="#CCCCCC" size="20"></u-icon>
+ </view>
+ </view>
+ </view>
+ <u-modal :show="show" title="鐪熷疄濮撳悕" :showCancelButton="true" @confirm="confirm1" @cancel="cancel">
+ <view class="personal_input">
+ <input type="text" v-model="from.realname" placeholder="璇疯緭鍏ョ湡瀹炲鍚�" placeholder-class="placeholder">
+ </view>
+ </u-modal>
+ <u-modal :show="show1" title="鏄电О" :showCancelButton="true" @confirm="confirm2" @cancel="cancel1">
+ <view class="personal_input">
+ <input type="nickname" @change="changeName" v-model="from.wechatName" placeholder="璇疯緭鍏ユ樀绉�" placeholder-class="placeholder">
+ </view>
+ </u-modal>
+ <u-picker
+ :show="sex"
+ :columns="columns"
+ @cancel="sex = false"
+ :immediateChange="true"
+ @confirm="confirm"
+ ></u-picker>
+ <u-datetime-picker
+ ref="datetimePicker"
+ :show="isShow"
+ v-model="value1"
+ :minDate="minDate"
+ :maxDate="maxDate"
+ mode="date"
+ @confirm="confirmDate"
+ @cancel="isShow = false"
+ ></u-datetime-picker>
+ </view>
+</template>
+
+<script>
+ import { mapState, mapMutations } from 'vuex'
+
+ export default {
+ data() {
+ return {
+ sex: false,
+ isShow: false,
+ show: false,
+ show1: false,
+ minDate: Number(new Date('1980-01-01')),
+ maxDate: Number(new Date()),
+ defaultAvatar: require('@/static/meeting/common/default_user@2x.png'),
+ columns: [
+ ['鐢�', '濂�']
+ ],
+ value1: Number(new Date()),
+ action: this.$baseUrl + 'public/uploadLocal',
+ from: {
+ realname: '',
+ wechatName: ''
+ }
+ }
+ },
+ computed: {
+ ...mapState(['userInfo'])
+ },
+ methods: {
+ ...mapMutations(["setUserInfo"]),
+ changeName(e) {
+ this.from.wechatName = e.detail.value
+ },
+ bindchooseavatar(e) {
+ var that = this
+ uni.uploadFile({
+ url: that.action,
+ files: 'filePath',
+ filePath: e.detail.avatarUrl,
+ name: 'file',
+ formData: {
+ 'folder': 'projects'
+ },
+ success: (uploadFileRes) => {
+ console.log(JSON.parse(uploadFileRes.data))
+ let avatar = JSON.parse(uploadFileRes.data).data.imgaddr
+ that.$u.api.editUserInfo({ avatar })
+ .then(res => {
+ that.getUser()
+ })
+ },
+ fail: (err) => {
+ uni.showToast({
+ title: '涓婁紶澶辫触',
+ icon: "error",
+ duration: 2000
+ });
+ }
+ });
+ },
+ confirm(e) {
+ let sex = null
+ if (e.value[0] === '鐢�') {
+ sex = 1
+ } else if (e.value[0] === '濂�') {
+ sex = 2
+ }
+ this.$u.api.editUserInfo({ sex })
+ .then(res => {
+ this.getUser()
+ this.sex = false
+ })
+ },
+ confirmDate(e) {
+ let birthday = uni.$u.timeFormat(e.value, 'yyyy-mm-dd');
+ this.$u.api.editUserInfo({ birthday })
+ .then(res => {
+ this.getUser()
+ this.isShow = false
+ })
+ },
+ // 纭鐪熷疄濮撳悕
+ confirm1() {
+ this.$u.api.editUserInfo({ realname: this.from.realname })
+ .then(res => {
+ this.getUser()
+ this.from.realname = ''
+ this.show = false
+ })
+ },
+ // 鏄电О
+ confirm2() {
+ this.$u.api.editUserInfo({ wechatName: this.from.wechatName })
+ .then(res => {
+ this.getUser()
+ this.from.wechatName = ''
+ this.show1 = false
+ })
+ },
+ cancel1() {
+ this.show1 = false
+ },
+ // 鍏抽棴鐪熷疄濮撳悕
+ cancel() {
+ this.show = false
+ },
+ getUser() {
+ this.$u.api.getUserInfo({})
+ .then(res => {
+ this.setUserInfo(res.data)
+ })
+ }
+ }
+ }
+</script>
+
+<style>
+ page {
+ background-color: #fff !important;
+ }
+</style>
+
+<style lang="scss" scoped>
+ .personal {
+ width: 100%;
+ background-color: #ffffff;
+ .personal_input {
+ width: 100%;
+ height: 98rpx;
+ background: #F8F9FB;
+ border-radius: 8rpx;
+ .placeholder {
+ font-size: 28rpx;
+ font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #999999;
+ }
+ input {
+ width: 100%;
+ height: 100%;
+ text-align: center;
+ font-size: 28rpx;
+ font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #000000;
+ }
+ }
+ .personal_image {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+ padding-top: 64rpx;
+ margin-bottom: 60rpx;
+ .personal_image_box {
+ width: 160rpx;
+ height: 160rpx;
+ border-radius: 50%;
+ overflow: hidden;
+ image {
+ width: 100%;
+ height: 100%;
+ }
+ }
+ .personal_image_box_btn {
+ width: 136rpx;
+ height: 48rpx;
+ line-height: 48rpx;
+ padding: 0 !important;
+ border-radius: 32rpx;
+ border: 1rpx solid #005BFF;
+ font-size: 24rpx;
+ font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #005BFF;
+ margin-top: 24rpx;
+ }
+ }
+ .personal_list {
+ display: flex;
+ flex-direction: column;
+ padding: 0 34rpx;
+ box-sizing: border-box;
+ .personal_list_item {
+ width: 100%;
+ height: 96rpx;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ border-bottom: 2rpx solid #E5E5E5;
+ &:last-child {
+ border: none !important;
+ }
+ .label {
+ flex-shrink: 0;
+ font-size: 32rpx;
+ font-family: PingFang SC-Medium, PingFang SC;
+ font-weight: 500;
+ color: #333333;
+ margin-right: 30rpx;
+ }
+ .right {
+ display: flex;
+ align-items: center;
+ .black {
+ color: #000000 !important;
+ }
+ .right_info {
+ font-size: 28rpx;
+ font-family: PingFang SC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #999999;
+ }
+ text {
+ font-size: 28rpx;
+ font-family: PingFang SC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #666666;
+ margin-right: 12rpx;
+ }
+ }
+ }
+ }
+ .popup2 /deep/ {
+ width: 518rpx;
+ background: #FFFFFF;
+ border-radius: 24rpx;
+ .popup_text {
+ width: 100%;
+ text-align: center;
+ margin: 46rpx 0;
+ font-size: 32rpx;
+ font-family: PingFang SC-Semibold, PingFang SC;
+ font-weight: 600;
+ color: #333333;
+ }
+ .popup2_ipt {
+ width: 100%;
+ height: 98rpx;
+ overflow: hidden;
+ border-radius: 8rpx;
+ padding: 0 48rpx;
+ box-sizing: border-box;
+ margin-bottom: 48rpx;
+ .popup2_ipt_box {
+ width: 100%;
+ height: 100%;
+ background: #F8F9FB;
+ .popup2_ipt_p {
+ text-align: center;
+ font-size: 28rpx;
+ font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #999999;
+ }
+ input {
+ width: 100%;
+ height: 100%;
+ text-align: center;
+ font-size: 28rpx;
+ font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #000000;
+ }
+ }
+ }
+ .popup_box {
+ width: 100%;
+ height: 85rpx;
+ display: flex;
+ align-items: center;
+ border-top: 2rpx solid #C8C8C8;
+ .blue {
+ color: #005BFF !important;
+ }
+ .popup_box_item {
+ flex: 1;
+ height: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ font-size: 32rpx;
+ font-family: PingFang SC-Semibold, PingFang SC;
+ font-weight: 600;
+ color: #333333;
+ &:first-child {
+ border-right: 2rpx solid #C8C8C8;
+ }
+ }
+ }
+ }
+ .sex {
+ padding: 44rpx 32rpx;
+ background-color: #FFFFFF;
+ box-sizing: border-box;
+ .title {
+ width: 100%;
+ text-align: center;
+ position: relative;
+ text {
+ font-size: 32rpx;
+ font-family: PingFang SC-Semibold, PingFang SC;
+ font-weight: 600;
+ color: #333333;
+ }
+ .title_icon {
+ position: absolute;
+ right: 0;
+ top: 0;
+ }
+ }
+ .content {
+ width: 100%;
+ margin-top: 80rpx;
+ .picker-view {
+ width: 100%;
+ height: 200rpx;
+ .item {
+ height: 40px;
+ line-height: 40px;
+ text-align: center;
+ }
+ }
+ }
+ .submit {
+ width: 100%;
+ height: 72rpx;
+ line-height: 72rpx;
+ text-align: center;
+ background: #005BFF;
+ border-radius: 36rpx;
+ font-size: 32rpx;
+ font-family: PingFang SC-Medium, PingFang SC;
+ font-weight: 500;
+ color: #FFFFFF;
+ margin-top: 50rpx;
+ }
+ }
+ .date {
+ padding: 44rpx 32rpx;
+ background-color: #FFFFFF;
+ box-sizing: border-box;
+ .title {
+ width: 100%;
+ text-align: center;
+ position: relative;
+ text {
+ font-size: 32rpx;
+ font-family: PingFang SC-Semibold, PingFang SC;
+ font-weight: 600;
+ color: #333333;
+ }
+ .title_icon {
+ position: absolute;
+ right: 0;
+ top: 0;
+ }
+ }
+ .content {
+ width: 100%;
+ margin-top: 80rpx;
+ .picker-view {
+ width: 100%;
+ height: 600rpx;
+ .item {
+ height: 40px;
+ line-height: 40px;
+ text-align: center;
+ }
+ }
+ }
+ .submit {
+ width: 100%;
+ height: 72rpx;
+ line-height: 72rpx;
+ text-align: center;
+ background: #005BFF;
+ border-radius: 36rpx;
+ font-size: 32rpx;
+ font-family: PingFang SC-Medium, PingFang SC;
+ font-weight: 500;
+ color: #FFFFFF;
+ margin-top: 50rpx;
+ }
+ }
+ .personal_footer {
+ position: fixed;
+ width: 100%;
+ left: 0;
+ bottom: 0;
+ background-color: #FFFFFF;
+ box-sizing: border-box;
+ padding: 20rpx 30rpx calc(20rpx + env(safe-area-inset-bottom)) 30rpx;
+ .personal_footer_btn {
+ width: 100%;
+ height: 88rpx;
+ line-height: 88rpx;
+ text-align: center;
+ background: #005BFF;
+ border-radius: 44rpx;
+ font-size: 32rpx;
+ font-family: PingFangSC-Medium, PingFang SC;
+ font-weight: 500;
+ color: #FFFFFF;
+ }
+ }
+ }
+</style>
\ No newline at end of file
--
Gitblit v1.9.3