| | |
| | | margin-bottom: 20upx; |
| | | } |
| | | }
|
| | | } |
| | | }
|
| | | /**
|
| | | * 公共样式 - 基于 agv_start.vue 抽离
|
| | | * 适用于:agv_start.vue, orderPakin2.vue, orderDetlList.vue 等页面
|
| | | */
|
| | |
|
| | | /* ==================== 页面基础样式 ==================== */
|
| | | page {
|
| | | height: 100%;
|
| | | background: #f5f7fa;
|
| | | }
|
| | |
|
| | | .page-container {
|
| | | min-height: 100vh;
|
| | | background: linear-gradient(135deg, #f5f7fa 0%, #e4e8eb 100%);
|
| | | padding-bottom: 110rpx;
|
| | | box-sizing: border-box;
|
| | | }
|
| | |
|
| | | /* ==================== 表单区域样式 ==================== */
|
| | | .form-section {
|
| | | background: #ffffff;
|
| | | padding: 12rpx 20rpx;
|
| | | box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.06);
|
| | | }
|
| | |
|
| | | .form-item {
|
| | | display: flex;
|
| | | align-items: center;
|
| | | padding: 12rpx 0;
|
| | | border-bottom: 1rpx solid #f0f0f0;
|
| | | }
|
| | |
|
| | | .form-item:last-child {
|
| | | border-bottom: none;
|
| | | }
|
| | |
|
| | | .form-label {
|
| | | display: flex;
|
| | | align-items: center;
|
| | | flex-shrink: 0;
|
| | | white-space: nowrap;
|
| | | margin-right: 16rpx;
|
| | | }
|
| | |
|
| | | .label-text {
|
| | | font-size: 26rpx;
|
| | | color: #303133;
|
| | | margin-left: 6rpx;
|
| | | }
|
| | |
|
| | | .form-input-wrap {
|
| | | flex: 1;
|
| | | display: flex;
|
| | | align-items: center;
|
| | | background: #f5f7fa;
|
| | | border-radius: 6rpx;
|
| | | padding: 0 16rpx;
|
| | | height: 60rpx;
|
| | | }
|
| | |
|
| | | .form-input {
|
| | | flex: 1;
|
| | | height: 60rpx;
|
| | | font-size: 26rpx;
|
| | | color: #303133;
|
| | | }
|
| | |
|
| | | /* Picker 样式 */
|
| | | .picker-full {
|
| | | flex: 1;
|
| | | width: 100%;
|
| | | }
|
| | |
|
| | | .picker-value {
|
| | | flex: 1;
|
| | | display: flex;
|
| | | align-items: center;
|
| | | justify-content: space-between;
|
| | | height: 60rpx;
|
| | | font-size: 26rpx;
|
| | | color: #303133;
|
| | | }
|
| | |
|
| | | .picker-value text {
|
| | | flex: 1;
|
| | | }
|
| | |
|
| | | /* ==================== 列表头部样式 ==================== */
|
| | | .list-header {
|
| | | display: flex;
|
| | | justify-content: space-between;
|
| | | align-items: center;
|
| | | padding: 16rpx 20rpx;
|
| | | background: #ffffff;
|
| | | margin-top: 12rpx;
|
| | | box-shadow: 0 2rpx 8rpx rgba(0, 0, 0, 0.04);
|
| | | }
|
| | |
|
| | | .header-left {
|
| | | display: flex;
|
| | | align-items: center;
|
| | | }
|
| | |
|
| | | .header-title {
|
| | | font-size: 28rpx;
|
| | | color: #303133;
|
| | | font-weight: 600;
|
| | | }
|
| | |
|
| | | .count-badge {
|
| | | background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
| | | border-radius: 16rpx;
|
| | | padding: 2rpx 12rpx;
|
| | | margin-left: 12rpx;
|
| | | }
|
| | |
|
| | | .count-text {
|
| | | font-size: 20rpx;
|
| | | color: #ffffff;
|
| | | font-weight: 500;
|
| | | }
|
| | |
|
| | | /* ==================== 商品卡片样式 ==================== */
|
| | | .list-container {
|
| | | padding: 0 20rpx;
|
| | | }
|
| | |
|
| | | .mat-card {
|
| | | background: #ffffff;
|
| | | border-radius: 12rpx;
|
| | | margin-top: 12rpx;
|
| | | box-shadow: 0 2rpx 10rpx rgba(0, 0, 0, 0.05);
|
| | | overflow: hidden;
|
| | | }
|
| | |
|
| | | .card-top {
|
| | | display: flex;
|
| | | align-items: center;
|
| | | padding: 14rpx 16rpx;
|
| | | background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
| | | }
|
| | |
|
| | | .card-index {
|
| | | width: 36rpx;
|
| | | height: 36rpx;
|
| | | background: rgba(255, 255, 255, 0.25);
|
| | | border-radius: 50%;
|
| | | display: flex;
|
| | | align-items: center;
|
| | | justify-content: center;
|
| | | font-size: 22rpx;
|
| | | color: #ffffff;
|
| | | font-weight: 600;
|
| | | margin-right: 12rpx;
|
| | | }
|
| | |
|
| | | .mat-code-wrap {
|
| | | flex: 1;
|
| | | }
|
| | |
|
| | | .mat-code {
|
| | | font-size: 26rpx;
|
| | | color: #ffffff;
|
| | | font-weight: 600;
|
| | | }
|
| | |
|
| | | .qty-badge {
|
| | | background: rgba(255, 255, 255, 0.3);
|
| | | padding: 4rpx 14rpx;
|
| | | border-radius: 16rpx;
|
| | | }
|
| | |
|
| | | .qty-text {
|
| | | font-size: 24rpx;
|
| | | color: #ffffff;
|
| | | font-weight: 600;
|
| | | }
|
| | |
|
| | | /* ==================== 卡片内容样式 ==================== */
|
| | | .card-content {
|
| | | padding: 12rpx 16rpx;
|
| | | }
|
| | |
|
| | | .info-row {
|
| | | display: flex;
|
| | | margin-bottom: 8rpx;
|
| | | }
|
| | |
|
| | | .info-row:last-child {
|
| | | margin-bottom: 0;
|
| | | }
|
| | |
|
| | | .info-col {
|
| | | flex: 1;
|
| | | }
|
| | |
|
| | | .info-col.half {
|
| | | width: 50%;
|
| | | flex: none;
|
| | | }
|
| | |
|
| | | .info-label {
|
| | | font-size: 20rpx;
|
| | | color: #909399;
|
| | | display: block;
|
| | | }
|
| | |
|
| | | .info-value {
|
| | | font-size: 24rpx;
|
| | | color: #303133;
|
| | | display: block;
|
| | | margin-top: 2rpx;
|
| | | }
|
| | |
|
| | | .info-value.highlight {
|
| | | color: #667eea;
|
| | | font-weight: 500;
|
| | | }
|
| | |
|
| | | .info-value.qty {
|
| | | font-size: 28rpx;
|
| | | color: #303133;
|
| | | font-weight: 600;
|
| | | }
|
| | |
|
| | | /* ==================== 卡片操作按钮样式 ==================== */
|
| | | .card-actions {
|
| | | display: flex;
|
| | | border-top: 1rpx solid #f0f0f0;
|
| | | }
|
| | |
|
| | | .action-btn {
|
| | | flex: 1;
|
| | | display: flex;
|
| | | align-items: center;
|
| | | justify-content: center;
|
| | | padding: 14rpx 0;
|
| | | }
|
| | |
|
| | | .edit-btn {
|
| | | border-right: 1rpx solid #f0f0f0;
|
| | | }
|
| | |
|
| | | .action-text {
|
| | | font-size: 24rpx;
|
| | | color: #667eea;
|
| | | margin-left: 6rpx;
|
| | | }
|
| | |
|
| | | .delete-text {
|
| | | color: #f56c6c;
|
| | | }
|
| | |
|
| | | /* ==================== 空状态样式 ==================== */
|
| | | .empty-state {
|
| | | display: flex;
|
| | | flex-direction: column;
|
| | | align-items: center;
|
| | | justify-content: center;
|
| | | padding: 80rpx 0;
|
| | | }
|
| | |
|
| | | .empty-text {
|
| | | font-size: 26rpx;
|
| | | color: #909399;
|
| | | margin-top: 16rpx;
|
| | | }
|
| | |
|
| | | .empty-hint {
|
| | | font-size: 22rpx;
|
| | | color: #c0c4cc;
|
| | | margin-top: 8rpx;
|
| | | }
|
| | |
|
| | | .bottom-placeholder {
|
| | | height: 20rpx;
|
| | | }
|
| | |
|
| | | /* ==================== 底部操作栏样式 ==================== */
|
| | | .bottom-bar {
|
| | | position: fixed;
|
| | | bottom: 0;
|
| | | left: 0;
|
| | | right: 0;
|
| | | display: flex;
|
| | | padding: 16rpx 20rpx;
|
| | | background: #ffffff;
|
| | | box-shadow: 0 -2rpx 12rpx rgba(0, 0, 0, 0.06);
|
| | | }
|
| | |
|
| | | .btn-reset {
|
| | | display: flex;
|
| | | align-items: center;
|
| | | justify-content: center;
|
| | | width: 160rpx;
|
| | | height: 72rpx;
|
| | | background: #f5f7fa;
|
| | | border-radius: 36rpx;
|
| | | margin-right: 16rpx;
|
| | | }
|
| | |
|
| | | .btn-reset .btn-text {
|
| | | font-size: 26rpx;
|
| | | color: #909399;
|
| | | margin-left: 6rpx;
|
| | | }
|
| | |
|
| | | .btn-submit {
|
| | | flex: 1;
|
| | | display: flex;
|
| | | align-items: center;
|
| | | justify-content: center;
|
| | | height: 72rpx;
|
| | | background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
| | | border-radius: 36rpx;
|
| | | }
|
| | |
|
| | | .btn-submit .btn-text {
|
| | | font-size: 28rpx;
|
| | | color: #ffffff;
|
| | | font-weight: 500;
|
| | | margin-left: 6rpx;
|
| | | }
|
| | |
|
| | | .btn-disabled {
|
| | | background: #c0c4cc;
|
| | | opacity: 0.6;
|
| | | }
|
| | |
|
| | | /* ==================== 弹窗样式 ==================== */
|
| | | .popup-card {
|
| | | width: 600rpx;
|
| | | background: #ffffff;
|
| | | border-radius: 16rpx;
|
| | | overflow: hidden;
|
| | | }
|
| | |
|
| | | .popup-header {
|
| | | padding: 24rpx;
|
| | | text-align: center;
|
| | | border-bottom: 1rpx solid #f0f0f0;
|
| | | background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
| | | }
|
| | |
|
| | | .popup-title {
|
| | | font-size: 30rpx;
|
| | | color: #ffffff;
|
| | | font-weight: 600;
|
| | | }
|
| | |
|
| | | .popup-body {
|
| | | padding: 24rpx;
|
| | | }
|
| | |
|
| | | .popup-row {
|
| | | display: flex;
|
| | | align-items: center;
|
| | | margin-bottom: 20rpx;
|
| | | height: 70rpx;
|
| | | }
|
| | |
|
| | | .popup-row:last-child {
|
| | | margin-bottom: 0;
|
| | | }
|
| | |
|
| | | .popup-label {
|
| | | width: 80rpx;
|
| | | font-size: 26rpx;
|
| | | color: #606266;
|
| | | flex-shrink: 0;
|
| | | }
|
| | |
|
| | | .popup-value {
|
| | | flex: 1;
|
| | | height: 70rpx;
|
| | | background: #f5f7fa;
|
| | | border-radius: 8rpx;
|
| | | padding: 0 16rpx;
|
| | | font-size: 26rpx;
|
| | | color: #303133;
|
| | | display: flex;
|
| | | align-items: center;
|
| | | box-sizing: border-box;
|
| | | }
|
| | |
|
| | | .popup-value.disabled {
|
| | | color: #909399;
|
| | | background: #f0f0f0;
|
| | | }
|
| | |
|
| | | .popup-value.input {
|
| | | padding: 0 16rpx;
|
| | | }
|
| | |
|
| | | .popup-value.number {
|
| | | justify-content: center;
|
| | | background: transparent;
|
| | | padding: 0;
|
| | | }
|
| | |
|
| | | .popup-footer {
|
| | | display: flex;
|
| | | border-top: 1rpx solid #f0f0f0;
|
| | | }
|
| | |
|
| | | .popup-btn {
|
| | | flex: 1;
|
| | | height: 90rpx;
|
| | | display: flex;
|
| | | align-items: center;
|
| | | justify-content: center;
|
| | | font-size: 28rpx;
|
| | | }
|
| | |
|
| | | .popup-btn.cancel {
|
| | | color: #909399;
|
| | | border-right: 1rpx solid #f0f0f0;
|
| | | }
|
| | |
|
| | | .popup-btn.confirm {
|
| | | color: #667eea;
|
| | | font-weight: 600;
|
| | | }
|
| | | |