feat(order): add order detail and list pages with components for order management

- Implemented order detail page with components for displaying order status, user info, and refund options.
- Created order list page with pagination and order cards for displaying all orders.
- Added styles for order detail and list pages.
- Developed a prompt document outlining component requirements for the order management system.
- Introduced a new Card component for quick booking with a responsive design.
- Enhanced Tabs component for better navigation between different categories.
- Integrated z-paging for efficient data loading and management in order and quick booking lists.
- Added service order card component for displaying service requests with call functionality.
- Updated main CSS for improved viewport handling.
This commit is contained in:
duanshuwen
2026-05-26 15:38:33 +08:00
parent fa76435e38
commit ad93ca5e8e
194 changed files with 17069 additions and 2 deletions

View File

@@ -0,0 +1,208 @@
.good-container {
display: flex;
flex-direction: column;
}
.header {
display: flex;
justify-content: space-between;
align-items: center;
box-sizing: border-box;
padding: 12px;
border-bottom: 1px solid #ddd;
position: relative;
.header-title {
font-size: 18px;
font-weight: 600;
color: $uni-text-color;
flex: 1;
text-align: center;
}
.close-btn {
position: absolute;
right: 12px;
top: 50%;
transform: translateY(-50%);
width: 24px;
height: 24px;
display: flex;
align-items: center;
justify-content: center;
}
}
.good-content {
background: #fff;
box-sizing: border-box;
max-height: 60vh;
overflow: hidden;
.wrapper {
box-sizing: border-box;
padding: 12px;
}
.good-info-wrapper {
border-radius: 12px;
overflow: hidden;
}
.goods-info {
display: flex;
box-sizing: border-box;
background-color: #f5f5f5;
padding: 12px;
.goods-details {
flex: 1;
display: flex;
flex-direction: column;
justify-content: space-between;
.goods-title {
font-size: $uni-font-size-lg;
font-weight: 500;
color: $uni-text-color;
line-height: 22px;
margin-bottom: 8px;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.goods-price {
display: flex;
align-items: baseline;
margin-bottom: 12px;
.currency {
font-size: $uni-font-size-base;
color: #ff6b35;
font-weight: 500;
}
.price {
font-size: 20px;
color: #ff6b35;
font-weight: 600;
margin-left: 2px;
}
.price-desc {
font-size: $uni-font-size-base;
color: $uni-text-color-grey;
font-weight: 400;
margin-left: 12px;
}
}
.goods-service-list {
background-color: #f5f5f5;
border-radius: 6px;
padding: 12px;
box-sizing: border-box;
}
.service-title {
font-size: $uni-font-size-base;
font-weight: 500;
color: $uni-text-color;
}
.goods-service-item {
display: flex;
align-items: center;
justify-content: space-between;
margin-top: 8px;
.service-label,
.service-value {
font-size: $uni-font-size-base;
font-weight: 500;
}
.service-label {
color: $uni-text-color;
}
.service-value {
color: $uni-text-color-grey;
}
}
}
}
.quantity-section {
display: flex;
justify-content: space-between;
align-items: center;
box-sizing: border-box;
padding: 12px 0;
}
.user-form-list {
margin-bottom: 12px;
display: flex;
flex-direction: row;
white-space: nowrap;
}
}
.footer {
margin-top: 12px;
display: flex;
align-items: center;
box-sizing: border-box;
padding-left: 12px;
padding-right: 12px;
padding-bottom: 24px;
.left {
display: flex;
align-items: baseline;
}
.total-count {
font-size: $uni-font-size-sm;
color: $uni-text-color;
}
.total-price {
display: flex;
align-items: baseline;
font-size: 24px;
color: #f55726;
&::before {
content: "¥";
font-size: $uni-font-size-sm;
}
}
.confirm-btn {
width: 160px;
height: 48px;
background: linear-gradient(179deg, $theme-color-500 0%, $theme-color-700 100%);
color: #fff;
border: none;
border-radius: 24px;
font-size: $uni-font-size-lg;
font-weight: 600;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.2s;
margin-left: auto;
&:active {
transform: translateY(1px);
}
&::after {
border: none;
}
}
}