前端代码库 #6

Merged
pfqxe4nai merged 1 commits from xiaofan_branch into master 2 years ago

@ -23,7 +23,7 @@
"navigationBarTitleText": "Mini-12306"
}
},{
"path": "pages/index/search-header",
"path": "pages/index/search-results",
"style": {
"navigationBarTitleText": "Mini-12306"
}

@ -14,13 +14,13 @@
<button class="search-btn" @click="searchTickets"></button>
</view>
<view class="bottom-nav">
<view class="nav-item" @click="goToPage('/pages/index')">
<view class="nav-item" @click="goToHome">
<text class="icon">首页</text>
</view>
<view class="nav-item" @click="goToPage('/pages/orders')">
<view class="nav-item" @click="goToOrders">
<text class="icon">订单</text>
</view>
<view class="nav-item" @click="goToPage('/pages/profile')">
<view class="nav-item" @click="goToMy">
<text class="icon">个人中心</text>
</view>
</view>
@ -86,6 +86,9 @@ export default {
//
console.log('出发地:', this.departure);
console.log('目的地:', this.destination);
uni.navigateTo({
url: '/pages/index/search-results'
});
//
// ticketList
},

@ -47,7 +47,7 @@ export default {
// POSTformDataJSON
uni.request({
url: 'http://192.168.255.1:8000/login/', //
url: 'http://192.168.251.7:8000/login_view/', //
method: 'POST',
data: JSON.stringify(formData), // formDataJSON
header: {
@ -138,11 +138,13 @@ export default {
}
.input {
width: 100%;
background-color: #ffffff;
opacity: 0.65;
width: 95%;
height: 40px;
padding: 0 10px;
border: 1px solid #ccc;
border-radius: 5px;
padding: 0 10px;
}
.login-btn {

@ -29,6 +29,8 @@
<!-- 其他支付信息如优惠券支付方式等 -->
</view>
<button class="pay-btn" @click="payOrder"></button>
<button class="pay-btn" @click="refund">退</button>
<button class="pay-btn" @click="refund"></button>
</view>
</template>
@ -46,9 +48,21 @@ export default {
methods: {
payOrder() {
//
console.log('支付订单:', this.orderNumber);
uni.navigateTo({
url: '/pages/index/Payment'
});
//
}
},
change(){
uni.navigateTo({
url: '/pages/index/Change'
});
},
refund(){
uni.navigateTo({
url: '/pages/index/refund'
});
}
}
};
</script>

@ -32,7 +32,7 @@ export default {
confirmPayment() {
if (!this.selectedMethod) {
uni.showToast({
title: '请选择支付方式',
title: '支付成功',
icon: 'none'
});
return;

@ -4,6 +4,7 @@
<view class="register-header">
<text class="title">Mini-12306用户注册</text>
</view>
<form method="post" action="{% url 'save_passenger' %}">
<view class="input-group">
<input v-model="name" type="text" placeholder="请输入姓名" />
</view>
@ -25,6 +26,7 @@
<view class="register-btn">
<button @click="register"></button>
</view>
</form>
</view>
</div>
</template>
@ -85,8 +87,34 @@ export default {
icon: 'none'
});
return;
}
}
//
if (this.idCard.length != 18) {
uni.showToast({
title: '身份证号码应为18位',
icon: 'none'
});
return;
}
//
if (this.PhoneNo.length != 11) {
uni.showToast({
title: '手机号码应为11位',
icon: 'none'
});
return;
}
//
if (this.Bankcard.length < 16 || this.Bankcard.length > 19) {
uni.showToast({
title: '银行卡号应为16-1911位',
icon: 'none'
});
return;
}
const formData = {
name: this.name,
idCard: this.idCard,
@ -97,7 +125,8 @@ export default {
// POSTformDataJSON
uni.request({
url: 'http://192.168.255.1:8000/validate_idcard/', //
// url: 'http://192.168.251.7:8000/register_view/', //
url: 'http://192.168.251.7:8000/save_passenger/',
method: 'POST',
data: JSON.stringify(formData), // formDataJSON
header: {
@ -159,6 +188,7 @@ export default {
.input-group input {
background-color: #ffffff;
opacity: 0.65;
width: 95%;
height: 40px;
padding: 0 10px;
@ -184,7 +214,7 @@ export default {
line-height: 40px;
border: none;
border-radius: 5px;
background-color: transparent;
background-color: #007aff;
color: #000000;
outline: none;
}

@ -26,6 +26,8 @@ export default {
{ name: '广州' },
{ name: '深圳' },
{ name: '杭州' },
{ name: '长沙' },
{ name: '武汉' },
// ...
]
};

@ -0,0 +1,94 @@
<template>
<view class="ticket-search-result">
<view class="header">车票查询结果</view>
<view class="ticket-list">
<!-- 在这里循环渲染车票列表 -->
<view v-for="ticket in ticketList" :key="ticket.id" class="ticket" @click="buyTicket(ticket)">
<view class="ticket-header">
<text>{{ ticket.departure }} - {{ ticket.destination }}</text>
<text>{{ ticket.departureTime }} - {{ ticket.arrivalTime }}</text>
</view>
<view class="ticket-body">
<view class="ticket-info">
<text>车次</text>
<text>{{ ticket.trainNumber }}</text>
</view>
<view class="ticket-info">
<text>座位类型</text>
<text>{{ ticket.seatType }}</text>
</view>
<view class="ticket-info">
<text>剩余票数</text>
<text>{{ ticket.remainingTickets }}</text>
</view>
<view class="ticket-info">
<text>价格</text>
<text>{{ ticket.price }}</text>
</view>
</view>
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
ticketList: [
{ id: 1, departure: '北京', destination: '上海', departureTime: '08:00', arrivalTime: '14:00', trainNumber: 'G101', seatType: '二等座', remainingTickets: 20, price: '200元' },
{ id: 2, departure: '北京', destination: '广州', departureTime: '09:00', arrivalTime: '18:00', trainNumber: 'G102', seatType: '一等座', remainingTickets: 10, price: '300元' },
{ id: 3, departure: '北京', destination: '深圳', departureTime: '10:00', arrivalTime: '20:00', trainNumber: 'G103', seatType: '商务座', remainingTickets: 5, price: '400元' }
]
};
},
method:{
buyTikect(ticket){
uni.navigateTo({
url: '/pages/index/Buy-ticket'
});
}
}
};
</script>
<style>
.ticket-search-result {
padding: 20px;
}
.header {
font-size: 24px;
text-align: center;
margin-bottom: 20px;
}
.ticket {
margin-bottom: 10px;
border: 1px solid #ccc;
padding: 10px;
}
.ticket-header {
display: flex;
justify-content: space-between;
margin-bottom: 10px;
}
.ticket-header text {
font-size: 18px;
}
.ticket-body {
display: flex;
justify-content: space-between;
}
.ticket-info {
display: flex;
flex-direction: column;
}
.ticket-info text {
font-size: 16px;
margin-bottom: 5px;
}
</style>
Loading…
Cancel
Save