This commit is contained in:
weipengfei 2024-05-06 17:58:41 +08:00
parent dcbbe57d64
commit 3f641219cd
26 changed files with 518 additions and 343 deletions

View File

@ -0,0 +1,61 @@
<template>
<up-popup :show="show" closeable round="10" @close="close">
<view class="cancel-popup">
<view class="head-title">订单取消</view>
<view class="row" v-for="(item,index) in cancelDict" :key="item.value" @click="cancelType=item.value">
<view>{{item.name}}</view>
<image v-if="cancelType==item.value" src="@/static/icon/check.png"></image>
<image v-else src="@/static/icon/n-check.png"></image>
</view>
<up-button color="#20B128" shape="circle" @click="submitCancel">提交</up-button>
</view>
</up-popup>
</template>
<script setup>
import cancelDict from "@/dict/cancelDict.js";
import { ref } from "vue"
const props = defineProps({
show: {
type: Boolean,
default: false
},
})
const cancelType = ref(-1); //
const emit = defineEmits(['close', 'change']);
const close = () => {
emit('close');
}
const submitCancel = () => {
let obj = cancelDict.find(item=>item.value == cancelType.value);
if(!obj) return uni.$u.toast('请选择取消原因');
emit('change', obj);
}
</script>
<style lang="scss" scoped>
.cancel-popup {
padding: 30rpx;
.head-title {
font-weight: bold;
text-align: center;
margin-bottom: 20rpx;
}
.row {
display: flex;
justify-content: space-between;
padding-bottom: 20rpx;
image {
width: 40rpx;
height: 40rpx;
}
}
}
</style>

View File

@ -7,7 +7,7 @@
</up-navbar>
<view class="navbar">
<view style="width: 500rpx;">
<up-search placeholder="请输入商品" @search="searchKeyword" v-model="keyword" :showAction="false"></up-search>
<up-search placeholder="请输入商品" @search="searchKeyword" @clear="searchKeyword" v-model="keyword" :showAction="false"></up-search>
</view>
<view class="nav-item" @click="navTo('/pages/cart/cart')">
<image src="@/static/tab/ba.png"></image>
@ -217,6 +217,7 @@
const changeOrder = (order) => {
console.log('排序', order);
where.value.order = order;
getGoodList();
}
const where = ref({
@ -236,6 +237,8 @@
if(leftActive.value=='') class_all = topActive.value;
if(topActive.value=='') class_all = '';
if(class_all) class_id = ""; //
if (loadmore) where.value.page_no++;
else where.value.page_no=1;
goodListApi({
...where.value,
class_all: class_all,
@ -249,6 +252,7 @@
//
const loadMoreGood = () => {
console.log('触底了');
getGoodList(true);
}
const goodClassList = ref([]); //

View File

@ -1,24 +1,23 @@
<template>
<view>
<up-navbar
title="登录"
@leftClick="navBack"
:autoBack="false"
placeholder
bgColor="rgba(0,0,0,0)"
>
</up-navbar>
<up-navbar title="登录" :autoBack="false" placeholder bgColor="rgba(0,0,0,0)">
<template #left>
<up-icon v-if="!showWeixin" name="arrow-left" @click="navBack" size="20"></up-icon>
<view v-else></view>
</template>
</up-navbar>
<view class="login-box">
<image class="logo" src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/35adb202404271727457954.png"></image>
<view class="tips">欢迎登录惠农批发</view>
<block v-if="showWeixin">
<up-transition :show="showWeixin">
<view class="btn">
<up-button @click="weixinLogin" color="#20B128" size="large"><up-icon
name="weixin-fill" color="#fff" size="28"></up-icon></up-button>
<up-button @click="weixinLogin" color="#20B128" size="large"><up-icon name="weixin-fill" color="#fff"
size="28"></up-icon></up-button>
</view>
<view class="btn">
<up-button color="#ECFFEE" @click="showWeixin=false" size="large"><text style="color: #20B128;">使用短信验证登录</text></up-button>
<up-button color="#ECFFEE" @click="showWeixin=false" size="large"><text
style="color: #20B128;">使用短信验证登录</text></up-button>
</view>
</up-transition>
</block>
@ -26,7 +25,8 @@
<up-transition :show="!showWeixin">
<view class="form">
<view class="input">
<up-input :customStyle="{height: '100%'}" v-model="loginForm.phone" placeholderClass="place" border="none" placeholder="请输入手机号" type="number">
<up-input :customStyle="{height: '100%'}" v-model="loginForm.phone" placeholderClass="place" border="none"
placeholder="请输入手机号" type="number">
<template #prefix>
<image style="height: 40rpx;width: 40rpx;margin-top: 6rpx;"
src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/48491202404281006484208.png"></image>
@ -34,14 +34,14 @@
</up-input>
</view>
<view class="input">
<up-input :customStyle="{height: '100%'}" v-model="loginForm.code" :maxlength="4" placeholderClass="place" border="none" placeholder="请输入验证码" type="number">
<up-input :customStyle="{height: '100%'}" v-model="loginForm.code" :maxlength="4" placeholderClass="place"
border="none" placeholder="请输入验证码" type="number">
<template #prefix>
<image style="height: 40rpx;width: 40rpx;margin-top: 6rpx;"
src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/3a42f202404281007454918.png"></image>
</template>
<template #suffix>
<up-code :seconds="seconds" ref="uCodeRef"
@change="codeChange"></up-code>
<up-code :seconds="seconds" ref="uCodeRef" @change="codeChange"></up-code>
<view style="color: #20B128;" @click="getCode">{{tips}}</view>
</template>
</up-input>
@ -60,7 +60,7 @@
</view>
</view>
</view>
<bindPhone :show="showBind" @close="showBind = false" @change="getPhoneNumber"/>
<bindPhone :show="showBind" @close="showBind = false" @change="getPhoneNumber" />
</view>
</template>
@ -70,20 +70,20 @@
import { userLoginApi, userLoginWeixinApi, getMobileByMnpApi } from "@/api/user.js";
import useUserStore from "@/store/user.js"
import bindPhone from "@/components/bindPhone.vue"
const navToIndex = ()=>{
if(!userStore.userInfo.supplier) uni.reLaunch({
const navToIndex = () => {
if (!userStore.userInfo.supplier) uni.reLaunch({
url: '/pages/index/index'
})
else uni.$u.toast('功能开发中')
}
const userStore = useUserStore(); //使pinia
if(userStore.userInfo&&userStore.userInfo.mobile){
if (userStore.userInfo && userStore.userInfo.mobile) {
navToIndex();
}else {
} else {
userStore.setToken('');
userStore.setUserInfo({});
}
@ -101,11 +101,11 @@
success: (res) => {
userLoginWeixinApi({
code: res.code
}).then(res=>{
}).then(res => {
uni.hideLoading();
userStore.setToken(res.data.token);
userStore.setUserInfo(res.data);
if(!res.data.mobile) { //
if (!res.data.mobile) { //
return showBind.value = true;
}
navToIndex();
@ -121,54 +121,53 @@
const showBind = ref(false); //
const getPhoneNumber = (e) => {
console.log("===", e);
if(e.detail?.errMsg=='getPhoneNumber:ok') {
if (e.detail?.errMsg == 'getPhoneNumber:ok') {
getMobileByMnpApi({
code: e.detail.code
}).then(res=>{
}).then(res => {
navToIndex();
})
}
else {
} else {
console.log("用户拒绝授权");
return uni.$u.toast('您拒绝了授权');
}
}
const loginForm = ref({
phone: '15366662222',
code: ''
})
const isPhone = ()=>{ //
loginForm.value.phone = loginForm.value.phone.replace(/\s*/g,""); //
const isPhone = () => { //
loginForm.value.phone = loginForm.value.phone.replace(/\s*/g, ""); //
return !/^1[3456789]\d{9}$/.test(loginForm.value.phone);
}
const codeLogin = ()=>{
const codeLogin = () => {
if (!isAgree.value) return uni.$u.toast('请先阅读并同意协议');
//
if(isPhone()) return uni.$u.toast('请输入正确的手机号码');
if (isPhone()) return uni.$u.toast('请输入正确的手机号码');
console.log('登录');
userLoginApi({
account: '17811111111',
password: '1111',
terminal: 3,
scene: 1
}).then(res=>{
}).then(res => {
console.log(res);
})
}
const tips = ref('');
const seconds = ref(60);
const uCodeRef = ref(null);
const codeChange = (text) => {
tips.value = text;
};
const getCode = () => {
if (!isAgree.value) return uni.$u.toast('请先阅读并同意协议');
if (uCodeRef.value.canGetCode) {
if(isPhone()) return uni.$u.toast('请输入正确的手机号码');
if (isPhone()) return uni.$u.toast('请输入正确的手机号码');
//
uni.showLoading({
title: '正在获取验证码',
@ -184,16 +183,14 @@
uni.$u.toast('倒计时结束后再发送');
}
};
// 使
const navBack = ()=>{
if(showWeixin.value==false) {
const navBack = () => {
if (showWeixin.value == false) {
showWeixin.value = true;
return true;
}
else uni.navigateBack();
} else uni.navigateBack();
}
</script>
<style lang="scss">
@ -237,12 +234,12 @@
box-sizing: border-box;
padding: 0 20rpx;
margin-bottom: 40rpx;
.place{
.place {
color: #333;
}
.customStyle{
.customStyle {
color: red;
}
}

View File

@ -55,7 +55,7 @@
<up-cell-group>
<up-cell title="意见反馈" :isLink="true"></up-cell>
<up-cell title="关于我们" :isLink="true"></up-cell>
<up-cell title="退出登录" :isLink="true" url="/pages/login/login"></up-cell>
<up-cell title="退出登录" :isLink="true" @click="logout"></up-cell>
</up-cell-group>
</view>
</view>
@ -87,6 +87,14 @@
url: `/pagesOrder/order/order?type=${type}`
})
}
const logout = ()=>{
userStore.setToken('');
userStore.setUserInfo({});
uni.reLaunch({
url: '/pages/login/login'
})
}
</script>
<style lang="scss">

View File

@ -1,17 +1,17 @@
<template>
<view class="">
<!-- <view class="count_down" v-if="datas.paid==0">
还剩<text>00:28:36</text>订单自动取消
</view> -->
<view class="count_down" v-if="datas.paid==0&&countDown">
还剩<text>{{countDown}}</text>订单自动取消
</view>
<view class="m-card m-address" style="margin-top: 20rpx;">
<view class="address-info">
<view class="top">
<up-icon name="map"></up-icon>
<view class="t-name">小王</view>
<view>155****9999</view>
<up-icon name="account"></up-icon>
<view class="t-name">{{addressInfo.real_name}}</view>
<view>{{addressInfo.phone}}</view>
</view>
<view class="bottom u-line-2">
四川泸州市龙马潭区莲花池街道商业街1号
{{addressInfo.detail}}
</view>
</view>
<view class="address-btn" v-if="datas.paid==0">
@ -19,7 +19,7 @@
:customStyle="{color:'#666666'}">修改</up-button></view>
</view>
</view>
<view class="m-card m-good" v-for="(item,index) in datas.goods_list">
<view class="m-card m-good" v-for="(item,index) in datas.goods_list" :key="index">
<view class="image">
<up-image :src="item.imgs" width="160rpx" height="160rpx"></up-image>
</view>
@ -50,7 +50,7 @@
</view>
<view class="row-need">
<view style="margin-right: 10rpx;">需付款</view>
<view><text>¥</text>{{c_price(datas.total, 0)}}<text>.{{c_price(datas.total, 1)}}</text></view>
<view v-if="datas.total"><text>¥</text>{{c_price(datas.total, 0)}}<text>.{{c_price(datas.total, 1)}}</text></view>
</view>
</view>
<view class="m-card good-info">
@ -116,18 +116,8 @@
</block>
</view>
<up-popup :show="showCancel" closeable round="10" @close="showCancel=false">
<view class="cancel-popup">
<view class="head-title">订单取消</view>
<view class="row" v-for="(item,index) in cancelDict" :key="item.value" @click="cancelType=item.value">
<view>{{item.name}}</view>
<image v-if="cancelType==item.value" src="@/static/icon/check.png"></image>
<image v-else src="@/static/icon/n-check.png"></image>
</view>
<up-button color="#20B128" shape="circle" @click="submitCancel">提交</up-button>
</view>
</up-popup>
<addressPopup :show="showAddress" @close="showAddress = false" @change="changeAddress"></addressPopup>
<orderCanclePopup :show="showCancel" @close="showCancel=false" @change="submitCancel" />
<addressPopup v-if="addressList.length>0" :show="showAddress" :list="addressList" @close="showAddress=false" @change="changeAddress" />
<modal :show="false" content="您还没有添加收货地址,请点击添加"></modal>
</view>
</template>
@ -135,29 +125,22 @@
<script setup>
import { onLoad, onBackPress } from "@dcloudio/uni-app";
import { ref } from "vue";
import cancelDict from "@/dict/cancelDict.js";
import addressPopup from "@/components/addressPopup.vue";
import orderCanclePopup from "@/components/orderCanclePopup.vue";
import modal from "@/components/modal.vue";
import { orderDetailApi, rePaymentApi } from "@/api/order.js"
import { addressListsApi, merchantListApi } from "@/api/user.js";
const showCancel = ref(false);
const showAddress = ref(false);
const cancelType = ref(-1); //
const submitCancel = () => {
const submitCancel = (e) => {
showCancel.value = false;
console.log(cancelType.value);
console.log(e);
uni.showToast({
title: '取消成功',
icon: 'none'
})
}
const changeAddress = (e) => {
showAddress.value = false;
console.log(e);
}
const datas = ref({})
const getDetails = ()=>{
@ -165,12 +148,12 @@
order_id: datas.value.id
}).then(res=>{
datas.value = res.data;
// if(!res.data.paid){
// targetDate = res.data.create_time;
// //
// timer = setInterval(updateCountdown, 1000);
// updateCountdown();
// }
if(!res.data.paid){
targetDate = new Date(res.data.create_time).getTime() + 30*60*1000;
//
timer = setInterval(updateCountdown, 1000);
updateCountdown();
}
})
}
@ -179,6 +162,36 @@
return price.split('.')[index] || (index ? '00' : '0');
}
//
const addressList = ref([]);
const getAddressList = ()=>{
addressListsApi().then(res=>{
addressList.value = res.data.lists;
addressList.value.forEach(item=>{
if(item.is_default) {
addressInfo.value = item;
}
})
if(addressList.value.length>0){
addressInfo.value = addressList.value[0];
}
})
}
getAddressList();
//
const showAddress = ref(false);
const addressInfo = ref({});
const changeAddress = (e) => {
addressInfo.value = e;
showAddress.value = false;
}
const openAddress = ()=>{
if(addressList.length>0) showAddress.value=true;
else uni.navigateTo({
url: '/pagesOrder/addressEdit/addressEdit'
})
}
const rePay = ()=>{
rePaymentApi({
order_id: datas.value.id,
@ -190,30 +203,32 @@
//
let targetDate = "";
let countDown = ref("");
let timer = null;
//
function updateCountdown() {
const now = new Date().getTime();
const distance = targetDate - now;
if(distance<0) return clearInterval(timer);
//
const hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
const minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
const seconds = Math.floor((distance % (1000 * 60)) / 1000);
//
console.log(`${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')}`);
countDown.value = `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')}`;
//
if (distance < 0) {
console.log('倒计时结束');
countDown.value = ""
}
}
onLoad((option) => {
uni.setNavigationBarTitle({
title: option.type == 1 ? '等待付款' : '订单详情'
title: option.type == 0 ? '等待付款' : '订单详情'
})
if(option.id) {
datas.value.id = option.id;
@ -348,24 +363,5 @@
}
}
.cancel-popup {
padding: 30rpx;
.head-title {
font-weight: bold;
text-align: center;
margin-bottom: 20rpx;
}
.row {
display: flex;
justify-content: space-between;
padding-bottom: 20rpx;
image {
width: 40rpx;
height: 40rpx;
}
}
}
</style>

View File

@ -26,7 +26,7 @@
<view class="all"> {{datas.goods_count}} 件商品, 总金额 <text>¥{{datas.total}}</text> </view>
</view>
<view v-if="datas.paid==0" class="item-btn">
<view style="width: 80px;"><up-button size="small" plain color="#989898" shape="circle">取消订单</up-button></view>
<view style="width: 80px;"><up-button size="small" plain color="#989898" shape="circle" @click="cancleOrder">取消订单</up-button></view>
<view style="width: 80px;"><up-button size="small" plain color="#20B128" shape="circle">立即支付</up-button></view>
</view>
<view v-else class="item-btn">
@ -66,6 +66,11 @@
url: `/pagesOrder/detail/detail?type=${props.datas.paid}&id=${props.datas.id}`
})
}
const emit = defineEmits(['cancleOrder']);
const cancleOrder = ()=>{
emit('cancleOrder', props.datas)
}
</script>
<style lang="scss">

View File

@ -2,7 +2,7 @@
<view>
<up-sticky bgColor="#fff">
<view style="padding: 10rpx 20rpx 0 20rpx;">
<up-search shape="round" :actionStyle="{color: '#20b128'}" ></up-search>
<up-search shape="round" v-model="where.keyword" @custom="searchOn" @search="searchOn" @clear="searchOn" :actionStyle="{color: '#20b128'}" ></up-search>
</view>
<up-tabs :current="tabsActive" :list="tablist" lineColor="#20b128" :scrollable="false" :activeStyle=" { color: '#20b128', fontWeight: 'bold' }" @change="changeTab"></up-tabs>
</up-sticky>
@ -12,7 +12,7 @@
<scroll-view scroll-y style="height: 100%;width: 100%;">
<view class="page-box">
<view v-if="list.length>0" class="list">
<good v-for="(item, index) in list" :datas="item" :key="index" :type="k"></good>
<good v-for="(item, index) in list" :datas="item" :key="index" :type="k" @cancleOrder="cancleOrder"></good>
</view>
<view v-else style="padding-top: 100rpx;">
<up-empty text="订单空空如也"
@ -24,7 +24,7 @@
</scroll-view>
</swiper-item>
</swiper>
<orderCanclePopup :show="showCancel" @close="showCancel=false" @change="submitCancel" />
</view>
</template>
@ -32,6 +32,7 @@
import { onLoad } from "@dcloudio/uni-app"
import { ref } from 'vue';
import good from "./component/good.vue";
import orderCanclePopup from "@/components/orderCanclePopup.vue"
import { orderListApi } from "@/api/order.js";
const tabsActive = ref(0)
@ -53,10 +54,25 @@
tabsActive.value = current;
}
const showCancel = ref(false);
const submitCancel = (e) => {
showCancel.value = false;
console.log(e);
uni.showToast({
title: '取消成功',
icon: 'none'
})
}
const cancleOrder = (e)=>{
console.log(e);
showCancel.value = true;
}
//
const where = ref({
page_no: 1,
page_size: 25
page_size: 25,
keyword: '',
})
const orderList= ref([
[],
@ -74,6 +90,15 @@
})
}
//
const searchOn = ()=>{
orderList.value[+swiperCurrent.value] = [];
if(swiperCurrent.value==0) getOrderList(0);
if(swiperCurrent.value==1) getOrderList(1, '', 0);
if(swiperCurrent.value==2) getOrderList(2, 0);
if(swiperCurrent.value==3) getOrderList(3, 1);
}
onLoad((options)=>{
if(options.type){
tabsActive.value = +options.type;

View File

@ -167,7 +167,6 @@
addressInfo.value = e;
showAddress.value = false;
isAddress.value = true;
console.log(e);
}
const openAddress = ()=>{
if(addressList.length>0) showAddress.value=true;

View File

@ -4,32 +4,35 @@ import { defineStore } from 'pinia';
import { ref } from 'vue';
const useUserStore = defineStore("user", () => {
// 定义一个状态用户信息
const userInfo = ref(uni.getStorageSync('userInfo')||{});
const userInfo = ref(uni.getStorageSync('userInfo') || {});
// 定义一个设置状态的方法
const setUserInfo = (data) => {
userInfo.value = data;
uni.setStorageSync('userInfo', data)
}
const token = ref(uni.getStorageSync('token')||'');
const token = ref(uni.getStorageSync('token') || '');
const setToken = (data) => {
token.value = data;
uni.setStorageSync('token', data)
}
// #ifdef H5
token.value = "a8670fe7f1014c0f5125f6ca0c3b9cb3"
token.value = "aba1d819e38fa087f52a6ddfd1b61f30"
userInfo.value = {
"nickname": "哈哈",
"id": 1,
"mobile": "17685151643",
"avatar": "https://thirdwx.qlogo.cn/mmopen/vi_32/tFJnfhVKlAlIecticsOhjAu8CHa6ibZacWrcHHkiahu7f0dQlWYgwu1b0TPLSLlO1xCTa6KN1krqg3XSIo3vq6uCQ/132",
"token": "a8670fe7f1014c0f5125f6ca0c3b9cb3"
}
avatar: "https://lihaiim.oss-cn-chengdu.aliyuncs.com/image/admin/default_avatar.png",
id: 9,
is_disable: 0,
is_new_user: 1,
mobile: "19330904744",
nickname: "用户1714964250",
supplier: null,
token: "33bb1ca5e6c98a6f948ad56b75471fb8"
}
// #endif
return { userInfo, setUserInfo, token, setToken }
})

View File

@ -83,6 +83,7 @@ const _sfc_main = {
const changeOrder = (order) => {
console.log("排序", order);
where.value.order = order;
getGoodList();
};
const where = common_vendor.ref({
page_no: 1,
@ -104,6 +105,10 @@ const _sfc_main = {
class_all = "";
if (class_all)
class_id = "";
if (loadmore)
where.value.page_no++;
else
where.value.page_no = 1;
api_good.goodListApi({
...where.value,
class_all,
@ -117,6 +122,7 @@ const _sfc_main = {
};
const loadMoreGood = () => {
console.log("触底了");
getGoodList(true);
};
const goodClassList = common_vendor.ref([]);
const goodClassTow = common_vendor.ref([]);
@ -212,17 +218,18 @@ const _sfc_main = {
placeholder: true
}),
b: common_vendor.o(searchKeyword),
c: common_vendor.o(($event) => keyword.value = $event),
d: common_vendor.p({
c: common_vendor.o(searchKeyword),
d: common_vendor.o(($event) => keyword.value = $event),
e: common_vendor.p({
placeholder: "请输入商品",
showAction: false,
modelValue: keyword.value
}),
e: common_assets._imports_0$1,
f: common_vendor.o(($event) => navTo("/pages/cart/cart")),
g: common_assets._imports_1$1,
h: common_vendor.o(($event) => navTo("/pages/my/my")),
i: common_vendor.f(goodClassList.value, (item, index, i0) => {
f: common_assets._imports_0$1,
g: common_vendor.o(($event) => navTo("/pages/cart/cart")),
h: common_assets._imports_1$1,
i: common_vendor.o(($event) => navTo("/pages/my/my")),
j: common_vendor.f(goodClassList.value, (item, index, i0) => {
return {
a: "1ba6254c-2-" + i0,
b: common_vendor.p({
@ -236,13 +243,13 @@ const _sfc_main = {
f: common_vendor.o(($event) => changeOne(item, index), index)
};
}),
j: common_vendor.p({
k: common_vendor.p({
name: "list"
}),
k: common_vendor.o(($event) => show.value = 1),
l: show.value === 1
l: common_vendor.o(($event) => show.value = 1),
m: show.value === 1
}, show.value === 1 ? {
m: common_vendor.f(goodClassList.value, (item, index, i0) => {
n: common_vendor.f(goodClassList.value, (item, index, i0) => {
return {
a: "1ba6254c-5-" + i0 + ",1ba6254c-4",
b: common_vendor.p({
@ -256,12 +263,12 @@ const _sfc_main = {
f: common_vendor.o(($event) => changeOne(item, index), index)
};
}),
n: common_vendor.o(($event) => show.value = 0),
o: common_vendor.p({
o: common_vendor.o(($event) => show.value = 0),
p: common_vendor.p({
nav: true
})
} : {}, {
p: common_vendor.f(goodClassTow.value, (item, index, i0) => {
q: common_vendor.f(goodClassTow.value, (item, index, i0) => {
return {
a: common_vendor.t(item.name),
b: leftActive.value === item.id ? 1 : "",
@ -269,7 +276,7 @@ const _sfc_main = {
d: common_vendor.o(($event) => changeTwo(item, index), index)
};
}),
q: common_vendor.f(goodClassThree.value, (item, index, i0) => {
r: common_vendor.f(goodClassThree.value, (item, index, i0) => {
return {
a: common_vendor.t(item.name),
b: rightActive.value === item.id ? 1 : "",
@ -277,19 +284,19 @@ const _sfc_main = {
d: common_vendor.o(($event) => changeThree(item, index), index)
};
}),
r: common_vendor.p({
s: common_vendor.p({
name: "arrow-down"
}),
s: common_vendor.o(($event) => show.value = 2),
t: where.value.order == "" ? 1 : "",
v: common_vendor.o(($event) => changeOrder("")),
w: where.value.order == "desc" || where.value.order == "asc" ? 1 : "",
x: common_vendor.o(($event) => changeOrder(where.value.order == "asc" ? "desc" : "asc")),
y: where.value.order == "sales" ? 1 : "",
z: common_vendor.o(($event) => changeOrder("sales")),
A: show.value === 2
t: common_vendor.o(($event) => show.value = 2),
v: where.value.order == "" ? 1 : "",
w: common_vendor.o(($event) => changeOrder("")),
x: where.value.order == "desc" || where.value.order == "asc" ? 1 : "",
y: common_vendor.o(($event) => changeOrder(where.value.order == "asc" ? "desc" : "asc")),
z: where.value.order == "sales" ? 1 : "",
A: common_vendor.o(($event) => changeOrder("sales")),
B: show.value === 2
}, show.value === 2 ? {
B: common_vendor.f(goodClassThree.value, (item, index, i0) => {
C: common_vendor.f(goodClassThree.value, (item, index, i0) => {
return {
a: common_vendor.t(item.name),
b: rightActive.value === item.id ? 1 : "",
@ -297,9 +304,9 @@ const _sfc_main = {
d: common_vendor.o(($event) => changeThree(item, index), index)
};
}),
C: common_vendor.o(($event) => show.value = 0)
D: common_vendor.o(($event) => show.value = 0)
} : {}, {
D: common_vendor.f(goodList.value, (item, index, i0) => {
E: common_vendor.f(goodList.value, (item, index, i0) => {
return {
a: "1ba6254c-8-" + i0,
b: common_vendor.p({
@ -317,27 +324,27 @@ const _sfc_main = {
j: common_vendor.o(($event) => openGoodPopup(item), item.id)
};
}),
E: common_vendor.p({
F: common_vendor.p({
name: "plus-circle-fill",
size: "20",
color: "#20b128"
}),
F: common_vendor.o(loadMoreGood),
G: common_vendor.t(cartInfo.value.total_price),
H: common_vendor.o(settleAccounts),
I: common_vendor.p({
G: common_vendor.o(loadMoreGood),
H: common_vendor.t(cartInfo.value.total_price),
I: common_vendor.o(settleAccounts),
J: common_vendor.p({
color: "#20b128",
disabled: cartInfo.value.count == 0
}),
J: common_assets._imports_2,
K: common_vendor.t(cartInfo.value.count),
L: common_vendor.o(($event) => navTo("/pages/cart/cart")),
M: common_vendor.sr(goodRef, "1ba6254c-11", {
K: common_assets._imports_2,
L: common_vendor.t(cartInfo.value.count),
M: common_vendor.o(($event) => navTo("/pages/cart/cart")),
N: common_vendor.sr(goodRef, "1ba6254c-11", {
"k": "goodRef"
}),
N: common_vendor.o(($event) => showGoodPopup.value = false),
O: common_vendor.o(changeGood),
P: common_vendor.p({
O: common_vendor.o(($event) => showGoodPopup.value = false),
P: common_vendor.o(changeGood),
Q: common_vendor.p({
show: showGoodPopup.value
})
});

View File

@ -1 +1 @@
<view class="content"><up-navbar wx:if="{{a}}" u-s="{{['left']}}" style="z-index:10080" u-i="1ba6254c-0" bind:__l="__l" u-p="{{a}}"><view style="font-size:30rpx;font-weight:bold" slot="left">惠农批发</view></up-navbar><view class="navbar"><view style="width:500rpx"><up-search wx:if="{{d}}" bindsearch="{{b}}" u-i="1ba6254c-1" bind:__l="__l" bindupdateModelValue="{{c}}" u-p="{{d}}"></up-search></view><view class="nav-item" bindtap="{{f}}"><image src="{{e}}"></image><text>购物车</text></view><view class="nav-item" bindtap="{{h}}"><image src="{{g}}"></image><text>个人中心</text></view></view><view style="position:relative;overflow:hidden"><scroll-view class="head-view" scroll-x><view class="list"><view wx:for="{{i}}" wx:for-item="item" wx:key="e" class="{{['item', item.d && 'item-active']}}" bindtap="{{item.f}}"><view class="c-img"><up-image wx:if="{{item.b}}" u-i="{{item.a}}" bind:__l="__l" u-p="{{item.b}}"></up-image></view><view class="c-text u-line-1">{{item.c}}</view></view><view class="item" style="width:80rpx;height:20rpx"></view></view></scroll-view><view class="r-btn" bindtap="{{k}}"><view>全</view><view>部</view><up-icon wx:if="{{j}}" u-i="1ba6254c-3" bind:__l="__l" u-p="{{j}}"></up-icon></view></view><view-popup wx:if="{{l}}" u-s="{{['d']}}" bindclose="{{n}}" u-i="1ba6254c-4" bind:__l="__l" u-p="{{o}}"><view class="cateOne"><view class="head-title">全部分类</view><scroll-view scroll-y style="height:600rpx"><view class="list"><view wx:for="{{m}}" wx:for-item="item" wx:key="e" class="{{['item', item.d && 'item-active']}}" bindtap="{{item.f}}"><view class="c-img"><up-image wx:if="{{item.b}}" u-i="{{item.a}}" bind:__l="__l" u-p="{{item.b}}"></up-image></view><view class="c-text u-line-1">{{item.c}}</view></view></view></scroll-view></view></view-popup><view class="scroll-box"><scroll-view class="left" scroll-y><view wx:for="{{p}}" wx:for-item="item" wx:key="c" class="{{['item', 'u-line-1', item.b && 'item-active']}}" bindtap="{{item.d}}">{{item.a}}</view><view style="width:100%;height:300rpx"></view></scroll-view><view class="right"><view class="classify"><scroll-view style="height:90rpx" scroll-x><view class="classify-list"><view wx:for="{{q}}" wx:for-item="item" wx:key="c" class="{{['classify-list-item', 'u-line-1', item.b && 'item-active']}}" bindtap="{{item.d}}">{{item.a}}</view><view style="width:70rpx;flex-shrink:0"></view></view></scroll-view><view class="done" bindtap="{{s}}"><up-icon wx:if="{{r}}" u-i="1ba6254c-6" bind:__l="__l" u-p="{{r}}"></up-icon></view><view class="order-by"><view class="{{['item', t && 'order-active']}}" bindtap="{{v}}">综合</view><view class="{{['item', w && 'order-active']}}" bindtap="{{x}}">价格</view><view class="{{['item', y && 'order-active']}}" bindtap="{{z}}">销量</view></view></view><view-popup wx:if="{{A}}" u-s="{{['d']}}" bindclose="{{C}}" u-i="1ba6254c-7" bind:__l="__l"><view class="cateOne"><scroll-view scroll-y style="height:230rpx"><view class="classify-list"><view wx:for="{{B}}" wx:for-item="item" wx:key="c" class="{{['classify-list-item', 'u-line-1', item.b && 'item-active']}}" bindtap="{{item.d}}">{{item.a}}</view></view></scroll-view></view></view-popup><scroll-view class="list" scroll-y bindscrolltolower="{{F}}"><view wx:for="{{D}}" wx:for-item="item" wx:key="i" class="shop-item" bindtap="{{item.j}}"><view class="shop-img"><up-image wx:if="{{item.b}}" u-i="{{item.a}}" bind:__l="__l" u-p="{{item.b}}"></up-image></view><view class="shop-content"><view class="title"><view class="name u-line-2">{{item.c}}</view><view class="tip u-line-1"><text>{{item.d}}|</text><text>{{item.e}}|</text><text>{{item.f}}</text></view></view><view class="price-btn"><view class="price">¥{{item.g}}</view><view class="btn"><u--icon wx:if="{{E}}" u-i="{{item.h}}" bind:__l="__l" u-p="{{E}}"></u--icon></view></view></view></view><view style="width:100%;height:300rpx"></view></scroll-view></view></view><view class="fiexd-btn-box"><view class="price-info"><view class="row"><view>合计</view><view class="price">¥<text style="font-size:36rpx">{{G}}</text></view></view></view><view class="btn"><up-button wx:if="{{I}}" u-s="{{['d']}}" bindclick="{{H}}" u-i="1ba6254c-10" bind:__l="__l" u-p="{{I}}">结算</up-button></view><view class="cart" bindtap="{{L}}"><image src="{{J}}"></image><view class="badge">{{K}}</view></view></view><good-popup wx:if="{{P}}" class="r" u-r="goodRef" bindclose="{{N}}" bindchange="{{O}}" u-i="1ba6254c-11" bind:__l="__l" u-p="{{P}}"/></view>
<view class="content"><up-navbar wx:if="{{a}}" u-s="{{['left']}}" style="z-index:10080" u-i="1ba6254c-0" bind:__l="__l" u-p="{{a}}"><view style="font-size:30rpx;font-weight:bold" slot="left">惠农批发</view></up-navbar><view class="navbar"><view style="width:500rpx"><up-search wx:if="{{e}}" bindsearch="{{b}}" bindclear="{{c}}" u-i="1ba6254c-1" bind:__l="__l" bindupdateModelValue="{{d}}" u-p="{{e}}"></up-search></view><view class="nav-item" bindtap="{{g}}"><image src="{{f}}"></image><text>购物车</text></view><view class="nav-item" bindtap="{{i}}"><image src="{{h}}"></image><text>个人中心</text></view></view><view style="position:relative;overflow:hidden"><scroll-view class="head-view" scroll-x><view class="list"><view wx:for="{{j}}" wx:for-item="item" wx:key="e" class="{{['item', item.d && 'item-active']}}" bindtap="{{item.f}}"><view class="c-img"><up-image wx:if="{{item.b}}" u-i="{{item.a}}" bind:__l="__l" u-p="{{item.b}}"></up-image></view><view class="c-text u-line-1">{{item.c}}</view></view><view class="item" style="width:80rpx;height:20rpx"></view></view></scroll-view><view class="r-btn" bindtap="{{l}}"><view>全</view><view>部</view><up-icon wx:if="{{k}}" u-i="1ba6254c-3" bind:__l="__l" u-p="{{k}}"></up-icon></view></view><view-popup wx:if="{{m}}" u-s="{{['d']}}" bindclose="{{o}}" u-i="1ba6254c-4" bind:__l="__l" u-p="{{p}}"><view class="cateOne"><view class="head-title">全部分类</view><scroll-view scroll-y style="height:600rpx"><view class="list"><view wx:for="{{n}}" wx:for-item="item" wx:key="e" class="{{['item', item.d && 'item-active']}}" bindtap="{{item.f}}"><view class="c-img"><up-image wx:if="{{item.b}}" u-i="{{item.a}}" bind:__l="__l" u-p="{{item.b}}"></up-image></view><view class="c-text u-line-1">{{item.c}}</view></view></view></scroll-view></view></view-popup><view class="scroll-box"><scroll-view class="left" scroll-y><view wx:for="{{q}}" wx:for-item="item" wx:key="c" class="{{['item', 'u-line-1', item.b && 'item-active']}}" bindtap="{{item.d}}">{{item.a}}</view><view style="width:100%;height:300rpx"></view></scroll-view><view class="right"><view class="classify"><scroll-view style="height:90rpx" scroll-x><view class="classify-list"><view wx:for="{{r}}" wx:for-item="item" wx:key="c" class="{{['classify-list-item', 'u-line-1', item.b && 'item-active']}}" bindtap="{{item.d}}">{{item.a}}</view><view style="width:70rpx;flex-shrink:0"></view></view></scroll-view><view class="done" bindtap="{{t}}"><up-icon wx:if="{{s}}" u-i="1ba6254c-6" bind:__l="__l" u-p="{{s}}"></up-icon></view><view class="order-by"><view class="{{['item', v && 'order-active']}}" bindtap="{{w}}">综合</view><view class="{{['item', x && 'order-active']}}" bindtap="{{y}}">价格</view><view class="{{['item', z && 'order-active']}}" bindtap="{{A}}">销量</view></view></view><view-popup wx:if="{{B}}" u-s="{{['d']}}" bindclose="{{D}}" u-i="1ba6254c-7" bind:__l="__l"><view class="cateOne"><scroll-view scroll-y style="height:230rpx"><view class="classify-list"><view wx:for="{{C}}" wx:for-item="item" wx:key="c" class="{{['classify-list-item', 'u-line-1', item.b && 'item-active']}}" bindtap="{{item.d}}">{{item.a}}</view></view></scroll-view></view></view-popup><scroll-view class="list" scroll-y bindscrolltolower="{{G}}"><view wx:for="{{E}}" wx:for-item="item" wx:key="i" class="shop-item" bindtap="{{item.j}}"><view class="shop-img"><up-image wx:if="{{item.b}}" u-i="{{item.a}}" bind:__l="__l" u-p="{{item.b}}"></up-image></view><view class="shop-content"><view class="title"><view class="name u-line-2">{{item.c}}</view><view class="tip u-line-1"><text>{{item.d}}|</text><text>{{item.e}}|</text><text>{{item.f}}</text></view></view><view class="price-btn"><view class="price">¥{{item.g}}</view><view class="btn"><u--icon wx:if="{{F}}" u-i="{{item.h}}" bind:__l="__l" u-p="{{F}}"></u--icon></view></view></view></view><view style="width:100%;height:300rpx"></view></scroll-view></view></view><view class="fiexd-btn-box"><view class="price-info"><view class="row"><view>合计</view><view class="price">¥<text style="font-size:36rpx">{{H}}</text></view></view></view><view class="btn"><up-button wx:if="{{J}}" u-s="{{['d']}}" bindclick="{{I}}" u-i="1ba6254c-10" bind:__l="__l" u-p="{{J}}">结算</up-button></view><view class="cart" bindtap="{{M}}"><image src="{{K}}"></image><view class="badge">{{L}}</view></view></view><good-popup wx:if="{{Q}}" class="r" u-r="goodRef" bindclose="{{O}}" bindchange="{{P}}" u-i="1ba6254c-11" bind:__l="__l" u-p="{{Q}}"/></view>

View File

@ -6,22 +6,22 @@ const store_user = require("../../store/user.js");
require("../../utils/request.js");
require("../../config/app.js");
if (!Array) {
const _easycom_up_navbar2 = common_vendor.resolveComponent("up-navbar");
const _easycom_up_icon2 = common_vendor.resolveComponent("up-icon");
const _easycom_up_navbar2 = common_vendor.resolveComponent("up-navbar");
const _easycom_up_button2 = common_vendor.resolveComponent("up-button");
const _easycom_up_transition2 = common_vendor.resolveComponent("up-transition");
const _easycom_up_input2 = common_vendor.resolveComponent("up-input");
const _easycom_up_code2 = common_vendor.resolveComponent("up-code");
(_easycom_up_navbar2 + _easycom_up_icon2 + _easycom_up_button2 + _easycom_up_transition2 + _easycom_up_input2 + _easycom_up_code2)();
(_easycom_up_icon2 + _easycom_up_navbar2 + _easycom_up_button2 + _easycom_up_transition2 + _easycom_up_input2 + _easycom_up_code2)();
}
const _easycom_up_navbar = () => "../../uni_modules/uview-plus/components/u-navbar/u-navbar.js";
const _easycom_up_icon = () => "../../uni_modules/uview-plus/components/u-icon/u-icon.js";
const _easycom_up_navbar = () => "../../uni_modules/uview-plus/components/u-navbar/u-navbar.js";
const _easycom_up_button = () => "../../uni_modules/uview-plus/components/u-button/u-button.js";
const _easycom_up_transition = () => "../../uni_modules/uview-plus/components/u-transition/u-transition.js";
const _easycom_up_input = () => "../../uni_modules/uview-plus/components/u-input/u-input.js";
const _easycom_up_code = () => "../../uni_modules/uview-plus/components/u-code/u-code.js";
if (!Math) {
(_easycom_up_navbar + _easycom_up_icon + _easycom_up_button + _easycom_up_transition + _easycom_up_input + _easycom_up_code + bindPhone)();
(_easycom_up_icon + _easycom_up_navbar + _easycom_up_button + _easycom_up_transition + _easycom_up_input + _easycom_up_code + bindPhone)();
}
const bindPhone = () => "../../components/bindPhone.js";
const _sfc_main = {
@ -142,36 +142,43 @@ const _sfc_main = {
};
return (_ctx, _cache) => {
return common_vendor.e({
a: common_vendor.o(navBack),
b: common_vendor.p({
a: !showWeixin.value
}, !showWeixin.value ? {
b: common_vendor.o(navBack),
c: common_vendor.p({
name: "arrow-left",
size: "20"
})
} : {}, {
d: common_vendor.p({
title: "登录",
autoBack: false,
placeholder: true,
bgColor: "rgba(0,0,0,0)"
}),
c: showWeixin.value
e: showWeixin.value
}, showWeixin.value ? {
d: common_vendor.p({
f: common_vendor.p({
name: "weixin-fill",
color: "#fff",
size: "28"
}),
e: common_vendor.o(weixinLogin),
f: common_vendor.p({
g: common_vendor.o(weixinLogin),
h: common_vendor.p({
color: "#20B128",
size: "large"
}),
g: common_vendor.o(($event) => showWeixin.value = false),
h: common_vendor.p({
i: common_vendor.o(($event) => showWeixin.value = false),
j: common_vendor.p({
color: "#ECFFEE",
size: "large"
}),
i: common_vendor.p({
k: common_vendor.p({
show: showWeixin.value
})
} : {
j: common_vendor.o(($event) => loginForm.value.phone = $event),
k: common_vendor.p({
l: common_vendor.o(($event) => loginForm.value.phone = $event),
m: common_vendor.p({
customStyle: {
height: "100%"
},
@ -181,17 +188,17 @@ const _sfc_main = {
type: "number",
modelValue: loginForm.value.phone
}),
l: common_vendor.sr(uCodeRef, "23c3038c-8,23c3038c-7", {
n: common_vendor.sr(uCodeRef, "23c3038c-9,23c3038c-8", {
"k": "uCodeRef"
}),
m: common_vendor.o(codeChange),
n: common_vendor.p({
o: common_vendor.o(codeChange),
p: common_vendor.p({
seconds: seconds.value
}),
o: common_vendor.t(tips.value),
p: common_vendor.o(getCode),
q: common_vendor.o(($event) => loginForm.value.code = $event),
r: common_vendor.p({
q: common_vendor.t(tips.value),
r: common_vendor.o(getCode),
s: common_vendor.o(($event) => loginForm.value.code = $event),
t: common_vendor.p({
customStyle: {
height: "100%"
},
@ -202,26 +209,26 @@ const _sfc_main = {
type: "number",
modelValue: loginForm.value.code
}),
s: common_vendor.o(codeLogin),
t: common_vendor.p({
v: common_vendor.o(codeLogin),
w: common_vendor.p({
color: "#20B128",
size: "large"
}),
v: common_vendor.p({
x: common_vendor.p({
show: !showWeixin.value
})
}, {
w: !isAgree.value
y: !isAgree.value
}, !isAgree.value ? {
x: common_vendor.o(($event) => isAgree.value = true),
y: common_assets._imports_1
z: common_vendor.o(($event) => isAgree.value = true),
A: common_assets._imports_1
} : {
z: common_vendor.o(($event) => isAgree.value = false),
A: common_assets._imports_0
B: common_vendor.o(($event) => isAgree.value = false),
C: common_assets._imports_0
}, {
B: common_vendor.o(($event) => showBind.value = false),
C: common_vendor.o(getPhoneNumber),
D: common_vendor.p({
D: common_vendor.o(($event) => showBind.value = false),
E: common_vendor.o(getPhoneNumber),
F: common_vendor.p({
show: showBind.value
})
});

View File

@ -3,8 +3,8 @@
"enablePullDownRefresh": false,
"navigationStyle": "custom",
"usingComponents": {
"up-navbar": "../../uni_modules/uview-plus/components/u-navbar/u-navbar",
"up-icon": "../../uni_modules/uview-plus/components/u-icon/u-icon",
"up-navbar": "../../uni_modules/uview-plus/components/u-navbar/u-navbar",
"up-button": "../../uni_modules/uview-plus/components/u-button/u-button",
"up-transition": "../../uni_modules/uview-plus/components/u-transition/u-transition",
"up-input": "../../uni_modules/uview-plus/components/u-input/u-input",

View File

@ -1 +1 @@
<view><up-navbar wx:if="{{b}}" bindleftClick="{{a}}" u-i="23c3038c-0" bind:__l="__l" u-p="{{b}}"></up-navbar><view class="login-box"><image class="logo" src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/35adb202404271727457954.png"></image><view class="tips">欢迎登录惠农批发</view><block wx:if="{{c}}"><up-transition wx:if="{{i}}" u-s="{{['d']}}" u-i="23c3038c-1" bind:__l="__l" u-p="{{i}}"><view class="btn"><up-button wx:if="{{f}}" u-s="{{['d']}}" bindclick="{{e}}" u-i="23c3038c-2,23c3038c-1" bind:__l="__l" u-p="{{f}}"><up-icon wx:if="{{d}}" u-i="23c3038c-3,23c3038c-2" bind:__l="__l" u-p="{{d}}"></up-icon>微信快捷登录</up-button></view><view class="btn"><up-button wx:if="{{h}}" u-s="{{['d']}}" bindclick="{{g}}" u-i="23c3038c-4,23c3038c-1" bind:__l="__l" u-p="{{h}}"><text style="color:#20B128">使用短信验证登录</text></up-button></view></up-transition></block><block wx:else><up-transition wx:if="{{v}}" u-s="{{['d']}}" u-i="23c3038c-5" bind:__l="__l" u-p="{{v}}"><view class="form"><view class="input"><up-input wx:if="{{k}}" u-s="{{['prefix']}}" u-i="23c3038c-6,23c3038c-5" bind:__l="__l" bindupdateModelValue="{{j}}" u-p="{{k}}"><image style="height:40rpx;width:40rpx;margin-top:6rpx" src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/48491202404281006484208.png" slot="prefix"></image></up-input></view><view class="input"><up-input wx:if="{{r}}" u-s="{{['prefix','suffix']}}" u-i="23c3038c-7,23c3038c-5" bind:__l="__l" bindupdateModelValue="{{q}}" u-p="{{r}}"><image style="height:40rpx;width:40rpx;margin-top:6rpx" src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/3a42f202404281007454918.png" slot="prefix"></image><view slot="suffix"><up-code wx:if="{{n}}" class="r" u-r="uCodeRef" bindchange="{{m}}" u-i="23c3038c-8,23c3038c-7" bind:__l="__l" u-p="{{n}}"></up-code><view style="color:#20B128" bindtap="{{p}}">{{o}}</view></view></up-input></view></view><view class="btn"><up-button wx:if="{{t}}" u-s="{{['d']}}" bindclick="{{s}}" u-i="23c3038c-9,23c3038c-5" bind:__l="__l" u-p="{{t}}">登录</up-button></view></up-transition></block><view class="agreement"><image wx:if="{{w}}" bindtap="{{x}}" src="{{y}}"></image><image wx:else bindtap="{{z}}" src="{{A}}"></image><view> 我已同意<text>《用户协议》</text>与<text>《隐私政策》</text></view></view></view><bind-phone wx:if="{{D}}" bindclose="{{B}}" bindchange="{{C}}" u-i="23c3038c-10" bind:__l="__l" u-p="{{D}}"/></view>
<view><up-navbar wx:if="{{d}}" u-s="{{['left']}}" u-i="23c3038c-0" bind:__l="__l" u-p="{{d}}"><view slot="left"><up-icon wx:if="{{a}}" bindclick="{{b}}" u-i="23c3038c-1,23c3038c-0" bind:__l="__l" u-p="{{c}}"></up-icon><view wx:else></view></view></up-navbar><view class="login-box"><image class="logo" src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/35adb202404271727457954.png"></image><view class="tips">欢迎登录惠农批发</view><block wx:if="{{e}}"><up-transition wx:if="{{k}}" u-s="{{['d']}}" u-i="23c3038c-2" bind:__l="__l" u-p="{{k}}"><view class="btn"><up-button wx:if="{{h}}" u-s="{{['d']}}" bindclick="{{g}}" u-i="23c3038c-3,23c3038c-2" bind:__l="__l" u-p="{{h}}"><up-icon wx:if="{{f}}" u-i="23c3038c-4,23c3038c-3" bind:__l="__l" u-p="{{f}}"></up-icon>微信快捷登录</up-button></view><view class="btn"><up-button wx:if="{{j}}" u-s="{{['d']}}" bindclick="{{i}}" u-i="23c3038c-5,23c3038c-2" bind:__l="__l" u-p="{{j}}"><text style="color:#20B128">使用短信验证登录</text></up-button></view></up-transition></block><block wx:else><up-transition wx:if="{{x}}" u-s="{{['d']}}" u-i="23c3038c-6" bind:__l="__l" u-p="{{x}}"><view class="form"><view class="input"><up-input wx:if="{{m}}" u-s="{{['prefix']}}" u-i="23c3038c-7,23c3038c-6" bind:__l="__l" bindupdateModelValue="{{l}}" u-p="{{m}}"><image style="height:40rpx;width:40rpx;margin-top:6rpx" src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/48491202404281006484208.png" slot="prefix"></image></up-input></view><view class="input"><up-input wx:if="{{t}}" u-s="{{['prefix','suffix']}}" u-i="23c3038c-8,23c3038c-6" bind:__l="__l" bindupdateModelValue="{{s}}" u-p="{{t}}"><image style="height:40rpx;width:40rpx;margin-top:6rpx" src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/3a42f202404281007454918.png" slot="prefix"></image><view slot="suffix"><up-code wx:if="{{p}}" class="r" u-r="uCodeRef" bindchange="{{o}}" u-i="23c3038c-9,23c3038c-8" bind:__l="__l" u-p="{{p}}"></up-code><view style="color:#20B128" bindtap="{{r}}">{{q}}</view></view></up-input></view></view><view class="btn"><up-button wx:if="{{w}}" u-s="{{['d']}}" bindclick="{{v}}" u-i="23c3038c-10,23c3038c-6" bind:__l="__l" u-p="{{w}}">登录</up-button></view></up-transition></block><view class="agreement"><image wx:if="{{y}}" bindtap="{{z}}" src="{{A}}"></image><image wx:else bindtap="{{B}}" src="{{C}}"></image><view> 我已同意<text>《用户协议》</text>与<text>《隐私政策》</text></view></view></view><bind-phone wx:if="{{F}}" bindclose="{{D}}" bindchange="{{E}}" u-i="23c3038c-11" bind:__l="__l" u-p="{{F}}"/></view>

View File

@ -39,6 +39,13 @@ const _sfc_main = {
url: `/pagesOrder/order/order?type=${type}`
});
};
const logout = () => {
userStore.setToken("");
userStore.setUserInfo({});
common_vendor.index.reLaunch({
url: "/pages/login/login"
});
};
return (_ctx, _cache) => {
return common_vendor.e({
a: common_vendor.p({
@ -81,10 +88,10 @@ const _sfc_main = {
title: "关于我们",
isLink: true
}),
r: common_vendor.p({
r: common_vendor.o(logout),
s: common_vendor.p({
title: "退出登录",
isLink: true,
url: "/pages/login/login"
isLink: true
})
});
};

View File

@ -1 +1 @@
<view><up-navbar wx:if="{{a}}" u-i="39cfeb26-0" bind:__l="__l" u-p="{{a}}"></up-navbar><view class="user-info"><image class="bg" src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/e3a7b202404261113002322.webp" mode="widthFix"></image><view class="u-card"><up-avatar wx:if="{{b}}" u-i="39cfeb26-1" bind:__l="__l" u-p="{{b}}"></up-avatar><view class="content"><view class="u-phone">{{c}}</view><view class="u-id">ID: {{d}}</view></view></view></view><view class="order-info-box"><view class="order-info"><view class="info-head">我的订单</view><view class="info-list"><view class="list-item" bindtap="{{g}}"><image src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/f335a202404261401535608.png"></image><view class="">待付款</view><view wx:if="{{e}}" class="badge">{{f}}</view></view><view class="list-item" bindtap="{{j}}"><image src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/53747202405061509465296.png"></image><view class="">待发货</view><view wx:if="{{h}}" class="badge">{{i}}</view></view><view class="list-item" bindtap="{{m}}"><image src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/45241202404261403353935.png"></image><view class="">待收货</view><view wx:if="{{k}}" class="badge">{{l}}</view></view><view class="list-item" bindtap="{{n}}"><image src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/abdcd202404261406199643.png"></image><view class="">全部订单</view></view></view></view></view><view class="card"><up-cell-group u-s="{{['d']}}" u-i="39cfeb26-2" bind:__l="__l"><up-cell wx:if="{{o}}" u-i="39cfeb26-3,39cfeb26-2" bind:__l="__l" u-p="{{o}}"></up-cell></up-cell-group></view><view class="card"><up-cell-group u-s="{{['d']}}" u-i="39cfeb26-4" bind:__l="__l"><up-cell wx:if="{{p}}" u-i="39cfeb26-5,39cfeb26-4" bind:__l="__l" u-p="{{p}}"></up-cell><up-cell wx:if="{{q}}" u-i="39cfeb26-6,39cfeb26-4" bind:__l="__l" u-p="{{q}}"></up-cell><up-cell wx:if="{{r}}" u-i="39cfeb26-7,39cfeb26-4" bind:__l="__l" u-p="{{r}}"></up-cell></up-cell-group></view></view>
<view><up-navbar wx:if="{{a}}" u-i="39cfeb26-0" bind:__l="__l" u-p="{{a}}"></up-navbar><view class="user-info"><image class="bg" src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/e3a7b202404261113002322.webp" mode="widthFix"></image><view class="u-card"><up-avatar wx:if="{{b}}" u-i="39cfeb26-1" bind:__l="__l" u-p="{{b}}"></up-avatar><view class="content"><view class="u-phone">{{c}}</view><view class="u-id">ID: {{d}}</view></view></view></view><view class="order-info-box"><view class="order-info"><view class="info-head">我的订单</view><view class="info-list"><view class="list-item" bindtap="{{g}}"><image src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/f335a202404261401535608.png"></image><view class="">待付款</view><view wx:if="{{e}}" class="badge">{{f}}</view></view><view class="list-item" bindtap="{{j}}"><image src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/53747202405061509465296.png"></image><view class="">待发货</view><view wx:if="{{h}}" class="badge">{{i}}</view></view><view class="list-item" bindtap="{{m}}"><image src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/45241202404261403353935.png"></image><view class="">待收货</view><view wx:if="{{k}}" class="badge">{{l}}</view></view><view class="list-item" bindtap="{{n}}"><image src="https://lihai001.oss-cn-chengdu.aliyuncs.com/def/abdcd202404261406199643.png"></image><view class="">全部订单</view></view></view></view></view><view class="card"><up-cell-group u-s="{{['d']}}" u-i="39cfeb26-2" bind:__l="__l"><up-cell wx:if="{{o}}" u-i="39cfeb26-3,39cfeb26-2" bind:__l="__l" u-p="{{o}}"></up-cell></up-cell-group></view><view class="card"><up-cell-group u-s="{{['d']}}" u-i="39cfeb26-4" bind:__l="__l"><up-cell wx:if="{{p}}" u-i="39cfeb26-5,39cfeb26-4" bind:__l="__l" u-p="{{p}}"></up-cell><up-cell wx:if="{{q}}" u-i="39cfeb26-6,39cfeb26-4" bind:__l="__l" u-p="{{q}}"></up-cell><up-cell wx:if="{{s}}" bindclick="{{r}}" u-i="39cfeb26-7,39cfeb26-4" bind:__l="__l" u-p="{{s}}"></up-cell></up-cell-group></view></view>

View File

@ -1,8 +1,7 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const common_assets = require("../../common/assets.js");
const dict_cancelDict = require("../../dict/cancelDict.js");
const api_order = require("../../api/order.js");
const api_user = require("../../api/user.js");
require("../../utils/request.js");
require("../../config/app.js");
require("../../store/user.js");
@ -11,49 +10,68 @@ if (!Array) {
const _easycom_up_button2 = common_vendor.resolveComponent("up-button");
const _easycom_up_image2 = common_vendor.resolveComponent("up-image");
const _easycom_up_copy2 = common_vendor.resolveComponent("up-copy");
const _easycom_up_popup2 = common_vendor.resolveComponent("up-popup");
(_easycom_up_icon2 + _easycom_up_button2 + _easycom_up_image2 + _easycom_up_copy2 + _easycom_up_popup2)();
(_easycom_up_icon2 + _easycom_up_button2 + _easycom_up_image2 + _easycom_up_copy2)();
}
const _easycom_up_icon = () => "../../uni_modules/uview-plus/components/u-icon/u-icon.js";
const _easycom_up_button = () => "../../uni_modules/uview-plus/components/u-button/u-button.js";
const _easycom_up_image = () => "../../uni_modules/uview-plus/components/u-image/u-image.js";
const _easycom_up_copy = () => "../../uni_modules/uview-plus/components/u-copy/u-copy.js";
const _easycom_up_popup = () => "../../uni_modules/uview-plus/components/u-popup/u-popup.js";
if (!Math) {
(_easycom_up_icon + _easycom_up_button + _easycom_up_image + _easycom_up_copy + _easycom_up_popup + addressPopup + modal)();
(_easycom_up_icon + _easycom_up_button + _easycom_up_image + _easycom_up_copy + orderCanclePopup + addressPopup + modal)();
}
const addressPopup = () => "../../components/addressPopup.js";
const orderCanclePopup = () => "../../components/orderCanclePopup.js";
const modal = () => "../../components/modal.js";
const _sfc_main = {
__name: "detail",
setup(__props) {
const showCancel = common_vendor.ref(false);
const showAddress = common_vendor.ref(false);
const cancelType = common_vendor.ref(-1);
const submitCancel = () => {
const submitCancel = (e) => {
showCancel.value = false;
console.log(cancelType.value);
console.log(e);
common_vendor.index.showToast({
title: "取消成功",
icon: "none"
});
};
const changeAddress = (e) => {
showAddress.value = false;
console.log(e);
};
const datas = common_vendor.ref({});
const getDetails = () => {
api_order.orderDetailApi({
order_id: datas.value.id
}).then((res) => {
datas.value = res.data;
if (!res.data.paid) {
targetDate = new Date(res.data.create_time).getTime() + 30 * 60 * 1e3;
timer = setInterval(updateCountdown, 1e3);
updateCountdown();
}
});
};
const c_price = (price, index = 0) => {
price = price + "";
return price.split(".")[index] || (index ? "00" : "0");
};
const addressList = common_vendor.ref([]);
const getAddressList = () => {
api_user.addressListsApi().then((res) => {
addressList.value = res.data.lists;
addressList.value.forEach((item) => {
if (item.is_default) {
addressInfo.value = item;
}
});
if (addressList.value.length > 0) {
addressInfo.value = addressList.value[0];
}
});
};
getAddressList();
const showAddress = common_vendor.ref(false);
const addressInfo = common_vendor.ref({});
const changeAddress = (e) => {
addressInfo.value = e;
showAddress.value = false;
};
const rePay = () => {
api_order.rePaymentApi({
order_id: datas.value.id,
@ -62,10 +80,26 @@ const _sfc_main = {
console.log(res);
});
};
let targetDate = "";
let countDown = common_vendor.ref("");
let timer = null;
function updateCountdown() {
const now = (/* @__PURE__ */ new Date()).getTime();
const distance = targetDate - now;
if (distance < 0)
return clearInterval(timer);
const hours = Math.floor(distance % (1e3 * 60 * 60 * 24) / (1e3 * 60 * 60));
const minutes = Math.floor(distance % (1e3 * 60 * 60) / (1e3 * 60));
const seconds = Math.floor(distance % (1e3 * 60) / 1e3);
countDown.value = `${hours.toString().padStart(2, "0")}:${minutes.toString().padStart(2, "0")}:${seconds.toString().padStart(2, "0")}`;
if (distance < 0) {
console.log("倒计时结束");
countDown.value = "";
}
}
common_vendor.onLoad((option) => {
common_vendor.index.setNavigationBarTitle({
title: option.type == 1 ? "等待付款" : "订单详情"
title: option.type == 0 ? "等待付款" : "订单详情"
});
if (option.id) {
datas.value.id = option.id;
@ -78,13 +112,20 @@ const _sfc_main = {
});
return (_ctx, _cache) => {
return common_vendor.e({
a: common_vendor.p({
name: "map"
a: datas.value.paid == 0 && common_vendor.unref(countDown)
}, datas.value.paid == 0 && common_vendor.unref(countDown) ? {
b: common_vendor.t(common_vendor.unref(countDown))
} : {}, {
c: common_vendor.p({
name: "account"
}),
b: datas.value.paid == 0
d: common_vendor.t(addressInfo.value.real_name),
e: common_vendor.t(addressInfo.value.phone),
f: common_vendor.t(addressInfo.value.detail),
g: datas.value.paid == 0
}, datas.value.paid == 0 ? {
c: common_vendor.o(($event) => showAddress.value = true),
d: common_vendor.p({
h: common_vendor.o(($event) => showAddress.value = true),
i: common_vendor.p({
size: "small",
shape: "circle",
color: "#f6f6f6",
@ -93,7 +134,7 @@ const _sfc_main = {
}
})
} : {}, {
e: common_vendor.f(datas.value.goods_list, (item, index, i0) => {
j: common_vendor.f(datas.value.goods_list, (item, index, i0) => {
return {
a: "666b5ad0-2-" + i0,
b: common_vendor.p({
@ -105,100 +146,88 @@ const _sfc_main = {
d: common_vendor.t(item.sell),
e: common_vendor.t(item.goods_unit),
f: common_vendor.t(item.nums),
g: common_vendor.t(item.msg)
g: common_vendor.t(item.msg),
h: index
};
}),
f: datas.value.paid == 0
k: datas.value.paid == 0
}, datas.value.paid == 0 ? common_vendor.e({
g: datas.value.goods_list
l: datas.value.goods_list
}, datas.value.goods_list ? {
h: common_vendor.t(datas.value.goods_list.length),
i: common_vendor.t(c_price(datas.value.total, 0)),
j: common_vendor.t(c_price(datas.value.total, 1))
m: common_vendor.t(datas.value.goods_list.length),
n: common_vendor.t(c_price(datas.value.total, 0)),
o: common_vendor.t(c_price(datas.value.total, 1))
} : {}, {
k: common_vendor.t(c_price(datas.value.total, 0)),
l: common_vendor.t(c_price(datas.value.total, 1))
}) : {}, {
m: datas.value.paid == 0
p: datas.value.total
}, datas.value.total ? {
q: common_vendor.t(c_price(datas.value.total, 0)),
r: common_vendor.t(c_price(datas.value.total, 1))
} : {}) : {}, {
s: datas.value.paid == 0
}, datas.value.paid == 0 ? common_vendor.e({
n: common_vendor.t(datas.value.number),
o: common_vendor.p({
t: common_vendor.t(datas.value.number),
v: common_vendor.p({
content: datas.value.number
}),
p: common_vendor.t(datas.value.create_time),
q: datas.value.paid
w: common_vendor.t(datas.value.create_time),
x: datas.value.paid
}, datas.value.paid ? {} : {}) : common_vendor.e({
r: datas.value.goods_list
y: datas.value.goods_list
}, datas.value.goods_list ? {
s: common_vendor.t(c_price(datas.value.total, 0)),
t: common_vendor.t(c_price(datas.value.total, 1))
z: common_vendor.t(c_price(datas.value.total, 0)),
A: common_vendor.t(c_price(datas.value.total, 1))
} : {}, {
v: common_vendor.t(datas.value.number),
w: common_vendor.p({
B: common_vendor.t(datas.value.number),
C: common_vendor.p({
content: datas.value.number
}),
x: common_vendor.t(datas.value.pay_type == 3 ? "余额支付" : "微信支付"),
y: common_vendor.t(datas.value.create_time),
z: datas.value.paid
D: common_vendor.t(datas.value.pay_type == 3 ? "余额支付" : "微信支付"),
E: common_vendor.t(datas.value.create_time),
F: datas.value.paid
}, datas.value.paid ? {} : {}), {
A: datas.value.number
G: datas.value.number
}, datas.value.number ? common_vendor.e({
B: !datas.value.paid
H: !datas.value.paid
}, !datas.value.paid ? {
C: common_vendor.o(($event) => showCancel.value = true),
D: common_vendor.t(datas.value.total),
E: common_vendor.o(rePay),
F: common_vendor.p({
I: common_vendor.o(($event) => showCancel.value = true),
J: common_vendor.t(datas.value.total),
K: common_vendor.o(rePay),
L: common_vendor.p({
color: "#20B128",
shape: "circle"
})
} : common_vendor.e({
G: datas.value.status == 0 || datas.value.status == 1
M: datas.value.status == 0 || datas.value.status == 1
}, datas.value.status == 0 || datas.value.status == 1 ? {
H: common_vendor.o(() => {
N: common_vendor.o(() => {
}),
I: common_vendor.p({
O: common_vendor.p({
color: "#20B128",
shape: "circle"
})
} : {
J: common_vendor.o(() => {
P: common_vendor.o(() => {
}),
K: common_vendor.p({
Q: common_vendor.p({
color: "#20B128",
shape: "circle"
})
})) : {}, {
L: common_vendor.f(common_vendor.unref(dict_cancelDict.list), (item, index, i0) => {
return common_vendor.e({
a: common_vendor.t(item.name),
b: cancelType.value == item.value
}, cancelType.value == item.value ? {
c: common_assets._imports_0
} : {
d: common_assets._imports_1
}, {
e: item.value,
f: common_vendor.o(($event) => cancelType.value = item.value, item.value)
});
}),
M: common_vendor.o(submitCancel),
N: common_vendor.p({
color: "#20B128",
shape: "circle"
}),
O: common_vendor.o(($event) => showCancel.value = false),
P: common_vendor.p({
show: showCancel.value,
closeable: true,
round: "10"
}),
Q: common_vendor.o(($event) => showAddress.value = false),
R: common_vendor.o(changeAddress),
S: common_vendor.p({
show: showAddress.value
}),
R: common_vendor.o(($event) => showCancel.value = false),
S: common_vendor.o(submitCancel),
T: common_vendor.p({
show: showCancel.value
}),
U: addressList.value.length > 0
}, addressList.value.length > 0 ? {
V: common_vendor.o(($event) => showAddress.value = false),
W: common_vendor.o(changeAddress),
X: common_vendor.p({
show: showAddress.value,
list: addressList.value
})
} : {}, {
Y: common_vendor.p({
show: false,
content: "您还没有添加收货地址,请点击添加"
})

View File

@ -6,8 +6,8 @@
"up-button": "../../uni_modules/uview-plus/components/u-button/u-button",
"up-image": "../../uni_modules/uview-plus/components/u-image/u-image",
"up-copy": "../../uni_modules/uview-plus/components/u-copy/u-copy",
"up-popup": "../../uni_modules/uview-plus/components/u-popup/u-popup",
"address-popup": "../../components/addressPopup",
"order-cancle-popup": "../../components/orderCanclePopup",
"modal": "../../components/modal"
}
}

View File

@ -1 +1 @@
<view class=""><view class="m-card m-address" style="margin-top:20rpx"><view class="address-info"><view class="top"><up-icon wx:if="{{a}}" u-i="666b5ad0-0" bind:__l="__l" u-p="{{a}}"></up-icon><view class="t-name">小王</view><view>155****9999</view></view><view class="bottom u-line-2"> 四川泸州市龙马潭区莲花池街道商业街1号 </view></view><view wx:if="{{b}}" class="address-btn"><view style="width:80px"><up-button wx:if="{{d}}" u-s="{{['d']}}" bindclick="{{c}}" u-i="666b5ad0-1" bind:__l="__l" u-p="{{d}}">修改</up-button></view></view></view><view wx:for="{{e}}" wx:for-item="item" class="m-card m-good"><view class="image"><up-image wx:if="{{item.b}}" u-i="{{item.a}}" bind:__l="__l" u-p="{{item.b}}"></up-image></view><view class="body-content"><view><view class="title"><view>{{item.c}}</view><view>¥{{item.d}}</view></view><view class="tips"><view>{{item.e}}</view><view>x{{item.f}}</view></view></view><view class="time">{{item.g}}</view></view></view><view wx:if="{{f}}" class="m-card good-info"><view wx:if="{{g}}" class="row"><view>商品总价 <text>共计{{h}}款商品</text></view><view><text>¥</text>{{i}}<text>.{{j}}</text></view></view><view class="row"><view>运费</view><view><text>¥</text>0<text>.00</text></view></view><view class="row-need"><view style="margin-right:10rpx">需付款</view><view><text>¥</text>{{k}}<text>.{{l}}</text></view></view></view><view class="m-card good-info"><view class="head-title">订单信息</view><block wx:if="{{m}}"><view class="row"><view>订单编号</view><up-copy wx:if="{{o}}" u-s="{{['d']}}" u-i="666b5ad0-3" bind:__l="__l" u-p="{{o}}"><text>{{n}} | 复制</text></up-copy></view><view class="row"><view>下单时间</view><view>{{p}}</view></view><view class="row" style="margin-bottom:0"><view>支付状态</view><view wx:if="{{q}}">已支付</view><view wx:else class="red">待支付</view></view></block><block wx:else><view wx:if="{{r}}" class="row"><view>实付款</view><view><text>¥</text>{{s}}<text>.{{t}}</text></view></view><view class="row"><view>订单编号</view><up-copy wx:if="{{w}}" u-s="{{['d']}}" u-i="666b5ad0-4" bind:__l="__l" u-p="{{w}}"><text>{{v}} | 复制</text></up-copy></view><view class="row"><view>支付方式</view><view>{{x}}</view></view><view class="row"><view>下单时间</view><view>{{y}}</view></view><view class="row" style="margin-bottom:0"><view>支付状态</view><view wx:if="{{z}}">已支付</view><view wx:else class="red">待支付</view></view></block></view><view style="width:100%;height:200rpx"></view><view wx:if="{{A}}" class="fiexd-btn-box"><block wx:if="{{B}}"><view style="color:#777777" bindtap="{{C}}">取消订单</view><view style="width:450rpx"><up-button wx:if="{{F}}" u-s="{{['d']}}" bindclick="{{E}}" u-i="666b5ad0-5" bind:__l="__l" u-p="{{F}}">立即支付 ¥{{D}}</up-button></view></block><block wx:else><view></view><view style="width:450rpx"><up-button wx:if="{{G}}" u-s="{{['d']}}" bindclick="{{H}}" u-i="666b5ad0-6" bind:__l="__l" u-p="{{I}}">确认收货</up-button><up-button wx:else u-s="{{['d']}}" bindclick="{{J}}" u-i="666b5ad0-7" bind:__l="__l" u-p="{{K||''}}">再次购买</up-button></view></block></view><up-popup wx:if="{{P}}" u-s="{{['d']}}" bindclose="{{O}}" u-i="666b5ad0-8" bind:__l="__l" u-p="{{P}}"><view class="cancel-popup"><view class="head-title">订单取消</view><view wx:for="{{L}}" wx:for-item="item" wx:key="e" class="row" bindtap="{{item.f}}"><view>{{item.a}}</view><image wx:if="{{item.b}}" src="{{item.c}}"></image><image wx:else src="{{item.d}}"></image></view><up-button wx:if="{{N}}" u-s="{{['d']}}" bindclick="{{M}}" u-i="666b5ad0-9,666b5ad0-8" bind:__l="__l" u-p="{{N}}">提交</up-button></view></up-popup><address-popup wx:if="{{S}}" bindclose="{{Q}}" bindchange="{{R}}" u-i="666b5ad0-10" bind:__l="__l" u-p="{{S}}"></address-popup><modal wx:if="{{T}}" u-i="666b5ad0-11" bind:__l="__l" u-p="{{T}}"></modal></view>
<view class=""><view wx:if="{{a}}" class="count_down"> 还剩<text>{{b}}</text>订单自动取消 </view><view class="m-card m-address" style="margin-top:20rpx"><view class="address-info"><view class="top"><up-icon wx:if="{{c}}" u-i="666b5ad0-0" bind:__l="__l" u-p="{{c}}"></up-icon><view class="t-name">{{d}}</view><view>{{e}}</view></view><view class="bottom u-line-2">{{f}}</view></view><view wx:if="{{g}}" class="address-btn"><view style="width:80px"><up-button wx:if="{{i}}" u-s="{{['d']}}" bindclick="{{h}}" u-i="666b5ad0-1" bind:__l="__l" u-p="{{i}}">修改</up-button></view></view></view><view wx:for="{{j}}" wx:for-item="item" wx:key="h" class="m-card m-good"><view class="image"><up-image wx:if="{{item.b}}" u-i="{{item.a}}" bind:__l="__l" u-p="{{item.b}}"></up-image></view><view class="body-content"><view><view class="title"><view>{{item.c}}</view><view>¥{{item.d}}</view></view><view class="tips"><view>{{item.e}}</view><view>x{{item.f}}</view></view></view><view class="time">{{item.g}}</view></view></view><view wx:if="{{k}}" class="m-card good-info"><view wx:if="{{l}}" class="row"><view>商品总价 <text>共计{{m}}款商品</text></view><view><text>¥</text>{{n}}<text>.{{o}}</text></view></view><view class="row"><view>运费</view><view><text>¥</text>0<text>.00</text></view></view><view class="row-need"><view style="margin-right:10rpx">需付款</view><view wx:if="{{p}}"><text>¥</text>{{q}}<text>.{{r}}</text></view></view></view><view class="m-card good-info"><view class="head-title">订单信息</view><block wx:if="{{s}}"><view class="row"><view>订单编号</view><up-copy wx:if="{{v}}" u-s="{{['d']}}" u-i="666b5ad0-3" bind:__l="__l" u-p="{{v}}"><text>{{t}} | 复制</text></up-copy></view><view class="row"><view>下单时间</view><view>{{w}}</view></view><view class="row" style="margin-bottom:0"><view>支付状态</view><view wx:if="{{x}}">已支付</view><view wx:else class="red">待支付</view></view></block><block wx:else><view wx:if="{{y}}" class="row"><view>实付款</view><view><text>¥</text>{{z}}<text>.{{A}}</text></view></view><view class="row"><view>订单编号</view><up-copy wx:if="{{C}}" u-s="{{['d']}}" u-i="666b5ad0-4" bind:__l="__l" u-p="{{C}}"><text>{{B}} | 复制</text></up-copy></view><view class="row"><view>支付方式</view><view>{{D}}</view></view><view class="row"><view>下单时间</view><view>{{E}}</view></view><view class="row" style="margin-bottom:0"><view>支付状态</view><view wx:if="{{F}}">已支付</view><view wx:else class="red">待支付</view></view></block></view><view style="width:100%;height:200rpx"></view><view wx:if="{{G}}" class="fiexd-btn-box"><block wx:if="{{H}}"><view style="color:#777777" bindtap="{{I}}">取消订单</view><view style="width:450rpx"><up-button wx:if="{{L}}" u-s="{{['d']}}" bindclick="{{K}}" u-i="666b5ad0-5" bind:__l="__l" u-p="{{L}}">立即支付 ¥{{J}}</up-button></view></block><block wx:else><view></view><view style="width:450rpx"><up-button wx:if="{{M}}" u-s="{{['d']}}" bindclick="{{N}}" u-i="666b5ad0-6" bind:__l="__l" u-p="{{O}}">确认收货</up-button><up-button wx:else u-s="{{['d']}}" bindclick="{{P}}" u-i="666b5ad0-7" bind:__l="__l" u-p="{{Q||''}}">再次购买</up-button></view></block></view><order-cancle-popup wx:if="{{T}}" bindclose="{{R}}" bindchange="{{S}}" u-i="666b5ad0-8" bind:__l="__l" u-p="{{T}}"/><address-popup wx:if="{{U}}" bindclose="{{V}}" bindchange="{{W}}" u-i="666b5ad0-9" bind:__l="__l" u-p="{{X}}"/><modal wx:if="{{Y}}" u-i="666b5ad0-10" bind:__l="__l" u-p="{{Y}}"></modal></view>

View File

@ -122,21 +122,4 @@
}
.good-info text {
font-size: 22rpx;
}
.cancel-popup {
padding: 30rpx;
}
.cancel-popup .head-title {
font-weight: bold;
text-align: center;
margin-bottom: 20rpx;
}
.cancel-popup .row {
display: flex;
justify-content: space-between;
padding-bottom: 20rpx;
}
.cancel-popup .row image {
width: 40rpx;
height: 40rpx;
}

View File

@ -23,13 +23,18 @@ const _sfc_main = {
}
}
},
setup(__props) {
emits: ["cancleOrder"],
setup(__props, { emit: __emit }) {
const props = __props;
const navTo = () => {
common_vendor.index.navigateTo({
url: `/pagesOrder/detail/detail?type=${props.datas.paid}&id=${props.datas.id}`
});
};
const emit = __emit;
const cancleOrder = () => {
emit("cancleOrder", props.datas);
};
return (_ctx, _cache) => {
return common_vendor.e({
a: common_vendor.t(__props.datas.number),
@ -57,44 +62,45 @@ const _sfc_main = {
k: common_vendor.o(navTo),
l: __props.datas.paid == 0
}, __props.datas.paid == 0 ? {
m: common_vendor.p({
m: common_vendor.o(cancleOrder),
n: common_vendor.p({
size: "small",
plain: true,
color: "#989898",
shape: "circle"
}),
n: common_vendor.p({
o: common_vendor.p({
size: "small",
plain: true,
color: "#20B128",
shape: "circle"
})
} : common_vendor.e({
o: __props.datas.status == 1
p: __props.datas.status == 1
}, __props.datas.status == 1 ? {
p: common_vendor.p({
q: common_vendor.p({
size: "small",
plain: true,
color: "#20B128",
shape: "circle"
})
} : {}, {
q: __props.datas.status == 2 || __props.datas.status == 3
r: __props.datas.status == 2 || __props.datas.status == 3
}, __props.datas.status == 2 || __props.datas.status == 3 ? {
r: common_vendor.p({
size: "small",
plain: true,
color: "#20B128",
shape: "circle"
})
} : {}, {
s: common_vendor.p({
size: "small",
plain: true,
color: "#20B128",
shape: "circle"
})
} : {}, {
t: common_vendor.p({
size: "small",
plain: true,
color: "#20B128",
shape: "circle"
}),
t: common_vendor.o(navTo)
v: common_vendor.o(navTo)
}));
};
}

View File

@ -1 +1 @@
<view class="shop-item"><view class="item-title" bindtap="{{f}}"><view>{{a}}</view><view wx:if="{{b}}"><text>待付款</text></view><view wx:else><text wx:if="{{c}}">待发货</text><text wx:if="{{d}}">待收货</text><text wx:if="{{e}}">已完成</text></view></view><view class="item-body" bindtap="{{k}}"><view class="body-content"><view style="display:flex;flex:1;flex-shrink:0"><view wx:for="{{g}}" wx:for-item="item" wx:key="b"><image class="image" src="{{item.a}}"></image></view></view><view style="display:flex;flex-direction:column;align-items:center;justify-content:center;width:100rpx"><up-icon wx:if="{{h}}" u-i="e1c5d592-0" bind:__l="__l" u-p="{{h}}"></up-icon></view></view><view class="all">共 {{i}} 件商品, 总金额 <text>¥{{j}}</text></view></view><view wx:if="{{l}}" class="item-btn"><view style="width:80px"><up-button wx:if="{{m}}" u-s="{{['d']}}" u-i="e1c5d592-1" bind:__l="__l" u-p="{{m}}">取消订单</up-button></view><view style="width:80px"><up-button wx:if="{{n}}" u-s="{{['d']}}" u-i="e1c5d592-2" bind:__l="__l" u-p="{{n}}">立即支付</up-button></view></view><view wx:else class="item-btn"><view wx:if="{{o}}" style="width:80px"><up-button wx:if="{{p}}" u-s="{{['d']}}" u-i="e1c5d592-3" bind:__l="__l" u-p="{{p}}">确认收货</up-button></view><view wx:if="{{q}}" style="width:80px"><up-button wx:if="{{r}}" u-s="{{['d']}}" u-i="e1c5d592-4" bind:__l="__l" u-p="{{r}}">再次购买</up-button></view><view bindtap="{{t}}" style="width:80px"><up-button wx:if="{{s}}" u-s="{{['d']}}" u-i="e1c5d592-5" bind:__l="__l" u-p="{{s}}">查看详情</up-button></view></view></view>
<view class="shop-item"><view class="item-title" bindtap="{{f}}"><view>{{a}}</view><view wx:if="{{b}}"><text>待付款</text></view><view wx:else><text wx:if="{{c}}">待发货</text><text wx:if="{{d}}">待收货</text><text wx:if="{{e}}">已完成</text></view></view><view class="item-body" bindtap="{{k}}"><view class="body-content"><view style="display:flex;flex:1;flex-shrink:0"><view wx:for="{{g}}" wx:for-item="item" wx:key="b"><image class="image" src="{{item.a}}"></image></view></view><view style="display:flex;flex-direction:column;align-items:center;justify-content:center;width:100rpx"><up-icon wx:if="{{h}}" u-i="e1c5d592-0" bind:__l="__l" u-p="{{h}}"></up-icon></view></view><view class="all">共 {{i}} 件商品, 总金额 <text>¥{{j}}</text></view></view><view wx:if="{{l}}" class="item-btn"><view style="width:80px"><up-button wx:if="{{n}}" u-s="{{['d']}}" bindclick="{{m}}" u-i="e1c5d592-1" bind:__l="__l" u-p="{{n}}">取消订单</up-button></view><view style="width:80px"><up-button wx:if="{{o}}" u-s="{{['d']}}" u-i="e1c5d592-2" bind:__l="__l" u-p="{{o}}">立即支付</up-button></view></view><view wx:else class="item-btn"><view wx:if="{{p}}" style="width:80px"><up-button wx:if="{{q}}" u-s="{{['d']}}" u-i="e1c5d592-3" bind:__l="__l" u-p="{{q}}">确认收货</up-button></view><view wx:if="{{r}}" style="width:80px"><up-button wx:if="{{s}}" u-s="{{['d']}}" u-i="e1c5d592-4" bind:__l="__l" u-p="{{s}}">再次购买</up-button></view><view bindtap="{{v}}" style="width:80px"><up-button wx:if="{{t}}" u-s="{{['d']}}" u-i="e1c5d592-5" bind:__l="__l" u-p="{{t}}">查看详情</up-button></view></view></view>

View File

@ -16,9 +16,10 @@ const _easycom_up_tabs = () => "../../uni_modules/uview-plus/components/u-tabs/u
const _easycom_up_sticky = () => "../../uni_modules/uview-plus/components/u-sticky/u-sticky.js";
const _easycom_up_empty = () => "../../uni_modules/uview-plus/components/u-empty/u-empty.js";
if (!Math) {
(_easycom_up_search + _easycom_up_tabs + _easycom_up_sticky + good + _easycom_up_empty)();
(_easycom_up_search + _easycom_up_tabs + _easycom_up_sticky + good + _easycom_up_empty + orderCanclePopup)();
}
const good = () => "./component/good.js";
const orderCanclePopup = () => "../../components/orderCanclePopup.js";
const _sfc_main = {
__name: "order",
setup(__props) {
@ -39,9 +40,23 @@ const _sfc_main = {
swiperCurrent.value = current;
tabsActive.value = current;
};
const showCancel = common_vendor.ref(false);
const submitCancel = (e) => {
showCancel.value = false;
console.log(e);
common_vendor.index.showToast({
title: "取消成功",
icon: "none"
});
};
const cancleOrder = (e) => {
console.log(e);
showCancel.value = true;
};
const where = common_vendor.ref({
page_no: 1,
page_size: 25
page_size: 25,
keyword: ""
});
const orderList = common_vendor.ref([
[],
@ -58,6 +73,17 @@ const _sfc_main = {
orderList.value[type] = res.data.lists;
});
};
const searchOn = () => {
orderList.value[+swiperCurrent.value] = [];
if (swiperCurrent.value == 0)
getOrderList(0);
if (swiperCurrent.value == 1)
getOrderList(1, "", 0);
if (swiperCurrent.value == 2)
getOrderList(2, 0);
if (swiperCurrent.value == 3)
getOrderList(3, 1);
};
common_vendor.onLoad((options) => {
if (options.type) {
tabsActive.value = +options.type;
@ -70,14 +96,19 @@ const _sfc_main = {
});
return (_ctx, _cache) => {
return {
a: common_vendor.p({
a: common_vendor.o(searchOn),
b: common_vendor.o(searchOn),
c: common_vendor.o(searchOn),
d: common_vendor.o(($event) => where.value.keyword = $event),
e: common_vendor.p({
shape: "round",
actionStyle: {
color: "#20b128"
}
},
modelValue: where.value.keyword
}),
b: common_vendor.o(changeTab),
c: common_vendor.p({
f: common_vendor.o(changeTab),
g: common_vendor.p({
current: tabsActive.value,
list: tablist.value,
lineColor: "#20b128",
@ -87,18 +118,19 @@ const _sfc_main = {
fontWeight: "bold"
}
}),
d: common_vendor.p({
h: common_vendor.p({
bgColor: "#fff"
}),
e: common_vendor.f(orderList.value, (list, k, i0) => {
i: common_vendor.f(orderList.value, (list, k, i0) => {
return common_vendor.e({
a: list.length > 0
}, list.length > 0 ? {
b: common_vendor.f(list, (item, index, i1) => {
return {
a: index,
b: "aea1ad54-3-" + i0 + "-" + i1,
c: common_vendor.p({
b: common_vendor.o(cancleOrder, index),
c: "aea1ad54-3-" + i0 + "-" + i1,
d: common_vendor.p({
datas: item,
type: k
})
@ -114,8 +146,13 @@ const _sfc_main = {
e: k
});
}),
f: swiperCurrent.value,
g: common_vendor.o(animationfinish)
j: swiperCurrent.value,
k: common_vendor.o(animationfinish),
l: common_vendor.o(($event) => showCancel.value = false),
m: common_vendor.o(submitCancel),
n: common_vendor.p({
show: showCancel.value
})
};
};
}

View File

@ -6,6 +6,7 @@
"up-tabs": "../../uni_modules/uview-plus/components/u-tabs/u-tabs",
"up-sticky": "../../uni_modules/uview-plus/components/u-sticky/u-sticky",
"up-empty": "../../uni_modules/uview-plus/components/u-empty/u-empty",
"good": "./component/good"
"good": "./component/good",
"order-cancle-popup": "../../components/orderCanclePopup"
}
}

View File

@ -1 +1 @@
<view><up-sticky wx:if="{{d}}" u-s="{{['d']}}" u-i="aea1ad54-0" bind:__l="__l" u-p="{{d}}"><view style="padding:10rpx 20rpx 0 20rpx"><up-search wx:if="{{a}}" u-i="aea1ad54-1,aea1ad54-0" bind:__l="__l" u-p="{{a}}"></up-search></view><up-tabs wx:if="{{c}}" bindchange="{{b}}" u-i="aea1ad54-2,aea1ad54-0" bind:__l="__l" u-p="{{c}}"></up-tabs></up-sticky><swiper class="swiper-box" current="{{f}}" bindanimationfinish="{{g}}"><swiper-item wx:for="{{e}}" wx:for-item="list" wx:key="e" class="swiper-item"><scroll-view scroll-y style="height:100%;width:100%"><view class="page-box"><view wx:if="{{list.a}}" class="list"><good wx:for="{{list.b}}" wx:for-item="item" wx:key="a" u-i="{{item.b}}" bind:__l="__l" u-p="{{item.c}}"></good></view><view wx:else style="padding-top:100rpx"><up-empty wx:if="{{list.d}}" u-i="{{list.c}}" bind:__l="__l" u-p="{{list.d}}"></up-empty></view><view style="width:100%;height:200rpx"></view></view></scroll-view></swiper-item></swiper></view>
<view><up-sticky wx:if="{{h}}" u-s="{{['d']}}" u-i="aea1ad54-0" bind:__l="__l" u-p="{{h}}"><view style="padding:10rpx 20rpx 0 20rpx"><up-search wx:if="{{e}}" bindcustom="{{a}}" bindsearch="{{b}}" bindclear="{{c}}" u-i="aea1ad54-1,aea1ad54-0" bind:__l="__l" bindupdateModelValue="{{d}}" u-p="{{e}}"></up-search></view><up-tabs wx:if="{{g}}" bindchange="{{f}}" u-i="aea1ad54-2,aea1ad54-0" bind:__l="__l" u-p="{{g}}"></up-tabs></up-sticky><swiper class="swiper-box" current="{{j}}" bindanimationfinish="{{k}}"><swiper-item wx:for="{{i}}" wx:for-item="list" wx:key="e" class="swiper-item"><scroll-view scroll-y style="height:100%;width:100%"><view class="page-box"><view wx:if="{{list.a}}" class="list"><good wx:for="{{list.b}}" wx:for-item="item" wx:key="a" bindcancleOrder="{{item.b}}" u-i="{{item.c}}" bind:__l="__l" u-p="{{item.d}}"></good></view><view wx:else style="padding-top:100rpx"><up-empty wx:if="{{list.d}}" u-i="{{list.c}}" bind:__l="__l" u-p="{{list.d}}"></up-empty></view><view style="width:100%;height:200rpx"></view></view></scroll-view></swiper-item></swiper><order-cancle-popup wx:if="{{n}}" bindclose="{{l}}" bindchange="{{m}}" u-i="aea1ad54-5" bind:__l="__l" u-p="{{n}}"/></view>

View File

@ -9,8 +9,8 @@
"list": [
{
"name": "",
"pathName": "pages/login/login",
"query": "",
"pathName": "pagesOrder/detail/detail",
"query": "type=0&id=106",
"launchMode": "default",
"scene": null
}