This commit is contained in:
2026-03-26 22:13:16 +08:00
parent 78bd14acc8
commit 3228b7e28d
3 changed files with 13 additions and 4 deletions
+2 -2
View File
@@ -454,8 +454,8 @@ async def update_sales_order(
current_user: User = Depends(get_current_active_user)
):
order, customer = await _get_sales_order_with_customer(db_session, order_id)
if order.status == "delivered":
raise HTTPException(status_code=400, detail="已交付的销售订单禁止修改")
if order.status == "paid":
raise HTTPException(status_code=400, detail="已收款的销售订单禁止修改")
await _rollback_issued_materials(db_session, order, current_user)
await db_session.execute(delete(SalesOrderItem).where(SalesOrderItem.order_id == order.id))
+3 -1
View File
@@ -544,9 +544,11 @@ body {
font-size: var(--text-xs);
}
.btn:disabled {
.btn:disabled,
.btn-disabled {
opacity: 0.5;
cursor: not-allowed;
pointer-events: none;
}
/* ================================
+8 -1
View File
@@ -2098,6 +2098,13 @@ const InventoryView = {
state.editingItem = item;
if (item) {
if (type === 'salesOrder') {
// 检查订单状态,如果是已收款状态,则禁止编辑
if (item.status === 'paid') {
addNotification('已收款的销售订单禁止修改', 'warning');
state.modalType = null;
state.editingItem = null;
return;
}
await loadCustomers();
await loadFinishedProducts();
const detail = await apiRequest(`/api/sales-orders/${item.id}`);
@@ -3104,7 +3111,7 @@ const InventoryView = {
<button class="dropdown-item" @click="updateSalesOrderStatus(order, 'paid')">已收款</button>
</div>
</div>
<button class="btn btn-sm btn-secondary" @click="openModal('salesOrder', order)">编辑</button>
<button class="btn btn-sm btn-secondary" @click="openModal('salesOrder', order)" :disabled="order.status === 'paid'" :class="{'btn-disabled': order.status === 'paid'}">编辑</button>
<button class="btn btn-sm btn-danger" @click="deleteSalesOrder(order.id)">删除</button>
</div>
</td>