add
This commit is contained in:
parent
ab6162d558
commit
3ecad90fd6
|
@ -145,4 +145,8 @@ export const getloginSms = (data) => {
|
||||||
|
|
||||||
export const getReportingSms = (data) => {
|
export const getReportingSms = (data) => {
|
||||||
return request.post('/user/user/reporting_sms', data);
|
return request.post('/user/user/reporting_sms', data);
|
||||||
|
}
|
||||||
|
|
||||||
|
export const uploadImg = (data) => {
|
||||||
|
return request.post('/Upload/image', data);
|
||||||
}
|
}
|
|
@ -1,53 +1,55 @@
|
||||||
<template>
|
<template>
|
||||||
<up-popup :show="show" round="10" @close="close" mode="center" :safeAreaInsetBottom="false">
|
<up-popup :show="show" round="10" @close="close" mode="center" :safeAreaInsetBottom="false">
|
||||||
<view class="m-modal-popup">
|
<view class="m-modal-popup">
|
||||||
<view class="head-title-modal">绑定手机号</view>
|
<view class="head-title-modal">绑定手机号</view>
|
||||||
<view class="content-modal">系统检测到您未绑定手机号, 为方便您继续使用, 请绑定手机号码</view>
|
<view class="content-modal">系统检测到您未绑定手机号, 为方便您继续使用, 请绑定手机号码</view>
|
||||||
<view class="btn-box-modal">
|
<view class="btn-box-modal">
|
||||||
<view style="width: 130rpx;"><up-button @click="close" plain color="#999">取消绑定</up-button></view>
|
<view style="width: 130rpx;"><up-button @click="close" plain color="#999">取消绑定</up-button></view>
|
||||||
<view style="width: 350rpx;"><up-button @getphonenumber="change" open-type="getPhoneNumber" color="#20B128">立即绑定</up-button></view>
|
<view style="width: 350rpx;"><up-button @getphonenumber="change" open-type="getPhoneNumber"
|
||||||
</view>
|
color="#20B128">立即绑定</up-button></view>
|
||||||
</view>
|
</view>
|
||||||
</up-popup>
|
</view>
|
||||||
|
</up-popup>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
|
const props = defineProps({
|
||||||
|
show: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
const props = defineProps({
|
const emit = defineEmits(['close', 'change']);
|
||||||
show: {
|
const close = () => {
|
||||||
type: Boolean,
|
emit('close');
|
||||||
default: false
|
}
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
const emit = defineEmits(['close', 'change']);
|
|
||||||
const close = () => {
|
|
||||||
emit('close');
|
|
||||||
}
|
|
||||||
|
|
||||||
const change = (e)=>{
|
|
||||||
emit('change', e);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
const change = (e) => {
|
||||||
|
emit('change', e);
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.m-modal-popup{
|
.m-modal-popup {
|
||||||
width: 500rpx;
|
width: 500rpx;
|
||||||
padding: 40rpx;
|
padding: 40rpx;
|
||||||
.head-title-modal{
|
|
||||||
font-size: 32rpx;
|
.head-title-modal {
|
||||||
text-align: center;
|
font-size: 32rpx;
|
||||||
}
|
text-align: center;
|
||||||
.content-modal{
|
}
|
||||||
font-size: 26rpx;
|
|
||||||
color: #999;
|
.content-modal {
|
||||||
text-align: center;
|
font-size: 26rpx;
|
||||||
padding: 40rpx 0;
|
color: #999;
|
||||||
}
|
text-align: center;
|
||||||
.btn-box-modal{
|
padding: 40rpx 0;
|
||||||
display: flex;
|
}
|
||||||
justify-content: space-between;
|
|
||||||
}
|
.btn-box-modal {
|
||||||
}
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
|
@ -81,7 +81,6 @@
|
||||||
})
|
})
|
||||||
|
|
||||||
const valChange = () => {
|
const valChange = () => {
|
||||||
console.log(4545)
|
|
||||||
uni.vibrateShort();
|
uni.vibrateShort();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -220,7 +220,7 @@
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="btn">
|
<view class="btn">
|
||||||
<up-button color="#20b128" :disabled="cartInfo.pay_price<=0" @click="settleAccounts"> 结算</up-button>
|
<up-button color="#20b128" :disabled="cartInfo.pay_price<=0" @click="settleAccounts"> 支付</up-button>
|
||||||
</view>
|
</view>
|
||||||
<view class="cart" @click="navTo(`/pages/cart/cart`)">
|
<view class="cart" @click="navTo(`/pages/cart/cart`)">
|
||||||
<image src="@/static/icon/cart.png"></image>
|
<image src="@/static/icon/cart.png"></image>
|
||||||
|
@ -237,11 +237,11 @@
|
||||||
温馨提示
|
温馨提示
|
||||||
</view>
|
</view>
|
||||||
<view class="rect-contetn">
|
<view class="rect-contetn">
|
||||||
只需再购买 {{500- cartInfo.pay_price}} 元,就能拥有10%的品牌礼品券,若错过此次机会则无礼品券
|
只需再凑满 {{500- cartInfo.pay_price}} 元,即可享受采购金额10%的品牌礼品兑换券,错过此次机会则无礼品券。
|
||||||
</view>
|
</view>
|
||||||
<view class="rect-btn">
|
<view class="rect-btn">
|
||||||
<view style="width: 236rpx;">
|
<view style="width: 236rpx;">
|
||||||
<up-button @click="abandActive">放弃优惠</up-button>
|
<up-button @click="abandActive">放弃礼品券</up-button>
|
||||||
</view>
|
</view>
|
||||||
<view style="width: 236rpx;">
|
<view style="width: 236rpx;">
|
||||||
<up-button color="#20b128" @click="showOverlay=false">继续采购</up-button>
|
<up-button color="#20b128" @click="showOverlay=false">继续采购</up-button>
|
||||||
|
@ -586,6 +586,9 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
if (!url) return;
|
||||||
|
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: url
|
url: url
|
||||||
})
|
})
|
||||||
|
@ -596,6 +599,8 @@
|
||||||
const goodRef = ref(null);
|
const goodRef = ref(null);
|
||||||
const goodData = ref({});
|
const goodData = ref({});
|
||||||
const openGoodPopup = (item) => { // 打开数量/重量弹窗
|
const openGoodPopup = (item) => { // 打开数量/重量弹窗
|
||||||
|
navTo(false)
|
||||||
|
if (!userStore.token || !userStore.userInfo.mobile) return;
|
||||||
goodData.value = item;
|
goodData.value = item;
|
||||||
goodRef.value.setData(item);
|
goodRef.value.setData(item);
|
||||||
showGoodPopup.value = true;
|
showGoodPopup.value = true;
|
||||||
|
|
|
@ -43,7 +43,7 @@
|
||||||
<image class="bg" src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/e3a7b202404261113002322.webp"
|
<image class="bg" src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/e3a7b202404261113002322.webp"
|
||||||
mode="widthFix"></image>
|
mode="widthFix"></image>
|
||||||
<view class="u-card">
|
<view class="u-card">
|
||||||
<view style="display: flex;">
|
<view style="display: flex;" @click="updataInfp">
|
||||||
<up-avatar :src="userInfo.avatar" size="56"></up-avatar>
|
<up-avatar :src="userInfo.avatar" size="56"></up-avatar>
|
||||||
<view class="content">
|
<view class="content">
|
||||||
<view class="u-phone">{{userInfo.nickname}}</view>
|
<view class="u-phone">{{userInfo.nickname}}</view>
|
||||||
|
@ -139,10 +139,38 @@
|
||||||
</up-cell-group>
|
</up-cell-group>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
<up-popup :show="showPop" @close="showPop=false" @open="showPop=true">
|
||||||
|
<view class="popContent">
|
||||||
|
<view style="text-align: center;font-size: 30rpx;font-weight: bold;">
|
||||||
|
修改个人信息
|
||||||
|
</view>
|
||||||
|
<up-form labelPosition="left">
|
||||||
|
<up-form-item label="呢称" prop="userInfo.name" borderBottom ref="item1">
|
||||||
|
<up-input v-model="formData.nick_name" border="none" placeholder="请输入个人呢称"></up-input>
|
||||||
|
</up-form-item>
|
||||||
|
<up-form-item label="头像" prop="userInfo.sex" borderBottom ref="item1">
|
||||||
|
<up-image :src="formData.avatar" width="80px" height="80px" @click="uploadAvatar"></up-image>
|
||||||
|
</up-form-item>
|
||||||
|
</up-form>
|
||||||
|
<view style="display: flex;margin-top: 40rpx;justify-content: space-around;">
|
||||||
|
<view style="width: 200rpx;">
|
||||||
|
<up-button color="#20b128" @click="updataFn">保存</up-button>
|
||||||
|
</view>
|
||||||
|
<view style="width: 200rpx;">
|
||||||
|
<up-button @click="showPop=false">取消</up-button>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<!-- <button></button> -->
|
||||||
|
</view>
|
||||||
|
</up-popup>
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import {
|
import {
|
||||||
|
reactive,
|
||||||
ref
|
ref
|
||||||
} from "vue";
|
} from "vue";
|
||||||
import useUserStore from "@/store/user";
|
import useUserStore from "@/store/user";
|
||||||
|
@ -154,13 +182,21 @@
|
||||||
onPullDownRefresh
|
onPullDownRefresh
|
||||||
} from "@dcloudio/uni-app"
|
} from "@dcloudio/uni-app"
|
||||||
import {
|
import {
|
||||||
userInfoApi
|
userInfoApi,
|
||||||
|
uploadImg,
|
||||||
|
loginUpdateUserApi
|
||||||
} from "@/api/user.js"
|
} from "@/api/user.js"
|
||||||
|
import {
|
||||||
|
config
|
||||||
|
} from "@/config/app.js"
|
||||||
|
|
||||||
|
console.log()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
const userInfo = ref({});
|
const userInfo = ref({});
|
||||||
|
let token = uni.getStorageSync('token') || ''
|
||||||
const orderCount = ref({
|
const orderCount = ref({
|
||||||
no_pay: 0,
|
no_pay: 0,
|
||||||
receiving: 0,
|
receiving: 0,
|
||||||
|
@ -197,7 +233,56 @@
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const showPop = ref(false)
|
||||||
|
|
||||||
|
const updataInfp = () => {
|
||||||
|
console.log(5454)
|
||||||
|
showPop.value = true
|
||||||
|
}
|
||||||
|
|
||||||
|
const formData = reactive({
|
||||||
|
nick_name: "",
|
||||||
|
avatar: ""
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
const updataFn = () => {
|
||||||
|
loginUpdateUserApi({
|
||||||
|
nickname: formData.nick_name,
|
||||||
|
avatar: formData.avatar
|
||||||
|
}).then(res => {
|
||||||
|
uni.$u.toast('修改成功');
|
||||||
|
showPop.value = false
|
||||||
|
userInfoApi().then(res => {
|
||||||
|
userInfo.value = res.data;
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const uploadAvatar = () => {
|
||||||
|
uni.chooseImage({
|
||||||
|
success: (chooseImageRes) => {
|
||||||
|
uni.showLoading({
|
||||||
|
title: '上传中...'
|
||||||
|
});
|
||||||
|
const tempFilePaths = chooseImageRes.tempFilePaths;
|
||||||
|
uni.uploadFile({
|
||||||
|
url: config.HTTP_REQUEST_URL + '/api/Upload/image', //仅为示例,非真实的接口地址
|
||||||
|
filePath: tempFilePaths[0],
|
||||||
|
name: 'file',
|
||||||
|
header: {
|
||||||
|
token: token,
|
||||||
|
},
|
||||||
|
success: (uploadFileRes) => {
|
||||||
|
let data = JSON.parse(uploadFileRes.data)
|
||||||
|
formData.avatar = data.data.uri
|
||||||
|
uni.hideLoading()
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
const logout = () => {
|
const logout = () => {
|
||||||
|
@ -213,6 +298,9 @@
|
||||||
onShow(() => {
|
onShow(() => {
|
||||||
userInfoApi().then(res => {
|
userInfoApi().then(res => {
|
||||||
userInfo.value = res.data;
|
userInfo.value = res.data;
|
||||||
|
formData.avatar = res.data.avatar
|
||||||
|
formData.nick_name = res.data.nickname
|
||||||
|
|
||||||
})
|
})
|
||||||
getOrderCount();
|
getOrderCount();
|
||||||
})
|
})
|
||||||
|
@ -429,6 +517,9 @@
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.popContent {
|
||||||
|
padding: 30rpx 20rpx 50rpx 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
.gift {
|
.gift {
|
||||||
width: 710rpx;
|
width: 710rpx;
|
||||||
|
|
|
@ -81,7 +81,7 @@
|
||||||
const type = ref(1) // 1 输入密码 2 再次输入密码
|
const type = ref(1) // 1 输入密码 2 再次输入密码
|
||||||
|
|
||||||
const onKetDown = (e) => {
|
const onKetDown = (e) => {
|
||||||
uni.vibrateLong();
|
uni.vibrateShort();
|
||||||
if (type.value == 1) {
|
if (type.value == 1) {
|
||||||
form.password.length < 6 ?
|
form.password.length < 6 ?
|
||||||
form.password += e :
|
form.password += e :
|
||||||
|
|
|
@ -149,7 +149,7 @@
|
||||||
|
|
||||||
<view class="submit-row">
|
<view class="submit-row">
|
||||||
<view class="tips">
|
<view class="tips">
|
||||||
<view style="margin-right: 20rpx;">共 {{ cartList.length }} 款</view>
|
<view style="margin-right: 20rpx;transform: translateY(5rpx);">共 {{ cartList.length }} 款</view>
|
||||||
<view class="all">
|
<view class="all">
|
||||||
<text style="color: #000;">合计: </text>
|
<text style="color: #000;">合计: </text>
|
||||||
<text>¥</text>
|
<text>¥</text>
|
||||||
|
@ -161,8 +161,7 @@
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view style="width: 200rpx;">
|
<view style="width: 200rpx;">
|
||||||
<up-button color="#20B128" shape="circle" @click="submitOrder"
|
<up-button color="#20B128" shape="circle" @click="submitOrder" :throttleTime="1000">支付</up-button>
|
||||||
:throttleTime="1000">预付款提交</up-button>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
|
@ -559,6 +558,7 @@
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
font-size: 24rpx;
|
font-size: 24rpx;
|
||||||
margin-top: 10rpx;
|
margin-top: 10rpx;
|
||||||
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.time {
|
.time {
|
||||||
|
|
|
@ -43,7 +43,7 @@
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
uni.vibrateLong();
|
uni.vibrateShort();
|
||||||
if (refValue.value.length === props.num) {
|
if (refValue.value.length === props.num) {
|
||||||
emits('complete', refValue.value.join(''));
|
emits('complete', refValue.value.join(''));
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue