feat(consignment): 内部现货占库进入赠送冷静期并闭环发布押金

打手发布冻结履约押金,驳回/作废退还,验收释放;内部匹配履约立刻占用库存并跳过打手资料进入冷静期,撤销回库时补冻押金。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
yml2213
2026-09-15 20:03:11 +08:00
co-authored by Cursor
parent 4a6215e816
commit fd1eb5815b
24 changed files with 1662 additions and 462 deletions
+122 -3
View File
@@ -4223,8 +4223,12 @@ body {
border-radius: 8px;
}
.worker-consignment-tip.ant-alert {
padding: 6px 12px;
}
.worker-consignment-divider.ant-divider {
margin: 8px 0 16px;
margin: 4px 0 10px;
border-color: #e2e8f0;
color: #64748b;
font-size: 13px;
@@ -4232,7 +4236,102 @@ body {
}
.worker-consignment-form .ant-form-item {
margin-bottom: 14px;
margin-bottom: 12px;
}
.worker-consignment-specs {
display: flex;
flex-direction: column;
gap: 12px;
margin-bottom: 8px;
}
.worker-consignment-spec-grid {
display: grid;
grid-template-columns:
minmax(168px, 1.05fr) minmax(148px, 0.9fr) minmax(176px, 1.05fr) minmax(280px, 1.7fr)
minmax(280px, 1.7fr);
gap: 12px;
}
.worker-consignment-price-grid {
display: grid;
grid-template-columns: 240px 240px;
gap: 12px;
justify-content: start;
}
.worker-consignment-spec-card {
margin-bottom: 0 !important;
padding: 12px 14px 14px;
border: 1px solid #e2e8f0;
border-radius: 12px;
background: #f8fafc;
}
.worker-consignment-spec-card .ant-form-item-label {
padding-bottom: 8px;
}
.worker-consignment-spec-card .ant-form-item-label > label {
height: auto;
font-size: 13px;
font-weight: 600;
color: #334155;
}
.worker-consignment-spec-card .ant-form-item-control-input,
.worker-consignment-spec-card .ant-form-item-control-input-content {
min-height: 40px;
}
.worker-consignment-chips {
display: flex !important;
width: 100%;
}
.worker-consignment-chips .ant-radio-button-wrapper {
flex: 1 1 0;
min-width: 0;
height: 40px;
padding: 0 8px;
line-height: 38px;
text-align: center;
font-size: 14px;
font-weight: 600;
border-color: #e2e8f0;
}
.worker-consignment-chips .ant-radio-button-wrapper:first-child {
border-radius: 8px 0 0 8px;
}
.worker-consignment-chips .ant-radio-button-wrapper:last-child {
border-radius: 0 8px 8px 0;
}
.worker-consignment-chips .ant-radio-button-wrapper-checked {
background: #ff6a00;
border-color: #ff6a00;
color: #fff;
box-shadow: none;
}
.worker-consignment-chips.is-count .ant-radio-button-wrapper {
padding: 0 4px;
font-size: 13px;
}
.worker-consignment-spec-card.is-name .ant-input,
.worker-consignment-spec-card.is-price .ant-input-number,
.worker-consignment-spec-card.is-price .ant-input-number-input {
height: 40px;
font-size: 15px;
}
.worker-consignment-spec-card.is-price .ant-input-number-group-addon {
font-size: 14px;
font-weight: 600;
}
.worker-consignment-actions {
@@ -4245,6 +4344,27 @@ body {
border-top: 1px solid #f1f5f9;
}
@media (max-width: 1280px) {
.worker-consignment-spec-grid {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
.worker-consignment-spec-card.is-count {
grid-column: span 3;
}
}
@media (max-width: 768px) {
.worker-consignment-spec-grid,
.worker-consignment-price-grid {
grid-template-columns: 1fr;
}
.worker-consignment-spec-card.is-count {
grid-column: auto;
}
}
.worker-consignment-filter-row {
display: flex;
flex-wrap: wrap;
@@ -4327,4 +4447,3 @@ body {
width: 100%;
}
}