Files
trade-assistant/miniprogram/pages/quotation/quotation.wxss
T
TradeMate Dev c6206787da Initial commit: TradeMate 外贸小助手 MVP
项目结构:
- backend/     Python FastAPI 后端
- uni-app/     uni-app跨端前端
- docs/        设计文档
- docker-compose.yml  Docker编排
- nginx/scripts/systemd 运维配置

已完成功能:
- 用户认证 (JWT)
- 智能翻译 + 回复建议
- 营销素材生成
- 客户管理 + 沉默检测
- 报价单管理
- 产品库管理
- 汇率换算
- 推送通知 (uni-push)
- WhatsApp Webhook框架
- Celery定时任务
2026-05-08 18:17:12 +08:00

195 lines
2.6 KiB
Plaintext

.header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 30rpx;
background: #fff;
}
.add-btn {
background: #1890ff;
color: #fff;
font-size: 28rpx;
padding: 15rpx 30rpx;
border-radius: 8rpx;
}
.quotation-list {
padding: 0 30rpx;
}
.quotation-item {
background: #fff;
border-radius: 12rpx;
padding: 30rpx;
margin-bottom: 20rpx;
}
.quotation-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 15rpx;
}
.quotation-title {
font-size: 30rpx;
font-weight: bold;
color: #333;
}
.quotation-status {
padding: 6rpx 16rpx;
border-radius: 20rpx;
font-size: 22rpx;
}
.status-draft {
background: #f5f5f5;
color: #666;
}
.status-sent {
background: #e6f7ff;
color: #1890ff;
}
.status-accepted {
background: #f6ffed;
color: #52c41a;
}
.quotation-info {
font-size: 24rpx;
color: #999;
margin-bottom: 10rpx;
}
.quotation-total {
font-size: 32rpx;
font-weight: bold;
color: #ff4d4f;
}
.empty {
text-align: center;
padding: 100rpx;
color: #999;
}
.modal {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.5);
display: flex;
align-items: flex-start;
justify-content: center;
z-index: 100;
overflow-y: auto;
padding-top: 50rpx;
}
.modal-content {
background: #fff;
border-radius: 12rpx;
padding: 40rpx;
width: 85%;
max-height: 90vh;
overflow-y: auto;
}
.modal-title {
font-size: 32rpx;
font-weight: bold;
margin-bottom: 30rpx;
text-align: center;
}
.form-group {
margin-bottom: 20rpx;
}
.form-label {
font-size: 26rpx;
color: #666;
margin-bottom: 10rpx;
display: block;
}
.form-input {
border: 1rpx solid #d9d9d9;
border-radius: 8rpx;
padding: 20rpx;
font-size: 28rpx;
width: 100%;
box-sizing: border-box;
}
.items-section {
background: #f9f9f9;
padding: 20rpx;
border-radius: 8rpx;
margin-bottom: 20rpx;
}
.item-row {
display: flex;
gap: 10rpx;
align-items: center;
margin-bottom: 15rpx;
}
.item-input {
flex: 1;
}
.qty-input {
width: 100rpx;
}
.price-input {
width: 150rpx;
}
.remove-item {
color: #ff4d4f;
font-size: 32rpx;
padding: 10rpx;
}
.add-item-btn {
background: #fff;
border: 1rpx dashed #1890ff;
color: #1890ff;
font-size: 26rpx;
padding: 15rpx;
text-align: center;
border-radius: 8rpx;
}
.modal-btns {
display: flex;
gap: 20rpx;
margin-top: 30rpx;
}
.modal-btn {
flex: 1;
padding: 20rpx;
border-radius: 8rpx;
text-align: center;
font-size: 28rpx;
}
.btn-cancel {
background: #f5f5f5;
color: #666;
}
.btn-confirm {
background: #1890ff;
color: #fff;
}